@material/web 1.3.1-nightly.ec0a8eb.0 → 1.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/button/elevated-button.js +3 -3
- package/button/elevated-button.js.map +1 -1
- package/button/filled-button.js +3 -3
- package/button/filled-button.js.map +1 -1
- package/button/filled-tonal-button.js +3 -3
- package/button/filled-tonal-button.js.map +1 -1
- package/button/internal/_shared.scss +2 -0
- package/button/internal/elevated-button.js +1 -1
- package/button/internal/elevated-button.js.map +1 -1
- package/button/internal/elevated-styles.css +1 -0
- package/button/internal/elevated-styles.css.map +1 -0
- package/button/internal/{elevated-styles.css.js → elevated-styles.js} +7 -6
- package/button/internal/elevated-styles.js.map +1 -0
- package/button/internal/filled-button.js +1 -1
- package/button/internal/filled-button.js.map +1 -1
- package/button/internal/filled-styles.css +1 -0
- package/button/internal/filled-styles.css.map +1 -0
- package/button/internal/{filled-styles.css.js → filled-styles.js} +7 -6
- package/button/internal/filled-styles.js.map +1 -0
- package/button/internal/filled-tonal-button.js +1 -1
- package/button/internal/filled-tonal-button.js.map +1 -1
- package/button/internal/filled-tonal-styles.css +1 -0
- package/button/internal/filled-tonal-styles.css.map +1 -0
- package/button/internal/{filled-tonal-styles.css.js → filled-tonal-styles.js} +7 -6
- package/button/internal/filled-tonal-styles.js.map +1 -0
- package/button/internal/outlined-styles.css +1 -0
- package/button/internal/outlined-styles.css.map +1 -0
- package/button/internal/{outlined-styles.css.js → outlined-styles.js} +7 -6
- package/button/internal/outlined-styles.js.map +1 -0
- package/button/internal/shared-elevation-styles.css +1 -0
- package/button/internal/shared-elevation-styles.css.map +1 -0
- package/button/internal/{shared-elevation-styles.css.js → shared-elevation-styles.js} +7 -6
- package/button/internal/shared-elevation-styles.js.map +1 -0
- package/button/internal/shared-styles.css +1 -0
- package/button/internal/shared-styles.css.map +1 -0
- package/button/internal/shared-styles.js +10 -0
- package/button/internal/shared-styles.js.map +1 -0
- package/button/internal/text-styles.css +1 -0
- package/button/internal/text-styles.css.map +1 -0
- package/button/internal/{text-styles.css.js → text-styles.js} +7 -6
- package/button/internal/text-styles.js.map +1 -0
- package/button/outlined-button.js +2 -2
- package/button/outlined-button.js.map +1 -1
- package/button/text-button.js +2 -2
- package/button/text-button.js.map +1 -1
- package/checkbox/checkbox.js +1 -1
- package/checkbox/checkbox.js.map +1 -1
- package/checkbox/internal/checkbox-styles.css +1 -0
- package/checkbox/internal/checkbox-styles.css.map +1 -0
- package/checkbox/internal/{checkbox-styles.css.js → checkbox-styles.js} +7 -6
- package/checkbox/internal/checkbox-styles.js.map +1 -0
- package/chips/assist-chip.js +3 -3
- package/chips/assist-chip.js.map +1 -1
- package/chips/chip-set.js +1 -1
- package/chips/chip-set.js.map +1 -1
- package/chips/filter-chip.js +5 -5
- package/chips/filter-chip.js.map +1 -1
- package/chips/input-chip.js +4 -4
- package/chips/input-chip.js.map +1 -1
- package/chips/internal/_shared.scss +6 -0
- package/chips/internal/assist-chip.js +1 -1
- package/chips/internal/assist-chip.js.map +1 -1
- package/chips/internal/assist-styles.css +1 -0
- package/chips/internal/assist-styles.css.map +1 -0
- package/chips/internal/{assist-styles.css.js → assist-styles.js} +7 -6
- package/chips/internal/{assist-styles.css.js.map → assist-styles.js.map} +1 -1
- package/chips/internal/chip-set-styles.css +1 -0
- package/chips/internal/chip-set-styles.css.map +1 -0
- package/chips/internal/chip-set-styles.js +10 -0
- package/chips/internal/chip-set-styles.js.map +1 -0
- package/chips/internal/elevated-styles.css +1 -0
- package/chips/internal/elevated-styles.css.map +1 -0
- package/chips/internal/{elevated-styles.css.js → elevated-styles.js} +7 -6
- package/chips/internal/elevated-styles.js.map +1 -0
- package/chips/internal/filter-chip.js +1 -1
- package/chips/internal/filter-chip.js.map +1 -1
- package/chips/internal/filter-styles.css +1 -0
- package/chips/internal/filter-styles.css.map +1 -0
- package/chips/internal/{filter-styles.css.js → filter-styles.js} +7 -6
- package/chips/internal/{filter-styles.css.js.map → filter-styles.js.map} +1 -1
- package/chips/internal/input-styles.css +1 -0
- package/chips/internal/input-styles.css.map +1 -0
- package/chips/internal/{input-styles.css.js → input-styles.js} +7 -6
- package/chips/internal/input-styles.js.map +1 -0
- package/chips/internal/selectable-styles.css +1 -0
- package/chips/internal/selectable-styles.css.map +1 -0
- package/chips/internal/{selectable-styles.css.js → selectable-styles.js} +7 -6
- package/chips/internal/selectable-styles.js.map +1 -0
- package/chips/internal/shared-styles.css +1 -0
- package/chips/internal/shared-styles.css.map +1 -0
- package/chips/internal/{shared-styles.css.js → shared-styles.js} +7 -6
- package/chips/internal/{shared-styles.css.js.map → shared-styles.js.map} +1 -1
- package/chips/internal/suggestion-styles.css +1 -0
- package/chips/internal/suggestion-styles.css.map +1 -0
- package/chips/internal/{suggestion-styles.css.js → suggestion-styles.js} +7 -6
- package/chips/internal/suggestion-styles.js.map +1 -0
- package/chips/internal/trailing-icon-styles.css +1 -0
- package/chips/internal/trailing-icon-styles.css.map +1 -0
- package/chips/internal/{trailing-icon-styles.css.js → trailing-icon-styles.js} +7 -6
- package/chips/internal/trailing-icon-styles.js.map +1 -0
- package/chips/suggestion-chip.js +3 -3
- package/chips/suggestion-chip.js.map +1 -1
- package/dialog/dialog.js +1 -1
- package/dialog/dialog.js.map +1 -1
- package/dialog/internal/dialog-styles.css +1 -0
- package/dialog/internal/dialog-styles.css.map +1 -0
- package/dialog/internal/{dialog-styles.css.js → dialog-styles.js} +7 -6
- package/dialog/internal/dialog-styles.js.map +1 -0
- package/divider/divider.js +1 -1
- package/divider/divider.js.map +1 -1
- package/divider/internal/divider-styles.css +1 -0
- package/divider/internal/divider-styles.css.map +1 -0
- package/divider/internal/{divider-styles.css.js → divider-styles.js} +7 -6
- package/divider/internal/divider-styles.js.map +1 -0
- package/elevation/elevation.js +1 -1
- package/elevation/elevation.js.map +1 -1
- package/elevation/internal/_elevation.scss +6 -5
- package/elevation/internal/elevation-styles.css +1 -0
- package/elevation/internal/elevation-styles.css.map +1 -0
- package/elevation/internal/elevation-styles.js +10 -0
- package/elevation/internal/elevation-styles.js.map +1 -0
- package/fab/branded-fab.js +3 -3
- package/fab/branded-fab.js.map +1 -1
- package/fab/fab.js +3 -3
- package/fab/fab.js.map +1 -1
- package/fab/internal/_shared.scss +2 -0
- package/fab/internal/fab-branded-styles.css +1 -0
- package/fab/internal/fab-branded-styles.css.map +1 -0
- package/fab/internal/{fab-branded-styles.css.js → fab-branded-styles.js} +7 -6
- package/fab/internal/fab-branded-styles.js.map +1 -0
- package/fab/internal/fab-styles.css +1 -0
- package/fab/internal/fab-styles.css.map +1 -0
- package/fab/internal/{fab-styles.css.js → fab-styles.js} +7 -6
- package/fab/internal/fab-styles.js.map +1 -0
- package/fab/internal/forced-colors-styles.css +1 -0
- package/fab/internal/forced-colors-styles.css.map +1 -0
- package/fab/internal/{forced-colors-styles.css.js → forced-colors-styles.js} +7 -6
- package/fab/internal/forced-colors-styles.js.map +1 -0
- package/fab/internal/shared-styles.css +1 -0
- package/fab/internal/shared-styles.css.map +1 -0
- package/fab/internal/shared-styles.js +10 -0
- package/fab/internal/shared-styles.js.map +1 -0
- package/fab/internal/shared.js +1 -1
- package/fab/internal/shared.js.map +1 -1
- package/field/filled-field.js +2 -2
- package/field/filled-field.js.map +1 -1
- package/field/internal/filled-styles.css +1 -0
- package/field/internal/filled-styles.css.map +1 -0
- package/field/internal/{filled-styles.css.js → filled-styles.js} +7 -6
- package/field/internal/{filled-styles.css.js.map → filled-styles.js.map} +1 -1
- package/field/internal/outlined-styles.css +1 -0
- package/field/internal/outlined-styles.css.map +1 -0
- package/field/internal/{outlined-styles.css.js → outlined-styles.js} +7 -6
- package/field/internal/outlined-styles.js.map +1 -0
- package/field/internal/shared-styles.css +1 -0
- package/field/internal/shared-styles.css.map +1 -0
- package/field/internal/{shared-styles.css.js → shared-styles.js} +7 -6
- package/field/internal/{shared-styles.css.js.map → shared-styles.js.map} +1 -1
- package/field/outlined-field.js +2 -2
- package/field/outlined-field.js.map +1 -1
- package/focus/internal/focus-ring-styles.css +1 -0
- package/focus/internal/focus-ring-styles.css.map +1 -0
- package/focus/internal/{focus-ring-styles.css.js → focus-ring-styles.js} +7 -6
- package/focus/internal/focus-ring-styles.js.map +1 -0
- package/focus/md-focus-ring.js +1 -1
- package/focus/md-focus-ring.js.map +1 -1
- package/icon/icon.js +1 -1
- package/icon/icon.js.map +1 -1
- package/icon/internal/icon-styles.css +1 -0
- package/icon/internal/icon-styles.css.map +1 -0
- package/icon/internal/{icon-styles.css.js → icon-styles.js} +7 -6
- package/icon/internal/icon-styles.js.map +1 -0
- package/iconbutton/filled-icon-button.js +2 -2
- package/iconbutton/filled-icon-button.js.map +1 -1
- package/iconbutton/filled-tonal-icon-button.js +2 -2
- package/iconbutton/filled-tonal-icon-button.js.map +1 -1
- package/iconbutton/icon-button.js +2 -2
- package/iconbutton/icon-button.js.map +1 -1
- package/iconbutton/internal/filled-styles.css +1 -0
- package/iconbutton/internal/filled-styles.css.map +1 -0
- package/iconbutton/internal/{filled-styles.css.js → filled-styles.js} +7 -6
- package/iconbutton/internal/filled-styles.js.map +1 -0
- package/iconbutton/internal/filled-tonal-styles.css +1 -0
- package/iconbutton/internal/filled-tonal-styles.css.map +1 -0
- package/iconbutton/internal/{filled-tonal-styles.css.js → filled-tonal-styles.js} +7 -6
- package/iconbutton/internal/filled-tonal-styles.js.map +1 -0
- package/iconbutton/internal/outlined-styles.css +1 -0
- package/iconbutton/internal/outlined-styles.css.map +1 -0
- package/iconbutton/internal/{outlined-styles.css.js → outlined-styles.js} +7 -6
- package/iconbutton/internal/outlined-styles.js.map +1 -0
- package/iconbutton/internal/shared-styles.css +1 -0
- package/iconbutton/internal/shared-styles.css.map +1 -0
- package/iconbutton/internal/{shared-styles.css.js → shared-styles.js} +7 -6
- package/iconbutton/internal/shared-styles.js.map +1 -0
- package/iconbutton/internal/standard-styles.css +1 -0
- package/iconbutton/internal/standard-styles.css.map +1 -0
- package/iconbutton/internal/{standard-styles.css.js → standard-styles.js} +7 -6
- package/iconbutton/internal/standard-styles.js.map +1 -0
- package/iconbutton/outlined-icon-button.js +2 -2
- package/iconbutton/outlined-icon-button.js.map +1 -1
- package/labs/badge/badge.js +1 -1
- package/labs/badge/badge.js.map +1 -1
- package/labs/badge/internal/badge-styles.css +1 -0
- package/labs/badge/internal/badge-styles.css.map +1 -0
- package/labs/badge/internal/{badge-styles.css.js → badge-styles.js} +7 -6
- package/labs/badge/internal/badge-styles.js.map +1 -0
- package/labs/card/elevated-card.js +2 -2
- package/labs/card/elevated-card.js.map +1 -1
- package/labs/card/filled-card.js +2 -2
- package/labs/card/filled-card.js.map +1 -1
- package/labs/card/internal/elevated-styles.css +1 -0
- package/labs/card/internal/elevated-styles.css.map +1 -0
- package/labs/card/internal/{elevated-styles.css.js → elevated-styles.js} +7 -6
- package/labs/card/internal/elevated-styles.js.map +1 -0
- package/labs/card/internal/filled-styles.css +1 -0
- package/labs/card/internal/filled-styles.css.map +1 -0
- package/labs/card/internal/{filled-styles.css.js → filled-styles.js} +7 -6
- package/labs/card/internal/filled-styles.js.map +1 -0
- package/labs/card/internal/outlined-styles.css +1 -0
- package/labs/card/internal/outlined-styles.css.map +1 -0
- package/labs/card/internal/{outlined-styles.css.js → outlined-styles.js} +7 -6
- package/labs/card/internal/outlined-styles.js.map +1 -0
- package/labs/card/internal/shared-styles.css +1 -0
- package/labs/card/internal/shared-styles.css.map +1 -0
- package/labs/card/internal/{shared-styles.css.js → shared-styles.js} +7 -6
- package/labs/card/internal/shared-styles.js.map +1 -0
- package/labs/card/outlined-card.js +2 -2
- package/labs/card/outlined-card.js.map +1 -1
- package/labs/item/internal/item-styles.css +1 -0
- package/labs/item/internal/item-styles.css.map +1 -0
- package/labs/item/internal/{item-styles.css.js → item-styles.js} +7 -6
- package/labs/item/internal/item-styles.js.map +1 -0
- package/labs/item/item.js +1 -1
- package/labs/item/item.js.map +1 -1
- package/labs/navigationbar/internal/navigation-bar-styles.css +1 -0
- package/labs/navigationbar/internal/navigation-bar-styles.css.map +1 -0
- package/labs/navigationbar/internal/{navigation-bar-styles.css.js → navigation-bar-styles.js} +7 -6
- package/labs/navigationbar/internal/navigation-bar-styles.js.map +1 -0
- package/labs/navigationbar/internal/navigation-bar.js +1 -1
- package/labs/navigationbar/internal/navigation-bar.js.map +1 -1
- package/labs/navigationbar/navigation-bar.js +1 -1
- package/labs/navigationbar/navigation-bar.js.map +1 -1
- package/labs/navigationdrawer/internal/navigation-drawer-modal-styles.css +1 -0
- package/labs/navigationdrawer/internal/navigation-drawer-modal-styles.css.map +1 -0
- package/labs/navigationdrawer/internal/{navigation-drawer-modal-styles.css.js → navigation-drawer-modal-styles.js} +7 -6
- package/labs/navigationdrawer/internal/navigation-drawer-modal-styles.js.map +1 -0
- package/labs/navigationdrawer/internal/navigation-drawer-styles.css +1 -0
- package/labs/navigationdrawer/internal/navigation-drawer-styles.css.map +1 -0
- package/labs/navigationdrawer/internal/{navigation-drawer-styles.css.js → navigation-drawer-styles.js} +7 -6
- package/labs/navigationdrawer/internal/navigation-drawer-styles.js.map +1 -0
- package/labs/navigationdrawer/internal/navigation-drawer.js +1 -1
- package/labs/navigationdrawer/internal/navigation-drawer.js.map +1 -1
- package/labs/navigationdrawer/internal/shared-styles.css +1 -0
- package/labs/navigationdrawer/internal/shared-styles.css.map +1 -0
- package/labs/navigationdrawer/internal/{shared-styles.css.js → shared-styles.js} +7 -6
- package/labs/navigationdrawer/internal/shared-styles.js.map +1 -0
- package/labs/navigationdrawer/navigation-drawer-modal.js +2 -2
- package/labs/navigationdrawer/navigation-drawer-modal.js.map +1 -1
- package/labs/navigationdrawer/navigation-drawer.js +2 -2
- package/labs/navigationdrawer/navigation-drawer.js.map +1 -1
- package/labs/navigationtab/internal/_navigation-tab.scss +2 -0
- package/labs/navigationtab/internal/navigation-tab-styles.css +1 -0
- package/labs/navigationtab/internal/navigation-tab-styles.css.map +1 -0
- package/labs/navigationtab/internal/{navigation-tab-styles.css.js → navigation-tab-styles.js} +7 -6
- package/labs/navigationtab/internal/navigation-tab-styles.js.map +1 -0
- package/labs/navigationtab/navigation-tab.js +1 -1
- package/labs/navigationtab/navigation-tab.js.map +1 -1
- package/labs/segmentedbutton/internal/_shared.scss +2 -0
- package/labs/segmentedbutton/internal/outlined-styles.css +1 -0
- package/labs/segmentedbutton/internal/outlined-styles.css.map +1 -0
- package/labs/segmentedbutton/internal/{outlined-styles.css.js → outlined-styles.js} +7 -6
- package/labs/segmentedbutton/internal/outlined-styles.js.map +1 -0
- package/labs/segmentedbutton/internal/shared-styles.css +1 -0
- package/labs/segmentedbutton/internal/shared-styles.css.map +1 -0
- package/labs/segmentedbutton/internal/shared-styles.js +10 -0
- package/labs/segmentedbutton/internal/shared-styles.js.map +1 -0
- package/labs/segmentedbutton/outlined-segmented-button.js +2 -2
- package/labs/segmentedbutton/outlined-segmented-button.js.map +1 -1
- package/labs/segmentedbuttonset/internal/outlined-styles.css +1 -0
- package/labs/segmentedbuttonset/internal/outlined-styles.css.map +1 -0
- package/labs/segmentedbuttonset/internal/{outlined-styles.css.js → outlined-styles.js} +7 -6
- package/labs/segmentedbuttonset/internal/outlined-styles.js.map +1 -0
- package/labs/segmentedbuttonset/internal/shared-styles.css +1 -0
- package/labs/segmentedbuttonset/internal/shared-styles.css.map +1 -0
- package/labs/segmentedbuttonset/internal/{shared-styles.css.js → shared-styles.js} +7 -6
- package/labs/segmentedbuttonset/internal/shared-styles.js.map +1 -0
- package/labs/segmentedbuttonset/outlined-segmented-button-set.js +2 -2
- package/labs/segmentedbuttonset/outlined-segmented-button-set.js.map +1 -1
- package/list/internal/list-controller.d.ts +6 -0
- package/list/internal/list-controller.js +16 -10
- package/list/internal/list-controller.js.map +1 -1
- package/list/internal/list-navigation-helpers.d.ts +8 -4
- package/list/internal/list-navigation-helpers.js +18 -6
- package/list/internal/list-navigation-helpers.js.map +1 -1
- package/list/internal/list-styles.css +1 -0
- package/list/internal/list-styles.css.map +1 -0
- package/list/internal/{list-styles.css.js → list-styles.js} +7 -6
- package/list/internal/list-styles.js.map +1 -0
- package/list/internal/listitem/list-item-styles.css +1 -0
- package/list/internal/listitem/list-item-styles.css.map +1 -0
- package/list/internal/listitem/{list-item-styles.css.js → list-item-styles.js} +7 -6
- package/list/internal/listitem/list-item-styles.js.map +1 -0
- package/list/list-item.js +1 -1
- package/list/list-item.js.map +1 -1
- package/list/list.js +1 -1
- package/list/list.js.map +1 -1
- package/menu/internal/menu-styles.css +1 -0
- package/menu/internal/menu-styles.css.map +1 -0
- package/menu/internal/{menu-styles.css.js → menu-styles.js} +7 -6
- package/menu/internal/menu-styles.js.map +1 -0
- package/menu/internal/menu.d.ts +6 -0
- package/menu/internal/menu.js +10 -0
- package/menu/internal/menu.js.map +1 -1
- package/menu/internal/menuitem/menu-item-styles.css +1 -0
- package/menu/internal/menuitem/menu-item-styles.css.map +1 -0
- package/menu/internal/menuitem/{menu-item-styles.css.js → menu-item-styles.js} +7 -6
- package/menu/internal/menuitem/menu-item-styles.js.map +1 -0
- package/menu/internal/submenu/sub-menu-styles.css +1 -0
- package/menu/internal/submenu/sub-menu-styles.css.map +1 -0
- package/menu/internal/submenu/sub-menu-styles.js +10 -0
- package/menu/internal/submenu/sub-menu-styles.js.map +1 -0
- package/menu/menu-item.js +1 -1
- package/menu/menu-item.js.map +1 -1
- package/menu/menu.js +1 -1
- package/menu/menu.js.map +1 -1
- package/menu/sub-menu.js +1 -1
- package/menu/sub-menu.js.map +1 -1
- package/package.json +20 -26
- package/progress/circular-progress.js +1 -1
- package/progress/circular-progress.js.map +1 -1
- package/progress/internal/circular-progress-styles.css +1 -0
- package/progress/internal/circular-progress-styles.css.map +1 -0
- package/progress/internal/{circular-progress-styles.css.js → circular-progress-styles.js} +7 -6
- package/progress/internal/circular-progress-styles.js.map +1 -0
- package/progress/internal/linear-progress-styles.css +1 -0
- package/progress/internal/linear-progress-styles.css.map +1 -0
- package/progress/internal/{linear-progress-styles.css.js → linear-progress-styles.js} +7 -6
- package/progress/internal/linear-progress-styles.js.map +1 -0
- package/progress/linear-progress.js +1 -1
- package/progress/linear-progress.js.map +1 -1
- package/radio/internal/radio-styles.css +1 -0
- package/radio/internal/radio-styles.css.map +1 -0
- package/radio/internal/{radio-styles.css.js → radio-styles.js} +7 -6
- package/radio/internal/radio-styles.js.map +1 -0
- package/radio/radio.js +1 -1
- package/radio/radio.js.map +1 -1
- package/ripple/internal/ripple-styles.css +1 -0
- package/ripple/internal/ripple-styles.css.map +1 -0
- package/ripple/internal/{ripple-styles.css.js → ripple-styles.js} +7 -6
- package/ripple/internal/ripple-styles.js.map +1 -0
- package/ripple/ripple.js +1 -1
- package/ripple/ripple.js.map +1 -1
- package/select/filled-select.js +2 -2
- package/select/filled-select.js.map +1 -1
- package/select/internal/filled-select-styles.css +1 -0
- package/select/internal/filled-select-styles.css.map +1 -0
- package/select/internal/{filled-select-styles.css.js → filled-select-styles.js} +7 -6
- package/select/internal/filled-select-styles.js.map +1 -0
- package/select/internal/outlined-select-styles.css +1 -0
- package/select/internal/outlined-select-styles.css.map +1 -0
- package/select/internal/{outlined-select-styles.css.js → outlined-select-styles.js} +7 -6
- package/select/internal/outlined-select-styles.js.map +1 -0
- package/select/internal/select.js +1 -1
- package/select/internal/select.js.map +1 -1
- package/select/internal/shared-styles.css +1 -0
- package/select/internal/shared-styles.css.map +1 -0
- package/select/internal/{shared-styles.css.js → shared-styles.js} +7 -6
- package/select/internal/shared-styles.js.map +1 -0
- package/select/outlined-select.js +2 -2
- package/select/outlined-select.js.map +1 -1
- package/select/select-option.js +1 -1
- package/select/select-option.js.map +1 -1
- package/slider/internal/_slider.scss +4 -4
- package/slider/internal/forced-colors-styles.css +1 -0
- package/slider/internal/forced-colors-styles.css.map +1 -0
- package/slider/internal/{forced-colors-styles.css.js → forced-colors-styles.js} +7 -6
- package/slider/internal/forced-colors-styles.js.map +1 -0
- package/slider/internal/slider-styles.css +1 -0
- package/slider/internal/slider-styles.css.map +1 -0
- package/slider/internal/slider-styles.js +10 -0
- package/slider/internal/slider-styles.js.map +1 -0
- package/slider/internal/slider.js +3 -1
- package/slider/internal/slider.js.map +1 -1
- package/slider/slider.js +2 -2
- package/slider/slider.js.map +1 -1
- package/switch/internal/switch-styles.css +1 -0
- package/switch/internal/switch-styles.css.map +1 -0
- package/switch/internal/{switch-styles.css.js → switch-styles.js} +7 -6
- package/switch/internal/switch-styles.js.map +1 -0
- package/switch/internal/switch.d.ts +1 -0
- package/switch/internal/switch.js +6 -1
- package/switch/internal/switch.js.map +1 -1
- package/switch/switch.js +1 -1
- package/switch/switch.js.map +1 -1
- package/tabs/internal/_tabs.scss +2 -0
- package/tabs/internal/primary-tab-styles.css +1 -0
- package/tabs/internal/primary-tab-styles.css.map +1 -0
- package/tabs/internal/{primary-tab-styles.css.js → primary-tab-styles.js} +7 -6
- package/tabs/internal/primary-tab-styles.js.map +1 -0
- package/tabs/internal/secondary-tab-styles.css +1 -0
- package/tabs/internal/secondary-tab-styles.css.map +1 -0
- package/tabs/internal/{secondary-tab-styles.css.js → secondary-tab-styles.js} +7 -6
- package/tabs/internal/secondary-tab-styles.js.map +1 -0
- package/tabs/internal/tab-styles.css +1 -0
- package/tabs/internal/tab-styles.css.map +1 -0
- package/tabs/internal/{tab-styles.css.js → tab-styles.js} +7 -6
- package/tabs/internal/tab-styles.js.map +1 -0
- package/tabs/internal/tab.d.ts +0 -1
- package/tabs/internal/tab.js +1 -2
- package/tabs/internal/tab.js.map +1 -1
- package/tabs/internal/tabs-styles.css +1 -0
- package/tabs/internal/tabs-styles.css.map +1 -0
- package/tabs/internal/tabs-styles.js +10 -0
- package/tabs/internal/tabs-styles.js.map +1 -0
- package/tabs/internal/tabs.js +5 -2
- package/tabs/internal/tabs.js.map +1 -1
- package/tabs/primary-tab.js +2 -2
- package/tabs/primary-tab.js.map +1 -1
- package/tabs/secondary-tab.js +2 -2
- package/tabs/secondary-tab.js.map +1 -1
- package/tabs/tabs.js +1 -1
- package/tabs/tabs.js.map +1 -1
- package/textfield/filled-text-field.js +2 -2
- package/textfield/filled-text-field.js.map +1 -1
- package/textfield/internal/_shared.scss +2 -0
- package/textfield/internal/filled-styles.css +1 -0
- package/textfield/internal/filled-styles.css.map +1 -0
- package/textfield/internal/{filled-styles.css.js → filled-styles.js} +7 -6
- package/textfield/internal/filled-styles.js.map +1 -0
- package/textfield/internal/outlined-styles.css +1 -0
- package/textfield/internal/outlined-styles.css.map +1 -0
- package/textfield/internal/{outlined-styles.css.js → outlined-styles.js} +7 -6
- package/textfield/internal/outlined-styles.js.map +1 -0
- package/textfield/internal/shared-styles.css +1 -0
- package/textfield/internal/shared-styles.css.map +1 -0
- package/textfield/internal/shared-styles.js +10 -0
- package/textfield/internal/shared-styles.js.map +1 -0
- package/textfield/outlined-text-field.js +2 -2
- package/textfield/outlined-text-field.js.map +1 -1
- package/tokens/_md-comp-filled-select.scss +0 -2
- package/tokens/_md-comp-linear-progress.scss +0 -2
- package/tokens/v0_192/index.test.css +1 -0
- package/tokens/v0_192/index.test.css.map +1 -0
- package/tokens/v0_192/lib.test.css +1 -0
- package/tokens/v0_192/lib.test.css.map +1 -0
- package/typography/_typescale.scss +109 -2
- package/typography/md-typescale-styles.css +1 -0
- package/typography/md-typescale-styles.css.map +1 -0
- package/typography/md-typescale-styles.js +10 -0
- package/typography/md-typescale-styles.js.map +1 -0
- package/typography/md-typescale-styles.scss +11 -0
- package/button/internal/elevated-styles.css.js.map +0 -1
- package/button/internal/filled-styles.css.js.map +0 -1
- package/button/internal/filled-tonal-styles.css.js.map +0 -1
- package/button/internal/outlined-styles.css.js.map +0 -1
- package/button/internal/shared-elevation-styles.css.js.map +0 -1
- package/button/internal/shared-styles.css.js +0 -9
- package/button/internal/shared-styles.css.js.map +0 -1
- package/button/internal/text-styles.css.js.map +0 -1
- package/checkbox/internal/checkbox-styles.css.js.map +0 -1
- package/chips/internal/chip-set-styles.css.js +0 -9
- package/chips/internal/chip-set-styles.css.js.map +0 -1
- package/chips/internal/elevated-styles.css.js.map +0 -1
- package/chips/internal/input-styles.css.js.map +0 -1
- package/chips/internal/selectable-styles.css.js.map +0 -1
- package/chips/internal/suggestion-styles.css.js.map +0 -1
- package/chips/internal/trailing-icon-styles.css.js.map +0 -1
- package/dialog/internal/dialog-styles.css.js.map +0 -1
- package/divider/internal/divider-styles.css.js.map +0 -1
- package/elevation/internal/elevation-styles.css.js +0 -9
- package/elevation/internal/elevation-styles.css.js.map +0 -1
- package/fab/internal/fab-branded-styles.css.js.map +0 -1
- package/fab/internal/fab-styles.css.js.map +0 -1
- package/fab/internal/forced-colors-styles.css.js.map +0 -1
- package/fab/internal/shared-styles.css.js +0 -9
- package/fab/internal/shared-styles.css.js.map +0 -1
- package/field/internal/outlined-styles.css.js.map +0 -1
- package/focus/internal/focus-ring-styles.css.js.map +0 -1
- package/icon/internal/icon-styles.css.js.map +0 -1
- package/iconbutton/internal/filled-styles.css.js.map +0 -1
- package/iconbutton/internal/filled-tonal-styles.css.js.map +0 -1
- package/iconbutton/internal/outlined-styles.css.js.map +0 -1
- package/iconbutton/internal/shared-styles.css.js.map +0 -1
- package/iconbutton/internal/standard-styles.css.js.map +0 -1
- package/labs/badge/internal/badge-styles.css.js.map +0 -1
- package/labs/card/internal/elevated-styles.css.js.map +0 -1
- package/labs/card/internal/filled-styles.css.js.map +0 -1
- package/labs/card/internal/outlined-styles.css.js.map +0 -1
- package/labs/card/internal/shared-styles.css.js.map +0 -1
- package/labs/item/internal/item-styles.css.js.map +0 -1
- package/labs/navigationbar/internal/navigation-bar-styles.css.js.map +0 -1
- package/labs/navigationdrawer/internal/navigation-drawer-modal-styles.css.js.map +0 -1
- package/labs/navigationdrawer/internal/navigation-drawer-styles.css.js.map +0 -1
- package/labs/navigationdrawer/internal/shared-styles.css.js.map +0 -1
- package/labs/navigationtab/internal/navigation-tab-styles.css.js.map +0 -1
- package/labs/segmentedbutton/internal/outlined-styles.css.js.map +0 -1
- package/labs/segmentedbutton/internal/shared-styles.css.js +0 -9
- package/labs/segmentedbutton/internal/shared-styles.css.js.map +0 -1
- package/labs/segmentedbuttonset/internal/outlined-styles.css.js.map +0 -1
- package/labs/segmentedbuttonset/internal/shared-styles.css.js.map +0 -1
- package/list/internal/list-styles.css.js.map +0 -1
- package/list/internal/listitem/list-item-styles.css.js.map +0 -1
- package/menu/internal/menu-styles.css.js.map +0 -1
- package/menu/internal/menuitem/menu-item-styles.css.js.map +0 -1
- package/menu/internal/submenu/sub-menu-styles.css.js +0 -9
- package/menu/internal/submenu/sub-menu-styles.css.js.map +0 -1
- package/progress/internal/circular-progress-styles.css.js.map +0 -1
- package/progress/internal/linear-progress-styles.css.js.map +0 -1
- package/radio/internal/radio-styles.css.js.map +0 -1
- package/ripple/internal/ripple-styles.css.js.map +0 -1
- package/select/internal/filled-select-styles.css.js.map +0 -1
- package/select/internal/outlined-select-styles.css.js.map +0 -1
- package/select/internal/shared-styles.css.js.map +0 -1
- package/slider/internal/forced-colors-styles.css.js.map +0 -1
- package/slider/internal/slider-styles.css.js +0 -9
- package/slider/internal/slider-styles.css.js.map +0 -1
- package/switch/internal/switch-styles.css.js.map +0 -1
- package/tabs/internal/primary-tab-styles.css.js.map +0 -1
- package/tabs/internal/secondary-tab-styles.css.js.map +0 -1
- package/tabs/internal/tab-styles.css.js.map +0 -1
- package/tabs/internal/tabs-styles.css.js +0 -9
- package/tabs/internal/tabs-styles.css.js.map +0 -1
- package/textfield/internal/filled-styles.css.js.map +0 -1
- package/textfield/internal/outlined-styles.css.js.map +0 -1
- package/textfield/internal/shared-styles.css.js +0 -9
- package/textfield/internal/shared-styles.css.js.map +0 -1
- package/tokens/v0_192/index.test.css.js +0 -9
- package/tokens/v0_192/index.test.css.js.map +0 -1
- package/tokens/v0_192/lib.test.css.d.ts +0 -1
- package/tokens/v0_192/lib.test.css.js +0 -9
- package/tokens/v0_192/lib.test.css.js.map +0 -1
- /package/button/internal/{elevated-styles.css.d.ts → elevated-styles.d.ts} +0 -0
- /package/button/internal/{filled-styles.css.d.ts → filled-styles.d.ts} +0 -0
- /package/button/internal/{filled-tonal-styles.css.d.ts → filled-tonal-styles.d.ts} +0 -0
- /package/button/internal/{outlined-styles.css.d.ts → outlined-styles.d.ts} +0 -0
- /package/button/internal/{shared-elevation-styles.css.d.ts → shared-elevation-styles.d.ts} +0 -0
- /package/button/internal/{shared-styles.css.d.ts → shared-styles.d.ts} +0 -0
- /package/button/internal/{text-styles.css.d.ts → text-styles.d.ts} +0 -0
- /package/checkbox/internal/{checkbox-styles.css.d.ts → checkbox-styles.d.ts} +0 -0
- /package/chips/internal/{assist-styles.css.d.ts → assist-styles.d.ts} +0 -0
- /package/chips/internal/{chip-set-styles.css.d.ts → chip-set-styles.d.ts} +0 -0
- /package/chips/internal/{elevated-styles.css.d.ts → elevated-styles.d.ts} +0 -0
- /package/chips/internal/{filter-styles.css.d.ts → filter-styles.d.ts} +0 -0
- /package/chips/internal/{input-styles.css.d.ts → input-styles.d.ts} +0 -0
- /package/chips/internal/{selectable-styles.css.d.ts → selectable-styles.d.ts} +0 -0
- /package/chips/internal/{shared-styles.css.d.ts → shared-styles.d.ts} +0 -0
- /package/chips/internal/{suggestion-styles.css.d.ts → suggestion-styles.d.ts} +0 -0
- /package/chips/internal/{trailing-icon-styles.css.d.ts → trailing-icon-styles.d.ts} +0 -0
- /package/dialog/internal/{dialog-styles.css.d.ts → dialog-styles.d.ts} +0 -0
- /package/divider/internal/{divider-styles.css.d.ts → divider-styles.d.ts} +0 -0
- /package/elevation/internal/{elevation-styles.css.d.ts → elevation-styles.d.ts} +0 -0
- /package/fab/internal/{fab-branded-styles.css.d.ts → fab-branded-styles.d.ts} +0 -0
- /package/fab/internal/{fab-styles.css.d.ts → fab-styles.d.ts} +0 -0
- /package/fab/internal/{forced-colors-styles.css.d.ts → forced-colors-styles.d.ts} +0 -0
- /package/fab/internal/{shared-styles.css.d.ts → shared-styles.d.ts} +0 -0
- /package/field/internal/{filled-styles.css.d.ts → filled-styles.d.ts} +0 -0
- /package/field/internal/{outlined-styles.css.d.ts → outlined-styles.d.ts} +0 -0
- /package/field/internal/{shared-styles.css.d.ts → shared-styles.d.ts} +0 -0
- /package/focus/internal/{focus-ring-styles.css.d.ts → focus-ring-styles.d.ts} +0 -0
- /package/icon/internal/{icon-styles.css.d.ts → icon-styles.d.ts} +0 -0
- /package/iconbutton/internal/{filled-styles.css.d.ts → filled-styles.d.ts} +0 -0
- /package/iconbutton/internal/{filled-tonal-styles.css.d.ts → filled-tonal-styles.d.ts} +0 -0
- /package/iconbutton/internal/{outlined-styles.css.d.ts → outlined-styles.d.ts} +0 -0
- /package/iconbutton/internal/{shared-styles.css.d.ts → shared-styles.d.ts} +0 -0
- /package/iconbutton/internal/{standard-styles.css.d.ts → standard-styles.d.ts} +0 -0
- /package/labs/badge/internal/{badge-styles.css.d.ts → badge-styles.d.ts} +0 -0
- /package/labs/card/internal/{elevated-styles.css.d.ts → elevated-styles.d.ts} +0 -0
- /package/labs/card/internal/{filled-styles.css.d.ts → filled-styles.d.ts} +0 -0
- /package/labs/card/internal/{outlined-styles.css.d.ts → outlined-styles.d.ts} +0 -0
- /package/labs/card/internal/{shared-styles.css.d.ts → shared-styles.d.ts} +0 -0
- /package/labs/item/internal/{item-styles.css.d.ts → item-styles.d.ts} +0 -0
- /package/labs/navigationbar/internal/{navigation-bar-styles.css.d.ts → navigation-bar-styles.d.ts} +0 -0
- /package/labs/navigationdrawer/internal/{navigation-drawer-modal-styles.css.d.ts → navigation-drawer-modal-styles.d.ts} +0 -0
- /package/labs/navigationdrawer/internal/{navigation-drawer-styles.css.d.ts → navigation-drawer-styles.d.ts} +0 -0
- /package/labs/navigationdrawer/internal/{shared-styles.css.d.ts → shared-styles.d.ts} +0 -0
- /package/labs/navigationtab/internal/{navigation-tab-styles.css.d.ts → navigation-tab-styles.d.ts} +0 -0
- /package/labs/segmentedbutton/internal/{outlined-styles.css.d.ts → outlined-styles.d.ts} +0 -0
- /package/labs/segmentedbutton/internal/{shared-styles.css.d.ts → shared-styles.d.ts} +0 -0
- /package/labs/segmentedbuttonset/internal/{outlined-styles.css.d.ts → outlined-styles.d.ts} +0 -0
- /package/labs/segmentedbuttonset/internal/{shared-styles.css.d.ts → shared-styles.d.ts} +0 -0
- /package/list/internal/{list-styles.css.d.ts → list-styles.d.ts} +0 -0
- /package/list/internal/listitem/{list-item-styles.css.d.ts → list-item-styles.d.ts} +0 -0
- /package/menu/internal/{menu-styles.css.d.ts → menu-styles.d.ts} +0 -0
- /package/menu/internal/menuitem/{menu-item-styles.css.d.ts → menu-item-styles.d.ts} +0 -0
- /package/menu/internal/submenu/{sub-menu-styles.css.d.ts → sub-menu-styles.d.ts} +0 -0
- /package/progress/internal/{circular-progress-styles.css.d.ts → circular-progress-styles.d.ts} +0 -0
- /package/progress/internal/{linear-progress-styles.css.d.ts → linear-progress-styles.d.ts} +0 -0
- /package/radio/internal/{radio-styles.css.d.ts → radio-styles.d.ts} +0 -0
- /package/ripple/internal/{ripple-styles.css.d.ts → ripple-styles.d.ts} +0 -0
- /package/select/internal/{filled-select-styles.css.d.ts → filled-select-styles.d.ts} +0 -0
- /package/select/internal/{outlined-select-styles.css.d.ts → outlined-select-styles.d.ts} +0 -0
- /package/select/internal/{shared-styles.css.d.ts → shared-styles.d.ts} +0 -0
- /package/slider/internal/{forced-colors-styles.css.d.ts → forced-colors-styles.d.ts} +0 -0
- /package/slider/internal/{slider-styles.css.d.ts → slider-styles.d.ts} +0 -0
- /package/switch/internal/{switch-styles.css.d.ts → switch-styles.d.ts} +0 -0
- /package/tabs/internal/{primary-tab-styles.css.d.ts → primary-tab-styles.d.ts} +0 -0
- /package/tabs/internal/{secondary-tab-styles.css.d.ts → secondary-tab-styles.d.ts} +0 -0
- /package/tabs/internal/{tab-styles.css.d.ts → tab-styles.d.ts} +0 -0
- /package/tabs/internal/{tabs-styles.css.d.ts → tabs-styles.d.ts} +0 -0
- /package/textfield/internal/{filled-styles.css.d.ts → filled-styles.d.ts} +0 -0
- /package/textfield/internal/{outlined-styles.css.d.ts → outlined-styles.d.ts} +0 -0
- /package/textfield/internal/{shared-styles.css.d.ts → shared-styles.d.ts} +0 -0
- /package/{tokens/v0_192/index.test.css.d.ts → typography/md-typescale-styles.d.ts} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"navigation-tab-styles.js","sourceRoot":"","sources":["navigation-tab-styles.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,oFAAoF;AACpF,OAAO,EAAC,GAAG,EAAC,MAAM,KAAK,CAAC;AACxB,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;CACxB,CAAC","sourcesContent":["/**\n * @license\n * Copyright 2024 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n// Generated stylesheet for ./labs/navigationtab/internal/navigation-tab-styles.css.\nimport {css} from 'lit';\nexport const styles = css`:host{--_active-indicator-color: var(--md-navigation-bar-active-indicator-color, var(--md-sys-color-secondary-container, #e8def8));--_active-indicator-height: var(--md-navigation-bar-active-indicator-height, 32px);--_active-indicator-shape: var(--md-navigation-bar-active-indicator-shape, var(--md-sys-shape-corner-full, 9999px));--_active-indicator-width: var(--md-navigation-bar-active-indicator-width, 64px);--_active-focus-icon-color: var(--md-navigation-bar-active-focus-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_active-focus-label-text-color: var(--md-navigation-bar-active-focus-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_active-focus-state-layer-color: var(--md-navigation-bar-active-focus-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--_active-hover-icon-color: var(--md-navigation-bar-active-hover-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_active-hover-label-text-color: var(--md-navigation-bar-active-hover-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_active-hover-state-layer-color: var(--md-navigation-bar-active-hover-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--_active-icon-color: var(--md-navigation-bar-active-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_active-label-text-color: var(--md-navigation-bar-active-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_active-label-text-weight: var(--md-navigation-bar-active-label-text-weight, var(--md-sys-typescale-label-medium-weight-prominent, var(--md-ref-typeface-weight-bold, 700)));--_active-pressed-icon-color: var(--md-navigation-bar-active-pressed-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_active-pressed-label-text-color: var(--md-navigation-bar-active-pressed-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_active-pressed-state-layer-color: var(--md-navigation-bar-active-pressed-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--_container-color: var(--md-navigation-bar-container-color, var(--md-sys-color-surface-container, #f3edf7));--_container-elevation: var(--md-navigation-bar-container-elevation, 2);--_container-height: var(--md-navigation-bar-container-height, 80px);--_container-shape: var(--md-navigation-bar-container-shape, var(--md-sys-shape-corner-none, 0px));--_focus-state-layer-opacity: var(--md-navigation-bar-focus-state-layer-opacity, 0.12);--_hover-state-layer-opacity: var(--md-navigation-bar-hover-state-layer-opacity, 0.08);--_icon-size: var(--md-navigation-bar-icon-size, 24px);--_inactive-focus-icon-color: var(--md-navigation-bar-inactive-focus-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_inactive-focus-label-text-color: var(--md-navigation-bar-inactive-focus-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_inactive-focus-state-layer-color: var(--md-navigation-bar-inactive-focus-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--_inactive-hover-icon-color: var(--md-navigation-bar-inactive-hover-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_inactive-hover-label-text-color: var(--md-navigation-bar-inactive-hover-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_inactive-hover-state-layer-color: var(--md-navigation-bar-inactive-hover-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--_inactive-icon-color: var(--md-navigation-bar-inactive-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_inactive-label-text-color: var(--md-navigation-bar-inactive-label-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_inactive-pressed-icon-color: var(--md-navigation-bar-inactive-pressed-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_inactive-pressed-label-text-color: var(--md-navigation-bar-inactive-pressed-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_inactive-pressed-state-layer-color: var(--md-navigation-bar-inactive-pressed-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--_label-text-font: var(--md-navigation-bar-label-text-font, var(--md-sys-typescale-label-medium-font, var(--md-ref-typeface-plain, Roboto)));--_label-text-line-height: var(--md-navigation-bar-label-text-line-height, var(--md-sys-typescale-label-medium-line-height, 1rem));--_label-text-size: var(--md-navigation-bar-label-text-size, var(--md-sys-typescale-label-medium-size, 0.75rem));--_label-text-tracking: var(--md-navigation-bar-label-text-tracking, );--_label-text-type: var(--md-navigation-bar-label-text-type, var(--md-sys-typescale-label-medium-weight, var(--md-ref-typeface-weight-medium, 500)) var(--md-sys-typescale-label-medium-size, 0.75rem) / var(--md-sys-typescale-label-medium-line-height, 1rem) var(--md-sys-typescale-label-medium-font, var(--md-ref-typeface-plain, Roboto)));--_label-text-weight: var(--md-navigation-bar-label-text-weight, var(--md-sys-typescale-label-medium-weight, var(--md-ref-typeface-weight-medium, 500)));--_pressed-state-layer-opacity: var(--md-navigation-bar-pressed-state-layer-opacity, 0.12);display:flex;flex-grow:1}md-focus-ring{--md-focus-ring-shape: var(--md-sys-shape-corner-small, 8px);--md-focus-ring-inward-offset: -1px}.md3-navigation-tab{align-items:center;appearance:none;background:none;border:none;box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;height:100%;justify-content:center;min-height:48px;min-width:48px;outline:none;padding:8px 0px 12px;position:relative;text-align:center;width:100%;font-family:var(--_label-text-font);font-size:var(--_label-text-size);line-height:var(--_label-text-line-height);font-weight:var(--_label-text-weight);text-transform:inherit}.md3-navigation-tab::-moz-focus-inner{border:0;padding:0}.md3-navigation-tab__icon-content{align-items:center;box-sizing:border-box;display:flex;justify-content:center;position:relative;z-index:1}.md3-navigation-tab__label-text{height:16px;margin-top:4px;opacity:1;transition:opacity 100ms cubic-bezier(0.4, 0, 0.2, 1),height 100ms cubic-bezier(0.4, 0, 0.2, 1);z-index:1}.md3-navigation-tab--hide-inactive-label:not(.md3-navigation-tab--active) .md3-navigation-tab__label-text{height:0;opacity:0}.md3-navigation-tab__active-indicator{display:flex;justify-content:center;opacity:0;position:absolute;transition:width 100ms cubic-bezier(0.4, 0, 0.2, 1),opacity 100ms cubic-bezier(0.4, 0, 0.2, 1);width:32px;background-color:var(--_active-indicator-color);border-radius:var(--_active-indicator-shape)}.md3-navigation-tab--active .md3-navigation-tab__active-indicator{opacity:1}.md3-navigation-tab__active-indicator,.md3-navigation-tab__icon-content{height:var(--_active-indicator-height)}.md3-navigation-tab--active .md3-navigation-tab__active-indicator,.md3-navigation-tab__icon-content{width:var(--_active-indicator-width)}.md3-navigation-tab__icon{fill:currentColor;align-self:center;display:inline-block;position:relative;width:var(--_icon-size);height:var(--_icon-size);font-size:var(--_icon-size)}.md3-navigation-tab__icon.md3-navigation-tab__icon--active{display:none}.md3-navigation-tab--active .md3-navigation-tab__icon{display:none}.md3-navigation-tab--active .md3-navigation-tab__icon.md3-navigation-tab__icon--active{display:inline-block}.md3-navigation-tab__ripple{z-index:0}.md3-navigation-tab--active{--md-ripple-hover-color: var(--_active-hover-state-layer-color);--md-ripple-pressed-color: var(--_active-pressed-state-layer-color);--md-ripple-hover-opacity: var(--_hover-state-layer-opacity);--md-ripple-pressed-opacity: var(--_pressed-state-layer-opacity)}.md3-navigation-tab--active .md3-navigation-tab__icon{color:var(--_active-icon-color)}.md3-navigation-tab--active .md3-navigation-tab__label-text{color:var(--_active-label-text-color)}.md3-navigation-tab--active:hover .md3-navigation-tab__icon{color:var(--_active-hover-icon-color)}.md3-navigation-tab--active:hover .md3-navigation-tab__label-text{color:var(--_active-hover-label-text-color)}.md3-navigation-tab--active:focus .md3-navigation-tab__icon{color:var(--_active-focus-icon-color)}.md3-navigation-tab--active:focus .md3-navigation-tab__label-text{color:var(--_active-focus-label-text-color)}.md3-navigation-tab--active:active .md3-navigation-tab__icon{color:var(--_active-pressed-icon-color)}.md3-navigation-tab--active:active .md3-navigation-tab__label-text{color:var(--_active-pressed-label-text-color)}.md3-navigation-tab:not(.md3-navigation-tab--active){--md-ripple-hover-color: var(--_inactive-hover-state-layer-color);--md-ripple-pressed-color: var(--_inactive-pressed-state-layer-color);--md-ripple-hover-opacity: var(--_hover-state-layer-opacity);--md-ripple-pressed-opacity: var(--_pressed-state-layer-opacity)}.md3-navigation-tab:not(.md3-navigation-tab--active) .md3-navigation-tab__icon{color:var(--_inactive-icon-color)}.md3-navigation-tab:not(.md3-navigation-tab--active) .md3-navigation-tab__label-text{color:var(--_inactive-label-text-color)}.md3-navigation-tab:not(.md3-navigation-tab--active):hover .md3-navigation-tab__icon{color:var(--_inactive-hover-icon-color)}.md3-navigation-tab:not(.md3-navigation-tab--active):hover .md3-navigation-tab__label-text{color:var(--_inactive-hover-label-text-color)}.md3-navigation-tab:not(.md3-navigation-tab--active):focus .md3-navigation-tab__icon{color:var(--_inactive-focus-icon-color)}.md3-navigation-tab:not(.md3-navigation-tab--active):focus .md3-navigation-tab__label-text{color:var(--_inactive-focus-label-text-color)}.md3-navigation-tab:not(.md3-navigation-tab--active):active .md3-navigation-tab__icon{color:var(--_inactive-pressed-icon-color)}.md3-navigation-tab:not(.md3-navigation-tab--active):active .md3-navigation-tab__label-text{color:var(--_inactive-pressed-label-text-color)}\n`;\n"]}
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
import { __decorate } from "tslib";
|
|
7
7
|
import { customElement } from 'lit/decorators.js';
|
|
8
8
|
import { NavigationTab } from './internal/navigation-tab.js';
|
|
9
|
-
import { styles } from './internal/navigation-tab-styles.
|
|
9
|
+
import { styles } from './internal/navigation-tab-styles.js';
|
|
10
10
|
/**
|
|
11
11
|
* @final
|
|
12
12
|
* @suppress {visibility}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"navigation-tab.js","sourceRoot":"","sources":["navigation-tab.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;AAGH,OAAO,EAAC,aAAa,EAAC,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAC,aAAa,EAAC,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAC,MAAM,EAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"navigation-tab.js","sourceRoot":"","sources":["navigation-tab.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;AAGH,OAAO,EAAC,aAAa,EAAC,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAC,aAAa,EAAC,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAC,MAAM,EAAC,MAAM,qCAAqC,CAAC;AAQ3D;;;GAGG;AAEI,WAAM,eAAe,GAArB,MAAM,eAAgB,SAAQ,aAAa;;AAChC,sBAAM,GAAwB,CAAC,MAAM,CAAC,AAAhC,CAAiC;AAD5C,eAAe;IAD3B,aAAa,CAAC,mBAAmB,CAAC;GACtB,eAAe,CAE3B","sourcesContent":["/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {CSSResultOrNative} from 'lit';\nimport {customElement} from 'lit/decorators.js';\n\nimport {NavigationTab} from './internal/navigation-tab.js';\nimport {styles} from './internal/navigation-tab-styles.js';\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'md-navigation-tab': MdNavigationTab;\n }\n}\n\n/**\n * @final\n * @suppress {visibility}\n */\n@customElement('md-navigation-tab')\nexport class MdNavigationTab extends NavigationTab {\n static override styles: CSSResultOrNative[] = [styles];\n}\n"]}
|
|
@@ -61,6 +61,8 @@
|
|
|
61
61
|
vertical-align: middle;
|
|
62
62
|
padding-inline-start: var(--_spacing-leading);
|
|
63
63
|
padding-inline-end: var(--_spacing-trailing);
|
|
64
|
+
// Override the user-agent text-transform: none of <button>
|
|
65
|
+
text-transform: inherit;
|
|
64
66
|
|
|
65
67
|
.md3-segmented-button__outline {
|
|
66
68
|
border-color: var(--_outline-color);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
:host{--_container-height: var(--md-outlined-segmented-button-container-height, 40px);--_disabled-icon-color: var(--md-outlined-segmented-button-disabled-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-label-text-color: var(--md-outlined-segmented-button-disabled-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-outline-color: var(--md-outlined-segmented-button-disabled-outline-color, var(--md-sys-color-on-surface, #1d1b20));--_hover-state-layer-opacity: var(--md-outlined-segmented-button-hover-state-layer-opacity, 0.08);--_label-text-font: var(--md-outlined-segmented-button-label-text-font, var(--md-sys-typescale-label-large-font, var(--md-ref-typeface-plain, Roboto)));--_label-text-line-height: var(--md-outlined-segmented-button-label-text-line-height, var(--md-sys-typescale-label-large-line-height, 1.25rem));--_label-text-size: var(--md-outlined-segmented-button-label-text-size, var(--md-sys-typescale-label-large-size, 0.875rem));--_label-text-weight: var(--md-outlined-segmented-button-label-text-weight, var(--md-sys-typescale-label-large-weight, var(--md-ref-typeface-weight-medium, 500)));--_outline-color: var(--md-outlined-segmented-button-outline-color, var(--md-sys-color-outline, #79747e));--_pressed-state-layer-opacity: var(--md-outlined-segmented-button-pressed-state-layer-opacity, 0.12);--_selected-container-color: var(--md-outlined-segmented-button-selected-container-color, var(--md-sys-color-secondary-container, #e8def8));--_selected-focus-icon-color: var(--md-outlined-segmented-button-selected-focus-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-focus-label-text-color: var(--md-outlined-segmented-button-selected-focus-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-hover-icon-color: var(--md-outlined-segmented-button-selected-hover-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-hover-label-text-color: var(--md-outlined-segmented-button-selected-hover-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-hover-state-layer-color: var(--md-outlined-segmented-button-selected-hover-state-layer-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-label-text-color: var(--md-outlined-segmented-button-selected-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-pressed-icon-color: var(--md-outlined-segmented-button-selected-pressed-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-pressed-label-text-color: var(--md-outlined-segmented-button-selected-pressed-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-pressed-state-layer-color: var(--md-outlined-segmented-button-selected-pressed-state-layer-color, var(--md-sys-color-on-secondary-container, #1d192b));--_shape: var(--md-outlined-segmented-button-shape, var(--md-sys-shape-corner-full, 9999px));--_unselected-focus-icon-color: var(--md-outlined-segmented-button-unselected-focus-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-focus-label-text-color: var(--md-outlined-segmented-button-unselected-focus-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-hover-icon-color: var(--md-outlined-segmented-button-unselected-hover-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-hover-label-text-color: var(--md-outlined-segmented-button-unselected-hover-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-hover-state-layer-color: var(--md-outlined-segmented-button-unselected-hover-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-label-text-color: var(--md-outlined-segmented-button-unselected-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-pressed-icon-color: var(--md-outlined-segmented-button-unselected-pressed-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-pressed-label-text-color: var(--md-outlined-segmented-button-unselected-pressed-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-pressed-state-layer-color: var(--md-outlined-segmented-button-unselected-pressed-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--_icon-size: var(--md-outlined-segmented-button-icon-size, 18px);--_selected-icon-color: var(--md-outlined-segmented-button-selected-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_unselected-icon-color: var(--md-outlined-segmented-button-unselected-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_shape-start-start: var(--md-outlined-segmented-button-shape-start-start, var(--md-sys-shape-corner-full, 9999px));--_shape-start-end: var(--md-outlined-segmented-button-shape-start-end, var(--md-sys-shape-corner-full, 9999px));--_shape-end-end: var(--md-outlined-segmented-button-shape-end-end, var(--md-sys-shape-corner-full, 9999px));--_shape-end-start: var(--md-outlined-segmented-button-shape-end-start, var(--md-sys-shape-corner-full, 9999px));--_spacing-leading: var(--md-outlined-segmented-button-spacing-leading, 12px);--_spacing-trailing: var(--md-outlined-segmented-button-spacing-trailing, 12px)}.md3-segmented-button__outline{border-radius:inherit;border-style:solid;border-width:1px;inset:0px -0.5px;pointer-events:none;position:absolute}/*# sourceMappingURL=outlined-styles.css.map */
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sourceRoot":"","sources":["_outlined-segmented-button.scss"],"names":[],"mappings":"AA0BE,MAEI,ulKAIJ,+BACE,sBACA,mBAEA,iBACA,iBACA,oBACA","file":"outlined-styles.css"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
/**
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2024 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
// Generated stylesheet for ./labs/segmentedbutton/internal/outlined-styles.css.
|
|
6
7
|
import { css } from 'lit';
|
|
7
|
-
export const styles = css `:host{--_container-height: var(--md-outlined-segmented-button-container-height, 40px);--_disabled-icon-color: var(--md-outlined-segmented-button-disabled-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-label-text-color: var(--md-outlined-segmented-button-disabled-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-outline-color: var(--md-outlined-segmented-button-disabled-outline-color, var(--md-sys-color-on-surface, #1d1b20));--_hover-state-layer-opacity: var(--md-outlined-segmented-button-hover-state-layer-opacity, 0.08);--_label-text-font: var(--md-outlined-segmented-button-label-text-font, var(--md-sys-typescale-label-large-font, var(--md-ref-typeface-plain, Roboto)));--_label-text-line-height: var(--md-outlined-segmented-button-label-text-line-height, var(--md-sys-typescale-label-large-line-height, 1.25rem));--_label-text-size: var(--md-outlined-segmented-button-label-text-size, var(--md-sys-typescale-label-large-size, 0.875rem));--_label-text-weight: var(--md-outlined-segmented-button-label-text-weight, var(--md-sys-typescale-label-large-weight, var(--md-ref-typeface-weight-medium, 500)));--_outline-color: var(--md-outlined-segmented-button-outline-color, var(--md-sys-color-outline, #79747e));--_pressed-state-layer-opacity: var(--md-outlined-segmented-button-pressed-state-layer-opacity, 0.12);--_selected-container-color: var(--md-outlined-segmented-button-selected-container-color, var(--md-sys-color-secondary-container, #e8def8));--_selected-focus-icon-color: var(--md-outlined-segmented-button-selected-focus-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-focus-label-text-color: var(--md-outlined-segmented-button-selected-focus-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-hover-icon-color: var(--md-outlined-segmented-button-selected-hover-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-hover-label-text-color: var(--md-outlined-segmented-button-selected-hover-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-hover-state-layer-color: var(--md-outlined-segmented-button-selected-hover-state-layer-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-label-text-color: var(--md-outlined-segmented-button-selected-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-pressed-icon-color: var(--md-outlined-segmented-button-selected-pressed-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-pressed-label-text-color: var(--md-outlined-segmented-button-selected-pressed-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-pressed-state-layer-color: var(--md-outlined-segmented-button-selected-pressed-state-layer-color, var(--md-sys-color-on-secondary-container, #1d192b));--_shape: var(--md-outlined-segmented-button-shape, var(--md-sys-shape-corner-full, 9999px));--_unselected-focus-icon-color: var(--md-outlined-segmented-button-unselected-focus-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-focus-label-text-color: var(--md-outlined-segmented-button-unselected-focus-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-hover-icon-color: var(--md-outlined-segmented-button-unselected-hover-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-hover-label-text-color: var(--md-outlined-segmented-button-unselected-hover-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-hover-state-layer-color: var(--md-outlined-segmented-button-unselected-hover-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-label-text-color: var(--md-outlined-segmented-button-unselected-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-pressed-icon-color: var(--md-outlined-segmented-button-unselected-pressed-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-pressed-label-text-color: var(--md-outlined-segmented-button-unselected-pressed-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-pressed-state-layer-color: var(--md-outlined-segmented-button-unselected-pressed-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--_icon-size: var(--md-outlined-segmented-button-icon-size, 18px);--_selected-icon-color: var(--md-outlined-segmented-button-selected-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_unselected-icon-color: var(--md-outlined-segmented-button-unselected-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_shape-start-start: var(--md-outlined-segmented-button-shape-start-start, var(--md-sys-shape-corner-full, 9999px));--_shape-start-end: var(--md-outlined-segmented-button-shape-start-end, var(--md-sys-shape-corner-full, 9999px));--_shape-end-end: var(--md-outlined-segmented-button-shape-end-end, var(--md-sys-shape-corner-full, 9999px));--_shape-end-start: var(--md-outlined-segmented-button-shape-end-start, var(--md-sys-shape-corner-full, 9999px));--_spacing-leading: var(--md-outlined-segmented-button-spacing-leading, 12px);--_spacing-trailing: var(--md-outlined-segmented-button-spacing-trailing, 12px)}.md3-segmented-button__outline{border-radius:inherit;border-style:solid;border-width:1px;inset:0px -0.5px;pointer-events:none;position:absolute}
|
|
8
|
+
export const styles = css `:host{--_container-height: var(--md-outlined-segmented-button-container-height, 40px);--_disabled-icon-color: var(--md-outlined-segmented-button-disabled-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-label-text-color: var(--md-outlined-segmented-button-disabled-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-outline-color: var(--md-outlined-segmented-button-disabled-outline-color, var(--md-sys-color-on-surface, #1d1b20));--_hover-state-layer-opacity: var(--md-outlined-segmented-button-hover-state-layer-opacity, 0.08);--_label-text-font: var(--md-outlined-segmented-button-label-text-font, var(--md-sys-typescale-label-large-font, var(--md-ref-typeface-plain, Roboto)));--_label-text-line-height: var(--md-outlined-segmented-button-label-text-line-height, var(--md-sys-typescale-label-large-line-height, 1.25rem));--_label-text-size: var(--md-outlined-segmented-button-label-text-size, var(--md-sys-typescale-label-large-size, 0.875rem));--_label-text-weight: var(--md-outlined-segmented-button-label-text-weight, var(--md-sys-typescale-label-large-weight, var(--md-ref-typeface-weight-medium, 500)));--_outline-color: var(--md-outlined-segmented-button-outline-color, var(--md-sys-color-outline, #79747e));--_pressed-state-layer-opacity: var(--md-outlined-segmented-button-pressed-state-layer-opacity, 0.12);--_selected-container-color: var(--md-outlined-segmented-button-selected-container-color, var(--md-sys-color-secondary-container, #e8def8));--_selected-focus-icon-color: var(--md-outlined-segmented-button-selected-focus-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-focus-label-text-color: var(--md-outlined-segmented-button-selected-focus-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-hover-icon-color: var(--md-outlined-segmented-button-selected-hover-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-hover-label-text-color: var(--md-outlined-segmented-button-selected-hover-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-hover-state-layer-color: var(--md-outlined-segmented-button-selected-hover-state-layer-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-label-text-color: var(--md-outlined-segmented-button-selected-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-pressed-icon-color: var(--md-outlined-segmented-button-selected-pressed-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-pressed-label-text-color: var(--md-outlined-segmented-button-selected-pressed-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-pressed-state-layer-color: var(--md-outlined-segmented-button-selected-pressed-state-layer-color, var(--md-sys-color-on-secondary-container, #1d192b));--_shape: var(--md-outlined-segmented-button-shape, var(--md-sys-shape-corner-full, 9999px));--_unselected-focus-icon-color: var(--md-outlined-segmented-button-unselected-focus-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-focus-label-text-color: var(--md-outlined-segmented-button-unselected-focus-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-hover-icon-color: var(--md-outlined-segmented-button-unselected-hover-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-hover-label-text-color: var(--md-outlined-segmented-button-unselected-hover-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-hover-state-layer-color: var(--md-outlined-segmented-button-unselected-hover-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-label-text-color: var(--md-outlined-segmented-button-unselected-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-pressed-icon-color: var(--md-outlined-segmented-button-unselected-pressed-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-pressed-label-text-color: var(--md-outlined-segmented-button-unselected-pressed-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-pressed-state-layer-color: var(--md-outlined-segmented-button-unselected-pressed-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--_icon-size: var(--md-outlined-segmented-button-icon-size, 18px);--_selected-icon-color: var(--md-outlined-segmented-button-selected-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_unselected-icon-color: var(--md-outlined-segmented-button-unselected-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_shape-start-start: var(--md-outlined-segmented-button-shape-start-start, var(--md-sys-shape-corner-full, 9999px));--_shape-start-end: var(--md-outlined-segmented-button-shape-start-end, var(--md-sys-shape-corner-full, 9999px));--_shape-end-end: var(--md-outlined-segmented-button-shape-end-end, var(--md-sys-shape-corner-full, 9999px));--_shape-end-start: var(--md-outlined-segmented-button-shape-end-start, var(--md-sys-shape-corner-full, 9999px));--_spacing-leading: var(--md-outlined-segmented-button-spacing-leading, 12px);--_spacing-trailing: var(--md-outlined-segmented-button-spacing-trailing, 12px)}.md3-segmented-button__outline{border-radius:inherit;border-style:solid;border-width:1px;inset:0px -0.5px;pointer-events:none;position:absolute}
|
|
8
9
|
`;
|
|
9
|
-
//# sourceMappingURL=outlined-styles.
|
|
10
|
+
//# sourceMappingURL=outlined-styles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"outlined-styles.js","sourceRoot":"","sources":["outlined-styles.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,gFAAgF;AAChF,OAAO,EAAC,GAAG,EAAC,MAAM,KAAK,CAAC;AACxB,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;CACxB,CAAC","sourcesContent":["/**\n * @license\n * Copyright 2024 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n// Generated stylesheet for ./labs/segmentedbutton/internal/outlined-styles.css.\nimport {css} from 'lit';\nexport const styles = css`:host{--_container-height: var(--md-outlined-segmented-button-container-height, 40px);--_disabled-icon-color: var(--md-outlined-segmented-button-disabled-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-label-text-color: var(--md-outlined-segmented-button-disabled-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-outline-color: var(--md-outlined-segmented-button-disabled-outline-color, var(--md-sys-color-on-surface, #1d1b20));--_hover-state-layer-opacity: var(--md-outlined-segmented-button-hover-state-layer-opacity, 0.08);--_label-text-font: var(--md-outlined-segmented-button-label-text-font, var(--md-sys-typescale-label-large-font, var(--md-ref-typeface-plain, Roboto)));--_label-text-line-height: var(--md-outlined-segmented-button-label-text-line-height, var(--md-sys-typescale-label-large-line-height, 1.25rem));--_label-text-size: var(--md-outlined-segmented-button-label-text-size, var(--md-sys-typescale-label-large-size, 0.875rem));--_label-text-weight: var(--md-outlined-segmented-button-label-text-weight, var(--md-sys-typescale-label-large-weight, var(--md-ref-typeface-weight-medium, 500)));--_outline-color: var(--md-outlined-segmented-button-outline-color, var(--md-sys-color-outline, #79747e));--_pressed-state-layer-opacity: var(--md-outlined-segmented-button-pressed-state-layer-opacity, 0.12);--_selected-container-color: var(--md-outlined-segmented-button-selected-container-color, var(--md-sys-color-secondary-container, #e8def8));--_selected-focus-icon-color: var(--md-outlined-segmented-button-selected-focus-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-focus-label-text-color: var(--md-outlined-segmented-button-selected-focus-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-hover-icon-color: var(--md-outlined-segmented-button-selected-hover-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-hover-label-text-color: var(--md-outlined-segmented-button-selected-hover-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-hover-state-layer-color: var(--md-outlined-segmented-button-selected-hover-state-layer-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-label-text-color: var(--md-outlined-segmented-button-selected-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-pressed-icon-color: var(--md-outlined-segmented-button-selected-pressed-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-pressed-label-text-color: var(--md-outlined-segmented-button-selected-pressed-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-pressed-state-layer-color: var(--md-outlined-segmented-button-selected-pressed-state-layer-color, var(--md-sys-color-on-secondary-container, #1d192b));--_shape: var(--md-outlined-segmented-button-shape, var(--md-sys-shape-corner-full, 9999px));--_unselected-focus-icon-color: var(--md-outlined-segmented-button-unselected-focus-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-focus-label-text-color: var(--md-outlined-segmented-button-unselected-focus-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-hover-icon-color: var(--md-outlined-segmented-button-unselected-hover-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-hover-label-text-color: var(--md-outlined-segmented-button-unselected-hover-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-hover-state-layer-color: var(--md-outlined-segmented-button-unselected-hover-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-label-text-color: var(--md-outlined-segmented-button-unselected-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-pressed-icon-color: var(--md-outlined-segmented-button-unselected-pressed-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-pressed-label-text-color: var(--md-outlined-segmented-button-unselected-pressed-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-pressed-state-layer-color: var(--md-outlined-segmented-button-unselected-pressed-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--_icon-size: var(--md-outlined-segmented-button-icon-size, 18px);--_selected-icon-color: var(--md-outlined-segmented-button-selected-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_unselected-icon-color: var(--md-outlined-segmented-button-unselected-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_shape-start-start: var(--md-outlined-segmented-button-shape-start-start, var(--md-sys-shape-corner-full, 9999px));--_shape-start-end: var(--md-outlined-segmented-button-shape-start-end, var(--md-sys-shape-corner-full, 9999px));--_shape-end-end: var(--md-outlined-segmented-button-shape-end-end, var(--md-sys-shape-corner-full, 9999px));--_shape-end-start: var(--md-outlined-segmented-button-shape-end-start, var(--md-sys-shape-corner-full, 9999px));--_spacing-leading: var(--md-outlined-segmented-button-spacing-leading, 12px);--_spacing-trailing: var(--md-outlined-segmented-button-spacing-trailing, 12px)}.md3-segmented-button__outline{border-radius:inherit;border-style:solid;border-width:1px;inset:0px -0.5px;pointer-events:none;position:absolute}\n`;\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@keyframes md3-segmented-button-checkmark-selection-draw-in{from{stroke-dashoffset:29.7833385}to{stroke-dashoffset:0}}@keyframes md3-segmented-button-simple-fade-out{from{opacity:1}to{opacity:0}}@keyframes md3-segmented-button-simple-fade-in{from{opacity:0}to{opacity:1}}:host{display:inline-flex;outline:none;-webkit-tap-highlight-color:rgba(0,0,0,0)}.md3-segmented-button{align-items:center;background:rgba(0,0,0,0);border:none;border-radius:inherit;display:flex;flex:1;justify-content:center;outline:none;position:relative;vertical-align:middle;padding-inline-start:var(--_spacing-leading);padding-inline-end:var(--_spacing-trailing);text-transform:inherit}.md3-segmented-button .md3-segmented-button__outline{border-color:var(--_outline-color)}.md3-segmented-button:disabled .md3-segmented-button__outline{border-color:var(--_disabled-outline-color)}.md3-segmented-button .md3-segmented-button__graphic,.md3-segmented-button .md3-segmented-button__checkmark,.md3-segmented-button .md3-segmented-button__icon,.md3-segmented-button .md3-segmented-button__icon ::slotted([slot=icon]){height:var(--_icon-size);width:var(--_icon-size);font-size:var(--_icon-size)}.md3-segmented-button.md3-segmented-button--with-icon.md3-segmented-button--with-label .md3-segmented-button__graphic,.md3-segmented-button.md3-segmented-button--selected.md3-segmented-button--with-label.md3-segmented-button--with-checkmark .md3-segmented-button__graphic,.md3-segmented-button.md3-segmented-button--selected.md3-segmented-button--without-label.md3-segmented-button--with-checkmark .md3-segmented-button__graphic{width:calc(var(--_icon-size) + 8px)}.md3-segmented-button .md3-segmented-button__label-text{font-family:var(--_label-text-font);font-size:var(--_label-text-size);line-height:var(--_label-text-line-height);font-weight:var(--_label-text-weight)}.md3-segmented-button.md3-segmented-button--selected:enabled .md3-segmented-button__label-text{color:var(--_selected-label-text-color)}.md3-segmented-button.md3-segmented-button--selected:enabled:hover .md3-segmented-button__label-text{color:var(--_selected-hover-label-text-color)}.md3-segmented-button.md3-segmented-button--selected:enabled:focus .md3-segmented-button__label-text{color:var(--_selected-focus-label-text-color)}.md3-segmented-button.md3-segmented-button--selected:enabled:active .md3-segmented-button__label-text{color:var(--_selected-pressed-label-text-color)}.md3-segmented-button.md3-segmented-button--unselected:enabled .md3-segmented-button__label-text{color:var(--_unselected-label-text-color)}.md3-segmented-button.md3-segmented-button--unselected:enabled:hover .md3-segmented-button__label-text{color:var(--_unselected-hover-label-text-color)}.md3-segmented-button.md3-segmented-button--unselected:enabled:focus .md3-segmented-button__label-text{color:var(--_unselected-focus-label-text-color)}.md3-segmented-button.md3-segmented-button--unselected:enabled:active .md3-segmented-button__label-text{color:var(--_unselected-pressed-label-text-color)}.md3-segmented-button:disabled .md3-segmented-button__label-text{color:var(--_disabled-label-text-color)}.md3-segmented-button--unselected{--md-ripple-hover-color: var(--_unselected-hover-state-layer-color);--md-ripple-hover-opacity: var(--_hover-state-layer-opacity);--md-ripple-pressed-color: var(--_unselected-pressed-state-layer-color);--md-ripple-pressed-opacity: var(--_pressed-state-layer-opacity)}.md3-segmented-button--unselected .md3-segmented-button__icon{color:var(--_unselected-icon-color)}.md3-segmented-button--unselected:hover .md3-segmented-button__icon{color:var(--_unselected-hover-icon-color)}.md3-segmented-button--unselected:focus .md3-segmented-button__icon{color:var(--_unselected-focus-icon-color)}.md3-segmented-button--unselected:active .md3-segmented-button__icon{color:var(--_unselected-pressed-icon-color)}.md3-segmented-button--unselected:disabled .md3-segmented-button__icon{color:var(--_disabled-icon-color)}.md3-segmented-button--selected{background-color:var(--_selected-container-color);--md-ripple-hover-color: var(--_selected-hover-state-layer-color);--md-ripple-hover-opacity: var(--_hover-state-layer-opacity);--md-ripple-pressed-color: var(--_selected-pressed-state-layer-color);--md-ripple-pressed-opacity: var(--_pressed-state-layer-opacity)}.md3-segmented-button--selected .md3-segmented-button__icon{color:var(--_selected-icon-color)}.md3-segmented-button--selected .md3-segmented-button__checkmark-path{stroke:var(--_selected-icon-color)}.md3-segmented-button--selected:hover .md3-segmented-button__checkmark-path{stroke:var(--_selected-hover-icon-color)}.md3-segmented-button--selected:focus .md3-segmented-button__checkmark-path{stroke:var(--_selected-focus-icon-color)}.md3-segmented-button--selected:active .md3-segmented-button__checkmark-path{stroke:var(--_selected-pressed-icon-color)}.md3-segmented-button--selected:disabled .md3-segmented-button__checkmark-path{stroke:var(--_disabled-icon-color)}.md3-segmented-button:enabled{cursor:pointer}.md3-segmented-button__focus-ring{z-index:1}.md3-segmented-button__ripple{border-radius:inherit;z-index:0}.md3-segmented-button__touch{position:absolute;top:50%;height:48px;left:50%;width:100%;transform:translate(-50%, -50%)}.md3-segmented-button__leading,.md3-segmented-button__graphic{display:inline-flex;justify-content:flex-start;align-items:center}.md3-segmented-button__graphic{position:relative;overflow:hidden}.md3-segmented-button__graphic{transition:width 150ms cubic-bezier(0.4, 0, 0.2, 1)}.md3-segmented-button--unselected.md3-segmented-button--with-label .md3-segmented-button__graphic,.md3-segmented-button--unselected.md3-segmented-button--without-label .md3-segmented-button__graphic,.md3-segmented-button--selected.md3-segmented-button--without-checkmark .md3-segmented-button__graphic{width:0}.md3-segmented-button--unselected .md3-segmented-button__checkmark{opacity:0}.md3-segmented-button--selected.md3-segmented-button--with-label .md3-segmented-button__icon{opacity:0}.md3-segmented-button--with-label .md3-segmented-button__checkmark{display:inline-flex;position:absolute}.md3-segmented-button__checkmark-path{stroke-width:2px;stroke-dasharray:29.7833385}.md3-segmented-button--selecting .md3-segmented-button__checkmark-path{stroke-dashoffset:29.7833385;animation:md3-segmented-button-checkmark-selection-draw-in;animation-duration:150ms;animation-delay:50ms;animation-fill-mode:forwards;animation-timing-function:cubic-bezier(0.4, 0, 0.2, 1)}.md3-segmented-button--selecting.md3-segmented-button--with-label .md3-segmented-button__icon{animation:md3-segmented-button-simple-fade-out;animation-duration:75ms;animation-timing-function:linear;animation-fill-mode:forwards}.md3-segmented-button--deselecting .md3-segmented-button__checkmark{animation:md3-segmented-button-simple-fade-out;animation-duration:50ms;animation-timing-function:linear;animation-fill-mode:forwards}.md3-segmented-button--deselecting.md3-segmented-button--with-label .md3-segmented-button__icon{opacity:0;animation:md3-segmented-button-simple-fade-in;animation-delay:50ms;animation-duration:150ms;animation-timing-function:linear;animation-fill-mode:forwards}/*# sourceMappingURL=shared-styles.css.map */
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sourceRoot":"","sources":["_shared.scss","../../../ripple/internal/_ripple.scss","../../../internal/motion/_animation.scss"],"names":[],"mappings":"AAiBE,4DACE,KACE,6BAEF,GACE,qBAIJ,gDACE,KACE,UAEF,GACE,WAIJ,+CACE,KACE,UAEF,GACE,WAIJ,MACE,oBACA,aACA,0CAGF,sBACE,mBACA,yBACA,YACA,sBACA,aACA,OACA,uBACA,aACA,kBACA,sBACA,6CACA,4CAEA,uBAEA,qDACE,mCAGF,8DACE,4CAGF,uOAIE,yBACA,wBACA,4BAqBA,6aAEE,oCAIJ,wDACE,oCACA,kCACA,2CACA,sCAIA,+FACE,wCAIA,qGACE,8CAKF,qGACE,8CAKF,sGACE,gDAMJ,iGACE,0CAIA,uGACE,gDAKF,uGACE,gDAKF,wGACE,kDAMJ,iEACE,wCAKN,kCCpJI,0QDqJF,8DACE,oCAIA,oEACE,0CAKF,oEACE,0CAKF,qEACE,4CAKF,uEACE,kCAcN,gCACE,kDC5LE,sQD8LF,4DACE,kCAGF,sEACE,mCAIA,4EACE,yCAKF,4EACE,yCAKF,6EACE,2CAKF,+EACE,mCAcN,8BACE,eAGF,kCACE,UAGF,8BACE,sBACA,UAGF,6BACE,kBACA,QACA,YACA,SACA,WACA,gCAGF,8DAEE,oBACA,2BACA,mBAGF,+BACE,kBACA,gBAGF,+BACE,oDAMA,8SACE,QAIJ,mEACE,UAIA,6FACE,UAIJ,mEACE,oBACA,kBAGF,sCACE,iBACA,4BAIA,uEAKE,6BACA,2DACA,yBACA,qBACA,6BACA,0BErUY,6BFuUd,8FACE,+CACA,wBACA,iCACA,6BAKF,oEACE,+CACA,wBACA,iCACA,6BAEF,gGAKE,UACA,8CACA,qBACA,yBACA,iCACA","file":"shared-styles.css"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2024 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
// Generated stylesheet for ./labs/segmentedbutton/internal/shared-styles.css.
|
|
7
|
+
import { css } from 'lit';
|
|
8
|
+
export const styles = css `@keyframes md3-segmented-button-checkmark-selection-draw-in{from{stroke-dashoffset:29.7833385}to{stroke-dashoffset:0}}@keyframes md3-segmented-button-simple-fade-out{from{opacity:1}to{opacity:0}}@keyframes md3-segmented-button-simple-fade-in{from{opacity:0}to{opacity:1}}:host{display:inline-flex;outline:none;-webkit-tap-highlight-color:rgba(0,0,0,0)}.md3-segmented-button{align-items:center;background:rgba(0,0,0,0);border:none;border-radius:inherit;display:flex;flex:1;justify-content:center;outline:none;position:relative;vertical-align:middle;padding-inline-start:var(--_spacing-leading);padding-inline-end:var(--_spacing-trailing);text-transform:inherit}.md3-segmented-button .md3-segmented-button__outline{border-color:var(--_outline-color)}.md3-segmented-button:disabled .md3-segmented-button__outline{border-color:var(--_disabled-outline-color)}.md3-segmented-button .md3-segmented-button__graphic,.md3-segmented-button .md3-segmented-button__checkmark,.md3-segmented-button .md3-segmented-button__icon,.md3-segmented-button .md3-segmented-button__icon ::slotted([slot=icon]){height:var(--_icon-size);width:var(--_icon-size);font-size:var(--_icon-size)}.md3-segmented-button.md3-segmented-button--with-icon.md3-segmented-button--with-label .md3-segmented-button__graphic,.md3-segmented-button.md3-segmented-button--selected.md3-segmented-button--with-label.md3-segmented-button--with-checkmark .md3-segmented-button__graphic,.md3-segmented-button.md3-segmented-button--selected.md3-segmented-button--without-label.md3-segmented-button--with-checkmark .md3-segmented-button__graphic{width:calc(var(--_icon-size) + 8px)}.md3-segmented-button .md3-segmented-button__label-text{font-family:var(--_label-text-font);font-size:var(--_label-text-size);line-height:var(--_label-text-line-height);font-weight:var(--_label-text-weight)}.md3-segmented-button.md3-segmented-button--selected:enabled .md3-segmented-button__label-text{color:var(--_selected-label-text-color)}.md3-segmented-button.md3-segmented-button--selected:enabled:hover .md3-segmented-button__label-text{color:var(--_selected-hover-label-text-color)}.md3-segmented-button.md3-segmented-button--selected:enabled:focus .md3-segmented-button__label-text{color:var(--_selected-focus-label-text-color)}.md3-segmented-button.md3-segmented-button--selected:enabled:active .md3-segmented-button__label-text{color:var(--_selected-pressed-label-text-color)}.md3-segmented-button.md3-segmented-button--unselected:enabled .md3-segmented-button__label-text{color:var(--_unselected-label-text-color)}.md3-segmented-button.md3-segmented-button--unselected:enabled:hover .md3-segmented-button__label-text{color:var(--_unselected-hover-label-text-color)}.md3-segmented-button.md3-segmented-button--unselected:enabled:focus .md3-segmented-button__label-text{color:var(--_unselected-focus-label-text-color)}.md3-segmented-button.md3-segmented-button--unselected:enabled:active .md3-segmented-button__label-text{color:var(--_unselected-pressed-label-text-color)}.md3-segmented-button:disabled .md3-segmented-button__label-text{color:var(--_disabled-label-text-color)}.md3-segmented-button--unselected{--md-ripple-hover-color: var(--_unselected-hover-state-layer-color);--md-ripple-hover-opacity: var(--_hover-state-layer-opacity);--md-ripple-pressed-color: var(--_unselected-pressed-state-layer-color);--md-ripple-pressed-opacity: var(--_pressed-state-layer-opacity)}.md3-segmented-button--unselected .md3-segmented-button__icon{color:var(--_unselected-icon-color)}.md3-segmented-button--unselected:hover .md3-segmented-button__icon{color:var(--_unselected-hover-icon-color)}.md3-segmented-button--unselected:focus .md3-segmented-button__icon{color:var(--_unselected-focus-icon-color)}.md3-segmented-button--unselected:active .md3-segmented-button__icon{color:var(--_unselected-pressed-icon-color)}.md3-segmented-button--unselected:disabled .md3-segmented-button__icon{color:var(--_disabled-icon-color)}.md3-segmented-button--selected{background-color:var(--_selected-container-color);--md-ripple-hover-color: var(--_selected-hover-state-layer-color);--md-ripple-hover-opacity: var(--_hover-state-layer-opacity);--md-ripple-pressed-color: var(--_selected-pressed-state-layer-color);--md-ripple-pressed-opacity: var(--_pressed-state-layer-opacity)}.md3-segmented-button--selected .md3-segmented-button__icon{color:var(--_selected-icon-color)}.md3-segmented-button--selected .md3-segmented-button__checkmark-path{stroke:var(--_selected-icon-color)}.md3-segmented-button--selected:hover .md3-segmented-button__checkmark-path{stroke:var(--_selected-hover-icon-color)}.md3-segmented-button--selected:focus .md3-segmented-button__checkmark-path{stroke:var(--_selected-focus-icon-color)}.md3-segmented-button--selected:active .md3-segmented-button__checkmark-path{stroke:var(--_selected-pressed-icon-color)}.md3-segmented-button--selected:disabled .md3-segmented-button__checkmark-path{stroke:var(--_disabled-icon-color)}.md3-segmented-button:enabled{cursor:pointer}.md3-segmented-button__focus-ring{z-index:1}.md3-segmented-button__ripple{border-radius:inherit;z-index:0}.md3-segmented-button__touch{position:absolute;top:50%;height:48px;left:50%;width:100%;transform:translate(-50%, -50%)}.md3-segmented-button__leading,.md3-segmented-button__graphic{display:inline-flex;justify-content:flex-start;align-items:center}.md3-segmented-button__graphic{position:relative;overflow:hidden}.md3-segmented-button__graphic{transition:width 150ms cubic-bezier(0.4, 0, 0.2, 1)}.md3-segmented-button--unselected.md3-segmented-button--with-label .md3-segmented-button__graphic,.md3-segmented-button--unselected.md3-segmented-button--without-label .md3-segmented-button__graphic,.md3-segmented-button--selected.md3-segmented-button--without-checkmark .md3-segmented-button__graphic{width:0}.md3-segmented-button--unselected .md3-segmented-button__checkmark{opacity:0}.md3-segmented-button--selected.md3-segmented-button--with-label .md3-segmented-button__icon{opacity:0}.md3-segmented-button--with-label .md3-segmented-button__checkmark{display:inline-flex;position:absolute}.md3-segmented-button__checkmark-path{stroke-width:2px;stroke-dasharray:29.7833385}.md3-segmented-button--selecting .md3-segmented-button__checkmark-path{stroke-dashoffset:29.7833385;animation:md3-segmented-button-checkmark-selection-draw-in;animation-duration:150ms;animation-delay:50ms;animation-fill-mode:forwards;animation-timing-function:cubic-bezier(0.4, 0, 0.2, 1)}.md3-segmented-button--selecting.md3-segmented-button--with-label .md3-segmented-button__icon{animation:md3-segmented-button-simple-fade-out;animation-duration:75ms;animation-timing-function:linear;animation-fill-mode:forwards}.md3-segmented-button--deselecting .md3-segmented-button__checkmark{animation:md3-segmented-button-simple-fade-out;animation-duration:50ms;animation-timing-function:linear;animation-fill-mode:forwards}.md3-segmented-button--deselecting.md3-segmented-button--with-label .md3-segmented-button__icon{opacity:0;animation:md3-segmented-button-simple-fade-in;animation-delay:50ms;animation-duration:150ms;animation-timing-function:linear;animation-fill-mode:forwards}
|
|
9
|
+
`;
|
|
10
|
+
//# sourceMappingURL=shared-styles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shared-styles.js","sourceRoot":"","sources":["shared-styles.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,8EAA8E;AAC9E,OAAO,EAAC,GAAG,EAAC,MAAM,KAAK,CAAC;AACxB,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;CACxB,CAAC","sourcesContent":["/**\n * @license\n * Copyright 2024 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n// Generated stylesheet for ./labs/segmentedbutton/internal/shared-styles.css.\nimport {css} from 'lit';\nexport const styles = css`@keyframes md3-segmented-button-checkmark-selection-draw-in{from{stroke-dashoffset:29.7833385}to{stroke-dashoffset:0}}@keyframes md3-segmented-button-simple-fade-out{from{opacity:1}to{opacity:0}}@keyframes md3-segmented-button-simple-fade-in{from{opacity:0}to{opacity:1}}:host{display:inline-flex;outline:none;-webkit-tap-highlight-color:rgba(0,0,0,0)}.md3-segmented-button{align-items:center;background:rgba(0,0,0,0);border:none;border-radius:inherit;display:flex;flex:1;justify-content:center;outline:none;position:relative;vertical-align:middle;padding-inline-start:var(--_spacing-leading);padding-inline-end:var(--_spacing-trailing);text-transform:inherit}.md3-segmented-button .md3-segmented-button__outline{border-color:var(--_outline-color)}.md3-segmented-button:disabled .md3-segmented-button__outline{border-color:var(--_disabled-outline-color)}.md3-segmented-button .md3-segmented-button__graphic,.md3-segmented-button .md3-segmented-button__checkmark,.md3-segmented-button .md3-segmented-button__icon,.md3-segmented-button .md3-segmented-button__icon ::slotted([slot=icon]){height:var(--_icon-size);width:var(--_icon-size);font-size:var(--_icon-size)}.md3-segmented-button.md3-segmented-button--with-icon.md3-segmented-button--with-label .md3-segmented-button__graphic,.md3-segmented-button.md3-segmented-button--selected.md3-segmented-button--with-label.md3-segmented-button--with-checkmark .md3-segmented-button__graphic,.md3-segmented-button.md3-segmented-button--selected.md3-segmented-button--without-label.md3-segmented-button--with-checkmark .md3-segmented-button__graphic{width:calc(var(--_icon-size) + 8px)}.md3-segmented-button .md3-segmented-button__label-text{font-family:var(--_label-text-font);font-size:var(--_label-text-size);line-height:var(--_label-text-line-height);font-weight:var(--_label-text-weight)}.md3-segmented-button.md3-segmented-button--selected:enabled .md3-segmented-button__label-text{color:var(--_selected-label-text-color)}.md3-segmented-button.md3-segmented-button--selected:enabled:hover .md3-segmented-button__label-text{color:var(--_selected-hover-label-text-color)}.md3-segmented-button.md3-segmented-button--selected:enabled:focus .md3-segmented-button__label-text{color:var(--_selected-focus-label-text-color)}.md3-segmented-button.md3-segmented-button--selected:enabled:active .md3-segmented-button__label-text{color:var(--_selected-pressed-label-text-color)}.md3-segmented-button.md3-segmented-button--unselected:enabled .md3-segmented-button__label-text{color:var(--_unselected-label-text-color)}.md3-segmented-button.md3-segmented-button--unselected:enabled:hover .md3-segmented-button__label-text{color:var(--_unselected-hover-label-text-color)}.md3-segmented-button.md3-segmented-button--unselected:enabled:focus .md3-segmented-button__label-text{color:var(--_unselected-focus-label-text-color)}.md3-segmented-button.md3-segmented-button--unselected:enabled:active .md3-segmented-button__label-text{color:var(--_unselected-pressed-label-text-color)}.md3-segmented-button:disabled .md3-segmented-button__label-text{color:var(--_disabled-label-text-color)}.md3-segmented-button--unselected{--md-ripple-hover-color: var(--_unselected-hover-state-layer-color);--md-ripple-hover-opacity: var(--_hover-state-layer-opacity);--md-ripple-pressed-color: var(--_unselected-pressed-state-layer-color);--md-ripple-pressed-opacity: var(--_pressed-state-layer-opacity)}.md3-segmented-button--unselected .md3-segmented-button__icon{color:var(--_unselected-icon-color)}.md3-segmented-button--unselected:hover .md3-segmented-button__icon{color:var(--_unselected-hover-icon-color)}.md3-segmented-button--unselected:focus .md3-segmented-button__icon{color:var(--_unselected-focus-icon-color)}.md3-segmented-button--unselected:active .md3-segmented-button__icon{color:var(--_unselected-pressed-icon-color)}.md3-segmented-button--unselected:disabled .md3-segmented-button__icon{color:var(--_disabled-icon-color)}.md3-segmented-button--selected{background-color:var(--_selected-container-color);--md-ripple-hover-color: var(--_selected-hover-state-layer-color);--md-ripple-hover-opacity: var(--_hover-state-layer-opacity);--md-ripple-pressed-color: var(--_selected-pressed-state-layer-color);--md-ripple-pressed-opacity: var(--_pressed-state-layer-opacity)}.md3-segmented-button--selected .md3-segmented-button__icon{color:var(--_selected-icon-color)}.md3-segmented-button--selected .md3-segmented-button__checkmark-path{stroke:var(--_selected-icon-color)}.md3-segmented-button--selected:hover .md3-segmented-button__checkmark-path{stroke:var(--_selected-hover-icon-color)}.md3-segmented-button--selected:focus .md3-segmented-button__checkmark-path{stroke:var(--_selected-focus-icon-color)}.md3-segmented-button--selected:active .md3-segmented-button__checkmark-path{stroke:var(--_selected-pressed-icon-color)}.md3-segmented-button--selected:disabled .md3-segmented-button__checkmark-path{stroke:var(--_disabled-icon-color)}.md3-segmented-button:enabled{cursor:pointer}.md3-segmented-button__focus-ring{z-index:1}.md3-segmented-button__ripple{border-radius:inherit;z-index:0}.md3-segmented-button__touch{position:absolute;top:50%;height:48px;left:50%;width:100%;transform:translate(-50%, -50%)}.md3-segmented-button__leading,.md3-segmented-button__graphic{display:inline-flex;justify-content:flex-start;align-items:center}.md3-segmented-button__graphic{position:relative;overflow:hidden}.md3-segmented-button__graphic{transition:width 150ms cubic-bezier(0.4, 0, 0.2, 1)}.md3-segmented-button--unselected.md3-segmented-button--with-label .md3-segmented-button__graphic,.md3-segmented-button--unselected.md3-segmented-button--without-label .md3-segmented-button__graphic,.md3-segmented-button--selected.md3-segmented-button--without-checkmark .md3-segmented-button__graphic{width:0}.md3-segmented-button--unselected .md3-segmented-button__checkmark{opacity:0}.md3-segmented-button--selected.md3-segmented-button--with-label .md3-segmented-button__icon{opacity:0}.md3-segmented-button--with-label .md3-segmented-button__checkmark{display:inline-flex;position:absolute}.md3-segmented-button__checkmark-path{stroke-width:2px;stroke-dasharray:29.7833385}.md3-segmented-button--selecting .md3-segmented-button__checkmark-path{stroke-dashoffset:29.7833385;animation:md3-segmented-button-checkmark-selection-draw-in;animation-duration:150ms;animation-delay:50ms;animation-fill-mode:forwards;animation-timing-function:cubic-bezier(0.4, 0, 0.2, 1)}.md3-segmented-button--selecting.md3-segmented-button--with-label .md3-segmented-button__icon{animation:md3-segmented-button-simple-fade-out;animation-duration:75ms;animation-timing-function:linear;animation-fill-mode:forwards}.md3-segmented-button--deselecting .md3-segmented-button__checkmark{animation:md3-segmented-button-simple-fade-out;animation-duration:50ms;animation-timing-function:linear;animation-fill-mode:forwards}.md3-segmented-button--deselecting.md3-segmented-button--with-label .md3-segmented-button__icon{opacity:0;animation:md3-segmented-button-simple-fade-in;animation-delay:50ms;animation-duration:150ms;animation-timing-function:linear;animation-fill-mode:forwards}\n`;\n"]}
|
|
@@ -6,8 +6,8 @@
|
|
|
6
6
|
import { __decorate } from "tslib";
|
|
7
7
|
import { customElement } from 'lit/decorators.js';
|
|
8
8
|
import { OutlinedSegmentedButton } from './internal/outlined-segmented-button.js';
|
|
9
|
-
import { styles as outlinedStyles } from './internal/outlined-styles.
|
|
10
|
-
import { styles as sharedStyles } from './internal/shared-styles.
|
|
9
|
+
import { styles as outlinedStyles } from './internal/outlined-styles.js';
|
|
10
|
+
import { styles as sharedStyles } from './internal/shared-styles.js';
|
|
11
11
|
/**
|
|
12
12
|
* MdOutlinedSegmentedButton is the custom element for the Material
|
|
13
13
|
* Design outlined segmented button component.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"outlined-segmented-button.js","sourceRoot":"","sources":["outlined-segmented-button.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;AAGH,OAAO,EAAC,aAAa,EAAC,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAC,uBAAuB,EAAC,MAAM,yCAAyC,CAAC;AAChF,OAAO,EAAC,MAAM,IAAI,cAAc,EAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"outlined-segmented-button.js","sourceRoot":"","sources":["outlined-segmented-button.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;AAGH,OAAO,EAAC,aAAa,EAAC,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAC,uBAAuB,EAAC,MAAM,yCAAyC,CAAC;AAChF,OAAO,EAAC,MAAM,IAAI,cAAc,EAAC,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAC,MAAM,IAAI,YAAY,EAAC,MAAM,6BAA6B,CAAC;AAQnE;;;;;GAKG;AAEI,WAAM,yBAAyB,GAA/B,MAAM,yBAA0B,SAAQ,uBAAuB;;AACpD,gCAAM,GAAwB,CAAC,YAAY,EAAE,cAAc,CAAC,AAAtD,CAAuD;AADlE,yBAAyB;IADrC,aAAa,CAAC,8BAA8B,CAAC;GACjC,yBAAyB,CAErC","sourcesContent":["/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {CSSResultOrNative} from 'lit';\nimport {customElement} from 'lit/decorators.js';\n\nimport {OutlinedSegmentedButton} from './internal/outlined-segmented-button.js';\nimport {styles as outlinedStyles} from './internal/outlined-styles.js';\nimport {styles as sharedStyles} from './internal/shared-styles.js';\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'md-outlined-segmented-button': MdOutlinedSegmentedButton;\n }\n}\n\n/**\n * MdOutlinedSegmentedButton is the custom element for the Material\n * Design outlined segmented button component.\n * @final\n * @suppress {visibility}\n */\n@customElement('md-outlined-segmented-button')\nexport class MdOutlinedSegmentedButton extends OutlinedSegmentedButton {\n static override styles: CSSResultOrNative[] = [sharedStyles, outlinedStyles];\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
:host{--_container-height: var(--md-outlined-segmented-button-container-height, 40px);--_disabled-icon-color: var(--md-outlined-segmented-button-disabled-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-label-text-color: var(--md-outlined-segmented-button-disabled-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-outline-color: var(--md-outlined-segmented-button-disabled-outline-color, var(--md-sys-color-on-surface, #1d1b20));--_hover-state-layer-opacity: var(--md-outlined-segmented-button-hover-state-layer-opacity, 0.08);--_label-text-font: var(--md-outlined-segmented-button-label-text-font, var(--md-sys-typescale-label-large-font, var(--md-ref-typeface-plain, Roboto)));--_label-text-line-height: var(--md-outlined-segmented-button-label-text-line-height, var(--md-sys-typescale-label-large-line-height, 1.25rem));--_label-text-size: var(--md-outlined-segmented-button-label-text-size, var(--md-sys-typescale-label-large-size, 0.875rem));--_label-text-weight: var(--md-outlined-segmented-button-label-text-weight, var(--md-sys-typescale-label-large-weight, var(--md-ref-typeface-weight-medium, 500)));--_outline-color: var(--md-outlined-segmented-button-outline-color, var(--md-sys-color-outline, #79747e));--_pressed-state-layer-opacity: var(--md-outlined-segmented-button-pressed-state-layer-opacity, 0.12);--_selected-container-color: var(--md-outlined-segmented-button-selected-container-color, var(--md-sys-color-secondary-container, #e8def8));--_selected-focus-icon-color: var(--md-outlined-segmented-button-selected-focus-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-focus-label-text-color: var(--md-outlined-segmented-button-selected-focus-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-hover-icon-color: var(--md-outlined-segmented-button-selected-hover-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-hover-label-text-color: var(--md-outlined-segmented-button-selected-hover-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-hover-state-layer-color: var(--md-outlined-segmented-button-selected-hover-state-layer-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-label-text-color: var(--md-outlined-segmented-button-selected-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-pressed-icon-color: var(--md-outlined-segmented-button-selected-pressed-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-pressed-label-text-color: var(--md-outlined-segmented-button-selected-pressed-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-pressed-state-layer-color: var(--md-outlined-segmented-button-selected-pressed-state-layer-color, var(--md-sys-color-on-secondary-container, #1d192b));--_unselected-focus-icon-color: var(--md-outlined-segmented-button-unselected-focus-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-focus-label-text-color: var(--md-outlined-segmented-button-unselected-focus-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-hover-icon-color: var(--md-outlined-segmented-button-unselected-hover-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-hover-label-text-color: var(--md-outlined-segmented-button-unselected-hover-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-hover-state-layer-color: var(--md-outlined-segmented-button-unselected-hover-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-label-text-color: var(--md-outlined-segmented-button-unselected-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-pressed-icon-color: var(--md-outlined-segmented-button-unselected-pressed-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-pressed-label-text-color: var(--md-outlined-segmented-button-unselected-pressed-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-pressed-state-layer-color: var(--md-outlined-segmented-button-unselected-pressed-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--_icon-size: var(--md-outlined-segmented-button-icon-size, 18px);--_selected-icon-color: var(--md-outlined-segmented-button-selected-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_unselected-icon-color: var(--md-outlined-segmented-button-unselected-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_shape-start-start: var(--md-outlined-segmented-button-shape-start-start, var(--md-outlined-segmented-button-shape, var(--md-sys-shape-corner-full, 9999px)));--_shape-start-end: var(--md-outlined-segmented-button-shape-start-end, var(--md-outlined-segmented-button-shape, var(--md-sys-shape-corner-full, 9999px)));--_shape-end-end: var(--md-outlined-segmented-button-shape-end-end, var(--md-outlined-segmented-button-shape, var(--md-sys-shape-corner-full, 9999px)));--_shape-end-start: var(--md-outlined-segmented-button-shape-end-start, var(--md-outlined-segmented-button-shape, var(--md-sys-shape-corner-full, 9999px)))}/*# sourceMappingURL=outlined-styles.css.map */
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sourceRoot":"","sources":["_outlined-segmented-button-set.scss"],"names":[],"mappings":"AAkCE,MAII","file":"outlined-styles.css"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
/**
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2024 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
// Generated stylesheet for ./labs/segmentedbuttonset/internal/outlined-styles.css.
|
|
6
7
|
import { css } from 'lit';
|
|
7
|
-
export const styles = css `:host{--_container-height: var(--md-outlined-segmented-button-container-height, 40px);--_disabled-icon-color: var(--md-outlined-segmented-button-disabled-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-label-text-color: var(--md-outlined-segmented-button-disabled-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-outline-color: var(--md-outlined-segmented-button-disabled-outline-color, var(--md-sys-color-on-surface, #1d1b20));--_hover-state-layer-opacity: var(--md-outlined-segmented-button-hover-state-layer-opacity, 0.08);--_label-text-font: var(--md-outlined-segmented-button-label-text-font, var(--md-sys-typescale-label-large-font, var(--md-ref-typeface-plain, Roboto)));--_label-text-line-height: var(--md-outlined-segmented-button-label-text-line-height, var(--md-sys-typescale-label-large-line-height, 1.25rem));--_label-text-size: var(--md-outlined-segmented-button-label-text-size, var(--md-sys-typescale-label-large-size, 0.875rem));--_label-text-weight: var(--md-outlined-segmented-button-label-text-weight, var(--md-sys-typescale-label-large-weight, var(--md-ref-typeface-weight-medium, 500)));--_outline-color: var(--md-outlined-segmented-button-outline-color, var(--md-sys-color-outline, #79747e));--_pressed-state-layer-opacity: var(--md-outlined-segmented-button-pressed-state-layer-opacity, 0.12);--_selected-container-color: var(--md-outlined-segmented-button-selected-container-color, var(--md-sys-color-secondary-container, #e8def8));--_selected-focus-icon-color: var(--md-outlined-segmented-button-selected-focus-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-focus-label-text-color: var(--md-outlined-segmented-button-selected-focus-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-hover-icon-color: var(--md-outlined-segmented-button-selected-hover-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-hover-label-text-color: var(--md-outlined-segmented-button-selected-hover-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-hover-state-layer-color: var(--md-outlined-segmented-button-selected-hover-state-layer-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-label-text-color: var(--md-outlined-segmented-button-selected-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-pressed-icon-color: var(--md-outlined-segmented-button-selected-pressed-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-pressed-label-text-color: var(--md-outlined-segmented-button-selected-pressed-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-pressed-state-layer-color: var(--md-outlined-segmented-button-selected-pressed-state-layer-color, var(--md-sys-color-on-secondary-container, #1d192b));--_unselected-focus-icon-color: var(--md-outlined-segmented-button-unselected-focus-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-focus-label-text-color: var(--md-outlined-segmented-button-unselected-focus-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-hover-icon-color: var(--md-outlined-segmented-button-unselected-hover-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-hover-label-text-color: var(--md-outlined-segmented-button-unselected-hover-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-hover-state-layer-color: var(--md-outlined-segmented-button-unselected-hover-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-label-text-color: var(--md-outlined-segmented-button-unselected-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-pressed-icon-color: var(--md-outlined-segmented-button-unselected-pressed-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-pressed-label-text-color: var(--md-outlined-segmented-button-unselected-pressed-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-pressed-state-layer-color: var(--md-outlined-segmented-button-unselected-pressed-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--_icon-size: var(--md-outlined-segmented-button-icon-size, 18px);--_selected-icon-color: var(--md-outlined-segmented-button-selected-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_unselected-icon-color: var(--md-outlined-segmented-button-unselected-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_shape-start-start: var(--md-outlined-segmented-button-shape-start-start, var(--md-outlined-segmented-button-shape, var(--md-sys-shape-corner-full, 9999px)));--_shape-start-end: var(--md-outlined-segmented-button-shape-start-end, var(--md-outlined-segmented-button-shape, var(--md-sys-shape-corner-full, 9999px)));--_shape-end-end: var(--md-outlined-segmented-button-shape-end-end, var(--md-outlined-segmented-button-shape, var(--md-sys-shape-corner-full, 9999px)));--_shape-end-start: var(--md-outlined-segmented-button-shape-end-start, var(--md-outlined-segmented-button-shape, var(--md-sys-shape-corner-full, 9999px)))}
|
|
8
|
+
export const styles = css `:host{--_container-height: var(--md-outlined-segmented-button-container-height, 40px);--_disabled-icon-color: var(--md-outlined-segmented-button-disabled-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-label-text-color: var(--md-outlined-segmented-button-disabled-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-outline-color: var(--md-outlined-segmented-button-disabled-outline-color, var(--md-sys-color-on-surface, #1d1b20));--_hover-state-layer-opacity: var(--md-outlined-segmented-button-hover-state-layer-opacity, 0.08);--_label-text-font: var(--md-outlined-segmented-button-label-text-font, var(--md-sys-typescale-label-large-font, var(--md-ref-typeface-plain, Roboto)));--_label-text-line-height: var(--md-outlined-segmented-button-label-text-line-height, var(--md-sys-typescale-label-large-line-height, 1.25rem));--_label-text-size: var(--md-outlined-segmented-button-label-text-size, var(--md-sys-typescale-label-large-size, 0.875rem));--_label-text-weight: var(--md-outlined-segmented-button-label-text-weight, var(--md-sys-typescale-label-large-weight, var(--md-ref-typeface-weight-medium, 500)));--_outline-color: var(--md-outlined-segmented-button-outline-color, var(--md-sys-color-outline, #79747e));--_pressed-state-layer-opacity: var(--md-outlined-segmented-button-pressed-state-layer-opacity, 0.12);--_selected-container-color: var(--md-outlined-segmented-button-selected-container-color, var(--md-sys-color-secondary-container, #e8def8));--_selected-focus-icon-color: var(--md-outlined-segmented-button-selected-focus-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-focus-label-text-color: var(--md-outlined-segmented-button-selected-focus-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-hover-icon-color: var(--md-outlined-segmented-button-selected-hover-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-hover-label-text-color: var(--md-outlined-segmented-button-selected-hover-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-hover-state-layer-color: var(--md-outlined-segmented-button-selected-hover-state-layer-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-label-text-color: var(--md-outlined-segmented-button-selected-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-pressed-icon-color: var(--md-outlined-segmented-button-selected-pressed-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-pressed-label-text-color: var(--md-outlined-segmented-button-selected-pressed-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-pressed-state-layer-color: var(--md-outlined-segmented-button-selected-pressed-state-layer-color, var(--md-sys-color-on-secondary-container, #1d192b));--_unselected-focus-icon-color: var(--md-outlined-segmented-button-unselected-focus-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-focus-label-text-color: var(--md-outlined-segmented-button-unselected-focus-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-hover-icon-color: var(--md-outlined-segmented-button-unselected-hover-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-hover-label-text-color: var(--md-outlined-segmented-button-unselected-hover-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-hover-state-layer-color: var(--md-outlined-segmented-button-unselected-hover-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-label-text-color: var(--md-outlined-segmented-button-unselected-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-pressed-icon-color: var(--md-outlined-segmented-button-unselected-pressed-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-pressed-label-text-color: var(--md-outlined-segmented-button-unselected-pressed-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-pressed-state-layer-color: var(--md-outlined-segmented-button-unselected-pressed-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--_icon-size: var(--md-outlined-segmented-button-icon-size, 18px);--_selected-icon-color: var(--md-outlined-segmented-button-selected-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_unselected-icon-color: var(--md-outlined-segmented-button-unselected-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_shape-start-start: var(--md-outlined-segmented-button-shape-start-start, var(--md-outlined-segmented-button-shape, var(--md-sys-shape-corner-full, 9999px)));--_shape-start-end: var(--md-outlined-segmented-button-shape-start-end, var(--md-outlined-segmented-button-shape, var(--md-sys-shape-corner-full, 9999px)));--_shape-end-end: var(--md-outlined-segmented-button-shape-end-end, var(--md-outlined-segmented-button-shape, var(--md-sys-shape-corner-full, 9999px)));--_shape-end-start: var(--md-outlined-segmented-button-shape-end-start, var(--md-outlined-segmented-button-shape, var(--md-sys-shape-corner-full, 9999px)))}
|
|
8
9
|
`;
|
|
9
|
-
//# sourceMappingURL=outlined-styles.
|
|
10
|
+
//# sourceMappingURL=outlined-styles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"outlined-styles.js","sourceRoot":"","sources":["outlined-styles.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,mFAAmF;AACnF,OAAO,EAAC,GAAG,EAAC,MAAM,KAAK,CAAC;AACxB,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;CACxB,CAAC","sourcesContent":["/**\n * @license\n * Copyright 2024 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n// Generated stylesheet for ./labs/segmentedbuttonset/internal/outlined-styles.css.\nimport {css} from 'lit';\nexport const styles = css`:host{--_container-height: var(--md-outlined-segmented-button-container-height, 40px);--_disabled-icon-color: var(--md-outlined-segmented-button-disabled-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-label-text-color: var(--md-outlined-segmented-button-disabled-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-outline-color: var(--md-outlined-segmented-button-disabled-outline-color, var(--md-sys-color-on-surface, #1d1b20));--_hover-state-layer-opacity: var(--md-outlined-segmented-button-hover-state-layer-opacity, 0.08);--_label-text-font: var(--md-outlined-segmented-button-label-text-font, var(--md-sys-typescale-label-large-font, var(--md-ref-typeface-plain, Roboto)));--_label-text-line-height: var(--md-outlined-segmented-button-label-text-line-height, var(--md-sys-typescale-label-large-line-height, 1.25rem));--_label-text-size: var(--md-outlined-segmented-button-label-text-size, var(--md-sys-typescale-label-large-size, 0.875rem));--_label-text-weight: var(--md-outlined-segmented-button-label-text-weight, var(--md-sys-typescale-label-large-weight, var(--md-ref-typeface-weight-medium, 500)));--_outline-color: var(--md-outlined-segmented-button-outline-color, var(--md-sys-color-outline, #79747e));--_pressed-state-layer-opacity: var(--md-outlined-segmented-button-pressed-state-layer-opacity, 0.12);--_selected-container-color: var(--md-outlined-segmented-button-selected-container-color, var(--md-sys-color-secondary-container, #e8def8));--_selected-focus-icon-color: var(--md-outlined-segmented-button-selected-focus-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-focus-label-text-color: var(--md-outlined-segmented-button-selected-focus-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-hover-icon-color: var(--md-outlined-segmented-button-selected-hover-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-hover-label-text-color: var(--md-outlined-segmented-button-selected-hover-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-hover-state-layer-color: var(--md-outlined-segmented-button-selected-hover-state-layer-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-label-text-color: var(--md-outlined-segmented-button-selected-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-pressed-icon-color: var(--md-outlined-segmented-button-selected-pressed-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-pressed-label-text-color: var(--md-outlined-segmented-button-selected-pressed-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-pressed-state-layer-color: var(--md-outlined-segmented-button-selected-pressed-state-layer-color, var(--md-sys-color-on-secondary-container, #1d192b));--_unselected-focus-icon-color: var(--md-outlined-segmented-button-unselected-focus-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-focus-label-text-color: var(--md-outlined-segmented-button-unselected-focus-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-hover-icon-color: var(--md-outlined-segmented-button-unselected-hover-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-hover-label-text-color: var(--md-outlined-segmented-button-unselected-hover-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-hover-state-layer-color: var(--md-outlined-segmented-button-unselected-hover-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-label-text-color: var(--md-outlined-segmented-button-unselected-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-pressed-icon-color: var(--md-outlined-segmented-button-unselected-pressed-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-pressed-label-text-color: var(--md-outlined-segmented-button-unselected-pressed-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_unselected-pressed-state-layer-color: var(--md-outlined-segmented-button-unselected-pressed-state-layer-color, var(--md-sys-color-on-surface, #1d1b20));--_icon-size: var(--md-outlined-segmented-button-icon-size, 18px);--_selected-icon-color: var(--md-outlined-segmented-button-selected-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_unselected-icon-color: var(--md-outlined-segmented-button-unselected-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_shape-start-start: var(--md-outlined-segmented-button-shape-start-start, var(--md-outlined-segmented-button-shape, var(--md-sys-shape-corner-full, 9999px)));--_shape-start-end: var(--md-outlined-segmented-button-shape-start-end, var(--md-outlined-segmented-button-shape, var(--md-sys-shape-corner-full, 9999px)));--_shape-end-end: var(--md-outlined-segmented-button-shape-end-end, var(--md-outlined-segmented-button-shape, var(--md-sys-shape-corner-full, 9999px)));--_shape-end-start: var(--md-outlined-segmented-button-shape-end-start, var(--md-outlined-segmented-button-shape, var(--md-sys-shape-corner-full, 9999px)))}\n`;\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
:host{display:flex;outline:none}.md3-segmented-button-set{display:grid;grid-auto-columns:1fr;grid-auto-flow:column;grid-auto-rows:auto;width:100%;height:var(--_container-height)}.md3-segmented-button-set ::slotted(:first-child){border-start-start-radius:var(--_shape-start-start);border-end-start-radius:var(--_shape-end-start)}.md3-segmented-button-set ::slotted(:last-child){border-start-end-radius:var(--_shape-start-end);border-end-end-radius:var(--_shape-end-end)}/*# sourceMappingURL=shared-styles.css.map */
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sourceRoot":"","sources":["_shared.scss"],"names":[],"mappings":"AASE,MACE,aACA,aAGF,0BACE,aACA,sBACA,sBACA,oBACA,WACA,gCAEA,kDACE,oDACA,gDAGF,iDACE,gDACA","file":"shared-styles.css"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
/**
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2024 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
// Generated stylesheet for ./labs/segmentedbuttonset/internal/shared-styles.css.
|
|
6
7
|
import { css } from 'lit';
|
|
7
|
-
export const styles = css `:host{display:flex;outline:none}.md3-segmented-button-set{display:grid;grid-auto-columns:1fr;grid-auto-flow:column;grid-auto-rows:auto;width:100%;height:var(--_container-height)}.md3-segmented-button-set ::slotted(:first-child){border-start-start-radius:var(--_shape-start-start);border-end-start-radius:var(--_shape-end-start)}.md3-segmented-button-set ::slotted(:last-child){border-start-end-radius:var(--_shape-start-end);border-end-end-radius:var(--_shape-end-end)}
|
|
8
|
+
export const styles = css `:host{display:flex;outline:none}.md3-segmented-button-set{display:grid;grid-auto-columns:1fr;grid-auto-flow:column;grid-auto-rows:auto;width:100%;height:var(--_container-height)}.md3-segmented-button-set ::slotted(:first-child){border-start-start-radius:var(--_shape-start-start);border-end-start-radius:var(--_shape-end-start)}.md3-segmented-button-set ::slotted(:last-child){border-start-end-radius:var(--_shape-start-end);border-end-end-radius:var(--_shape-end-end)}
|
|
8
9
|
`;
|
|
9
|
-
//# sourceMappingURL=shared-styles.
|
|
10
|
+
//# sourceMappingURL=shared-styles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shared-styles.js","sourceRoot":"","sources":["shared-styles.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,iFAAiF;AACjF,OAAO,EAAC,GAAG,EAAC,MAAM,KAAK,CAAC;AACxB,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;CACxB,CAAC","sourcesContent":["/**\n * @license\n * Copyright 2024 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n// Generated stylesheet for ./labs/segmentedbuttonset/internal/shared-styles.css.\nimport {css} from 'lit';\nexport const styles = css`:host{display:flex;outline:none}.md3-segmented-button-set{display:grid;grid-auto-columns:1fr;grid-auto-flow:column;grid-auto-rows:auto;width:100%;height:var(--_container-height)}.md3-segmented-button-set ::slotted(:first-child){border-start-start-radius:var(--_shape-start-start);border-end-start-radius:var(--_shape-end-start)}.md3-segmented-button-set ::slotted(:last-child){border-start-end-radius:var(--_shape-start-end);border-end-end-radius:var(--_shape-end-end)}\n`;\n"]}
|
|
@@ -6,8 +6,8 @@
|
|
|
6
6
|
import { __decorate } from "tslib";
|
|
7
7
|
import { customElement } from 'lit/decorators.js';
|
|
8
8
|
import { OutlinedSegmentedButtonSet } from './internal/outlined-segmented-button-set.js';
|
|
9
|
-
import { styles as outlinedStyles } from './internal/outlined-styles.
|
|
10
|
-
import { styles as sharedStyles } from './internal/shared-styles.
|
|
9
|
+
import { styles as outlinedStyles } from './internal/outlined-styles.js';
|
|
10
|
+
import { styles as sharedStyles } from './internal/shared-styles.js';
|
|
11
11
|
/**
|
|
12
12
|
* MdOutlinedSegmentedButtonSet is the custom element for the Material
|
|
13
13
|
* Design outlined segmented button set component.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"outlined-segmented-button-set.js","sourceRoot":"","sources":["outlined-segmented-button-set.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;AAGH,OAAO,EAAC,aAAa,EAAC,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAC,0BAA0B,EAAC,MAAM,6CAA6C,CAAC;AACvF,OAAO,EAAC,MAAM,IAAI,cAAc,EAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"outlined-segmented-button-set.js","sourceRoot":"","sources":["outlined-segmented-button-set.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;AAGH,OAAO,EAAC,aAAa,EAAC,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAC,0BAA0B,EAAC,MAAM,6CAA6C,CAAC;AACvF,OAAO,EAAC,MAAM,IAAI,cAAc,EAAC,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAC,MAAM,IAAI,YAAY,EAAC,MAAM,6BAA6B,CAAC;AAQnE;;;;;GAKG;AAEI,WAAM,4BAA4B,GAAlC,MAAM,4BAA6B,SAAQ,0BAA0B;;AAC1D,mCAAM,GAAwB,CAAC,YAAY,EAAE,cAAc,CAAC,AAAtD,CAAuD;AADlE,4BAA4B;IADxC,aAAa,CAAC,kCAAkC,CAAC;GACrC,4BAA4B,CAExC","sourcesContent":["/**\n * @license\n * Copyright 2022 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {CSSResultOrNative} from 'lit';\nimport {customElement} from 'lit/decorators.js';\n\nimport {OutlinedSegmentedButtonSet} from './internal/outlined-segmented-button-set.js';\nimport {styles as outlinedStyles} from './internal/outlined-styles.js';\nimport {styles as sharedStyles} from './internal/shared-styles.js';\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'md-outlined-segmented-button-set': MdOutlinedSegmentedButtonSet;\n }\n}\n\n/**\n * MdOutlinedSegmentedButtonSet is the custom element for the Material\n * Design outlined segmented button set component.\n * @final\n * @suppress {visibility}\n */\n@customElement('md-outlined-segmented-button-set')\nexport class MdOutlinedSegmentedButtonSet extends OutlinedSegmentedButtonSet {\n static override styles: CSSResultOrNative[] = [sharedStyles, outlinedStyles];\n}\n"]}
|
|
@@ -55,6 +55,11 @@ export interface ListControllerConfig<Item extends ListItem> {
|
|
|
55
55
|
* disabled.
|
|
56
56
|
*/
|
|
57
57
|
isActivatable?: (item: Item) => boolean;
|
|
58
|
+
/**
|
|
59
|
+
* Whether or not navigating past the end of the list wraps to the beginning
|
|
60
|
+
* and vice versa. Defaults to true.
|
|
61
|
+
*/
|
|
62
|
+
wrapNavigation?: () => boolean;
|
|
58
63
|
}
|
|
59
64
|
/**
|
|
60
65
|
* A controller that handles list keyboard navigation and item management.
|
|
@@ -67,6 +72,7 @@ export declare class ListController<Item extends ListItem> {
|
|
|
67
72
|
private readonly activateItem;
|
|
68
73
|
private readonly isNavigableKey;
|
|
69
74
|
private readonly isActivatable?;
|
|
75
|
+
private readonly wrapNavigation;
|
|
70
76
|
constructor(config: ListControllerConfig<Item>);
|
|
71
77
|
/**
|
|
72
78
|
* The items being managed by the list. Additionally, attempts to see if the
|
|
@@ -38,9 +38,6 @@ export class ListController {
|
|
|
38
38
|
return;
|
|
39
39
|
}
|
|
40
40
|
const activeItemRecord = getActiveItem(items, this.isActivatable);
|
|
41
|
-
if (activeItemRecord) {
|
|
42
|
-
activeItemRecord.item.tabIndex = -1;
|
|
43
|
-
}
|
|
44
41
|
event.preventDefault();
|
|
45
42
|
const isRtl = this.isRtl();
|
|
46
43
|
const inlinePrevious = isRtl
|
|
@@ -49,28 +46,36 @@ export class ListController {
|
|
|
49
46
|
const inlineNext = isRtl
|
|
50
47
|
? NavigableKeys.ArrowLeft
|
|
51
48
|
: NavigableKeys.ArrowRight;
|
|
49
|
+
let nextActiveItem = null;
|
|
52
50
|
switch (key) {
|
|
53
51
|
// Activate the next item
|
|
54
52
|
case NavigableKeys.ArrowDown:
|
|
55
53
|
case inlineNext:
|
|
56
|
-
activateNextItem(items, activeItemRecord, this.isActivatable);
|
|
54
|
+
nextActiveItem = activateNextItem(items, activeItemRecord, this.isActivatable, this.wrapNavigation());
|
|
57
55
|
break;
|
|
58
56
|
// Activate the previous item
|
|
59
57
|
case NavigableKeys.ArrowUp:
|
|
60
58
|
case inlinePrevious:
|
|
61
|
-
activatePreviousItem(items, activeItemRecord, this.isActivatable);
|
|
59
|
+
nextActiveItem = activatePreviousItem(items, activeItemRecord, this.isActivatable, this.wrapNavigation());
|
|
62
60
|
break;
|
|
63
61
|
// Activate the first item
|
|
64
62
|
case NavigableKeys.Home:
|
|
65
|
-
activateFirstItem(items, this.isActivatable);
|
|
63
|
+
nextActiveItem = activateFirstItem(items, this.isActivatable);
|
|
66
64
|
break;
|
|
67
65
|
// Activate the last item
|
|
68
66
|
case NavigableKeys.End:
|
|
69
|
-
activateLastItem(items, this.isActivatable);
|
|
67
|
+
nextActiveItem = activateLastItem(items, this.isActivatable);
|
|
70
68
|
break;
|
|
71
69
|
default:
|
|
72
70
|
break;
|
|
73
71
|
}
|
|
72
|
+
if (nextActiveItem &&
|
|
73
|
+
activeItemRecord &&
|
|
74
|
+
activeItemRecord.item !== nextActiveItem) {
|
|
75
|
+
// If a new item was activated, remove the tabindex of the previous
|
|
76
|
+
// activated item.
|
|
77
|
+
activeItemRecord.item.tabIndex = -1;
|
|
78
|
+
}
|
|
74
79
|
};
|
|
75
80
|
/**
|
|
76
81
|
* Listener to be bound to the `deactivate-items` item event.
|
|
@@ -117,7 +122,7 @@ export class ListController {
|
|
|
117
122
|
}
|
|
118
123
|
firstActivatableItem.tabIndex = 0;
|
|
119
124
|
};
|
|
120
|
-
const { isItem, getPossibleItems, isRtl, deactivateItem, activateItem, isNavigableKey, isActivatable, } = config;
|
|
125
|
+
const { isItem, getPossibleItems, isRtl, deactivateItem, activateItem, isNavigableKey, isActivatable, wrapNavigation, } = config;
|
|
121
126
|
this.isItem = isItem;
|
|
122
127
|
this.getPossibleItems = getPossibleItems;
|
|
123
128
|
this.isRtl = isRtl;
|
|
@@ -125,6 +130,7 @@ export class ListController {
|
|
|
125
130
|
this.activateItem = activateItem;
|
|
126
131
|
this.isNavigableKey = isNavigableKey;
|
|
127
132
|
this.isActivatable = isActivatable;
|
|
133
|
+
this.wrapNavigation = wrapNavigation ?? (() => true);
|
|
128
134
|
}
|
|
129
135
|
/**
|
|
130
136
|
* The items being managed by the list. Additionally, attempts to see if the
|
|
@@ -160,7 +166,7 @@ export class ListController {
|
|
|
160
166
|
if (activeItemRecord) {
|
|
161
167
|
activeItemRecord.item.tabIndex = -1;
|
|
162
168
|
}
|
|
163
|
-
return activateNextItem(items, activeItemRecord, this.isActivatable);
|
|
169
|
+
return activateNextItem(items, activeItemRecord, this.isActivatable, this.wrapNavigation());
|
|
164
170
|
}
|
|
165
171
|
/**
|
|
166
172
|
* Activates the previous item in the list. If at the start of the list, the
|
|
@@ -174,7 +180,7 @@ export class ListController {
|
|
|
174
180
|
if (activeItemRecord) {
|
|
175
181
|
activeItemRecord.item.tabIndex = -1;
|
|
176
182
|
}
|
|
177
|
-
return activatePreviousItem(items, activeItemRecord, this.isActivatable);
|
|
183
|
+
return activatePreviousItem(items, activeItemRecord, this.isActivatable, this.wrapNavigation());
|
|
178
184
|
}
|
|
179
185
|
}
|
|
180
186
|
//# sourceMappingURL=list-controller.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list-controller.js","sourceRoot":"","sources":["list-controller.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * @license\n * Copyright 2023 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {\n activateFirstItem,\n activateLastItem,\n activateNextItem,\n activatePreviousItem,\n getActiveItem,\n getFirstActivatableItem,\n ListItem,\n} from './list-navigation-helpers.js';\n\n// TODO: move this file to List and make List use this\n\n/**\n * Default keys that trigger navigation.\n */\n// tslint:disable:enforce-name-casing Following Enum style\nexport const NavigableKeys = {\n ArrowDown: 'ArrowDown',\n ArrowLeft: 'ArrowLeft',\n ArrowUp: 'ArrowUp',\n ArrowRight: 'ArrowRight',\n Home: 'Home',\n End: 'End',\n} as const;\n// tslint:enable:enforce-name-casing\n\n/**\n * Default set of navigable keys.\n */\nexport type NavigableKeys = (typeof NavigableKeys)[keyof typeof NavigableKeys];\n\n/**\n * The configuration object to customize the behavior of the List Controller\n */\nexport interface ListControllerConfig<Item extends ListItem> {\n /**\n * A function that determines whether or not the given element is an Item\n */\n isItem: (item: HTMLElement) => item is Item;\n /**\n * A function that returns an array of elements to consider as items. For\n * example, all the slotted elements.\n */\n getPossibleItems: () => HTMLElement[];\n /**\n * A function that returns whether or not the list is in an RTL context.\n */\n isRtl: () => boolean;\n /**\n * Deactivates an item such as setting the tabindex to -1 and or sets selected\n * to false.\n */\n deactivateItem: (item: Item) => void;\n /**\n * Activates an item such as setting the tabindex to 1 and or sets selected to\n * true (but does not focus).\n */\n activateItem: (item: Item) => void;\n /**\n * Whether or not the key should be handled by the list for navigation.\n */\n isNavigableKey: (key: string) => boolean;\n /**\n * Whether or not the item can be activated. Defaults to items that are not\n * disabled.\n */\n isActivatable?: (item: Item) => boolean;\n}\n\n/**\n * A controller that handles list keyboard navigation and item management.\n */\nexport class ListController<Item extends ListItem> {\n isItem: (item: HTMLElement) => item is Item;\n private readonly getPossibleItems: () => HTMLElement[];\n private readonly isRtl: () => boolean;\n private readonly deactivateItem: (item: Item) => void;\n private readonly activateItem: (item: Item) => void;\n private readonly isNavigableKey: (key: string) => boolean;\n private readonly isActivatable?: (item: Item) => boolean;\n\n constructor(config: ListControllerConfig<Item>) {\n const {\n isItem,\n getPossibleItems,\n isRtl,\n deactivateItem,\n activateItem,\n isNavigableKey,\n isActivatable,\n } = config;\n this.isItem = isItem;\n this.getPossibleItems = getPossibleItems;\n this.isRtl = isRtl;\n this.deactivateItem = deactivateItem;\n this.activateItem = activateItem;\n this.isNavigableKey = isNavigableKey;\n this.isActivatable = isActivatable;\n }\n\n /**\n * The items being managed by the list. Additionally, attempts to see if the\n * object has a sub-item in the `.item` property.\n */\n get items(): Item[] {\n const maybeItems = this.getPossibleItems();\n const items: Item[] = [];\n\n for (const itemOrParent of maybeItems) {\n const isItem = this.isItem(itemOrParent);\n // if the item is a list item, add it to the list of items\n if (isItem) {\n items.push(itemOrParent);\n continue;\n }\n\n // If the item exposes an `item` property check if it is a list item.\n const subItem = (itemOrParent as HTMLElement & {item?: Item}).item;\n if (subItem && this.isItem(subItem)) {\n items.push(subItem);\n }\n }\n\n return items;\n }\n\n /**\n * Handles keyboard navigation. Should be bound to the node that will act as\n * the List.\n */\n handleKeydown = (event: KeyboardEvent) => {\n const key = event.key;\n if (event.defaultPrevented || !this.isNavigableKey(key)) {\n return;\n }\n // do not use this.items directly in upcoming calculations so we don't\n // re-query the DOM unnecessarily\n const items = this.items;\n\n if (!items.length) {\n return;\n }\n\n const activeItemRecord = getActiveItem(items, this.isActivatable);\n\n if (activeItemRecord) {\n activeItemRecord.item.tabIndex = -1;\n }\n\n event.preventDefault();\n\n const isRtl = this.isRtl();\n const inlinePrevious = isRtl\n ? NavigableKeys.ArrowRight\n : NavigableKeys.ArrowLeft;\n const inlineNext = isRtl\n ? NavigableKeys.ArrowLeft\n : NavigableKeys.ArrowRight;\n\n switch (key) {\n // Activate the next item\n case NavigableKeys.ArrowDown:\n case inlineNext:\n activateNextItem(items, activeItemRecord, this.isActivatable);\n break;\n\n // Activate the previous item\n case NavigableKeys.ArrowUp:\n case inlinePrevious:\n activatePreviousItem(items, activeItemRecord, this.isActivatable);\n break;\n\n // Activate the first item\n case NavigableKeys.Home:\n activateFirstItem(items, this.isActivatable);\n break;\n\n // Activate the last item\n case NavigableKeys.End:\n activateLastItem(items, this.isActivatable);\n break;\n\n default:\n break;\n }\n };\n\n /**\n * Activates the next item in the list. If at the end of the list, the first\n * item will be activated.\n *\n * @return The activated list item or `null` if there are no items.\n */\n activateNextItem(): Item | null {\n const items = this.items;\n const activeItemRecord = getActiveItem(items, this.isActivatable);\n if (activeItemRecord) {\n activeItemRecord.item.tabIndex = -1;\n }\n return activateNextItem(items, activeItemRecord, this.isActivatable);\n }\n\n /**\n * Activates the previous item in the list. If at the start of the list, the\n * last item will be activated.\n *\n * @return The activated list item or `null` if there are no items.\n */\n activatePreviousItem(): Item | null {\n const items = this.items;\n const activeItemRecord = getActiveItem(items, this.isActivatable);\n if (activeItemRecord) {\n activeItemRecord.item.tabIndex = -1;\n }\n return activatePreviousItem(items, activeItemRecord, this.isActivatable);\n }\n\n /**\n * Listener to be bound to the `deactivate-items` item event.\n */\n onDeactivateItems = () => {\n const items = this.items;\n\n for (const item of items) {\n this.deactivateItem(item);\n }\n };\n\n /**\n * Listener to be bound to the `request-activation` item event..\n */\n onRequestActivation = (event: Event) => {\n this.onDeactivateItems();\n const target = event.target as Item;\n this.activateItem(target);\n target.focus();\n };\n\n /**\n * Listener to be bound to the `slotchange` event for the slot that renders\n * the items.\n */\n onSlotchange = () => {\n const items = this.items;\n // Whether we have encountered an item that has been activated\n let encounteredActivated = false;\n\n for (const item of items) {\n const isActivated = !item.disabled && item.tabIndex > -1;\n\n if (isActivated && !encounteredActivated) {\n encounteredActivated = true;\n item.tabIndex = 0;\n continue;\n }\n\n // Deactivate the rest including disabled\n item.tabIndex = -1;\n }\n\n if (encounteredActivated) {\n return;\n }\n\n const firstActivatableItem = getFirstActivatableItem(\n items,\n this.isActivatable,\n );\n\n if (!firstActivatableItem) {\n return;\n }\n\n firstActivatableItem.tabIndex = 0;\n };\n}\n"]}
|
|
1
|
+
{"version":3,"file":"list-controller.js","sourceRoot":"","sources":["list-controller.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * @license\n * Copyright 2023 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {\n activateFirstItem,\n activateLastItem,\n activateNextItem,\n activatePreviousItem,\n getActiveItem,\n getFirstActivatableItem,\n ListItem,\n} from './list-navigation-helpers.js';\n\n// TODO: move this file to List and make List use this\n\n/**\n * Default keys that trigger navigation.\n */\n// tslint:disable:enforce-name-casing Following Enum style\nexport const NavigableKeys = {\n ArrowDown: 'ArrowDown',\n ArrowLeft: 'ArrowLeft',\n ArrowUp: 'ArrowUp',\n ArrowRight: 'ArrowRight',\n Home: 'Home',\n End: 'End',\n} as const;\n// tslint:enable:enforce-name-casing\n\n/**\n * Default set of navigable keys.\n */\nexport type NavigableKeys = (typeof NavigableKeys)[keyof typeof NavigableKeys];\n\n/**\n * The configuration object to customize the behavior of the List Controller\n */\nexport interface ListControllerConfig<Item extends ListItem> {\n /**\n * A function that determines whether or not the given element is an Item\n */\n isItem: (item: HTMLElement) => item is Item;\n /**\n * A function that returns an array of elements to consider as items. For\n * example, all the slotted elements.\n */\n getPossibleItems: () => HTMLElement[];\n /**\n * A function that returns whether or not the list is in an RTL context.\n */\n isRtl: () => boolean;\n /**\n * Deactivates an item such as setting the tabindex to -1 and or sets selected\n * to false.\n */\n deactivateItem: (item: Item) => void;\n /**\n * Activates an item such as setting the tabindex to 1 and or sets selected to\n * true (but does not focus).\n */\n activateItem: (item: Item) => void;\n /**\n * Whether or not the key should be handled by the list for navigation.\n */\n isNavigableKey: (key: string) => boolean;\n /**\n * Whether or not the item can be activated. Defaults to items that are not\n * disabled.\n */\n isActivatable?: (item: Item) => boolean;\n /**\n * Whether or not navigating past the end of the list wraps to the beginning\n * and vice versa. Defaults to true.\n */\n wrapNavigation?: () => boolean;\n}\n\n/**\n * A controller that handles list keyboard navigation and item management.\n */\nexport class ListController<Item extends ListItem> {\n isItem: (item: HTMLElement) => item is Item;\n private readonly getPossibleItems: () => HTMLElement[];\n private readonly isRtl: () => boolean;\n private readonly deactivateItem: (item: Item) => void;\n private readonly activateItem: (item: Item) => void;\n private readonly isNavigableKey: (key: string) => boolean;\n private readonly isActivatable?: (item: Item) => boolean;\n private readonly wrapNavigation: () => boolean;\n\n constructor(config: ListControllerConfig<Item>) {\n const {\n isItem,\n getPossibleItems,\n isRtl,\n deactivateItem,\n activateItem,\n isNavigableKey,\n isActivatable,\n wrapNavigation,\n } = config;\n this.isItem = isItem;\n this.getPossibleItems = getPossibleItems;\n this.isRtl = isRtl;\n this.deactivateItem = deactivateItem;\n this.activateItem = activateItem;\n this.isNavigableKey = isNavigableKey;\n this.isActivatable = isActivatable;\n this.wrapNavigation = wrapNavigation ?? (() => true);\n }\n\n /**\n * The items being managed by the list. Additionally, attempts to see if the\n * object has a sub-item in the `.item` property.\n */\n get items(): Item[] {\n const maybeItems = this.getPossibleItems();\n const items: Item[] = [];\n\n for (const itemOrParent of maybeItems) {\n const isItem = this.isItem(itemOrParent);\n // if the item is a list item, add it to the list of items\n if (isItem) {\n items.push(itemOrParent);\n continue;\n }\n\n // If the item exposes an `item` property check if it is a list item.\n const subItem = (itemOrParent as HTMLElement & {item?: Item}).item;\n if (subItem && this.isItem(subItem)) {\n items.push(subItem);\n }\n }\n\n return items;\n }\n\n /**\n * Handles keyboard navigation. Should be bound to the node that will act as\n * the List.\n */\n handleKeydown = (event: KeyboardEvent) => {\n const key = event.key;\n if (event.defaultPrevented || !this.isNavigableKey(key)) {\n return;\n }\n // do not use this.items directly in upcoming calculations so we don't\n // re-query the DOM unnecessarily\n const items = this.items;\n\n if (!items.length) {\n return;\n }\n\n const activeItemRecord = getActiveItem(items, this.isActivatable);\n\n event.preventDefault();\n\n const isRtl = this.isRtl();\n const inlinePrevious = isRtl\n ? NavigableKeys.ArrowRight\n : NavigableKeys.ArrowLeft;\n const inlineNext = isRtl\n ? NavigableKeys.ArrowLeft\n : NavigableKeys.ArrowRight;\n\n let nextActiveItem: Item | null = null;\n switch (key) {\n // Activate the next item\n case NavigableKeys.ArrowDown:\n case inlineNext:\n nextActiveItem = activateNextItem(\n items,\n activeItemRecord,\n this.isActivatable,\n this.wrapNavigation(),\n );\n break;\n\n // Activate the previous item\n case NavigableKeys.ArrowUp:\n case inlinePrevious:\n nextActiveItem = activatePreviousItem(\n items,\n activeItemRecord,\n this.isActivatable,\n this.wrapNavigation(),\n );\n break;\n\n // Activate the first item\n case NavigableKeys.Home:\n nextActiveItem = activateFirstItem(items, this.isActivatable);\n break;\n\n // Activate the last item\n case NavigableKeys.End:\n nextActiveItem = activateLastItem(items, this.isActivatable);\n break;\n\n default:\n break;\n }\n\n if (\n nextActiveItem &&\n activeItemRecord &&\n activeItemRecord.item !== nextActiveItem\n ) {\n // If a new item was activated, remove the tabindex of the previous\n // activated item.\n activeItemRecord.item.tabIndex = -1;\n }\n };\n\n /**\n * Activates the next item in the list. If at the end of the list, the first\n * item will be activated.\n *\n * @return The activated list item or `null` if there are no items.\n */\n activateNextItem(): Item | null {\n const items = this.items;\n const activeItemRecord = getActiveItem(items, this.isActivatable);\n if (activeItemRecord) {\n activeItemRecord.item.tabIndex = -1;\n }\n return activateNextItem(\n items,\n activeItemRecord,\n this.isActivatable,\n this.wrapNavigation(),\n );\n }\n\n /**\n * Activates the previous item in the list. If at the start of the list, the\n * last item will be activated.\n *\n * @return The activated list item or `null` if there are no items.\n */\n activatePreviousItem(): Item | null {\n const items = this.items;\n const activeItemRecord = getActiveItem(items, this.isActivatable);\n if (activeItemRecord) {\n activeItemRecord.item.tabIndex = -1;\n }\n return activatePreviousItem(\n items,\n activeItemRecord,\n this.isActivatable,\n this.wrapNavigation(),\n );\n }\n\n /**\n * Listener to be bound to the `deactivate-items` item event.\n */\n onDeactivateItems = () => {\n const items = this.items;\n\n for (const item of items) {\n this.deactivateItem(item);\n }\n };\n\n /**\n * Listener to be bound to the `request-activation` item event..\n */\n onRequestActivation = (event: Event) => {\n this.onDeactivateItems();\n const target = event.target as Item;\n this.activateItem(target);\n target.focus();\n };\n\n /**\n * Listener to be bound to the `slotchange` event for the slot that renders\n * the items.\n */\n onSlotchange = () => {\n const items = this.items;\n // Whether we have encountered an item that has been activated\n let encounteredActivated = false;\n\n for (const item of items) {\n const isActivated = !item.disabled && item.tabIndex > -1;\n\n if (isActivated && !encounteredActivated) {\n encounteredActivated = true;\n item.tabIndex = 0;\n continue;\n }\n\n // Deactivate the rest including disabled\n item.tabIndex = -1;\n }\n\n if (encounteredActivated) {\n return;\n }\n\n const firstActivatableItem = getFirstActivatableItem(\n items,\n this.isActivatable,\n );\n\n if (!firstActivatableItem) {\n return;\n }\n\n firstActivatableItem.tabIndex = 0;\n };\n}\n"]}
|
|
@@ -84,9 +84,11 @@ export declare function getLastActivatableItem<Item extends ListItem>(items: Ite
|
|
|
84
84
|
* @param index {{index: number}} The index to search from.
|
|
85
85
|
* @param isActivatable Function to determine if an item can be activated.
|
|
86
86
|
* Defaults to non-disabled items.
|
|
87
|
+
* @param wrap If true, then the next item at the end of the list is the first
|
|
88
|
+
* item. Defaults to true.
|
|
87
89
|
* @return The next activatable item or `null` if none are activatable.
|
|
88
90
|
*/
|
|
89
|
-
export declare function getNextItem<Item extends ListItem>(items: Item[], index: number, isActivatable?: (item: Item) => boolean): Item;
|
|
91
|
+
export declare function getNextItem<Item extends ListItem>(items: Item[], index: number, isActivatable?: (item: Item) => boolean, wrap?: boolean): Item;
|
|
90
92
|
/**
|
|
91
93
|
* Retrieves the previous non-disabled item of a given array of items.
|
|
92
94
|
*
|
|
@@ -94,19 +96,21 @@ export declare function getNextItem<Item extends ListItem>(items: Item[], index:
|
|
|
94
96
|
* @param index {{index: number}} The index to search from.
|
|
95
97
|
* @param isActivatable Function to determine if an item can be activated.
|
|
96
98
|
* Defaults to non-disabled items.
|
|
99
|
+
* @param wrap If true, then the previous item at the beginning of the list is
|
|
100
|
+
* the last item. Defaults to true.
|
|
97
101
|
* @return The previous activatable item or `null` if none are activatable.
|
|
98
102
|
*/
|
|
99
|
-
export declare function getPrevItem<Item extends ListItem>(items: Item[], index: number, isActivatable?: (item: Item) => boolean): Item;
|
|
103
|
+
export declare function getPrevItem<Item extends ListItem>(items: Item[], index: number, isActivatable?: (item: Item) => boolean, wrap?: boolean): Item;
|
|
100
104
|
/**
|
|
101
105
|
* Activates the next item and focuses it. If nothing is currently activated,
|
|
102
106
|
* activates the first item.
|
|
103
107
|
*/
|
|
104
|
-
export declare function activateNextItem<Item extends ListItem>(items: Item[], activeItemRecord: null | ItemRecord<Item>, isActivatable?: (item: Item) => boolean): Item | null;
|
|
108
|
+
export declare function activateNextItem<Item extends ListItem>(items: Item[], activeItemRecord: null | ItemRecord<Item>, isActivatable?: (item: Item) => boolean, wrap?: boolean): Item | null;
|
|
105
109
|
/**
|
|
106
110
|
* Activates the previous item and focuses it. If nothing is currently
|
|
107
111
|
* activated, activates the last item.
|
|
108
112
|
*/
|
|
109
|
-
export declare function activatePreviousItem<Item extends ListItem>(items: Item[], activeItemRecord: null | ItemRecord<Item>, isActivatable?: (item: Item) => boolean): Item | null;
|
|
113
|
+
export declare function activatePreviousItem<Item extends ListItem>(items: Item[], activeItemRecord: null | ItemRecord<Item>, isActivatable?: (item: Item) => boolean, wrap?: boolean): Item | null;
|
|
110
114
|
/**
|
|
111
115
|
* Creates an event that requests the parent md-list to deactivate all other
|
|
112
116
|
* items.
|