srcdev-nuxt-components 9.6.17 → 9.6.18

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.
@@ -222,7 +222,7 @@ All tokens are read via `var(--token, default)` — see the full list in the com
222
222
  Defaults are for a **light** header (changed 2026-10-07): panels use `--page-bg`, borders and hover tints are `color-mix()`es of `--theme-text`, the overflow button is transparent with a `--theme-border-focus` hover outline. They used to assume a dark bar (`Canvas`, translucent white borders and tints). A dark header sets the tokens.
223
223
  | `--responsive-nav-decorator-indicator-color` / `--responsive-nav-decorator-hovered-*` | `currentColor` / inherits | The sliding active/hover indicator bar under the main nav. |
224
224
  | `--responsive-nav-decorator-indicator-offset` | `2px` | Distance of the active indicator below the active item's bottom edge; negative raises it. |
225
- | `--responsive-nav-decorator-indicator-height` / `--responsive-nav-decorator-hovered-border-radius` / `--responsive-nav-decorator-transition-duration` | `2px` / `4px` / `200ms` | Active indicator thickness, hover highlight radius, and how long both take to slide. |
225
+ | `--responsive-nav-decorator-indicator-height` / `--responsive-nav-decorator-hovered-border-radius` / `--responsive-nav-decorator-transition-duration` | `2px` / `4px` / `200ms` | Active indicator thickness, hover highlight radius, and how long both take to slide (they jump under `prefers-reduced-motion`; the chevron and overflow button don't animate their movement either). |
226
226
 
227
227
  ---
228
228
 
@@ -39,7 +39,7 @@ are documented alongside it since that's where they're consumed.
39
39
  | `--responsive-nav-decorator-hovered-bg` | `color-mix(in oklch, var(--theme-text) 8%, transparent)` | Hover highlight background behind the hovered item. |
40
40
  | `--responsive-nav-decorator-indicator-height` | `2px` | Thickness of the active indicator. |
41
41
  | `--responsive-nav-decorator-hovered-border-radius` | `4px` | Corner radius of the hover highlight. |
42
- | `--responsive-nav-decorator-transition-duration` | `200ms` | How long the active indicator and hover highlight take to slide between items. |
42
+ | `--responsive-nav-decorator-transition-duration` | `200ms` | How long the active indicator and hover highlight take to slide between items. Under `prefers-reduced-motion` they jump instead (the hover highlight still fades). |
43
43
 
44
44
  ### Overflow panel content (`NavigationItems`)
45
45
 
@@ -63,13 +63,17 @@ Link and dropdown text is never line-clamped: it names where the link goes. Long
63
63
  wrap inside the dropdown and overflow panels; in the top bar, an item too wide to fit moves to the
64
64
  overflow menu.
65
65
 
66
+ > **Changed 2026-10-20**: under `prefers-reduced-motion` the active indicator and hover highlight
67
+ > jump to the new item instead of sliding, the dropdown chevron flips without rotating, and the
68
+ > overflow button appears without animating its width. Opacity fades stay.
69
+ >
66
70
  > **Changed 2026-10-07**: the defaults assumed a dark bar: `Canvas` panel and button backgrounds,
67
71
  > translucent white borders (`#ffffff90`, `#efefef75`), a white button outline/hover outline and
68
72
  > white-tint hover highlights, all near-invisible on a light header. They now come from the
69
73
  > `--theme-*` slots and `--page-bg` (see the tables). A dark header sets these tokens. Also added
70
74
  > the `-link-color-hover` / `-link-color-active` tokens (top bar and overflow panel), which
71
75
  > TabNavigation had and ResponsiveHeader lacked.
72
-
76
+ >
73
77
  > **Changed 2026-10-05**: the dropdown and overflow panels had no maximum size, so a long child
74
78
  > name or a long child list ran off-screen. They are now capped by the max-size tokens above.
75
79
  > `--_overflow-drop-down-width`, a private token nothing ever set, is gone (`min-width: fit-content`
@@ -914,6 +914,10 @@ watch(
914
914
  height: var(--responsive-header-link-icon-size, 1.35em);
915
915
  transform: var(--_icon-transform);
916
916
  transition: transform 0.2s ease-in-out;
917
+
918
+ @media (prefers-reduced-motion: reduce) {
919
+ transition: none;
920
+ }
917
921
  }
918
922
  }
919
923
 
@@ -1062,6 +1066,12 @@ watch(
1062
1066
 
1063
1067
  transition: all 0.2s ease-in-out;
1064
1068
 
1069
+ @media (prefers-reduced-motion: reduce) {
1070
+ transition:
1071
+ opacity 0.2s ease-in-out,
1072
+ visibility 0.2s ease-in-out;
1073
+ }
1074
+
1065
1075
  &.visually-hidden {
1066
1076
  opacity: 0;
1067
1077
  visibility: hidden;
@@ -1234,6 +1244,17 @@ watch(
1234
1244
  transition: none;
1235
1245
  }
1236
1246
 
1247
+ /* The indicators jump to the new item instead of sliding; the hover highlight still fades. */
1248
+ @media (prefers-reduced-motion: reduce) {
1249
+ .nav-indicator-hovered {
1250
+ transition: opacity 150ms ease;
1251
+ }
1252
+
1253
+ .nav-indicator-active {
1254
+ transition: none;
1255
+ }
1256
+ }
1257
+
1237
1258
  &:has(li.is-hovered) .nav-indicator-active {
1238
1259
  background: var(
1239
1260
  --responsive-nav-decorator-hovered-indicator-color,
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "srcdev-nuxt-components",
3
3
  "type": "module",
4
- "version": "9.6.17",
4
+ "version": "9.6.18",
5
5
  "main": "nuxt.config.ts",
6
6
  "types": "types.d.ts",
7
7
  "license": "MIT",