pico/scss/forms/_input-search.scss

59 lines
1.8 KiB
SCSS
Raw Normal View History

2022-10-23 10:47:50 +07:00
@use "sass:map";
2022-10-22 13:11:51 +07:00
@use "../settings" as *;
2022-10-22 11:44:10 +07:00
2022-10-23 10:47:50 +07:00
@if map.get($modules, "forms/input-search") {
/**
* Input type search
*/
// :not() are needed to add Specificity and avoid !important on padding
2024-01-25 01:42:54 +07:00
#{$parent-selector} input:not([type="checkbox"], [type="radio"], [type="range"], [type="file"]) {
2022-10-23 10:47:50 +07:00
&[type="search"] {
2023-12-28 13:21:52 +07:00
padding-inline-start: calc(var(#{$css-var-prefix}form-element-spacing-horizontal) + 1.75rem);
background-image: var(#{$css-var-prefix}icon-search);
2024-02-12 14:25:06 +01:00
background-position: center left calc(var(#{$css-var-prefix}form-element-spacing-horizontal) + .125rem);
2022-10-23 10:47:50 +07:00
background-size: 1rem auto;
background-repeat: no-repeat;
&[aria-invalid] {
@if $enable-important {
padding-inline-start: calc(
2023-12-28 13:21:52 +07:00
var(#{$css-var-prefix}form-element-spacing-horizontal) + 1.75rem
2022-10-23 10:47:50 +07:00
) !important;
} @else {
2023-12-28 13:21:52 +07:00
padding-inline-start: calc(
var(#{$css-var-prefix}form-element-spacing-horizontal) + 1.75rem
);
2022-10-23 10:47:50 +07:00
}
2023-12-24 10:41:54 +07:00
background-position:
center left 1.125rem,
center right 0.75rem;
2022-10-22 11:44:10 +07:00
}
2022-10-23 10:47:50 +07:00
&[aria-invalid="false"] {
2023-12-28 13:21:52 +07:00
background-image: var(#{$css-var-prefix}icon-search), var(#{$css-var-prefix}icon-valid);
2022-10-23 10:47:50 +07:00
}
2022-10-22 11:44:10 +07:00
2022-10-23 10:47:50 +07:00
&[aria-invalid="true"] {
2023-12-28 13:21:52 +07:00
background-image: var(#{$css-var-prefix}icon-search), var(#{$css-var-prefix}icon-invalid);
2022-10-23 10:47:50 +07:00
}
2022-10-22 11:44:10 +07:00
}
}
2022-10-23 10:47:50 +07:00
[dir="rtl"] {
2024-01-25 01:42:54 +07:00
#{$parent-selector} :where(input) {
2022-10-23 10:47:50 +07:00
&:not([type="checkbox"], [type="radio"], [type="range"], [type="file"]) {
&[type="search"] {
background-position: center right 1.125rem;
2022-10-22 11:44:10 +07:00
2022-10-23 10:47:50 +07:00
&[aria-invalid] {
2023-12-24 10:41:54 +07:00
background-position:
center right 1.125rem,
center left 0.75rem;
2022-10-23 10:47:50 +07:00
}
2022-10-22 11:44:10 +07:00
}
}
}
}
}