@sekiui/elements 0.0.82 → 0.0.84
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/cdn/p-BgtjDG0h.js +45 -0
- package/dist/cdn/{p-BgpxFAwm.js → p-BuBiWSGh.js} +18 -3
- package/dist/cdn/{p-Dj6GD4nq.js → p-CM3W2ecZ.js} +1 -1
- package/dist/cdn/{p-o_nleCju.js → p-Cs0DgQw5.js} +25 -8
- package/dist/cdn/p-D50kwTtW.js +160 -0
- package/dist/cdn/{p-m-89tckl.js → p-Df_mX3oj.js} +2 -2
- package/dist/cdn/p-DuJp0Kp6.js +63 -0
- package/dist/cdn/seki-accordion-content.js +10 -8
- package/dist/cdn/seki-accordion-item.js +12 -10
- package/dist/cdn/seki-accordion-trigger.js +12 -10
- package/dist/cdn/seki-alert-dialog-action.js +1 -1
- package/dist/cdn/seki-alert-dialog-cancel.js +1 -1
- package/dist/cdn/seki-alert-dialog-content.js +23 -21
- package/dist/cdn/seki-alert-dialog.js +1 -1
- package/dist/cdn/seki-button.js +1 -1
- package/dist/cdn/seki-calendar.js +1 -1
- package/dist/cdn/seki-carousel-dots.js +3 -3
- package/dist/cdn/seki-carousel-next.js +3 -3
- package/dist/cdn/seki-carousel-previous.js +3 -3
- package/dist/cdn/seki-carousel.js +22 -4
- package/dist/cdn/seki-collapsible-content.js +9 -5
- package/dist/cdn/seki-combobox-item.js +9 -2
- package/dist/cdn/seki-command-group.js +9 -7
- package/dist/cdn/seki-context-menu-content.js +17 -15
- package/dist/cdn/seki-context-menu.js +11 -2
- package/dist/cdn/seki-data-table.js +19 -16
- package/dist/cdn/seki-date-picker.js +1 -1
- package/dist/cdn/seki-dialog-content.js +23 -21
- package/dist/cdn/seki-dialog-overlay.js +10 -8
- package/dist/cdn/seki-dialog.js +1 -1
- package/dist/cdn/seki-dropdown-menu-content.js +23 -68
- package/dist/cdn/seki-dropdown-menu-radio.js +11 -9
- package/dist/cdn/seki-dropdown-menu-trigger.js +11 -9
- package/dist/cdn/seki-dropdown-menu.js +11 -2
- package/dist/cdn/seki-marker-content.d.ts +11 -0
- package/dist/cdn/seki-marker-content.js +55 -0
- package/dist/cdn/seki-marker-icon.d.ts +11 -0
- package/dist/cdn/seki-marker-icon.js +43 -0
- package/dist/cdn/seki-marker.d.ts +11 -0
- package/dist/cdn/seki-marker.js +60 -0
- package/dist/cdn/seki-menubar-checkbox.js +2 -2
- package/dist/cdn/seki-menubar-content.js +24 -42
- package/dist/cdn/seki-menubar-group.js +1 -1
- package/dist/cdn/seki-menubar-item.js +2 -2
- package/dist/cdn/seki-menubar-menu.js +1 -1
- package/dist/cdn/seki-menubar-radio-group.js +1 -1
- package/dist/cdn/seki-menubar-radio.js +11 -9
- package/dist/cdn/seki-menubar-separator.js +1 -1
- package/dist/cdn/seki-menubar-shortcut.js +1 -1
- package/dist/cdn/seki-menubar-sub-trigger.js +2 -2
- package/dist/cdn/seki-menubar-sub.js +1 -1
- package/dist/cdn/seki-menubar-trigger.js +12 -10
- package/dist/cdn/seki-menubar.js +11 -2
- package/dist/cdn/seki-native-select.js +1 -1
- package/dist/cdn/seki-navigation-menu-content.js +8 -3
- package/dist/cdn/seki-navigation-menu-item.js +2 -2
- package/dist/cdn/seki-navigation-menu-link.js +8 -3
- package/dist/cdn/seki-navigation-menu-list.js +7 -2
- package/dist/cdn/seki-navigation-menu-trigger.js +3 -3
- package/dist/cdn/seki-navigation-menu-viewport.js +1 -1
- package/dist/cdn/seki-navigation-menu.js +6 -6
- package/dist/cdn/seki-pagination-content.js +1 -1
- package/dist/cdn/seki-pagination-ellipsis.js +1 -1
- package/dist/cdn/seki-pagination-item.js +1 -1
- package/dist/cdn/seki-pagination-link.js +2 -2
- package/dist/cdn/seki-pagination-next.js +2 -2
- package/dist/cdn/seki-pagination-previous.js +2 -2
- package/dist/cdn/seki-pagination.js +1 -1
- package/dist/cdn/seki-popover-close.js +1 -1
- package/dist/cdn/seki-popover-content.js +20 -65
- package/dist/cdn/seki-popover-trigger.js +1 -1
- package/dist/cdn/seki-popover.js +13 -3
- package/dist/cdn/seki-progress.js +1 -1
- package/dist/cdn/seki-radio-group-item.js +1 -1
- package/dist/cdn/seki-radio-group.js +1 -1
- package/dist/cdn/seki-resizable-handle.js +2 -2
- package/dist/cdn/seki-resizable-panel-group.js +2 -2
- package/dist/cdn/seki-resizable-panel.js +3 -3
- package/dist/cdn/seki-scroll-area.js +1 -1
- package/dist/cdn/seki-scroll-bar.js +6 -2
- package/dist/cdn/seki-select-group.js +1 -1
- package/dist/cdn/seki-select-option.js +29 -13
- package/dist/cdn/seki-select.js +79 -33
- package/dist/cdn/seki-separator.js +1 -1
- package/dist/cdn/seki-sheet-close.js +1 -1
- package/dist/cdn/seki-sheet-description.js +1 -1
- package/dist/cdn/seki-sheet-footer.js +1 -1
- package/dist/cdn/seki-sheet-header.js +1 -1
- package/dist/cdn/seki-sheet-title.js +1 -1
- package/dist/cdn/seki-sheet-trigger.js +1 -1
- package/dist/cdn/seki-sheet.js +2 -2
- package/dist/cdn/seki-sidebar-content.js +1 -1
- package/dist/cdn/seki-sidebar-footer.js +1 -1
- package/dist/cdn/seki-sidebar-group-action.js +1 -1
- package/dist/cdn/seki-sidebar-group-content.js +1 -1
- package/dist/cdn/seki-sidebar-group-label.js +1 -1
- package/dist/cdn/seki-sidebar-group.js +2 -2
- package/dist/cdn/seki-sidebar-header.js +1 -1
- package/dist/cdn/seki-sidebar-inset.js +1 -1
- package/dist/cdn/seki-sidebar-menu-action.js +1 -1
- package/dist/cdn/seki-sidebar-menu-badge.js +1 -1
- package/dist/cdn/seki-sidebar-menu-button.js +1 -1
- package/dist/cdn/seki-sidebar-menu-item.js +1 -1
- package/dist/cdn/seki-sidebar-menu-skeleton.js +1 -1
- package/dist/cdn/seki-sidebar-menu-sub-button.js +2 -2
- package/dist/cdn/seki-sidebar-menu-sub-item.js +1 -1
- package/dist/cdn/seki-sidebar-menu-sub.js +17 -16
- package/dist/cdn/seki-sidebar-menu.js +1 -1
- package/dist/cdn/seki-sidebar-provider.js +13 -4
- package/dist/cdn/seki-sidebar-rail.js +7 -2
- package/dist/cdn/seki-sidebar-separator.js +1 -1
- package/dist/cdn/seki-sidebar-trigger.js +1 -1
- package/dist/cdn/seki-sidebar.js +2 -2
- package/dist/cdn/seki-skeleton.js +1 -1
- package/dist/cdn/seki-slider.js +36 -4
- package/dist/cdn/seki-spinner.js +2 -2
- package/dist/cdn/seki-table-body.js +1 -1
- package/dist/cdn/seki-table-caption.js +1 -1
- package/dist/cdn/seki-table-footer.js +1 -1
- package/dist/cdn/seki-table-header.js +1 -1
- package/dist/cdn/seki-table-row.js +2 -2
- package/dist/cdn/seki-table.js +1 -1
- package/dist/cdn/seki-tabs-content.js +12 -10
- package/dist/cdn/seki-tabs-list.js +2 -2
- package/dist/cdn/seki-tabs-trigger.js +12 -10
- package/dist/cdn/seki-tabs.js +2 -2
- package/dist/cdn/seki-textarea.js +1 -1
- package/dist/cdn/seki-toggle-group.js +1 -1
- package/dist/cdn/seki-toggle.js +1 -1
- package/dist/cdn/seki-tooltip.js +16 -3
- package/dist/cjs/ancestor-attrs-CnUfqtWw.js +47 -0
- package/dist/cjs/focus-trap-CFl79SjZ.js +165 -0
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/positioning-LQZBWMS6.js +65 -0
- package/dist/cjs/seki-accordion-content.cjs.entry.js +10 -8
- package/dist/cjs/seki-accordion-item.cjs.entry.js +12 -10
- package/dist/cjs/seki-accordion-trigger.cjs.entry.js +12 -10
- package/dist/cjs/seki-alert-dialog-action.cjs.entry.js +1 -1
- package/dist/cjs/seki-alert-dialog-cancel.cjs.entry.js +1 -1
- package/dist/cjs/seki-alert-dialog-content.cjs.entry.js +23 -21
- package/dist/cjs/seki-button.cjs.entry.js +1 -1
- package/dist/cjs/seki-calendar.cjs.entry.js +25 -8
- package/dist/cjs/seki-carousel-dots.cjs.entry.js +3 -3
- package/dist/cjs/seki-carousel-next.cjs.entry.js +3 -3
- package/dist/cjs/seki-carousel-previous.cjs.entry.js +3 -3
- package/dist/cjs/seki-carousel.cjs.entry.js +22 -4
- package/dist/cjs/seki-collapsible-content.cjs.entry.js +9 -5
- package/dist/cjs/seki-combobox-item.cjs.entry.js +9 -2
- package/dist/cjs/seki-command-group.cjs.entry.js +9 -7
- package/dist/cjs/seki-context-menu-content.cjs.entry.js +17 -15
- package/dist/cjs/seki-context-menu.cjs.entry.js +11 -2
- package/dist/cjs/seki-data-table.cjs.entry.js +19 -16
- package/dist/cjs/seki-dialog-content.cjs.entry.js +23 -21
- package/dist/cjs/seki-dialog-overlay.cjs.entry.js +10 -8
- package/dist/cjs/seki-dialog.cjs.entry.js +15 -2
- package/dist/cjs/seki-dropdown-menu-content.cjs.entry.js +23 -68
- package/dist/cjs/seki-dropdown-menu-radio.cjs.entry.js +11 -9
- package/dist/cjs/seki-dropdown-menu-trigger.cjs.entry.js +11 -9
- package/dist/cjs/seki-dropdown-menu.cjs.entry.js +11 -2
- package/dist/cjs/seki-marker-content.cjs.entry.js +35 -0
- package/dist/cjs/seki-marker-icon.cjs.entry.js +25 -0
- package/dist/cjs/seki-marker.cjs.entry.js +40 -0
- package/dist/cjs/seki-menubar-checkbox.cjs.entry.js +2 -2
- package/dist/cjs/seki-menubar-content.cjs.entry.js +24 -42
- package/dist/cjs/seki-menubar-group.cjs.entry.js +1 -1
- package/dist/cjs/seki-menubar-item.cjs.entry.js +2 -2
- package/dist/cjs/seki-menubar-menu.cjs.entry.js +1 -1
- package/dist/cjs/seki-menubar-radio-group.cjs.entry.js +1 -1
- package/dist/cjs/seki-menubar-radio.cjs.entry.js +11 -9
- package/dist/cjs/seki-menubar-separator.cjs.entry.js +1 -1
- package/dist/cjs/seki-menubar-shortcut.cjs.entry.js +1 -1
- package/dist/cjs/seki-menubar-sub-trigger.cjs.entry.js +2 -2
- package/dist/cjs/seki-menubar-sub.cjs.entry.js +1 -1
- package/dist/cjs/seki-menubar-trigger.cjs.entry.js +12 -10
- package/dist/cjs/seki-menubar.cjs.entry.js +11 -2
- package/dist/cjs/seki-native-select.cjs.entry.js +1 -1
- package/dist/cjs/seki-navigation-menu-content.cjs.entry.js +8 -3
- package/dist/cjs/seki-navigation-menu-item.cjs.entry.js +2 -2
- package/dist/cjs/seki-navigation-menu-link.cjs.entry.js +8 -3
- package/dist/cjs/seki-navigation-menu-list.cjs.entry.js +7 -2
- package/dist/cjs/seki-navigation-menu-trigger.cjs.entry.js +3 -3
- package/dist/cjs/seki-navigation-menu-viewport.cjs.entry.js +2 -2
- package/dist/cjs/seki-navigation-menu.cjs.entry.js +5 -5
- package/dist/cjs/seki-pagination-content.cjs.entry.js +1 -1
- package/dist/cjs/seki-pagination-ellipsis.cjs.entry.js +1 -1
- package/dist/cjs/seki-pagination-item.cjs.entry.js +1 -1
- package/dist/cjs/seki-pagination-link.cjs.entry.js +2 -2
- package/dist/cjs/seki-pagination-next.cjs.entry.js +2 -2
- package/dist/cjs/seki-pagination-previous.cjs.entry.js +2 -2
- package/dist/cjs/seki-pagination.cjs.entry.js +1 -1
- package/dist/cjs/seki-popover-close.cjs.entry.js +1 -1
- package/dist/cjs/seki-popover-content.cjs.entry.js +20 -65
- package/dist/cjs/seki-popover-trigger.cjs.entry.js +1 -1
- package/dist/cjs/seki-popover.cjs.entry.js +13 -3
- package/dist/cjs/seki-progress.cjs.entry.js +1 -1
- package/dist/cjs/seki-radio-group-item.cjs.entry.js +1 -1
- package/dist/cjs/seki-radio-group.cjs.entry.js +1 -1
- package/dist/cjs/seki-resizable-handle.cjs.entry.js +2 -2
- package/dist/cjs/seki-resizable-panel-group.cjs.entry.js +2 -2
- package/dist/cjs/seki-resizable-panel.cjs.entry.js +3 -3
- package/dist/cjs/seki-scroll-area.cjs.entry.js +1 -1
- package/dist/cjs/seki-scroll-bar.cjs.entry.js +6 -2
- package/dist/cjs/seki-select-group.cjs.entry.js +1 -1
- package/dist/cjs/seki-select-option.cjs.entry.js +29 -13
- package/dist/cjs/seki-select.cjs.entry.js +81 -30
- package/dist/cjs/seki-separator.cjs.entry.js +1 -1
- package/dist/cjs/seki-sheet-close.cjs.entry.js +1 -1
- package/dist/cjs/seki-sheet-description.cjs.entry.js +1 -1
- package/dist/cjs/seki-sheet-footer.cjs.entry.js +1 -1
- package/dist/cjs/seki-sheet-header.cjs.entry.js +1 -1
- package/dist/cjs/seki-sheet-title.cjs.entry.js +1 -1
- package/dist/cjs/seki-sheet-trigger.cjs.entry.js +1 -1
- package/dist/cjs/seki-sheet.cjs.entry.js +2 -2
- package/dist/cjs/seki-sidebar-content.cjs.entry.js +1 -1
- package/dist/cjs/seki-sidebar-footer.cjs.entry.js +1 -1
- package/dist/cjs/seki-sidebar-group-action.cjs.entry.js +1 -1
- package/dist/cjs/seki-sidebar-group-content.cjs.entry.js +1 -1
- package/dist/cjs/seki-sidebar-group-label.cjs.entry.js +1 -1
- package/dist/cjs/seki-sidebar-group.cjs.entry.js +1 -1
- package/dist/cjs/seki-sidebar-header.cjs.entry.js +1 -1
- package/dist/cjs/seki-sidebar-inset.cjs.entry.js +1 -1
- package/dist/cjs/seki-sidebar-menu-action.cjs.entry.js +1 -1
- package/dist/cjs/seki-sidebar-menu-badge.cjs.entry.js +1 -1
- package/dist/cjs/seki-sidebar-menu-button.cjs.entry.js +1 -1
- package/dist/cjs/seki-sidebar-menu-item.cjs.entry.js +1 -1
- package/dist/cjs/seki-sidebar-menu-skeleton.cjs.entry.js +1 -1
- package/dist/cjs/seki-sidebar-menu-sub-button.cjs.entry.js +2 -2
- package/dist/cjs/seki-sidebar-menu-sub-item.cjs.entry.js +1 -1
- package/dist/cjs/seki-sidebar-menu-sub.cjs.entry.js +17 -16
- package/dist/cjs/seki-sidebar-menu.cjs.entry.js +1 -1
- package/dist/cjs/seki-sidebar-provider.cjs.entry.js +13 -4
- package/dist/cjs/seki-sidebar-rail.cjs.entry.js +7 -2
- package/dist/cjs/seki-sidebar-separator.cjs.entry.js +1 -1
- package/dist/cjs/seki-sidebar-trigger.cjs.entry.js +1 -1
- package/dist/cjs/seki-sidebar.cjs.entry.js +2 -2
- package/dist/cjs/seki-skeleton.cjs.entry.js +1 -1
- package/dist/cjs/seki-slider.cjs.entry.js +36 -1
- package/dist/cjs/seki-spinner.cjs.entry.js +2 -2
- package/dist/cjs/seki-table-body.cjs.entry.js +1 -1
- package/dist/cjs/seki-table-caption.cjs.entry.js +1 -1
- package/dist/cjs/seki-table-footer.cjs.entry.js +1 -1
- package/dist/cjs/seki-table-header.cjs.entry.js +1 -1
- package/dist/cjs/seki-table-row.cjs.entry.js +2 -2
- package/dist/cjs/seki-table.cjs.entry.js +1 -1
- package/dist/cjs/seki-tabs-content.cjs.entry.js +12 -10
- package/dist/cjs/seki-tabs-list.cjs.entry.js +2 -2
- package/dist/cjs/seki-tabs-trigger.cjs.entry.js +12 -10
- package/dist/cjs/seki-tabs.cjs.entry.js +2 -2
- package/dist/cjs/seki-textarea.cjs.entry.js +1 -1
- package/dist/cjs/seki-toggle-group.cjs.entry.js +1 -1
- package/dist/cjs/seki-toggle.cjs.entry.js +1 -1
- package/dist/cjs/seki-tooltip.cjs.entry.js +16 -3
- package/dist/cjs/sekiui.cjs.js +1 -1
- package/dist/collection/collection-manifest.json +3 -0
- package/dist/collection/components/accordion/seki-accordion-content.js +10 -8
- package/dist/collection/components/accordion/seki-accordion-item.js +12 -10
- package/dist/collection/components/accordion/seki-accordion-trigger.js +12 -10
- package/dist/collection/components/alert-dialog/seki-alert-dialog-action.css +5 -5
- package/dist/collection/components/alert-dialog/seki-alert-dialog-cancel.css +4 -4
- package/dist/collection/components/alert-dialog/seki-alert-dialog-content.js +22 -20
- package/dist/collection/components/button/seki-button.css +9 -9
- package/dist/collection/components/calendar/seki-calendar.js +14 -5
- package/dist/collection/components/carousel/seki-carousel-dots.js +3 -3
- package/dist/collection/components/carousel/seki-carousel-next.js +3 -3
- package/dist/collection/components/carousel/seki-carousel-previous.js +3 -3
- package/dist/collection/components/carousel/seki-carousel.js +22 -4
- package/dist/collection/components/collapsible/seki-collapsible-content.js +9 -5
- package/dist/collection/components/combobox-item/seki-combobox-item.js +9 -2
- package/dist/collection/components/command/seki-command-group.js +9 -7
- package/dist/collection/components/context-menu/seki-context-menu-content.js +17 -15
- package/dist/collection/components/context-menu/seki-context-menu.js +11 -2
- package/dist/collection/components/data-table/seki-data-table.css +5 -5
- package/dist/collection/components/data-table/seki-data-table.js +18 -15
- package/dist/collection/components/dialog/seki-dialog-content.js +22 -20
- package/dist/collection/components/dialog/seki-dialog-overlay.js +10 -8
- package/dist/collection/components/dialog/seki-dialog.js +17 -1
- package/dist/collection/components/dropdown-menu/seki-dropdown-menu-content.js +23 -68
- package/dist/collection/components/dropdown-menu/seki-dropdown-menu-radio.js +11 -9
- package/dist/collection/components/dropdown-menu/seki-dropdown-menu-trigger.js +11 -9
- package/dist/collection/components/dropdown-menu/seki-dropdown-menu.js +11 -2
- package/dist/collection/components/marker/seki-marker-content.css +819 -0
- package/dist/collection/components/marker/seki-marker-content.js +74 -0
- package/dist/collection/components/marker/seki-marker-icon.css +781 -0
- package/dist/collection/components/marker/seki-marker-icon.js +36 -0
- package/dist/collection/components/marker/seki-marker.css +828 -0
- package/dist/collection/components/marker/seki-marker.interface.js +1 -0
- package/dist/collection/components/marker/seki-marker.js +94 -0
- package/dist/collection/components/menubar/seki-menubar-checkbox.js +2 -2
- package/dist/collection/components/menubar/seki-menubar-content.js +24 -42
- package/dist/collection/components/menubar/seki-menubar-group.js +1 -1
- package/dist/collection/components/menubar/seki-menubar-item.js +2 -2
- package/dist/collection/components/menubar/seki-menubar-menu.js +1 -1
- package/dist/collection/components/menubar/seki-menubar-radio-group.js +1 -1
- package/dist/collection/components/menubar/seki-menubar-radio.js +11 -9
- package/dist/collection/components/menubar/seki-menubar-separator.js +1 -1
- package/dist/collection/components/menubar/seki-menubar-shortcut.js +1 -1
- package/dist/collection/components/menubar/seki-menubar-sub-trigger.js +2 -2
- package/dist/collection/components/menubar/seki-menubar-sub.js +1 -1
- package/dist/collection/components/menubar/seki-menubar-trigger.js +12 -10
- package/dist/collection/components/menubar/seki-menubar.js +11 -2
- package/dist/collection/components/native-select/seki-native-select.js +1 -1
- package/dist/collection/components/navigation-menu/seki-navigation-menu-content.css +1 -1
- package/dist/collection/components/navigation-menu/seki-navigation-menu-content.js +7 -2
- package/dist/collection/components/navigation-menu/seki-navigation-menu-item.js +2 -2
- package/dist/collection/components/navigation-menu/seki-navigation-menu-link.css +1 -1
- package/dist/collection/components/navigation-menu/seki-navigation-menu-link.js +7 -2
- package/dist/collection/components/navigation-menu/seki-navigation-menu-list.css +1 -1
- package/dist/collection/components/navigation-menu/seki-navigation-menu-list.js +6 -1
- package/dist/collection/components/navigation-menu/seki-navigation-menu-trigger.js +3 -3
- package/dist/collection/components/navigation-menu/seki-navigation-menu-viewport.js +2 -2
- package/dist/collection/components/navigation-menu/seki-navigation-menu.js +5 -5
- package/dist/collection/components/pagination/seki-pagination-content.js +1 -1
- package/dist/collection/components/pagination/seki-pagination-ellipsis.js +1 -1
- package/dist/collection/components/pagination/seki-pagination-item.js +1 -1
- package/dist/collection/components/pagination/seki-pagination-link.js +2 -2
- package/dist/collection/components/pagination/seki-pagination-next.js +2 -2
- package/dist/collection/components/pagination/seki-pagination-previous.js +2 -2
- package/dist/collection/components/pagination/seki-pagination.js +1 -1
- package/dist/collection/components/popover/seki-popover-close.js +1 -1
- package/dist/collection/components/popover/seki-popover-content.js +20 -65
- package/dist/collection/components/popover/seki-popover-trigger.js +1 -1
- package/dist/collection/components/popover/seki-popover.js +13 -3
- package/dist/collection/components/progress/seki-progress.js +1 -1
- package/dist/collection/components/radio-group/seki-radio-group-item.js +1 -1
- package/dist/collection/components/radio-group/seki-radio-group.js +1 -1
- package/dist/collection/components/resizable/seki-resizable-handle.js +2 -2
- package/dist/collection/components/resizable/seki-resizable-panel-group.js +2 -2
- package/dist/collection/components/resizable/seki-resizable-panel.js +3 -3
- package/dist/collection/components/scroll-area/seki-scroll-area.js +1 -1
- package/dist/collection/components/scroll-area/seki-scroll-bar.css +5 -5
- package/dist/collection/components/scroll-area/seki-scroll-bar.js +5 -1
- package/dist/collection/components/select/seki-select.js +77 -30
- package/dist/collection/components/select-group/seki-select-group.js +1 -1
- package/dist/collection/components/select-option/seki-select-option.js +29 -13
- package/dist/collection/components/separator/seki-separator.js +1 -1
- package/dist/collection/components/sheet/seki-sheet-close.js +1 -1
- package/dist/collection/components/sheet/seki-sheet-description.js +1 -1
- package/dist/collection/components/sheet/seki-sheet-footer.js +1 -1
- package/dist/collection/components/sheet/seki-sheet-header.js +1 -1
- package/dist/collection/components/sheet/seki-sheet-title.js +1 -1
- package/dist/collection/components/sheet/seki-sheet-trigger.js +1 -1
- package/dist/collection/components/sheet/seki-sheet.js +2 -2
- package/dist/collection/components/sidebar/seki-sidebar-content.js +1 -1
- package/dist/collection/components/sidebar/seki-sidebar-footer.js +1 -1
- package/dist/collection/components/sidebar/seki-sidebar-group-action.js +1 -1
- package/dist/collection/components/sidebar/seki-sidebar-group-content.js +1 -1
- package/dist/collection/components/sidebar/seki-sidebar-group-label.js +1 -1
- package/dist/collection/components/sidebar/seki-sidebar-group.js +1 -1
- package/dist/collection/components/sidebar/seki-sidebar-header.js +1 -1
- package/dist/collection/components/sidebar/seki-sidebar-inset.js +1 -1
- package/dist/collection/components/sidebar/seki-sidebar-menu-action.js +1 -1
- package/dist/collection/components/sidebar/seki-sidebar-menu-badge.js +1 -1
- package/dist/collection/components/sidebar/seki-sidebar-menu-button.js +1 -1
- package/dist/collection/components/sidebar/seki-sidebar-menu-item.js +1 -1
- package/dist/collection/components/sidebar/seki-sidebar-menu-skeleton.js +1 -1
- package/dist/collection/components/sidebar/seki-sidebar-menu-sub-button.js +2 -2
- package/dist/collection/components/sidebar/seki-sidebar-menu-sub-item.js +1 -1
- package/dist/collection/components/sidebar/seki-sidebar-menu-sub.js +17 -16
- package/dist/collection/components/sidebar/seki-sidebar-menu.js +1 -1
- package/dist/collection/components/sidebar/seki-sidebar-provider.js +13 -4
- package/dist/collection/components/sidebar/seki-sidebar-rail.css +6 -6
- package/dist/collection/components/sidebar/seki-sidebar-rail.js +6 -1
- package/dist/collection/components/sidebar/seki-sidebar-separator.js +1 -1
- package/dist/collection/components/sidebar/seki-sidebar-trigger.js +1 -1
- package/dist/collection/components/sidebar/seki-sidebar.js +2 -2
- package/dist/collection/components/skeleton/seki-skeleton.js +1 -1
- package/dist/collection/components/slider/seki-slider.js +36 -2
- package/dist/collection/components/spinner/seki-spinner.js +2 -2
- package/dist/collection/components/table/seki-table-body.js +1 -1
- package/dist/collection/components/table/seki-table-caption.js +1 -1
- package/dist/collection/components/table/seki-table-footer.js +1 -1
- package/dist/collection/components/table/seki-table-header.js +1 -1
- package/dist/collection/components/table/seki-table-row.js +2 -2
- package/dist/collection/components/table/seki-table.js +1 -1
- package/dist/collection/components/tabs/seki-tabs-content.js +12 -10
- package/dist/collection/components/tabs/seki-tabs-list.js +2 -2
- package/dist/collection/components/tabs/seki-tabs-trigger.js +12 -10
- package/dist/collection/components/tabs/seki-tabs.js +2 -2
- package/dist/collection/components/textarea/seki-textarea.js +1 -1
- package/dist/collection/components/toggle/seki-toggle.js +1 -1
- package/dist/collection/components/toggle-group/seki-toggle-group.js +1 -1
- package/dist/collection/components/tooltip/seki-tooltip.js +16 -3
- package/dist/collection/utils/ancestor-attrs.js +43 -0
- package/dist/collection/utils/calendar/date-utils.js +12 -4
- package/dist/collection/utils/dialog/focus-trap.js +110 -21
- package/dist/collection/utils/positioning.js +61 -0
- package/dist/components/p-BgtjDG0h.js +45 -0
- package/dist/components/{p-tgCyk_Am.js → p-C87BOunl.js} +18 -3
- package/dist/components/{p-JT4r_mV0.js → p-CSf6znuo.js} +2 -2
- package/dist/components/p-D50kwTtW.js +160 -0
- package/dist/components/{p-DKbSEP4m.js → p-DFfIiiRa.js} +25 -8
- package/dist/components/p-DuJp0Kp6.js +63 -0
- package/dist/components/{p-XaV1Vzwc.js → p-N19kpeHI.js} +1 -1
- package/dist/components/seki-accordion-content.js +10 -8
- package/dist/components/seki-accordion-item.js +12 -10
- package/dist/components/seki-accordion-trigger.js +12 -10
- package/dist/components/seki-alert-dialog-action.js +1 -1
- package/dist/components/seki-alert-dialog-cancel.js +1 -1
- package/dist/components/seki-alert-dialog-content.js +23 -21
- package/dist/components/seki-alert-dialog.js +1 -1
- package/dist/components/seki-button.js +1 -1
- package/dist/components/seki-calendar.js +1 -1
- package/dist/components/seki-carousel-dots.js +3 -3
- package/dist/components/seki-carousel-next.js +3 -3
- package/dist/components/seki-carousel-previous.js +3 -3
- package/dist/components/seki-carousel.js +22 -4
- package/dist/components/seki-collapsible-content.js +9 -5
- package/dist/components/seki-combobox-item.js +9 -2
- package/dist/components/seki-command-group.js +9 -7
- package/dist/components/seki-context-menu-content.js +17 -15
- package/dist/components/seki-context-menu.js +11 -2
- package/dist/components/seki-data-table.js +19 -16
- package/dist/components/seki-date-picker.js +1 -1
- package/dist/components/seki-dialog-content.js +23 -21
- package/dist/components/seki-dialog-overlay.js +10 -8
- package/dist/components/seki-dialog.js +1 -1
- package/dist/components/seki-dropdown-menu-content.js +23 -68
- package/dist/components/seki-dropdown-menu-radio.js +11 -9
- package/dist/components/seki-dropdown-menu-trigger.js +11 -9
- package/dist/components/seki-dropdown-menu.js +11 -2
- package/dist/components/seki-marker-content.d.ts +11 -0
- package/dist/components/seki-marker-content.js +55 -0
- package/dist/components/seki-marker-icon.d.ts +11 -0
- package/dist/components/seki-marker-icon.js +43 -0
- package/dist/components/seki-marker.d.ts +11 -0
- package/dist/components/seki-marker.js +60 -0
- package/dist/components/seki-menubar-checkbox.js +2 -2
- package/dist/components/seki-menubar-content.js +24 -42
- package/dist/components/seki-menubar-group.js +1 -1
- package/dist/components/seki-menubar-item.js +2 -2
- package/dist/components/seki-menubar-menu.js +1 -1
- package/dist/components/seki-menubar-radio-group.js +1 -1
- package/dist/components/seki-menubar-radio.js +11 -9
- package/dist/components/seki-menubar-separator.js +1 -1
- package/dist/components/seki-menubar-shortcut.js +1 -1
- package/dist/components/seki-menubar-sub-trigger.js +2 -2
- package/dist/components/seki-menubar-sub.js +1 -1
- package/dist/components/seki-menubar-trigger.js +12 -10
- package/dist/components/seki-menubar.js +11 -2
- package/dist/components/seki-native-select.js +1 -1
- package/dist/components/seki-navigation-menu-content.js +8 -3
- package/dist/components/seki-navigation-menu-item.js +2 -2
- package/dist/components/seki-navigation-menu-link.js +8 -3
- package/dist/components/seki-navigation-menu-list.js +7 -2
- package/dist/components/seki-navigation-menu-trigger.js +3 -3
- package/dist/components/seki-navigation-menu-viewport.js +1 -1
- package/dist/components/seki-navigation-menu.js +6 -6
- package/dist/components/seki-pagination-content.js +1 -1
- package/dist/components/seki-pagination-ellipsis.js +1 -1
- package/dist/components/seki-pagination-item.js +1 -1
- package/dist/components/seki-pagination-link.js +2 -2
- package/dist/components/seki-pagination-next.js +2 -2
- package/dist/components/seki-pagination-previous.js +2 -2
- package/dist/components/seki-pagination.js +1 -1
- package/dist/components/seki-popover-close.js +1 -1
- package/dist/components/seki-popover-content.js +20 -65
- package/dist/components/seki-popover-trigger.js +1 -1
- package/dist/components/seki-popover.js +13 -3
- package/dist/components/seki-progress.js +1 -1
- package/dist/components/seki-radio-group-item.js +1 -1
- package/dist/components/seki-radio-group.js +1 -1
- package/dist/components/seki-resizable-handle.js +2 -2
- package/dist/components/seki-resizable-panel-group.js +2 -2
- package/dist/components/seki-resizable-panel.js +3 -3
- package/dist/components/seki-scroll-area.js +1 -1
- package/dist/components/seki-scroll-bar.js +6 -2
- package/dist/components/seki-select-group.js +1 -1
- package/dist/components/seki-select-option.js +29 -13
- package/dist/components/seki-select.js +79 -33
- package/dist/components/seki-separator.js +1 -1
- package/dist/components/seki-sheet-close.js +1 -1
- package/dist/components/seki-sheet-description.js +1 -1
- package/dist/components/seki-sheet-footer.js +1 -1
- package/dist/components/seki-sheet-header.js +1 -1
- package/dist/components/seki-sheet-title.js +1 -1
- package/dist/components/seki-sheet-trigger.js +1 -1
- package/dist/components/seki-sheet.js +2 -2
- package/dist/components/seki-sidebar-content.js +1 -1
- package/dist/components/seki-sidebar-footer.js +1 -1
- package/dist/components/seki-sidebar-group-action.js +1 -1
- package/dist/components/seki-sidebar-group-content.js +1 -1
- package/dist/components/seki-sidebar-group-label.js +1 -1
- package/dist/components/seki-sidebar-group.js +2 -2
- package/dist/components/seki-sidebar-header.js +1 -1
- package/dist/components/seki-sidebar-inset.js +1 -1
- package/dist/components/seki-sidebar-menu-action.js +1 -1
- package/dist/components/seki-sidebar-menu-badge.js +1 -1
- package/dist/components/seki-sidebar-menu-button.js +1 -1
- package/dist/components/seki-sidebar-menu-item.js +1 -1
- package/dist/components/seki-sidebar-menu-skeleton.js +1 -1
- package/dist/components/seki-sidebar-menu-sub-button.js +2 -2
- package/dist/components/seki-sidebar-menu-sub-item.js +1 -1
- package/dist/components/seki-sidebar-menu-sub.js +17 -16
- package/dist/components/seki-sidebar-menu.js +1 -1
- package/dist/components/seki-sidebar-provider.js +13 -4
- package/dist/components/seki-sidebar-rail.js +7 -2
- package/dist/components/seki-sidebar-separator.js +1 -1
- package/dist/components/seki-sidebar-trigger.js +1 -1
- package/dist/components/seki-sidebar.js +2 -2
- package/dist/components/seki-skeleton.js +1 -1
- package/dist/components/seki-slider.js +36 -4
- package/dist/components/seki-spinner.js +2 -2
- package/dist/components/seki-table-body.js +1 -1
- package/dist/components/seki-table-caption.js +1 -1
- package/dist/components/seki-table-footer.js +1 -1
- package/dist/components/seki-table-header.js +1 -1
- package/dist/components/seki-table-row.js +2 -2
- package/dist/components/seki-table.js +1 -1
- package/dist/components/seki-tabs-content.js +12 -10
- package/dist/components/seki-tabs-list.js +2 -2
- package/dist/components/seki-tabs-trigger.js +12 -10
- package/dist/components/seki-tabs.js +2 -2
- package/dist/components/seki-textarea.js +1 -1
- package/dist/components/seki-toggle-group.js +1 -1
- package/dist/components/seki-toggle.js +1 -1
- package/dist/components/seki-tooltip.js +16 -3
- package/dist/esm/ancestor-attrs-BgtjDG0h.js +45 -0
- package/dist/esm/focus-trap-D50kwTtW.js +160 -0
- package/dist/esm/loader.js +1 -1
- package/dist/esm/positioning-DuJp0Kp6.js +63 -0
- package/dist/esm/seki-accordion-content.entry.js +10 -8
- package/dist/esm/seki-accordion-item.entry.js +12 -10
- package/dist/esm/seki-accordion-trigger.entry.js +12 -10
- package/dist/esm/seki-alert-dialog-action.entry.js +1 -1
- package/dist/esm/seki-alert-dialog-cancel.entry.js +1 -1
- package/dist/esm/seki-alert-dialog-content.entry.js +23 -21
- package/dist/esm/seki-button.entry.js +1 -1
- package/dist/esm/seki-calendar.entry.js +25 -8
- package/dist/esm/seki-carousel-dots.entry.js +3 -3
- package/dist/esm/seki-carousel-next.entry.js +3 -3
- package/dist/esm/seki-carousel-previous.entry.js +3 -3
- package/dist/esm/seki-carousel.entry.js +22 -4
- package/dist/esm/seki-collapsible-content.entry.js +9 -5
- package/dist/esm/seki-combobox-item.entry.js +9 -2
- package/dist/esm/seki-command-group.entry.js +9 -7
- package/dist/esm/seki-context-menu-content.entry.js +17 -15
- package/dist/esm/seki-context-menu.entry.js +11 -2
- package/dist/esm/seki-data-table.entry.js +19 -16
- package/dist/esm/seki-dialog-content.entry.js +23 -21
- package/dist/esm/seki-dialog-overlay.entry.js +10 -8
- package/dist/esm/seki-dialog.entry.js +15 -2
- package/dist/esm/seki-dropdown-menu-content.entry.js +23 -68
- package/dist/esm/seki-dropdown-menu-radio.entry.js +11 -9
- package/dist/esm/seki-dropdown-menu-trigger.entry.js +11 -9
- package/dist/esm/seki-dropdown-menu.entry.js +11 -2
- package/dist/esm/seki-marker-content.entry.js +33 -0
- package/dist/esm/seki-marker-icon.entry.js +23 -0
- package/dist/esm/seki-marker.entry.js +38 -0
- package/dist/esm/seki-menubar-checkbox.entry.js +2 -2
- package/dist/esm/seki-menubar-content.entry.js +24 -42
- package/dist/esm/seki-menubar-group.entry.js +1 -1
- package/dist/esm/seki-menubar-item.entry.js +2 -2
- package/dist/esm/seki-menubar-menu.entry.js +1 -1
- package/dist/esm/seki-menubar-radio-group.entry.js +1 -1
- package/dist/esm/seki-menubar-radio.entry.js +11 -9
- package/dist/esm/seki-menubar-separator.entry.js +1 -1
- package/dist/esm/seki-menubar-shortcut.entry.js +1 -1
- package/dist/esm/seki-menubar-sub-trigger.entry.js +2 -2
- package/dist/esm/seki-menubar-sub.entry.js +1 -1
- package/dist/esm/seki-menubar-trigger.entry.js +12 -10
- package/dist/esm/seki-menubar.entry.js +11 -2
- package/dist/esm/seki-native-select.entry.js +1 -1
- package/dist/esm/seki-navigation-menu-content.entry.js +8 -3
- package/dist/esm/seki-navigation-menu-item.entry.js +2 -2
- package/dist/esm/seki-navigation-menu-link.entry.js +8 -3
- package/dist/esm/seki-navigation-menu-list.entry.js +7 -2
- package/dist/esm/seki-navigation-menu-trigger.entry.js +3 -3
- package/dist/esm/seki-navigation-menu-viewport.entry.js +2 -2
- package/dist/esm/seki-navigation-menu.entry.js +5 -5
- package/dist/esm/seki-pagination-content.entry.js +1 -1
- package/dist/esm/seki-pagination-ellipsis.entry.js +1 -1
- package/dist/esm/seki-pagination-item.entry.js +1 -1
- package/dist/esm/seki-pagination-link.entry.js +2 -2
- package/dist/esm/seki-pagination-next.entry.js +2 -2
- package/dist/esm/seki-pagination-previous.entry.js +2 -2
- package/dist/esm/seki-pagination.entry.js +1 -1
- package/dist/esm/seki-popover-close.entry.js +1 -1
- package/dist/esm/seki-popover-content.entry.js +20 -65
- package/dist/esm/seki-popover-trigger.entry.js +1 -1
- package/dist/esm/seki-popover.entry.js +13 -3
- package/dist/esm/seki-progress.entry.js +1 -1
- package/dist/esm/seki-radio-group-item.entry.js +1 -1
- package/dist/esm/seki-radio-group.entry.js +1 -1
- package/dist/esm/seki-resizable-handle.entry.js +2 -2
- package/dist/esm/seki-resizable-panel-group.entry.js +2 -2
- package/dist/esm/seki-resizable-panel.entry.js +3 -3
- package/dist/esm/seki-scroll-area.entry.js +1 -1
- package/dist/esm/seki-scroll-bar.entry.js +6 -2
- package/dist/esm/seki-select-group.entry.js +1 -1
- package/dist/esm/seki-select-option.entry.js +29 -13
- package/dist/esm/seki-select.entry.js +81 -30
- package/dist/esm/seki-separator.entry.js +1 -1
- package/dist/esm/seki-sheet-close.entry.js +1 -1
- package/dist/esm/seki-sheet-description.entry.js +1 -1
- package/dist/esm/seki-sheet-footer.entry.js +1 -1
- package/dist/esm/seki-sheet-header.entry.js +1 -1
- package/dist/esm/seki-sheet-title.entry.js +1 -1
- package/dist/esm/seki-sheet-trigger.entry.js +1 -1
- package/dist/esm/seki-sheet.entry.js +2 -2
- package/dist/esm/seki-sidebar-content.entry.js +1 -1
- package/dist/esm/seki-sidebar-footer.entry.js +1 -1
- package/dist/esm/seki-sidebar-group-action.entry.js +1 -1
- package/dist/esm/seki-sidebar-group-content.entry.js +1 -1
- package/dist/esm/seki-sidebar-group-label.entry.js +1 -1
- package/dist/esm/seki-sidebar-group.entry.js +1 -1
- package/dist/esm/seki-sidebar-header.entry.js +1 -1
- package/dist/esm/seki-sidebar-inset.entry.js +1 -1
- package/dist/esm/seki-sidebar-menu-action.entry.js +1 -1
- package/dist/esm/seki-sidebar-menu-badge.entry.js +1 -1
- package/dist/esm/seki-sidebar-menu-button.entry.js +1 -1
- package/dist/esm/seki-sidebar-menu-item.entry.js +1 -1
- package/dist/esm/seki-sidebar-menu-skeleton.entry.js +1 -1
- package/dist/esm/seki-sidebar-menu-sub-button.entry.js +2 -2
- package/dist/esm/seki-sidebar-menu-sub-item.entry.js +1 -1
- package/dist/esm/seki-sidebar-menu-sub.entry.js +17 -16
- package/dist/esm/seki-sidebar-menu.entry.js +1 -1
- package/dist/esm/seki-sidebar-provider.entry.js +13 -4
- package/dist/esm/seki-sidebar-rail.entry.js +7 -2
- package/dist/esm/seki-sidebar-separator.entry.js +1 -1
- package/dist/esm/seki-sidebar-trigger.entry.js +1 -1
- package/dist/esm/seki-sidebar.entry.js +2 -2
- package/dist/esm/seki-skeleton.entry.js +1 -1
- package/dist/esm/seki-slider.entry.js +36 -1
- package/dist/esm/seki-spinner.entry.js +2 -2
- package/dist/esm/seki-table-body.entry.js +1 -1
- package/dist/esm/seki-table-caption.entry.js +1 -1
- package/dist/esm/seki-table-footer.entry.js +1 -1
- package/dist/esm/seki-table-header.entry.js +1 -1
- package/dist/esm/seki-table-row.entry.js +2 -2
- package/dist/esm/seki-table.entry.js +1 -1
- package/dist/esm/seki-tabs-content.entry.js +12 -10
- package/dist/esm/seki-tabs-list.entry.js +2 -2
- package/dist/esm/seki-tabs-trigger.entry.js +12 -10
- package/dist/esm/seki-tabs.entry.js +2 -2
- package/dist/esm/seki-textarea.entry.js +1 -1
- package/dist/esm/seki-toggle-group.entry.js +1 -1
- package/dist/esm/seki-toggle.entry.js +1 -1
- package/dist/esm/seki-tooltip.entry.js +16 -3
- package/dist/esm/sekiui.js +1 -1
- package/dist/sekiui/{p-9643e1d8.entry.js → p-021cb880.entry.js} +1 -1
- package/dist/sekiui/p-066335d1.entry.js +1 -0
- package/dist/sekiui/{p-91d532fa.entry.js → p-0814fbc8.entry.js} +1 -1
- package/dist/sekiui/{p-e5b6e371.entry.js → p-08692454.entry.js} +1 -1
- package/dist/sekiui/p-0ab43c7f.entry.js +1 -0
- package/dist/sekiui/{p-9f686359.entry.js → p-0bbfe090.entry.js} +1 -1
- package/dist/sekiui/{p-e8fb6780.entry.js → p-0f551417.entry.js} +1 -1
- package/dist/sekiui/{p-41f5488e.entry.js → p-106d6d5d.entry.js} +1 -1
- package/dist/sekiui/{p-b664489e.entry.js → p-10fb3df9.entry.js} +1 -1
- package/dist/sekiui/p-1322c161.entry.js +1 -0
- package/dist/sekiui/{p-c2084566.entry.js → p-166024da.entry.js} +1 -1
- package/dist/sekiui/{p-3059ebb5.entry.js → p-1aecea25.entry.js} +1 -1
- package/dist/sekiui/{p-d02efcf2.entry.js → p-1b8d2288.entry.js} +1 -1
- package/dist/sekiui/{p-ab3f43f4.entry.js → p-1db10de9.entry.js} +1 -1
- package/dist/sekiui/{p-08a65cc0.entry.js → p-1dfe4e59.entry.js} +1 -1
- package/dist/sekiui/{p-430350fa.entry.js → p-1efbd2cc.entry.js} +1 -1
- package/dist/sekiui/{p-9889afcd.entry.js → p-27ff2f8a.entry.js} +1 -1
- package/dist/sekiui/p-29403139.entry.js +1 -0
- package/dist/sekiui/{p-173c36ae.entry.js → p-2a9e0bbb.entry.js} +1 -1
- package/dist/sekiui/{p-e6631daa.entry.js → p-2cb4156a.entry.js} +1 -1
- package/dist/sekiui/{p-a60699ea.entry.js → p-2d2194ee.entry.js} +1 -1
- package/dist/sekiui/p-2de73747.entry.js +1 -0
- package/dist/sekiui/{p-5968bc31.entry.js → p-306728c1.entry.js} +1 -1
- package/dist/sekiui/{p-a5edaf79.entry.js → p-320bb24e.entry.js} +1 -1
- package/dist/sekiui/p-32569d7d.entry.js +1 -0
- package/dist/sekiui/p-367d9a7f.entry.js +1 -0
- package/dist/sekiui/p-3892c6af.entry.js +1 -0
- package/dist/sekiui/p-4267d0fc.entry.js +1 -0
- package/dist/sekiui/{p-f05f830a.entry.js → p-42e1f027.entry.js} +1 -1
- package/dist/sekiui/{p-894d0adc.entry.js → p-44aed379.entry.js} +1 -1
- package/dist/sekiui/p-49024e9e.entry.js +1 -0
- package/dist/sekiui/p-4a2843e3.entry.js +1 -0
- package/dist/sekiui/{p-0c2344d1.entry.js → p-4bf8c2fa.entry.js} +1 -1
- package/dist/sekiui/{p-b14ba603.entry.js → p-4cd3eb61.entry.js} +1 -1
- package/dist/sekiui/p-4ce03f18.entry.js +1 -0
- package/dist/sekiui/p-4e60d2d0.entry.js +1 -0
- package/dist/sekiui/p-5230348b.entry.js +1 -0
- package/dist/sekiui/{p-61bc6d26.entry.js → p-56ea6a48.entry.js} +1 -1
- package/dist/sekiui/{p-541f1dbb.entry.js → p-57e7685a.entry.js} +1 -1
- package/dist/sekiui/p-5bb3aeb5.entry.js +1 -0
- package/dist/sekiui/{p-3003d573.entry.js → p-5cd6cb04.entry.js} +1 -1
- package/dist/sekiui/{p-2c763d0e.entry.js → p-60c7a8af.entry.js} +1 -1
- package/dist/sekiui/{p-d88390d7.entry.js → p-62fd375a.entry.js} +1 -1
- package/dist/sekiui/{p-c3d1dc4c.entry.js → p-66f986d4.entry.js} +1 -1
- package/dist/sekiui/{p-e2ca8e81.entry.js → p-6767bd6c.entry.js} +1 -1
- package/dist/sekiui/{p-c1bf976b.entry.js → p-692a285f.entry.js} +1 -1
- package/dist/sekiui/{p-3a7b862a.entry.js → p-6ada6c09.entry.js} +1 -1
- package/dist/sekiui/{p-bd9d106a.entry.js → p-6c516e05.entry.js} +1 -1
- package/dist/sekiui/{p-85e0ad8d.entry.js → p-7110a631.entry.js} +1 -1
- package/dist/sekiui/{p-96073eae.entry.js → p-75d46bc7.entry.js} +1 -1
- package/dist/sekiui/{p-a4a5f457.entry.js → p-7657eae6.entry.js} +1 -1
- package/dist/sekiui/{p-6288801d.entry.js → p-7826af1f.entry.js} +1 -1
- package/dist/sekiui/p-7a264cf2.entry.js +1 -0
- package/dist/sekiui/p-7cd76bbb.entry.js +1 -0
- package/dist/sekiui/p-80b79cc0.entry.js +1 -0
- package/dist/sekiui/p-835f723b.entry.js +1 -0
- package/dist/sekiui/{p-f5c7a1fb.entry.js → p-84ac24a3.entry.js} +1 -1
- package/dist/sekiui/{p-c2e6ca4d.entry.js → p-87db7107.entry.js} +1 -1
- package/dist/sekiui/{p-8344563b.entry.js → p-8877c41b.entry.js} +1 -1
- package/dist/sekiui/{p-9dfa69b2.entry.js → p-88a81c85.entry.js} +1 -1
- package/dist/sekiui/{p-84a8301f.entry.js → p-8b96a324.entry.js} +1 -1
- package/dist/sekiui/{p-7bf379c4.entry.js → p-8c369957.entry.js} +1 -1
- package/dist/sekiui/p-8d888e3d.entry.js +1 -0
- package/dist/sekiui/{p-3e01b3c9.entry.js → p-92b0241d.entry.js} +1 -1
- package/dist/sekiui/{p-30aa2790.entry.js → p-932b9be7.entry.js} +1 -1
- package/dist/sekiui/{p-4e7809d4.entry.js → p-94257ae8.entry.js} +1 -1
- package/dist/sekiui/p-945f6c37.entry.js +1 -0
- package/dist/sekiui/{p-646de69e.entry.js → p-948403e2.entry.js} +1 -1
- package/dist/sekiui/{p-fc6d6133.entry.js → p-966b2358.entry.js} +1 -1
- package/dist/sekiui/{p-40458a33.entry.js → p-97490dae.entry.js} +1 -1
- package/dist/sekiui/{p-4c9ab985.entry.js → p-98e730ec.entry.js} +1 -1
- package/dist/sekiui/{p-5ccd6a77.entry.js → p-9a6332aa.entry.js} +1 -1
- package/dist/sekiui/{p-3e3b7706.entry.js → p-9aa6ff08.entry.js} +1 -1
- package/dist/sekiui/p-BgtjDG0h.js +1 -0
- package/dist/sekiui/p-D50kwTtW.js +1 -0
- package/dist/sekiui/p-DuJp0Kp6.js +1 -0
- package/dist/sekiui/{p-044401c6.entry.js → p-a22bbd5d.entry.js} +1 -1
- package/dist/sekiui/p-a29160bc.entry.js +1 -0
- package/dist/sekiui/p-a2e2356a.entry.js +1 -0
- package/dist/sekiui/p-a6ae5c4b.entry.js +1 -0
- package/dist/sekiui/{p-7b13dd19.entry.js → p-a7d64ac6.entry.js} +1 -1
- package/dist/sekiui/p-b195501f.entry.js +1 -0
- package/dist/sekiui/{p-73cbd067.entry.js → p-b2a60e91.entry.js} +1 -1
- package/dist/sekiui/{p-6d052d09.entry.js → p-b83366e6.entry.js} +1 -1
- package/dist/sekiui/{p-66b1c2ac.entry.js → p-ba77c385.entry.js} +1 -1
- package/dist/sekiui/{p-d5b616c5.entry.js → p-bac67676.entry.js} +1 -1
- package/dist/sekiui/{p-2716f5fc.entry.js → p-c5b5908d.entry.js} +1 -1
- package/dist/sekiui/{p-1e69968f.entry.js → p-c6740b25.entry.js} +1 -1
- package/dist/sekiui/{p-c39f1cc0.entry.js → p-c8098bcc.entry.js} +1 -1
- package/dist/sekiui/{p-41fae140.entry.js → p-cb657adb.entry.js} +1 -1
- package/dist/sekiui/{p-13cbff44.entry.js → p-ccaaddff.entry.js} +1 -1
- package/dist/sekiui/p-cf63f5a6.entry.js +1 -0
- package/dist/sekiui/{p-fa9a68be.entry.js → p-cfac56e7.entry.js} +1 -1
- package/dist/sekiui/{p-ddb4b545.entry.js → p-d0389d4f.entry.js} +1 -1
- package/dist/sekiui/p-d112d16c.entry.js +1 -0
- package/dist/sekiui/p-d1338ac4.entry.js +1 -0
- package/dist/sekiui/p-d1f6efac.entry.js +1 -0
- package/dist/sekiui/p-d4d88be4.entry.js +1 -0
- package/dist/sekiui/{p-0ec8b378.entry.js → p-d68f4cef.entry.js} +1 -1
- package/dist/sekiui/{p-d973c5cc.entry.js → p-d8bcb9e9.entry.js} +1 -1
- package/dist/sekiui/{p-877dec15.entry.js → p-d918ec38.entry.js} +1 -1
- package/dist/sekiui/{p-fd508d82.entry.js → p-da58d699.entry.js} +1 -1
- package/dist/sekiui/{p-a0578037.entry.js → p-df3d0679.entry.js} +1 -1
- package/dist/sekiui/p-e1e0e982.entry.js +1 -0
- package/dist/sekiui/{p-bf52433b.entry.js → p-e2401619.entry.js} +1 -1
- package/dist/sekiui/{p-6a8cc4b5.entry.js → p-e2e20093.entry.js} +1 -1
- package/dist/sekiui/{p-7ef4fb97.entry.js → p-e35b8b6e.entry.js} +1 -1
- package/dist/sekiui/{p-7592fd90.entry.js → p-e7b8973e.entry.js} +1 -1
- package/dist/sekiui/{p-5a853b23.entry.js → p-ea2a01dd.entry.js} +1 -1
- package/dist/sekiui/p-eaf626e5.entry.js +1 -0
- package/dist/sekiui/p-ed9034e4.entry.js +1 -0
- package/dist/sekiui/p-edd02332.entry.js +1 -0
- package/dist/sekiui/p-f07b430e.entry.js +1 -0
- package/dist/sekiui/{p-0a2b760b.entry.js → p-f0e4d07c.entry.js} +1 -1
- package/dist/sekiui/{p-b9db3fb8.entry.js → p-f161655d.entry.js} +1 -1
- package/dist/sekiui/{p-67fffcd0.entry.js → p-f2859501.entry.js} +1 -1
- package/dist/sekiui/p-f3c69359.entry.js +1 -0
- package/dist/sekiui/p-f587cd57.entry.js +1 -0
- package/dist/sekiui/{p-eb0440ec.entry.js → p-fa27d255.entry.js} +1 -1
- package/dist/sekiui/p-fde2877f.entry.js +1 -0
- package/dist/sekiui/{p-d7589960.entry.js → p-fe067937.entry.js} +1 -1
- package/dist/sekiui/sekiui.esm.js +1 -1
- package/dist/types/components/accordion/seki-accordion-content.d.ts +2 -0
- package/dist/types/components/accordion/seki-accordion-item.d.ts +2 -0
- package/dist/types/components/accordion/seki-accordion-trigger.d.ts +2 -0
- package/dist/types/components/alert-dialog/seki-alert-dialog-content.d.ts +2 -0
- package/dist/types/components/carousel/seki-carousel.d.ts +3 -0
- package/dist/types/components/collapsible/seki-collapsible-content.d.ts +2 -0
- package/dist/types/components/combobox-item/seki-combobox-item.d.ts +1 -0
- package/dist/types/components/command/seki-command-group.d.ts +2 -0
- package/dist/types/components/context-menu/seki-context-menu-content.d.ts +2 -0
- package/dist/types/components/context-menu/seki-context-menu.d.ts +1 -0
- package/dist/types/components/dialog/seki-dialog-content.d.ts +2 -0
- package/dist/types/components/dialog/seki-dialog-overlay.d.ts +2 -0
- package/dist/types/components/dialog/seki-dialog.d.ts +1 -0
- package/dist/types/components/dropdown-menu/seki-dropdown-menu-content.d.ts +2 -0
- package/dist/types/components/dropdown-menu/seki-dropdown-menu-radio.d.ts +2 -0
- package/dist/types/components/dropdown-menu/seki-dropdown-menu-trigger.d.ts +2 -0
- package/dist/types/components/dropdown-menu/seki-dropdown-menu.d.ts +1 -0
- package/dist/types/components/marker/seki-marker-content.d.ts +22 -0
- package/dist/types/components/marker/seki-marker-icon.d.ts +16 -0
- package/dist/types/components/marker/seki-marker.d.ts +32 -0
- package/dist/types/components/marker/seki-marker.interface.d.ts +7 -0
- package/dist/types/components/menubar/seki-menubar-content.d.ts +2 -0
- package/dist/types/components/menubar/seki-menubar-radio.d.ts +2 -0
- package/dist/types/components/menubar/seki-menubar-trigger.d.ts +2 -0
- package/dist/types/components/menubar/seki-menubar.d.ts +1 -0
- package/dist/types/components/navigation-menu/seki-navigation-menu-content.d.ts +1 -0
- package/dist/types/components/navigation-menu/seki-navigation-menu-link.d.ts +1 -0
- package/dist/types/components/navigation-menu/seki-navigation-menu-list.d.ts +1 -0
- package/dist/types/components/popover/seki-popover-content.d.ts +2 -0
- package/dist/types/components/popover/seki-popover.d.ts +1 -0
- package/dist/types/components/scroll-area/seki-scroll-bar.d.ts +1 -0
- package/dist/types/components/select/seki-select.d.ts +8 -1
- package/dist/types/components/select-option/seki-select-option.d.ts +3 -1
- package/dist/types/components/sidebar/seki-sidebar-menu-sub.d.ts +2 -0
- package/dist/types/components/sidebar/seki-sidebar-rail.d.ts +1 -0
- package/dist/types/components/slider/seki-slider.d.ts +9 -0
- package/dist/types/components/tabs/seki-tabs-content.d.ts +2 -0
- package/dist/types/components/tabs/seki-tabs-trigger.d.ts +2 -0
- package/dist/types/components/tooltip/seki-tooltip.d.ts +1 -0
- package/dist/types/components.d.ts +213 -32
- package/dist/types/utils/ancestor-attrs.d.ts +18 -0
- package/dist/types/utils/calendar/date-utils.d.ts +9 -0
- package/dist/types/utils/dialog/focus-trap.d.ts +18 -7
- package/dist/types/utils/positioning.d.ts +34 -0
- package/package.json +25 -2
- package/dist/cdn/p-CP7ZtKCE.js +0 -71
- package/dist/cjs/focus-trap-C7ukllRZ.js +0 -76
- package/dist/components/p-CP7ZtKCE.js +0 -71
- package/dist/esm/focus-trap-CP7ZtKCE.js +0 -71
- package/dist/sekiui/p-107bdce6.entry.js +0 -1
- package/dist/sekiui/p-24ea0d3d.entry.js +0 -1
- package/dist/sekiui/p-2548d7c3.entry.js +0 -1
- package/dist/sekiui/p-307a0de3.entry.js +0 -1
- package/dist/sekiui/p-397fb20e.entry.js +0 -1
- package/dist/sekiui/p-4617d9c5.entry.js +0 -1
- package/dist/sekiui/p-4896a497.entry.js +0 -1
- package/dist/sekiui/p-4a47ea19.entry.js +0 -1
- package/dist/sekiui/p-4b0ee9e5.entry.js +0 -1
- package/dist/sekiui/p-4c1b29de.entry.js +0 -1
- package/dist/sekiui/p-598f9c5b.entry.js +0 -1
- package/dist/sekiui/p-635ca5ab.entry.js +0 -1
- package/dist/sekiui/p-63b3a53c.entry.js +0 -1
- package/dist/sekiui/p-63ffc38a.entry.js +0 -1
- package/dist/sekiui/p-6416552b.entry.js +0 -1
- package/dist/sekiui/p-66b59a4c.entry.js +0 -1
- package/dist/sekiui/p-67aaf0f1.entry.js +0 -1
- package/dist/sekiui/p-70f149c3.entry.js +0 -1
- package/dist/sekiui/p-79062829.entry.js +0 -1
- package/dist/sekiui/p-7bf7ee5f.entry.js +0 -1
- package/dist/sekiui/p-8067a8f3.entry.js +0 -1
- package/dist/sekiui/p-884bde18.entry.js +0 -1
- package/dist/sekiui/p-95749f03.entry.js +0 -1
- package/dist/sekiui/p-9d5b807f.entry.js +0 -1
- package/dist/sekiui/p-CP7ZtKCE.js +0 -1
- package/dist/sekiui/p-a24ea8af.entry.js +0 -1
- package/dist/sekiui/p-ac321aeb.entry.js +0 -1
- package/dist/sekiui/p-adc3cfff.entry.js +0 -1
- package/dist/sekiui/p-b945fc54.entry.js +0 -1
- package/dist/sekiui/p-bdb2d304.entry.js +0 -1
- package/dist/sekiui/p-c0ce45c3.entry.js +0 -1
- package/dist/sekiui/p-d2951ab4.entry.js +0 -1
- package/dist/sekiui/p-db37e4d2.entry.js +0 -1
- package/dist/sekiui/p-e51d76de.entry.js +0 -1
- package/dist/sekiui/p-f0bb516d.entry.js +0 -1
- package/dist/sekiui/p-f82ead84.entry.js +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import { h } from "@stencil/core";
|
|
2
|
+
import { registerThemeSync, unregisterThemeSync } from "../../utils/theme-sync";
|
|
3
|
+
/**
|
|
4
|
+
* seki-marker: Inline conversation status indicator, system note, or
|
|
5
|
+
* labeled separator for chat threads.
|
|
6
|
+
*
|
|
7
|
+
* Consumers control ARIA semantics by setting `role` directly on the host
|
|
8
|
+
* tag (e.g. `role="status"` for announced progress) — this works natively
|
|
9
|
+
* since the role applies to the custom element itself, not its shadow tree.
|
|
10
|
+
*
|
|
11
|
+
* @component Marker
|
|
12
|
+
* @example
|
|
13
|
+
* <seki-marker>
|
|
14
|
+
* <seki-marker-icon><svg>...</svg></seki-marker-icon>
|
|
15
|
+
* <seki-marker-content>Explored 4 files</seki-marker-content>
|
|
16
|
+
* </seki-marker>
|
|
17
|
+
* <seki-marker variant="separator">
|
|
18
|
+
* <seki-marker-content>Today</seki-marker-content>
|
|
19
|
+
* </seki-marker>
|
|
20
|
+
*/
|
|
21
|
+
export class SekiMarker {
|
|
22
|
+
constructor() {
|
|
23
|
+
/**
|
|
24
|
+
* Visual variant of the marker
|
|
25
|
+
* @default 'default'
|
|
26
|
+
*/
|
|
27
|
+
this.variant = 'default';
|
|
28
|
+
this.validVariants = ['default', 'border', 'separator'];
|
|
29
|
+
}
|
|
30
|
+
componentWillLoad() {
|
|
31
|
+
if (this.variant && !this.validVariants.includes(this.variant)) {
|
|
32
|
+
console.warn(`[seki-marker] Invalid variant "${this.variant}". Must be one of: ${this.validVariants.join(', ')}`);
|
|
33
|
+
this.variant = 'default';
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
connectedCallback() {
|
|
37
|
+
registerThemeSync(this.el);
|
|
38
|
+
}
|
|
39
|
+
disconnectedCallback() {
|
|
40
|
+
unregisterThemeSync(this.el);
|
|
41
|
+
}
|
|
42
|
+
render() {
|
|
43
|
+
return (h("div", { key: '682ee44a3a6fe294f59564967da28b2fd6757527', class: {
|
|
44
|
+
'seki-marker': true,
|
|
45
|
+
[`seki-marker--${this.variant}`]: !!this.variant,
|
|
46
|
+
}, part: "marker" }, h("slot", { key: '9cbf8548fae7854b01ce18586c5cfb457c11d8d4' })));
|
|
47
|
+
}
|
|
48
|
+
static get is() { return "seki-marker"; }
|
|
49
|
+
static get encapsulation() { return "shadow"; }
|
|
50
|
+
static get originalStyleUrls() {
|
|
51
|
+
return {
|
|
52
|
+
"$": ["seki-marker.css"]
|
|
53
|
+
};
|
|
54
|
+
}
|
|
55
|
+
static get styleUrls() {
|
|
56
|
+
return {
|
|
57
|
+
"$": ["seki-marker.css"]
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
static get properties() {
|
|
61
|
+
return {
|
|
62
|
+
"variant": {
|
|
63
|
+
"type": "string",
|
|
64
|
+
"mutable": true,
|
|
65
|
+
"complexType": {
|
|
66
|
+
"original": "MarkerVariant",
|
|
67
|
+
"resolved": "\"border\" | \"default\" | \"separator\" | undefined",
|
|
68
|
+
"references": {
|
|
69
|
+
"MarkerVariant": {
|
|
70
|
+
"location": "import",
|
|
71
|
+
"path": "./seki-marker.interface",
|
|
72
|
+
"id": "src/components/marker/seki-marker.interface.ts::MarkerVariant"
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
},
|
|
76
|
+
"required": false,
|
|
77
|
+
"optional": true,
|
|
78
|
+
"docs": {
|
|
79
|
+
"tags": [{
|
|
80
|
+
"name": "default",
|
|
81
|
+
"text": "'default'"
|
|
82
|
+
}],
|
|
83
|
+
"text": "Visual variant of the marker"
|
|
84
|
+
},
|
|
85
|
+
"getter": false,
|
|
86
|
+
"setter": false,
|
|
87
|
+
"reflect": true,
|
|
88
|
+
"attribute": "variant",
|
|
89
|
+
"defaultValue": "'default'"
|
|
90
|
+
}
|
|
91
|
+
};
|
|
92
|
+
}
|
|
93
|
+
static get elementRef() { return "el"; }
|
|
94
|
+
}
|
|
@@ -49,10 +49,10 @@ export class SekiMenubarCheckbox {
|
|
|
49
49
|
unregisterThemeSync(this.el);
|
|
50
50
|
}
|
|
51
51
|
render() {
|
|
52
|
-
return (h(Host, { key: '
|
|
52
|
+
return (h(Host, { key: '6cf84dc92dfbc7f34c6feeafd9072011952a9261' }, h("div", { key: '56a8c961598fbb4248d78a4e3aee80fc3cdc9a69', part: "item", role: "menuitemcheckbox", class: {
|
|
53
53
|
'menubar-checkbox': true,
|
|
54
54
|
'menubar-checkbox--disabled': this.disabled,
|
|
55
|
-
}, tabindex: this.disabled ? -1 : 0, "aria-checked": this._checked ? 'true' : 'false', "aria-disabled": this.disabled ? 'true' : null, onClick: this.handleClick, onKeyDown: this.handleKeyDown }, h("span", { key: '
|
|
55
|
+
}, tabindex: this.disabled ? -1 : 0, "aria-checked": this._checked ? 'true' : 'false', "aria-disabled": this.disabled ? 'true' : null, onClick: this.handleClick, onKeyDown: this.handleKeyDown }, h("span", { key: '003e66f704ee1bda60628d6c9cb4f55ed523fc71', part: "indicator", class: "menubar-checkbox__indicator" }, this._checked && (h("svg", { key: 'e2668d4c7f811c34aeaca413d4342802d186850e', xmlns: "http://www.w3.org/2000/svg", width: "16", height: "16", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", "stroke-width": "2", "stroke-linecap": "round", "stroke-linejoin": "round" }, h("polyline", { key: '0ec3ac5e7900165235f005e8655050a6713ac33d', points: "20 6 9 17 4 12" })))), h("slot", { key: 'b0030fa9d04e3675372445162768dc0974e6a5fc' }), this.shortcut && (h("span", { key: 'dfb75e160ecd539c71b700b574b1ca300272512b', part: "shortcut", class: "menubar-checkbox-shortcut" }, this.shortcut)))));
|
|
56
56
|
}
|
|
57
57
|
static get is() { return "seki-menubar-checkbox"; }
|
|
58
58
|
static get encapsulation() { return "shadow"; }
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
// src/components/menubar/seki-menubar-content.tsx
|
|
2
2
|
import { h, Host } from "@stencil/core";
|
|
3
3
|
import { registerThemeSync, unregisterThemeSync } from "../../utils/theme-sync";
|
|
4
|
+
import { computeAnchoredPosition } from "../../utils/positioning";
|
|
4
5
|
/**
|
|
5
6
|
* Menubar content - dropdown content container
|
|
6
7
|
*
|
|
@@ -26,6 +27,19 @@ export class SekiMenubarContent {
|
|
|
26
27
|
this._position = { top: '0', left: '0' };
|
|
27
28
|
this._focusedIndex = -1;
|
|
28
29
|
this.typeaheadBuffer = '';
|
|
30
|
+
this.onMenubarOpenChange = () => {
|
|
31
|
+
const context = this.getMenubarContext();
|
|
32
|
+
const menuId = this.getMenuId();
|
|
33
|
+
const wasOpen = this._isOpen;
|
|
34
|
+
this._isOpen = (context === null || context === void 0 ? void 0 : context.activeMenuId) === menuId;
|
|
35
|
+
if (this._isOpen && !wasOpen) {
|
|
36
|
+
this._focusedIndex = 0;
|
|
37
|
+
requestAnimationFrame(() => {
|
|
38
|
+
this.updatePosition();
|
|
39
|
+
this.focusItem(0);
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
};
|
|
29
43
|
}
|
|
30
44
|
getMenubarContext() {
|
|
31
45
|
const menubar = this.el.closest('seki-menubar');
|
|
@@ -42,22 +56,9 @@ export class SekiMenubarContent {
|
|
|
42
56
|
return Array.from(this.contentRef.querySelectorAll('seki-menubar-item:not([disabled]), seki-menubar-checkbox:not([disabled]), seki-menubar-radio:not([disabled]), seki-menubar-sub-trigger:not([disabled])'));
|
|
43
57
|
}
|
|
44
58
|
componentDidLoad() {
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
const context = this.getMenubarContext();
|
|
49
|
-
const menuId = this.getMenuId();
|
|
50
|
-
const wasOpen = this._isOpen;
|
|
51
|
-
this._isOpen = (context === null || context === void 0 ? void 0 : context.activeMenuId) === menuId;
|
|
52
|
-
if (this._isOpen && !wasOpen) {
|
|
53
|
-
this._focusedIndex = 0;
|
|
54
|
-
requestAnimationFrame(() => {
|
|
55
|
-
this.updatePosition();
|
|
56
|
-
this.focusItem(0);
|
|
57
|
-
});
|
|
58
|
-
}
|
|
59
|
-
});
|
|
60
|
-
}
|
|
59
|
+
var _a, _b;
|
|
60
|
+
this.menubarEl = (_a = this.el.closest('seki-menubar')) !== null && _a !== void 0 ? _a : undefined;
|
|
61
|
+
(_b = this.menubarEl) === null || _b === void 0 ? void 0 : _b.addEventListener('sekiOpenChange', this.onMenubarOpenChange);
|
|
61
62
|
}
|
|
62
63
|
componentDidRender() {
|
|
63
64
|
if (this._isOpen) {
|
|
@@ -146,39 +147,20 @@ export class SekiMenubarContent {
|
|
|
146
147
|
return;
|
|
147
148
|
const triggerRect = trigger.getBoundingClientRect();
|
|
148
149
|
const contentRect = this.contentRef.getBoundingClientRect();
|
|
149
|
-
const
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
top = triggerRect.bottom + this.sideOffset;
|
|
155
|
-
}
|
|
156
|
-
else {
|
|
157
|
-
top = triggerRect.top - contentRect.height - this.sideOffset;
|
|
158
|
-
}
|
|
159
|
-
// Align positioning
|
|
160
|
-
switch (this.align) {
|
|
161
|
-
case 'start':
|
|
162
|
-
left = triggerRect.left;
|
|
163
|
-
break;
|
|
164
|
-
case 'center':
|
|
165
|
-
left = triggerRect.left + (triggerRect.width - contentRect.width) / 2;
|
|
166
|
-
break;
|
|
167
|
-
case 'end':
|
|
168
|
-
left = triggerRect.right - contentRect.width;
|
|
169
|
-
break;
|
|
170
|
-
}
|
|
171
|
-
// Viewport clamping
|
|
172
|
-
const margin = 8;
|
|
173
|
-
left = Math.max(margin, Math.min(left, viewport.width - contentRect.width - margin));
|
|
174
|
-
top = Math.max(margin, Math.min(top, viewport.height - contentRect.height - margin));
|
|
150
|
+
const { top, left } = computeAnchoredPosition(triggerRect, contentRect, {
|
|
151
|
+
side: this.side,
|
|
152
|
+
align: this.align,
|
|
153
|
+
sideOffset: this.sideOffset,
|
|
154
|
+
});
|
|
175
155
|
this._position = { top: `${top}px`, left: `${left}px` };
|
|
176
156
|
}
|
|
177
157
|
connectedCallback() {
|
|
178
158
|
registerThemeSync(this.el);
|
|
179
159
|
}
|
|
180
160
|
disconnectedCallback() {
|
|
161
|
+
var _a;
|
|
181
162
|
unregisterThemeSync(this.el);
|
|
163
|
+
(_a = this.menubarEl) === null || _a === void 0 ? void 0 : _a.removeEventListener('sekiOpenChange', this.onMenubarOpenChange);
|
|
182
164
|
}
|
|
183
165
|
render() {
|
|
184
166
|
if (!this._isOpen) {
|
|
@@ -16,7 +16,7 @@ export class SekiMenubarGroup {
|
|
|
16
16
|
unregisterThemeSync(this.el);
|
|
17
17
|
}
|
|
18
18
|
render() {
|
|
19
|
-
return (h(Host, { key: '
|
|
19
|
+
return (h(Host, { key: 'a70040707595e384e9ea0d49164b8cb6da77391c' }, h("div", { key: '733ac22de36cab4710cf51b03f544f312067fa2b', part: "group", role: "group", class: "menubar-group" }, this.label && (h("div", { key: '5c1096a076012ec6e06053ea0b2b297395c7a62c', part: "label", class: "menubar-group-label" }, this.label)), h("slot", { key: 'd8c607df106b0efd5a3a808005e7df395090cab7' }))));
|
|
20
20
|
}
|
|
21
21
|
static get is() { return "seki-menubar-group"; }
|
|
22
22
|
static get encapsulation() { return "shadow"; }
|
|
@@ -46,11 +46,11 @@ export class SekiMenubarItem {
|
|
|
46
46
|
unregisterThemeSync(this.el);
|
|
47
47
|
}
|
|
48
48
|
render() {
|
|
49
|
-
return (h(Host, { key: '
|
|
49
|
+
return (h(Host, { key: '8237cb23d0d5cf66ef1a563ab7f9b72de7f0bb67' }, h("div", { key: '669e2bdd18efc7eaa0b4a2b6a320b7c04af40b88', part: "item", role: "menuitem", class: {
|
|
50
50
|
'menubar-item': true,
|
|
51
51
|
'menubar-item--disabled': this.disabled,
|
|
52
52
|
'menubar-item--inset': this.inset,
|
|
53
|
-
}, tabindex: this.disabled ? -1 : 0, "aria-disabled": this.disabled ? 'true' : null, onClick: this.handleClick, onKeyDown: this.handleKeyDown }, h("slot", { key: '
|
|
53
|
+
}, tabindex: this.disabled ? -1 : 0, "aria-disabled": this.disabled ? 'true' : null, onClick: this.handleClick, onKeyDown: this.handleKeyDown }, h("slot", { key: 'aad4d95cd19cddf247b59b2e25940eaf9f1421d8' }), this.shortcut && (h("span", { key: 'a315a0a30970f352313dfe06aadf55a4a9e2aae3', part: "shortcut", class: "menubar-item-shortcut" }, this.shortcut)))));
|
|
54
54
|
}
|
|
55
55
|
static get is() { return "seki-menubar-item"; }
|
|
56
56
|
static get encapsulation() { return "shadow"; }
|
|
@@ -31,7 +31,7 @@ export class SekiMenubarMenu {
|
|
|
31
31
|
}
|
|
32
32
|
}
|
|
33
33
|
render() {
|
|
34
|
-
return (h(Host, { key: '
|
|
34
|
+
return (h(Host, { key: 'd328e032ef3108ef08cb1bc3c9ca725b1c4c1fdc' }, h("div", { key: '4a9f54c45c49bb262f3de86a110355a42c20895d', part: "menu", class: "menubar-menu" }, h("slot", { key: 'd25de5203bf1a831bf1f6a8cff706a020b359ac6' }))));
|
|
35
35
|
}
|
|
36
36
|
static get is() { return "seki-menubar-menu"; }
|
|
37
37
|
static get encapsulation() { return "shadow"; }
|
|
@@ -38,7 +38,7 @@ export class SekiMenubarRadioGroup {
|
|
|
38
38
|
unregisterThemeSync(this.el);
|
|
39
39
|
}
|
|
40
40
|
render() {
|
|
41
|
-
return (h(Host, { key: '
|
|
41
|
+
return (h(Host, { key: '11fb84934201a569abcc9d3310cf630ce508797f' }, h("div", { key: 'ec99ce927c6121f7f653ed0f5dcbf4c857dcaa4b', part: "group", role: "group", class: "menubar-radio-group" }, h("slot", { key: 'd0e4ab29e49bbe3f10670fb4e5d6744a6640e928' }))));
|
|
42
42
|
}
|
|
43
43
|
static get is() { return "seki-menubar-radio-group"; }
|
|
44
44
|
static get encapsulation() { return "shadow"; }
|
|
@@ -15,6 +15,10 @@ export class SekiMenubarRadio {
|
|
|
15
15
|
*/
|
|
16
16
|
this.disabled = false;
|
|
17
17
|
this._isChecked = false;
|
|
18
|
+
this.onRadioGroupValueChange = () => {
|
|
19
|
+
const context = this.getContext();
|
|
20
|
+
this._isChecked = (context === null || context === void 0 ? void 0 : context.getValue()) === this.value;
|
|
21
|
+
};
|
|
18
22
|
this.handleClick = () => {
|
|
19
23
|
if (this.disabled)
|
|
20
24
|
return;
|
|
@@ -39,25 +43,23 @@ export class SekiMenubarRadio {
|
|
|
39
43
|
this._isChecked = (context === null || context === void 0 ? void 0 : context.getValue()) === this.value;
|
|
40
44
|
}
|
|
41
45
|
componentDidLoad() {
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
const context = this.getContext();
|
|
46
|
-
this._isChecked = (context === null || context === void 0 ? void 0 : context.getValue()) === this.value;
|
|
47
|
-
});
|
|
48
|
-
}
|
|
46
|
+
var _a, _b;
|
|
47
|
+
this.radioGroupEl = (_a = this.el.closest('seki-menubar-radio-group')) !== null && _a !== void 0 ? _a : undefined;
|
|
48
|
+
(_b = this.radioGroupEl) === null || _b === void 0 ? void 0 : _b.addEventListener('sekiValueChange', this.onRadioGroupValueChange);
|
|
49
49
|
}
|
|
50
50
|
connectedCallback() {
|
|
51
51
|
registerThemeSync(this.el);
|
|
52
52
|
}
|
|
53
53
|
disconnectedCallback() {
|
|
54
|
+
var _a;
|
|
54
55
|
unregisterThemeSync(this.el);
|
|
56
|
+
(_a = this.radioGroupEl) === null || _a === void 0 ? void 0 : _a.removeEventListener('sekiValueChange', this.onRadioGroupValueChange);
|
|
55
57
|
}
|
|
56
58
|
render() {
|
|
57
|
-
return (h(Host, { key: '
|
|
59
|
+
return (h(Host, { key: '20cc160b7e5070279bab1536eafe4bf0b6914ffa' }, h("div", { key: 'a4f5d8c21020bf621e75f0b495959162a9e59910', part: "item", role: "menuitemradio", class: {
|
|
58
60
|
'menubar-radio': true,
|
|
59
61
|
'menubar-radio--disabled': this.disabled,
|
|
60
|
-
}, tabindex: this.disabled ? -1 : 0, "aria-checked": this._isChecked ? 'true' : 'false', "aria-disabled": this.disabled ? 'true' : null, onClick: this.handleClick, onKeyDown: this.handleKeyDown }, h("span", { key: '
|
|
62
|
+
}, tabindex: this.disabled ? -1 : 0, "aria-checked": this._isChecked ? 'true' : 'false', "aria-disabled": this.disabled ? 'true' : null, onClick: this.handleClick, onKeyDown: this.handleKeyDown }, h("span", { key: 'e2f9a9a75674de2e9983201f777f41102a8eaa9f', part: "indicator", class: "menubar-radio__indicator" }, this._isChecked && (h("svg", { key: 'd408c93936760ed31f585beb6302cc1f70f0648b', xmlns: "http://www.w3.org/2000/svg", width: "16", height: "16", viewBox: "0 0 24 24", fill: "currentColor" }, h("circle", { key: '213a815afd3a4d5ba639992de27d469c1da01032', cx: "12", cy: "12", r: "4" })))), h("slot", { key: 'c04ea5154b34acdd9683e0626322a531de5034a5' }))));
|
|
61
63
|
}
|
|
62
64
|
static get is() { return "seki-menubar-radio"; }
|
|
63
65
|
static get encapsulation() { return "shadow"; }
|
|
@@ -13,7 +13,7 @@ export class SekiMenubarSeparator {
|
|
|
13
13
|
unregisterThemeSync(this.el);
|
|
14
14
|
}
|
|
15
15
|
render() {
|
|
16
|
-
return (h(Host, { key: '
|
|
16
|
+
return (h(Host, { key: '17ede9830801810fc93c4242fad90e97f48ce363' }, h("div", { key: '3d139dc6efe8e49853b6c2a1940cf1906165893f', part: "separator", role: "separator", class: "menubar-separator" })));
|
|
17
17
|
}
|
|
18
18
|
static get is() { return "seki-menubar-separator"; }
|
|
19
19
|
static get encapsulation() { return "shadow"; }
|
|
@@ -15,7 +15,7 @@ export class SekiMenubarShortcut {
|
|
|
15
15
|
unregisterThemeSync(this.el);
|
|
16
16
|
}
|
|
17
17
|
render() {
|
|
18
|
-
return (h(Host, { key: '
|
|
18
|
+
return (h(Host, { key: 'c87e86fcb0682407cdc129cdc2b36e7da25d3994' }, h("span", { key: '1865a842e549c0ebbaaa547f03b9d2c456206c0d', part: "shortcut", class: "menubar-shortcut" }, h("slot", { key: 'c7554e1f6aa9250900c405a8178f86ab12db8364' }))));
|
|
19
19
|
}
|
|
20
20
|
static get is() { return "seki-menubar-shortcut"; }
|
|
21
21
|
static get encapsulation() { return "shadow"; }
|
|
@@ -37,11 +37,11 @@ export class SekiMenubarSubTrigger {
|
|
|
37
37
|
unregisterThemeSync(this.el);
|
|
38
38
|
}
|
|
39
39
|
render() {
|
|
40
|
-
return (h(Host, { key: '
|
|
40
|
+
return (h(Host, { key: 'f8b8f21daf65a3c1768b1dd29a4f0fabdaaa9fd4' }, h("div", { key: 'e441ac687a872a267753401454b8f89ce070c6a4', part: "trigger", role: "menuitem", class: {
|
|
41
41
|
'menubar-sub-trigger': true,
|
|
42
42
|
'menubar-sub-trigger--disabled': this.disabled,
|
|
43
43
|
'menubar-sub-trigger--inset': this.inset,
|
|
44
|
-
}, tabindex: this.disabled ? -1 : 0, "aria-haspopup": "menu", "aria-expanded": this._isOpen ? 'true' : 'false', "aria-disabled": this.disabled ? 'true' : null, "data-state": this._isOpen ? 'open' : 'closed' }, h("slot", { key: '
|
|
44
|
+
}, tabindex: this.disabled ? -1 : 0, "aria-haspopup": "menu", "aria-expanded": this._isOpen ? 'true' : 'false', "aria-disabled": this.disabled ? 'true' : null, "data-state": this._isOpen ? 'open' : 'closed' }, h("slot", { key: '92d0ddd48218274c941e0b9fb5f45174a1fde043' }), h("svg", { key: '8b8c2ec05a9e86ed1792fe41f624b782b21d6e6a', part: "chevron", class: "menubar-sub-trigger__chevron", xmlns: "http://www.w3.org/2000/svg", width: "16", height: "16", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", "stroke-width": "2", "stroke-linecap": "round", "stroke-linejoin": "round" }, h("polyline", { key: '30a4c704ae4a62561a5dfaa019229243cb189170', points: "9 18 15 12 9 6" })))));
|
|
45
45
|
}
|
|
46
46
|
static get is() { return "seki-menubar-sub-trigger"; }
|
|
47
47
|
static get encapsulation() { return "shadow"; }
|
|
@@ -108,7 +108,7 @@ export class SekiMenubarSub {
|
|
|
108
108
|
}
|
|
109
109
|
}
|
|
110
110
|
render() {
|
|
111
|
-
return (h(Host, { key: '
|
|
111
|
+
return (h(Host, { key: 'fbcd1450f228d885e70a85660f9ef1d6d5d11a42', "data-state": this._isOpen ? 'open' : 'closed', onMouseEnter: this.handleMouseEnter, onMouseLeave: this.handleMouseLeave }, h("div", { key: '3cfb28806b6a836413e8a46b9b097b10ad9f20ff', part: "sub", class: "menubar-sub", style: { position: 'relative' } }, h("slot", { key: 'd958a77a9ad9cf26a845626ebd16c9f978336867', name: "trigger" }), h("slot", { key: '62004a8f9b2cdf4907db69a702595e3abbb94c36', name: "content" }))));
|
|
112
112
|
}
|
|
113
113
|
static get is() { return "seki-menubar-sub"; }
|
|
114
114
|
static get encapsulation() { return "shadow"; }
|
|
@@ -15,6 +15,11 @@ export class SekiMenubarTrigger {
|
|
|
15
15
|
*/
|
|
16
16
|
this.disabled = false;
|
|
17
17
|
this._isOpen = false;
|
|
18
|
+
this.onMenubarOpenChange = () => {
|
|
19
|
+
const context = this.getContext();
|
|
20
|
+
const menuId = this.getMenuId();
|
|
21
|
+
this._isOpen = (context === null || context === void 0 ? void 0 : context.activeMenuId) === menuId;
|
|
22
|
+
};
|
|
18
23
|
this.handleClick = () => {
|
|
19
24
|
if (this.disabled)
|
|
20
25
|
return;
|
|
@@ -89,26 +94,23 @@ export class SekiMenubarTrigger {
|
|
|
89
94
|
return (menu === null || menu === void 0 ? void 0 : menu.getAttribute('menu-id')) || null;
|
|
90
95
|
}
|
|
91
96
|
componentDidLoad() {
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
const context = this.getContext();
|
|
96
|
-
const menuId = this.getMenuId();
|
|
97
|
-
this._isOpen = (context === null || context === void 0 ? void 0 : context.activeMenuId) === menuId;
|
|
98
|
-
});
|
|
99
|
-
}
|
|
97
|
+
var _a, _b;
|
|
98
|
+
this.menubarEl = (_a = this.el.closest('seki-menubar')) !== null && _a !== void 0 ? _a : undefined;
|
|
99
|
+
(_b = this.menubarEl) === null || _b === void 0 ? void 0 : _b.addEventListener('sekiOpenChange', this.onMenubarOpenChange);
|
|
100
100
|
}
|
|
101
101
|
connectedCallback() {
|
|
102
102
|
registerThemeSync(this.el);
|
|
103
103
|
}
|
|
104
104
|
disconnectedCallback() {
|
|
105
|
+
var _a;
|
|
105
106
|
unregisterThemeSync(this.el);
|
|
107
|
+
(_a = this.menubarEl) === null || _a === void 0 ? void 0 : _a.removeEventListener('sekiOpenChange', this.onMenubarOpenChange);
|
|
106
108
|
}
|
|
107
109
|
render() {
|
|
108
|
-
return (h(Host, { key: '
|
|
110
|
+
return (h(Host, { key: 'dbd7fb2ab6a1202fab32d742f181cd7a5d1d0476' }, h("button", { key: '9d5caf282dd3b2c9de087266dc8b9ad88e0b89a2', part: "trigger", type: "button", role: "menuitem", class: {
|
|
109
111
|
'menubar-trigger': true,
|
|
110
112
|
'menubar-trigger--disabled': this.disabled,
|
|
111
|
-
}, tabindex: this.disabled ? -1 : 0, "aria-haspopup": "menu", "aria-expanded": this._isOpen ? 'true' : 'false', "aria-disabled": this.disabled ? 'true' : null, "data-state": this._isOpen ? 'open' : 'closed', onClick: this.handleClick, onKeyDown: this.handleKeyDown }, h("slot", { key: '
|
|
113
|
+
}, tabindex: this.disabled ? -1 : 0, "aria-haspopup": "menu", "aria-expanded": this._isOpen ? 'true' : 'false', "aria-disabled": this.disabled ? 'true' : null, "data-state": this._isOpen ? 'open' : 'closed', onClick: this.handleClick, onKeyDown: this.handleKeyDown }, h("slot", { key: 'fed1a9cf2a925d740695980b41d268177bb2129f' }))));
|
|
112
114
|
}
|
|
113
115
|
static get is() { return "seki-menubar-trigger"; }
|
|
114
116
|
static get encapsulation() { return "shadow"; }
|
|
@@ -108,7 +108,11 @@ export class SekiMenubar {
|
|
|
108
108
|
};
|
|
109
109
|
}
|
|
110
110
|
setupClickOutside() {
|
|
111
|
-
|
|
111
|
+
// Clear any pending timeout/handler first so a rapid open→close→open cannot
|
|
112
|
+
// leave a leaked listener or double-schedule.
|
|
113
|
+
this.removeClickOutside();
|
|
114
|
+
this.clickOutsideTimeout = setTimeout(() => {
|
|
115
|
+
this.clickOutsideTimeout = undefined;
|
|
112
116
|
this.clickOutsideHandler = (e) => {
|
|
113
117
|
const path = e.composedPath();
|
|
114
118
|
if (!path.includes(this.el)) {
|
|
@@ -119,6 +123,11 @@ export class SekiMenubar {
|
|
|
119
123
|
}, 0);
|
|
120
124
|
}
|
|
121
125
|
removeClickOutside() {
|
|
126
|
+
// Cancel a still-pending registration so it can't fire after close/disconnect.
|
|
127
|
+
if (this.clickOutsideTimeout !== undefined) {
|
|
128
|
+
clearTimeout(this.clickOutsideTimeout);
|
|
129
|
+
this.clickOutsideTimeout = undefined;
|
|
130
|
+
}
|
|
122
131
|
if (this.clickOutsideHandler) {
|
|
123
132
|
document.removeEventListener('click', this.clickOutsideHandler, { capture: true });
|
|
124
133
|
this.clickOutsideHandler = undefined;
|
|
@@ -145,7 +154,7 @@ export class SekiMenubar {
|
|
|
145
154
|
this.removeClickOutside();
|
|
146
155
|
}
|
|
147
156
|
render() {
|
|
148
|
-
return (h(Host, { key: '
|
|
157
|
+
return (h(Host, { key: '2a29a195f321084fda6b2c123887e39ea969b1f0' }, h("div", { key: '574fdbffd6c0a0d75b498aca7860751232d9e53f', part: "menubar", role: "menubar", class: "menubar" }, h("slot", { key: '080ba5c852e3c0397e536451b1288e778d3241d9' }))));
|
|
149
158
|
}
|
|
150
159
|
static get is() { return "seki-menubar"; }
|
|
151
160
|
static get encapsulation() { return "shadow"; }
|
|
@@ -35,7 +35,7 @@ export class SekiNativeSelect {
|
|
|
35
35
|
unregisterThemeSync(this.el);
|
|
36
36
|
}
|
|
37
37
|
render() {
|
|
38
|
-
return (h(Host, { key: '
|
|
38
|
+
return (h(Host, { key: '06c1263022892c128e1ff1eba05a99879b6cdbf1', class: { 'seki-native-select--disabled': this.disabled } }, h("div", { key: 'cfcd7624ab9b2b008272258acd58832e21de69d6', class: "seki-native-select" }, h("select", { key: '7702d0411e3a20ab73cc28dc42498bb65114bf1b', class: "seki-native-select__select", name: this.name, disabled: this.disabled, required: this.required, "aria-label": this.ariaLabel, onChange: this.handleChange }, this.placeholder && (h("option", { key: '9a9455abc7c3be7907bc48cfdb622fad3620735e', value: "", disabled: true, selected: !this.value && !this.defaultValue }, this.placeholder)), h("slot", { key: 'd310c6cdae31847fe93daabfc86bbb1b0cdf2762' })), h("svg", { key: 'b597495004880eb4e20c9bb620302999775cc204', class: "seki-native-select__chevron", xmlns: "http://www.w3.org/2000/svg", width: "16", height: "16", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", "stroke-width": "2", "stroke-linecap": "round", "stroke-linejoin": "round", "aria-hidden": "true" }, h("path", { key: '1864330846f7cf2ac998b70890b41035fed564f4', d: "m6 9 6 6 6-6" })))));
|
|
39
39
|
}
|
|
40
40
|
static get is() { return "seki-native-select"; }
|
|
41
41
|
static get encapsulation() { return "scoped"; }
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { h, Host } from "@stencil/core";
|
|
2
2
|
import { registerThemeSync, unregisterThemeSync } from "../../utils/theme-sync";
|
|
3
|
+
import { mirrorAncestorAttributes } from "../../utils/ancestor-attrs";
|
|
3
4
|
export class SekiNavigationMenuContent {
|
|
4
5
|
constructor() {
|
|
5
6
|
// =========================================================================
|
|
@@ -65,10 +66,14 @@ export class SekiNavigationMenuContent {
|
|
|
65
66
|
}
|
|
66
67
|
connectedCallback() {
|
|
67
68
|
registerThemeSync(this.el);
|
|
69
|
+
this.itemAttrMirror = mirrorAncestorAttributes(this.el, 'seki-navigation-menu-item', ['data-mobile-expanded']);
|
|
68
70
|
}
|
|
69
71
|
disconnectedCallback() {
|
|
72
|
+
var _a;
|
|
70
73
|
unregisterThemeSync(this.el);
|
|
71
74
|
this.cleanupContentInteractions();
|
|
75
|
+
(_a = this.itemAttrMirror) === null || _a === void 0 ? void 0 : _a.disconnect();
|
|
76
|
+
this.itemAttrMirror = undefined;
|
|
72
77
|
}
|
|
73
78
|
// =========================================================================
|
|
74
79
|
// Watchers
|
|
@@ -198,13 +203,13 @@ export class SekiNavigationMenuContent {
|
|
|
198
203
|
if (this.layout === 'grid') {
|
|
199
204
|
customStyles['--content-columns'] = String(this.columns);
|
|
200
205
|
}
|
|
201
|
-
return (h(Host, { key: '
|
|
206
|
+
return (h(Host, { key: 'fd4af3ffd1e105c90564d860917c88c30c8606b6', class: {
|
|
202
207
|
'navigation-menu-content': true,
|
|
203
208
|
'navigation-menu-content--open': this.isOpen,
|
|
204
209
|
'navigation-menu-content--mobile': this.isMobile,
|
|
205
210
|
[`navigation-menu-content--layout-${this.layout}`]: true,
|
|
206
211
|
[`navigation-menu-content--align-${this.align}`]: true,
|
|
207
|
-
}, style: customStyles }, h("div", { key: '
|
|
212
|
+
}, "data-mobile": this.isMobile ? '' : undefined, style: customStyles }, h("div", { key: 'f55e89e59c9126118e15d7433e83f0113be21328', id: `content-${itemId}`, class: "navigation-menu-content__inner", role: "menu", "aria-labelledby": `trigger-${itemId}` }, h("slot", { key: '3fe1d809ccb69408a4153f8638caffe169fe3b3a' }))));
|
|
208
213
|
}
|
|
209
214
|
static get is() { return "seki-navigation-menu-content"; }
|
|
210
215
|
static get encapsulation() { return "shadow"; }
|
|
@@ -91,12 +91,12 @@ export class SekiNavigationMenuItem {
|
|
|
91
91
|
return this.parentMenu;
|
|
92
92
|
}
|
|
93
93
|
render() {
|
|
94
|
-
return (h(Host, { key: '
|
|
94
|
+
return (h(Host, { key: '968dbf852a440e97c46d1f1036a9554d81058889', class: {
|
|
95
95
|
'navigation-menu-item': true,
|
|
96
96
|
'navigation-menu-item--open': this.isOpen,
|
|
97
97
|
'navigation-menu-item--mobile': this.isMobile,
|
|
98
98
|
'navigation-menu-item--mobile-expanded': this.mobileExpanded,
|
|
99
|
-
}, "data-item-id": this.itemId }, h("li", { key: '
|
|
99
|
+
}, "data-item-id": this.itemId, "data-mobile-expanded": this.mobileExpanded ? '' : undefined }, h("li", { key: '84fd1a796784024ca0ff6f068aee7c2e416a7934', class: "navigation-menu-item__container", role: "none" }, h("slot", { key: '70bd982cb3c84ba7a68452f02fcea1477b37efd6' }))));
|
|
100
100
|
}
|
|
101
101
|
static get is() { return "seki-navigation-menu-item"; }
|
|
102
102
|
static get encapsulation() { return "shadow"; }
|
|
@@ -70,7 +70,7 @@
|
|
|
70
70
|
}
|
|
71
71
|
|
|
72
72
|
/* Mobile mode */
|
|
73
|
-
:host
|
|
73
|
+
:host([data-mobile]) .navigation-menu-link__anchor {
|
|
74
74
|
min-height: 44px;
|
|
75
75
|
padding: var(--seki-spacing-3, 0.75rem) var(--seki-spacing-4, 1rem);
|
|
76
76
|
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { h, Host } from "@stencil/core";
|
|
2
2
|
import { registerThemeSync, unregisterThemeSync } from "../../utils/theme-sync";
|
|
3
|
+
import { mirrorAncestorAttributes } from "../../utils/ancestor-attrs";
|
|
3
4
|
export class SekiNavigationMenuLink {
|
|
4
5
|
constructor() {
|
|
5
6
|
// =========================================================================
|
|
@@ -68,19 +69,23 @@ export class SekiNavigationMenuLink {
|
|
|
68
69
|
}
|
|
69
70
|
connectedCallback() {
|
|
70
71
|
registerThemeSync(this.el);
|
|
72
|
+
this.attrMirror = mirrorAncestorAttributes(this.el, 'seki-navigation-menu-content', ['data-mobile']);
|
|
71
73
|
}
|
|
72
74
|
disconnectedCallback() {
|
|
75
|
+
var _a;
|
|
73
76
|
unregisterThemeSync(this.el);
|
|
77
|
+
(_a = this.attrMirror) === null || _a === void 0 ? void 0 : _a.disconnect();
|
|
78
|
+
this.attrMirror = undefined;
|
|
74
79
|
}
|
|
75
80
|
render() {
|
|
76
81
|
const hasDescription = Boolean(this.description);
|
|
77
|
-
return (h(Host, { key: '
|
|
82
|
+
return (h(Host, { key: 'c4f1a5bcf3faa4a719c294c114a941a45c9795ac', class: {
|
|
78
83
|
'navigation-menu-link': true,
|
|
79
84
|
'navigation-menu-link--active': this.active,
|
|
80
85
|
'navigation-menu-link--disabled': this.disabled,
|
|
81
86
|
'navigation-menu-link--in-content': this.isInContent,
|
|
82
87
|
'navigation-menu-link--with-description': hasDescription,
|
|
83
|
-
} }, h("a", { key: '
|
|
88
|
+
} }, h("a", { key: '0f113b3aa8fef6307fbbf811e6edd78db7ef8bb4', class: "navigation-menu-link__anchor", href: this.disabled ? undefined : this.href, target: this.target || undefined, rel: this.target === '_blank' ? 'noopener noreferrer' : undefined, role: this.isInContent ? 'menuitem' : undefined, "aria-current": this.active ? 'page' : undefined, "aria-disabled": this.disabled ? 'true' : undefined, tabindex: this.disabled ? -1 : 0, onClick: this.handleClick, onKeyDown: this.handleKeyDown }, hasDescription ? (h("div", { class: "navigation-menu-link__content" }, h("span", { class: "navigation-menu-link__title" }, h("slot", null)), h("span", { class: "navigation-menu-link__description" }, this.description))) : (h("slot", null)))));
|
|
84
89
|
}
|
|
85
90
|
static get is() { return "seki-navigation-menu-link"; }
|
|
86
91
|
static get encapsulation() { return "shadow"; }
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
}
|
|
13
13
|
|
|
14
14
|
/* Mobile mode - vertical stack */
|
|
15
|
-
:host
|
|
15
|
+
:host([data-mobile]) .navigation-menu-list {
|
|
16
16
|
flex-direction: column;
|
|
17
17
|
align-items: stretch;
|
|
18
18
|
gap: var(--seki-spacing-1, 0.25rem);
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { h, Host } from "@stencil/core";
|
|
2
2
|
import { registerThemeSync, unregisterThemeSync } from "../../utils/theme-sync";
|
|
3
|
+
import { mirrorAncestorAttributes } from "../../utils/ancestor-attrs";
|
|
3
4
|
export class SekiNavigationMenuList {
|
|
4
5
|
constructor() {
|
|
5
6
|
/** Whether in mobile mode */
|
|
@@ -35,10 +36,14 @@ export class SekiNavigationMenuList {
|
|
|
35
36
|
}
|
|
36
37
|
connectedCallback() {
|
|
37
38
|
registerThemeSync(this.el);
|
|
39
|
+
this.attrMirror = mirrorAncestorAttributes(this.el, 'seki-navigation-menu', ['data-mobile']);
|
|
38
40
|
}
|
|
39
41
|
disconnectedCallback() {
|
|
42
|
+
var _a;
|
|
40
43
|
unregisterThemeSync(this.el);
|
|
41
44
|
this.cleanupKeyboardNavigation();
|
|
45
|
+
(_a = this.attrMirror) === null || _a === void 0 ? void 0 : _a.disconnect();
|
|
46
|
+
this.attrMirror = undefined;
|
|
42
47
|
}
|
|
43
48
|
setupKeyboardNavigation() {
|
|
44
49
|
this.el.addEventListener('keydown', this.handleKeyDown);
|
|
@@ -101,7 +106,7 @@ export class SekiNavigationMenuList {
|
|
|
101
106
|
this.focusedIndex = index;
|
|
102
107
|
}
|
|
103
108
|
render() {
|
|
104
|
-
return (h(Host, { key: '
|
|
109
|
+
return (h(Host, { key: '30448cc6ca88489984b3f1a2b907ba4874dce124' }, h("ul", { key: 'e63b9f1fac449d35e3616186eac7a12ff085274d', class: "navigation-menu-list", role: "menubar" }, h("slot", { key: '0919c2642f38f7e49c3b0e504b8e5dba4e840065' }))));
|
|
105
110
|
}
|
|
106
111
|
static get is() { return "seki-navigation-menu-list"; }
|
|
107
112
|
static get encapsulation() { return "shadow"; }
|