File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 77import { html , LitElement } from 'lit' ;
88
99/**
10- * TODO(b/265336902): add docs
10+ * An icon element.
1111 */
1212export class Icon extends LitElement {
1313 protected override render ( ) {
Original file line number Diff line number Diff line change 44 * SPDX-License-Identifier: Apache-2.0
55 */
66
7- import '@material/web/icon/icon.js' ;
87import '@material/web/labs/gb/components/fab/md-fab.js' ;
8+ import '@material/web/labs/gb/styles/icon/md-icon.js' ;
99
1010import { MaterialStoryInit } from './material-collection.js' ;
1111import { FabColor , FabSize } from '@material/web/labs/gb/components/fab/fab.js' ;
Original file line number Diff line number Diff line change 44 * SPDX-License-Identifier: Apache-2.0
55 */
66
7- import '@material/web/icon/icon.js' ;
87import '@material/web/labs/gb/components/iconbutton/md-icon-button.js' ;
8+ import '@material/web/labs/gb/styles/icon/md-icon.js' ;
99
1010import { MaterialStoryInit } from './material-collection.js' ;
1111import {
Original file line number Diff line number Diff line change 44 * SPDX-License-Identifier: Apache-2.0
55 */
66
7- import '@material/web/icon/icon.js' ;
87import '@material/web/labs/gb/components/list/md-list.js' ;
98import '@material/web/labs/gb/components/list/md-list-item.js' ;
9+ import '@material/web/labs/gb/styles/icon/md-icon.js' ;
1010
1111import { MaterialStoryInit } from './material-collection.js' ;
1212import { styles as checkboxStyles } from '@material/web/labs/gb/components/checkbox/checkbox.cssresult.js' ;
Original file line number Diff line number Diff line change 44 * SPDX-License-Identifier: Apache-2.0
55 */
66
7- import '@material/web/icon/icon.js' ;
87import '@material/web/labs/gb/components/switch/md-switch.js' ;
8+ import '@material/web/labs/gb/styles/icon/md-icon.js' ;
99
1010import { MaterialStoryInit } from './material-collection.js' ;
1111import { adoptStyles } from '@material/web/labs/gb/styles/adopt-styles.js' ;
Original file line number Diff line number Diff line change 4040}
4141
4242@layer md.sys.icon {
43- .md-icon {
43+ .md-icon ,
44+ :host (.md-icon ) {
4445 display : inline-flex ;
4546 place-items : center ;
4647 place-content : center ;
Original file line number Diff line number Diff line change 1+ /**
2+ * @license
3+ * Copyright 2026 Google LLC
4+ * SPDX-License-Identifier: Apache-2.0
5+ */
6+
7+ import { type CSSResultOrNative } from 'lit' ;
8+ import { customElement } from 'lit/decorators.js' ;
9+ import { Icon as IconBase } from '../../../../icon/internal/icon.js' ;
10+
11+ import iconStyles from './md-icon.css' with { type : 'css' } ; // github-only
12+ // import iconStyles from './md-icon.cssresult.js'; // google3-only
13+
14+ declare global {
15+ interface HTMLElementTagNameMap {
16+ /** A Material Design icon component. */
17+ 'md-icon' : Icon ;
18+ }
19+ }
20+
21+ /**
22+ * A Material Design icon component.
23+ */
24+ @customElement ( 'md-icon' )
25+ export class Icon extends IconBase {
26+ static override styles : CSSResultOrNative [ ] = [ iconStyles ] ;
27+
28+ override connectedCallback ( ) {
29+ super . connectedCallback ( ) ;
30+ this . classList . add ( 'md-icon' ) ;
31+ }
32+ }
You can’t perform that action at this time.
0 commit comments