Skip to content

Commit c345711

Browse files
committed
fix(datepicker): invalid icon overlap
1 parent 430b4bf commit c345711

File tree

4 files changed

+47
-32
lines changed

4 files changed

+47
-32
lines changed

components/datepicker/index.css

Lines changed: 14 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@ governing permissions and limitations under the License.
1313
.spectrum-DatePicker {
1414
--spectrum-datepicker-border-radius: var(--spectrum-corner-radius-100);
1515
--spectrum-datepicker-min-width: var(--spectrum-field-width);
16-
--spectrum-datepicker-initial-width: 128px; /* 160px */
1716
--spectrum-datepicker-initial-height: var(--spectrum-component-height-100); /* for express component-height-75 */
1817
--spectrum-datepicker-generic-padding: var(--spectrum-spacing-200); /* 12px; 15px; */
1918
--spectrum-datepicker-icon-size: 18px; /* 22px */
@@ -34,6 +33,9 @@ governing permissions and limitations under the License.
3433
--spectrum-datepicker-focus-line-gap: var(--spectrum-spacing-75);
3534

3635
--spectrum-datepicker-invalid-quiet-color: var(--spectrum-negative-border-color-default);
36+
--spectrum-datepicker-invalid-icon-to-button: 8px; /* 10 */
37+
--spectrum-datepicker-invalid-icon-to-button-quiet: 0;
38+
--spectrum-datepicker-invalid-text-to-icon: var(--spectrum-field-text-to-alert-icon-medium);
3739

3840
--spectrum-datepicker-quiet-border-color-hover: var(--spectrum-gray-500);
3941
--spectrum-datepicker-border-color-disabled: var(--spectrum-disabled-border-color);
@@ -88,6 +90,13 @@ governing permissions and limitations under the License.
8890
inset-inline-end: 0;
8991
}
9092

93+
/* positions invlaid icon to be left of picker button */
94+
.spectrum-PickerButton-icon {
95+
--datepicker-button-width: calc((var(--spectrum-field-edge-to-disclosure-icon-100) * 2) + var(--spectrum-icon-size-m));
96+
--mod-textfield-icon-spacing-inline-end-invalid: calc(var(--datepicker-button-width) + var(--spectrum-datepicker-invalid-icon-to-button));
97+
--mod-textfield-icon-spacing-inline-end-quiet-invalid: var(--spectrum-datepicker-button-width);
98+
}
99+
91100
.spectrum-DatePicker-input {
92101
/* todo: when we add t-shirt sizing, this will be wrong ❤️ */
93102
padding-inline-end: var(--mod-datepicker-input-padding-right, var(--spectrum-datepicker-input-padding-right));
@@ -194,8 +203,9 @@ governing permissions and limitations under the License.
194203
inline-size: var(--mod-datepicker-range-input-width-first, var(--spectrum-datepicker-range-input-width-first));
195204
}
196205
&.is-invalid {
197-
.spectrum-DatePicker-input {
198-
padding-inline-end: var(--mod-datepicker-generic-padding, var(--spectrum-datepicker-generic-padding));
206+
.spectrum-DatePicker-endField {
207+
padding-inline-end: calc(60px + var(--mod-datepicker-invalid-text-to-icon, var(--spectrum-datepicker-invalid-text-to-icon)));
208+
};
199209
}
200210
}
201211
}
@@ -217,7 +227,7 @@ governing permissions and limitations under the License.
217227
}
218228
}
219229

220-
/* Em dash */
230+
/* "-" between inputs */
221231
.spectrum-DatePicker-rangeDash {
222232
line-height: var(--mod-datepicker-range-dash-line-height, var(--spectrum-datepicker-range-dash-line-height));
223233
padding-block-start: var(--mod-datepicker-range-dash-padding-top, var(--spectrum-datepicker-range-dash-padding-top));
@@ -235,7 +245,6 @@ governing permissions and limitations under the License.
235245
inline-size: var(--mod-datepicker-dash-font-size, var(--spectrum-datepicker-dash-font-size));
236246
}
237247
}
238-
}
239248

