mirror of
https://github.com/home-assistant/frontend.git
synced 2025-11-09 10:59:50 +00:00
46 lines
1.3 KiB
TypeScript
46 lines
1.3 KiB
TypeScript
import { IconButton } from "@material/web/iconbutton/internal/icon-button";
|
|
import { styles } from "@material/web/iconbutton/internal/outlined-styles";
|
|
import { styles as sharedStyles } from "@material/web/iconbutton/internal/shared-styles";
|
|
import { css } from "lit";
|
|
import { customElement } from "lit/decorators";
|
|
|
|
@customElement("ha-outlined-icon-button")
|
|
export class HaOutlinedIconButton extends IconButton {
|
|
protected override getRenderClasses() {
|
|
return {
|
|
...super.getRenderClasses(),
|
|
outlined: true,
|
|
};
|
|
}
|
|
|
|
static override styles = [
|
|
css`
|
|
.icon-button {
|
|
border-radius: var(--_container-shape);
|
|
}
|
|
`,
|
|
sharedStyles,
|
|
styles,
|
|
css`
|
|
:host {
|
|
--ha-icon-display: block;
|
|
--md-sys-color-on-surface: var(--secondary-text-color);
|
|
--md-sys-color-on-surface-variant: var(--secondary-text-color);
|
|
--md-sys-color-on-surface-rgb: var(--rgb-secondary-text-color);
|
|
--md-sys-color-outline: var(--secondary-text-color);
|
|
}
|
|
:host([no-ripple]) .outlined {
|
|
--md-ripple-focus-opacity: 0;
|
|
--md-ripple-hover-opacity: 0;
|
|
--md-ripple-pressed-opacity: 0;
|
|
}
|
|
`,
|
|
];
|
|
}
|
|
|
|
declare global {
|
|
interface HTMLElementTagNameMap {
|
|
"ha-outlined-icon-button": HaOutlinedIconButton;
|
|
}
|
|
}
|