scb-wc 0.1.3 → 0.1.4
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/README.md +194 -164
- package/all.js +91 -5
- package/blazor/CustomEvents.cs +83 -0
- package/blazor/ScbBlazorInteropBase.cs +4460 -1674
- package/blazor/scb-blazor-bridge.js +6827 -2805
- package/blazor/wrappers/ScbAccordion.razor +50 -0
- package/blazor/wrappers/ScbAppBar.razor +95 -0
- package/blazor/wrappers/ScbBreadcrumb.razor +59 -0
- package/blazor/wrappers/ScbCalendar.razor +100 -0
- package/blazor/wrappers/ScbCalendarCard.razor +189 -0
- package/blazor/wrappers/ScbCheckbox.razor +92 -0
- package/blazor/wrappers/ScbCollapse.razor +76 -0
- package/blazor/wrappers/ScbCookiesConsent.razor +106 -0
- package/blazor/wrappers/ScbDatepicker.razor +77 -0
- package/blazor/wrappers/ScbDialog.razor +72 -0
- package/blazor/wrappers/ScbDrawer.razor +64 -0
- package/blazor/wrappers/ScbDropZone.razor +168 -0
- package/blazor/wrappers/ScbDropdown.razor +76 -0
- package/blazor/wrappers/ScbHorizontalScroller.razor +137 -0
- package/blazor/wrappers/ScbList.razor +77 -0
- package/blazor/wrappers/ScbMenu.razor +71 -0
- package/blazor/wrappers/ScbNav.razor +92 -0
- package/blazor/wrappers/ScbNotificationCard.razor +122 -0
- package/blazor/wrappers/ScbOptionsMenu.razor +88 -0
- package/blazor/wrappers/ScbPagination.razor +80 -0
- package/blazor/wrappers/ScbRadioGroup.razor +94 -0
- package/blazor/wrappers/ScbSearch.razor +83 -0
- package/blazor/wrappers/ScbSegmentedButton.razor +85 -0
- package/blazor/wrappers/ScbSelect.razor +79 -0
- package/blazor/wrappers/ScbSlider.razor +96 -0
- package/blazor/wrappers/ScbSnackbar.razor +93 -0
- package/blazor/wrappers/ScbSwitch.razor +92 -0
- package/blazor/wrappers/ScbTable.razor +67 -0
- package/blazor/wrappers/ScbTableAdvanced.razor +78 -0
- package/blazor/wrappers/ScbTabs.razor +55 -0
- package/blazor/wrappers/ScbTextfield.razor +104 -0
- package/blazor/wrappers/ScbTooltip.razor +88 -0
- package/blazor/wrappers/ScbViz.razor +142 -0
- package/demo-data-preview.svg +12 -0
- package/dummy.png +0 -0
- package/fonts/inter/files/inter-latin-wght-italic.woff2 +0 -0
- package/fonts/inter/files/inter-latin-wght-normal.woff2 +0 -0
- package/fonts/material-symbols-outlined/files/material-symbols-outlined-latin-wght-normal.woff2 +0 -0
- package/index.js +91 -1
- package/mvc/components/all.js +90 -1
- package/mvc/components/scb-accordion/scb-accordion-item.js +211 -0
- package/mvc/components/scb-accordion/scb-accordion.js +44 -0
- package/mvc/components/scb-app-bar/scb-app-bar.js +166 -0
- package/mvc/components/scb-avatar/scb-avatar.js +111 -0
- package/mvc/components/scb-badge/scb-badge.js +80 -0
- package/mvc/components/scb-breadcrumb/scb-breadcrumb-item.js +14 -0
- package/mvc/components/scb-breadcrumb/scb-breadcrumb.js +96 -0
- package/mvc/components/scb-button/scb-button.js +268 -0
- package/mvc/components/scb-calendar/scb-calendar-event.js +6 -0
- package/mvc/components/scb-calendar/scb-calendar.js +168 -0
- package/mvc/components/scb-calendar-card/scb-calendar-card.js +346 -0
- package/mvc/components/scb-card/scb-card.js +761 -0
- package/mvc/components/scb-checkbox/scb-checkbox-group.js +33 -0
- package/mvc/components/scb-checkbox/scb-checkbox.js +140 -0
- package/mvc/components/scb-chevron/scb-chevron.js +121 -0
- package/mvc/components/scb-chip/scb-chip.js +66 -0
- package/mvc/components/scb-collapse/scb-collapse.js +89 -0
- package/mvc/components/scb-cookies-consent/scb-cookies-consent.js +78 -0
- package/mvc/components/scb-datepicker/scb-datepicker.js +296 -0
- package/mvc/components/scb-dialog/scb-dialog.js +265 -0
- package/mvc/components/scb-divider/scb-divider.js +69 -0
- package/mvc/components/scb-drawer/scb-drawer.js +128 -0
- package/mvc/components/scb-drop-zone/scb-drop-zone.js +555 -0
- package/mvc/components/scb-dropdown/scb-dropdown.js +306 -0
- package/mvc/components/scb-fab/scb-fab.js +108 -0
- package/mvc/components/scb-fact-card/scb-fact-card-content.js +46 -0
- package/mvc/components/scb-fact-card/scb-fact-card.js +226 -0
- package/mvc/components/scb-footer/scb-footer-section.js +3 -0
- package/mvc/components/scb-footer/scb-footer.js +210 -0
- package/mvc/components/scb-gallery-grid/scb-gallery-grid.js +131 -0
- package/mvc/components/scb-grid/scb-grid-item.js +11 -0
- package/mvc/components/scb-grid/scb-grid.js +98 -0
- package/mvc/components/scb-grid/scb-stack.js +33 -0
- package/mvc/components/scb-header/scb-header-menu-group.js +1 -0
- package/mvc/components/scb-header/scb-header-menu-item.js +5 -0
- package/mvc/components/scb-header/scb-header-tab.js +5 -0
- package/mvc/components/scb-header/scb-header-utility.js +1 -0
- package/mvc/components/scb-header/scb-header.js +681 -0
- package/mvc/components/scb-horizontal-scroller/scb-horizontal-scroller.js +196 -0
- package/mvc/components/scb-icon-button/scb-icon-button.js +171 -0
- package/mvc/components/scb-keyfigure-card/scb-keyfigure-card.js +212 -0
- package/mvc/components/scb-link/scb-link.js +61 -0
- package/mvc/components/scb-list/scb-list-item.js +153 -0
- package/mvc/components/scb-list/scb-list.js +26 -0
- package/mvc/components/scb-menu/scb-menu-item.js +205 -0
- package/mvc/components/scb-menu/scb-menu-section.js +42 -0
- package/mvc/components/scb-menu/scb-menu.js +81 -0
- package/mvc/components/scb-menu/scb-sub-menu.js +10 -0
- package/mvc/components/scb-nav/scb-nav-item.js +28 -0
- package/mvc/components/scb-nav/scb-nav.js +104 -0
- package/mvc/components/scb-notification-card/scb-notification-card.js +358 -0
- package/mvc/components/scb-options-menu/scb-options-menu-item.js +66 -0
- package/mvc/components/scb-options-menu/scb-options-menu.js +88 -0
- package/mvc/components/scb-options-menu/scb-options-sub-menu.js +34 -0
- package/mvc/components/scb-overlay/scb-overlay.js +49 -0
- package/mvc/components/scb-pagination/scb-pagination.js +312 -0
- package/mvc/components/scb-progress-indicator/scb-progress-indicator.js +87 -0
- package/mvc/components/scb-progress-stepper/scb-progress-step.js +147 -0
- package/mvc/components/scb-progress-stepper/scb-progress-stepper.js +62 -0
- package/mvc/components/scb-radio-button/scb-radio-button.js +132 -0
- package/mvc/components/scb-radio-button/scb-radio-group.js +43 -0
- package/mvc/components/scb-scrollspy/scb-scrollspy.js +79 -0
- package/mvc/components/scb-search/scb-search.js +292 -0
- package/mvc/components/scb-segmented-button/scb-segmented-button.js +32 -0
- package/mvc/components/scb-segmented-button/scb-segmented-item.js +74 -0
- package/mvc/components/scb-select/scb-select-option.js +61 -0
- package/mvc/components/scb-select/scb-select.js +284 -0
- package/mvc/components/scb-skeleton/scb-skeleton.js +38 -0
- package/mvc/components/scb-slider/scb-slider.js +27 -0
- package/mvc/components/scb-snackbar/scb-snackbar.js +128 -0
- package/mvc/components/scb-status-pill/scb-status-pill.js +45 -0
- package/mvc/components/scb-stepper/scb-step.js +239 -0
- package/mvc/components/scb-stepper/scb-stepper.js +139 -0
- package/mvc/components/scb-switch/scb-switch.js +59 -0
- package/mvc/components/scb-table/scb-table.js +51 -0
- package/mvc/components/scb-table-advanced/scb-table-advanced.js +76 -0
- package/mvc/components/scb-tabs/scb-primary-tab.js +6 -0
- package/mvc/components/scb-tabs/scb-secondary-tab.js +6 -0
- package/mvc/components/scb-tabs/scb-tabs.js +28 -0
- package/mvc/components/scb-textfield/scb-textfield.js +595 -0
- package/mvc/components/scb-toc/scb-toc-item.js +303 -0
- package/mvc/components/scb-toc/scb-toc.js +19 -0
- package/mvc/components/scb-tooltip/scb-tooltip.js +196 -0
- package/mvc/components/scb-vignette/scb-vignette.js +37 -0
- package/mvc/components/scb-viz/scb-viz-actions-runtime.js +2 -0
- package/mvc/components/scb-viz/scb-viz-print-runtime.js +98 -0
- package/mvc/components/scb-viz/scb-viz-series-differentiation-registry.js +1 -0
- package/mvc/components/scb-viz/scb-viz-series-differentiation-runtime.js +1 -0
- package/mvc/components/scb-viz/scb-viz-table-runtime.js +1 -0
- package/mvc/components/scb-viz/scb-viz.js +1140 -0
- package/mvc/fonts/inter/files/inter-latin-wght-italic.woff2 +0 -0
- package/mvc/fonts/inter/files/inter-latin-wght-normal.woff2 +0 -0
- package/mvc/fonts/material-symbols-outlined/files/material-symbols-outlined-latin-wght-normal.woff2 +0 -0
- package/mvc/scb-blazor-bridge.js +6827 -2805
- package/mvc/scb-logo.svg +20 -20
- package/mvc/scb-typography.css +1 -1
- package/mvc/scb-wc.css +3 -2
- package/mvc/scb.svg +13 -13
- package/mvc/vendor/assertClassBrand.js +1 -0
- package/mvc/vendor/classPrivateFieldGet2.js +1 -0
- package/mvc/vendor/decorate.js +1 -0
- package/mvc/vendor/preload-helper.js +1 -0
- package/mvc/vendor/vendor-lit.js +1 -0
- package/mvc/vendor/vendor-material.js +364 -0
- package/mvc/vendor/vendor.js +4 -0
- package/package.json +420 -77
- package/scb-accordion/scb-accordion-item.js +340 -0
- package/scb-accordion/scb-accordion.js +151 -0
- package/scb-app-bar/scb-app-bar.js +317 -0
- package/scb-avatar/scb-avatar.js +197 -0
- package/scb-badge/scb-badge.js +165 -0
- package/scb-breadcrumb/scb-breadcrumb-item.js +62 -0
- package/scb-breadcrumb/scb-breadcrumb.js +255 -0
- package/scb-button/scb-button.js +398 -0
- package/scb-calendar/scb-calendar-event.js +48 -0
- package/scb-calendar/scb-calendar.js +700 -0
- package/scb-calendar-card/scb-calendar-card.js +505 -0
- package/scb-card/scb-card.js +1231 -0
- package/scb-checkbox/scb-checkbox-group.js +104 -0
- package/scb-checkbox/scb-checkbox.js +316 -0
- package/scb-chevron/scb-chevron.js +144 -0
- package/scb-chip/scb-chip.js +234 -0
- package/scb-collapse/scb-collapse.js +231 -0
- package/scb-cookies-consent/scb-cookies-consent.js +164 -0
- package/scb-datepicker/scb-datepicker.js +470 -0
- package/scb-dialog/scb-dialog.js +574 -0
- package/scb-divider/scb-divider.js +119 -0
- package/scb-drawer/scb-drawer.js +297 -0
- package/scb-drop-zone/scb-drop-zone.js +965 -0
- package/scb-dropdown/scb-dropdown.js +598 -0
- package/scb-fab/scb-fab.js +190 -0
- package/scb-fact-card/scb-fact-card-content.js +82 -0
- package/scb-fact-card/scb-fact-card.js +376 -0
- package/scb-footer/scb-footer-section.js +23 -0
- package/scb-footer/scb-footer.js +343 -0
- package/scb-gallery-grid/scb-gallery-grid.js +242 -0
- package/scb-grid/scb-grid-item.js +81 -0
- package/scb-grid/scb-grid.js +200 -0
- package/scb-grid/scb-stack.js +120 -0
- package/scb-header/scb-header-menu-group.js +21 -0
- package/scb-header/scb-header-menu-item.js +22 -0
- package/scb-header/scb-header-tab.js +25 -0
- package/scb-header/scb-header-utility.js +27 -0
- package/scb-header/scb-header.js +1358 -0
- package/scb-horizontal-scroller/scb-horizontal-scroller.js +353 -0
- package/scb-icon-button/scb-icon-button.js +335 -0
- package/scb-keyfigure-card/scb-keyfigure-card.js +340 -0
- package/scb-link/scb-link.js +136 -0
- package/scb-list/scb-list-item.js +297 -0
- package/scb-list/scb-list.js +119 -0
- package/scb-menu/scb-menu-item.js +330 -0
- package/scb-menu/scb-menu-section.js +60 -0
- package/scb-menu/scb-menu.js +154 -0
- package/scb-menu/scb-sub-menu.js +36 -0
- package/scb-nav/scb-nav-item.js +96 -0
- package/scb-nav/scb-nav.js +263 -0
- package/scb-notification-card/scb-notification-card.js +479 -0
- package/scb-options-menu/scb-options-menu-item.js +218 -0
- package/scb-options-menu/scb-options-menu.js +237 -0
- package/scb-options-menu/scb-options-sub-menu.js +69 -0
- package/scb-overlay/scb-overlay.js +144 -0
- package/scb-pagination/scb-pagination.js +438 -0
- package/scb-progress-indicator/scb-progress-indicator.js +199 -0
- package/scb-progress-stepper/scb-progress-step.js +213 -0
- package/scb-progress-stepper/scb-progress-stepper.js +132 -0
- package/scb-radio-button/scb-radio-button.js +249 -0
- package/scb-radio-button/scb-radio-group.js +216 -0
- package/scb-scrollspy/scb-scrollspy.js +670 -0
- package/scb-search/scb-search.js +643 -0
- package/scb-segmented-button/scb-segmented-button.js +215 -0
- package/scb-segmented-button/scb-segmented-item.js +133 -0
- package/scb-select/scb-select-option.js +88 -0
- package/scb-select/scb-select.js +517 -0
- package/scb-skeleton/scb-skeleton.js +92 -0
- package/scb-slider/scb-slider.js +98 -0
- package/scb-snackbar/scb-snackbar.js +223 -0
- package/scb-status-pill/scb-status-pill.js +100 -0
- package/scb-stepper/scb-step.js +311 -0
- package/scb-stepper/scb-stepper.js +325 -0
- package/scb-switch/scb-switch.js +182 -0
- package/scb-table/scb-table.js +202 -0
- package/scb-table-advanced/scb-table-advanced.js +327 -0
- package/scb-tabs/scb-primary-tab.js +68 -0
- package/scb-tabs/scb-secondary-tab.js +68 -0
- package/scb-tabs/scb-tabs.js +100 -0
- package/scb-test-components/index.d.ts +90 -0
- package/scb-test-components/scb-accordion/scb-accordion-item.d.ts +39 -0
- package/scb-test-components/scb-accordion/scb-accordion.d.ts +27 -0
- package/scb-test-components/scb-app-bar/scb-app-bar.d.ts +25 -0
- package/scb-test-components/scb-avatar/scb-avatar.d.ts +37 -0
- package/scb-test-components/scb-badge/scb-badge.d.ts +28 -0
- package/scb-test-components/scb-breadcrumb/scb-breadcrumb-item.d.ts +15 -0
- package/scb-test-components/scb-breadcrumb/scb-breadcrumb.d.ts +27 -0
- package/scb-test-components/scb-button/scb-button.d.ts +40 -0
- package/scb-test-components/scb-calendar/scb-calendar-event.d.ts +15 -0
- package/scb-test-components/scb-calendar/scb-calendar.d.ts +77 -0
- package/scb-test-components/scb-calendar-card/scb-calendar-card.d.ts +45 -0
- package/scb-test-components/scb-card/scb-card.d.ts +101 -0
- package/scb-test-components/scb-checkbox/scb-checkbox-group.d.ts +23 -0
- package/scb-test-components/scb-checkbox/scb-checkbox.d.ts +52 -0
- package/scb-test-components/scb-chevron/scb-chevron.d.ts +13 -0
- package/scb-test-components/scb-chip/scb-chip.d.ts +61 -0
- package/scb-test-components/scb-collapse/scb-collapse.d.ts +29 -0
- package/scb-test-components/scb-cookies-consent/scb-cookies-consent.d.ts +23 -0
- package/scb-test-components/scb-datepicker/scb-datepicker.d.ts +39 -0
- package/scb-test-components/scb-dialog/scb-dialog.d.ts +72 -0
- package/scb-test-components/scb-divider/scb-divider.d.ts +34 -0
- package/scb-test-components/scb-drawer/scb-drawer.d.ts +72 -0
- package/scb-test-components/scb-drop-zone/scb-drop-zone.d.ts +143 -0
- package/scb-test-components/scb-dropdown/scb-dropdown.d.ts +70 -0
- package/scb-test-components/scb-fab/scb-fab.d.ts +42 -0
- package/scb-test-components/scb-fact-card/scb-fact-card-content.d.ts +15 -0
- package/scb-test-components/scb-fact-card/scb-fact-card.d.ts +49 -0
- package/scb-test-components/scb-footer/scb-footer-section.d.ts +20 -0
- package/scb-test-components/scb-footer/scb-footer.d.ts +31 -0
- package/scb-test-components/scb-gallery-grid/scb-gallery-grid.d.ts +20 -0
- package/scb-test-components/scb-grid/scb-grid-item.d.ts +32 -0
- package/scb-test-components/scb-grid/scb-grid.d.ts +36 -0
- package/scb-test-components/scb-grid/scb-stack.d.ts +32 -0
- package/scb-test-components/scb-header/scb-header-menu-group.d.ts +12 -0
- package/scb-test-components/scb-header/scb-header-menu-item.d.ts +13 -0
- package/scb-test-components/scb-header/scb-header-tab.d.ts +13 -0
- package/scb-test-components/scb-header/scb-header-utility.d.ts +14 -0
- package/scb-test-components/scb-header/scb-header.d.ts +132 -0
- package/scb-test-components/scb-horizontal-scroller/scb-horizontal-scroller.d.ts +47 -0
- package/scb-test-components/scb-icon-button/scb-icon-button.d.ts +76 -0
- package/scb-test-components/scb-keyfigure-card/scb-keyfigure-card.d.ts +46 -0
- package/scb-test-components/scb-link/scb-link.d.ts +25 -0
- package/scb-test-components/scb-list/scb-list-item.d.ts +38 -0
- package/scb-test-components/scb-list/scb-list.d.ts +26 -0
- package/scb-test-components/scb-menu/scb-menu-item.d.ts +52 -0
- package/scb-test-components/scb-menu/scb-menu-section.d.ts +11 -0
- package/scb-test-components/scb-menu/scb-menu.d.ts +25 -0
- package/scb-test-components/scb-menu/scb-sub-menu.d.ts +14 -0
- package/scb-test-components/scb-nav/scb-nav-item.d.ts +20 -0
- package/scb-test-components/scb-nav/scb-nav.d.ts +50 -0
- package/scb-test-components/scb-notification-card/scb-notification-card.d.ts +46 -0
- package/scb-test-components/scb-options-menu/scb-options-menu-item.d.ts +29 -0
- package/scb-test-components/scb-options-menu/scb-options-menu.d.ts +35 -0
- package/scb-test-components/scb-options-menu/scb-options-sub-menu.d.ts +11 -0
- package/scb-test-components/scb-overlay/scb-overlay.d.ts +24 -0
- package/scb-test-components/scb-pagination/scb-pagination.d.ts +36 -0
- package/scb-test-components/scb-progress-indicator/scb-progress-indicator.d.ts +28 -0
- package/scb-test-components/scb-progress-stepper/scb-progress-step.d.ts +21 -0
- package/scb-test-components/scb-progress-stepper/scb-progress-stepper.d.ts +22 -0
- package/scb-test-components/scb-radio-button/scb-radio-button.d.ts +26 -0
- package/scb-test-components/scb-radio-button/scb-radio-group.d.ts +49 -0
- package/scb-test-components/scb-scrollspy/scb-scrollspy.d.ts +217 -0
- package/scb-test-components/scb-search/scb-search.d.ts +96 -0
- package/scb-test-components/scb-segmented-button/scb-segmented-button.d.ts +80 -0
- package/scb-test-components/scb-segmented-button/scb-segmented-item.d.ts +21 -0
- package/scb-test-components/scb-select/scb-select-option.d.ts +16 -0
- package/scb-test-components/scb-select/scb-select.d.ts +62 -0
- package/scb-test-components/scb-skeleton/scb-skeleton.d.ts +25 -0
- package/scb-test-components/scb-slider/scb-slider.d.ts +28 -0
- package/scb-test-components/scb-snackbar/scb-snackbar.d.ts +24 -0
- package/scb-test-components/scb-status-pill/scb-status-pill.d.ts +22 -0
- package/scb-test-components/scb-stepper/scb-step.d.ts +22 -0
- package/scb-test-components/scb-stepper/scb-stepper.d.ts +47 -0
- package/scb-test-components/scb-switch/scb-switch.d.ts +52 -0
- package/scb-test-components/scb-table/scb-table.d.ts +24 -0
- package/scb-test-components/scb-table-advanced/scb-table-advanced.d.ts +39 -0
- package/scb-test-components/scb-tabs/scb-primary-tab.d.ts +15 -0
- package/scb-test-components/scb-tabs/scb-secondary-tab.d.ts +15 -0
- package/scb-test-components/scb-tabs/scb-tabs.d.ts +21 -0
- package/scb-test-components/scb-textfield/scb-textfield.d.ts +75 -0
- package/scb-test-components/scb-toc/scb-toc-item.d.ts +38 -0
- package/scb-test-components/scb-toc/scb-toc.d.ts +27 -0
- package/scb-test-components/scb-tooltip/scb-tooltip.d.ts +51 -0
- package/scb-test-components/scb-vignette/scb-vignette.d.ts +20 -0
- package/scb-test-components/scb-viz/scb-viz-actions-runtime.d.ts +26 -0
- package/scb-test-components/scb-viz/scb-viz-print-runtime.d.ts +27 -0
- package/scb-test-components/scb-viz/scb-viz-series-differentiation-registry.d.ts +21 -0
- package/scb-test-components/scb-viz/scb-viz-series-differentiation-runtime.d.ts +42 -0
- package/scb-test-components/scb-viz/scb-viz-table-runtime.d.ts +28 -0
- package/scb-test-components/scb-viz/scb-viz.d.ts +207 -0
- package/scb-textfield/scb-textfield.js +827 -0
- package/scb-toc/scb-toc-item.js +477 -0
- package/scb-toc/scb-toc.js +101 -0
- package/scb-tooltip/scb-tooltip.js +402 -0
- package/scb-typography.css +1 -1
- package/scb-vignette/scb-vignette.js +88 -0
- package/scb-viz/scb-viz-actions-runtime.js +143 -0
- package/scb-viz/scb-viz-print-runtime.js +121 -0
- package/scb-viz/scb-viz-series-differentiation-registry.js +117 -0
- package/scb-viz/scb-viz-series-differentiation-runtime.js +126 -0
- package/scb-viz/scb-viz-table-runtime.js +86 -0
- package/scb-viz/scb-viz.js +2195 -0
- package/scb-wc-selfhost.css +29 -0
- package/scb-wc.bundle.js +12893 -1099
- package/scb-wc.css +3 -2
- package/scb-wc.d.ts +180 -0
- package/index.d.ts +0 -0
- package/mvc/components/index.js +0 -1
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import"../../vendor/vendor-material.js";import{_ as u,b as v,g as y,h as n,s as a,y as m}from"../../vendor/vendor.js";import"../../vendor/vendor-lit.js";import{t as s}from"../../vendor/decorate.js";import{n as k,t as b}from"../../vendor/assertClassBrand.js";import{n as _,r as S,t as x}from"../../vendor/classPrivateFieldGet2.js";(function(){try{var r=typeof globalThis<"u"?globalThis:window;if(!r.__scb_ce_guard_installed__){r.__scb_ce_guard_installed__=!0;var t=customElements.define.bind(customElements);customElements.define=function(i,o,c){try{customElements.get(i)||t(i,o,c)}catch(h){var g=String(h||"");if(g.indexOf("already been used")===-1&&g.indexOf("NotSupportedError")===-1)throw h}}}}catch{}})();var l,p,d,e=(l=new WeakSet,p=new WeakMap,d=class extends u{constructor(...t){super(...t),k(this,l),S(this,p,void 0),this.href="",this.disabled=!1,this.ariaLabel="",this.spacing=void 0,this.spacingTop=void 0,this.spacingBottom=void 0,this.spacingLeft=void 0,this.spacingRight=void 0,_(p,this,i=>{this.disabled&&(i.preventDefault(),i.stopPropagation())})}firstUpdated(){b(l,this,f).call(this)}updated(t){(t.has("spacing")||t.has("spacingTop")||t.has("spacingBottom")||t.has("spacingLeft")||t.has("spacingRight"))&&b(l,this,f).call(this)}mapSpacingToken(t){if(!t)return;const i=String(t).trim();if(i)return/^\d+$/.test(i)?`var(--spacing-${Math.max(0,Math.min(14,parseInt(i,10)))})`:i}render(){const t=this.target==="_blank"&&!this.rel?"noopener noreferrer":this.rel;return m`
|
|
2
|
+
<a
|
|
3
|
+
part="anchor"
|
|
4
|
+
href=${a(this.disabled?void 0:this.href||void 0)}
|
|
5
|
+
target=${a(this.target)}
|
|
6
|
+
rel=${a(t)}
|
|
7
|
+
download=${a(this.download)}
|
|
8
|
+
aria-disabled=${this.disabled?"true":"false"}
|
|
9
|
+
aria-label=${a(this.ariaLabel||void 0)}
|
|
10
|
+
@click=${x(p,this)}
|
|
11
|
+
><slot></slot></a>
|
|
12
|
+
|
|
13
|
+
<md-focus-ring></md-focus-ring>
|
|
14
|
+
`}},d.styles=v`
|
|
15
|
+
:host {
|
|
16
|
+
display: inline-block;
|
|
17
|
+
position: relative;
|
|
18
|
+
padding: var(--scb-link-focus-ring-gap, 4px);
|
|
19
|
+
font-family: var(--brand-font, inherit);
|
|
20
|
+
color: var(--md-sys-color-on-surface);
|
|
21
|
+
width: fit-content;
|
|
22
|
+
margin-block-start: var(--scb-link-spacing-block-start, 0);
|
|
23
|
+
margin-block-end: var(--scb-link-spacing-block-end, 0);
|
|
24
|
+
margin-inline-start: var(--scb-link-spacing-inline-start, 0);
|
|
25
|
+
margin-inline-end: var(--scb-link-spacing-inline-end, 0);
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
md-focus-ring {
|
|
29
|
+
position: absolute;
|
|
30
|
+
inset: 0;
|
|
31
|
+
pointer-events: none;
|
|
32
|
+
display: none;
|
|
33
|
+
border-radius: var(--scb-link-focus-ring-radius, var(--md-sys-shape-corner-small, 1px));
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
a {
|
|
37
|
+
text-decoration: var(--scb-link-decoration, underline);
|
|
38
|
+
text-underline-offset: var(--scb-link-underline-offset, .22em);
|
|
39
|
+
text-decoration-thickness: var(--scb-link-underline-thickness, 1px);
|
|
40
|
+
|
|
41
|
+
color: var(--scb-link-color, var(--md-sys-color-primary));
|
|
42
|
+
border-radius: var(--radius-2, 2px);
|
|
43
|
+
outline: none;
|
|
44
|
+
cursor: pointer;
|
|
45
|
+
transition: text-decoration-thickness .12s ease;
|
|
46
|
+
|
|
47
|
+
white-space: var(--scb-link-white-space, normal);
|
|
48
|
+
}
|
|
49
|
+
a:hover { text-decoration-thickness: var(--scb-link-hover-thickness, 2px); }
|
|
50
|
+
a:focus { outline: none; }
|
|
51
|
+
|
|
52
|
+
:host([disabled]) a {
|
|
53
|
+
pointer-events: none;
|
|
54
|
+
opacity: .64;
|
|
55
|
+
text-decoration: none;
|
|
56
|
+
cursor: default;
|
|
57
|
+
}
|
|
58
|
+
a:focus-visible + md-focus-ring {
|
|
59
|
+
display: block;
|
|
60
|
+
}
|
|
61
|
+
`,d);function f(){const r=this.mapSpacingToken(this.spacing),t=this.mapSpacingToken(this.spacingTop)??r,i=this.mapSpacingToken(this.spacingBottom)??r,o=this.mapSpacingToken(this.spacingLeft),c=this.mapSpacingToken(this.spacingRight);t?this.style.setProperty("--scb-link-spacing-block-start",t):this.style.removeProperty("--scb-link-spacing-block-start"),i?this.style.setProperty("--scb-link-spacing-block-end",i):this.style.removeProperty("--scb-link-spacing-block-end"),o?this.style.setProperty("--scb-link-spacing-inline-start",o):this.style.removeProperty("--scb-link-spacing-inline-start"),c?this.style.setProperty("--scb-link-spacing-inline-end",c):this.style.removeProperty("--scb-link-spacing-inline-end")}s([n({type:String,reflect:!0})],e.prototype,"href",void 0);s([n({type:String,reflect:!0})],e.prototype,"target",void 0);s([n({type:String,reflect:!0})],e.prototype,"rel",void 0);s([n({type:String,reflect:!0})],e.prototype,"download",void 0);s([n({type:Boolean,reflect:!0})],e.prototype,"disabled",void 0);s([n({type:String,attribute:"aria-label"})],e.prototype,"ariaLabel",void 0);s([n({type:String,reflect:!0})],e.prototype,"spacing",void 0);s([n({type:String,attribute:"spacing-top",reflect:!0})],e.prototype,"spacingTop",void 0);s([n({type:String,attribute:"spacing-bottom",reflect:!0})],e.prototype,"spacingBottom",void 0);s([n({type:String,attribute:"spacing-left",reflect:!0})],e.prototype,"spacingLeft",void 0);s([n({type:String,attribute:"spacing-right",reflect:!0})],e.prototype,"spacingRight",void 0);e=s([y("scb-link")],e);
|
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["../../vendor/vendor-material.js","../../vendor/vendor.js","../../vendor/vendor-lit.js","../scb-checkbox/scb-checkbox.js","../../vendor/assertClassBrand.js","../../vendor/classPrivateFieldGet2.js","../../vendor/decorate.js","../scb-checkbox/scb-checkbox-group.js","../scb-switch/scb-switch.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import"../../vendor/vendor-material.js";import{_ as L,b as E,g as T,h as e,v as n,y as o}from"../../vendor/vendor.js";import"../../vendor/vendor-lit.js";import{t as i}from"../../vendor/decorate.js";import{n as z,t as w}from"../../vendor/assertClassBrand.js";import{t as x}from"../../vendor/preload-helper.js";import{n as h,r as v,t as u}from"../../vendor/classPrivateFieldGet2.js";(function(){try{var l=typeof globalThis<"u"?globalThis:window;if(!l.__scb_ce_guard_installed__){l.__scb_ce_guard_installed__=!0;var r=customElements.define.bind(customElements);customElements.define=function(a,s,c){try{customElements.get(a)||r(a,s,c)}catch(d){var m=String(d||"");if(m.indexOf("already been used")===-1&&m.indexOf("NotSupportedError")===-1)throw d}}}}catch{}})();var b,y,f,g,S,k,t=(b=new WeakMap,y=new WeakMap,f=new WeakMap,g=new WeakSet,S=new WeakMap,k=new WeakMap,class extends L{constructor(...r){super(...r),z(this,g),v(this,b,void 0),v(this,y,void 0),v(this,f,void 0),v(this,S,void 0),v(this,k,void 0),this.type="text",this.href="",this.itemHref="",this.target="",this.disabled=!1,this.label="",this.supportingText="",this.overline="",this.leading=!1,this.leadingVariant="",this.leadingIcon="",this.avatarLabel="",this.avatarAlt="",this.avatarVariant="icon",this.avatarSrc="",this.imgHrefImage="",this.trailing=!1,this.trailingVariant="",this.trailingIcon="",this.trailingSwitchLabel="",this.trailingSwitchWidth="",this.trailingSwitchSelected=!1,this.density=0,this.noDivider=!1,h(b,this,!1),h(y,this,!1),h(f,this,!1),this.onRowClick=()=>{if(this.type==="link"&&(this.href||this.itemHref))return;const a=this.shadowRoot?.querySelector("scb-checkbox"),s=this.shadowRoot?.querySelector("scb-switch");if(a&&(a.checked=!a.checked),s){const c=!this.trailingSwitchSelected;s.selected=c,w(g,this,V).call(this,c,!0)}},h(S,this,a=>{const s=a.detail?.selected,c=typeof s=="boolean"?s:a.currentTarget?.selected??!1;w(g,this,V).call(this,c,!0)}),h(k,this,a=>{if(!a.defaultPrevented&&(a.key==="Enter"||a.key===" ")){if(this.type==="link"){const s=this.shadowRoot?.querySelector("a[href]");if(s){a.preventDefault(),s.click();return}}a.preventDefault(),this.onRowClick()}})}static get styles(){return E`
|
|
3
|
+
:host {
|
|
4
|
+
border-bottom: var(--stroke-border, 1px) solid var(--md-sys-color-outline-variant);
|
|
5
|
+
margin-bottom: calc(var(--stroke-border, 1px) * -1);
|
|
6
|
+
outline: none;
|
|
7
|
+
position: relative;
|
|
8
|
+
color: var(--md-sys-color-on-surface);
|
|
9
|
+
font-family: var(--brand-font);
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
:host([no-divider]) { --stroke-border: 0px; }
|
|
13
|
+
|
|
14
|
+
md-focus-ring {
|
|
15
|
+
position: absolute;
|
|
16
|
+
inset: 0;
|
|
17
|
+
pointer-events: none;
|
|
18
|
+
display: none;
|
|
19
|
+
border-radius: var(--scb-list-item-focus-ring-radius, var(--md-sys-shape-corner-small, 8px));
|
|
20
|
+
}
|
|
21
|
+
:host(:focus-visible) md-focus-ring { display: block; }
|
|
22
|
+
|
|
23
|
+
.row {
|
|
24
|
+
display: flex;
|
|
25
|
+
align-items: center;
|
|
26
|
+
gap: var(--spacing-5, 16px);
|
|
27
|
+
padding-block: var(--spacing-7, 24px);
|
|
28
|
+
padding-inline: var(--spacing-5, 16px);
|
|
29
|
+
border-radius: var(--radius-none, 0px);
|
|
30
|
+
-webkit-tap-highlight-color: transparent;
|
|
31
|
+
position: relative;
|
|
32
|
+
overflow: hidden;
|
|
33
|
+
cursor: default;
|
|
34
|
+
}
|
|
35
|
+
:host([type="link"]) .row { cursor: pointer; }
|
|
36
|
+
|
|
37
|
+
:host([density="-2"]) .row,
|
|
38
|
+
:host-context([data-density="-2"]) .row {
|
|
39
|
+
padding-block: var(--spacing-5, 16px);
|
|
40
|
+
}
|
|
41
|
+
:host([density="-4"]) .row,
|
|
42
|
+
:host-context([data-density="-4"]) .row {
|
|
43
|
+
padding-block: var(--spacing-4, 12px);
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
md-ripple {
|
|
47
|
+
border-radius: inherit;
|
|
48
|
+
inset: 0;
|
|
49
|
+
position: absolute;
|
|
50
|
+
pointer-events: none;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
.leading { align-self: center; display: grid; place-items: center; }
|
|
54
|
+
.img {
|
|
55
|
+
width: calc(var(--icon-size-extra-large, 36px) + var(--spacing-5, 16px));
|
|
56
|
+
height: calc(var(--icon-size-extra-large, 36px) + var(--spacing-5, 16px));
|
|
57
|
+
object-fit: contain;
|
|
58
|
+
border-radius: var(--radius-s, 8px);
|
|
59
|
+
filter: var(--scb-list-leading-image-filter, none);
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
.texts { display: grid; gap: var(--spacing-1, 2px); min-inline-size: 0; }
|
|
63
|
+
|
|
64
|
+
.overline {
|
|
65
|
+
font-family: var(--brand-font);
|
|
66
|
+
font-size: var(--md-sys-typescale-label-medium-size);
|
|
67
|
+
line-height: var(--md-sys-typescale-label-medium-line-height);
|
|
68
|
+
font-weight: var(--weight-regular);
|
|
69
|
+
letter-spacing: var(--md-sys-typescale-label-medium-tracking);
|
|
70
|
+
color: var(--md-sys-color-on-surface-variant);
|
|
71
|
+
}
|
|
72
|
+
.label {
|
|
73
|
+
font-family: var(--brand-font);
|
|
74
|
+
font-size: var(--md-sys-typescale-title-large-size);
|
|
75
|
+
line-height: var(--md-sys-typescale-title-large-line-height);
|
|
76
|
+
font-weight: var(--weight-semibold);
|
|
77
|
+
letter-spacing: var(--md-sys-typescale-title-large-tracking);
|
|
78
|
+
color: var(--md-sys-color-on-surface);
|
|
79
|
+
}
|
|
80
|
+
.supporting-text {
|
|
81
|
+
font-family: var(--brand-font);
|
|
82
|
+
font-size: var(--md-sys-typescale-body-medium-size);
|
|
83
|
+
line-height: var(--md-sys-typescale-body-medium-line-height);
|
|
84
|
+
font-weight: var(--weight-regular);
|
|
85
|
+
letter-spacing: var(--md-sys-typescale-body-medium-tracking);
|
|
86
|
+
color: var(--md-sys-color-on-surface-variant);
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
|
|
90
|
+
.trailing { margin-left: auto; align-self: center; display: flex; }
|
|
91
|
+
.trailing.trailing-switch {
|
|
92
|
+
justify-content: flex-end;
|
|
93
|
+
}
|
|
94
|
+
.trailing scb-checkbox { margin-inline-end: var(--scb-list-trailing-checkbox-nudge); }
|
|
95
|
+
|
|
96
|
+
:host([trailing-variant="checkbox"]) .row,
|
|
97
|
+
:host([trailing-variant="switch"]) .row {
|
|
98
|
+
cursor: pointer;
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
:host([disabled]) .row {
|
|
102
|
+
cursor: default;
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
.link {
|
|
106
|
+
text-decoration: none;
|
|
107
|
+
color: inherit;
|
|
108
|
+
display: flex;
|
|
109
|
+
width: 100%;
|
|
110
|
+
gap: 12px;
|
|
111
|
+
}
|
|
112
|
+
`}async firstUpdated(){await w(g,this,$).call(this),this.addEventListener("keydown",u(k,this))}updated(r){super.updated(r),(r.has("leading")||r.has("leadingVariant")||r.has("trailing")||r.has("trailingVariant")||r.has("type")||r.has("target"))&&w(g,this,$).call(this)}render(){const r=this.leading?(()=>{switch(this.leadingVariant){case"icon":return this.leadingIcon?o`<div class="leading"><md-icon>${this.leadingIcon}</md-icon></div>`:n;case"avatar":return o`
|
|
113
|
+
<div class="leading">
|
|
114
|
+
<scb-avatar
|
|
115
|
+
label=${this.avatarLabel}
|
|
116
|
+
alt=${this.avatarAlt}
|
|
117
|
+
src=${this.avatarVariant==="image"?this.avatarSrc:""}
|
|
118
|
+
size="medium"
|
|
119
|
+
shape="circular"
|
|
120
|
+
variant=${this.avatarVariant}
|
|
121
|
+
></scb-avatar>
|
|
122
|
+
</div>
|
|
123
|
+
`;case"image":return this.imgHrefImage?o`<div class="leading"><img class="img" part="leading-image" src="${this.imgHrefImage}" alt="" /></div>`:n;default:return n}})():n,a=this.href||this.itemHref||"",s=this.target==="_blank"?"open_in_new":"chevron_right",c=this.label?`Välj ${this.label}`:"Välj",m=this.label?`Växla ${this.label}`:"Växla";let d=n;if(this.trailing)if(this.trailingVariant==="icon"){const p=this.trailingIcon||(this.type==="link"?s:"");d=p?o`<div class="trailing"><md-icon>${p}</md-icon></div>`:n}else this.trailingVariant==="checkbox"?d=o`
|
|
124
|
+
<div class="trailing">
|
|
125
|
+
<scb-checkbox
|
|
126
|
+
aria-label=${c}
|
|
127
|
+
@click=${p=>p.stopPropagation()}
|
|
128
|
+
></scb-checkbox>
|
|
129
|
+
</div>`:this.trailingVariant==="switch"&&(d=o`
|
|
130
|
+
<div class="trailing trailing-switch" style=${this.trailingSwitchWidth?`inline-size: ${this.trailingSwitchWidth}; min-inline-size: ${this.trailingSwitchWidth};`:n}>
|
|
131
|
+
<scb-switch
|
|
132
|
+
.selected=${this.trailingSwitchSelected}
|
|
133
|
+
label=${this.trailingSwitchLabel||n}
|
|
134
|
+
aria-label=${m}
|
|
135
|
+
@click=${p=>p.stopPropagation()}
|
|
136
|
+
@change=${u(S,this)}
|
|
137
|
+
></scb-switch>
|
|
138
|
+
</div>`);else this.type==="link"&&(d=o`<div class="trailing"><md-icon>${s}</md-icon></div>`);const I=this.type==="link"&&this.target==="_blank"?"noopener noreferrer":n,_=o`
|
|
139
|
+
${r}
|
|
140
|
+
<div class="texts">
|
|
141
|
+
${this.overline?o`<div class="overline">${this.overline}</div>`:n}
|
|
142
|
+
<div class="label">${this.label}</div>
|
|
143
|
+
${this.supportingText?o`<div class="supporting-text">${this.supportingText}</div>`:n}
|
|
144
|
+
</div>
|
|
145
|
+
${d}
|
|
146
|
+
`;return o`
|
|
147
|
+
<div class="row" @click=${this.onRowClick} ?inert=${this.disabled} aria-disabled=${this.disabled?"true":"false"}>
|
|
148
|
+
${this.type==="link"&&a?o`<a class="link" href=${a} target=${this.target||n} rel=${I}>${_}</a>`:_}
|
|
149
|
+
${this.type==="link"?o`<md-ripple></md-ripple>`:n}
|
|
150
|
+
</div>
|
|
151
|
+
|
|
152
|
+
<md-focus-ring></md-focus-ring>
|
|
153
|
+
`}});async function $(){const l=this.type==="link"&&(!this.trailing||this.trailingVariant==="icon");(this.leading&&this.leadingVariant==="icon"||this.trailing&&this.trailingVariant==="icon"||l)&&!u(b,this)&&(await x(()=>import("../../vendor/vendor-material.js").then(r=>r.p),__vite__mapDeps([0,1,2]),import.meta.url),h(b,this,!0)),this.trailing&&this.trailingVariant==="checkbox"&&!u(y,this)&&(await x(()=>import("../scb-checkbox/scb-checkbox.js"),__vite__mapDeps([3,4,5,6,0,1,2,7]),import.meta.url),h(y,this,!0)),this.trailing&&this.trailingVariant==="switch"&&!u(f,this)&&(await x(()=>import("../scb-switch/scb-switch.js"),__vite__mapDeps([8,4,6,0,1,2]),import.meta.url),h(f,this,!0))}function V(l,r){this.trailingSwitchSelected=l,r&&this.dispatchEvent(new CustomEvent("trailing-switch-change",{detail:{selected:l},bubbles:!0,composed:!0}))}i([e({type:String,reflect:!0,attribute:"type"})],t.prototype,"type",void 0);i([e({type:String})],t.prototype,"href",void 0);i([e({type:String,attribute:"item-href"})],t.prototype,"itemHref",void 0);i([e({type:String,attribute:"target"})],t.prototype,"target",void 0);i([e({type:Boolean,attribute:"disabled"})],t.prototype,"disabled",void 0);i([e({type:String,reflect:!0})],t.prototype,"label",void 0);i([e({type:String,attribute:"supporting-text"})],t.prototype,"supportingText",void 0);i([e({type:String,attribute:"overline"})],t.prototype,"overline",void 0);i([e({type:Boolean})],t.prototype,"leading",void 0);i([e({type:String,attribute:"leading-variant",reflect:!0})],t.prototype,"leadingVariant",void 0);i([e({type:String,attribute:"leading-icon"})],t.prototype,"leadingIcon",void 0);i([e({type:String,attribute:"avatar-label"})],t.prototype,"avatarLabel",void 0);i([e({type:String,attribute:"avatar-alt"})],t.prototype,"avatarAlt",void 0);i([e({type:String,attribute:"avatar-variant"})],t.prototype,"avatarVariant",void 0);i([e({type:String,attribute:"avatar-src"})],t.prototype,"avatarSrc",void 0);i([e({type:String,reflect:!0,attribute:"img-href-image"})],t.prototype,"imgHrefImage",void 0);i([e({type:Boolean})],t.prototype,"trailing",void 0);i([e({type:String,attribute:"trailing-variant",reflect:!0})],t.prototype,"trailingVariant",void 0);i([e({type:String,attribute:"trailing-icon"})],t.prototype,"trailingIcon",void 0);i([e({type:String,attribute:"trailing-switch-label"})],t.prototype,"trailingSwitchLabel",void 0);i([e({type:String,attribute:"trailing-switch-width"})],t.prototype,"trailingSwitchWidth",void 0);i([e({type:Boolean,attribute:"trailing-switch-selected",reflect:!0})],t.prototype,"trailingSwitchSelected",void 0);i([e({type:Number,reflect:!0})],t.prototype,"density",void 0);i([e({type:Boolean,attribute:"no-divider",reflect:!0})],t.prototype,"noDivider",void 0);t=i([T("scb-list-item")],t);
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["../../vendor/vendor-material.js","../../vendor/vendor.js","../../vendor/vendor-lit.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{_ as u,b as f,g as b,h as o,p as _,y as v}from"../../vendor/vendor.js";import"../../vendor/vendor-lit.js";import{t as a}from"../../vendor/decorate.js";import{t as y}from"../../vendor/preload-helper.js";import{n as g,r as S,t as k}from"../../vendor/classPrivateFieldGet2.js";import"./scb-list-item.js";(function(){try{var c=typeof globalThis<"u"?globalThis:window;if(!c.__scb_ce_guard_installed__){c.__scb_ce_guard_installed__=!0;var t=customElements.define.bind(customElements);customElements.define=function(e,i,s){try{customElements.get(e)||t(e,i,s)}catch(l){var r=String(l||"");if(r.indexOf("already been used")===-1&&r.indexOf("NotSupportedError")===-1)throw l}}}}catch{}})();var p,d,n=(p=new WeakMap,d=class extends u{constructor(...t){super(...t),S(this,p,void 0),g(p,this,!1),this.noDivider=!1,this.spacing=void 0,this.spacingTop=void 0,this.spacingBottom=void 0,this.spacingLeft=void 0,this.spacingRight=void 0,this._onSlotChange=()=>this._setupItems()}async firstUpdated(){k(p,this)||(await y(()=>import("../../vendor/vendor-material.js").then(t=>t.t),__vite__mapDeps([0,1,2]),import.meta.url),g(p,this,!0)),this._setupItems(),this._applySpacing()}updated(t){super.updated(t),(t.has("spacing")||t.has("spacingTop")||t.has("spacingBottom")||t.has("spacingLeft")||t.has("spacingRight"))&&this._applySpacing()}_getItems(){return(this._slotEl?.assignedElements({flatten:!0})??[]).filter(t=>t instanceof HTMLElement)}_setupItems(){this._getItems().forEach((e,i)=>{e.hasAttribute("role")||e.setAttribute("role","listitem"),e.setAttribute("tabindex",i===0?"0":"-1")});const t=this.renderRoot?.querySelector("md-list");t&&!t.hasAttribute("data-kbd")&&(t.setAttribute("data-kbd","true"),t.addEventListener("keydown",e=>this._onKeyDown(e)))}_onKeyDown(t){const e=this._getItems();if(!e.length)return;const i=e.findIndex(r=>r.getAttribute("tabindex")==="0"),s=r=>{const l=(r%e.length+e.length)%e.length;e.forEach(m=>m.setAttribute("tabindex","-1"));const h=e[l];h.setAttribute("tabindex","0"),h.focus()};switch(t.key){case"ArrowDown":case"ArrowRight":t.preventDefault(),s(i<0?0:i+1);break;case"ArrowUp":case"ArrowLeft":t.preventDefault(),s(i<0?0:i-1);break;case"Home":t.preventDefault(),s(0);break;case"End":t.preventDefault(),s(e.length-1);break;default:break}}_mapSpacingToken(t){if(!t)return;const e=String(t).trim();if(e)return/^\d+$/.test(e)?`var(--spacing-${Math.max(0,Math.min(14,parseInt(e,10)))})`:e}_applySpacing(){const t=this._mapSpacingToken(this.spacing),e=this._mapSpacingToken(this.spacingTop)??t,i=this._mapSpacingToken(this.spacingBottom)??t,s=this._mapSpacingToken(this.spacingLeft),r=this._mapSpacingToken(this.spacingRight);e?this.style.marginBlockStart=e:this.style.removeProperty("margin-block-start"),i?this.style.marginBlockEnd=i:this.style.removeProperty("margin-block-end"),s?this.style.marginInlineStart=s:this.style.removeProperty("margin-inline-start"),r?this.style.marginInlineEnd=r:this.style.removeProperty("margin-inline-end")}render(){return v`
|
|
3
|
+
<md-list role="list" @slotchange=${this._onSlotChange}>
|
|
4
|
+
<slot></slot>
|
|
5
|
+
</md-list>
|
|
6
|
+
`}},d.styles=[f`
|
|
7
|
+
:host {
|
|
8
|
+
display: block;
|
|
9
|
+
--scb-list-bg: transparent;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
md-list {
|
|
13
|
+
background: var(--scb-list-bg);
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
/* Visa top-border på första raden endast när listan saknar no-divider
|
|
17
|
+
och endast om första item inte själv är markerad med no-divider. */
|
|
18
|
+
:host(:not([no-divider])) ::slotted(scb-list-item:first-of-type:not([no-divider])) {
|
|
19
|
+
border-top: 1px solid var(--md-sys-color-outline-variant);
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
/* När listan har no-divider, tryck ned variabeln till alla barn */
|
|
23
|
+
:host([no-divider]) ::slotted(scb-list-item) {
|
|
24
|
+
--stroke-border: 0px;
|
|
25
|
+
}
|
|
26
|
+
`],d);a([o({type:Boolean,attribute:"no-divider",reflect:!0})],n.prototype,"noDivider",void 0);a([o({type:String,reflect:!0})],n.prototype,"spacing",void 0);a([o({type:String,reflect:!0,attribute:"spacing-top"})],n.prototype,"spacingTop",void 0);a([o({type:String,reflect:!0,attribute:"spacing-bottom"})],n.prototype,"spacingBottom",void 0);a([o({type:String,reflect:!0,attribute:"spacing-left"})],n.prototype,"spacingLeft",void 0);a([o({type:String,reflect:!0,attribute:"spacing-right"})],n.prototype,"spacingRight",void 0);a([_("slot")],n.prototype,"_slotEl",void 0);n=a([b("scb-list")],n);
|
|
@@ -0,0 +1,205 @@
|
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["../../vendor/vendor-material.js","../../vendor/vendor.js","../../vendor/vendor-lit.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{_ as b,b as g,g as _,h as c,m as f,v as u,y as d}from"../../vendor/vendor.js";import"../../vendor/vendor-lit.js";import{t as o}from"../../vendor/decorate.js";import"../scb-chevron/scb-chevron.js";import{t as m}from"../../vendor/preload-helper.js";(function(){try{var l=typeof globalThis<"u"?globalThis:window;if(!l.__scb_ce_guard_installed__){l.__scb_ce_guard_installed__=!0;var e=customElements.define.bind(customElements);customElements.define=function(t,n,a){try{customElements.get(t)||e(t,n,a)}catch(h){var p=String(h||"");if(p.indexOf("already been used")===-1&&p.indexOf("NotSupportedError")===-1)throw h}}}}catch{}})();var r,s,i=(r=class extends b{constructor(...e){super(...e),this.label="",this.selected=!1,this.noHighlightSelected=!1,this.leadingIcon="",this.itemHref="",this.hasSlotContent=!1,this.expanded=!1,this.__submenuId=`sub-${Math.random().toString(36).slice(2)}`,this.__focusId=`f-${Math.random().toString(36).slice(2)}`,this._toggleExpand=t=>{t&&t.stopPropagation(),this.hasSlotContent&&this.__setExpanded(!this.expanded)},this._onButtonClick=t=>{t.stopPropagation(),this._dispatchSelect(),this._toggleExpand()},this._onLinkClick=()=>{this._dispatchSelect()},this._onKeyDown=t=>{const n=Array.from(this.closest("scb-sub-menu, scb-menu")?.querySelectorAll("scb-menu-item")||[]),a=n.indexOf(this);switch(t.key){case"ArrowDown":t.preventDefault(),(n[a+1]||n[0]).shadowRoot?.querySelector(".scb-menu-label-text")?.focus();break;case"ArrowUp":t.preventDefault(),(n[a-1]||n[n.length-1]).shadowRoot?.querySelector(".scb-menu-label-text")?.focus();break;case"Home":t.preventDefault(),n[0].shadowRoot?.querySelector(".scb-menu-label-text")?.focus();break;case"End":t.preventDefault(),n[n.length-1].shadowRoot?.querySelector(".scb-menu-label-text")?.focus();break}}}get __submenuEl(){return this.renderRoot.querySelector(`#${this.__submenuId}`)}async __ensureDepsLoaded(){s.__rippleLoaded||(await m(()=>import("../../vendor/vendor-material.js").then(e=>e.f),__vite__mapDeps([0,1,2]),import.meta.url),s.__rippleLoaded=!0),s.__focusRingLoaded||(await m(()=>import("../../vendor/vendor-material.js").then(e=>e.m),__vite__mapDeps([0,1,2]),import.meta.url),s.__focusRingLoaded=!0),this.leadingIcon&&!s.__iconLoaded&&(await m(()=>import("../../vendor/vendor-material.js").then(e=>e.p),__vite__mapDeps([0,1,2]),import.meta.url),s.__iconLoaded=!0)}__syncHasSlotContentFromLightDom(){const e=Array.from(this.children);this.hasSlotContent=e.length>0&&e.every(t=>t.tagName==="SCB-SUB-MENU")}connectedCallback(){super.connectedCallback(),this.__syncHasSlotContentFromLightDom()}_onSlotChange(e){const t=e.target.assignedElements({flatten:!0});this.hasSlotContent=t.length>0&&t.every(n=>n.tagName==="SCB-SUB-MENU")}__setExpanded(e){this.hasSlotContent&&(this.expanded=e,this.dispatchEvent(new CustomEvent("scb-menu-expand",{bubbles:!0,composed:!0,detail:{item:this,expanded:e}})),this.dispatchEvent(new CustomEvent("scbmenuexpand",{bubbles:!0,composed:!0,detail:{item:this,expanded:e}})))}_dispatchSelect(){this.dispatchEvent(new CustomEvent("scb-menu-select",{bubbles:!0,composed:!0,detail:{item:this}})),this.dispatchEvent(new CustomEvent("scbmenuselect",{bubbles:!0,composed:!0,detail:{item:this}}))}async firstUpdated(){await this.__ensureDepsLoaded()}updated(e){e.has("leadingIcon")&&this.leadingIcon&&this.__ensureDepsLoaded(),e.has("hasSlotContent")&&this.hasSlotContent&&this.__ensureDepsLoaded(),e.has("expanded")&&this.__applyInert()}__applyInert(){const e=this.__submenuEl;e&&(this.expanded?(e.removeAttribute("inert"),e.setAttribute("aria-hidden","false")):(e.setAttribute("inert",""),e.setAttribute("aria-hidden","true")))}render(){const e=!!this.leadingIcon,t=!!this.itemHref,n=this.hasSlotContent;return d`
|
|
3
|
+
<div class="scb-menu-item">
|
|
4
|
+
<div class="scb-menu-item-label" ?selected=${this.selected} ?no-highlight-selected=${this.noHighlightSelected}>
|
|
5
|
+
${t?d`
|
|
6
|
+
<a
|
|
7
|
+
id=${this.__focusId}
|
|
8
|
+
class="scb-menu-label-text"
|
|
9
|
+
aria-label="${this.label}"
|
|
10
|
+
href="${this.itemHref}"
|
|
11
|
+
aria-current=${this.selected?"page":u}
|
|
12
|
+
@click=${this._onLinkClick}
|
|
13
|
+
@keydown=${this._onKeyDown}
|
|
14
|
+
>
|
|
15
|
+
<span class="scb-menu-click ${e?"has-icon":""}">
|
|
16
|
+
<md-ripple></md-ripple>
|
|
17
|
+
${e?d`<md-icon>${this.leadingIcon}</md-icon>`:""}
|
|
18
|
+
${this.label}
|
|
19
|
+
</span>
|
|
20
|
+
</a>
|
|
21
|
+
<md-focus-ring for=${this.__focusId} inward></md-focus-ring>
|
|
22
|
+
`:d`
|
|
23
|
+
<button
|
|
24
|
+
id=${this.__focusId}
|
|
25
|
+
type="button"
|
|
26
|
+
class="scb-menu-label-text"
|
|
27
|
+
@click=${this._onButtonClick}
|
|
28
|
+
@keydown=${this._onKeyDown}
|
|
29
|
+
aria-expanded=${n?String(this.expanded):u}
|
|
30
|
+
aria-controls=${n?this.__submenuId:u}
|
|
31
|
+
>
|
|
32
|
+
<span class="scb-menu-click ${e?"has-icon":""}">
|
|
33
|
+
<md-ripple></md-ripple>
|
|
34
|
+
${e?d`<md-icon>${this.leadingIcon}</md-icon>`:""}
|
|
35
|
+
${this.label}
|
|
36
|
+
</span>
|
|
37
|
+
</button>
|
|
38
|
+
<md-focus-ring for=${this.__focusId} inward></md-focus-ring>
|
|
39
|
+
`}
|
|
40
|
+
${n?d`
|
|
41
|
+
<button
|
|
42
|
+
class="menu-chevron-button"
|
|
43
|
+
type="button"
|
|
44
|
+
role="presentation"
|
|
45
|
+
tabindex="-1"
|
|
46
|
+
@click=${a=>{a.stopPropagation(),this._toggleExpand(a)}}
|
|
47
|
+
>
|
|
48
|
+
<md-ripple></md-ripple>
|
|
49
|
+
<scb-chevron class="menu-chevron" .open=${this.expanded}></scb-chevron>
|
|
50
|
+
</button>
|
|
51
|
+
`:""}
|
|
52
|
+
</div>
|
|
53
|
+
|
|
54
|
+
<div
|
|
55
|
+
id="${this.__submenuId}"
|
|
56
|
+
class="submenu ${this.expanded?"expanded":""}"
|
|
57
|
+
role="region"
|
|
58
|
+
aria-hidden=${this.expanded?"false":"true"}
|
|
59
|
+
>
|
|
60
|
+
<div class="submenu__inner">
|
|
61
|
+
<slot @slotchange=${this._onSlotChange}></slot>
|
|
62
|
+
</div>
|
|
63
|
+
</div>
|
|
64
|
+
</div>
|
|
65
|
+
`}},s=r,r.__rippleLoaded=!1,r.__iconLoaded=!1,r.__focusRingLoaded=!1,r.styles=g`
|
|
66
|
+
:host {
|
|
67
|
+
/* Animationtokens */
|
|
68
|
+
--scb-menu-sub-transition-duration: var(--scb-motion-duration-quick, 150ms);
|
|
69
|
+
--scb-menu-sub-transition-easing: var(--scb-motion-easing-standard, cubic-bezier(.69,.16,.2,.98));
|
|
70
|
+
|
|
71
|
+
--scb-menu-chevron-transition-duration: var(--motion-duration-medium, 150ms);
|
|
72
|
+
--scb-menu-chevron-transition-easing: var(
|
|
73
|
+
--motion-easing-emphasized-accelerate,
|
|
74
|
+
var(--motion-easing-emphasized, cubic-bezier(.69,.16,.2,.98))
|
|
75
|
+
);
|
|
76
|
+
|
|
77
|
+
--scb-menu-item-padding-y: 14px;
|
|
78
|
+
--scb-menu-item-padding-x: 20px;
|
|
79
|
+
--scb-menu-item-padding-x-has-icon: var(--spacing-4, 12px);
|
|
80
|
+
--scb-menu-item-radius: 28px;
|
|
81
|
+
--scb-menu-item-gap: var(--spacing-4, 12px);
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
:host([expanded]) {
|
|
85
|
+
--scb-menu-chevron-transition-easing: var(
|
|
86
|
+
--motion-easing-emphasized-decelerate,
|
|
87
|
+
var(--motion-easing-emphasized, cubic-bezier(.69,.16,.2,.98))
|
|
88
|
+
);
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
.scb-menu-item-label {
|
|
92
|
+
display: flex;
|
|
93
|
+
align-items: center;
|
|
94
|
+
position: relative;
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
.scb-menu-label-text {
|
|
98
|
+
width: 100%;
|
|
99
|
+
display: block;
|
|
100
|
+
background: transparent;
|
|
101
|
+
border: 0;
|
|
102
|
+
text-align: left;
|
|
103
|
+
font: inherit;
|
|
104
|
+
color: inherit;
|
|
105
|
+
text-decoration: none;
|
|
106
|
+
cursor: pointer;
|
|
107
|
+
padding: 0;
|
|
108
|
+
margin: 0;
|
|
109
|
+
appearance: none;
|
|
110
|
+
-webkit-appearance: none;
|
|
111
|
+
box-sizing: border-box;
|
|
112
|
+
outline: none;
|
|
113
|
+
-webkit-tap-highlight-color: transparent;
|
|
114
|
+
}
|
|
115
|
+
.scb-menu-label-text:focus,
|
|
116
|
+
.scb-menu-label-text:focus-visible {
|
|
117
|
+
outline: none;
|
|
118
|
+
}
|
|
119
|
+
.scb-menu-label-text:-moz-focusring {
|
|
120
|
+
outline: none;
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
.scb-menu-click {
|
|
124
|
+
display: flex;
|
|
125
|
+
align-items: center;
|
|
126
|
+
gap: var(--scb-menu-item-gap);
|
|
127
|
+
padding-block: var(--scb-menu-item-padding-y);
|
|
128
|
+
padding-inline: var(--scb-menu-item-padding-x);
|
|
129
|
+
border-radius: var(--scb-menu-item-radius);
|
|
130
|
+
position: relative;
|
|
131
|
+
overflow: hidden;
|
|
132
|
+
color: var(--md-sys-color-on-surface);
|
|
133
|
+
}
|
|
134
|
+
.scb-menu-click.has-icon {
|
|
135
|
+
padding-inline: var(--scb-menu-item-padding-x-has-icon);
|
|
136
|
+
padding-block: var(--scb-menu-item-padding-y);
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
.scb-menu-click md-ripple {
|
|
140
|
+
--md-ripple-focus-opacity: 0;
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
.scb-menu-item-label[selected]:not([no-highlight-selected]) .scb-menu-click,
|
|
144
|
+
:host([selected]):not([no-highlight-selected]) .scb-menu-click {
|
|
145
|
+
color: var(--md-sys-color-on-secondary-container);
|
|
146
|
+
background: var(--md-sys-color-secondary-container);
|
|
147
|
+
font-weight: 600;
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
.menu-chevron-button {
|
|
151
|
+
margin-left: auto;
|
|
152
|
+
flex: 0 0 auto;
|
|
153
|
+
position: relative;
|
|
154
|
+
display: inline-flex;
|
|
155
|
+
align-items: center;
|
|
156
|
+
justify-content: center;
|
|
157
|
+
inline-size: 48px;
|
|
158
|
+
block-size: 48px;
|
|
159
|
+
padding: 0;
|
|
160
|
+
border: 0;
|
|
161
|
+
border-radius: 999px;
|
|
162
|
+
background: transparent;
|
|
163
|
+
color: inherit;
|
|
164
|
+
cursor: pointer;
|
|
165
|
+
-webkit-tap-highlight-color: transparent;
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
.menu-chevron-button:focus {
|
|
169
|
+
outline: none;
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
.menu-chevron-button md-ripple {
|
|
173
|
+
border-radius: inherit;
|
|
174
|
+
}
|
|
175
|
+
|
|
176
|
+
.menu-chevron {
|
|
177
|
+
--scb-chevron-size: var(--icon-size-medium, 24px);
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
/* Undermeny: CSS-grid 0fr till 1fr för höjd-animation utan JS-mätningar */
|
|
181
|
+
.submenu {
|
|
182
|
+
display: grid;
|
|
183
|
+
grid-template-rows: 0fr;
|
|
184
|
+
transition:
|
|
185
|
+
grid-template-rows var(--scb-menu-sub-transition-duration) var(--scb-menu-sub-transition-easing),
|
|
186
|
+
opacity var(--scb-menu-sub-transition-duration) var(--scb-menu-sub-transition-easing);
|
|
187
|
+
opacity: 0;
|
|
188
|
+
overflow: hidden;
|
|
189
|
+
padding-left: var(--spacing-5, 16px);
|
|
190
|
+
}
|
|
191
|
+
.submenu.expanded {
|
|
192
|
+
grid-template-rows: 1fr;
|
|
193
|
+
opacity: 1;
|
|
194
|
+
}
|
|
195
|
+
.submenu__inner {
|
|
196
|
+
overflow: hidden;
|
|
197
|
+
}
|
|
198
|
+
|
|
199
|
+
/* Minskar rörelse för användare som önskar det */
|
|
200
|
+
@media (prefers-reduced-motion: reduce) {
|
|
201
|
+
.submenu {
|
|
202
|
+
transition: none;
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
`,r);o([c({type:String})],i.prototype,"label",void 0);o([c({type:Boolean,reflect:!0})],i.prototype,"selected",void 0);o([c({type:Boolean,attribute:"no-highlight-selected",reflect:!0})],i.prototype,"noHighlightSelected",void 0);o([c({type:String,attribute:"leading-icon"})],i.prototype,"leadingIcon",void 0);o([c({type:String,attribute:"item-href"})],i.prototype,"itemHref",void 0);o([f()],i.prototype,"hasSlotContent",void 0);o([c({type:Boolean,reflect:!0})],i.prototype,"expanded",void 0);i=s=o([_("scb-menu-item")],i);
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import{_ as m,b,g as u,h as v,y as o}from"../../vendor/vendor.js";import"../../vendor/vendor-lit.js";import{t as c}from"../../vendor/decorate.js";import"../scb-divider/scb-divider.js";(function(){try{var e=typeof globalThis<"u"?globalThis:window;if(!e.__scb_ce_guard_installed__){e.__scb_ce_guard_installed__=!0;var i=customElements.define.bind(customElements);customElements.define=function(s,l,d){try{customElements.get(s)||i(s,l,d)}catch(r){var n=String(r||"");if(n.indexOf("already been used")===-1&&n.indexOf("NotSupportedError")===-1)throw r}}}}catch{}})();var t,a=(t=class extends m{constructor(...i){super(...i),this.label=""}render(){return o`
|
|
2
|
+
<scb-divider></scb-divider>
|
|
3
|
+
${this.label?o`
|
|
4
|
+
<div class="scb-menu-section">
|
|
5
|
+
<div class="scb-menu-label">${this.label}</div>
|
|
6
|
+
</div>
|
|
7
|
+
`:""}
|
|
8
|
+
`}},t.styles=b`
|
|
9
|
+
:host {
|
|
10
|
+
color: var(--md-sys-color-on-surface);
|
|
11
|
+
font-family: var(--brand-font);
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
.scb-menu-section {
|
|
15
|
+
display: block;
|
|
16
|
+
width: 100%;
|
|
17
|
+
|
|
18
|
+
padding-block: var(--scb-menu-section-padding-block, 14px);
|
|
19
|
+
padding-inline: var(--spacing-4, 12px);
|
|
20
|
+
color: var(--md-sys-color-on-surface);
|
|
21
|
+
font-weight: var(--weight-semibold, 600);
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
.scb-menu-label {
|
|
25
|
+
font-family: var(--brand-font);
|
|
26
|
+
font-size: var(--md-sys-typescale-label-medium-size);
|
|
27
|
+
line-height: var(--md-sys-typescale-label-medium-line-height);
|
|
28
|
+
font-weight: var(
|
|
29
|
+
--md-sys-typescale-label-medium-weight,
|
|
30
|
+
var(--weight-semibold)
|
|
31
|
+
);
|
|
32
|
+
letter-spacing: var(
|
|
33
|
+
--md-sys-typescale-label-medium-tracking
|
|
34
|
+
);
|
|
35
|
+
color: var(--md-sys-color-on-surface);
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
scb-divider {
|
|
39
|
+
margin-block: var(--spacing-2, 4px);
|
|
40
|
+
margin-inline: var(--spacing-4, 12px);
|
|
41
|
+
}
|
|
42
|
+
`,t);c([v({type:String})],a.prototype,"label",void 0);a=c([u("scb-menu-section")],a);
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import{_ as m,b as u,g as v,h as n,v as y,y as b}from"../../vendor/vendor.js";import"../../vendor/vendor-lit.js";import{t as i}from"../../vendor/decorate.js";import{n as f,t as g}from"../../vendor/assertClassBrand.js";import"../scb-divider/scb-divider.js";import"./scb-menu-item.js";import"./scb-menu-section.js";import"./scb-sub-menu.js";(function(){try{var l=typeof globalThis<"u"?globalThis:window;if(!l.__scb_ce_guard_installed__){l.__scb_ce_guard_installed__=!0;var e=customElements.define.bind(customElements);customElements.define=function(t,r,a){try{customElements.get(t)||e(t,r,a)}catch(d){var p=String(d||"");if(p.indexOf("already been used")===-1&&p.indexOf("NotSupportedError")===-1)throw d}}}}catch{}})();var c,o,s=(c=new WeakSet,o=class extends m{constructor(...e){super(...e),f(this,c),this.label="",this.subLabel="",this.noHighlightSelected=!1,this.spacing=void 0,this.spacingTop=void 0,this.spacingBottom=void 0,this.spacingLeft=void 0,this.spacingRight=void 0,this._onGlobalSelect=t=>{const r=t;this.querySelectorAll("scb-menu-item").forEach(a=>{a.selected=!1,this.noHighlightSelected?a.setAttribute("no-highlight-selected",""):a.removeAttribute("no-highlight-selected")}),this.contains(r.detail.item)&&(r.detail.item.selected=!0)}}render(){return b`
|
|
2
|
+
<nav
|
|
3
|
+
aria-label="${this.label}"
|
|
4
|
+
>
|
|
5
|
+
${this.label?b`
|
|
6
|
+
<div class="scb-menu-label-wrapper">
|
|
7
|
+
<div class="scb-menu-label">${this.label}</div>
|
|
8
|
+
<div class="scb-menu-sublabel">
|
|
9
|
+
${this.subLabel}
|
|
10
|
+
</div>
|
|
11
|
+
</div>
|
|
12
|
+
<scb-divider></scb-divider>
|
|
13
|
+
`:y}
|
|
14
|
+
<div class="panel">
|
|
15
|
+
<slot></slot>
|
|
16
|
+
</div>
|
|
17
|
+
</nav>
|
|
18
|
+
`}firstUpdated(e){super.firstUpdated(e),g(c,this,h).call(this)}updated(e){super.updated(e),(e.has("spacing")||e.has("spacingTop")||e.has("spacingBottom")||e.has("spacingLeft")||e.has("spacingRight"))&&g(c,this,h).call(this)}mapSpacingToken(e){if(!e)return;const t=String(e).trim();if(t)return/^\d+$/.test(t)?`var(--spacing-${Math.max(0,Math.min(14,parseInt(t,10)))})`:t}connectedCallback(){super.connectedCallback(),window.addEventListener("scb-menu-select",this._onGlobalSelect)}disconnectedCallback(){window.removeEventListener("scb-menu-select",this._onGlobalSelect),super.disconnectedCallback()}},o.styles=u`
|
|
19
|
+
:host {
|
|
20
|
+
display: block;
|
|
21
|
+
color: var(--md-sys-color-on-surface);
|
|
22
|
+
padding: var(--spacing-4, 12px);
|
|
23
|
+
background: var(--scb-menu-background, var(--md-sys-color-surface-container));
|
|
24
|
+
font-family: var(--brand-font);
|
|
25
|
+
|
|
26
|
+
margin-block-start: var(--scb-menu-spacing-block-start, 0);
|
|
27
|
+
margin-block-end: var(--scb-menu-spacing-block-end, 0);
|
|
28
|
+
margin-inline-start: var(--scb-menu-spacing-inline-start, 0);
|
|
29
|
+
margin-inline-end: var(--scb-menu-spacing-inline-end, 0);
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
.scb-menu-label {
|
|
33
|
+
font-size: var(--md-sys-typescale-label-large-size);
|
|
34
|
+
line-height: var(
|
|
35
|
+
--md-sys-typescale-label-large-line-height
|
|
36
|
+
);
|
|
37
|
+
font-weight: var(
|
|
38
|
+
--md-sys-typescale-label-large-weight,
|
|
39
|
+
var(--weight-semibold)
|
|
40
|
+
);
|
|
41
|
+
letter-spacing: var(
|
|
42
|
+
--md-sys-typescale-label-large-tracking
|
|
43
|
+
);
|
|
44
|
+
color: var(--md-sys-color-on-surface);
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
.scb-menu-sublabel {
|
|
48
|
+
font-size: var(--md-sys-typescale-body-small-size);
|
|
49
|
+
line-height: var(
|
|
50
|
+
--md-sys-typescale-body-small-line-height
|
|
51
|
+
);
|
|
52
|
+
font-weight: var(
|
|
53
|
+
--md-sys-typescale-body-small-weight,
|
|
54
|
+
var(--weight-regular)
|
|
55
|
+
);
|
|
56
|
+
letter-spacing: var(
|
|
57
|
+
--md-sys-typescale-body-small-tracking
|
|
58
|
+
);
|
|
59
|
+
color: var(--md-sys-color-on-surface);
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
.scb-menu-label-wrapper {
|
|
63
|
+
padding: var(--spacing-4, 12px);
|
|
64
|
+
color: inherit;
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
scb-divider {
|
|
68
|
+
margin-block: var(--spacing-2, 4px);
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
::slotted(scb-search) {
|
|
72
|
+
display: block;
|
|
73
|
+
width: 100%;
|
|
74
|
+
box-sizing: border-box;
|
|
75
|
+
padding: var(--scb-menu-search-padding, var(--spacing-4, 12px));
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
.panel {
|
|
79
|
+
contain: layout paint style;
|
|
80
|
+
}
|
|
81
|
+
`,o);function h(){const l=this.mapSpacingToken(this.spacing),e=this.mapSpacingToken(this.spacingTop)??l,t=this.mapSpacingToken(this.spacingBottom)??l,r=this.mapSpacingToken(this.spacingLeft),a=this.mapSpacingToken(this.spacingRight);e?this.style.setProperty("--scb-menu-spacing-block-start",e):this.style.removeProperty("--scb-menu-spacing-block-start"),t?this.style.setProperty("--scb-menu-spacing-block-end",t):this.style.removeProperty("--scb-menu-spacing-block-end"),r?this.style.setProperty("--scb-menu-spacing-inline-start",r):this.style.removeProperty("--scb-menu-spacing-inline-start"),a?this.style.setProperty("--scb-menu-spacing-inline-end",a):this.style.removeProperty("--scb-menu-spacing-inline-end")}i([n({type:String})],s.prototype,"label",void 0);i([n({type:String,attribute:"sub-label"})],s.prototype,"subLabel",void 0);i([n({type:Boolean,attribute:"no-highlight-selected",reflect:!0})],s.prototype,"noHighlightSelected",void 0);i([n({type:String,reflect:!0})],s.prototype,"spacing",void 0);i([n({type:String,attribute:"spacing-top",reflect:!0})],s.prototype,"spacingTop",void 0);i([n({type:String,attribute:"spacing-bottom",reflect:!0})],s.prototype,"spacingBottom",void 0);i([n({type:String,attribute:"spacing-left",reflect:!0})],s.prototype,"spacingLeft",void 0);i([n({type:String,attribute:"spacing-right",reflect:!0})],s.prototype,"spacingRight",void 0);s=i([v("scb-menu")],s);
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import{_ as d,b as u,g as b,h as m,y as _}from"../../vendor/vendor.js";import"../../vendor/vendor-lit.js";import{t as r}from"../../vendor/decorate.js";(function(){try{var s=typeof globalThis<"u"?globalThis:window;if(!s.__scb_ce_guard_installed__){s.__scb_ce_guard_installed__=!0;var n=customElements.define.bind(customElements);customElements.define=function(e,t,l){try{customElements.get(e)||n(e,t,l)}catch(o){var i=String(o||"");if(i.indexOf("already been used")===-1&&i.indexOf("NotSupportedError")===-1)throw o}}}}catch{}})();var c,a=(c=class extends d{constructor(...n){super(...n),this.label="",this._onGlobalSelect=e=>{const t=e;this.querySelectorAll("scb-menu-item").forEach(l=>l.selected=!1),this.contains(t.detail.item)&&(t.detail.item.selected=!0)}}connectedCallback(){super.connectedCallback(),window.addEventListener("scb-menu-select",this._onGlobalSelect)}disconnectedCallback(){window.removeEventListener("scb-menu-select",this._onGlobalSelect),super.disconnectedCallback()}render(){return _`
|
|
2
|
+
<nav aria-label="${this.label}">
|
|
3
|
+
<slot></slot>
|
|
4
|
+
</nav>
|
|
5
|
+
`}},c.styles=u`
|
|
6
|
+
:host {
|
|
7
|
+
display: block;
|
|
8
|
+
width: 100%;
|
|
9
|
+
}
|
|
10
|
+
`,c);r([m({type:String})],a.prototype,"label",void 0);a=r([b("scb-sub-menu")],a);
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import{_ as h,b as u,g as f,h as a,y as _}from"../../vendor/vendor.js";import"../../vendor/vendor-lit.js";import{t as s}from"../../vendor/decorate.js";(function(){try{var r=typeof globalThis<"u"?globalThis:window;if(!r.__scb_ce_guard_installed__){r.__scb_ce_guard_installed__=!0;var i=customElements.define.bind(customElements);customElements.define=function(e,t,c){try{customElements.get(e)||i(e,t,c)}catch(l){var d=String(l||"");if(d.indexOf("already been used")===-1&&d.indexOf("NotSupportedError")===-1)throw l}}}}catch{}})();var o,n=(o=class extends h{constructor(...i){super(...i),this.href="",this.dataHref="",this.disabled=!1,this.__onClick=e=>{if(e.defaultPrevented)return;if(this.disabled){e.preventDefault(),e.stopImmediatePropagation();return}const t=(this.href||"").trim();if(t){if(t.startsWith("#")){typeof window<"u"&&(window.location.hash=t.slice(1));return}if((this.getAttribute("target")||"").trim()==="_blank"){window.open(t,"_blank","noopener,noreferrer");return}window.location.href=t}},this.__onKeyDown=e=>{if(!this.disabled){if(e.key==="Enter"){e.preventDefault(),this.click();return}e.key===" "&&e.preventDefault()}},this.__onKeyUp=e=>{this.disabled||e.key===" "&&(e.preventDefault(),this.click())}}connectedCallback(){super.connectedCallback(),this.addEventListener("click",this.__onClick),this.addEventListener("keydown",this.__onKeyDown),this.addEventListener("keyup",this.__onKeyUp),this.__syncA11y()}disconnectedCallback(){this.removeEventListener("click",this.__onClick),this.removeEventListener("keydown",this.__onKeyDown),this.removeEventListener("keyup",this.__onKeyUp),super.disconnectedCallback()}updated(){this.__syncA11y()}__syncA11y(){const i=!!(this.href||"").trim();if(this.disabled){this.setAttribute("aria-disabled","true"),this.tabIndex=-1,this.removeAttribute("role");return}this.removeAttribute("aria-disabled"),this.tabIndex=0,this.setAttribute("role",i?"link":"button")}render(){return _`<span class="label"><slot></slot></span>`}},o.styles=u`
|
|
2
|
+
:host {
|
|
3
|
+
display: inline-flex;
|
|
4
|
+
align-items: center;
|
|
5
|
+
justify-content: center;
|
|
6
|
+
outline: none;
|
|
7
|
+
position: relative;
|
|
8
|
+
overflow: hidden;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
:host([disabled]) {
|
|
12
|
+
cursor: default;
|
|
13
|
+
pointer-events: none;
|
|
14
|
+
opacity: 0.6;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
:host(:focus-visible) {
|
|
18
|
+
outline: none;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
:host(:focus) {
|
|
22
|
+
outline: none;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
.label {
|
|
26
|
+
pointer-events: none;
|
|
27
|
+
}
|
|
28
|
+
`,o);s([a({type:String})],n.prototype,"href",void 0);s([a({type:String,attribute:"data-href"})],n.prototype,"dataHref",void 0);s([a({type:Boolean,reflect:!0})],n.prototype,"disabled",void 0);n=s([f("scb-nav-item")],n);
|