240249
.spectrum-DatePicker--quiet {
241250
.spectrum-DatePicker-button {
Lines changed: 32 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,32 @@
1-
| Modifiable Custom Properties |
2-
| --------------------------------------------------- |
3-
| `--mod-combobox-quiet-fieldbutton-border-radius` |
4-
| `--mod-datepicker-border-color-disabled` |
5-
| `--mod-datepicker-border-radius` |
6-
| `--mod-datepicker-dash-color-disabled` |
7-
| `--mod-datepicker-dash-font-size` |
8-
| `--mod-datepicker-datetime-quiet-input-width` |
9-
| `--mod-datepicker-datetime-quiet-input-width-first` |
10-
| `--mod-datepicker-generic-padding` |
11-
| `--mod-datepicker-icon-to-text-right` |
12-
| `--mod-datepicker-input-padding-right` |
13-
| `--mod-datepicker-input-width` |
14-
| `--mod-datepicker-input-width-quiet` |
15-
| `--mod-datepicker-invalid-quiet-color` |
16-
| `--mod-datepicker-min-width` |
17-
| `--mod-datepicker-quiet-border-color-hover` |
18-
| `--mod-datepicker-range-dash-line-height` |
19-
| `--mod-datepicker-range-dash-margin-left` |
20-
| `--mod-datepicker-range-dash-padding-top` |
21-
| `--mod-datepicker-range-input-width-first` |
1+
| Modifiable Custom Properties |
2+
| ------------------------------------------------------- |
3+
| `--mod-combobox-quiet-fieldbutton-border-radius` |
4+
| `--mod-datepicker-border-color-disabled` |
5+
| `--mod-datepicker-border-radius` |
6+
| `--mod-datepicker-dash-color-disabled` |
7+
| `--mod-datepicker-dash-font-size` |
8+
| `--mod-datepicker-datetime-input-width` |
9+
| `--mod-datepicker-datetime-input-width-first` |
10+
| `--mod-datepicker-datetime-quiet-input-width` |
11+
| `--mod-datepicker-datetime-quiet-input-width-first` |
12+
| `--mod-datepicker-focus-animation` |
13+
| `--mod-datepicker-focus-line-gap` |
14+
| `--mod-datepicker-focus-ring-color` |
15+
| `--mod-datepicker-focus-ring-gap` |
16+
| `--mod-datepicker-focus-ring-width` |
17+
| `--mod-datepicker-generic-padding` |
18+
| `--mod-datepicker-icon-to-text-right` |
19+
| `--mod-datepicker-input-padding-right` |
20+
| `--mod-datepicker-input-width` |
21+
| `--mod-datepicker-input-width-quiet` |
22+
| `--mod-datepicker-invalid-quiet-color` |
23+
| `--mod-datepicker-invalid-text-to-icon` |
24+
| `--mod-datepicker-min-width` |
25+
| `--mod-datepicker-quiet-border-color-hover` |
26+
| `--mod-datepicker-range-dash-line-height` |
27+
| `--mod-datepicker-range-dash-margin-left` |
28+
| `--mod-datepicker-range-dash-padding-top` |
29+
| `--mod-datepicker-range-input-width-first` |
30+
| `--mod-datepicker-range-input-width-quiet-first` |
31+
| `--mod-textfield-icon-spacing-inline-end-invalid` |
32+
| `--mod-textfield-icon-spacing-inline-end-quiet-invalid` |

components/datepicker/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@
2626
"@spectrum-css/component-builder-simple": "^2.0.17",
2727
"@spectrum-css/icon": "^4.0.2",
2828
"@spectrum-css/menu": "^4.0.50",
29-
"@spectrum-css/pickerbutton": "^3.0.34",
29+
"@spectrum-css/pickerbutton": "^4.0.14",
3030
"@spectrum-css/popover": "^6.0.76",
3131
"@spectrum-css/textfield": "^6.0.22",
3232
"@spectrum-css/tokens": "^11.3.3",

yarn.lock

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2540,11 +2540,6 @@
25402540
resolved "https://registry.yarnpkg.com/@spectrum-css/menu/-/menu-4.0.50.tgz#d72467542b0cab858062c6fd5cb2950e8bbb0bc4"
25412541
integrity sha512-CBg8mUe4BFR0pKsMLWkAQW9/7tOp1V9QQkQzc8ZnT3Ayz5uFGy9saEErN5mSWxf2+22Ab5UftMU2uzgFo762eA==
25422542

2543-
"@spectrum-css/pickerbutton@^3.0.34":
2544-
version "3.0.34"
2545-
resolved "https://registry.yarnpkg.com/@spectrum-css/pickerbutton/-/pickerbutton-3.0.34.tgz#987c639a281f0a54e72695cf38127faa60b9fcce"
2546-
integrity sha512-D8cfc9nvGNiLlY/y6TsgyZpj6zdGMh2ENUQi846DYS6ONRtDh9M2xoigpRcbIXc6Cm8kgCiZcTFsk07B/TT+pg==
2547-
25482543
"@spectrum-css/tokens@^10.1.2":
25492544
version "10.2.2"
25502545
resolved "https://registry.yarnpkg.com/@spectrum-css/tokens/-/tokens-10.2.2.tgz#461697381575446542bbce8ae6d8ea948195ab3f"

0 commit comments

Comments
 (0)