@material/web 1.0.0-pre.14 → 1.0.0-pre.16
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +24 -19
- package/all.d.ts +4 -8
- package/all.js +4 -8
- package/all.js.map +1 -1
- package/button/{_tonal-button.scss → _filled-tonal-button.scss} +1 -1
- package/button/{tonal-button.d.ts → filled-tonal-button.d.ts} +3 -3
- package/button/{tonal-button.js → filled-tonal-button.js} +9 -9
- package/button/filled-tonal-button.js.map +1 -0
- package/button/internal/_filled-button.scss +0 -1
- package/button/internal/{_tonal-button.scss → _filled-tonal-button.scss} +7 -7
- package/button/internal/_outlined-button.scss +6 -0
- package/button/internal/_shared.scss +19 -8
- package/button/internal/_touch-target.scss +5 -1
- package/button/internal/button.d.ts +19 -22
- package/button/internal/button.js +48 -79
- package/button/internal/button.js.map +1 -1
- package/button/internal/elevated-styles.css.js +1 -1
- package/button/internal/elevated-styles.css.js.map +1 -1
- package/button/internal/filled-styles.css.js +1 -1
- package/button/internal/filled-styles.css.js.map +1 -1
- package/button/internal/{tonal-button.d.ts → filled-tonal-button.d.ts} +2 -2
- package/button/internal/{tonal-button.js → filled-tonal-button.js} +3 -3
- package/button/internal/filled-tonal-button.js.map +1 -0
- package/button/internal/filled-tonal-styles.css.js +9 -0
- package/button/internal/filled-tonal-styles.css.js.map +1 -0
- package/button/internal/{tonal-styles.scss → filled-tonal-styles.scss} +2 -2
- package/button/internal/outlined-styles.css.js +1 -1
- package/button/internal/outlined-styles.css.js.map +1 -1
- package/button/internal/shared-elevation-styles.css.js +1 -1
- package/button/internal/shared-elevation-styles.css.js.map +1 -1
- package/button/internal/shared-styles.css.js +1 -1
- package/button/internal/shared-styles.css.js.map +1 -1
- package/button/internal/text-styles.css.js +1 -1
- package/button/internal/text-styles.css.js.map +1 -1
- package/checkbox/internal/_checkbox.scss +23 -78
- package/checkbox/internal/checkbox-styles.css.js +1 -1
- package/checkbox/internal/checkbox-styles.css.js.map +1 -1
- package/checkbox/internal/checkbox.d.ts +78 -7
- package/checkbox/internal/checkbox.js +136 -23
- package/checkbox/internal/checkbox.js.map +1 -1
- package/chips/assist-chip.js +1 -2
- package/chips/assist-chip.js.map +1 -1
- package/chips/filter-chip.js +1 -3
- package/chips/filter-chip.js.map +1 -1
- package/chips/input-chip.js +1 -5
- package/chips/input-chip.js.map +1 -1
- package/chips/internal/_assist-chip.scss +6 -0
- package/chips/internal/_elevated.scss +1 -1
- package/chips/internal/_filter-chip.scss +6 -0
- package/chips/internal/_input-chip.scss +32 -0
- package/chips/internal/_selectable.scss +17 -13
- package/chips/internal/_shared.scss +25 -10
- package/chips/internal/_suggestion-chip.scss +6 -0
- package/chips/internal/_trailing-icon.scss +24 -24
- package/chips/internal/assist-styles.css.js +1 -1
- package/chips/internal/assist-styles.css.js.map +1 -1
- package/chips/internal/chip-set.js +1 -3
- package/chips/internal/chip-set.js.map +1 -1
- package/chips/internal/chip.js +1 -3
- package/chips/internal/chip.js.map +1 -1
- package/chips/internal/elevated-styles.css.js +1 -1
- package/chips/internal/elevated-styles.css.js.map +1 -1
- package/chips/internal/filter-chip.d.ts +1 -0
- package/chips/internal/filter-chip.js +12 -6
- package/chips/internal/filter-chip.js.map +1 -1
- package/chips/internal/filter-styles.css.js +1 -1
- package/chips/internal/filter-styles.css.js.map +1 -1
- package/chips/internal/input-styles.css.js +1 -1
- package/chips/internal/input-styles.css.js.map +1 -1
- package/chips/internal/selectable-styles.css.js +1 -1
- package/chips/internal/selectable-styles.css.js.map +1 -1
- package/chips/internal/shared-styles.css.js +1 -1
- package/chips/internal/shared-styles.css.js.map +1 -1
- package/chips/internal/suggestion-styles.css.js +1 -1
- package/chips/internal/suggestion-styles.css.js.map +1 -1
- package/chips/internal/trailing-icon-styles.css.js +1 -1
- package/chips/internal/trailing-icon-styles.css.js.map +1 -1
- package/chips/suggestion-chip.js +1 -2
- package/chips/suggestion-chip.js.map +1 -1
- package/common.d.ts +2 -6
- package/common.js +2 -6
- package/common.js.map +1 -1
- package/dialog/harness.d.ts +1 -6
- package/dialog/harness.js +2 -43
- package/dialog/harness.js.map +1 -1
- package/dialog/internal/_dialog.scss +165 -281
- package/dialog/internal/animations.d.ts +47 -0
- package/dialog/internal/animations.js +117 -0
- package/dialog/internal/animations.js.map +1 -0
- package/dialog/internal/dialog-styles.css.js +1 -1
- package/dialog/internal/dialog-styles.css.js.map +1 -1
- package/dialog/internal/dialog.d.ts +76 -169
- package/dialog/internal/dialog.js +251 -475
- package/dialog/internal/dialog.js.map +1 -1
- package/elevation/internal/_elevation.scss +14 -7
- package/elevation/internal/elevation-styles.css.js +1 -1
- package/elevation/internal/elevation-styles.css.js.map +1 -1
- package/fab/branded-fab.d.ts +0 -1
- package/fab/internal/_fab.scss +15 -10
- package/fab/internal/_shared.scss +16 -1
- package/fab/internal/fab-styles.css.js +1 -1
- package/fab/internal/fab-styles.css.js.map +1 -1
- package/fab/internal/fab.d.ts +0 -1
- package/fab/internal/shared-styles.css.js +1 -1
- package/fab/internal/shared-styles.css.js.map +1 -1
- package/fab/internal/shared.d.ts +0 -13
- package/fab/internal/shared.js +5 -31
- package/fab/internal/shared.js.map +1 -1
- package/field/internal/filled-styles.css.js +1 -1
- package/field/internal/filled-styles.css.js.map +1 -1
- package/field/internal/outlined-styles.css.js +1 -1
- package/field/internal/outlined-styles.css.js.map +1 -1
- package/focus/internal/_focus-ring.scss +52 -48
- package/focus/internal/focus-ring-styles.css.js +1 -1
- package/focus/internal/focus-ring-styles.css.js.map +1 -1
- package/focus/internal/focus-ring.d.ts +2 -1
- package/focus/internal/focus-ring.js +10 -0
- package/focus/internal/focus-ring.js.map +1 -1
- package/icon/internal/_icon.scss +26 -20
- package/icon/internal/icon-styles.css.js +1 -1
- package/icon/internal/icon-styles.css.js.map +1 -1
- package/icon/internal/icon.d.ts +1 -0
- package/icon/internal/icon.js +9 -0
- package/icon/internal/icon.js.map +1 -1
- package/iconbutton/{_standard-icon-button.scss → _icon-button.scss} +1 -1
- package/iconbutton/{standard-icon-button.d.ts → icon-button.d.ts} +2 -2
- package/iconbutton/{standard-icon-button.js → icon-button.js} +7 -7
- package/iconbutton/icon-button.js.map +1 -0
- package/iconbutton/internal/_filled-icon-button.scss +8 -6
- package/iconbutton/internal/_filled-tonal-icon-button.scss +8 -6
- package/iconbutton/internal/{_standard-icon-button.scss → _icon-button.scss} +12 -8
- package/iconbutton/internal/_outlined-icon-button.scss +14 -14
- package/iconbutton/internal/_shared.scss +15 -9
- package/iconbutton/internal/filled-styles.css.js +1 -1
- package/iconbutton/internal/filled-styles.css.js.map +1 -1
- package/iconbutton/internal/filled-tonal-styles.css.js +1 -1
- package/iconbutton/internal/filled-tonal-styles.css.js.map +1 -1
- package/iconbutton/internal/icon-button.d.ts +25 -3
- package/iconbutton/internal/icon-button.js +45 -6
- package/iconbutton/internal/icon-button.js.map +1 -1
- package/iconbutton/internal/outlined-styles.css.js +1 -1
- package/iconbutton/internal/outlined-styles.css.js.map +1 -1
- package/iconbutton/internal/shared-styles.css.js +1 -1
- package/iconbutton/internal/shared-styles.css.js.map +1 -1
- package/iconbutton/internal/standard-styles.css.js +1 -1
- package/iconbutton/internal/standard-styles.css.js.map +1 -1
- package/iconbutton/internal/standard-styles.scss +2 -2
- package/internal/aria/delegate.d.ts +1 -1
- package/internal/aria/delegate.js +1 -1
- package/internal/aria/delegate.js.map +1 -1
- package/internal/controller/element-internals.d.ts +35 -0
- package/internal/controller/element-internals.js +24 -0
- package/internal/controller/element-internals.js.map +1 -0
- package/internal/controller/form-submitter.d.ts +72 -0
- package/internal/controller/form-submitter.js +71 -0
- package/internal/controller/form-submitter.js.map +1 -0
- package/labs/badge/internal/_badge.scss +11 -8
- package/labs/navigationbar/internal/_navigation-bar.scss +11 -9
- package/labs/navigationbar/internal/navigation-bar-styles.css.js +1 -1
- package/labs/navigationbar/internal/navigation-bar-styles.css.js.map +1 -1
- package/labs/navigationbar/internal/navigation-bar.js +1 -3
- package/labs/navigationbar/internal/navigation-bar.js.map +1 -1
- package/labs/navigationdrawer/internal/_navigation-drawer-modal.scss +11 -8
- package/labs/navigationdrawer/internal/_navigation-drawer.scss +11 -8
- package/labs/navigationdrawer/internal/navigation-drawer-modal-styles.css.js +1 -1
- package/labs/navigationdrawer/internal/navigation-drawer-modal-styles.css.js.map +1 -1
- package/labs/navigationdrawer/internal/navigation-drawer-modal.js +1 -3
- package/labs/navigationdrawer/internal/navigation-drawer-modal.js.map +1 -1
- package/labs/navigationdrawer/internal/navigation-drawer-styles.css.js +1 -1
- package/labs/navigationdrawer/internal/navigation-drawer-styles.css.js.map +1 -1
- package/labs/navigationdrawer/internal/navigation-drawer.js +1 -3
- package/labs/navigationdrawer/internal/navigation-drawer.js.map +1 -1
- package/labs/navigationtab/internal/_navigation-tab.scss +10 -10
- package/labs/navigationtab/internal/navigation-tab.js +1 -3
- package/labs/navigationtab/internal/navigation-tab.js.map +1 -1
- package/labs/segmentedbutton/internal/_outlined-segmented-button.scss +1 -3
- package/labs/segmentedbutton/internal/outlined-styles.css.js +1 -1
- package/labs/segmentedbutton/internal/outlined-styles.css.js.map +1 -1
- package/labs/segmentedbutton/internal/segmented-button.js +1 -3
- package/labs/segmentedbutton/internal/segmented-button.js.map +1 -1
- package/labs/segmentedbuttonset/internal/outlined-styles.css.js +1 -1
- package/labs/segmentedbuttonset/internal/outlined-styles.css.js.map +1 -1
- package/labs/segmentedbuttonset/internal/segmented-button-set.js +1 -3
- package/labs/segmentedbuttonset/internal/segmented-button-set.js.map +1 -1
- package/list/internal/_list.scss +6 -2
- package/list/internal/list-styles.css.js +1 -1
- package/list/internal/list-styles.css.js.map +1 -1
- package/list/internal/list.d.ts +2 -2
- package/list/internal/list.js +1 -3
- package/list/internal/list.js.map +1 -1
- package/list/internal/listitem/_list-item.scss +87 -131
- package/list/internal/listitem/forced-colors-styles.css.js +1 -1
- package/list/internal/listitem/forced-colors-styles.css.js.map +1 -1
- package/list/internal/listitem/forced-colors-styles.scss +6 -6
- package/list/internal/listitem/list-item-styles.css.js +1 -1
- package/list/internal/listitem/list-item-styles.css.js.map +1 -1
- package/list/internal/listitem/list-item.d.ts +15 -3
- package/list/internal/listitem/list-item.js +43 -10
- package/list/internal/listitem/list-item.js.map +1 -1
- package/menu/internal/_menu.scss +6 -3
- package/menu/internal/menu-styles.css.js +1 -1
- package/menu/internal/menu-styles.css.js.map +1 -1
- package/menu/internal/menu.js +9 -10
- package/menu/internal/menu.js.map +1 -1
- package/menu/internal/menuitem/_menu-item.scss +8 -5
- package/menu/internal/menuitem/forced-colors-styles.css.js +1 -1
- package/menu/internal/menuitem/forced-colors-styles.css.js.map +1 -1
- package/menu/internal/menuitem/forced-colors-styles.scss +1 -1
- package/menu/internal/menuitem/menu-item-styles.css.js +1 -1
- package/menu/internal/menuitem/menu-item-styles.css.js.map +1 -1
- package/menu/internal/menuitem/menu-item.d.ts +9 -0
- package/menu/internal/menuitem/menu-item.js +18 -4
- package/menu/internal/menuitem/menu-item.js.map +1 -1
- package/menu/internal/shared.d.ts +45 -38
- package/menu/internal/shared.js +29 -40
- package/menu/internal/shared.js.map +1 -1
- package/menu/internal/submenuitem/sub-menu-item.d.ts +22 -12
- package/menu/internal/submenuitem/sub-menu-item.js +39 -24
- package/menu/internal/submenuitem/sub-menu-item.js.map +1 -1
- package/menu/menu-item.d.ts +1 -1
- package/menu/menu-item.js +0 -1
- package/menu/menu-item.js.map +1 -1
- package/menu/menu.d.ts +1 -1
- package/menu/menu.js +0 -1
- package/menu/menu.js.map +1 -1
- package/menu/sub-menu-item.d.ts +1 -1
- package/menu/sub-menu-item.js +0 -1
- package/menu/sub-menu-item.js.map +1 -1
- package/package.json +1 -3
- package/progress/harness.js +2 -4
- package/progress/harness.js.map +1 -1
- package/progress/internal/_circular-progress.scss +4 -4
- package/progress/internal/_linear-progress.scss +93 -132
- package/progress/internal/circular-progress-styles.css.js +1 -1
- package/progress/internal/circular-progress-styles.css.js.map +1 -1
- package/progress/internal/circular-progress.js +1 -1
- package/progress/internal/circular-progress.js.map +1 -1
- package/progress/internal/linear-progress-styles.css.js +1 -1
- package/progress/internal/linear-progress-styles.css.js.map +1 -1
- package/progress/internal/linear-progress.d.ts +0 -11
- package/progress/internal/linear-progress.js +4 -48
- package/progress/internal/linear-progress.js.map +1 -1
- package/progress/internal/progress.js +1 -3
- package/progress/internal/progress.js.map +1 -1
- package/radio/internal/_radio.scss +38 -24
- package/radio/internal/forced-colors-styles.css.js +1 -1
- package/radio/internal/forced-colors-styles.css.js.map +1 -1
- package/radio/internal/forced-colors-styles.scss +4 -4
- package/radio/internal/radio-styles.css.js +1 -1
- package/radio/internal/radio-styles.css.js.map +1 -1
- package/radio/internal/radio.d.ts +1 -1
- package/radio/internal/radio.js +7 -6
- package/radio/internal/radio.js.map +1 -1
- package/ripple/internal/_ripple.scss +1 -1
- package/ripple/internal/ripple-styles.css.js +1 -1
- package/ripple/internal/ripple-styles.css.js.map +1 -1
- package/select/internal/_filled-select.scss +2 -3
- package/select/internal/_outlined-select.scss +2 -3
- package/select/internal/_shared.scss +30 -1
- package/select/internal/filled-select-styles.css.js +1 -1
- package/select/internal/filled-select-styles.css.js.map +1 -1
- package/select/internal/outlined-select-styles.css.js +1 -1
- package/select/internal/outlined-select-styles.css.js.map +1 -1
- package/select/internal/select.d.ts +0 -5
- package/select/internal/select.js +11 -16
- package/select/internal/select.js.map +1 -1
- package/select/internal/selectoption/select-option.d.ts +5 -6
- package/select/internal/selectoption/select-option.js +8 -9
- package/select/internal/selectoption/select-option.js.map +1 -1
- package/select/internal/shared-styles.css.js +1 -1
- package/select/internal/shared-styles.css.js.map +1 -1
- package/select/internal/shared.d.ts +5 -9
- package/select/internal/shared.js +13 -11
- package/select/internal/shared.js.map +1 -1
- package/slider/internal/_slider.scss +33 -28
- package/slider/internal/forced-colors-styles.css.js +1 -1
- package/slider/internal/forced-colors-styles.css.js.map +1 -1
- package/slider/internal/slider-styles.css.js +1 -1
- package/slider/internal/slider-styles.css.js.map +1 -1
- package/slider/internal/slider.d.ts +22 -8
- package/slider/internal/slider.js +114 -25
- package/slider/internal/slider.js.map +1 -1
- package/switch/internal/_handle.scss +12 -12
- package/switch/internal/_icon.scss +8 -8
- package/switch/internal/_switch.scss +9 -1
- package/switch/internal/_track.scss +10 -10
- package/switch/internal/forced-colors-styles.css.js +1 -1
- package/switch/internal/forced-colors-styles.css.js.map +1 -1
- package/switch/internal/forced-colors-styles.scss +12 -12
- package/switch/internal/switch-styles.css.js +1 -1
- package/switch/internal/switch-styles.css.js.map +1 -1
- package/switch/internal/switch.d.ts +1 -1
- package/switch/internal/switch.js +3 -5
- package/switch/internal/switch.js.map +1 -1
- package/tabs/internal/_tab.scss +77 -21
- package/tabs/internal/_tabs.scss +1 -0
- package/tabs/internal/tab-styles.css.js +1 -1
- package/tabs/internal/tab-styles.css.js.map +1 -1
- package/tabs/internal/tab.d.ts +3 -9
- package/tabs/internal/tab.js +4 -8
- package/tabs/internal/tab.js.map +1 -1
- package/tabs/internal/tabs.d.ts +1 -4
- package/tabs/internal/tabs.js +5 -10
- package/tabs/internal/tabs.js.map +1 -1
- package/textfield/harness.js +4 -0
- package/textfield/harness.js.map +1 -1
- package/textfield/internal/filled-styles.css.js +1 -1
- package/textfield/internal/filled-styles.css.js.map +1 -1
- package/textfield/internal/outlined-styles.css.js +1 -1
- package/textfield/internal/outlined-styles.css.js.map +1 -1
- package/textfield/internal/text-field.d.ts +11 -10
- package/textfield/internal/text-field.js +60 -35
- package/textfield/internal/text-field.js.map +1 -1
- package/tokens/_index.scss +1 -0
- package/tokens/_md-comp-checkbox.scss +16 -16
- package/tokens/_md-comp-dialog.scss +2 -1
- package/tokens/_md-comp-elevated-button.scss +14 -12
- package/tokens/_md-comp-filled-button.scss +14 -12
- package/tokens/_md-comp-filled-field.scss +2 -2
- package/tokens/_md-comp-filled-icon-button.scss +23 -8
- package/tokens/_md-comp-filled-select.scss +22 -1
- package/tokens/_md-comp-filled-text-field.scss +3 -1
- package/tokens/_md-comp-filled-tonal-button.scss +14 -12
- package/tokens/_md-comp-filled-tonal-icon-button.scss +23 -8
- package/tokens/_md-comp-icon-button.scss +24 -11
- package/tokens/_md-comp-icon.scss +32 -0
- package/tokens/_md-comp-list-item.scss +117 -103
- package/tokens/_md-comp-menu-item.scss +3 -3
- package/tokens/_md-comp-outlined-button.scss +14 -12
- package/tokens/_md-comp-outlined-field.scss +2 -1
- package/tokens/_md-comp-outlined-icon-button.scss +26 -12
- package/tokens/_md-comp-outlined-segmented-button.scss +2 -2
- package/tokens/_md-comp-outlined-select.scss +8 -0
- package/tokens/_md-comp-outlined-text-field.scss +3 -1
- package/tokens/_md-comp-radio-button.scss +20 -9
- package/tokens/_md-comp-switch.scss +66 -32
- package/tokens/_md-comp-text-button.scss +14 -12
- package/button/internal/tonal-button.js.map +0 -1
- package/button/internal/tonal-styles.css.js +0 -9
- package/button/internal/tonal-styles.css.js.map +0 -1
- package/button/tonal-button.js.map +0 -1
- package/chips/internal/assist-forced-colors-styles.css.d.ts +0 -1
- package/chips/internal/assist-forced-colors-styles.css.js +0 -9
- package/chips/internal/assist-forced-colors-styles.css.js.map +0 -1
- package/chips/internal/assist-forced-colors-styles.scss +0 -27
- package/chips/internal/filter-forced-colors-styles.css.d.ts +0 -1
- package/chips/internal/filter-forced-colors-styles.css.js +0 -9
- package/chips/internal/filter-forced-colors-styles.css.js.map +0 -1
- package/chips/internal/filter-forced-colors-styles.scss +0 -34
- package/chips/internal/input-forced-colors-styles.css.d.ts +0 -1
- package/chips/internal/input-forced-colors-styles.css.js +0 -9
- package/chips/internal/input-forced-colors-styles.css.js.map +0 -1
- package/chips/internal/input-forced-colors-styles.scss +0 -39
- package/chips/internal/suggestion-forced-colors-styles.css.d.ts +0 -1
- package/chips/internal/suggestion-forced-colors-styles.css.js +0 -9
- package/chips/internal/suggestion-forced-colors-styles.css.js.map +0 -1
- package/chips/internal/suggestion-forced-colors-styles.scss +0 -27
- package/dialog/internal/_tokens.scss +0 -66
- package/icon/internal/_md-comp-icon.scss +0 -18
- package/iconbutton/standard-icon-button.js.map +0 -1
- package/internal/sass/_theme.scss +0 -249
- package/list/internal/listitemlink/list-item-link-only.d.ts +0 -23
- package/list/internal/listitemlink/list-item-link-only.js +0 -36
- package/list/internal/listitemlink/list-item-link-only.js.map +0 -1
- package/list/internal/listitemlink/list-item-link.d.ts +0 -18
- package/list/internal/listitemlink/list-item-link.js +0 -42
- package/list/internal/listitemlink/list-item-link.js.map +0 -1
- package/list/list-item-link.d.ts +0 -53
- package/list/list-item-link.js +0 -57
- package/list/list-item-link.js.map +0 -1
- package/menu/internal/menuitemlink/menu-item-link.d.ts +0 -23
- package/menu/internal/menuitemlink/menu-item-link.js +0 -49
- package/menu/internal/menuitemlink/menu-item-link.js.map +0 -1
- package/menu/menu-item-link.d.ts +0 -33
- package/menu/menu-item-link.js +0 -38
- package/menu/menu-item-link.js.map +0 -1
- /package/button/internal/{tonal-styles.css.d.ts → filled-tonal-styles.css.d.ts} +0 -0
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
//
|
|
2
|
-
// Copyright 2023 Google LLC
|
|
3
|
-
// SPDX-License-Identifier: Apache-2.0
|
|
4
|
-
//
|
|
5
|
-
|
|
6
|
-
// go/keep-sorted start
|
|
7
|
-
@use 'sass:map';
|
|
8
|
-
@use 'sass:string';
|
|
9
|
-
// go/keep-sorted end
|
|
10
|
-
// go/keep-sorted start
|
|
11
|
-
@use '../../internal/sass/string-ext';
|
|
12
|
-
@use '../../internal/sass/theme';
|
|
13
|
-
@use '../../tokens';
|
|
14
|
-
// go/keep-sorted end
|
|
15
|
-
|
|
16
|
-
$_md-sys-motion: tokens.md-sys-motion-values();
|
|
17
|
-
$_md-sys-color: tokens.md-sys-color-values-light();
|
|
18
|
-
|
|
19
|
-
$_tokens: (
|
|
20
|
-
// Container size
|
|
21
|
-
container-max-inline-size: min(560px, calc(100% - 48px)),
|
|
22
|
-
container-min-inline-size: 280px,
|
|
23
|
-
container-max-block-size: min(560px, calc(100% - 48px)),
|
|
24
|
-
container-min-block-size: 140px,
|
|
25
|
-
// Container position
|
|
26
|
-
container-inset-inline-start: auto,
|
|
27
|
-
container-inset-inline-end: auto,
|
|
28
|
-
container-inset-block-start: auto,
|
|
29
|
-
container-inset-block-end: auto,
|
|
30
|
-
|
|
31
|
-
// Transition
|
|
32
|
-
// Basing on https://m3.material.io/styles/motion/easing-and-duration/applying-easing-and-duration#27a05b8b-02b1-4695-a7e4-70797f205222
|
|
33
|
-
opening-transition-duration: map.get($_md-sys-motion, 'duration-medium4'),
|
|
34
|
-
opening-transition-easing:
|
|
35
|
-
map.get($_md-sys-motion, 'easing-emphasized-decelerate'),
|
|
36
|
-
closing-transition-duration: map.get($_md-sys-motion, 'duration-short4'),
|
|
37
|
-
closing-transition-easing:
|
|
38
|
-
map.get($_md-sys-motion, 'easing-emphasized-accelerate'),
|
|
39
|
-
// Scrim
|
|
40
|
-
scrim-color: rgba(0, 0, 0, 0.32),
|
|
41
|
-
// Content
|
|
42
|
-
container-block-padding: 24px,
|
|
43
|
-
container-inline-padding: 24px,
|
|
44
|
-
header-spacing: 16px,
|
|
45
|
-
action-spacing: 8px,
|
|
46
|
-
content-block-start-spacing: 16px,
|
|
47
|
-
content-block-end-spacing: 24px,
|
|
48
|
-
// Divider
|
|
49
|
-
with-divider-divider-height: 1px,
|
|
50
|
-
with-divider-divider-color: map.get($_md-sys-color, 'outline')
|
|
51
|
-
);
|
|
52
|
-
|
|
53
|
-
$_fullscreen-tokens: (
|
|
54
|
-
fullscreen-header-block-size: 56px,
|
|
55
|
-
fullscreen-footer-block-size: 56px,
|
|
56
|
-
// Note, the 8px here is not per spec, but needed to make the explicit 56px not be cramped.
|
|
57
|
-
fullscreen-container-block-padding: 8px,
|
|
58
|
-
);
|
|
59
|
-
|
|
60
|
-
// Extended token set for dialog.
|
|
61
|
-
@function md-comp-dialog-values() {
|
|
62
|
-
@return map.merge(
|
|
63
|
-
map.merge(tokens.md-comp-dialog-values(), $_tokens),
|
|
64
|
-
$_fullscreen-tokens
|
|
65
|
-
);
|
|
66
|
-
}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
//
|
|
2
|
-
// Copyright 2022 Google LLC
|
|
3
|
-
// SPDX-License-Identifier: Apache-2.0
|
|
4
|
-
//
|
|
5
|
-
|
|
6
|
-
@function values($exclude-hardcoded-values: false) {
|
|
7
|
-
$values: (
|
|
8
|
-
(
|
|
9
|
-
color: if($exclude-hardcoded-values, null, inherit),
|
|
10
|
-
font: if($exclude-hardcoded-values, null, 'Material Symbols Outlined'),
|
|
11
|
-
font-variation-settings: if($exclude-hardcoded-values, null, inherit),
|
|
12
|
-
size: if($exclude-hardcoded-values, null, 24px),
|
|
13
|
-
weight: if($exclude-hardcoded-values, null, 400),
|
|
14
|
-
)
|
|
15
|
-
);
|
|
16
|
-
|
|
17
|
-
@return $values;
|
|
18
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"standard-icon-button.js","sourceRoot":"","sources":["standard-icon-button.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;AAEH,OAAO,EAAC,aAAa,EAAC,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAC,UAAU,EAAC,MAAM,2BAA2B,CAAC;AACrD,OAAO,EAAC,MAAM,IAAI,YAAY,EAAC,MAAM,iCAAiC,CAAC;AACvE,OAAO,EAAC,MAAM,EAAC,MAAM,mCAAmC,CAAC;AAQzD;;;;;;;;;;;;;;GAcG;AAEI,IAAM,oBAAoB,GAA1B,MAAM,oBAAqB,SAAQ,UAAU;IAG/B,gBAAgB;QACjC,OAAO;YACL,GAAG,KAAK,CAAC,gBAAgB,EAAE;YAC3B,UAAU,EAAE,IAAI;SACjB,CAAC;IACJ,CAAC;;AAPe,2BAAM,GAAG,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;AADrC,oBAAoB;IADhC,aAAa,CAAC,yBAAyB,CAAC;GAC5B,oBAAoB,CAShC;SATY,oBAAoB","sourcesContent":["/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {customElement} from 'lit/decorators.js';\n\nimport {IconButton} from './internal/icon-button.js';\nimport {styles as sharedStyles} from './internal/shared-styles.css.js';\nimport {styles} from './internal/standard-styles.css.js';\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'md-standard-icon-button': MdStandardIconButton;\n }\n}\n\n/**\n * @summary Icon buttons help people take supplementary actions with a single\n * tap.\n *\n * @description\n * __Emphasis:__ Low emphasis – For optional or supplementary actions with the\n * least amount of prominence.\n *\n * __Rationale:__ The most compact and unobtrusive type of button, icon buttons\n * are used for optional supplementary actions such as \"Bookmark\" or \"Star.\"\n *\n * __Example usages:__\n * - Add to Favorites\n * - Print\n */\n@customElement('md-standard-icon-button')\nexport class MdStandardIconButton extends IconButton {\n static override styles = [sharedStyles, styles];\n\n protected override getRenderClasses() {\n return {\n ...super.getRenderClasses(),\n 'standard': true,\n };\n }\n}\n"]}
|
|
@@ -1,249 +0,0 @@
|
|
|
1
|
-
//
|
|
2
|
-
// Copyright 2021 Google LLC
|
|
3
|
-
// SPDX-License-Identifier: Apache-2.0
|
|
4
|
-
//
|
|
5
|
-
|
|
6
|
-
// go/keep-sorted start
|
|
7
|
-
@use 'sass:list';
|
|
8
|
-
@use 'sass:map';
|
|
9
|
-
@use 'sass:meta';
|
|
10
|
-
// go/keep-sorted end
|
|
11
|
-
// go/keep-sorted start
|
|
12
|
-
@use './string-ext';
|
|
13
|
-
@use './var';
|
|
14
|
-
// go/keep-sorted end
|
|
15
|
-
|
|
16
|
-
/// Transform a user-provided `$theme` map's values into `var()` custom property
|
|
17
|
-
/// values.
|
|
18
|
-
///
|
|
19
|
-
/// Use this function in `theme-styles()` mixins to transform values into
|
|
20
|
-
/// custom property `var()` "slots" that can subsequently be styled via
|
|
21
|
-
/// `theme.emit-theme-vars()` in the `theme()` mixin by the user.
|
|
22
|
-
///
|
|
23
|
-
/// @example - scss
|
|
24
|
-
/// $light-theme: (
|
|
25
|
-
/// label-color: purple
|
|
26
|
-
/// );
|
|
27
|
-
///
|
|
28
|
-
/// @mixin theme-styles($theme) {
|
|
29
|
-
/// $theme: theme.create-theme-vars($theme, button);
|
|
30
|
-
///
|
|
31
|
-
/// .foo {
|
|
32
|
-
/// color: map.get($theme, label-color);
|
|
33
|
-
/// }
|
|
34
|
-
/// }
|
|
35
|
-
///
|
|
36
|
-
/// @example - css
|
|
37
|
-
/// .foo {
|
|
38
|
-
/// color: var(--md-button-label-color, purple);
|
|
39
|
-
/// }
|
|
40
|
-
///
|
|
41
|
-
/// @param {Map} $theme - The theme Map to transform values into custom property
|
|
42
|
-
/// `var()`s.
|
|
43
|
-
/// @param {String} $prefix - Component and variant prefix to prepend for each
|
|
44
|
-
/// token's custom property name.
|
|
45
|
-
/// @return {Map} The provided `$theme` Map whose values are replaced with the
|
|
46
|
-
/// `var()` custom properties.
|
|
47
|
-
@function create-theme-vars($theme, $prefix) {
|
|
48
|
-
@each $key, $value in $theme {
|
|
49
|
-
@if $value != null {
|
|
50
|
-
$token: combine-tokens($prefix, $key);
|
|
51
|
-
|
|
52
|
-
@if meta.type-of($value) == 'map' {
|
|
53
|
-
$value: create-theme-vars($value, $token);
|
|
54
|
-
} @else {
|
|
55
|
-
$value: var.create($token, $value);
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
$theme: map.set($theme, $key, $value);
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
@return $theme;
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
/// Emits CSS declaration values for a theme map that has been transformed with
|
|
66
|
-
/// `create-theme-vars()`.
|
|
67
|
-
///
|
|
68
|
-
/// Use this in `theme()` mixins to set user-provided token customizations.
|
|
69
|
-
///
|
|
70
|
-
/// @example - scss
|
|
71
|
-
/// $light-theme: (
|
|
72
|
-
/// label-color: purple
|
|
73
|
-
/// );
|
|
74
|
-
///
|
|
75
|
-
/// @mixin theme($theme) {
|
|
76
|
-
/// $theme: theme.create-theme-vars($theme, button);
|
|
77
|
-
///
|
|
78
|
-
/// @include theme.emit-theme-vars($theme);
|
|
79
|
-
/// }
|
|
80
|
-
///
|
|
81
|
-
/// .my-button {
|
|
82
|
-
/// @include theme((label-color: teal));
|
|
83
|
-
/// }
|
|
84
|
-
///
|
|
85
|
-
/// @example - css
|
|
86
|
-
/// .my-button {
|
|
87
|
-
/// --md-button-label-color: teal;
|
|
88
|
-
/// }
|
|
89
|
-
///
|
|
90
|
-
/// @param {Map} $theme - The theme Map to emit custom property declarations
|
|
91
|
-
/// for.
|
|
92
|
-
@mixin emit-theme-vars($theme) {
|
|
93
|
-
@each $token, $value in $theme {
|
|
94
|
-
@if $value {
|
|
95
|
-
@if meta.type-of($value) == 'map' {
|
|
96
|
-
@include emit-theme-vars($value);
|
|
97
|
-
} @else if not var.is-var($value) {
|
|
98
|
-
@error '"#{$token}": #{$value} is not a var(). Call create-theme-vars($theme) before emit-theme-vars($theme).';
|
|
99
|
-
} @else {
|
|
100
|
-
#{var.name($value)}: #{var.fallback($value)};
|
|
101
|
-
}
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
|
|
106
|
-
/// Combines one or more token parts into a token.
|
|
107
|
-
///
|
|
108
|
-
/// @example - scss
|
|
109
|
-
/// $key: combine(body, font-size);
|
|
110
|
-
/// // body-font-size
|
|
111
|
-
///
|
|
112
|
-
/// @param {String...} $parts - Arbitrary number of string token parts to
|
|
113
|
-
/// combine.
|
|
114
|
-
/// @return {String} A combined token string.
|
|
115
|
-
@function combine-tokens($parts...) {
|
|
116
|
-
// Allow extra keywords to be passed to other functions without impacting this
|
|
117
|
-
// function, which does not expect any keywords.
|
|
118
|
-
$unused: meta.keywords($parts);
|
|
119
|
-
$token: '';
|
|
120
|
-
@each $part in $parts {
|
|
121
|
-
@if $part {
|
|
122
|
-
@if $token == '' {
|
|
123
|
-
$token: $part;
|
|
124
|
-
} @else {
|
|
125
|
-
$token: #{$token}-#{$part};
|
|
126
|
-
}
|
|
127
|
-
}
|
|
128
|
-
}
|
|
129
|
-
|
|
130
|
-
@return $token;
|
|
131
|
-
}
|
|
132
|
-
|
|
133
|
-
/// Validates a theme's tokens and values and throws an error if incorrect
|
|
134
|
-
/// tokens are present or invalid values are provided.
|
|
135
|
-
///
|
|
136
|
-
/// Use this in `theme()` mixins to validate user-provided `$theme` maps before
|
|
137
|
-
/// providing the value to `theme.create-theme-vars()`.
|
|
138
|
-
///
|
|
139
|
-
/// @example - scss
|
|
140
|
-
/// @mixin theme($theme) {
|
|
141
|
-
/// $theme: theme.validate-theme($light-theme, $theme);
|
|
142
|
-
/// $theme: theme.create-theme-vars($theme, checkbox);
|
|
143
|
-
/// }
|
|
144
|
-
///
|
|
145
|
-
/// @throw If any tokens or values are invalid.
|
|
146
|
-
/// @param {Map} $reference-theme - A reference theme Map whose token keys will
|
|
147
|
-
/// be used to validate the user-provided theme.
|
|
148
|
-
/// @param {Map} $theme - User-provided theme Map to validate.
|
|
149
|
-
/// @return {Map} The validated user-provided theme Map.
|
|
150
|
-
@function validate-theme($reference-theme, $theme) {
|
|
151
|
-
$theme: _validate-theme-tokens(
|
|
152
|
-
map.keys($reference-theme),
|
|
153
|
-
$theme,
|
|
154
|
-
$require-all: false
|
|
155
|
-
);
|
|
156
|
-
|
|
157
|
-
@return $theme;
|
|
158
|
-
}
|
|
159
|
-
|
|
160
|
-
/// Validates a theme's tokens and throws an error if incorrect tokens are
|
|
161
|
-
/// present or any tokens are missing.
|
|
162
|
-
///
|
|
163
|
-
/// Use this in internal `theme-styles()` mixins to validate library-provided
|
|
164
|
-
/// `$theme` maps and ensure that all tokens are correct and present.
|
|
165
|
-
///
|
|
166
|
-
/// @example - scss
|
|
167
|
-
/// @mixin theme-styles($theme) {
|
|
168
|
-
/// $theme: theme.validate-theme-styles($light-theme, $theme);
|
|
169
|
-
/// $theme: theme.create-theme-vars($theme, checkbox);
|
|
170
|
-
/// }
|
|
171
|
-
///
|
|
172
|
-
/// @throw If any tokens are invalid or missing.
|
|
173
|
-
/// @param {Map|List} $reference-theme - A complete reference theme Map (or List
|
|
174
|
-
/// of tokens) to validate the theme.
|
|
175
|
-
/// @param {Map} $theme - The theme Map to validate.
|
|
176
|
-
/// @return {Map} The validated theme Map.
|
|
177
|
-
@function validate-theme-styles($reference-theme, $theme, $require-all: true) {
|
|
178
|
-
$valid-tokens: $reference-theme;
|
|
179
|
-
@if meta.type-of($reference-theme) == 'map' {
|
|
180
|
-
$valid-tokens: map.keys($reference-theme);
|
|
181
|
-
}
|
|
182
|
-
|
|
183
|
-
@return _validate-theme-tokens(
|
|
184
|
-
$valid-tokens,
|
|
185
|
-
$theme,
|
|
186
|
-
$require-all: $require-all
|
|
187
|
-
);
|
|
188
|
-
}
|
|
189
|
-
|
|
190
|
-
/// Validates a theme's tokens and throws an error if incorrect tokens are
|
|
191
|
-
/// present or optionally missing if `$require-all` is true.
|
|
192
|
-
///
|
|
193
|
-
/// @throw If any tokens are invalid or optionally missing.
|
|
194
|
-
/// @param {List} $valid-tokens - A List of token keys to validate the theme.
|
|
195
|
-
/// @param {Map} $theme - The theme Map to validate.
|
|
196
|
-
/// @param {Bool} $require-all [false] - If true, throw an error if the theme
|
|
197
|
-
/// is missing tokens from the list.
|
|
198
|
-
/// @return {Map} The validated theme Map.
|
|
199
|
-
@function _validate-theme-tokens($valid-tokens, $theme, $require-all: false) {
|
|
200
|
-
$missing-tokens: ();
|
|
201
|
-
$unsupported-tokens: ();
|
|
202
|
-
|
|
203
|
-
@each $token, $value in $theme {
|
|
204
|
-
@if list.index($valid-tokens, $token) == null {
|
|
205
|
-
$unsupported-tokens: list.append(
|
|
206
|
-
$unsupported-tokens,
|
|
207
|
-
$token,
|
|
208
|
-
$separator: comma
|
|
209
|
-
);
|
|
210
|
-
}
|
|
211
|
-
}
|
|
212
|
-
|
|
213
|
-
@if $require-all {
|
|
214
|
-
// TODO(b/203778922): Remove when type composite tokens are removed
|
|
215
|
-
$ignore-suffix: (
|
|
216
|
-
// Ignore composite font tokens
|
|
217
|
-
'-type'
|
|
218
|
-
);
|
|
219
|
-
|
|
220
|
-
@each $token in $valid-tokens {
|
|
221
|
-
$missing: map.get($theme, $token) == null;
|
|
222
|
-
@if $missing {
|
|
223
|
-
@each $suffix in $ignore-suffix {
|
|
224
|
-
@if string-ext.has-suffix($token, $suffix) {
|
|
225
|
-
$missing: false;
|
|
226
|
-
}
|
|
227
|
-
}
|
|
228
|
-
}
|
|
229
|
-
|
|
230
|
-
@if $missing {
|
|
231
|
-
$missing-tokens: list.append(
|
|
232
|
-
$missing-tokens,
|
|
233
|
-
$token,
|
|
234
|
-
$separator: comma
|
|
235
|
-
);
|
|
236
|
-
}
|
|
237
|
-
}
|
|
238
|
-
}
|
|
239
|
-
|
|
240
|
-
@if list.length($unsupported-tokens) > 0 {
|
|
241
|
-
@error 'The following tokens are invalid: #{$unsupported-tokens}.';
|
|
242
|
-
}
|
|
243
|
-
|
|
244
|
-
@if list.length($missing-tokens) > 0 {
|
|
245
|
-
@error 'The following required tokens are missing: #{$missing-tokens}.';
|
|
246
|
-
}
|
|
247
|
-
|
|
248
|
-
@return $theme;
|
|
249
|
-
}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright 2023 Google LLC
|
|
4
|
-
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
-
*/
|
|
6
|
-
import { nothing } from 'lit';
|
|
7
|
-
import { ListItemLink } from './list-item-link.js';
|
|
8
|
-
export declare class ListItemLinkOnly extends ListItemLink {
|
|
9
|
-
/**
|
|
10
|
-
* Removes the hover and click ripples from the item when true. Clicking the
|
|
11
|
-
* link will still cause link navigation.
|
|
12
|
-
*/
|
|
13
|
-
noninteractive: boolean;
|
|
14
|
-
getRenderClasses(): {
|
|
15
|
-
noninteractive: boolean;
|
|
16
|
-
'with-one-line': boolean;
|
|
17
|
-
'with-two-line': boolean;
|
|
18
|
-
'with-three-line': boolean;
|
|
19
|
-
disabled: boolean;
|
|
20
|
-
};
|
|
21
|
-
renderRipple(): typeof nothing | import("lit-html").TemplateResult<2 | 1>;
|
|
22
|
-
renderFocusRing(): typeof nothing | import("lit-html").TemplateResult<2 | 1>;
|
|
23
|
-
}
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright 2023 Google LLC
|
|
4
|
-
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
-
*/
|
|
6
|
-
import { __decorate } from "tslib";
|
|
7
|
-
import { nothing } from 'lit';
|
|
8
|
-
import { property } from 'lit/decorators.js';
|
|
9
|
-
import { ListItemLink } from './list-item-link.js';
|
|
10
|
-
// tslint:disable-next-line:enforce-comments-on-exported-symbols
|
|
11
|
-
export class ListItemLinkOnly extends ListItemLink {
|
|
12
|
-
constructor() {
|
|
13
|
-
super(...arguments);
|
|
14
|
-
/**
|
|
15
|
-
* Removes the hover and click ripples from the item when true. Clicking the
|
|
16
|
-
* link will still cause link navigation.
|
|
17
|
-
*/
|
|
18
|
-
this.noninteractive = false;
|
|
19
|
-
}
|
|
20
|
-
getRenderClasses() {
|
|
21
|
-
return {
|
|
22
|
-
...super.getRenderClasses(),
|
|
23
|
-
'noninteractive': this.noninteractive,
|
|
24
|
-
};
|
|
25
|
-
}
|
|
26
|
-
renderRipple() {
|
|
27
|
-
return this.noninteractive ? nothing : super.renderRipple();
|
|
28
|
-
}
|
|
29
|
-
renderFocusRing() {
|
|
30
|
-
return this.noninteractive ? nothing : super.renderFocusRing();
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
__decorate([
|
|
34
|
-
property({ type: Boolean })
|
|
35
|
-
], ListItemLinkOnly.prototype, "noninteractive", void 0);
|
|
36
|
-
//# sourceMappingURL=list-item-link-only.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"list-item-link-only.js","sourceRoot":"","sources":["list-item-link-only.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;AAEH,OAAO,EAAC,OAAO,EAAC,MAAM,KAAK,CAAC;AAC5B,OAAO,EAAC,QAAQ,EAAC,MAAM,mBAAmB,CAAC;AAE3C,OAAO,EAAC,YAAY,EAAC,MAAM,qBAAqB,CAAC;AAEjD,gEAAgE;AAChE,MAAM,OAAO,gBAAiB,SAAQ,YAAY;IAAlD;;QACE;;;WAGG;QACwB,mBAAc,GAAG,KAAK,CAAC;IAgBpD,CAAC;IAdU,gBAAgB;QACvB,OAAO;YACL,GAAG,KAAK,CAAC,gBAAgB,EAAE;YAC3B,gBAAgB,EAAE,IAAI,CAAC,cAAc;SACtC,CAAC;IACJ,CAAC;IAEQ,YAAY;QACnB,OAAO,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;IAC9D,CAAC;IAEQ,eAAe;QACtB,OAAO,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,eAAe,EAAE,CAAC;IACjE,CAAC;CACF;AAhB4B;IAA1B,QAAQ,CAAC,EAAC,IAAI,EAAE,OAAO,EAAC,CAAC;wDAAwB","sourcesContent":["/**\n * @license\n * Copyright 2023 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {nothing} from 'lit';\nimport {property} from 'lit/decorators.js';\n\nimport {ListItemLink} from './list-item-link.js';\n\n// tslint:disable-next-line:enforce-comments-on-exported-symbols\nexport class ListItemLinkOnly extends ListItemLink {\n /**\n * Removes the hover and click ripples from the item when true. Clicking the\n * link will still cause link navigation.\n */\n @property({type: Boolean}) noninteractive = false;\n\n override getRenderClasses() {\n return {\n ...super.getRenderClasses(),\n 'noninteractive': this.noninteractive,\n };\n }\n\n override renderRipple() {\n return this.noninteractive ? nothing : super.renderRipple();\n }\n\n override renderFocusRing() {\n return this.noninteractive ? nothing : super.renderFocusRing();\n }\n}\n"]}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright 2022 Google LLC
|
|
4
|
-
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
-
*/
|
|
6
|
-
import { ListItemEl, ListItemRole } from '../listitem/list-item.js';
|
|
7
|
-
export declare class ListItemLink extends ListItemEl {
|
|
8
|
-
/**
|
|
9
|
-
* Sets the underlying `HTMLAnchorElement`'s `href` resource attribute.
|
|
10
|
-
*/
|
|
11
|
-
href: string;
|
|
12
|
-
type: ListItemRole;
|
|
13
|
-
/**
|
|
14
|
-
* Sets the underlying `HTMLAnchorElement`'s `target` attribute.
|
|
15
|
-
*/
|
|
16
|
-
target: string;
|
|
17
|
-
protected renderListItem(content: unknown): import("lit-html").TemplateResult<1>;
|
|
18
|
-
}
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright 2022 Google LLC
|
|
4
|
-
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
-
*/
|
|
6
|
-
import { __decorate } from "tslib";
|
|
7
|
-
import { html, nothing } from 'lit';
|
|
8
|
-
import { property } from 'lit/decorators.js';
|
|
9
|
-
import { classMap } from 'lit/directives/class-map.js';
|
|
10
|
-
import { ListItemEl } from '../listitem/list-item.js';
|
|
11
|
-
// tslint:disable-next-line:enforce-comments-on-exported-symbols
|
|
12
|
-
export class ListItemLink extends ListItemEl {
|
|
13
|
-
constructor() {
|
|
14
|
-
super(...arguments);
|
|
15
|
-
this.type = 'none';
|
|
16
|
-
}
|
|
17
|
-
renderListItem(content) {
|
|
18
|
-
return html `
|
|
19
|
-
<a
|
|
20
|
-
id="item"
|
|
21
|
-
tabindex=${this.disabled ? -1 : this.itemTabIndex}
|
|
22
|
-
role=${this.type === 'none' ? nothing : this.type}
|
|
23
|
-
aria-selected=${this.ariaSelected || nothing}
|
|
24
|
-
aria-checked=${this.ariaChecked || nothing}
|
|
25
|
-
class="list-item ${classMap(this.getRenderClasses())}"
|
|
26
|
-
href=${this.href}
|
|
27
|
-
target=${this.target || nothing}
|
|
28
|
-
@click=${this.onClick}
|
|
29
|
-
@pointerenter=${this.onPointerenter}
|
|
30
|
-
@pointerleave=${this.onPointerleave}
|
|
31
|
-
@keydown=${this.onKeydown}
|
|
32
|
-
>${content}</a>
|
|
33
|
-
`;
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
__decorate([
|
|
37
|
-
property()
|
|
38
|
-
], ListItemLink.prototype, "href", void 0);
|
|
39
|
-
__decorate([
|
|
40
|
-
property()
|
|
41
|
-
], ListItemLink.prototype, "target", void 0);
|
|
42
|
-
//# sourceMappingURL=list-item-link.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"list-item-link.js","sourceRoot":"","sources":["list-item-link.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;AAEH,OAAO,EAAC,IAAI,EAAE,OAAO,EAAC,MAAM,KAAK,CAAC;AAClC,OAAO,EAAC,QAAQ,EAAC,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAC,QAAQ,EAAC,MAAM,6BAA6B,CAAC;AAGrD,OAAO,EAAC,UAAU,EAAe,MAAM,0BAA0B,CAAC;AAIlE,gEAAgE;AAChE,MAAM,OAAO,YAAa,SAAQ,UAAU;IAA5C;;QAMW,SAAI,GAAiB,MAAM,CAAC;IAwBvC,CAAC;IAlBoB,cAAc,CAAC,OAAgB;QAChD,OAAO,IAAI,CAAA;;;mBAGI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY;eAC1C,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI;wBAChC,IAAwB,CAAC,YAAY,IAAI,OAAO;uBACjD,IAAwB,CAAC,WAAW,IAAI,OAAO;2BAC5C,QAAQ,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;eAC7C,IAAI,CAAC,IAAI;iBACP,IAAI,CAAC,MAAoB,IAAI,OAAO;iBACpC,IAAI,CAAC,OAAO;wBACL,IAAI,CAAC,cAAc;wBACnB,IAAI,CAAC,cAAc;mBACxB,IAAI,CAAC,SAAS;SACxB,OAAO;KACX,CAAC;IACJ,CAAC;CACF;AA1Ba;IAAX,QAAQ,EAAE;0CAAe;AAOd;IAAX,QAAQ,EAAE;4CAAiB","sourcesContent":["/**\n * @license\n * Copyright 2022 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {html, nothing} from 'lit';\nimport {property} from 'lit/decorators.js';\nimport {classMap} from 'lit/directives/class-map.js';\n\nimport {ARIAMixinStrict} from '../../../internal/aria/aria.js';\nimport {ListItemEl, ListItemRole} from '../listitem/list-item.js';\n\ntype LinkTarget = '_blank'|'_parent'|'_self'|'_top';\n\n// tslint:disable-next-line:enforce-comments-on-exported-symbols\nexport class ListItemLink extends ListItemEl {\n /**\n * Sets the underlying `HTMLAnchorElement`'s `href` resource attribute.\n */\n @property() href!: string;\n\n override type: ListItemRole = 'none';\n\n /**\n * Sets the underlying `HTMLAnchorElement`'s `target` attribute.\n */\n @property() target!: string;\n protected override renderListItem(content: unknown) {\n return html`\n <a\n id=\"item\"\n tabindex=${this.disabled ? -1 : this.itemTabIndex}\n role=${this.type === 'none' ? nothing : this.type}\n aria-selected=${(this as ARIAMixinStrict).ariaSelected || nothing}\n aria-checked=${(this as ARIAMixinStrict).ariaChecked || nothing}\n class=\"list-item ${classMap(this.getRenderClasses())}\"\n href=${this.href}\n target=${this.target as LinkTarget || nothing}\n @click=${this.onClick}\n @pointerenter=${this.onPointerenter}\n @pointerleave=${this.onPointerleave}\n @keydown=${this.onKeydown}\n >${content}</a>\n `;\n }\n}\n"]}
|
package/list/list-item-link.d.ts
DELETED
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright 2022 Google LLC
|
|
4
|
-
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
-
*/
|
|
6
|
-
import { ListItemLinkOnly as ListItemLink } from './internal/listitemlink/list-item-link-only.js';
|
|
7
|
-
declare global {
|
|
8
|
-
interface HTMLElementTagNameMap {
|
|
9
|
-
'md-list-item-link': MdListItemLink;
|
|
10
|
-
}
|
|
11
|
-
}
|
|
12
|
-
/**
|
|
13
|
-
* @summary
|
|
14
|
-
* Lists are continuous, vertical indexes of text or images. Items are placed
|
|
15
|
-
* inside the list. This is a linkable variant.
|
|
16
|
-
*
|
|
17
|
-
* @description
|
|
18
|
-
* Lists consist of one or more list items, and can contain actions represented
|
|
19
|
-
* by icons and text. List items come in three sizes: one-line, two-line, and
|
|
20
|
-
* three-line.
|
|
21
|
-
*
|
|
22
|
-
* __Takeaways:__
|
|
23
|
-
*
|
|
24
|
-
* - Lists should be sorted in logical ways that make content easy to scan, such
|
|
25
|
-
* as alphabetical, numerical, chronological, or by user preference.
|
|
26
|
-
* - Lists present content in a way that makes it easy to identify a specific
|
|
27
|
-
* item in a collection and act on it.
|
|
28
|
-
* - Lists should present icons, text, and actions in a consistent format.
|
|
29
|
-
*
|
|
30
|
-
* Example slottable child variants are:
|
|
31
|
-
*
|
|
32
|
-
* - `video[data-variant=video]`
|
|
33
|
-
* - `img,span[data-variant=avatar]`
|
|
34
|
-
* - `img[data-variant=image]`
|
|
35
|
-
* - `md-icon[data-variant=icon]`
|
|
36
|
-
*
|
|
37
|
-
* @example
|
|
38
|
-
* ```html
|
|
39
|
-
* <md-list-item-link
|
|
40
|
-
* headline="User Name"
|
|
41
|
-
* supportingText="user@name.com"
|
|
42
|
-
* href="/accounts">
|
|
43
|
-
* <md-icon data-variant="icon" slot="start">account_circle</md-icon>
|
|
44
|
-
* <md-icon data-variant="icon" slot="end">open_in_new</md-icon>
|
|
45
|
-
* </md-list-item-link>
|
|
46
|
-
* ```
|
|
47
|
-
*
|
|
48
|
-
* @final
|
|
49
|
-
* @suppress {visibility}
|
|
50
|
-
*/
|
|
51
|
-
export declare class MdListItemLink extends ListItemLink {
|
|
52
|
-
static styles: import("lit").CSSResult[];
|
|
53
|
-
}
|
package/list/list-item-link.js
DELETED
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright 2022 Google LLC
|
|
4
|
-
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
-
*/
|
|
6
|
-
import { __decorate } from "tslib";
|
|
7
|
-
import { customElement } from 'lit/decorators.js';
|
|
8
|
-
import { styles as forcedColors } from './internal/listitem/forced-colors-styles.css.js';
|
|
9
|
-
import { styles } from './internal/listitem/list-item-styles.css.js';
|
|
10
|
-
import { ListItemLinkOnly as ListItemLink } from './internal/listitemlink/list-item-link-only.js';
|
|
11
|
-
/**
|
|
12
|
-
* @summary
|
|
13
|
-
* Lists are continuous, vertical indexes of text or images. Items are placed
|
|
14
|
-
* inside the list. This is a linkable variant.
|
|
15
|
-
*
|
|
16
|
-
* @description
|
|
17
|
-
* Lists consist of one or more list items, and can contain actions represented
|
|
18
|
-
* by icons and text. List items come in three sizes: one-line, two-line, and
|
|
19
|
-
* three-line.
|
|
20
|
-
*
|
|
21
|
-
* __Takeaways:__
|
|
22
|
-
*
|
|
23
|
-
* - Lists should be sorted in logical ways that make content easy to scan, such
|
|
24
|
-
* as alphabetical, numerical, chronological, or by user preference.
|
|
25
|
-
* - Lists present content in a way that makes it easy to identify a specific
|
|
26
|
-
* item in a collection and act on it.
|
|
27
|
-
* - Lists should present icons, text, and actions in a consistent format.
|
|
28
|
-
*
|
|
29
|
-
* Example slottable child variants are:
|
|
30
|
-
*
|
|
31
|
-
* - `video[data-variant=video]`
|
|
32
|
-
* - `img,span[data-variant=avatar]`
|
|
33
|
-
* - `img[data-variant=image]`
|
|
34
|
-
* - `md-icon[data-variant=icon]`
|
|
35
|
-
*
|
|
36
|
-
* @example
|
|
37
|
-
* ```html
|
|
38
|
-
* <md-list-item-link
|
|
39
|
-
* headline="User Name"
|
|
40
|
-
* supportingText="user@name.com"
|
|
41
|
-
* href="/accounts">
|
|
42
|
-
* <md-icon data-variant="icon" slot="start">account_circle</md-icon>
|
|
43
|
-
* <md-icon data-variant="icon" slot="end">open_in_new</md-icon>
|
|
44
|
-
* </md-list-item-link>
|
|
45
|
-
* ```
|
|
46
|
-
*
|
|
47
|
-
* @final
|
|
48
|
-
* @suppress {visibility}
|
|
49
|
-
*/
|
|
50
|
-
let MdListItemLink = class MdListItemLink extends ListItemLink {
|
|
51
|
-
};
|
|
52
|
-
MdListItemLink.styles = [styles, forcedColors];
|
|
53
|
-
MdListItemLink = __decorate([
|
|
54
|
-
customElement('md-list-item-link')
|
|
55
|
-
], MdListItemLink);
|
|
56
|
-
export { MdListItemLink };
|
|
57
|
-
//# sourceMappingURL=list-item-link.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"list-item-link.js","sourceRoot":"","sources":["list-item-link.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;AAEH,OAAO,EAAC,aAAa,EAAC,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAC,MAAM,IAAI,YAAY,EAAC,MAAM,iDAAiD,CAAC;AACvF,OAAO,EAAC,MAAM,EAAC,MAAM,6CAA6C,CAAC;AACnE,OAAO,EAAC,gBAAgB,IAAI,YAAY,EAAC,MAAM,gDAAgD,CAAC;AAQhG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AAEI,IAAM,cAAc,GAApB,MAAM,cAAe,SAAQ,YAAY;;AAC9B,qBAAM,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;AADrC,cAAc;IAD1B,aAAa,CAAC,mBAAmB,CAAC;GACtB,cAAc,CAE1B;SAFY,cAAc","sourcesContent":["/**\n * @license\n * Copyright 2022 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {customElement} from 'lit/decorators.js';\n\nimport {styles as forcedColors} from './internal/listitem/forced-colors-styles.css.js';\nimport {styles} from './internal/listitem/list-item-styles.css.js';\nimport {ListItemLinkOnly as ListItemLink} from './internal/listitemlink/list-item-link-only.js';\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'md-list-item-link': MdListItemLink;\n }\n}\n\n/**\n * @summary\n * Lists are continuous, vertical indexes of text or images. Items are placed\n * inside the list. This is a linkable variant.\n *\n * @description\n * Lists consist of one or more list items, and can contain actions represented\n * by icons and text. List items come in three sizes: one-line, two-line, and\n * three-line.\n *\n * __Takeaways:__\n *\n * - Lists should be sorted in logical ways that make content easy to scan, such\n * as alphabetical, numerical, chronological, or by user preference.\n * - Lists present content in a way that makes it easy to identify a specific\n * item in a collection and act on it.\n * - Lists should present icons, text, and actions in a consistent format.\n *\n * Example slottable child variants are:\n *\n * - `video[data-variant=video]`\n * - `img,span[data-variant=avatar]`\n * - `img[data-variant=image]`\n * - `md-icon[data-variant=icon]`\n *\n * @example\n * ```html\n * <md-list-item-link\n * headline=\"User Name\"\n * supportingText=\"user@name.com\"\n * href=\"/accounts\">\n * <md-icon data-variant=\"icon\" slot=\"start\">account_circle</md-icon>\n * <md-icon data-variant=\"icon\" slot=\"end\">open_in_new</md-icon>\n * </md-list-item-link>\n * ```\n *\n * @final\n * @suppress {visibility}\n */\n@customElement('md-list-item-link')\nexport class MdListItemLink extends ListItemLink {\n static override styles = [styles, forcedColors];\n}\n"]}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright 2023 Google LLC
|
|
4
|
-
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
-
*/
|
|
6
|
-
import { ListItemLink } from '../../../list/internal/listitemlink/list-item-link.js';
|
|
7
|
-
import { MenuItem } from '../shared.js';
|
|
8
|
-
/**
|
|
9
|
-
* @fires close-menu {CloseMenuEvent}
|
|
10
|
-
*/
|
|
11
|
-
export declare class MenuItemLink extends ListItemLink implements MenuItem {
|
|
12
|
-
/**
|
|
13
|
-
* READONLY: self-identifies as a menu item and sets its identifying attribute
|
|
14
|
-
*/
|
|
15
|
-
isMenuItem: boolean;
|
|
16
|
-
/**
|
|
17
|
-
* Keeps the menu open if clicked or keyboard selected.
|
|
18
|
-
*/
|
|
19
|
-
keepOpen: boolean;
|
|
20
|
-
protected keepOpenOnClick: boolean;
|
|
21
|
-
protected onClick(): void;
|
|
22
|
-
protected onKeydown(event: KeyboardEvent): void;
|
|
23
|
-
}
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright 2023 Google LLC
|
|
4
|
-
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
-
*/
|
|
6
|
-
import { __decorate } from "tslib";
|
|
7
|
-
import { property } from 'lit/decorators.js';
|
|
8
|
-
import { ListItemLink } from '../../../list/internal/listitemlink/list-item-link.js';
|
|
9
|
-
import { CLOSE_REASON, DefaultCloseMenuEvent, isClosableKey, SELECTION_KEY } from '../shared.js';
|
|
10
|
-
/**
|
|
11
|
-
* @fires close-menu {CloseMenuEvent}
|
|
12
|
-
*/
|
|
13
|
-
export class MenuItemLink extends ListItemLink {
|
|
14
|
-
constructor() {
|
|
15
|
-
super(...arguments);
|
|
16
|
-
/**
|
|
17
|
-
* READONLY: self-identifies as a menu item and sets its identifying attribute
|
|
18
|
-
*/
|
|
19
|
-
this.isMenuItem = true;
|
|
20
|
-
/**
|
|
21
|
-
* Keeps the menu open if clicked or keyboard selected.
|
|
22
|
-
*/
|
|
23
|
-
this.keepOpen = false;
|
|
24
|
-
this.keepOpenOnClick = false;
|
|
25
|
-
}
|
|
26
|
-
onClick() {
|
|
27
|
-
if (this.keepOpen || this.keepOpenOnClick)
|
|
28
|
-
return;
|
|
29
|
-
this.dispatchEvent(new DefaultCloseMenuEvent(this, { kind: CLOSE_REASON.CLICK_SELECTION }));
|
|
30
|
-
}
|
|
31
|
-
onKeydown(event) {
|
|
32
|
-
if (this.keepOpen)
|
|
33
|
-
return;
|
|
34
|
-
const keyCode = event.code;
|
|
35
|
-
// Do not preventDefault on enter or else it will prevent from opening links
|
|
36
|
-
if (!event.defaultPrevented && isClosableKey(keyCode) &&
|
|
37
|
-
keyCode !== SELECTION_KEY.ENTER) {
|
|
38
|
-
event.preventDefault();
|
|
39
|
-
this.dispatchEvent(new DefaultCloseMenuEvent(this, { kind: CLOSE_REASON.KEYDOWN, key: keyCode }));
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
__decorate([
|
|
44
|
-
property({ type: Boolean, attribute: 'md-menu-item', reflect: true })
|
|
45
|
-
], MenuItemLink.prototype, "isMenuItem", void 0);
|
|
46
|
-
__decorate([
|
|
47
|
-
property({ type: Boolean, attribute: 'keep-open' })
|
|
48
|
-
], MenuItemLink.prototype, "keepOpen", void 0);
|
|
49
|
-
//# sourceMappingURL=menu-item-link.js.map
|