@synergy-design-system/components
Version:
117 lines (95 loc) • 3.05 kB
JavaScript
// src/components/icon-button/icon-button.styles.ts
import { css } from "lit";
var icon_button_styles_default = css`
:host {
color: var(--syn-color-neutral-600);
display: inline-block;
}
.icon-button {
align-items: center;
/* stylelint-disable-next-line property-no-vendor-prefix */
-webkit-appearance: none;
appearance: none;
background: none;
border: none;
border-radius: 0;
color: currentColor;
cursor: pointer;
display: flex;
flex: 0 0 auto;
font-size: inherit;
padding: var(--syn-spacing-x-small);
transition: var(--syn-transition-x-fast) color;
}
.icon-button:focus {
outline: none;
}
.icon-button:focus-visible {
border-radius: var(--syn-icon-button-focus-ring-border-radius); /* Remove round borders */
outline: var(--syn-focus-ring);
outline-offset: var(--syn-focus-ring-offset);
}
.icon-button:hover:not(.icon-button--disabled),
.icon-button:focus-visible:not(.icon-button--disabled) {
color: var(--syn-color-primary-600);
}
.icon-button:active:not(.icon-button--disabled) {
color: var(--syn-color-primary-700);
}
.icon-button--disabled {
cursor: not-allowed;
opacity: var(--syn-input-disabled-opacity); /* #429: Use token for opacity */
}
.icon-button__icon {
pointer-events: none;
}
/* Colors */
:host([color="currentColor"]) {
color: currentColor;
}
:host([color="primary"]),
:host([color="primary"]) .icon-button:focus-visible:not(.icon-button--disabled) {
color: var(--syn-interactive-emphasis-color);
}
:host([color="primary"]) .icon-button:hover:not(.icon-button--disabled) {
color: var(--syn-interactive-emphasis-color-hover);
}
:host([color="primary"]) .icon-button:active:not(.icon-button--disabled) {
color: var(--syn-interactive-emphasis-color-active);
}
:host([color="neutral"]) {
color: var(--syn-interactive-quiet-color);
}
:host([color="neutral"]) .icon-button:hover:not(.icon-button--disabled) {
color: var(--syn-interactive-quiet-color-hover);
}
:host([color="neutral"]) .icon-button:active:not(.icon-button--disabled) {
color: var(--syn-interactive-quiet-color-active);
}
:host([color="neutral"]) .icon-button:focus-visible:not(.icon-button--disabled):not(:hover) {
color: var(--syn-interactive-quiet-color);
}
/* Sizes */
.icon-button--small {
font-size: var(--syn-font-size-medium);
}
.icon-button--medium {
font-size: var(--syn-font-size-x-large);
}
.icon-button--large {
font-size: var(--syn-font-size-2x-large);
}
/* Force user to set "label" prop */
.icon-button[aria-label=""] {
border: var(--syn-border-width-large) var(--syn-color-error-600) solid;
}
.icon-button[aria-label=""]::after {
content: "Set label prop for a11y to get rid of this text and border!";
font-size: var(--syn-font-size-2x-small);
margin-left: var(--syn-spacing-2x-small);
}
`;
export {
icon_button_styles_default
};
//# sourceMappingURL=chunk.3U6C42N7.js.map