@material/web 1.0.0-pre.1 → 1.0.0-pre.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +66 -19
- package/autocomplete/lib/_filled-autocomplete.scss +1 -34
- package/autocomplete/lib/_outlined-autocomplete.scss +1 -34
- package/autocomplete/lib/autocomplete.d.ts +0 -4
- package/autocomplete/lib/autocomplete.js +5 -12
- package/autocomplete/lib/autocomplete.js.map +1 -1
- package/autocomplete/lib/autocompleteitem/autocomplete-item.d.ts +2 -2
- package/autocomplete/lib/autocompleteitem/autocomplete-item.js +2 -2
- package/autocomplete/lib/autocompleteitem/autocomplete-item.js.map +1 -1
- package/autocomplete/lib/autocompletelist/autocomplete-list.d.ts +1 -1
- package/autocomplete/lib/autocompletelist/autocomplete-list.js +2 -2
- package/autocomplete/lib/autocompletelist/autocomplete-list.js.map +1 -1
- package/autocomplete/lib/filled-styles.css.js +1 -1
- package/autocomplete/lib/filled-styles.css.js.map +1 -1
- package/autocomplete/lib/outlined-styles.css.js +1 -1
- package/autocomplete/lib/outlined-styles.css.js.map +1 -1
- package/button/lib/_elevation.scss +1 -1
- package/button/lib/_icon.scss +14 -24
- package/button/lib/_shared.scss +1 -0
- package/button/lib/button.d.ts +0 -3
- package/button/lib/button.js +1 -12
- package/button/lib/button.js.map +1 -1
- package/button/lib/filled-styles.css.js +1 -1
- package/button/lib/filled-styles.css.js.map +1 -1
- package/button/lib/link-button.d.ts +0 -1
- package/button/lib/link-button.js +0 -5
- package/button/lib/link-button.js.map +1 -1
- package/button/lib/shared-elevation-styles.css.js +1 -1
- package/button/lib/shared-elevation-styles.css.js.map +1 -1
- package/button/lib/shared-styles.css.js +1 -1
- package/button/lib/shared-styles.css.js.map +1 -1
- package/checkbox/checkbox.d.ts +11 -2
- package/checkbox/checkbox.js +11 -2
- package/checkbox/checkbox.js.map +1 -1
- package/checkbox/lib/checkbox.d.ts +28 -0
- package/checkbox/lib/checkbox.js +30 -1
- package/checkbox/lib/checkbox.js.map +1 -1
- package/chips/chip/lib/_chip-theme.scss +1 -1
- package/dialog/_dialog.scss +6 -0
- package/dialog/dialog.d.ts +38 -0
- package/dialog/dialog.js +41 -0
- package/dialog/dialog.js.map +1 -0
- package/dialog/harness.d.ts +18 -0
- package/dialog/harness.js +55 -0
- package/dialog/harness.js.map +1 -0
- package/dialog/lib/_dialog.scss +386 -0
- package/dialog/lib/_tokens.scss +86 -0
- package/{list/lib/divider/list-divider-styles.css.d.ts → dialog/lib/dialog-styles.css.d.ts} +0 -0
- package/dialog/lib/dialog-styles.css.js +9 -0
- package/dialog/lib/dialog-styles.css.js.map +1 -0
- package/dialog/lib/dialog-styles.scss +8 -0
- package/dialog/lib/dialog.d.ts +190 -0
- package/dialog/lib/dialog.js +566 -0
- package/dialog/lib/dialog.js.map +1 -0
- package/divider/_divider.scss +6 -0
- package/divider/divider.d.ts +24 -0
- package/divider/divider.js +27 -0
- package/divider/divider.js.map +1 -0
- package/divider/lib/_divider.scss +54 -0
- package/{menu/lib/menu-button-styles.css.d.ts → divider/lib/divider-styles.css.d.ts} +0 -0
- package/divider/lib/divider-styles.css.js +9 -0
- package/divider/lib/divider-styles.css.js.map +1 -0
- package/divider/lib/divider-styles.scss +8 -0
- package/divider/lib/divider.d.ts +23 -0
- package/divider/lib/divider.js +41 -0
- package/divider/lib/divider.js.map +1 -0
- package/elevation/lib/_elevation.scss +1 -1
- package/elevation/lib/_md-comp-elevation.scss +1 -1
- package/elevation/lib/elevation-styles.css.js +1 -1
- package/elevation/lib/elevation-styles.css.js.map +1 -1
- package/fab/lib/_shared.scss +1 -1
- package/fab/lib/fab-shared-styles.css.js +1 -1
- package/fab/lib/fab-shared-styles.css.js.map +1 -1
- package/field/lib/_filled-field.scss +5 -2
- package/field/lib/_md-comp-filled-field.scss +3 -1
- package/field/lib/_md-comp-outlined-field.scss +1 -1
- package/field/lib/_shared.scss +2 -0
- package/field/lib/field.d.ts +0 -2
- package/field/lib/field.js +2 -4
- package/field/lib/field.js.map +1 -1
- package/field/lib/filled-styles.css.js +1 -1
- package/field/lib/filled-styles.css.js.map +1 -1
- package/field/lib/outlined-styles.css.js +1 -1
- package/field/lib/outlined-styles.css.js.map +1 -1
- package/field/lib/shared-styles.css.js +1 -1
- package/field/lib/shared-styles.css.js.map +1 -1
- package/focus/lib/_focus-ring.scss +3 -10
- package/focus/lib/focus-ring-styles.css.js +1 -1
- package/focus/lib/focus-ring-styles.css.js.map +1 -1
- package/focus/lib/focus-ring.d.ts +1 -4
- package/focus/lib/focus-ring.js +2 -11
- package/focus/lib/focus-ring.js.map +1 -1
- package/iconbutton/lib/_filled-icon-button.scss +1 -1
- package/iconbutton/lib/_filled-tonal-icon-button.scss +1 -1
- package/iconbutton/lib/_outlined-icon-button.scss +7 -5
- package/iconbutton/lib/_shared.scss +5 -25
- package/iconbutton/lib/_standard-icon-button.scss +4 -6
- package/iconbutton/lib/filled-styles.css.js +1 -1
- package/iconbutton/lib/filled-styles.css.js.map +1 -1
- package/iconbutton/lib/filled-tonal-styles.css.js +1 -1
- package/iconbutton/lib/filled-tonal-styles.css.js.map +1 -1
- package/iconbutton/lib/icon-button-toggle.d.ts +13 -42
- package/iconbutton/lib/icon-button-toggle.js +33 -103
- package/iconbutton/lib/icon-button-toggle.js.map +1 -1
- package/iconbutton/lib/icon-button.d.ts +2 -4
- package/iconbutton/lib/icon-button.js +3 -9
- package/iconbutton/lib/icon-button.js.map +1 -1
- package/iconbutton/lib/outlined-styles.css.js +1 -1
- package/iconbutton/lib/outlined-styles.css.js.map +1 -1
- package/iconbutton/lib/shared-styles.css.js +1 -1
- package/iconbutton/lib/shared-styles.css.js.map +1 -1
- package/iconbutton/lib/standard-styles.css.js +1 -1
- package/iconbutton/lib/standard-styles.css.js.map +1 -1
- package/list/lib/_list.scss +32 -40
- package/list/lib/avatar/_list-item-avatar.scss +1 -1
- package/list/lib/avatar/list-item-avatar-styles.css.js +1 -1
- package/list/lib/avatar/list-item-avatar-styles.css.js.map +1 -1
- package/list/lib/avatar/list-item-avatar.d.ts +9 -4
- package/list/lib/avatar/list-item-avatar.js +24 -11
- package/list/lib/avatar/list-item-avatar.js.map +1 -1
- package/list/lib/icon/_list-item-icon.scss +3 -1
- package/list/lib/icon/list-item-icon-styles.css.js +1 -1
- package/list/lib/icon/list-item-icon-styles.css.js.map +1 -1
- package/list/lib/icon/list-item-icon.d.ts +0 -3
- package/list/lib/icon/list-item-icon.js +1 -12
- package/list/lib/icon/list-item-icon.js.map +1 -1
- package/list/lib/image/_list-item-image.scss +1 -1
- package/list/lib/image/list-item-image-styles.css.js +1 -1
- package/list/lib/image/list-item-image-styles.css.js.map +1 -1
- package/list/lib/image/list-item-image.d.ts +11 -4
- package/list/lib/image/list-item-image.js +24 -13
- package/list/lib/image/list-item-image.js.map +1 -1
- package/list/lib/list-styles.css.js +1 -1
- package/list/lib/list-styles.css.js.map +1 -1
- package/list/lib/list.d.ts +99 -28
- package/list/lib/list.js +210 -111
- package/list/lib/list.js.map +1 -1
- package/list/lib/listitem/_list-item.scss +104 -39
- package/list/lib/listitem/harness.js +2 -1
- package/list/lib/listitem/harness.js.map +1 -1
- package/{tokens/v0_150/index.test.css.d.ts → list/lib/listitem/list-item-private-styles.css.d.ts} +0 -0
- package/list/lib/listitem/list-item-private-styles.css.js +9 -0
- package/list/lib/listitem/list-item-private-styles.css.js.map +1 -0
- package/list/lib/listitem/list-item-private-styles.scss +8 -0
- package/list/lib/listitem/list-item-styles.css.js +1 -1
- package/list/lib/listitem/list-item-styles.css.js.map +1 -1
- package/list/lib/listitem/list-item.d.ts +99 -43
- package/list/lib/listitem/list-item.js +201 -172
- package/list/lib/listitem/list-item.js.map +1 -1
- package/list/lib/listitemlink/list-item-link.d.ts +17 -0
- package/list/lib/listitemlink/list-item-link.js +42 -0
- package/list/lib/listitemlink/list-item-link.js.map +1 -0
- package/list/lib/video/_list-item-video.scss +10 -4
- package/list/lib/video/list-item-video-styles.css.js +1 -1
- package/list/lib/video/list-item-video-styles.css.js.map +1 -1
- package/list/lib/video/list-item-video.d.ts +43 -4
- package/list/lib/video/list-item-video.js +90 -12
- package/list/lib/video/list-item-video.js.map +1 -1
- package/list/list-item-avatar.d.ts +2 -1
- package/list/list-item-avatar.js +2 -1
- package/list/list-item-avatar.js.map +1 -1
- package/list/list-item-icon.d.ts +2 -1
- package/list/list-item-icon.js +2 -1
- package/list/list-item-icon.js.map +1 -1
- package/list/list-item-image.d.ts +2 -1
- package/list/list-item-image.js +2 -1
- package/list/list-item-image.js.map +1 -1
- package/list/list-item-link.d.ts +35 -0
- package/list/list-item-link.js +39 -0
- package/list/list-item-link.js.map +1 -0
- package/list/list-item-video.d.ts +2 -1
- package/list/list-item-video.js +2 -1
- package/list/list-item-video.js.map +1 -1
- package/list/list-item.d.ts +18 -2
- package/list/list-item.js +20 -3
- package/list/list-item.js.map +1 -1
- package/list/list.d.ts +15 -1
- package/list/list.js +15 -1
- package/list/list.js.map +1 -1
- package/menu/_menu-item.scss +6 -0
- package/menu/_menu.scss +6 -0
- package/menu/harness.d.ts +5 -0
- package/menu/harness.js +22 -0
- package/menu/harness.js.map +1 -1
- package/menu/lib/_menu.scss +61 -62
- package/menu/lib/menu-styles.css.js +1 -1
- package/menu/lib/menu-styles.css.js.map +1 -1
- package/menu/lib/menu.d.ts +176 -42
- package/menu/lib/menu.js +506 -246
- package/menu/lib/menu.js.map +1 -1
- package/menu/lib/menuitem/_menu-item.scss +115 -0
- package/{tokens/v0_150/lib.test.css.d.ts → menu/lib/menuitem/menu-item-private-styles.css.d.ts} +0 -0
- package/menu/lib/menuitem/menu-item-private-styles.css.js +9 -0
- package/menu/lib/menuitem/menu-item-private-styles.css.js.map +1 -0
- package/menu/lib/menuitem/menu-item-private-styles.scss +8 -0
- package/menu/lib/menuitem/menu-item-styles.css.d.ts +1 -0
- package/menu/lib/menuitem/menu-item-styles.css.js +9 -0
- package/menu/lib/menuitem/menu-item-styles.css.js.map +1 -0
- package/menu/lib/menuitem/menu-item-styles.scss +8 -0
- package/menu/lib/menuitem/menu-item.d.ts +20 -3
- package/menu/lib/menuitem/menu-item.js +42 -3
- package/menu/lib/menuitem/menu-item.js.map +1 -1
- package/menu/lib/menuitemlink/menu-item-link.d.ts +25 -0
- package/menu/lib/menuitemlink/menu-item-link.js +51 -0
- package/menu/lib/menuitemlink/menu-item-link.js.map +1 -0
- package/menu/lib/shared.d.ts +134 -0
- package/menu/lib/shared.js +85 -0
- package/menu/lib/shared.js.map +1 -0
- package/menu/lib/submenuitem/harness.d.ts +11 -0
- package/menu/lib/submenuitem/harness.js +12 -0
- package/menu/lib/submenuitem/harness.js.map +1 -0
- package/menu/lib/submenuitem/sub-menu-item.d.ts +89 -0
- package/menu/lib/submenuitem/sub-menu-item.js +266 -0
- package/menu/lib/submenuitem/sub-menu-item.js.map +1 -0
- package/menu/lib/surfacePositionController.d.ts +117 -0
- package/menu/lib/surfacePositionController.js +196 -0
- package/menu/lib/surfacePositionController.js.map +1 -0
- package/menu/lib/typeaheadController.d.ts +144 -0
- package/menu/lib/typeaheadController.js +242 -0
- package/menu/lib/typeaheadController.js.map +1 -0
- package/menu/menu-item-link.d.ts +33 -0
- package/menu/menu-item-link.js +37 -0
- package/menu/menu-item-link.js.map +1 -0
- package/menu/menu-item.d.ts +19 -2
- package/menu/menu-item.js +22 -4
- package/menu/menu-item.js.map +1 -1
- package/menu/menu.d.ts +45 -0
- package/menu/menu.js +43 -0
- package/menu/menu.js.map +1 -1
- package/menu/sub-menu-item.d.ts +60 -0
- package/menu/sub-menu-item.js +64 -0
- package/menu/sub-menu-item.js.map +1 -0
- package/menusurface/lib/_menu-surface.scss +1 -1
- package/menusurface/lib/menu-surface-styles.css.js +1 -1
- package/menusurface/lib/menu-surface-styles.css.js.map +1 -1
- package/motion/animation.d.ts +20 -3
- package/motion/animation.js +39 -4
- package/motion/animation.js.map +1 -1
- package/navigationbar/lib/_navigation-bar.scss +9 -9
- package/navigationbar/lib/navigation-bar-styles.css.js +1 -1
- package/navigationbar/lib/navigation-bar-styles.css.js.map +1 -1
- package/navigationdrawer/lib/_navigation-drawer.scss +1 -1
- package/navigationdrawer/lib/navigation-drawer-styles.css.js +1 -1
- package/navigationdrawer/lib/navigation-drawer-styles.css.js.map +1 -1
- package/navigationtab/lib/_navigation-tab.scss +8 -19
- package/navigationtab/lib/navigation-tab-styles.css.js +1 -1
- package/navigationtab/lib/navigation-tab-styles.css.js.map +1 -1
- package/package.json +1 -8
- package/radio/lib/_radio.scss +0 -1
- package/radio/lib/radio-styles.css.js +1 -1
- package/radio/lib/radio-styles.css.js.map +1 -1
- package/radio/lib/radio.d.ts +10 -1
- package/radio/lib/radio.js +10 -1
- package/radio/lib/radio.js.map +1 -1
- package/radio/radio.d.ts +16 -1
- package/radio/radio.js +16 -1
- package/radio/radio.js.map +1 -1
- package/ripple/lib/_ripple.scss +5 -21
- package/ripple/lib/ripple-styles.css.js +1 -1
- package/ripple/lib/ripple-styles.css.js.map +1 -1
- package/ripple/lib/ripple.js +2 -2
- package/ripple/lib/ripple.js.map +1 -1
- package/sass/_map-ext.scss +24 -0
- package/sass/_string-ext.scss +23 -0
- package/segmentedbuttonset/lib/segmented-button-set.d.ts +0 -2
- package/segmentedbuttonset/lib/segmented-button-set.js +0 -2
- package/segmentedbuttonset/lib/segmented-button-set.js.map +1 -1
- package/switch/lib/_handle.scss +56 -9
- package/switch/lib/_icon.scss +36 -0
- package/switch/lib/_switch.scss +1 -115
- package/switch/lib/_track.scss +39 -0
- package/switch/lib/switch-styles.css.js +1 -1
- package/switch/lib/switch-styles.css.js.map +1 -1
- package/switch/lib/switch.d.ts +3 -0
- package/switch/lib/switch.js +3 -0
- package/switch/lib/switch.js.map +1 -1
- package/textfield/lib/_filled-text-field.scss +4 -2
- package/textfield/lib/_outlined-text-field.scss +3 -2
- package/textfield/lib/filled-styles.css.js +1 -1
- package/textfield/lib/filled-styles.css.js.map +1 -1
- package/textfield/lib/outlined-styles.css.js +1 -1
- package/textfield/lib/outlined-styles.css.js.map +1 -1
- package/textfield/lib/text-field.d.ts +0 -2
- package/textfield/lib/text-field.js +0 -2
- package/textfield/lib/text-field.js.map +1 -1
- package/tokens/_index.scss +1 -1
- package/tokens/{v0_150 → v0_152}/_index.scss +1 -1
- package/tokens/{v0_150 → v0_152}/_md-comp-assist-chip.scss +2 -2
- package/tokens/{v0_150 → v0_152}/_md-comp-badge.scss +2 -2
- package/tokens/{v0_150 → v0_152}/_md-comp-banner.scss +2 -43
- package/tokens/{v0_150 → v0_152}/_md-comp-bottom-app-bar.scss +3 -4
- package/tokens/{v0_150 → v0_152}/_md-comp-carousel-item.scss +2 -2
- package/tokens/{v0_150 → v0_152}/_md-comp-checkbox.scss +2 -12
- package/tokens/{v0_150 → v0_152}/_md-comp-circular-progress-indicator.scss +2 -2
- package/tokens/{v0_150 → v0_152}/_md-comp-data-table.scss +2 -4
- package/tokens/{v0_150 → v0_152}/_md-comp-date-input-modal.scss +2 -2
- package/tokens/{v0_150 → v0_152}/_md-comp-date-picker-docked.scss +2 -2
- package/tokens/{v0_150 → v0_152}/_md-comp-date-picker-modal.scss +2 -2
- package/tokens/{v0_150 → v0_152}/_md-comp-dialog.scss +2 -25
- package/tokens/{v0_150 → v0_152}/_md-comp-divider.scss +2 -2
- package/tokens/{v0_150 → v0_152}/_md-comp-elevated-button.scss +2 -2
- package/tokens/{v0_150 → v0_152}/_md-comp-elevated-card.scss +2 -2
- package/tokens/{v0_150 → v0_152}/_md-comp-extended-fab-branded.scss +2 -2
- package/tokens/{v0_150 → v0_152}/_md-comp-extended-fab-primary.scss +2 -2
- package/tokens/{v0_150 → v0_152}/_md-comp-extended-fab-secondary.scss +2 -2
- package/tokens/{v0_150 → v0_152}/_md-comp-extended-fab-surface.scss +2 -2
- package/tokens/{v0_150 → v0_152}/_md-comp-extended-fab-tertiary.scss +2 -4
- package/tokens/{v0_150 → v0_152}/_md-comp-fab-branded-large.scss +2 -3
- package/tokens/{v0_150 → v0_152}/_md-comp-fab-branded.scss +2 -2
- package/tokens/{v0_150 → v0_152}/_md-comp-fab-primary-large.scss +2 -2
- package/tokens/{v0_150 → v0_152}/_md-comp-fab-primary-small.scss +2 -2
- package/tokens/{v0_150 → v0_152}/_md-comp-fab-primary.scss +2 -2
- package/tokens/{v0_150 → v0_152}/_md-comp-fab-secondary-large.scss +2 -2
- package/tokens/{v0_150 → v0_152}/_md-comp-fab-secondary-small.scss +2 -2
- package/tokens/{v0_150 → v0_152}/_md-comp-fab-secondary.scss +2 -2
- package/tokens/{v0_150 → v0_152}/_md-comp-fab-surface-large.scss +2 -2
- package/tokens/{v0_150 → v0_152}/_md-comp-fab-surface-small.scss +2 -2
- package/tokens/{v0_150 → v0_152}/_md-comp-fab-surface.scss +2 -2
- package/tokens/{v0_150 → v0_152}/_md-comp-fab-tertiary-large.scss +2 -2
- package/tokens/{v0_150 → v0_152}/_md-comp-fab-tertiary-small.scss +2 -2
- package/tokens/{v0_150 → v0_152}/_md-comp-fab-tertiary.scss +2 -2
- package/tokens/{v0_150 → v0_152}/_md-comp-filled-autocomplete.scss +2 -3
- package/tokens/{v0_150 → v0_152}/_md-comp-filled-button.scss +2 -8
- package/tokens/{v0_150 → v0_152}/_md-comp-filled-card.scss +2 -4
- package/tokens/{v0_150 → v0_152}/_md-comp-filled-icon-button.scss +2 -2
- package/tokens/{v0_150 → v0_152}/_md-comp-filled-menu-button.scss +2 -2
- package/tokens/{v0_150 → v0_152}/_md-comp-filled-select.scss +2 -6
- package/tokens/{v0_150 → v0_152}/_md-comp-filled-text-field.scss +2 -3
- package/tokens/{v0_150 → v0_152}/_md-comp-filled-tonal-button.scss +2 -2
- package/tokens/{v0_150 → v0_152}/_md-comp-filled-tonal-icon-button.scss +2 -2
- package/tokens/{v0_150 → v0_152}/_md-comp-filter-chip.scss +2 -30
- package/tokens/{v0_150 → v0_152}/_md-comp-full-screen-dialog.scss +3 -53
- package/tokens/{v0_150 → v0_152}/_md-comp-icon-button.scss +3 -3
- package/tokens/{v0_150 → v0_152}/_md-comp-input-chip.scss +2 -52
- package/tokens/{v0_150 → v0_152}/_md-comp-linear-progress-indicator.scss +2 -2
- package/tokens/{v0_150 → v0_152}/_md-comp-list.scss +3 -12
- package/tokens/{v0_150 → v0_152}/_md-comp-menu.scss +2 -4
- package/tokens/{v0_150 → v0_152}/_md-comp-navigation-bar.scss +2 -9
- package/tokens/{v0_150 → v0_152}/_md-comp-navigation-drawer.scss +2 -8
- package/tokens/{v0_150 → v0_152}/_md-comp-navigation-rail.scss +2 -39
- package/tokens/{v0_150 → v0_152}/_md-comp-outlined-autocomplete.scss +2 -3
- package/tokens/{v0_150 → v0_152}/_md-comp-outlined-button.scss +2 -6
- package/tokens/{v0_150 → v0_152}/_md-comp-outlined-card.scss +2 -2
- package/tokens/{v0_150 → v0_152}/_md-comp-outlined-icon-button.scss +2 -4
- package/tokens/{v0_150 → v0_152}/_md-comp-outlined-menu-button.scss +2 -2
- package/tokens/{v0_150 → v0_152}/_md-comp-outlined-segmented-button.scss +2 -2
- package/tokens/{v0_150 → v0_152}/_md-comp-outlined-select.scss +2 -6
- package/tokens/{v0_150 → v0_152}/_md-comp-outlined-text-field.scss +2 -3
- package/tokens/{v0_150 → v0_152}/_md-comp-plain-tooltip.scss +2 -2
- package/tokens/{v0_150 → v0_152}/_md-comp-primary-navigation-tab.scss +2 -2
- package/tokens/{v0_150 → v0_152}/_md-comp-radio-button.scss +2 -2
- package/tokens/{v0_150 → v0_152}/_md-comp-rich-tooltip.scss +2 -2
- package/tokens/{v0_150 → v0_152}/_md-comp-scrim.scss +2 -2
- package/tokens/{v0_150 → v0_152}/_md-comp-search-bar.scss +2 -2
- package/tokens/{v0_150 → v0_152}/_md-comp-search-view.scss +2 -2
- package/tokens/{v0_150 → v0_152}/_md-comp-secondary-navigation-tab.scss +2 -2
- package/tokens/{v0_150 → v0_152}/_md-comp-sheet-bottom.scss +2 -2
- package/tokens/{v0_150 → v0_152}/_md-comp-sheet-floating.scss +2 -2
- package/tokens/{v0_150 → v0_152}/_md-comp-sheet-side.scss +4 -2
- package/tokens/{v0_150 → v0_152}/_md-comp-slider.scss +2 -4
- package/tokens/{v0_150 → v0_152}/_md-comp-snackbar.scss +2 -2
- package/tokens/{v0_150 → v0_152}/_md-comp-standard-menu-button.scss +2 -2
- package/tokens/{v0_150 → v0_152}/_md-comp-suggestion-chip.scss +2 -2
- package/tokens/{v0_150 → v0_152}/_md-comp-switch.scss +2 -11
- package/tokens/{v0_150 → v0_152}/_md-comp-text-button.scss +2 -6
- package/tokens/{v0_150 → v0_152}/_md-comp-time-input.scss +2 -2
- package/tokens/{v0_150 → v0_152}/_md-comp-time-picker.scss +2 -5
- package/tokens/{v0_150 → v0_152}/_md-comp-top-app-bar-large.scss +2 -2
- package/tokens/{v0_150 → v0_152}/_md-comp-top-app-bar-medium.scss +2 -2
- package/tokens/{v0_150 → v0_152}/_md-comp-top-app-bar-small-centered.scss +2 -3
- package/tokens/{v0_150 → v0_152}/_md-comp-top-app-bar-small.scss +2 -3
- package/tokens/{v0_150 → v0_152}/_md-ref-palette.scss +2 -2
- package/tokens/{v0_150 → v0_152}/_md-ref-typeface.scss +2 -2
- package/tokens/{v0_150 → v0_152}/_md-sys-color.scss +2 -20
- package/tokens/{v0_150 → v0_152}/_md-sys-elevation.scss +4 -13
- package/tokens/{v0_150 → v0_152}/_md-sys-motion.scss +2 -2
- package/tokens/{v0_150 → v0_152}/_md-sys-shape.scss +2 -2
- package/tokens/{v0_150 → v0_152}/_md-sys-state.scss +2 -2
- package/tokens/{v0_150 → v0_152}/_md-sys-typescale.scss +2 -3
- package/tokens/v0_152/index.test.css.d.ts +1 -0
- package/tokens/{v0_150 → v0_152}/index.test.css.js +0 -0
- package/tokens/{v0_150 → v0_152}/index.test.css.js.map +0 -0
- package/tokens/{v0_150 → v0_152}/index.test.scss +1 -1
- package/tokens/v0_152/lib.test.css.d.ts +1 -0
- package/tokens/{v0_150 → v0_152}/lib.test.css.js +0 -0
- package/tokens/{v0_150 → v0_152}/lib.test.css.js.map +0 -0
- package/tokens/{v0_150 → v0_152}/lib.test.scss +1 -1
- package/list/lib/_tokens.scss +0 -80
- package/list/lib/divider/_list-divider.scss +0 -46
- package/list/lib/divider/list-divider-styles.css.js +0 -9
- package/list/lib/divider/list-divider-styles.css.js.map +0 -1
- package/list/lib/divider/list-divider-styles.scss +0 -8
- package/list/lib/divider/list-divider.d.ts +0 -13
- package/list/lib/divider/list-divider.js +0 -32
- package/list/lib/divider/list-divider.js.map +0 -1
- package/list/list-divider.d.ts +0 -19
- package/list/list-divider.js +0 -22
- package/list/list-divider.js.map +0 -1
- package/menu/lib/_menu-button.scss +0 -14
- package/menu/lib/adapter.d.ts +0 -66
- package/menu/lib/adapter.js +0 -7
- package/menu/lib/adapter.js.map +0 -1
- package/menu/lib/constants.d.ts +0 -22
- package/menu/lib/constants.js +0 -23
- package/menu/lib/constants.js.map +0 -1
- package/menu/lib/foundation.d.ts +0 -49
- package/menu/lib/foundation.js +0 -123
- package/menu/lib/foundation.js.map +0 -1
- package/menu/lib/menu-button-styles.css.js +0 -9
- package/menu/lib/menu-button-styles.css.js.map +0 -1
- package/menu/lib/menu-button-styles.scss +0 -8
- package/menu/lib/menu-button.d.ts +0 -27
- package/menu/lib/menu-button.js +0 -93
- package/menu/lib/menu-button.js.map +0 -1
- package/menu/menu-button.d.ts +0 -14
- package/menu/menu-button.js +0 -17
- package/menu/menu-button.js.map +0 -1
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2023 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { MenuItemLink } from './lib/menuitemlink/menu-item-link.js';
|
|
7
|
+
export { ListItem } from '../list/lib/listitem/list-item.js';
|
|
8
|
+
export { CloseMenuEvent, DeactivateItemsEvent, MenuItem } from './lib/shared.js';
|
|
9
|
+
declare global {
|
|
10
|
+
interface HTMLElementTagNameMap {
|
|
11
|
+
'md-menu-item-link': MdMenuItemLink;
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* @summary Menus display a list of choices on a temporary surface.
|
|
16
|
+
*
|
|
17
|
+
* @description
|
|
18
|
+
* Menu items are the selectable choices within the menu. Menu items must
|
|
19
|
+
* implement the `MenuItem` interface and also have the `md-menu-item`
|
|
20
|
+
* attribute. Additionally menu items are list items so they must also have the
|
|
21
|
+
* `md-list-item` attribute.
|
|
22
|
+
*
|
|
23
|
+
* Menu items can control a menu by selectively firing the `close-menu` and
|
|
24
|
+
* `deselect-items` events.
|
|
25
|
+
*
|
|
26
|
+
* This is a linkable variant.
|
|
27
|
+
*
|
|
28
|
+
* @final
|
|
29
|
+
* @suppress {visibility}
|
|
30
|
+
*/
|
|
31
|
+
export declare class MdMenuItemLink extends MenuItemLink {
|
|
32
|
+
static styles: import("lit").CSSResult[];
|
|
33
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2023 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 listItemStyles } from '../list/lib/listitem/list-item-styles.css.js';
|
|
9
|
+
import { styles as privateProps } from './lib/menuitem/menu-item-private-styles.css.js';
|
|
10
|
+
import { styles } from './lib/menuitem/menu-item-styles.css.js';
|
|
11
|
+
import { MenuItemLink } from './lib/menuitemlink/menu-item-link.js';
|
|
12
|
+
export { CloseMenuEvent, DeactivateItemsEvent } from './lib/shared.js';
|
|
13
|
+
/**
|
|
14
|
+
* @summary Menus display a list of choices on a temporary surface.
|
|
15
|
+
*
|
|
16
|
+
* @description
|
|
17
|
+
* Menu items are the selectable choices within the menu. Menu items must
|
|
18
|
+
* implement the `MenuItem` interface and also have the `md-menu-item`
|
|
19
|
+
* attribute. Additionally menu items are list items so they must also have the
|
|
20
|
+
* `md-list-item` attribute.
|
|
21
|
+
*
|
|
22
|
+
* Menu items can control a menu by selectively firing the `close-menu` and
|
|
23
|
+
* `deselect-items` events.
|
|
24
|
+
*
|
|
25
|
+
* This is a linkable variant.
|
|
26
|
+
*
|
|
27
|
+
* @final
|
|
28
|
+
* @suppress {visibility}
|
|
29
|
+
*/
|
|
30
|
+
let MdMenuItemLink = class MdMenuItemLink extends MenuItemLink {
|
|
31
|
+
};
|
|
32
|
+
MdMenuItemLink.styles = [privateProps, listItemStyles, styles];
|
|
33
|
+
MdMenuItemLink = __decorate([
|
|
34
|
+
customElement('md-menu-item-link')
|
|
35
|
+
], MdMenuItemLink);
|
|
36
|
+
export { MdMenuItemLink };
|
|
37
|
+
//# sourceMappingURL=menu-item-link.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"menu-item-link.js","sourceRoot":"","sources":["menu-item-link.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;AAEH,OAAO,EAAC,aAAa,EAAC,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAC,MAAM,IAAI,cAAc,EAAC,MAAM,8CAA8C,CAAC;AAEtF,OAAO,EAAC,MAAM,IAAI,YAAY,EAAC,MAAM,gDAAgD,CAAC;AACtF,OAAO,EAAC,MAAM,EAAC,MAAM,wCAAwC,CAAC;AAC9D,OAAO,EAAC,YAAY,EAAC,MAAM,sCAAsC,CAAC;AAGlE,OAAO,EAAC,cAAc,EAAE,oBAAoB,EAAW,MAAM,iBAAiB,CAAC;AAS/E;;;;;;;;;;;;;;;;GAgBG;AAEH,IAAa,cAAc,GAA3B,MAAa,cAAe,SAAQ,YAAY;CAE/C,CAAA;AADiB,qBAAM,GAAG,CAAC,YAAY,EAAE,cAAc,EAAE,MAAM,CAAE,CAAA;AADrD,cAAc;IAD1B,aAAa,CAAC,mBAAmB,CAAC;GACtB,cAAc,CAE1B;SAFY,cAAc","sourcesContent":["/**\n * @license\n * Copyright 2023 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {customElement} from 'lit/decorators.js';\n\nimport {styles as listItemStyles} from '../list/lib/listitem/list-item-styles.css.js';\n\nimport {styles as privateProps} from './lib/menuitem/menu-item-private-styles.css.js';\nimport {styles} from './lib/menuitem/menu-item-styles.css.js';\nimport {MenuItemLink} from './lib/menuitemlink/menu-item-link.js';\n\nexport {ListItem} from '../list/lib/listitem/list-item.js';\nexport {CloseMenuEvent, DeactivateItemsEvent, MenuItem} from './lib/shared.js';\n\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'md-menu-item-link': MdMenuItemLink;\n }\n}\n\n/**\n * @summary Menus display a list of choices on a temporary surface.\n *\n * @description\n * Menu items are the selectable choices within the menu. Menu items must\n * implement the `MenuItem` interface and also have the `md-menu-item`\n * attribute. Additionally menu items are list items so they must also have the\n * `md-list-item` attribute.\n *\n * Menu items can control a menu by selectively firing the `close-menu` and\n * `deselect-items` events.\n *\n * This is a linkable variant.\n *\n * @final\n * @suppress {visibility}\n */\n@customElement('md-menu-item-link')\nexport class MdMenuItemLink extends MenuItemLink {\n static override styles = [privateProps, listItemStyles, styles];\n}\n"]}
|
package/menu/menu-item.d.ts
CHANGED
|
@@ -3,12 +3,29 @@
|
|
|
3
3
|
* Copyright 2022 Google LLC
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import {
|
|
6
|
+
import { MenuItemEl } from './lib/menuitem/menu-item.js';
|
|
7
|
+
export { ListItem } from '../list/lib/listitem/list-item.js';
|
|
8
|
+
export { CloseMenuEvent, DeactivateItemsEvent, MenuItem } from './lib/shared.js';
|
|
7
9
|
declare global {
|
|
8
10
|
interface HTMLElementTagNameMap {
|
|
9
11
|
'md-menu-item': MdMenuItem;
|
|
10
12
|
}
|
|
11
13
|
}
|
|
12
|
-
|
|
14
|
+
/**
|
|
15
|
+
* @summary Menus display a list of choices on a temporary surface.
|
|
16
|
+
*
|
|
17
|
+
* @description
|
|
18
|
+
* Menu items are the selectable choices within the menu. Menu items must
|
|
19
|
+
* implement the `MenuItem` interface and also have the `md-menu-item`
|
|
20
|
+
* attribute. Additionally menu items are list items so they must also have the
|
|
21
|
+
* `md-list-item` attribute.
|
|
22
|
+
*
|
|
23
|
+
* Menu items can control a menu by selectively firing the `close-menu` and
|
|
24
|
+
* `deselect-items` events.
|
|
25
|
+
*
|
|
26
|
+
* @final
|
|
27
|
+
* @suppress {visibility}
|
|
28
|
+
*/
|
|
29
|
+
export declare class MdMenuItem extends MenuItemEl {
|
|
13
30
|
static styles: import("lit").CSSResult[];
|
|
14
31
|
}
|
package/menu/menu-item.js
CHANGED
|
@@ -5,11 +5,29 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import { __decorate } from "tslib";
|
|
7
7
|
import { customElement } from 'lit/decorators.js';
|
|
8
|
-
import { styles } from '../list/lib/listitem/list-item-styles.css.js';
|
|
9
|
-
import {
|
|
10
|
-
|
|
8
|
+
import { styles as listItemStyles } from '../list/lib/listitem/list-item-styles.css.js';
|
|
9
|
+
import { MenuItemEl } from './lib/menuitem/menu-item.js';
|
|
10
|
+
import { styles as privateProps } from './lib/menuitem/menu-item-private-styles.css.js';
|
|
11
|
+
import { styles } from './lib/menuitem/menu-item-styles.css.js';
|
|
12
|
+
export { CloseMenuEvent, DeactivateItemsEvent } from './lib/shared.js';
|
|
13
|
+
/**
|
|
14
|
+
* @summary Menus display a list of choices on a temporary surface.
|
|
15
|
+
*
|
|
16
|
+
* @description
|
|
17
|
+
* Menu items are the selectable choices within the menu. Menu items must
|
|
18
|
+
* implement the `MenuItem` interface and also have the `md-menu-item`
|
|
19
|
+
* attribute. Additionally menu items are list items so they must also have the
|
|
20
|
+
* `md-list-item` attribute.
|
|
21
|
+
*
|
|
22
|
+
* Menu items can control a menu by selectively firing the `close-menu` and
|
|
23
|
+
* `deselect-items` events.
|
|
24
|
+
*
|
|
25
|
+
* @final
|
|
26
|
+
* @suppress {visibility}
|
|
27
|
+
*/
|
|
28
|
+
let MdMenuItem = class MdMenuItem extends MenuItemEl {
|
|
11
29
|
};
|
|
12
|
-
MdMenuItem.styles = [styles];
|
|
30
|
+
MdMenuItem.styles = [privateProps, listItemStyles, styles];
|
|
13
31
|
MdMenuItem = __decorate([
|
|
14
32
|
customElement('md-menu-item')
|
|
15
33
|
], MdMenuItem);
|
package/menu/menu-item.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"menu-item.js","sourceRoot":"","sources":["menu-item.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;AAEH,OAAO,EAAC,aAAa,EAAC,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAC,MAAM,EAAC,MAAM,8CAA8C,CAAC;
|
|
1
|
+
{"version":3,"file":"menu-item.js","sourceRoot":"","sources":["menu-item.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;AAEH,OAAO,EAAC,aAAa,EAAC,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAC,MAAM,IAAI,cAAc,EAAC,MAAM,8CAA8C,CAAC;AAEtF,OAAO,EAAC,UAAU,EAAC,MAAM,6BAA6B,CAAC;AACvD,OAAO,EAAC,MAAM,IAAI,YAAY,EAAC,MAAM,gDAAgD,CAAC;AACtF,OAAO,EAAC,MAAM,EAAC,MAAM,wCAAwC,CAAC;AAG9D,OAAO,EAAC,cAAc,EAAE,oBAAoB,EAAW,MAAM,iBAAiB,CAAC;AAQ/E;;;;;;;;;;;;;;GAcG;AAEH,IAAa,UAAU,GAAvB,MAAa,UAAW,SAAQ,UAAU;CAEzC,CAAA;AADiB,iBAAM,GAAG,CAAC,YAAY,EAAE,cAAc,EAAE,MAAM,CAAE,CAAA;AADrD,UAAU;IADtB,aAAa,CAAC,cAAc,CAAC;GACjB,UAAU,CAEtB;SAFY,UAAU","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 listItemStyles} from '../list/lib/listitem/list-item-styles.css.js';\n\nimport {MenuItemEl} from './lib/menuitem/menu-item.js';\nimport {styles as privateProps} from './lib/menuitem/menu-item-private-styles.css.js';\nimport {styles} from './lib/menuitem/menu-item-styles.css.js';\n\nexport {ListItem} from '../list/lib/listitem/list-item.js';\nexport {CloseMenuEvent, DeactivateItemsEvent, MenuItem} from './lib/shared.js';\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'md-menu-item': MdMenuItem;\n }\n}\n\n/**\n * @summary Menus display a list of choices on a temporary surface.\n *\n * @description\n * Menu items are the selectable choices within the menu. Menu items must\n * implement the `MenuItem` interface and also have the `md-menu-item`\n * attribute. Additionally menu items are list items so they must also have the\n * `md-list-item` attribute.\n *\n * Menu items can control a menu by selectively firing the `close-menu` and\n * `deselect-items` events.\n *\n * @final\n * @suppress {visibility}\n */\n@customElement('md-menu-item')\nexport class MdMenuItem extends MenuItemEl {\n static override styles = [privateProps, listItemStyles, styles];\n}\n"]}
|
package/menu/menu.d.ts
CHANGED
|
@@ -4,11 +4,56 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
import { Menu } from './lib/menu.js';
|
|
7
|
+
export { ListItem } from '../list/lib/listitem/list-item.js';
|
|
8
|
+
export { Corner, DefaultFocusState } from './lib/menu.js';
|
|
9
|
+
export { CloseMenuEvent, DeactivateItemsEvent, MenuItem } from './lib/shared.js';
|
|
7
10
|
declare global {
|
|
8
11
|
interface HTMLElementTagNameMap {
|
|
9
12
|
'md-menu': MdMenu;
|
|
10
13
|
}
|
|
11
14
|
}
|
|
15
|
+
/**
|
|
16
|
+
* @summary Menus display a list of choices on a temporary surface.
|
|
17
|
+
*
|
|
18
|
+
* @description
|
|
19
|
+
* Menus appear when users interact with a button, action, or other control.
|
|
20
|
+
*
|
|
21
|
+
* They can be opened from a variety of elements, most commonly icon buttons,
|
|
22
|
+
* buttons, and text fields.
|
|
23
|
+
*
|
|
24
|
+
* md-menu listens for the `close-menu` and `deselect-items` events.
|
|
25
|
+
*
|
|
26
|
+
* - `close-menu` closes the menu when dispatched from a child element.
|
|
27
|
+
* - `deselect-items` deselects all of its immediate menu-item children.
|
|
28
|
+
*
|
|
29
|
+
* @example
|
|
30
|
+
* ```html
|
|
31
|
+
* <div style="position:relative;">
|
|
32
|
+
* <button
|
|
33
|
+
* class="anchor"
|
|
34
|
+
* ${ref(anchorRef)}
|
|
35
|
+
* @click=${() => this.menuRef.value.show()}>
|
|
36
|
+
* Click to open menu
|
|
37
|
+
* </button>
|
|
38
|
+
* <!--
|
|
39
|
+
* `has-overflow` is required when using a submenu which overflows the
|
|
40
|
+
* menu's contents
|
|
41
|
+
* -->
|
|
42
|
+
* <md-menu has-overflow ${ref(menuRef)} ${(el) => el.anchor =
|
|
43
|
+
* anchorRef.value}> <md-menu-item header="This is a header"></md-menu-item>
|
|
44
|
+
* <md-sub-menu-item header="this is a submenu item">
|
|
45
|
+
* <md-menu slot="submenu">
|
|
46
|
+
* <md-menu-item
|
|
47
|
+
* header="This is an item inside a submenu"></md-menu-item>
|
|
48
|
+
* </md-menu>
|
|
49
|
+
* </md-sub-menu>
|
|
50
|
+
* </md-menu>
|
|
51
|
+
* </div>
|
|
52
|
+
* ```
|
|
53
|
+
*
|
|
54
|
+
* @final
|
|
55
|
+
* @suppress {visibility}
|
|
56
|
+
*/
|
|
12
57
|
export declare class MdMenu extends Menu {
|
|
13
58
|
static styles: import("lit").CSSResult[];
|
|
14
59
|
}
|
package/menu/menu.js
CHANGED
|
@@ -7,6 +7,49 @@ import { __decorate } from "tslib";
|
|
|
7
7
|
import { customElement } from 'lit/decorators.js';
|
|
8
8
|
import { Menu } from './lib/menu.js';
|
|
9
9
|
import { styles } from './lib/menu-styles.css.js';
|
|
10
|
+
export { CloseMenuEvent, DeactivateItemsEvent } from './lib/shared.js';
|
|
11
|
+
/**
|
|
12
|
+
* @summary Menus display a list of choices on a temporary surface.
|
|
13
|
+
*
|
|
14
|
+
* @description
|
|
15
|
+
* Menus appear when users interact with a button, action, or other control.
|
|
16
|
+
*
|
|
17
|
+
* They can be opened from a variety of elements, most commonly icon buttons,
|
|
18
|
+
* buttons, and text fields.
|
|
19
|
+
*
|
|
20
|
+
* md-menu listens for the `close-menu` and `deselect-items` events.
|
|
21
|
+
*
|
|
22
|
+
* - `close-menu` closes the menu when dispatched from a child element.
|
|
23
|
+
* - `deselect-items` deselects all of its immediate menu-item children.
|
|
24
|
+
*
|
|
25
|
+
* @example
|
|
26
|
+
* ```html
|
|
27
|
+
* <div style="position:relative;">
|
|
28
|
+
* <button
|
|
29
|
+
* class="anchor"
|
|
30
|
+
* ${ref(anchorRef)}
|
|
31
|
+
* @click=${() => this.menuRef.value.show()}>
|
|
32
|
+
* Click to open menu
|
|
33
|
+
* </button>
|
|
34
|
+
* <!--
|
|
35
|
+
* `has-overflow` is required when using a submenu which overflows the
|
|
36
|
+
* menu's contents
|
|
37
|
+
* -->
|
|
38
|
+
* <md-menu has-overflow ${ref(menuRef)} ${(el) => el.anchor =
|
|
39
|
+
* anchorRef.value}> <md-menu-item header="This is a header"></md-menu-item>
|
|
40
|
+
* <md-sub-menu-item header="this is a submenu item">
|
|
41
|
+
* <md-menu slot="submenu">
|
|
42
|
+
* <md-menu-item
|
|
43
|
+
* header="This is an item inside a submenu"></md-menu-item>
|
|
44
|
+
* </md-menu>
|
|
45
|
+
* </md-sub-menu>
|
|
46
|
+
* </md-menu>
|
|
47
|
+
* </div>
|
|
48
|
+
* ```
|
|
49
|
+
*
|
|
50
|
+
* @final
|
|
51
|
+
* @suppress {visibility}
|
|
52
|
+
*/
|
|
10
53
|
let MdMenu = class MdMenu extends Menu {
|
|
11
54
|
};
|
|
12
55
|
MdMenu.styles = [styles];
|
package/menu/menu.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"menu.js","sourceRoot":"","sources":["menu.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;AAEH,OAAO,EAAC,aAAa,EAAC,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAC,IAAI,EAAC,MAAM,eAAe,CAAC;AACnC,OAAO,EAAC,MAAM,EAAC,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"menu.js","sourceRoot":"","sources":["menu.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;AAEH,OAAO,EAAC,aAAa,EAAC,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAC,IAAI,EAAC,MAAM,eAAe,CAAC;AACnC,OAAO,EAAC,MAAM,EAAC,MAAM,0BAA0B,CAAC;AAIhD,OAAO,EAAC,cAAc,EAAE,oBAAoB,EAAW,MAAM,iBAAiB,CAAC;AAQ/E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AAEH,IAAa,MAAM,GAAnB,MAAa,MAAO,SAAQ,IAAI;CAE/B,CAAA;AADiB,aAAM,GAAG,CAAC,MAAM,CAAE,CAAA;AADvB,MAAM;IADlB,aAAa,CAAC,SAAS,CAAC;GACZ,MAAM,CAElB;SAFY,MAAM","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 {Menu} from './lib/menu.js';\nimport {styles} from './lib/menu-styles.css.js';\n\nexport {ListItem} from '../list/lib/listitem/list-item.js';\nexport {Corner, DefaultFocusState} from './lib/menu.js';\nexport {CloseMenuEvent, DeactivateItemsEvent, MenuItem} from './lib/shared.js';\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'md-menu': MdMenu;\n }\n}\n\n/**\n * @summary Menus display a list of choices on a temporary surface.\n *\n * @description\n * Menus appear when users interact with a button, action, or other control.\n *\n * They can be opened from a variety of elements, most commonly icon buttons,\n * buttons, and text fields.\n *\n * md-menu listens for the `close-menu` and `deselect-items` events.\n *\n * - `close-menu` closes the menu when dispatched from a child element.\n * - `deselect-items` deselects all of its immediate menu-item children.\n *\n * @example\n * ```html\n * <div style=\"position:relative;\">\n * <button\n * class=\"anchor\"\n * ${ref(anchorRef)}\n * @click=${() => this.menuRef.value.show()}>\n * Click to open menu\n * </button>\n * <!--\n * `has-overflow` is required when using a submenu which overflows the\n * menu's contents\n * -->\n * <md-menu has-overflow ${ref(menuRef)} ${(el) => el.anchor =\n * anchorRef.value}> <md-menu-item header=\"This is a header\"></md-menu-item>\n * <md-sub-menu-item header=\"this is a submenu item\">\n * <md-menu slot=\"submenu\">\n * <md-menu-item\n * header=\"This is an item inside a submenu\"></md-menu-item>\n * </md-menu>\n * </md-sub-menu>\n * </md-menu>\n * </div>\n * ```\n *\n * @final\n * @suppress {visibility}\n */\n@customElement('md-menu')\nexport class MdMenu extends Menu {\n static override styles = [styles];\n}\n"]}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2023 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { SubMenuItem } from './lib/submenuitem/sub-menu-item.js';
|
|
7
|
+
export { ListItem } from '../list/lib/listitem/list-item.js';
|
|
8
|
+
export { CloseMenuEvent, DeactivateItemsEvent, MenuItem } from './lib/shared.js';
|
|
9
|
+
declare global {
|
|
10
|
+
interface HTMLElementTagNameMap {
|
|
11
|
+
'md-sub-menu-item': MdSubMenuItem;
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* @summary Menus display a list of choices on a temporary surface.
|
|
16
|
+
*
|
|
17
|
+
* @description
|
|
18
|
+
* Menu items are the selectable choices within the menu. Menu items must
|
|
19
|
+
* implement the `MenuItem` interface and also have the `md-menu-item`
|
|
20
|
+
* attribute. Additionally menu items are list items so they must also have the
|
|
21
|
+
* `md-list-item` attribute.
|
|
22
|
+
*
|
|
23
|
+
* Menu items can control a menu by selectively firing the `close-menu` and
|
|
24
|
+
* `deselect-items` events.
|
|
25
|
+
*
|
|
26
|
+
* This menu item will open a sub-menu that is slotted in the `submenu` slot.
|
|
27
|
+
* Additionally, the containing menu must either have `has-overflow` or `fixed`
|
|
28
|
+
* set to `true` in order to display the containing menu properly.
|
|
29
|
+
*
|
|
30
|
+
* @example
|
|
31
|
+
* ```html
|
|
32
|
+
* <div style="position:relative;">
|
|
33
|
+
* <button
|
|
34
|
+
* class="anchor"
|
|
35
|
+
* ${ref(anchorRef)}
|
|
36
|
+
* @click=${() => this.menuRef.value.show()}>
|
|
37
|
+
* Click to open menu
|
|
38
|
+
* </button>
|
|
39
|
+
* <!--
|
|
40
|
+
* `has-overflow` is required when using a submenu which overflows the
|
|
41
|
+
* menu's contents
|
|
42
|
+
* -->
|
|
43
|
+
* <md-menu has-overflow ${ref(menuRef)} ${(el) => el.anchor =
|
|
44
|
+
* anchorRef.value}> <md-menu-item header="This is a header"></md-menu-item>
|
|
45
|
+
* <md-sub-menu-item header="this is a submenu item">
|
|
46
|
+
* <md-menu slot="submenu">
|
|
47
|
+
* <md-menu-item
|
|
48
|
+
* header="This is an item inside a submenu"></md-menu-item>
|
|
49
|
+
* </md-menu>
|
|
50
|
+
* </md-sub-menu>
|
|
51
|
+
* </md-menu>
|
|
52
|
+
* </div>
|
|
53
|
+
* ```
|
|
54
|
+
*
|
|
55
|
+
* @final
|
|
56
|
+
* @suppress {visibility}
|
|
57
|
+
*/
|
|
58
|
+
export declare class MdSubMenuItem extends SubMenuItem {
|
|
59
|
+
static styles: import("lit").CSSResult[];
|
|
60
|
+
}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2023 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 listItemStyles } from '../list/lib/listitem/list-item-styles.css.js';
|
|
9
|
+
import { styles as privateProps } from './lib/menuitem/menu-item-private-styles.css.js';
|
|
10
|
+
import { styles } from './lib/menuitem/menu-item-styles.css.js';
|
|
11
|
+
import { SubMenuItem } from './lib/submenuitem/sub-menu-item.js';
|
|
12
|
+
export { CloseMenuEvent, DeactivateItemsEvent } from './lib/shared.js';
|
|
13
|
+
/**
|
|
14
|
+
* @summary Menus display a list of choices on a temporary surface.
|
|
15
|
+
*
|
|
16
|
+
* @description
|
|
17
|
+
* Menu items are the selectable choices within the menu. Menu items must
|
|
18
|
+
* implement the `MenuItem` interface and also have the `md-menu-item`
|
|
19
|
+
* attribute. Additionally menu items are list items so they must also have the
|
|
20
|
+
* `md-list-item` attribute.
|
|
21
|
+
*
|
|
22
|
+
* Menu items can control a menu by selectively firing the `close-menu` and
|
|
23
|
+
* `deselect-items` events.
|
|
24
|
+
*
|
|
25
|
+
* This menu item will open a sub-menu that is slotted in the `submenu` slot.
|
|
26
|
+
* Additionally, the containing menu must either have `has-overflow` or `fixed`
|
|
27
|
+
* set to `true` in order to display the containing menu properly.
|
|
28
|
+
*
|
|
29
|
+
* @example
|
|
30
|
+
* ```html
|
|
31
|
+
* <div style="position:relative;">
|
|
32
|
+
* <button
|
|
33
|
+
* class="anchor"
|
|
34
|
+
* ${ref(anchorRef)}
|
|
35
|
+
* @click=${() => this.menuRef.value.show()}>
|
|
36
|
+
* Click to open menu
|
|
37
|
+
* </button>
|
|
38
|
+
* <!--
|
|
39
|
+
* `has-overflow` is required when using a submenu which overflows the
|
|
40
|
+
* menu's contents
|
|
41
|
+
* -->
|
|
42
|
+
* <md-menu has-overflow ${ref(menuRef)} ${(el) => el.anchor =
|
|
43
|
+
* anchorRef.value}> <md-menu-item header="This is a header"></md-menu-item>
|
|
44
|
+
* <md-sub-menu-item header="this is a submenu item">
|
|
45
|
+
* <md-menu slot="submenu">
|
|
46
|
+
* <md-menu-item
|
|
47
|
+
* header="This is an item inside a submenu"></md-menu-item>
|
|
48
|
+
* </md-menu>
|
|
49
|
+
* </md-sub-menu>
|
|
50
|
+
* </md-menu>
|
|
51
|
+
* </div>
|
|
52
|
+
* ```
|
|
53
|
+
*
|
|
54
|
+
* @final
|
|
55
|
+
* @suppress {visibility}
|
|
56
|
+
*/
|
|
57
|
+
let MdSubMenuItem = class MdSubMenuItem extends SubMenuItem {
|
|
58
|
+
};
|
|
59
|
+
MdSubMenuItem.styles = [privateProps, listItemStyles, styles];
|
|
60
|
+
MdSubMenuItem = __decorate([
|
|
61
|
+
customElement('md-sub-menu-item')
|
|
62
|
+
], MdSubMenuItem);
|
|
63
|
+
export { MdSubMenuItem };
|
|
64
|
+
//# sourceMappingURL=sub-menu-item.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sub-menu-item.js","sourceRoot":"","sources":["sub-menu-item.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;AAEH,OAAO,EAAC,aAAa,EAAC,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAC,MAAM,IAAI,cAAc,EAAC,MAAM,8CAA8C,CAAC;AAEtF,OAAO,EAAC,MAAM,IAAI,YAAY,EAAC,MAAM,gDAAgD,CAAC;AACtF,OAAO,EAAC,MAAM,EAAC,MAAM,wCAAwC,CAAC;AAC9D,OAAO,EAAC,WAAW,EAAC,MAAM,oCAAoC,CAAC;AAG/D,OAAO,EAAC,cAAc,EAAE,oBAAoB,EAAW,MAAM,iBAAiB,CAAC;AAQ/E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AAEH,IAAa,aAAa,GAA1B,MAAa,aAAc,SAAQ,WAAW;CAE7C,CAAA;AADiB,oBAAM,GAAG,CAAC,YAAY,EAAE,cAAc,EAAE,MAAM,CAAE,CAAA;AADrD,aAAa;IADzB,aAAa,CAAC,kBAAkB,CAAC;GACrB,aAAa,CAEzB;SAFY,aAAa","sourcesContent":["/**\n * @license\n * Copyright 2023 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {customElement} from 'lit/decorators.js';\n\nimport {styles as listItemStyles} from '../list/lib/listitem/list-item-styles.css.js';\n\nimport {styles as privateProps} from './lib/menuitem/menu-item-private-styles.css.js';\nimport {styles} from './lib/menuitem/menu-item-styles.css.js';\nimport {SubMenuItem} from './lib/submenuitem/sub-menu-item.js';\n\nexport {ListItem} from '../list/lib/listitem/list-item.js';\nexport {CloseMenuEvent, DeactivateItemsEvent, MenuItem} from './lib/shared.js';\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'md-sub-menu-item': MdSubMenuItem;\n }\n}\n\n/**\n * @summary Menus display a list of choices on a temporary surface.\n *\n * @description\n * Menu items are the selectable choices within the menu. Menu items must\n * implement the `MenuItem` interface and also have the `md-menu-item`\n * attribute. Additionally menu items are list items so they must also have the\n * `md-list-item` attribute.\n *\n * Menu items can control a menu by selectively firing the `close-menu` and\n * `deselect-items` events.\n *\n * This menu item will open a sub-menu that is slotted in the `submenu` slot.\n * Additionally, the containing menu must either have `has-overflow` or `fixed`\n * set to `true` in order to display the containing menu properly.\n *\n * @example\n * ```html\n * <div style=\"position:relative;\">\n * <button\n * class=\"anchor\"\n * ${ref(anchorRef)}\n * @click=${() => this.menuRef.value.show()}>\n * Click to open menu\n * </button>\n * <!--\n * `has-overflow` is required when using a submenu which overflows the\n * menu's contents\n * -->\n * <md-menu has-overflow ${ref(menuRef)} ${(el) => el.anchor =\n * anchorRef.value}> <md-menu-item header=\"This is a header\"></md-menu-item>\n * <md-sub-menu-item header=\"this is a submenu item\">\n * <md-menu slot=\"submenu\">\n * <md-menu-item\n * header=\"This is an item inside a submenu\"></md-menu-item>\n * </md-menu>\n * </md-sub-menu>\n * </md-menu>\n * </div>\n * ```\n *\n * @final\n * @suppress {visibility}\n */\n@customElement('md-sub-menu-item')\nexport class MdSubMenuItem extends SubMenuItem {\n static override styles = [privateProps, listItemStyles, styles];\n}\n"]}
|
|
@@ -63,7 +63,7 @@ $_deceleration-curve-timing-function: cubic-bezier(0, 0, 0.2, 1) !default;
|
|
|
63
63
|
(
|
|
64
64
|
level: var(--_container-elevation),
|
|
65
65
|
shadow-color: var(--_container-shadow-color),
|
|
66
|
-
surface-tint
|
|
66
|
+
surface-tint: var(--_container-surface-tint-layer-color),
|
|
67
67
|
)
|
|
68
68
|
);
|
|
69
69
|
|
|
@@ -4,6 +4,6 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
import { css } from 'lit';
|
|
7
|
-
export const styles = css `:host{--_container-elevation: var(--md-menu-surface-container-elevation, 2);--_container-shadow-color: var(--md-menu-surface-container-shadow-color, var(--md-sys-color-shadow, #000));--_container-shape: var(--md-menu-surface-container-shape, 4px);--_container-surface-tint-layer-color: var(--md-menu-surface-container-surface-tint-layer-color, var(--md-sys-color-primary, #6750a4))}.md3-menu-surface{border-radius:var(--_container-shape);box-sizing:border-box;display:none;opacity:0;overflow:auto;margin:0;max-height:calc(100vh - 32px);max-width:calc(100vw - 32px);padding:0;position:absolute;transform:scale(1);transform-origin:top left;transition:opacity .03s linear,transform .12s cubic-bezier(0, 0, 0.2, 1),height 250ms cubic-bezier(0, 0, 0.2, 1);will-change:transform,opacity;z-index:8;--md-elevation-level:var(--_container-elevation);--md-elevation-shadow-color:var(--_container-shadow-color);--md-elevation-surface-tint
|
|
7
|
+
export const styles = css `:host{--_container-elevation: var(--md-menu-surface-container-elevation, 2);--_container-shadow-color: var(--md-menu-surface-container-shadow-color, var(--md-sys-color-shadow, #000));--_container-shape: var(--md-menu-surface-container-shape, 4px);--_container-surface-tint-layer-color: var(--md-menu-surface-container-surface-tint-layer-color, var(--md-sys-color-primary, #6750a4))}.md3-menu-surface{border-radius:var(--_container-shape);box-sizing:border-box;display:none;opacity:0;overflow:auto;margin:0;max-height:calc(100vh - 32px);max-width:calc(100vw - 32px);padding:0;position:absolute;transform:scale(1);transform-origin:top left;transition:opacity .03s linear,transform .12s cubic-bezier(0, 0, 0.2, 1),height 250ms cubic-bezier(0, 0, 0.2, 1);will-change:transform,opacity;z-index:8;--md-elevation-level:var(--_container-elevation);--md-elevation-shadow-color:var(--_container-shadow-color);--md-elevation-surface-tint:var(--_container-surface-tint-layer-color)}.md3-menu-surface md-elevation{z-index:0}.md3-menu-surface:focus{outline:none}.md3-menu-surface--animating-open{display:inline-block;opacity:0;transform:scale(0.8)}.md3-menu-surface--open{display:inline-block;opacity:1;transform:scale(1)}.md3-menu-surface--animating-closed{display:inline-block;opacity:0;transition:opacity .075s linear}.md3-menu-surface--anchor{overflow:visible;position:relative}.md3-menu-surface--fixed{position:fixed}.md3-menu-surface--fullwidth{width:100%}.md3-menu-surface--is-open-below{border-top-left-radius:0px;border-top-right-radius:0px}/*# sourceMappingURL=menu-surface-styles.css.map */
|
|
8
8
|
`;
|
|
9
9
|
//# sourceMappingURL=menu-surface-styles.css.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"menu-surface-styles.css.js","sourceRoot":"","sources":["menu-surface-styles.css.ts"],"names":[],"mappings":"AAAA;;;;IAII;AACH,OAAO,EAAC,GAAG,EAAC,MAAM,KAAK,CAAC;AACxB,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;CACzB,CAAC","sourcesContent":["/**\n * @license\n * Copyright 2022 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n import {css} from 'lit';\n export const styles = css`:host{--_container-elevation: var(--md-menu-surface-container-elevation, 2);--_container-shadow-color: var(--md-menu-surface-container-shadow-color, var(--md-sys-color-shadow, #000));--_container-shape: var(--md-menu-surface-container-shape, 4px);--_container-surface-tint-layer-color: var(--md-menu-surface-container-surface-tint-layer-color, var(--md-sys-color-primary, #6750a4))}.md3-menu-surface{border-radius:var(--_container-shape);box-sizing:border-box;display:none;opacity:0;overflow:auto;margin:0;max-height:calc(100vh - 32px);max-width:calc(100vw - 32px);padding:0;position:absolute;transform:scale(1);transform-origin:top left;transition:opacity .03s linear,transform .12s cubic-bezier(0, 0, 0.2, 1),height 250ms cubic-bezier(0, 0, 0.2, 1);will-change:transform,opacity;z-index:8;--md-elevation-level:var(--_container-elevation);--md-elevation-shadow-color:var(--_container-shadow-color);--md-elevation-surface-tint
|
|
1
|
+
{"version":3,"file":"menu-surface-styles.css.js","sourceRoot":"","sources":["menu-surface-styles.css.ts"],"names":[],"mappings":"AAAA;;;;IAII;AACH,OAAO,EAAC,GAAG,EAAC,MAAM,KAAK,CAAC;AACxB,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;CACzB,CAAC","sourcesContent":["/**\n * @license\n * Copyright 2022 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n import {css} from 'lit';\n export const styles = css`:host{--_container-elevation: var(--md-menu-surface-container-elevation, 2);--_container-shadow-color: var(--md-menu-surface-container-shadow-color, var(--md-sys-color-shadow, #000));--_container-shape: var(--md-menu-surface-container-shape, 4px);--_container-surface-tint-layer-color: var(--md-menu-surface-container-surface-tint-layer-color, var(--md-sys-color-primary, #6750a4))}.md3-menu-surface{border-radius:var(--_container-shape);box-sizing:border-box;display:none;opacity:0;overflow:auto;margin:0;max-height:calc(100vh - 32px);max-width:calc(100vw - 32px);padding:0;position:absolute;transform:scale(1);transform-origin:top left;transition:opacity .03s linear,transform .12s cubic-bezier(0, 0, 0.2, 1),height 250ms cubic-bezier(0, 0, 0.2, 1);will-change:transform,opacity;z-index:8;--md-elevation-level:var(--_container-elevation);--md-elevation-shadow-color:var(--_container-shadow-color);--md-elevation-surface-tint:var(--_container-surface-tint-layer-color)}.md3-menu-surface md-elevation{z-index:0}.md3-menu-surface:focus{outline:none}.md3-menu-surface--animating-open{display:inline-block;opacity:0;transform:scale(0.8)}.md3-menu-surface--open{display:inline-block;opacity:1;transform:scale(1)}.md3-menu-surface--animating-closed{display:inline-block;opacity:0;transition:opacity .075s linear}.md3-menu-surface--anchor{overflow:visible;position:relative}.md3-menu-surface--fixed{position:fixed}.md3-menu-surface--fullwidth{width:100%}.md3-menu-surface--is-open-below{border-top-left-radius:0px;border-top-right-radius:0px}/*# sourceMappingURL=menu-surface-styles.css.map */\n`;\n "]}
|
package/motion/animation.d.ts
CHANGED
|
@@ -6,11 +6,18 @@
|
|
|
6
6
|
/**
|
|
7
7
|
* Easing functions to use for web animations.
|
|
8
8
|
*
|
|
9
|
+
* **NOTE:** `EASING.EMPHASIZED` is approximated with unknown accuracy.
|
|
10
|
+
*
|
|
9
11
|
* TODO(b/241113345): replace with tokens
|
|
10
12
|
*/
|
|
11
|
-
export declare
|
|
12
|
-
STANDARD
|
|
13
|
-
|
|
13
|
+
export declare const EASING: {
|
|
14
|
+
readonly STANDARD: "cubic-bezier(0.2, 0, 0, 1)";
|
|
15
|
+
readonly STANDARD_ACCELERATE: "cubic-bezier(.3,0,1,1)";
|
|
16
|
+
readonly STANDARD_DECELERATE: "cubic-bezier(0,0,0,1)";
|
|
17
|
+
readonly EMPHASIZED: "cubic-bezier(.3,0,0,1)";
|
|
18
|
+
readonly EMPHASIZED_ACCELERATE: "cubic-bezier(.3,0,.8,.15)";
|
|
19
|
+
readonly EMPHASIZED_DECELERATE: "cubic-bezier(.05,.7,.1,1)";
|
|
20
|
+
};
|
|
14
21
|
/**
|
|
15
22
|
* A signal that is used for abortable tasks.
|
|
16
23
|
*/
|
|
@@ -61,3 +68,13 @@ export interface AnimationSignal {
|
|
|
61
68
|
* @return An `AnimationSignal`.
|
|
62
69
|
*/
|
|
63
70
|
export declare function createAnimationSignal(): AnimationSignal;
|
|
71
|
+
/**
|
|
72
|
+
* Returns a function which can be used to throttle function calls
|
|
73
|
+
* mapped to a key via a given function that should produce a promise that
|
|
74
|
+
* determines the throtle amount (defaults to requestAnimationFrame).
|
|
75
|
+
*/
|
|
76
|
+
export declare function createThrottle(): (key: string, cb: (...args: unknown[]) => unknown, timeout?: () => Promise<void>) => Promise<void>;
|
|
77
|
+
/**
|
|
78
|
+
* Parses an number in milliseconds from a css time value
|
|
79
|
+
*/
|
|
80
|
+
export declare function msFromTimeCSSValue(value: string): number;
|
package/motion/animation.js
CHANGED
|
@@ -6,12 +6,18 @@
|
|
|
6
6
|
/**
|
|
7
7
|
* Easing functions to use for web animations.
|
|
8
8
|
*
|
|
9
|
+
* **NOTE:** `EASING.EMPHASIZED` is approximated with unknown accuracy.
|
|
10
|
+
*
|
|
9
11
|
* TODO(b/241113345): replace with tokens
|
|
10
12
|
*/
|
|
11
|
-
export
|
|
12
|
-
(
|
|
13
|
-
|
|
14
|
-
|
|
13
|
+
export const EASING = {
|
|
14
|
+
STANDARD: 'cubic-bezier(0.2, 0, 0, 1)',
|
|
15
|
+
STANDARD_ACCELERATE: 'cubic-bezier(.3,0,1,1)',
|
|
16
|
+
STANDARD_DECELERATE: 'cubic-bezier(0,0,0,1)',
|
|
17
|
+
EMPHASIZED: 'cubic-bezier(.3,0,0,1)',
|
|
18
|
+
EMPHASIZED_ACCELERATE: 'cubic-bezier(.3,0,.8,.15)',
|
|
19
|
+
EMPHASIZED_DECELERATE: 'cubic-bezier(.05,.7,.1,1)',
|
|
20
|
+
};
|
|
15
21
|
/**
|
|
16
22
|
* Creates an `AnimationSignal` that can be used to cancel a previous task.
|
|
17
23
|
*
|
|
@@ -63,4 +69,33 @@ export function createAnimationSignal() {
|
|
|
63
69
|
},
|
|
64
70
|
};
|
|
65
71
|
}
|
|
72
|
+
/**
|
|
73
|
+
* Returns a function which can be used to throttle function calls
|
|
74
|
+
* mapped to a key via a given function that should produce a promise that
|
|
75
|
+
* determines the throtle amount (defaults to requestAnimationFrame).
|
|
76
|
+
*/
|
|
77
|
+
export function createThrottle() {
|
|
78
|
+
const stack = new Set();
|
|
79
|
+
return async (key = '', cb, timeout = async () => {
|
|
80
|
+
await new Promise(requestAnimationFrame);
|
|
81
|
+
}) => {
|
|
82
|
+
if (!stack.has(key)) {
|
|
83
|
+
stack.add(key);
|
|
84
|
+
await timeout();
|
|
85
|
+
if (stack.has(key)) {
|
|
86
|
+
stack.delete(key);
|
|
87
|
+
cb();
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
};
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* Parses an number in milliseconds from a css time value
|
|
94
|
+
*/
|
|
95
|
+
export function msFromTimeCSSValue(value) {
|
|
96
|
+
const match = value.trim().match(/([\d.]+)(\s*s$)?/);
|
|
97
|
+
const time = match?.[1];
|
|
98
|
+
const seconds = match?.[2];
|
|
99
|
+
return Number(time ?? 0) * (seconds ? 1000 : 1);
|
|
100
|
+
}
|
|
66
101
|
//# sourceMappingURL=animation.js.map
|
package/motion/animation.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"animation.js","sourceRoot":"","sources":["animation.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH
|
|
1
|
+
{"version":3,"file":"animation.js","sourceRoot":"","sources":["animation.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,QAAQ,EAAE,4BAA4B;IACtC,mBAAmB,EAAE,wBAAwB;IAC7C,mBAAmB,EAAE,uBAAuB;IAC5C,UAAU,EAAE,wBAAwB;IACpC,qBAAqB,EAAE,2BAA2B;IAClD,qBAAqB,EAAE,2BAA2B;CAC1C,CAAC;AAmBX;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,MAAM,UAAU,qBAAqB;IACnC,0CAA0C;IAC1C,IAAI,wBAAwB,GAAyB,IAAI,CAAC;IAE1D,OAAO;QACL,KAAK;YACH,yCAAyC;YACzC,wBAAwB,EAAE,KAAK,EAAE,CAAC;YAClC,0DAA0D;YAC1D,wBAAwB,GAAG,IAAI,eAAe,EAAE,CAAC;YACjD,sEAAsE;YACtE,qBAAqB;YACrB,OAAO,wBAAwB,CAAC,MAAM,CAAC;QACzC,CAAC;QACD,MAAM;YACJ,wBAAwB,GAAG,IAAI,CAAC;QAClC,CAAC;KACF,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,cAAc;IAC5B,MAAM,KAAK,GAAG,IAAI,GAAG,EAAE,CAAC;IACxB,OAAO,KAAK,EACD,GAAG,GAAG,EAAE,EAAE,EAAmC,EAC7C,OAAO,GAAG,KAAK,IAAI,EAAE;QACnB,MAAM,IAAI,OAAO,CAAC,qBAAqB,CAAC,CAAC;IAC3C,CAAC,EAAE,EAAE;QACd,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;YACnB,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACf,MAAM,OAAO,EAAE,CAAC;YAChB,IAAI,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;gBAClB,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBAClB,EAAE,EAAE,CAAC;aACN;SACF;IACH,CAAC,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,KAAa;IAC9C,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;IACrD,MAAM,IAAI,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;IACxB,MAAM,OAAO,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;IAC3B,OAAO,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAClD,CAAC","sourcesContent":["/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\n/**\n * Easing functions to use for web animations.\n *\n * **NOTE:** `EASING.EMPHASIZED` is approximated with unknown accuracy.\n *\n * TODO(b/241113345): replace with tokens\n */\nexport const EASING = {\n STANDARD: 'cubic-bezier(0.2, 0, 0, 1)',\n STANDARD_ACCELERATE: 'cubic-bezier(.3,0,1,1)',\n STANDARD_DECELERATE: 'cubic-bezier(0,0,0,1)',\n EMPHASIZED: 'cubic-bezier(.3,0,0,1)',\n EMPHASIZED_ACCELERATE: 'cubic-bezier(.3,0,.8,.15)',\n EMPHASIZED_DECELERATE: 'cubic-bezier(.05,.7,.1,1)',\n} as const;\n\n/**\n * A signal that is used for abortable tasks.\n */\nexport interface AnimationSignal {\n /**\n * Starts the abortable task. Any previous tasks started with this instance\n * will be aborted.\n *\n * @return An `AbortSignal` for the current task.\n */\n start(): AbortSignal;\n /**\n * Complete the current task.\n */\n finish(): void;\n}\n\n/**\n * Creates an `AnimationSignal` that can be used to cancel a previous task.\n *\n * @example\n * class MyClass {\n * private labelAnimationSignal = createAnimationSignal();\n *\n * private async animateLabel() {\n * // Start of the task. Previous tasks will be canceled.\n * const signal = this.labelAnimationSignal.start();\n *\n * // Do async work...\n * if (signal.aborted) {\n * // Use AbortSignal to check if a request was made to abort after some\n * // asynchronous work.\n * return;\n * }\n *\n * const animation = this.animate(...);\n * // Add event listeners to be notified when the task should be canceled.\n * signal.addEventListener('abort', () => {\n * animation.cancel();\n * });\n *\n * animation.addEventListener('finish', () => {\n * // Tell the signal that the current task is finished.\n * this.labelAnimationSignal.finish();\n * });\n * }\n * }\n *\n * @return An `AnimationSignal`.\n */\nexport function createAnimationSignal(): AnimationSignal {\n // The current animation's AbortController\n let animationAbortController: AbortController|null = null;\n\n return {\n start() {\n // Tell the previous animation to cancel.\n animationAbortController?.abort();\n // Set up a new AbortController for the current animation.\n animationAbortController = new AbortController();\n // Provide the AbortSignal so that the caller can check aborted status\n // and add listeners.\n return animationAbortController.signal;\n },\n finish() {\n animationAbortController = null;\n },\n };\n}\n\n/**\n * Returns a function which can be used to throttle function calls\n * mapped to a key via a given function that should produce a promise that\n * determines the throtle amount (defaults to requestAnimationFrame).\n */\nexport function createThrottle() {\n const stack = new Set();\n return async (\n key = '', cb: (...args: unknown[]) => unknown,\n timeout = async () => {\n await new Promise(requestAnimationFrame);\n }) => {\n if (!stack.has(key)) {\n stack.add(key);\n await timeout();\n if (stack.has(key)) {\n stack.delete(key);\n cb();\n }\n }\n };\n}\n\n/**\n * Parses an number in milliseconds from a css time value\n */\nexport function msFromTimeCSSValue(value: string) {\n const match = value.trim().match(/([\\d.]+)(\\s*s$)?/);\n const time = match?.[1];\n const seconds = match?.[2];\n return Number(time ?? 0) * (seconds ? 1000 : 1);\n}\n"]}
|
|
@@ -32,6 +32,15 @@
|
|
|
32
32
|
--_#{$token}: #{$value};
|
|
33
33
|
}
|
|
34
34
|
|
|
35
|
+
@include elevation.theme(
|
|
36
|
+
(
|
|
37
|
+
duration: 280ms,
|
|
38
|
+
level: var(--_container-elevation),
|
|
39
|
+
shadow-color: var(--_container-shadow-color),
|
|
40
|
+
surface-tint: var(--_container-surface-tint-layer-color),
|
|
41
|
+
)
|
|
42
|
+
);
|
|
43
|
+
|
|
35
44
|
width: 100%;
|
|
36
45
|
}
|
|
37
46
|
|
|
@@ -43,15 +52,6 @@
|
|
|
43
52
|
border-radius: var(--_container-shape);
|
|
44
53
|
height: var(--_container-height);
|
|
45
54
|
|
|
46
|
-
@include elevation.theme(
|
|
47
|
-
(
|
|
48
|
-
duration: 280ms,
|
|
49
|
-
level: var(--_container-elevation),
|
|
50
|
-
shadow-color: var(--_container-shadow-color),
|
|
51
|
-
surface-tint-color: var(--_container-surface-tint-layer-color),
|
|
52
|
-
)
|
|
53
|
-
);
|
|
54
|
-
|
|
55
55
|
.md3-navigation-bar__tabs-slot-container {
|
|
56
56
|
display: inherit;
|
|
57
57
|
width: inherit;
|
|
@@ -4,6 +4,6 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
import { css } from 'lit';
|
|
7
|
-
export 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, 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, #1c1b1f));--_active-focus-state-layer-color: var(--md-navigation-bar-active-focus-state-layer-color, var(--md-sys-color-on-surface, #1c1b1f));--_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, #1c1b1f));--_active-hover-state-layer-color: var(--md-navigation-bar-active-hover-state-layer-color, var(--md-sys-color-on-surface, #1c1b1f));--_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, #1c1b1f));--_active-label-text-weight: var(--md-navigation-bar-active-label-text-weight, 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, #1c1b1f));--_active-pressed-state-layer-color: var(--md-navigation-bar-active-pressed-state-layer-color, var(--md-sys-color-on-surface, #1c1b1f));--
|
|
7
|
+
export 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, 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, #1c1b1f));--_active-focus-state-layer-color: var(--md-navigation-bar-active-focus-state-layer-color, var(--md-sys-color-on-surface, #1c1b1f));--_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, #1c1b1f));--_active-hover-state-layer-color: var(--md-navigation-bar-active-hover-state-layer-color, var(--md-sys-color-on-surface, #1c1b1f));--_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, #1c1b1f));--_active-label-text-weight: var(--md-navigation-bar-active-label-text-weight, 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, #1c1b1f));--_active-pressed-state-layer-color: var(--md-navigation-bar-active-pressed-state-layer-color, var(--md-sys-color-on-surface, #1c1b1f));--_container-color: var(--md-navigation-bar-container-color, var(--md-sys-color-surface, #fffbfe));--_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, 0px);--_container-surface-tint-layer-color: var(--md-navigation-bar-container-surface-tint-layer-color, var(--md-sys-color-primary, #6750a4));--_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, #1c1b1f));--_inactive-focus-label-text-color: var(--md-navigation-bar-inactive-focus-label-text-color, var(--md-sys-color-on-surface, #1c1b1f));--_inactive-focus-state-layer-color: var(--md-navigation-bar-inactive-focus-state-layer-color, var(--md-sys-color-on-surface, #1c1b1f));--_inactive-hover-icon-color: var(--md-navigation-bar-inactive-hover-icon-color, var(--md-sys-color-on-surface, #1c1b1f));--_inactive-hover-label-text-color: var(--md-navigation-bar-inactive-hover-label-text-color, var(--md-sys-color-on-surface, #1c1b1f));--_inactive-hover-state-layer-color: var(--md-navigation-bar-inactive-hover-state-layer-color, var(--md-sys-color-on-surface, #1c1b1f));--_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, #1c1b1f));--_inactive-pressed-label-text-color: var(--md-navigation-bar-inactive-pressed-label-text-color, var(--md-sys-color-on-surface, #1c1b1f));--_inactive-pressed-state-layer-color: var(--md-navigation-bar-inactive-pressed-state-layer-color, var(--md-sys-color-on-surface, #1c1b1f));--_label-text-font: var(--md-navigation-bar-label-text-font, Roboto);--_label-text-line-height: var(--md-navigation-bar-label-text-line-height, 1rem);--_label-text-size: var(--md-navigation-bar-label-text-size, 0.75rem);--_label-text-tracking: var(--md-navigation-bar-label-text-tracking, 0.031rem);--_label-text-type: var(--md-navigation-bar-label-text-type, 500 0.75rem / 1rem Roboto);--_label-text-weight: var(--md-navigation-bar-label-text-weight, 500);--_pressed-state-layer-opacity: var(--md-navigation-bar-pressed-state-layer-opacity, 0.12);--md-elevation-duration:280ms;--md-elevation-level:var(--_container-elevation);--md-elevation-shadow-color:var(--_container-shadow-color);--md-elevation-surface-tint:var(--_container-surface-tint-layer-color);width:100%}.md3-navigation-bar{display:flex;position:relative;width:100%;background-color:var(--_container-color);border-radius:var(--_container-shape);height:var(--_container-height)}.md3-navigation-bar .md3-navigation-bar__tabs-slot-container{display:inherit;width:inherit}md-elevation{inset:0;position:absolute;z-index:0}/*# sourceMappingURL=navigation-bar-styles.css.map */
|
|
8
8
|
`;
|
|
9
9
|
//# sourceMappingURL=navigation-bar-styles.css.js.map
|