@kelvininc/ui-components
Version:
Kelvin UI Components
113 lines (112 loc) • 3.52 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 --height-default: The height of the text area when is not focused.
* @prop --height-active: The height of the text are when is focused.
*/
--height-default: 36px;
--height-active: 100px;
}
.text-area-container {
display: flex;
gap: var(--kv-spacing-2x, 8px);
align-items: flex-start;
}
.text-area-container .left-icon {
margin-top: var(--kv-spacing-2x, 8px);
}
.text-area-container .text-area {
display: flex;
flex-direction: column;
flex: 1;
gap: var(--kv-spacing-2x, 8px);
}
.text-area-container .text-area::-webkit-scrollbar {
width: 15px;
height: 15px;
}
.text-area-container .text-area::-webkit-scrollbar-thumb {
border-radius: 10px;
background-color: var(--kv-neutral-6, #3f3f3f);
border: 4px solid transparent;
background-clip: content-box;
}
.text-area-container .text-area::-webkit-scrollbar-corner {
background-color: transparent;
}
.text-area-container .text-area .text-area-wrapper {
padding: var(--kv-spacing-2x, 8px) var(--kv-spacing-3x, 12px);
border: 1px solid var(--kv-neutral-7, #2a2a2a);
border-radius: 4px;
height: var(--height-default);
overflow: auto;
transition: height 0.25s ease-in-out;
}
.text-area-container .text-area .text-area-wrapper .input {
font-family: var(--kv-primary-font, "proxima-nova", sans-serif, "Arial");
font-size: 14px;
font-weight: 400;
font-stretch: normal;
font-style: normal;
line-height: 21px;
letter-spacing: normal;
text-transform: none;
outline: none;
height: inherit;
color: var(--kv-neutral-4, #bebebe);
overflow-wrap: anywhere;
}
.text-area-container .text-area .text-area-wrapper .input.placeholder::before {
content: attr(data-placeholder);
}
.text-area-container .text-area .text-area-wrapper:hover, .text-area-container .text-area .text-area-wrapper:has(.input:focus), .text-area-container .text-area .text-area-wrapper.has-text {
border: 1px solid var(--kv-neutral-6, #3f3f3f);
}
.text-area-container .text-area .text-area-wrapper:hover .input, .text-area-container .text-area .text-area-wrapper:has(.input:focus) .input, .text-area-container .text-area .text-area-wrapper.has-text .input {
color: var(--kv-neutral-2, #e5e5e5);
}
.text-area-container .text-area .text-area-wrapper:has(.input:focus), .text-area-container .text-area .text-area-wrapper.has-text {
height: var(--height-active);
}
.text-area-container .text-area .text-area-wrapper:hover:not(:has(.input:focus)) {
cursor: pointer;
}
.text-area-container .text-area:has(.input:focus) .character-counter {
display: block;
}
.text-area-container .text-area .character-counter {
font-family: var(--kv-primary-font, "proxima-nova", sans-serif, "Arial");
font-size: 12px;
font-weight: 400;
font-stretch: normal;
font-style: normal;
line-height: 18px;
letter-spacing: normal;
text-transform: none;
color: var(--kv-neutral-4, #bebebe);
margin-left: var(--kv-spacing-3x, 12px);
display: none;
}
.text-area-container.disabled .text-area .text-area-wrapper {
border-color: var(--kv-neutral-5, #707070);
}
.text-area-container.disabled .text-area .text-area-wrapper .input {
color: var(--kv-neutral-5, #707070);
}
.text-area-container.disabled .text-area .text-area-wrapper:hover:not(:has(.input:focus)) {
cursor: not-allowed;
}