@synergy-design-system/components
Version:
This package provides the base of the Synergy Design System as native web components. It uses [lit](https://www.lit.dev) and parts of [shoelace](https://shoelace.style/). Synergy officially supports the latest two versions of all major browsers (as define
212 lines (172 loc) • 5.83 kB
JavaScript
// src/components/button/button.custom.styles.ts
import { css } from "lit";
var button_custom_styles_default = css`
.button {
font-weight: var(--syn-font-weight-bold);
}
.button:focus-visible {
outline: var(--syn-focus-ring-color) solid var(--syn-focus-ring-width);
outline-offset: var(--syn-focus-ring-width);
}
/*
* Adjustments for button label paddings
* @see https://github.com/synergy-design-system/synergy-design-system/issues/243
*/
.button--has-prefix.button--small .button__label {
padding-inline-start: var(--syn-spacing-2x-small);
}
.button--has-suffix.button--small .button__label,
.button--caret.button--small .button__label {
padding-inline-end: var(--syn-spacing-2x-small);
}
.button--has-prefix.button--medium .button__label {
padding-inline-start: var(--syn-spacing-x-small);
}
.button--has-suffix.button--medium .button__label,
.button--caret.button--medium .button__label {
padding-inline-end: var(--syn-spacing-x-small);
}
/**
* Icon-only buttons
*/
.button--small .button__label.button__icon-only {
padding: 0 calc(var(--syn-spacing-x-small) + var(--syn-spacing-4x-small));
}
.button--small .button__label::slotted(syn-icon) {
font-size: var(--syn-font-size-medium);
vertical-align: -3px;
}
.button--medium .button__label.button__icon-only {
padding: 0 calc(var(--syn-spacing-small) - var(--syn-spacing-4x-small));
}
.button--medium .button__label::slotted(syn-icon) {
font-size: var(--syn-font-size-x-large);
vertical-align: -6px;
}
.button--large .button__label.button__icon-only {
padding: 0 calc(var(--syn-spacing-medium) - var(--syn-spacing-4x-small));
}
.button--large .button__label::slotted(syn-icon) {
font-size: var(--syn-font-size-2x-large);
vertical-align: -8px;
}
/**
* Size modifiers
*/
.button.button--medium.button--has-label .button__label {
font-size: var(--syn-font-size-medium);
}
.button.button--large.button--has-label .button__label {
font-size: var(--syn-font-size-large);
}
/*
* Standard buttons
*/
.button--filled.button--primary.button--disabled {
background-color: var(--syn-color-neutral-600);
border-color: var(--syn-color-neutral-600);
color: var(--syn-color-neutral-0);
}
.button--filled.button--primary:hover:not(.button--disabled) {
background-color: var(--syn-color-primary-900);
border-color: var(--syn-color-primary-900);
color: var(--syn-color-neutral-0);
}
.button--filled.button--primary:active:not(.button--disabled) {
background-color: var(--syn-color-primary-950);
border-color: var(--syn-color-primary-950);
color: var(--syn-color-neutral-0);
}
/*
* Outline buttons
*/
.button--outline.button--primary.button--disabled {
background: none;
border-color: var(--syn-color-neutral-600);
color: var(--syn-color-neutral-600);
}
.button--outline.button--primary:hover:not(.button--disabled),
.button--outline.button--primary.button--checked:not(.button--disabled) {
background: none;
border-color: var(--syn-color-primary-900);
color: var(--syn-color-primary-900);
}
.button--outline.button--primary:active:not(.button--disabled) {
background: inherit;
border-color: var(--syn-color-primary-950);
color: var(--syn-color-primary-950);
}
/*
* Text buttons
*/
.button--text:hover:not(.button--disabled) {
color: var(--syn-color-primary-900);
}
.button--text.button--primary:active:not(.button--disabled) {
background: inherit;
border-color: transparent;
color: var(--syn-color-primary-950);
}
.button--text.button--primary.button--disabled {
color: var(--syn-color-neutral-600);
}
/**
* Button spacing
*/
.button.button--small.button--has-label.button--has-prefix {
padding-inline-start: var(--syn-spacing-small);
}
.button.button--small.button--has-label.button--has-suffix {
padding-inline-end: var(--syn-spacing-small);
}
.button.button--small.button--has-prefix .button__prefix,
.button.button--small.button--has-suffix .button__suffix {
font-size: var(--syn-spacing-medium);
}
.button.button--medium.button--has-label.button--has-prefix {
padding-inline-start: var(--syn-spacing-medium);
}
.button.button--medium.button--has-label.button--has-suffix {
padding-inline-end: var(--syn-spacing-medium);
}
.button.button--medium.button--has-prefix .button__prefix,
.button.button--medium.button--has-suffix .button__suffix {
font-size: var(--syn-spacing-large);
}
.button.button--large.button--has-label.button--has-prefix {
padding-inline-start: var(--syn-spacing-large);
}
.button.button--large.button--has-label.button--has-prefix .button__label {
padding-inline-start: var(--syn-spacing-small);
}
.button.button--large.button--has-label.button--has-suffix {
padding-inline-end: var(--syn-spacing-large);
}
.button.button--large.button--has-label.button--has-suffix .button__label {
padding-inline-end: var(--syn-spacing-small);
}
.button.button--large.button--has-prefix .button__prefix,
.button.button--large.button--has-suffix .button__suffix {
font-size: var(--syn-font-size-2x-large);
}
/** #429: Use token for opacity */
.button--disabled {
opacity: var(--syn-input-disabled-opacity);
}
/*
* Caret modifier
*/
.button--caret.button--small .button__caret{
font-size: var(--syn-font-size-medium);
}
.button--caret.button--medium .button__caret{
font-size: var(--syn-font-size-x-large);
}
.button--caret.button--large .button__caret{
font-size: var(--syn-font-size-2x-large);
}
`;
export {
button_custom_styles_default
};
//# sourceMappingURL=chunk.VWY2RG4F.js.map