Files
web/packages/design-system/lib/components/Input/input.module.css
Bianca Widstam 75ffd5d10b Merged in fix/SW-2188-disabled-state (pull request #2597)
fix(SW-2188): readonly for input fields

* fix(SW-2188): readonly for input fields


Approved-by: Anton Gunnarsson
2025-08-06 07:14:28 +00:00

68 lines
1.5 KiB
CSS

@value globals: "../../styles/globals.css";
@value inputContainerHeight, inputExpandedHeight from globals;
.container {
align-content: center;
background-color: var(--Surface-Primary-Default);
border: 1px solid var(--Border-Interactive-Default);
border-radius: var(--Corner-radius-md);
display: grid;
min-width: 0; /* allow shrinkage */
height: inputContainerHeight;
padding: 0 var(--Space-x15);
box-sizing: border-box;
cursor: text;
.container:has(.input:focus):not(:has(.input:disabled)),
.container:has(.input:focus):not(:has(.input:read-only)) {
outline-offset: -2px;
outline: 2px solid var(--Border-Interactive-Focus);
}
&:has(.input:disabled),
&:has(.input:read-only) {
background-color: var(--Surface-Primary-Disabled);
border: transparent;
cursor: unset;
}
&:has(.input[data-invalid='true'], .input[aria-invalid='true']) {
border-color: var(--Border-Interactive-Error);
&:focus-within {
outline-offset: -2px;
outline: 2px solid var(--Border-Interactive-Error);
}
}
}
.input {
background: none;
border: none;
color: var(--Text-Default);
height: 1px;
order: 2;
padding: 0;
transition: height 150ms ease;
&:focus,
&:placeholder-shown,
&[value]:not([value='']) {
height: inputExpandedHeight;
outline: none;
}
&:disabled,
&:read-only {
color: var(--Text-Interactive-Disabled);
cursor: unset;
}
}
@media (hover: hover) {
.input:active:not(:disabled) {
height: inputExpandedHeight;
outline: none;
}
}