@material/web 2.4.2-nightly.fd6fe2a.0 → 2.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/custom-elements.json +2458 -4710
- package/labs/gb/components/badge/_badge-tokens.scss +18 -0
- package/labs/gb/components/badge/badge-element.d.ts +15 -0
- package/labs/gb/components/badge/badge-element.js +49 -0
- package/labs/gb/components/badge/badge-element.js.map +1 -0
- package/labs/gb/components/badge/badge.css +4 -0
- package/labs/gb/components/badge/badge.css.map +1 -0
- package/labs/gb/components/badge/badge.cssresult.d.ts +3 -0
- package/labs/gb/components/badge/badge.cssresult.js +14 -0
- package/labs/gb/components/badge/badge.cssresult.js.map +1 -0
- package/labs/gb/components/badge/badge.d.ts +32 -0
- package/labs/gb/components/badge/badge.js +35 -0
- package/labs/gb/components/badge/badge.js.map +1 -0
- package/labs/gb/components/badge/badge.scss +49 -0
- package/labs/gb/components/badge/md-gb-badge.d.ts +12 -0
- package/labs/gb/components/badge/md-gb-badge.js +8 -0
- package/labs/gb/components/badge/md-gb-badge.js.map +1 -0
- package/labs/gb/components/button/_button-tokens.scss +2 -0
- package/labs/gb/components/button/{md-button.d.ts → button-element.d.ts} +22 -7
- package/labs/gb/components/button/{md-button.js → button-element.js} +38 -20
- package/labs/gb/components/button/button-element.js.map +1 -0
- package/labs/gb/components/button/button.css.map +1 -1
- package/labs/gb/components/button/md-gb-button.d.ts +12 -0
- package/labs/gb/components/button/md-gb-button.js +8 -0
- package/labs/gb/components/button/md-gb-button.js.map +1 -0
- package/labs/gb/components/card/_card-tokens.scss +2 -0
- package/labs/gb/components/card/{md-card.d.ts → card-element.d.ts} +12 -7
- package/labs/gb/components/card/{md-card.js → card-element.js} +21 -14
- package/labs/gb/components/card/card-element.js.map +1 -0
- package/labs/gb/components/card/card.css.map +1 -1
- package/labs/gb/components/card/md-gb-card.d.ts +12 -0
- package/labs/gb/components/card/md-gb-card.js +8 -0
- package/labs/gb/components/card/md-gb-card.js.map +1 -0
- package/labs/gb/components/checkbox/_checkbox-tokens.scss +2 -0
- package/labs/gb/components/checkbox/{md-checkbox.d.ts → checkbox-element.d.ts} +15 -7
- package/labs/gb/components/checkbox/{md-checkbox.js → checkbox-element.js} +26 -16
- package/labs/gb/components/checkbox/checkbox-element.js.map +1 -0
- package/labs/gb/components/checkbox/checkbox.css.map +1 -1
- package/labs/gb/components/checkbox/md-gb-checkbox.d.ts +12 -0
- package/labs/gb/components/checkbox/md-gb-checkbox.js +8 -0
- package/labs/gb/components/checkbox/md-gb-checkbox.js.map +1 -0
- package/labs/gb/components/divider/_divider-tokens.scss +2 -0
- package/labs/gb/components/divider/{md-divider.d.ts → divider-element.d.ts} +5 -7
- package/labs/gb/components/divider/{md-divider.js → divider-element.js} +10 -10
- package/labs/gb/components/divider/divider-element.js.map +1 -0
- package/labs/gb/components/divider/divider.css.map +1 -1
- package/labs/gb/components/divider/md-gb-divider.d.ts +12 -0
- package/labs/gb/components/divider/md-gb-divider.js +8 -0
- package/labs/gb/components/divider/md-gb-divider.js.map +1 -0
- package/labs/gb/components/fab/_fab-tokens.scss +2 -0
- package/labs/gb/components/fab/fab-element.d.ts +31 -0
- package/labs/gb/components/fab/{md-fab.js → fab-element.js} +22 -11
- package/labs/gb/components/fab/fab-element.js.map +1 -0
- package/labs/gb/components/fab/fab.css.map +1 -1
- package/labs/gb/components/fab/md-gb-fab.d.ts +12 -0
- package/labs/gb/components/fab/md-gb-fab.js +8 -0
- package/labs/gb/components/fab/md-gb-fab.js.map +1 -0
- package/labs/gb/components/iconbutton/_icon-button-tokens.scss +2 -0
- package/labs/gb/components/iconbutton/{md-icon-button.d.ts → icon-button-element.d.ts} +15 -7
- package/labs/gb/components/iconbutton/{md-icon-button.js → icon-button-element.js} +30 -20
- package/labs/gb/components/iconbutton/icon-button-element.js.map +1 -0
- package/labs/gb/components/iconbutton/icon-button.css.map +1 -1
- package/labs/gb/components/iconbutton/md-gb-icon-button.d.ts +12 -0
- package/labs/gb/components/iconbutton/md-gb-icon-button.js +8 -0
- package/labs/gb/components/iconbutton/md-gb-icon-button.js.map +1 -0
- package/labs/gb/components/list/_list-tokens.scss +4 -0
- package/labs/gb/components/list/{md-list.d.ts → list-element.d.ts} +6 -7
- package/labs/gb/components/list/{md-list.js → list-element.js} +11 -10
- package/labs/gb/components/list/list-element.js.map +1 -0
- package/labs/gb/components/list/list-item-element.d.ts +77 -0
- package/labs/gb/components/list/{md-list-item.js → list-item-element.js} +48 -13
- package/labs/gb/components/list/list-item-element.js.map +1 -0
- package/labs/gb/components/list/list.css.map +1 -1
- package/labs/gb/components/list/md-gb-list-item.d.ts +12 -0
- package/labs/gb/components/list/md-gb-list-item.js +8 -0
- package/labs/gb/components/list/md-gb-list-item.js.map +1 -0
- package/labs/gb/components/list/md-gb-list.d.ts +12 -0
- package/labs/gb/components/list/md-gb-list.js +8 -0
- package/labs/gb/components/list/md-gb-list.js.map +1 -0
- package/labs/gb/components/menu/_menu-tokens.scss +4 -0
- package/labs/gb/components/menu/md-gb-menu-group.d.ts +12 -0
- package/labs/gb/components/menu/md-gb-menu-group.js +8 -0
- package/labs/gb/components/menu/md-gb-menu-group.js.map +1 -0
- package/labs/gb/components/menu/md-gb-menu-item.d.ts +12 -0
- package/labs/gb/components/menu/md-gb-menu-item.js +8 -0
- package/labs/gb/components/menu/md-gb-menu-item.js.map +1 -0
- package/labs/gb/components/menu/md-gb-menu.d.ts +12 -0
- package/labs/gb/components/menu/md-gb-menu.js +8 -0
- package/labs/gb/components/menu/md-gb-menu.js.map +1 -0
- package/labs/gb/components/menu/{md-menu.d.ts → menu-element.d.ts} +11 -7
- package/labs/gb/components/menu/{md-menu.js → menu-element.js} +16 -10
- package/labs/gb/components/menu/menu-element.js.map +1 -0
- package/labs/gb/components/menu/{md-menu-group.d.ts → menu-group-element.d.ts} +3 -6
- package/labs/gb/components/menu/{md-menu-group.js → menu-group-element.js} +11 -11
- package/labs/gb/components/menu/menu-group-element.js.map +1 -0
- package/labs/gb/components/menu/menu-item-element.d.ts +56 -0
- package/labs/gb/components/menu/{md-menu-item.js → menu-item-element.js} +41 -13
- package/labs/gb/components/menu/menu-item-element.js.map +1 -0
- package/labs/gb/components/menu/menu.css.map +1 -1
- package/labs/gb/components/menu/menu.js +1 -1
- package/labs/gb/components/menu/menu.js.map +1 -1
- package/labs/gb/components/radio/_radio-tokens.scss +2 -0
- package/labs/gb/components/radio/md-gb-radio.d.ts +12 -0
- package/labs/gb/components/radio/md-gb-radio.js +8 -0
- package/labs/gb/components/radio/md-gb-radio.js.map +1 -0
- package/labs/gb/components/radio/{md-radio.d.ts → radio-element.d.ts} +10 -7
- package/labs/gb/components/radio/{md-radio.js → radio-element.js} +19 -14
- package/labs/gb/components/radio/radio-element.js.map +1 -0
- package/labs/gb/components/radio/radio.css.map +1 -1
- package/labs/gb/components/splitbutton/_split-button-tokens.scss +4 -0
- package/labs/gb/components/splitbutton/md-gb-split-button.d.ts +12 -0
- package/labs/gb/components/splitbutton/md-gb-split-button.js +8 -0
- package/labs/gb/components/splitbutton/md-gb-split-button.js.map +1 -0
- package/labs/gb/components/splitbutton/split-button-element.d.ts +33 -0
- package/labs/gb/components/splitbutton/{md-split-button.js → split-button-element.js} +21 -12
- package/labs/gb/components/splitbutton/split-button-element.js.map +1 -0
- package/labs/gb/components/splitbutton/split-button.css.map +1 -1
- package/labs/gb/components/splitbutton/split-button.d.ts +4 -4
- package/labs/gb/components/splitbutton/split-button.js +4 -4
- package/labs/gb/components/splitbutton/split-button.js.map +1 -1
- package/labs/gb/components/switch/_switch-tokens.scss +2 -0
- package/labs/gb/components/switch/md-gb-switch.d.ts +12 -0
- package/labs/gb/components/switch/md-gb-switch.js +8 -0
- package/labs/gb/components/switch/md-gb-switch.js.map +1 -0
- package/labs/gb/components/switch/{md-switch.d.ts → switch-element.d.ts} +19 -7
- package/labs/gb/components/switch/{md-switch.js → switch-element.js} +28 -14
- package/labs/gb/components/switch/switch-element.js.map +1 -0
- package/labs/gb/components/switch/switch.css.map +1 -1
- package/labs/gb/styles/adopt-styles.js +6 -1
- package/labs/gb/styles/adopt-styles.js.map +1 -1
- package/labs/gb/styles/icon/{md-icon.d.ts → icon-element.d.ts} +1 -7
- package/labs/gb/styles/icon/{md-icon.js → icon-element.js} +8 -10
- package/labs/gb/styles/icon/icon-element.js.map +1 -0
- package/labs/gb/styles/icon/md-gb-icon.d.ts +12 -0
- package/labs/gb/styles/icon/md-gb-icon.js +8 -0
- package/labs/gb/styles/icon/md-gb-icon.js.map +1 -0
- package/package.json +3 -3
- package/labs/gb/components/button/md-button.js.map +0 -1
- package/labs/gb/components/card/md-card.js.map +0 -1
- package/labs/gb/components/checkbox/md-checkbox.js.map +0 -1
- package/labs/gb/components/divider/md-divider.js.map +0 -1
- package/labs/gb/components/fab/md-fab.d.ts +0 -22
- package/labs/gb/components/fab/md-fab.js.map +0 -1
- package/labs/gb/components/iconbutton/md-icon-button.js.map +0 -1
- package/labs/gb/components/list/md-list-item.d.ts +0 -44
- package/labs/gb/components/list/md-list-item.js.map +0 -1
- package/labs/gb/components/list/md-list.js.map +0 -1
- package/labs/gb/components/menu/md-menu-group.js.map +0 -1
- package/labs/gb/components/menu/md-menu-item.d.ts +0 -30
- package/labs/gb/components/menu/md-menu-item.js.map +0 -1
- package/labs/gb/components/menu/md-menu.js.map +0 -1
- package/labs/gb/components/radio/md-radio.js.map +0 -1
- package/labs/gb/components/splitbutton/md-split-button.d.ts +0 -26
- package/labs/gb/components/splitbutton/md-split-button.js.map +0 -1
- package/labs/gb/components/switch/md-switch.js.map +0 -1
- package/labs/gb/styles/icon/md-icon.js.map +0 -1
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import { __decorate } from "tslib";
|
|
7
7
|
import { css, html, LitElement, nothing } from 'lit';
|
|
8
|
-
import {
|
|
8
|
+
import { property } from 'lit/decorators.js';
|
|
9
9
|
import { mixinDelegatesAria } from '../../../../internal/aria/delegate.js';
|
|
10
10
|
import { redispatchEvent } from '../../../../internal/events/redispatch-event.js';
|
|
11
11
|
import { mixinElementInternals } from '../../../behaviors/element-internals.js';
|
|
@@ -18,8 +18,22 @@ import { iconButton } from './icon-button.js';
|
|
|
18
18
|
const baseClass = mixinDelegatesAria(mixinFormSubmitter(mixinFormAssociated(mixinElementInternals(LitElement))));
|
|
19
19
|
/**
|
|
20
20
|
* A Material Design icon button component.
|
|
21
|
+
*
|
|
22
|
+
* @slot - Used to display an icon.
|
|
23
|
+
* @fires {InputEvent} input - Fired when a toggle icon button is selected or unselected. --bubbles --composed
|
|
24
|
+
* @fires {Event} change - Fired when a toggle button is selected or unselected. --bubbles
|
|
25
|
+
* @csspart icon-btn - The icon button's root element.
|
|
26
|
+
* @cssprop --container-color
|
|
27
|
+
* @cssprop --container-height
|
|
28
|
+
* @cssprop --container-shape
|
|
29
|
+
* @cssprop --icon-color
|
|
30
|
+
* @cssprop --icon-size
|
|
31
|
+
* @cssprop --outline-color
|
|
32
|
+
* @cssprop --outline-width
|
|
33
|
+
* @cssprop --leading-space
|
|
34
|
+
* @cssprop --trailing-space
|
|
21
35
|
*/
|
|
22
|
-
|
|
36
|
+
export class IconButtonElement extends baseClass {
|
|
23
37
|
constructor() {
|
|
24
38
|
super(...arguments);
|
|
25
39
|
/**
|
|
@@ -120,13 +134,13 @@ let IconButton = class IconButton extends baseClass {
|
|
|
120
134
|
this.selected = event.target.ariaPressed === 'true';
|
|
121
135
|
redispatchEvent(this, event);
|
|
122
136
|
}
|
|
123
|
-
}
|
|
137
|
+
}
|
|
124
138
|
/** @nocollapse */
|
|
125
|
-
|
|
139
|
+
IconButtonElement.shadowRootOptions = {
|
|
126
140
|
mode: 'open',
|
|
127
141
|
delegatesFocus: true,
|
|
128
142
|
};
|
|
129
|
-
|
|
143
|
+
IconButtonElement.styles = [
|
|
130
144
|
focusRingStyles,
|
|
131
145
|
rippleStyles,
|
|
132
146
|
iconButtonStyles,
|
|
@@ -141,36 +155,32 @@ IconButton.styles = [
|
|
|
141
155
|
];
|
|
142
156
|
__decorate([
|
|
143
157
|
property()
|
|
144
|
-
],
|
|
158
|
+
], IconButtonElement.prototype, "color", void 0);
|
|
145
159
|
__decorate([
|
|
146
160
|
property()
|
|
147
|
-
],
|
|
161
|
+
], IconButtonElement.prototype, "size", void 0);
|
|
148
162
|
__decorate([
|
|
149
163
|
property({ type: Boolean })
|
|
150
|
-
],
|
|
164
|
+
], IconButtonElement.prototype, "square", void 0);
|
|
151
165
|
__decorate([
|
|
152
166
|
property()
|
|
153
|
-
],
|
|
167
|
+
], IconButtonElement.prototype, "width", void 0);
|
|
154
168
|
__decorate([
|
|
155
169
|
property({ noAccessor: true })
|
|
156
|
-
],
|
|
170
|
+
], IconButtonElement.prototype, "type", null);
|
|
157
171
|
__decorate([
|
|
158
172
|
property({ type: Boolean, attribute: 'soft-disabled', reflect: true })
|
|
159
|
-
],
|
|
173
|
+
], IconButtonElement.prototype, "softDisabled", void 0);
|
|
160
174
|
__decorate([
|
|
161
175
|
property({ type: Boolean })
|
|
162
|
-
],
|
|
176
|
+
], IconButtonElement.prototype, "selected", void 0);
|
|
163
177
|
__decorate([
|
|
164
178
|
property()
|
|
165
|
-
],
|
|
179
|
+
], IconButtonElement.prototype, "href", void 0);
|
|
166
180
|
__decorate([
|
|
167
181
|
property()
|
|
168
|
-
],
|
|
182
|
+
], IconButtonElement.prototype, "download", void 0);
|
|
169
183
|
__decorate([
|
|
170
184
|
property()
|
|
171
|
-
],
|
|
172
|
-
|
|
173
|
-
customElement('md-icon-button')
|
|
174
|
-
], IconButton);
|
|
175
|
-
export { IconButton };
|
|
176
|
-
//# sourceMappingURL=md-icon-button.js.map
|
|
185
|
+
], IconButtonElement.prototype, "target", void 0);
|
|
186
|
+
//# sourceMappingURL=icon-button-element.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"icon-button-element.js","sourceRoot":"","sources":["icon-button-element.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * @license\n * Copyright 2026 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {css, CSSResultOrNative, html, LitElement, nothing} from 'lit';\nimport {property} from 'lit/decorators.js';\nimport {ARIAMixinStrict} from '../../../../internal/aria/aria.js';\nimport {mixinDelegatesAria} from '../../../../internal/aria/delegate.js';\nimport {redispatchEvent} from '../../../../internal/events/redispatch-event.js';\nimport {mixinElementInternals} from '../../../behaviors/element-internals.js';\nimport {mixinFormAssociated} from '../../../behaviors/form-associated.js';\nimport {mixinFormSubmitter} from '../../../behaviors/form-submitter.js';\n\nimport focusRingStyles from '../focus/focus-ring.cssresult.js';\nimport rippleStyles from '../ripple/ripple.cssresult.js';\nimport iconButtonStyles from './icon-button.cssresult.js';\n\nimport type {\n IconButtonColor,\n IconButtonSize,\n IconButtonWidth,\n} from './icon-button.js';\nimport {iconButton} from './icon-button.js';\n\nconst baseClass = mixinDelegatesAria(\n mixinFormSubmitter(mixinFormAssociated(mixinElementInternals(LitElement))),\n);\n\n/**\n * A Material Design icon button component.\n *\n * @slot - Used to display an icon.\n * @fires {InputEvent} input - Fired when a toggle icon button is selected or unselected. --bubbles --composed\n * @fires {Event} change - Fired when a toggle button is selected or unselected. --bubbles\n * @csspart icon-btn - The icon button's root element.\n * @cssprop --container-color\n * @cssprop --container-height\n * @cssprop --container-shape\n * @cssprop --icon-color\n * @cssprop --icon-size\n * @cssprop --outline-color\n * @cssprop --outline-width\n * @cssprop --leading-space\n * @cssprop --trailing-space\n */\nexport class IconButtonElement extends baseClass {\n /** @nocollapse */\n static override shadowRootOptions: ShadowRootInit = {\n mode: 'open',\n delegatesFocus: true,\n };\n\n static override styles: CSSResultOrNative[] = [\n focusRingStyles,\n rippleStyles,\n iconButtonStyles,\n css`\n :host {\n display: inline-flex;\n }\n .icon-btn {\n flex: 1;\n }\n `,\n ];\n\n /**\n * The color of the button.\n */\n @property() color: IconButtonColor = 'standard';\n\n /**\n * The size of the button.\n */\n @property() size: IconButtonSize = 'sm';\n\n /**\n * Changes the shape of the button to be square.\n */\n @property({type: Boolean}) square = false;\n\n /**\n * Changes the width of the button.\n */\n @property() width: IconButtonWidth = '';\n\n /**\n * A string indicating the behavior of the button.\n *\n * - \"submit\" (default): A button that submits its associated form.\n * - \"reset\": A button that resets its associated form.\n * - \"button\": A normal button.\n * - \"toggle\": A toggle button using the `selected` property.\n * - \"link\": An anchor link (`<a>`). Type is always \"link\" when `href` is set.\n */\n @property({noAccessor: true})\n override get type(): string {\n return this.href ? 'link' : super.type;\n }\n override set type(type: string) {\n if (this.href && type !== 'link') {\n return;\n }\n super.type = type;\n }\n\n /**\n * Whether or not the button is \"soft-disabled\" (disabled but still\n * focusable).\n */\n @property({type: Boolean, attribute: 'soft-disabled', reflect: true})\n softDisabled = false;\n\n /**\n * Whether or not the button is selected, when `type=\"toggle\"`.\n */\n @property({type: Boolean}) selected = false;\n\n /**\n * The URL that the link button points to.\n */\n @property() href = '';\n\n /**\n * The filename to use when downloading the linked resource.\n */\n @property() download = '';\n\n /**\n * Where to display the linked `href` URL for a link button.\n */\n @property() target: '_blank' | '_parent' | '_self' | '_top' | '' = '';\n\n protected override render() {\n const classes = iconButton({\n color: this.color,\n size: this.size,\n width: this.width,\n square: this.square,\n disabled: this.softDisabled,\n });\n\n const {ariaLabel, ariaHasPopup, ariaExpanded} = this as ARIAMixinStrict;\n if (this.type === 'link') {\n return html`<a\n part=\"icon-btn\"\n class=${classes}\n href=${this.href}\n download=${this.download || nothing}\n target=${this.target || nothing}\n aria-label=${ariaLabel || nothing}\n aria-haspopup=${ariaHasPopup || nothing}\n aria-expanded=${ariaExpanded || nothing}\n aria-disabled=${this.disabled || this.softDisabled || nothing}\n tabindex=${this.disabled && !this.softDisabled ? -1 : nothing}>\n <slot></slot>\n </a>`;\n }\n\n return html`<button\n part=\"icon-btn\"\n class=${classes}\n type=\"button\"\n ?disabled=${this.disabled}\n aria-disabled=${this.softDisabled || nothing}\n aria-label=${ariaLabel || nothing}\n aria-pressed=${this.type === 'toggle' ? this.selected : nothing}\n aria-haspopup=${ariaHasPopup || nothing}\n aria-expanded=${ariaExpanded || nothing}\n @change=${this.handleChange}>\n <slot></slot>\n </button>`;\n }\n\n private handleChange(event: Event) {\n this.selected = (event.target as HTMLElement).ariaPressed === 'true';\n redispatchEvent(this, event);\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sourceRoot":"","sources":["icon-button.scss","_icon-button-tokens.scss"],"names":[],"mappings":"AAAA;AAAA;AAAA;AAAA,GASA,kDACA,wBAEI,
|
|
1
|
+
{"version":3,"sourceRoot":"","sources":["icon-button.scss","_icon-button-tokens.scss"],"names":[],"mappings":"AAAA;AAAA;AAAA;AAAA,GASA,kDACA,wBAEI,UCLF,+BACA,yBACA,qDACA,2BACA,kBACA,6BACA,qBACA,mBACA,yEAKA,iDACA,0CDHE,0BCOF,+CACA,6CDNI,2ECUJ,yDACA,qDDRI,wECYJ,+CACA,6CDTE,yBCaF,2DACA,yDDZI,uECgBJ,iDACA,+CDbE,4BCiBF,qDACA,qDDhBI,0ECoBJ,uDACA,qDDjBE,4BCqBF,qDDnBI,0ECuBJ,0CDnBE,sBCuBF,yBACA,kBACA,qBACA,sBDxBI,8CC4BJ,qBACA,sBD1BI,4CC8BJ,sBACA,uBD3BE,sBC+BF,yBACA,qBACA,sBD/BI,8CCmCJ,qBACA,sBDjCI,4CCqCJ,sBACA,uBDlCE,sBCsCF,yBACA,sBACA,uBDtCI,8CC0CJ,sBACA,uBDxCI,4CC4CJ,sBACA,uBD1CI,oEC8CJ,iDD1CE,sBC8CF,yBACA,kBACA,sBACA,uBD/CI,8CCmDJ,sBACA,uBDjDI,4CCqDJ,sBACA,qBACA,uBDpDI,oECwDJ,iDDpDE,sBCwDF,0BACA,kBACA,sBACA,qBACA,uBD1DI,8CC8DJ,sBACA,uBD5DI,4CCgEJ,sBACA,uBD9DI,oECkEJ,iDD9DE,0BCkEF,iDDhEI,8CCoEJ,iDDjEI,8CCqEJ,iDDlEI,8CCsEJ,iDDnEI,wECuEJ,qDDnEE,+DCuEF,iDDrEI,mFCyEJ,iDDtEI,mFC0EJ,iDDvEI,mFC2EJ,iDDvEE,kCC2EF,wEACA,mEDxEE,UACE,oBACA,mBACA,wCACA,uDACA,qCACA,+BACA,wBACA,WACE,iFAEF,iCAGF,+CACE,eAGF,8CACE","file":"icon-button.css"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2026 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { IconButtonElement } from './icon-button-element.js';
|
|
7
|
+
declare global {
|
|
8
|
+
interface HTMLElementTagNameMap {
|
|
9
|
+
/** A Material Design component. */
|
|
10
|
+
'md-gb-icon-button': IconButtonElement;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2026 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { IconButtonElement } from './icon-button-element.js';
|
|
7
|
+
customElements.define('md-gb-icon-button', IconButtonElement);
|
|
8
|
+
//# sourceMappingURL=md-gb-icon-button.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"md-gb-icon-button.js","sourceRoot":"","sources":["md-gb-icon-button.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAC,iBAAiB,EAAC,MAAM,0BAA0B,CAAC;AAS3D,cAAc,CAAC,MAAM,CAAC,mBAAmB,EAAE,iBAAiB,CAAC,CAAC","sourcesContent":["/**\n * @license\n * Copyright 2026 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {IconButtonElement} from './icon-button-element.js';\n\ndeclare global {\n interface HTMLElementTagNameMap {\n /** A Material Design component. */\n 'md-gb-icon-button': IconButtonElement;\n }\n}\n\ncustomElements.define('md-gb-icon-button', IconButtonElement);\n"]}
|
|
@@ -4,8 +4,10 @@
|
|
|
4
4
|
//
|
|
5
5
|
|
|
6
6
|
@mixin root {
|
|
7
|
+
// LINT.IfChange
|
|
7
8
|
--container-shape: var(--md-sys-shape-corner-lg);
|
|
8
9
|
--gap: 0;
|
|
10
|
+
// LINT.ThenChange(md-list.ts) keep in sync with `@cssprop` jsdoc tags
|
|
9
11
|
}
|
|
10
12
|
|
|
11
13
|
@mixin segmented {
|
|
@@ -13,6 +15,7 @@
|
|
|
13
15
|
}
|
|
14
16
|
|
|
15
17
|
@mixin item {
|
|
18
|
+
// LINT.IfChange
|
|
16
19
|
--container-height: 56px;
|
|
17
20
|
--container-color: transparent;
|
|
18
21
|
--container-shape: var(--md-sys-shape-corner-xs);
|
|
@@ -45,6 +48,7 @@
|
|
|
45
48
|
--md-sys-typescale-label-sm-tracking
|
|
46
49
|
);
|
|
47
50
|
--trailing-supporting-text-color: var(--md-sys-color-on-surface-variant);
|
|
51
|
+
// LINT.ThenChange(md-list-item.ts) keep in sync with `@cssprop` jsdoc tags
|
|
48
52
|
}
|
|
49
53
|
|
|
50
54
|
@mixin item-segmented {
|
|
@@ -4,17 +4,16 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
import { CSSResultOrNative, LitElement } from 'lit';
|
|
7
|
-
declare global {
|
|
8
|
-
interface HTMLElementTagNameMap {
|
|
9
|
-
/** A Material Design list component. */
|
|
10
|
-
'md-list': List;
|
|
11
|
-
}
|
|
12
|
-
}
|
|
13
7
|
declare const baseClass: import("@material/web/labs/behaviors/mixin.js").MixinReturn<typeof LitElement, import("../../../behaviors/element-internals.js").WithElementInternals>;
|
|
14
8
|
/**
|
|
15
9
|
* A Material Design list component.
|
|
10
|
+
*
|
|
11
|
+
* @slot - Used to display list items.
|
|
12
|
+
* @csspart list - The list's root element.
|
|
13
|
+
* @cssprop --container-shape
|
|
14
|
+
* @cssprop --gap
|
|
16
15
|
*/
|
|
17
|
-
export declare class
|
|
16
|
+
export declare class ListElement extends baseClass {
|
|
18
17
|
static styles: CSSResultOrNative[];
|
|
19
18
|
constructor();
|
|
20
19
|
/**
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import { __decorate } from "tslib";
|
|
7
7
|
import { css, html, LitElement } from 'lit';
|
|
8
|
-
import {
|
|
8
|
+
import { property } from 'lit/decorators.js';
|
|
9
9
|
import { internals, mixinElementInternals, } from '../../../behaviors/element-internals.js';
|
|
10
10
|
import listStyles from './list.css' with { type: 'css' }; // github-only
|
|
11
11
|
// import {styles as listStyles} from './list.cssresult.js'; // google3-only
|
|
@@ -14,8 +14,13 @@ import { list } from './list.js';
|
|
|
14
14
|
const baseClass = mixinElementInternals(LitElement);
|
|
15
15
|
/**
|
|
16
16
|
* A Material Design list component.
|
|
17
|
+
*
|
|
18
|
+
* @slot - Used to display list items.
|
|
19
|
+
* @csspart list - The list's root element.
|
|
20
|
+
* @cssprop --container-shape
|
|
21
|
+
* @cssprop --gap
|
|
17
22
|
*/
|
|
18
|
-
|
|
23
|
+
export class ListElement extends baseClass {
|
|
19
24
|
constructor() {
|
|
20
25
|
super();
|
|
21
26
|
/**
|
|
@@ -29,8 +34,8 @@ let List = class List extends baseClass {
|
|
|
29
34
|
<slot></slot>
|
|
30
35
|
</div>`;
|
|
31
36
|
}
|
|
32
|
-
}
|
|
33
|
-
|
|
37
|
+
}
|
|
38
|
+
ListElement.styles = [
|
|
34
39
|
listStyles,
|
|
35
40
|
css `
|
|
36
41
|
:host {
|
|
@@ -43,9 +48,5 @@ List.styles = [
|
|
|
43
48
|
];
|
|
44
49
|
__decorate([
|
|
45
50
|
property({ type: Boolean })
|
|
46
|
-
],
|
|
47
|
-
|
|
48
|
-
customElement('md-list')
|
|
49
|
-
], List);
|
|
50
|
-
export { List };
|
|
51
|
-
//# sourceMappingURL=md-list.js.map
|
|
51
|
+
], ListElement.prototype, "segmented", void 0);
|
|
52
|
+
//# sourceMappingURL=list-element.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list-element.js","sourceRoot":"","sources":["list-element.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;AAEH,OAAO,EAAC,GAAG,EAAqB,IAAI,EAAE,UAAU,EAAC,MAAM,KAAK,CAAC;AAC7D,OAAO,EAAC,QAAQ,EAAC,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EACL,SAAS,EACT,qBAAqB,GACtB,MAAM,yCAAyC,CAAC;AAEjD,OAAO,UAAU,MAAM,YAAY,CAAC,OAAM,IAAI,EAAE,KAAK,EAAC,CAAC,CAAC,cAAc;AACtE,4EAA4E;AAE5E,OAAO,EAAC,IAAI,EAAC,MAAM,WAAW,CAAC;AAE/B,wCAAwC;AACxC,MAAM,SAAS,GAAG,qBAAqB,CAAC,UAAU,CAAC,CAAC;AAEpD;;;;;;;GAOG;AACH,MAAM,OAAO,WAAY,SAAQ,SAAS;IAaxC;QACE,KAAK,EAAE,CAAC;QAIV;;WAEG;QACwB,cAAS,GAAG,KAAK,CAAC;QAN3C,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,GAAG,MAAM,CAAC;IAChC,CAAC;IAOkB,MAAM;QACvB,OAAO,IAAI,CAAA,2BAA2B,IAAI,CAAC,IAAI,CAAC;;WAEzC,CAAC;IACV,CAAC;;AA1Be,kBAAM,GAAwB;IAC5C,UAAU;IACV,GAAG,CAAA;;;;;;;KAOF;CACF,AAVqB,CAUpB;AAUyB;IAA1B,QAAQ,CAAC,EAAC,IAAI,EAAE,OAAO,EAAC,CAAC;8CAAmB","sourcesContent":["/**\n * @license\n * Copyright 2026 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {css, CSSResultOrNative, html, LitElement} from 'lit';\nimport {property} from 'lit/decorators.js';\nimport {\n internals,\n mixinElementInternals,\n} from '../../../behaviors/element-internals.js';\n\nimport listStyles from './list.css' with {type: 'css'}; // github-only\n// import {styles as listStyles} from './list.cssresult.js'; // google3-only\n\nimport {list} from './list.js';\n\n// Separate variable needed for closure.\nconst baseClass = mixinElementInternals(LitElement);\n\n/**\n * A Material Design list component.\n *\n * @slot - Used to display list items.\n * @csspart list - The list's root element.\n * @cssprop --container-shape\n * @cssprop --gap\n */\nexport class ListElement extends baseClass {\n static override styles: CSSResultOrNative[] = [\n listStyles,\n css`\n :host {\n display: flex;\n }\n .list {\n flex: 1;\n }\n `,\n ];\n\n constructor() {\n super();\n this[internals].role = 'list';\n }\n\n /**\n * Whether to render the list with segmented items.\n */\n @property({type: Boolean}) segmented = false;\n\n protected override render() {\n return html`<div part=\"list\" class=\"${list(this)}\">\n <slot></slot>\n </div>`;\n }\n}\n"]}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2026 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { CSSResultOrNative, LitElement } from 'lit';
|
|
7
|
+
declare const baseClass: import("@material/web/labs/behaviors/mixin.js").MixinReturn<import("@material/web/labs/behaviors/mixin.js").MixinReturn<typeof LitElement, import("../../../behaviors/element-internals.js").WithElementInternals>>;
|
|
8
|
+
/**
|
|
9
|
+
* A Material Design list item component.
|
|
10
|
+
*
|
|
11
|
+
* @slot - Used to display the item's primary label.
|
|
12
|
+
* @slot avatar - Used to display a circular avatar before the item's content.
|
|
13
|
+
* @slot leading - Used to display icons and content before the item's main content.
|
|
14
|
+
* @slot overline - Used to display overline text above the main label.
|
|
15
|
+
* @slot supporting-text - Used to display supporting text below the main label.
|
|
16
|
+
* @slot trailing-text - Used to display metadata or text after the item's main content.
|
|
17
|
+
* @slot trailing - Used to display icons and content after the item's main content.
|
|
18
|
+
* @csspart list-item - The list item's root element.
|
|
19
|
+
* @cssprop --container-height
|
|
20
|
+
* @cssprop --container-color
|
|
21
|
+
* @cssprop --container-shape
|
|
22
|
+
* @cssprop --label-text-color
|
|
23
|
+
* @cssprop --label-text
|
|
24
|
+
* @cssprop --label-text-tracking
|
|
25
|
+
* @cssprop --leading-space
|
|
26
|
+
* @cssprop --trailing-space
|
|
27
|
+
* @cssprop --between-space
|
|
28
|
+
* @cssprop --top-space
|
|
29
|
+
* @cssprop --bottom-space
|
|
30
|
+
* @cssprop --avatar-size
|
|
31
|
+
* @cssprop --avatar-shape
|
|
32
|
+
* @cssprop --avatar-color
|
|
33
|
+
* @cssprop --avatar-label
|
|
34
|
+
* @cssprop --avatar-label-tracking
|
|
35
|
+
* @cssprop --avatar-label-color
|
|
36
|
+
* @cssprop --leading-icon-color
|
|
37
|
+
* @cssprop --leading-icon-size
|
|
38
|
+
* @cssprop --trailing-icon-color
|
|
39
|
+
* @cssprop --trailing-icon-size
|
|
40
|
+
* @cssprop --overline
|
|
41
|
+
* @cssprop --overline-tracking
|
|
42
|
+
* @cssprop --overline-color
|
|
43
|
+
* @cssprop --supporting-text
|
|
44
|
+
* @cssprop --supporting-text-tracking
|
|
45
|
+
* @cssprop --supporting-text-color
|
|
46
|
+
* @cssprop --trailing-supporting-text
|
|
47
|
+
* @cssprop --trailing-supporting-text-tracking
|
|
48
|
+
* @cssprop --trailing-supporting-text-color
|
|
49
|
+
*/
|
|
50
|
+
export declare class ListItemElement extends baseClass {
|
|
51
|
+
/** @nocollapse */
|
|
52
|
+
static shadowRootOptions: {
|
|
53
|
+
delegatesFocus: boolean;
|
|
54
|
+
clonable?: boolean;
|
|
55
|
+
customElementRegistry?: CustomElementRegistry;
|
|
56
|
+
mode: ShadowRootMode;
|
|
57
|
+
serializable?: boolean;
|
|
58
|
+
slotAssignment?: SlotAssignmentMode;
|
|
59
|
+
};
|
|
60
|
+
static styles: CSSResultOrNative[];
|
|
61
|
+
constructor();
|
|
62
|
+
/**
|
|
63
|
+
* Whether the list item is selected.
|
|
64
|
+
*/
|
|
65
|
+
checked: boolean;
|
|
66
|
+
/**
|
|
67
|
+
* Whether the list item is disabled.
|
|
68
|
+
*/
|
|
69
|
+
disabled: boolean;
|
|
70
|
+
/**
|
|
71
|
+
* Whether the list item is non-interactive.
|
|
72
|
+
*/
|
|
73
|
+
nonInteractive: boolean;
|
|
74
|
+
protected render(): import("lit-html").TemplateResult<1>;
|
|
75
|
+
private renderContent;
|
|
76
|
+
}
|
|
77
|
+
export {};
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import { __decorate } from "tslib";
|
|
7
7
|
import { css, html, LitElement, nothing } from 'lit';
|
|
8
|
-
import {
|
|
8
|
+
import { property } from 'lit/decorators.js';
|
|
9
9
|
import { mixinDelegatesAria } from '../../../../internal/aria/delegate.js';
|
|
10
10
|
import { internals, mixinElementInternals, } from '../../../behaviors/element-internals.js';
|
|
11
11
|
import { hasSlotted } from '../shared/has-slotted.js';
|
|
@@ -20,8 +20,47 @@ import { listItem } from './list.js';
|
|
|
20
20
|
const baseClass = mixinDelegatesAria(mixinElementInternals(LitElement));
|
|
21
21
|
/**
|
|
22
22
|
* A Material Design list item component.
|
|
23
|
+
*
|
|
24
|
+
* @slot - Used to display the item's primary label.
|
|
25
|
+
* @slot avatar - Used to display a circular avatar before the item's content.
|
|
26
|
+
* @slot leading - Used to display icons and content before the item's main content.
|
|
27
|
+
* @slot overline - Used to display overline text above the main label.
|
|
28
|
+
* @slot supporting-text - Used to display supporting text below the main label.
|
|
29
|
+
* @slot trailing-text - Used to display metadata or text after the item's main content.
|
|
30
|
+
* @slot trailing - Used to display icons and content after the item's main content.
|
|
31
|
+
* @csspart list-item - The list item's root element.
|
|
32
|
+
* @cssprop --container-height
|
|
33
|
+
* @cssprop --container-color
|
|
34
|
+
* @cssprop --container-shape
|
|
35
|
+
* @cssprop --label-text-color
|
|
36
|
+
* @cssprop --label-text
|
|
37
|
+
* @cssprop --label-text-tracking
|
|
38
|
+
* @cssprop --leading-space
|
|
39
|
+
* @cssprop --trailing-space
|
|
40
|
+
* @cssprop --between-space
|
|
41
|
+
* @cssprop --top-space
|
|
42
|
+
* @cssprop --bottom-space
|
|
43
|
+
* @cssprop --avatar-size
|
|
44
|
+
* @cssprop --avatar-shape
|
|
45
|
+
* @cssprop --avatar-color
|
|
46
|
+
* @cssprop --avatar-label
|
|
47
|
+
* @cssprop --avatar-label-tracking
|
|
48
|
+
* @cssprop --avatar-label-color
|
|
49
|
+
* @cssprop --leading-icon-color
|
|
50
|
+
* @cssprop --leading-icon-size
|
|
51
|
+
* @cssprop --trailing-icon-color
|
|
52
|
+
* @cssprop --trailing-icon-size
|
|
53
|
+
* @cssprop --overline
|
|
54
|
+
* @cssprop --overline-tracking
|
|
55
|
+
* @cssprop --overline-color
|
|
56
|
+
* @cssprop --supporting-text
|
|
57
|
+
* @cssprop --supporting-text-tracking
|
|
58
|
+
* @cssprop --supporting-text-color
|
|
59
|
+
* @cssprop --trailing-supporting-text
|
|
60
|
+
* @cssprop --trailing-supporting-text-tracking
|
|
61
|
+
* @cssprop --trailing-supporting-text-color
|
|
23
62
|
*/
|
|
24
|
-
|
|
63
|
+
export class ListItemElement extends baseClass {
|
|
25
64
|
constructor() {
|
|
26
65
|
super();
|
|
27
66
|
/**
|
|
@@ -79,13 +118,13 @@ let ListItem = class ListItem extends baseClass {
|
|
|
79
118
|
</span>
|
|
80
119
|
`;
|
|
81
120
|
}
|
|
82
|
-
}
|
|
121
|
+
}
|
|
83
122
|
/** @nocollapse */
|
|
84
|
-
|
|
123
|
+
ListItemElement.shadowRootOptions = {
|
|
85
124
|
...LitElement.shadowRootOptions,
|
|
86
125
|
delegatesFocus: true,
|
|
87
126
|
};
|
|
88
|
-
|
|
127
|
+
ListItemElement.styles = [
|
|
89
128
|
focusRingStyles,
|
|
90
129
|
rippleStyles,
|
|
91
130
|
listStyles,
|
|
@@ -108,15 +147,11 @@ ListItem.styles = [
|
|
|
108
147
|
];
|
|
109
148
|
__decorate([
|
|
110
149
|
property({ type: Boolean })
|
|
111
|
-
],
|
|
150
|
+
], ListItemElement.prototype, "checked", void 0);
|
|
112
151
|
__decorate([
|
|
113
152
|
property({ type: Boolean })
|
|
114
|
-
],
|
|
153
|
+
], ListItemElement.prototype, "disabled", void 0);
|
|
115
154
|
__decorate([
|
|
116
155
|
property({ type: Boolean, reflect: true, attribute: 'static' })
|
|
117
|
-
],
|
|
118
|
-
|
|
119
|
-
customElement('md-list-item')
|
|
120
|
-
], ListItem);
|
|
121
|
-
export { ListItem };
|
|
122
|
-
//# sourceMappingURL=md-list-item.js.map
|
|
156
|
+
], ListItemElement.prototype, "nonInteractive", void 0);
|
|
157
|
+
//# sourceMappingURL=list-item-element.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list-item-element.js","sourceRoot":"","sources":["list-item-element.ts"],"names":[],"mappings":"AAAA;;;;GAIG;;AAEH,OAAO,EAAC,GAAG,EAAqB,IAAI,EAAE,UAAU,EAAE,OAAO,EAAC,MAAM,KAAK,CAAC;AACtE,OAAO,EAAC,QAAQ,EAAC,MAAM,mBAAmB,CAAC;AAE3C,OAAO,EAAC,kBAAkB,EAAC,MAAM,uCAAuC,CAAC;AACzE,OAAO,EACL,SAAS,EACT,qBAAqB,GACtB,MAAM,yCAAyC,CAAC;AACjD,OAAO,EAAC,UAAU,EAAC,MAAM,0BAA0B,CAAC;AAEpD,OAAO,eAAe,MAAM,yBAAyB,CAAC,OAAM,IAAI,EAAE,KAAK,EAAC,CAAC,CAAC,cAAc;AACxF,8FAA8F;AAC9F,OAAO,YAAY,MAAM,sBAAsB,CAAC,OAAM,IAAI,EAAE,KAAK,EAAC,CAAC,CAAC,cAAc;AAClF,wFAAwF;AACxF,OAAO,UAAU,MAAM,YAAY,CAAC,OAAM,IAAI,EAAE,KAAK,EAAC,CAAC,CAAC,cAAc;AACtE,4EAA4E;AAE5E,OAAO,EAAC,QAAQ,EAAC,MAAM,WAAW,CAAC;AAEnC,wCAAwC;AACxC,MAAM,SAAS,GAAG,kBAAkB,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC,CAAC;AAExE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AACH,MAAM,OAAO,eAAgB,SAAQ,SAAS;IA6B5C;QACE,KAAK,EAAE,CAAC;QAIV;;WAEG;QACwB,YAAO,GAAG,KAAK,CAAC;QAE3C;;WAEG;QACwB,aAAQ,GAAG,KAAK,CAAC;QAE5C;;WAEG;QAEH,mBAAc,GAAG,KAAK,CAAC;QAjBrB,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,GAAG,UAAU,CAAC;IACpC,CAAC;IAkBkB,MAAM;QACvB,MAAM,KAAK,GAAG;YACZ,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,MAAM,EAAE,IAAI,CAAC,cAAc;SAC5B,CAAC;QACF,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACxB,OAAO,IAAI,CAAA,gCAAgC,QAAQ,CAAC,KAAK,CAAC;WACrD,IAAI,CAAC,aAAa,EAAE;QACvB,CAAC;QACL,CAAC;QAED,iCAAiC;QACjC,MAAM,EAAC,SAAS,EAAC,GAAG,IAAuB,CAAC;QAC5C,OAAO,IAAI,CAAA;;eAEA,QAAQ,CAAC,KAAK,CAAC;kBACZ,IAAI,CAAC,QAAQ;mBACZ,SAAS,IAAI,OAAO;QAC/B,IAAI,CAAC,aAAa,EAAE;cACd,CAAC;IACb,CAAC;IAEO,aAAa;QACnB,OAAO,IAAI,CAAA;;uDAEwC,UAAU,EAAE;+BACpC,UAAU,EAAE;;;;;;;;;;;YAW/B,UAAU,EAAE;gCACQ,UAAU,EAAE;;KAEvC,CAAC;IACJ,CAAC;;AA3FD,kBAAkB;AACF,iCAAiB,GAAG;IAClC,GAAG,UAAU,CAAC,iBAAiB;IAC/B,cAAc,EAAE,IAAI;CACrB,AAHgC,CAG/B;AAEc,sBAAM,GAAwB;IAC5C,eAAe;IACf,YAAY;IACZ,UAAU;IACV,GAAG,CAAA;;;;;;;;;;;;;;;KAeF;CACF,AApBqB,CAoBpB;AAUyB;IAA1B,QAAQ,CAAC,EAAC,IAAI,EAAE,OAAO,EAAC,CAAC;gDAAiB;AAKhB;IAA1B,QAAQ,CAAC,EAAC,IAAI,EAAE,OAAO,EAAC,CAAC;iDAAkB;AAM5C;IADC,QAAQ,CAAC,EAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAC,CAAC;uDACvC","sourcesContent":["/**\n * @license\n * Copyright 2026 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {css, CSSResultOrNative, html, LitElement, nothing} from 'lit';\nimport {property} from 'lit/decorators.js';\nimport {ARIAMixinStrict} from '../../../../internal/aria/aria.js';\nimport {mixinDelegatesAria} from '../../../../internal/aria/delegate.js';\nimport {\n internals,\n mixinElementInternals,\n} from '../../../behaviors/element-internals.js';\nimport {hasSlotted} from '../shared/has-slotted.js';\n\nimport focusRingStyles from '../focus/focus-ring.css' with {type: 'css'}; // github-only\n// import {styles as focusRingStyles} from '../focus/focus-ring.cssresult.js'; // google3-only\nimport rippleStyles from '../ripple/ripple.css' with {type: 'css'}; // github-only\n// import {styles as rippleStyles} from '../ripple/ripple.cssresult.js'; // google3-only\nimport listStyles from './list.css' with {type: 'css'}; // github-only\n// import {styles as listStyles} from './list.cssresult.js'; // google3-only\n\nimport {listItem} from './list.js';\n\n// Separate variable needed for closure.\nconst baseClass = mixinDelegatesAria(mixinElementInternals(LitElement));\n\n/**\n * A Material Design list item component.\n *\n * @slot - Used to display the item's primary label.\n * @slot avatar - Used to display a circular avatar before the item's content.\n * @slot leading - Used to display icons and content before the item's main content.\n * @slot overline - Used to display overline text above the main label.\n * @slot supporting-text - Used to display supporting text below the main label.\n * @slot trailing-text - Used to display metadata or text after the item's main content.\n * @slot trailing - Used to display icons and content after the item's main content.\n * @csspart list-item - The list item's root element.\n * @cssprop --container-height\n * @cssprop --container-color\n * @cssprop --container-shape\n * @cssprop --label-text-color\n * @cssprop --label-text\n * @cssprop --label-text-tracking\n * @cssprop --leading-space\n * @cssprop --trailing-space\n * @cssprop --between-space\n * @cssprop --top-space\n * @cssprop --bottom-space\n * @cssprop --avatar-size\n * @cssprop --avatar-shape\n * @cssprop --avatar-color\n * @cssprop --avatar-label\n * @cssprop --avatar-label-tracking\n * @cssprop --avatar-label-color\n * @cssprop --leading-icon-color\n * @cssprop --leading-icon-size\n * @cssprop --trailing-icon-color\n * @cssprop --trailing-icon-size\n * @cssprop --overline\n * @cssprop --overline-tracking\n * @cssprop --overline-color\n * @cssprop --supporting-text\n * @cssprop --supporting-text-tracking\n * @cssprop --supporting-text-color\n * @cssprop --trailing-supporting-text\n * @cssprop --trailing-supporting-text-tracking\n * @cssprop --trailing-supporting-text-color\n */\nexport class ListItemElement extends baseClass {\n /** @nocollapse */\n static override shadowRootOptions = {\n ...LitElement.shadowRootOptions,\n delegatesFocus: true,\n };\n\n static override styles: CSSResultOrNative[] = [\n focusRingStyles,\n rippleStyles,\n listStyles,\n css`\n :host {\n display: flex;\n align-items: center;\n }\n .list-item {\n flex: 1;\n align-items: inherit;\n }\n :is(.list-item-leading, .list-item-trailing):not(:has(.has-slotted)) {\n display: none;\n }\n slot:not(.has-slotted) {\n display: contents;\n }\n `,\n ];\n\n constructor() {\n super();\n this[internals].role = 'listitem';\n }\n\n /**\n * Whether the list item is selected.\n */\n @property({type: Boolean}) checked = false;\n\n /**\n * Whether the list item is disabled.\n */\n @property({type: Boolean}) disabled = false;\n\n /**\n * Whether the list item is non-interactive.\n */\n @property({type: Boolean, reflect: true, attribute: 'static'})\n nonInteractive = false;\n\n protected override render() {\n const state = {\n checked: this.checked,\n disabled: this.disabled,\n static: this.nonInteractive,\n };\n if (this.nonInteractive) {\n return html`<div part=\"list-item\" class=\"${listItem(state)}\"\n >${this.renderContent()}</div\n >`;\n }\n\n // Needed for closure conformance\n const {ariaLabel} = this as ARIAMixinStrict;\n return html`<button\n part=\"list-item\"\n class=\"${listItem(state)}\"\n ?disabled=${this.disabled}\n aria-label=${ariaLabel || nothing}>\n ${this.renderContent()}\n </button>`;\n }\n\n private renderContent() {\n return html`\n <span class=\"list-item-leading\">\n <slot name=\"avatar\" class=\"list-item-avatar\" ${hasSlotted()}></slot>\n <slot name=\"leading\" ${hasSlotted()}></slot>\n </span>\n <span class=\"list-item-content\">\n <slot name=\"overline\" class=\"list-item-overline\"></slot>\n <slot></slot>\n <slot name=\"supporting-text\" class=\"list-item-supporting-text\"></slot>\n </span>\n <span class=\"list-item-trailing\">\n <slot\n name=\"trailing-text\"\n class=\"list-item-trailing-text\"\n ${hasSlotted()}></slot>\n <slot name=\"trailing\" ${hasSlotted()}></slot>\n </span>\n `;\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sourceRoot":"","sources":["list.scss","_list-tokens.scss","../radio/_radio-tokens.scss","../checkbox/_checkbox-tokens.scss"],"names":[],"mappings":"AAAA;AAAA;AAAA;AAAA,GAWA,mFACA,oBAEI,
|
|
1
|
+
{"version":3,"sourceRoot":"","sources":["list.scss","_list-tokens.scss","../radio/_radio-tokens.scss","../checkbox/_checkbox-tokens.scss"],"names":[],"mappings":"AAAA;AAAA;AAAA;AAAA,GAWA,mFACA,oBAEI,MCPF,iDACA,SDUE,qBCLF,WDOI,uBAGF,MACE,aACA,sBACA,aACA,cACA,gBACA,eACA,qCAGF,2DAEE,kCACA,gCACA,oBAGF,yDAEE,gCACA,8BACA,mBAGF,WACE,sBAKF,0CAIE,uBALJ,aAQE,YACA,gBACA,mBAIA,WChDF,yBACA,+BACA,iDACA,mDACA,8CACA,gEACA,sBACA,uBACA,sBACA,kBACA,qBACA,oBACA,gDACA,sDACA,iDACA,mEACA,+DACA,6DACA,0BACA,8DACA,2BACA,6CACA,+DACA,yDACA,mDACA,qEACA,gEACA,6DACA,iFAGA,yEDoBI,yCAHF,WCZF,gDDqBI,4DCjBJ,iDACA,qDACA,sDDmBI,mECfJ,iDACA,qDACA,sDDiBI,8DCbJ,iDACA,qDACA,sDDgBE,iCCZF,iDACA,2DACA,+DACA,iEACA,kEACA,6DACA,oEACA,+EDSE,mCCHF,iDACA,wEACA,yEACA,6EAGA,8EAGA,uEACA,gFAGA,yFDNE,WACE,aACA,mBACA,yBACA,sBACA,mCACA,qCACA,wCACA,0DACA,mDACA,8BACA,uBACA,0CACA,gBACA,YACA,iBACA,sBACA,cAGF,sCAnDF,WAoDI,kCACA,iCAGF,qCAxDF,WAyDI,gCACA,+BAGF,sDACE,eAGF,8BACE,aACA,sBACA,OAGF,6DAEE,aACA,mBACA,QACA,gBAGF,8BACE,2CACA,yCAGF,+BACE,4CACA,0CAGF,+BACE,qBACA,wCACA,4BAGF,sCACE,4BACA,+CACA,mCAGF,oCACE,qCACA,wDACA,4CAGF,6BACE,aACA,mBACA,qCACA,kCACA,eACA,yBACA,yBACA,4CACA,gCAGF,sBACE,kDACA,gCACA,gBAGF,gEACE,aAGF,2DAEE,kBACA,mBACA,eACA,2BAGF,kDE9KF,0CACA,iDF+KI,+BAGF,qDG5KF,mBACA,+CACA","file":"list.css"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2026 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { ListItemElement } from './list-item-element.js';
|
|
7
|
+
declare global {
|
|
8
|
+
interface HTMLElementTagNameMap {
|
|
9
|
+
/** A Material Design component. */
|
|
10
|
+
'md-gb-list-item': ListItemElement;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"md-gb-list-item.js","sourceRoot":"","sources":["md-gb-list-item.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAC,eAAe,EAAC,MAAM,wBAAwB,CAAC;AASvD,cAAc,CAAC,MAAM,CAAC,iBAAiB,EAAE,eAAe,CAAC,CAAC","sourcesContent":["/**\n * @license\n * Copyright 2026 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {ListItemElement} from './list-item-element.js';\n\ndeclare global {\n interface HTMLElementTagNameMap {\n /** A Material Design component. */\n 'md-gb-list-item': ListItemElement;\n }\n}\n\ncustomElements.define('md-gb-list-item', ListItemElement);\n"]}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2026 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { ListElement } from './list-element.js';
|
|
7
|
+
declare global {
|
|
8
|
+
interface HTMLElementTagNameMap {
|
|
9
|
+
/** A Material Design component. */
|
|
10
|
+
'md-gb-list': ListElement;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"md-gb-list.js","sourceRoot":"","sources":["md-gb-list.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAC,WAAW,EAAC,MAAM,mBAAmB,CAAC;AAS9C,cAAc,CAAC,MAAM,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC","sourcesContent":["/**\n * @license\n * Copyright 2026 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {ListElement} from './list-element.js';\n\ndeclare global {\n interface HTMLElementTagNameMap {\n /** A Material Design component. */\n 'md-gb-list': ListElement;\n }\n}\n\ncustomElements.define('md-gb-list', ListElement);\n"]}
|
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
//
|
|
5
5
|
|
|
6
6
|
@mixin root {
|
|
7
|
+
// LINT.IfChange
|
|
7
8
|
--container-color: var(--md-sys-color-surface-container-low);
|
|
8
9
|
--container-elevation: var(--md-sys-elevation-shadow-2);
|
|
9
10
|
--container-shape: var(--md-sys-shape-corner-lg);
|
|
@@ -11,6 +12,7 @@
|
|
|
11
12
|
--group-padding: 2px;
|
|
12
13
|
--group-shape: var(--md-sys-shape-corner-sm);
|
|
13
14
|
--section-label-text-color: var(--md-sys-color-on-surface-variant);
|
|
15
|
+
// LINT.ThenChange(md-menu.ts) keep in sync with `@cssprop` jsdoc tags
|
|
14
16
|
}
|
|
15
17
|
|
|
16
18
|
@mixin inactive {
|
|
@@ -26,6 +28,7 @@
|
|
|
26
28
|
}
|
|
27
29
|
|
|
28
30
|
@mixin item {
|
|
31
|
+
// LINT.IfChange
|
|
29
32
|
--between-space: 12px;
|
|
30
33
|
--bottom-space: 8px;
|
|
31
34
|
--container-color: transparent;
|
|
@@ -48,6 +51,7 @@
|
|
|
48
51
|
--trailing-supporting-text-color: var(--md-sys-color-on-surface-variant);
|
|
49
52
|
--trailing-supporting-text: var(--md-sys-typescale-label-lg);
|
|
50
53
|
--trailing-supporting-text-tracking: var(--md-sys-typescale-label-lg-tracking);
|
|
54
|
+
// LINT.ThenChange(md-menu-item.ts) keep in sync with `@cssprop` jsdoc tags
|
|
51
55
|
}
|
|
52
56
|
|
|
53
57
|
@mixin item-first-child {
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2026 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { MenuGroupElement } from './menu-group-element.js';
|
|
7
|
+
declare global {
|
|
8
|
+
interface HTMLElementTagNameMap {
|
|
9
|
+
/** A Material Design component. */
|
|
10
|
+
'md-gb-menu-group': MenuGroupElement;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"md-gb-menu-group.js","sourceRoot":"","sources":["md-gb-menu-group.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAC,gBAAgB,EAAC,MAAM,yBAAyB,CAAC;AASzD,cAAc,CAAC,MAAM,CAAC,kBAAkB,EAAE,gBAAgB,CAAC,CAAC","sourcesContent":["/**\n * @license\n * Copyright 2026 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {MenuGroupElement} from './menu-group-element.js';\n\ndeclare global {\n interface HTMLElementTagNameMap {\n /** A Material Design component. */\n 'md-gb-menu-group': MenuGroupElement;\n }\n}\n\ncustomElements.define('md-gb-menu-group', MenuGroupElement);\n"]}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2026 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { MenuItemElement } from './menu-item-element.js';
|
|
7
|
+
declare global {
|
|
8
|
+
interface HTMLElementTagNameMap {
|
|
9
|
+
/** A Material Design component. */
|
|
10
|
+
'md-gb-menu-item': MenuItemElement;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"md-gb-menu-item.js","sourceRoot":"","sources":["md-gb-menu-item.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAC,eAAe,EAAC,MAAM,wBAAwB,CAAC;AASvD,cAAc,CAAC,MAAM,CAAC,iBAAiB,EAAE,eAAe,CAAC,CAAC","sourcesContent":["/**\n * @license\n * Copyright 2026 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {MenuItemElement} from './menu-item-element.js';\n\ndeclare global {\n interface HTMLElementTagNameMap {\n /** A Material Design component. */\n 'md-gb-menu-item': MenuItemElement;\n }\n}\n\ncustomElements.define('md-gb-menu-item', MenuItemElement);\n"]}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2026 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { MenuElement } from './menu-element.js';
|
|
7
|
+
declare global {
|
|
8
|
+
interface HTMLElementTagNameMap {
|
|
9
|
+
/** A Material Design component. */
|
|
10
|
+
'md-gb-menu': MenuElement;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"md-gb-menu.js","sourceRoot":"","sources":["md-gb-menu.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAC,WAAW,EAAC,MAAM,mBAAmB,CAAC;AAS9C,cAAc,CAAC,MAAM,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC","sourcesContent":["/**\n * @license\n * Copyright 2026 Google LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {MenuElement} from './menu-element.js';\n\ndeclare global {\n interface HTMLElementTagNameMap {\n /** A Material Design component. */\n 'md-gb-menu': MenuElement;\n }\n}\n\ncustomElements.define('md-gb-menu', MenuElement);\n"]}
|