@nordmanai/nif 0.2.19 → 0.2.20

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nordmanai/nif",
3
- "version": "0.2.19",
3
+ "version": "0.2.20",
4
4
  "description": "Nordman Interface Framework: the one UI and UX system for every Nordman product. Base UI, in the shadcn composition, styled by NIF tokens.",
5
5
  "type": "module",
6
6
  "sideEffects": [
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "0.2.18",
2
+ "version": "0.2.19",
3
3
  "versions": {
4
4
  "@animate-ui/react": "^2.4.2",
5
5
  "@base-ui/react": "^1.9.0",
@@ -215,6 +215,13 @@
215
215
  .nm-sidebar__trigger {
216
216
  flex-shrink: 0;
217
217
  }
218
+ /* The toggle is a bare icon: no fill on hover, focus or while its peek is open. Focus keeps its ring. */
219
+ .nm-icon-button.nm-sidebar__trigger:hover:not(:disabled):not([aria-disabled='true']),
220
+ .nm-icon-button.nm-sidebar__trigger:focus-visible:not(:disabled):not([aria-disabled='true']),
221
+ .nm-icon-button.nm-sidebar__trigger[aria-expanded='true']:not(:disabled):not([aria-disabled='true']),
222
+ .nm-icon-button.nm-sidebar__trigger[aria-pressed='true']:not(:disabled):not([aria-disabled='true']) {
223
+ background: transparent;
224
+ }
218
225
  /* Anchored: one toggle at the provider's top start corner, above the sidebar, that never moves. */
219
226
  .nm-sidebar-provider > .nm-sidebar__trigger--anchored {
220
227
  position: absolute;
@@ -565,7 +572,25 @@
565
572
  height: var(--nm-icon-sm);
566
573
  color: var(--nm-fg-subtle);
567
574
  transform: rotate(-90deg);
568
- transition: transform var(--reveal) var(--ease);
575
+ /* Hidden until the row is hovered, focused or open. */
576
+ opacity: 0;
577
+ transition:
578
+ transform var(--reveal) var(--ease),
579
+ opacity var(--reveal) var(--ease);
580
+ }
581
+ .nm-sidebar__menu-button:hover > .nm-sidebar__chevron,
582
+ .nm-sidebar__menu-button:focus-visible > .nm-sidebar__chevron,
583
+ .nm-sidebar__menu-button[data-popup-open] > .nm-sidebar__chevron,
584
+ .nm-sidebar__menu-button[aria-expanded='true'] > .nm-sidebar__chevron,
585
+ .nm-sidebar__menu-button[data-panel-open] > .nm-sidebar__chevron,
586
+ .nm-sidebar__menu-button[data-open] > .nm-sidebar__chevron {
587
+ opacity: 1;
588
+ }
589
+ /* Nothing to hover on a touch screen: the chevrons stay. */
590
+ @media (hover: none) {
591
+ .nm-sidebar__chevron {
592
+ opacity: 1;
593
+ }
569
594
  }
570
595
  [aria-expanded='true'] > .nm-sidebar__chevron,
571
596
  [data-panel-open] > .nm-sidebar__chevron,