|
1 | 1 | /*!
|
2 |
| - * Copyright 2024 Adobe. All rights reserved. |
| 2 | + * Copyright 2025 Adobe. All rights reserved. |
3 | 3 | *
|
4 | 4 | * This file is licensed to you under the Apache License, Version 2.0 (the "License");
|
5 | 5 | * you may not use this file except in compliance with the License. You may obtain a copy
|
|
12 | 12 | */
|
13 | 13 |
|
14 | 14 | .spectrum-Search {
|
| 15 | + /* Background / Border */ |
| 16 | + /* stylelint-disable spectrum-tools/no-unused-custom-properties -- used to assign Textfield mods */ |
15 | 17 | --spectrum-search-background-color: var(--spectrum-gray-25);
|
| 18 | + --spectrum-search-border-color-default: var(--spectrum-gray-300); |
| 19 | + --spectrum-search-border-color-hover: var(--spectrum-gray-400); |
| 20 | + --spectrum-search-border-color-focus: var(--spectrum-gray-800); |
| 21 | + --spectrum-search-border-color-focus-hover: var(--spectrum-gray-900); |
| 22 | + --spectrum-search-border-color-key-focus: var(--spectrum-gray-800); |
| 23 | + --spectrum-search-border-width: var(--spectrum-border-width-200); |
| 24 | + --spectrum-search-border-radius: var(--spectrum-corner-radius-full); |
| 25 | + /* stylelint-enable spectrum-tools/no-unused-custom-properties */ |
16 | 26 |
|
17 | 27 | /* Size / Spacing */
|
18 | 28 | --spectrum-search-inline-size: var(--spectrum-field-width);
|
|
25 | 35 | --spectrum-search-to-help-text: var(--spectrum-help-text-to-component);
|
26 | 36 | --spectrum-search-top-to-text: var(--spectrum-component-top-to-text-100);
|
27 | 37 | --spectrum-search-bottom-to-text: var(--spectrum-component-bottom-to-text-100);
|
28 |
| - --spectrum-search-border-radius: var(--spectrum-corner-radius-100); |
29 |
| - --spectrum-search-edge-to-visual: var(--spectrum-component-edge-to-visual-100); |
| 38 | + --spectrum-search-edge-to-visual: var(--spectrum-component-pill-edge-to-visual-100); |
| 39 | + --spectrum-search-top-to-icon: var(--spectrum-component-top-to-workflow-icon-100); |
30 | 40 |
|
31 | 41 | /* Focus Indicator */
|
| 42 | + /* stylelint-disable spectrum-tools/no-unused-custom-properties -- used to assign Textfield mods */ |
32 | 43 | --spectrum-search-focus-indicator-thickness: var(--spectrum-focus-indicator-thickness);
|
33 | 44 | --spectrum-search-focus-indicator-gap: var(--spectrum-focus-indicator-gap);
|
34 | 45 | --spectrum-search-focus-indicator-color: var(--spectrum-focus-indicator-color);
|
| 46 | + /* stylelint-enable spectrum-tools/no-unused-custom-properties */ |
35 | 47 |
|
36 | 48 | /* Font / Color */
|
| 49 | + /* stylelint-disable-next-line spectrum-tools/no-unused-custom-properties -- used to assign Textfield mods */ |
37 | 50 | --spectrum-search-font-family: var(--spectrum-sans-font-family-stack);
|
| 51 | + /* stylelint-disable-next-line spectrum-tools/no-unused-custom-properties -- used to assign Textfield mods */ |
38 | 52 | --spectrum-search-font-weight: var(--spectrum-regular-font-weight);
|
39 | 53 | --spectrum-search-font-style: var(--spectrum-default-font-style);
|
40 | 54 | --spectrum-search-line-height: var(--spectrum-line-height-100);
|
41 |
| - |
42 | 55 | --spectrum-search-color-default: var(--spectrum-neutral-content-color-default);
|
43 | 56 | --spectrum-search-color-hover: var(--spectrum-neutral-content-color-hover);
|
44 | 57 | --spectrum-search-color-focus: var(--spectrum-neutral-content-color-focus);
|
45 | 58 | --spectrum-search-color-focus-hover: var(--spectrum-neutral-content-color-focus-hover);
|
46 | 59 | --spectrum-search-color-key-focus: var(--spectrum-neutral-content-color-key-focus);
|
47 | 60 |
|
48 |
| - --spectrum-search-border-color-default: var(--spectrum-gray-500); |
49 |
| - --spectrum-search-border-color-hover: var(--spectrum-gray-600); |
50 |
| - --spectrum-search-border-color-focus: var(--spectrum-gray-800); |
51 |
| - --spectrum-search-border-color-focus-hover: var(--spectrum-gray-900); |
52 |
| - --spectrum-search-border-color-key-focus: var(--spectrum-gray-900); |
53 |
| - |
54 |
| - /* Background and Border */ |
55 |
| - --spectrum-search-border-width: var(--spectrum-border-width-100); |
56 |
| - |
57 | 61 | /* Disabled */
|
58 | 62 | --spectrum-search-color-disabled: var(--spectrum-disabled-content-color);
|
59 | 63 |
|
60 |
| - /* @passthrough start -- settings for nested Textfield component */ |
| 64 | + /* stylelint-disable-next-line spectrum-tools/no-unused-custom-properties -- used to assign Textfield mods */ |
| 65 | + --spectrum-search-background-color-disabled: var(--spectrum-gray-25); |
| 66 | + /* stylelint-disable-next-line spectrum-tools/no-unused-custom-properties -- used to assign Textfield mods */ |
| 67 | + --spectrum-search-border-color-disabled: var(--spectrum-disabled-border-color); |
| 68 | + |
| 69 | + &:lang(ja), |
| 70 | + &:lang(zh), |
| 71 | + &:lang(ko) { |
| 72 | + --spectrum-search-line-height: var(--spectrum-cjk-line-height-100); |
| 73 | + } |
| 74 | + |
| 75 | + /* /* @passthrough start: nested Textfield component. */ |
61 | 76 | --mod-textfield-font-family: var(--mod-search-font-family, var(--spectrum-search-font-family));
|
62 | 77 | --mod-textfield-font-weight: var(--mod-search-font-weight, var(--spectrum-search-font-weight));
|
| 78 | + --mod-textfield-placeholder-font-size: var(--spectrum-font-size-100); |
63 | 79 |
|
64 | 80 | --mod-textfield-corner-radius: var(--mod-search-border-radius, var(--spectrum-search-border-radius));
|
65 | 81 | --mod-textfield-border-width: var(--mod-search-border-width, var(--spectrum-search-border-width));
|
|
85 | 101 | --mod-textfield-background-color: var(--mod-search-background-color, var(--spectrum-search-background-color));
|
86 | 102 | --mod-textfield-background-color-disabled: var(--mod-search-background-color-disabled, var(--spectrum-search-background-color-disabled));
|
87 | 103 | /* @passthrough end */
|
88 |
| - |
89 |
| - display: inline-block; |
90 |
| - position: relative; |
91 |
| - inline-size: var(--mod-search-inline-size, var(--spectrum-search-inline-size)); |
92 |
| - min-inline-size: var(--mod-search-min-inline-size, var(--spectrum-search-min-inline-size)); |
93 |
| - |
94 |
| - .spectrum-HelpText { |
95 |
| - margin-block-start: var(--mod-search-to-help-text, var(--spectrum-search-to-help-text)); |
96 |
| - } |
97 | 104 | }
|
98 | 105 |
|
99 | 106 | .spectrum-Search--sizeS {
|
100 | 107 | --spectrum-search-block-size: var(--spectrum-component-height-75);
|
101 | 108 | --spectrum-search-icon-size: var(--spectrum-workflow-icon-size-75);
|
102 | 109 | --spectrum-search-text-to-icon: var(--spectrum-text-to-visual-75);
|
103 |
| - --spectrum-search-edge-to-visual: var(--spectrum-component-edge-to-visual-75); |
| 110 | + --spectrum-search-edge-to-visual: var(--spectrum-component-pill-edge-to-visual-75); |
| 111 | + --spectrum-search-top-to-icon: var(--spectrum-component-top-to-workflow-icon-75); |
| 112 | + --spectrum-search-top-to-text: var(--spectrum-component-top-to-text-75); |
| 113 | + --spectrum-search-bottom-to-text: var(--spectrum-component-bottom-to-text-75); |
| 114 | + |
| 115 | + --mod-textfield-placeholder-font-size: var(--spectrum-font-size-75); |
104 | 116 | }
|
105 | 117 |
|
106 | 118 | .spectrum-Search--sizeL {
|
107 | 119 | --spectrum-search-block-size: var(--spectrum-component-height-200);
|
108 | 120 | --spectrum-search-icon-size: var(--spectrum-workflow-icon-size-200);
|
109 | 121 | --spectrum-search-text-to-icon: var(--spectrum-text-to-visual-200);
|
110 |
| - --spectrum-search-edge-to-visual: var(--spectrum-component-edge-to-visual-200); |
| 122 | + --spectrum-search-edge-to-visual: var(--spectrum-component-pill-edge-to-visual-200); |
| 123 | + --spectrum-search-top-to-icon: var(--spectrum-component-top-to-workflow-icon-200); |
| 124 | + --spectrum-search-top-to-text: var(--spectrum-component-top-to-text-200); |
| 125 | + --spectrum-search-bottom-to-text: var(--spectrum-component-bottom-to-text-200); |
| 126 | + |
| 127 | + --mod-textfield-placeholder-font-size: var(--spectrum-font-size-200); |
111 | 128 | }
|
112 | 129 |
|
113 | 130 | .spectrum-Search--sizeXL {
|
114 | 131 | --spectrum-search-block-size: var(--spectrum-component-height-300);
|
115 | 132 | --spectrum-search-icon-size: var(--spectrum-workflow-icon-size-300);
|
116 | 133 | --spectrum-search-text-to-icon: var(--spectrum-text-to-visual-300);
|
117 |
| - --spectrum-search-edge-to-visual: var(--spectrum-component-edge-to-visual-300); |
| 134 | + --spectrum-search-edge-to-visual: var(--spectrum-component-pill-edge-to-visual-300); |
| 135 | + --spectrum-search-top-to-icon: var(--spectrum-component-top-to-workflow-icon-300); |
| 136 | + --spectrum-search-top-to-text: var(--spectrum-component-top-to-text-300); |
| 137 | + --spectrum-search-bottom-to-text: var(--spectrum-component-bottom-to-text-300); |
| 138 | + |
| 139 | + --mod-textfield-placeholder-font-size: var(--spectrum-font-size-300); |
118 | 140 | }
|
119 | 141 |
|
120 |
| -@media (forced-colors: active) { |
121 |
| - .spectrum-Search .spectrum-Search-textfield, |
122 |
| - .spectrum-Search .spectrum-Search-textfield .spectrum-Search-input { |
123 |
| - --highcontrast-search-color-default: CanvasText; |
124 |
| - --highcontrast-search-color-hover: CanvasText; |
125 |
| - --highcontrast-search-color-focus: CanvasText; |
126 |
| - --highcontrast-search-color-disabled: GrayText; |
127 |
| - } |
| 142 | +/* Standard / Default */ |
| 143 | +.spectrum-Search { |
| 144 | + display: inline-block; |
| 145 | + position: relative; |
| 146 | + inline-size: var(--mod-search-inline-size, var(--spectrum-search-inline-size)); |
| 147 | + min-inline-size: var(--mod-search-min-inline-size, var(--spectrum-search-min-inline-size)); |
128 | 148 |
|
129 |
| - .spectrum-Search .spectrum-Search-clearButton { |
130 |
| - .spectrum-ClearButton-fill { |
131 |
| - /* Avoid button background color overlapping on border. */ |
132 |
| - forced-color-adjust: none; |
133 |
| - background-color: transparent; |
134 |
| - } |
| 149 | + .spectrum-HelpText { |
| 150 | + margin-block-start: var(--mod-search-to-help-text, var(--spectrum-search-to-help-text)); |
135 | 151 | }
|
136 | 152 | }
|
137 | 153 |
|
|
160 | 176 | display: block;
|
161 | 177 | position: absolute;
|
162 | 178 | inset-block: 0;
|
163 |
| - margin-block: auto; |
| 179 | + inset-inline-start: var(--mod-search-edge-to-visual, var(--spectrum-search-edge-to-visual)); |
| 180 | + margin-block-start: var(--mod-search-top-to-icon, var(--spectrum-search-top-to-icon)); |
164 | 181 | color: var(--spectrum-search-color);
|
165 | 182 |
|
166 | 183 | .spectrum-Search-textfield:hover & {
|
|
193 | 210 | block-size: var(--mod-search-block-size, var(--spectrum-search-block-size));
|
194 | 211 | padding-block-start: calc(var(--mod-search-top-to-text, var(--spectrum-search-top-to-text)) - var(--mod-search-border-width, var(--spectrum-search-border-width)));
|
195 | 212 | padding-block-end: calc(var(--mod-search-bottom-to-text, var(--spectrum-search-bottom-to-text)) - var(--mod-search-border-width, var(--spectrum-search-border-width)));
|
| 213 | + padding-inline-start: calc(var(--mod-search-edge-to-visual, var(--spectrum-search-edge-to-visual)) - var(--mod-search-border-width, var(--spectrum-search-border-width)) + var(--mod-search-icon-size, var(--spectrum-search-icon-size)) + var(--mod-search-text-to-icon, var(--spectrum-search-text-to-icon))); |
| 214 | + padding-inline-end: calc(var(--mod-search-button-inline-size, var(--spectrum-search-button-inline-size)) - var(--mod-search-border-width, var(--spectrum-search-border-width))); |
196 | 215 |
|
197 | 216 | font-style: var(--mod-search-font-style, var(--spectrum-search-font-style));
|
198 | 217 | line-height: var(--mod-search-line-height, var(--spectrum-search-line-height));
|
|
204 | 223 | }
|
205 | 224 | }
|
206 | 225 |
|
207 |
| -/* Standard / Default Only */ |
208 |
| -.spectrum-Search:not(.spectrum-Search--quiet) { |
209 |
| - .spectrum-Search-icon { |
210 |
| - inset-inline-start: var(--mod-search-edge-to-visual, var(--spectrum-search-edge-to-visual)); |
211 |
| - } |
212 |
| - |
213 |
| - .spectrum-Search-input { |
214 |
| - padding-inline-start: calc(var(--mod-search-edge-to-visual, var(--spectrum-search-edge-to-visual)) - var(--mod-search-border-width, var(--spectrum-search-border-width)) + var(--mod-search-icon-size, var(--spectrum-search-icon-size)) + var(--mod-search-text-to-icon, var(--spectrum-search-text-to-icon))); |
215 |
| - padding-inline-end: var(--mod-search-button-inline-size, var(--spectrum-search-button-inline-size)); |
| 226 | +@media (forced-colors: active) { |
| 227 | + .spectrum-Search .spectrum-Search-textfield, |
| 228 | + .spectrum-Search .spectrum-Search-textfield .spectrum-Search-input { |
| 229 | + --highcontrast-search-color-default: CanvasText; |
| 230 | + --highcontrast-search-color-hover: CanvasText; |
| 231 | + --highcontrast-search-color-focus: CanvasText; |
| 232 | + --highcontrast-search-color-disabled: GrayText; |
216 | 233 | }
|
217 |
| -} |
218 |
| - |
219 |
| -/* Quiet Variant */ |
220 |
| -.spectrum-Search--quiet { |
221 |
| - --spectrum-search-background-color: transparent; |
222 |
| - --spectrum-search-background-color-disabled: transparent; |
223 |
| - --spectrum-search-border-color-disabled: var(--spectrum-disabled-border-color); |
224 | 234 |
|
225 |
| - /* Added specificity, otherwise they are overridden by system specific themes. */ |
226 |
| - --mod-search-border-radius: 0; |
227 |
| - --mod-search-edge-to-visual: var(--spectrum-field-edge-to-visual-quiet); |
228 |
| - |
229 |
| - .spectrum-Search-input { |
230 |
| - border-radius: var(--mod-search-border-radius, var(--spectrum-search-border-radius)); |
231 |
| - padding-inline-start: calc(var(--mod-search-edge-to-visual, var(--spectrum-search-edge-to-visual)) + var(--mod-search-icon-size, var(--spectrum-search-icon-size)) + var(--mod-search-text-to-icon, var(--spectrum-search-text-to-icon))); |
232 |
| - padding-inline-end: var(--mod-search-button-inline-size, var(--spectrum-search-button-inline-size)); |
233 |
| - padding-block-start: var(--mod-search-top-to-text, var(--spectrum-search-top-to-text)); |
| 235 | + .spectrum-Search .spectrum-Search-clearButton { |
| 236 | + .spectrum-ClearButton-fill { |
| 237 | + /* Avoid button background color overlapping on border. */ |
| 238 | + forced-color-adjust: none; |
| 239 | + background-color: transparent; |
| 240 | + } |
234 | 241 | }
|
235 | 242 | }
|
0 commit comments