diff --git a/gallery/src/demos/demo-ha-chip.ts b/gallery/src/demos/demo-ha-chip.ts index 6518e9e2ec..a8d401601e 100644 --- a/gallery/src/demos/demo-ha-chip.ts +++ b/gallery/src/demos/demo-ha-chip.ts @@ -20,6 +20,11 @@ const chips: HaChipSetItem[] = [ leadingIcon: mdiHomeAssistant, label: "Demo chip", }, + { + leadingIcon: mdiHomeAssistant, + label: "Demo chip", + active: true, + }, {}, { trailingIcon: mdiClose, @@ -48,6 +53,8 @@ export class DemoHaChip extends LitElement { @state() standaloneIsOutlined = false; + @state() standaloneIsActive = false; + protected render(): TemplateResult { return html`
@@ -57,12 +64,16 @@ export class DemoHaChip extends LitElement { + + +
Simple: Demo chip Label property: With leadingIcon: With trailingIcon property: With trailing-icon slot: @@ -127,6 +142,10 @@ export class DemoHaChip extends LitElement { `; } + private _toggleActive() { + this.standaloneIsActive = !this.standaloneIsActive; + } + private _toggleDisable() { this.standaloneIsDisabled = !this.standaloneIsDisabled; } diff --git a/src/components/ha-chip-set.ts b/src/components/ha-chip-set.ts index dc3ed87f14..79b039723e 100644 --- a/src/components/ha-chip-set.ts +++ b/src/components/ha-chip-set.ts @@ -16,6 +16,7 @@ export interface HaChipSetItem { leadingIcon?: string; trailingIcon?: string; outlined?: boolean; + active?: boolean; } @customElement("ha-chip-set") @@ -31,6 +32,7 @@ export class HaChipSet extends LitElement { html` ${this.leadingIcon ? html` - + + ${this.active + ? html` + ` + : html` + `} ` : ""} @@ -109,6 +116,26 @@ export class HaChip extends LitElement { color: var(--ha-chip-icon-color, var(--text-primary-color)); } + ha-circular-progress { + --mdc-theme-primary: var( + --ha-chip-icon-color, + var(--text-primary-color) + ); + padding: 8px; + margin-left: -12px !important; + margin-right: -2px; + } + + .mdc-chip.outlined ha-circular-progress { + border-radius: 50%; + margin-right: 4px; + background-color: var(--ha-chip-background-color, var(--primary-color)); + --mdc-theme-primary: var( + --ha-chip-icon-color, + var(--text-primary-color) + ); + } + .mdc-chip.outlined ha-svg-icon, slot[name="trailing-icon"]::slotted(ha-svg-icon) { border-radius: 50%; @@ -127,7 +154,7 @@ export class HaChip extends LitElement { height: 18px; font-size: 18px; padding: 2px; - color: var(--ha-chip-icon-color); + color: var(--ha-chip-icon-color, var(--text-primary-color)); margin-right: -8px; display: inline-flex; align-items: center;