@streamscloud/kit 0.9.8 → 0.9.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -240,7 +240,7 @@ or the clear button (see `HandleInput`'s availability pill).
240
240
  --sc-kit--input--font-size: var(--sc-kit--font-size--lg);
241
241
  --sc-kit--input--icon--size: var(--sc-kit--field--icon--size--lg);
242
242
  }
243
- .input:where(:hover) {
243
+ .input:where(:hover:not(:focus-within)) {
244
244
  --sc-kit--input--border-color: var(--_in--border-color-hover);
245
245
  }
246
246
  .input:where(:focus-within) {
@@ -57,7 +57,7 @@ Renders as `<a>` when `href` is set, `<button>` otherwise. Active state is consu
57
57
  | Property | Description | Default |
58
58
  |---|---|---|
59
59
  | `--sc-kit--nav-menu-item--gap` | Gap between icon and label | `18px` |
60
- | `--sc-kit--nav-menu-item--icon-size` | Icon box size | `20px` |
60
+ | `--sc-kit--nav-menu-item--icon-size` | Icon size (box + glyph) | `18px` |
61
61
  | `--sc-kit--nav-menu-item--radius` | Row radius | `--sc-kit--radius--sm` |
62
62
  | `--sc-kit--nav-menu-item--color` | Idle text/icon color | `--sc-kit--color--text--secondary` |
63
63
  | `--sc-kit--nav-menu-item--color--active` | Active / hover text color | `--sc-kit--color--text--primary` |
@@ -69,7 +69,7 @@ Renders as `<a>` when `href` is set, `<button>` otherwise. Active state is consu
69
69
  -->
70
70
  <style>.nav-menu-item {
71
71
  --_nav-menu-item--gap: var(--sc-kit--nav-menu-item--gap, 1.125rem);
72
- --_nav-menu-item--icon-size: var(--sc-kit--nav-menu-item--icon-size, 1.25rem);
72
+ --_nav-menu-item--icon-size: var(--sc-kit--nav-menu-item--icon-size, 1.125rem);
73
73
  --_nav-menu-item--radius: var(--sc-kit--nav-menu-item--radius, var(--sc-kit--radius--sm));
74
74
  --_nav-menu-item--color: var(--sc-kit--nav-menu-item--color, var(--sc-kit--color--text--secondary));
75
75
  --_nav-menu-item--color-active: var(--sc-kit--nav-menu-item--color--active, var(--sc-kit--color--text--primary));
@@ -112,6 +112,7 @@ Renders as `<a>` when `href` is set, `<button>` otherwise. Active state is consu
112
112
  }
113
113
 
114
114
  .nav-menu-item__icon {
115
+ --sc-kit--icon--size: var(--_nav-menu-item--icon-size);
115
116
  position: relative;
116
117
  display: inline-flex;
117
118
  align-items: center;
@@ -121,11 +122,6 @@ Renders as `<a>` when `href` is set, `<button>` otherwise. Active state is consu
121
122
  height: var(--_nav-menu-item--icon-size);
122
123
  line-height: 0;
123
124
  }
124
- .nav-menu-item__icon :global(svg) {
125
- width: 100%;
126
- height: 100%;
127
- fill: currentColor;
128
- }
129
125
 
130
126
  .nav-menu-item__badge {
131
127
  position: absolute;
@@ -28,7 +28,7 @@ type Props = {
28
28
  * | Property | Description | Default |
29
29
  * |---|---|---|
30
30
  * | `--sc-kit--nav-menu-item--gap` | Gap between icon and label | `18px` |
31
- * | `--sc-kit--nav-menu-item--icon-size` | Icon box size | `20px` |
31
+ * | `--sc-kit--nav-menu-item--icon-size` | Icon size (box + glyph) | `18px` |
32
32
  * | `--sc-kit--nav-menu-item--radius` | Row radius | `--sc-kit--radius--sm` |
33
33
  * | `--sc-kit--nav-menu-item--color` | Idle text/icon color | `--sc-kit--color--text--secondary` |
34
34
  * | `--sc-kit--nav-menu-item--color--active` | Active / hover text color | `--sc-kit--color--text--primary` |
@@ -50,7 +50,7 @@ CSS variables (settable on the parent rail or any ancestor).
50
50
  | Property | Description | Default |
51
51
  |---|---|---|
52
52
  | `--sc-kit--nav-rail--item-width` | Tile width | `58px` |
53
- | `--sc-kit--nav-rail--item-icon-size` | Icon box size | `24px` |
53
+ | `--sc-kit--nav-rail--item-icon-size` | Icon size (box + glyph) | `24px` |
54
54
  | `--sc-kit--nav-rail--item-label-size` | Label font size | `10px` |
55
55
  | `--sc-kit--nav-rail--item-radius` | Tile radius | `--sc-kit--radius--sm` |
56
56
  | `--sc-kit--nav-rail--item-color` | Idle text/icon color | `--sc-kit--color--text--secondary` |
@@ -98,6 +98,7 @@ CSS variables (settable on the parent rail or any ancestor).
98
98
  }
99
99
 
100
100
  .nav-rail-item__icon {
101
+ --sc-kit--icon--size: var(--_nav-rail--item-icon-size);
101
102
  display: inline-flex;
102
103
  align-items: center;
103
104
  justify-content: center;
@@ -105,11 +106,6 @@ CSS variables (settable on the parent rail or any ancestor).
105
106
  height: var(--_nav-rail--item-icon-size);
106
107
  line-height: 0;
107
108
  }
108
- .nav-rail-item__icon :global(svg) {
109
- width: 100%;
110
- height: 100%;
111
- fill: currentColor;
112
- }
113
109
 
114
110
  .nav-rail-item__label {
115
111
  font-size: var(--_nav-rail--item-label-size);
@@ -26,7 +26,7 @@ type Props = {
26
26
  * | Property | Description | Default |
27
27
  * |---|---|---|
28
28
  * | `--sc-kit--nav-rail--item-width` | Tile width | `58px` |
29
- * | `--sc-kit--nav-rail--item-icon-size` | Icon box size | `24px` |
29
+ * | `--sc-kit--nav-rail--item-icon-size` | Icon size (box + glyph) | `24px` |
30
30
  * | `--sc-kit--nav-rail--item-label-size` | Label font size | `10px` |
31
31
  * | `--sc-kit--nav-rail--item-radius` | Tile radius | `--sc-kit--radius--sm` |
32
32
  * | `--sc-kit--nav-rail--item-color` | Idle text/icon color | `--sc-kit--color--text--secondary` |
@@ -266,7 +266,7 @@ requires a non-null value. CSS API mirrors `Input` for visual-language compatibi
266
266
  --sc-kit--numeral-input--font-size: var(--sc-kit--font-size--lg);
267
267
  --sc-kit--numeral-input--icon--size: var(--sc-kit--field--icon--size--lg);
268
268
  }
269
- .numeral-input:where(:hover) {
269
+ .numeral-input:where(:hover:not(:focus-within)) {
270
270
  --sc-kit--numeral-input--border-color: var(--_ni--border-color-hover);
271
271
  }
272
272
  .numeral-input:where(:focus-within) {
@@ -224,7 +224,7 @@ body, or an external host element addressed by `options.fixedToolbarId`). Impera
224
224
  .rich-text-input--lg {
225
225
  --sc-kit--rich-text-input--root--font-size: 1rem;
226
226
  }
227
- .rich-text-input:where(:hover) {
227
+ .rich-text-input:where(:hover:not(:focus-within)) {
228
228
  --sc-kit--rich-text-input--border-color: var(--_rti--border-color-hover);
229
229
  }
230
230
  .rich-text-input:where(:focus-within) {
@@ -63,13 +63,18 @@
63
63
  --sc-kit--select--trigger--icon--size: var(--sc-kit--field--icon--size--lg);
64
64
  }
65
65
 
66
- &:where(:hover) {
66
+ &:where(:hover:not(:focus-within)) {
67
67
  --sc-kit--select--trigger--border-color: var(--_sel--border-color-hover);
68
68
  }
69
69
  &:where(:focus-within),
70
70
  &--open {
71
71
  --sc-kit--select--trigger--underline-color: var(--sc-kit--color--accent);
72
72
  }
73
+ // Popover portals focus away — :focus-within won't suppress the hover border while open.
74
+ // --error must stay after this block: it wins border-color by source order even while open.
75
+ &--open {
76
+ --sc-kit--select--trigger--border-color: unset;
77
+ }
73
78
 
74
79
  &--error {
75
80
  --sc-kit--select--trigger--border-color: var(--_sel--border-color-error);
@@ -234,12 +234,15 @@ background--hover}`.
234
234
  --sc-kit--select--trigger--font-size: var(--sc-kit--font-size--lg);
235
235
  --sc-kit--select--trigger--icon--size: var(--sc-kit--field--icon--size--lg);
236
236
  }
237
- .singleselect:where(:hover) {
237
+ .singleselect:where(:hover:not(:focus-within)) {
238
238
  --sc-kit--select--trigger--border-color: var(--_sel--border-color-hover);
239
239
  }
240
240
  .singleselect:where(:focus-within), .singleselect--open {
241
241
  --sc-kit--select--trigger--underline-color: var(--sc-kit--color--accent);
242
242
  }
243
+ .singleselect--open {
244
+ --sc-kit--select--trigger--border-color: unset;
245
+ }
243
246
  .singleselect--error {
244
247
  --sc-kit--select--trigger--border-color: var(--_sel--border-color-error);
245
248
  --sc-kit--select--trigger--underline-color: var(--sc-kit--color--danger);
@@ -449,12 +449,15 @@ padding-inline, font-size, gap, max-width, remove-color, remove-color--hover}`.
449
449
  --sc-kit--select--trigger--font-size: var(--sc-kit--font-size--lg);
450
450
  --sc-kit--select--trigger--icon--size: var(--sc-kit--field--icon--size--lg);
451
451
  }
452
- .multiselect-trigger:where(:hover) {
452
+ .multiselect-trigger:where(:hover:not(:focus-within)) {
453
453
  --sc-kit--select--trigger--border-color: var(--_sel--border-color-hover);
454
454
  }
455
455
  .multiselect-trigger:where(:focus-within), .multiselect-trigger--open {
456
456
  --sc-kit--select--trigger--underline-color: var(--sc-kit--color--accent);
457
457
  }
458
+ .multiselect-trigger--open {
459
+ --sc-kit--select--trigger--border-color: unset;
460
+ }
458
461
  .multiselect-trigger--error {
459
462
  --sc-kit--select--trigger--border-color: var(--_sel--border-color-error);
460
463
  --sc-kit--select--trigger--underline-color: var(--sc-kit--color--danger);
@@ -204,7 +204,7 @@ exposed via `bind:this`.
204
204
  --sc-kit--textarea--padding-inline: var(--sc-kit--field--padding-inline--lg);
205
205
  --sc-kit--textarea--font-size: var(--sc-kit--font-size--lg);
206
206
  }
207
- .textarea:where(:hover) {
207
+ .textarea:where(:hover:not(:focus-within)) {
208
208
  --sc-kit--textarea--border-color: var(--_ta--border-color-hover);
209
209
  }
210
210
  .textarea:where(:focus-within) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@streamscloud/kit",
3
- "version": "0.9.8",
3
+ "version": "0.9.10",
4
4
  "author": "StreamsCloud",
5
5
  "repository": {
6
6
  "type": "git",