@kelvininc/ui-components
Version:
Kelvin UI Components
64 lines (63 loc) • 2.02 kB
CSS
/** HEADINGS **/
/** LABELS **/
/** SPANS **/
/** PARAGRAPHS **/
/** CODE/CONSOLE **/
@property --rotation {
syntax: "<angle>";
initial-value: 0deg;
inherits: false;
}
@keyframes rotate-border {
to {
--rotation: 360deg;
}
}
:host {
/**
* @prop --indicator-radius: The size of the circle drawn
* @prop --indicator-default-color: The color to show by default on the indicator
* @prop --indicator-default-border-color: The border color to show by default on the indicator
* @prop --indicator-active-color: The color to show when the indicator is active
* @prop --indicator-active-border-color: The border color to show when the indicator is active
* @prop --indicator-error-border-color: The color to show on the border that highlights the indicator when there's an error
*/
--indicator-radius: 14px;
--indicator-default-color: var(--kv-neutral-6, #3f3f3f);
--indicator-default-border-color: var(--kv-neutral-6, #3f3f3f);
--indicator-active-color: var(--kv-neutral-3, #ddd);
--indicator-active-border-color: var(--kv-success, #05a357);
--indicator-error-border-color: var(--kv-error, #e11900);
}
.indicator {
display: flex;
justify-content: center;
align-items: center;
box-sizing: border-box;
width: var(--indicator-radius);
height: var(--indicator-radius);
border-radius: 50%;
background-color: var(--indicator-default-color);
border: 2px solid var(--indicator-default-border-color);
transition: all 0.25s ease;
}
.indicator--state-enabled {
cursor: pointer;
}
.indicator--state-active {
background-color: var(--indicator-active-color);
border-color: var(--indicator-active-border-color);
}
.indicator--state-active kv-icon {
--icon-color: var(--indicator-active-border-color);
}
.indicator--state-error {
border-color: var(--indicator-error-border-color);
}
.indicator--state-error kv-icon {
--icon-color: var(--indicator-error-border-color);
}
.indicator kv-icon {
--icon-width: var(--indicator-radius);
--icon-height: var(--indicator-radius);
}