@nonoun/native-dashboard 0.4.18 → 0.4.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.
@@ -561,6 +561,30 @@
561
561
  transform var(--n-duration) var(--n-easing);
562
562
  }
563
563
 
564
+ /* ── Nav Item Slots ── */
565
+
566
+ /* Leading icon — flex-shrink keeps icon fixed size */
567
+ :where(n-sidebar-nav-item) > :where([slot="leading"]) {
568
+ flex-shrink: 0;
569
+ display: flex;
570
+ align-items: center;
571
+ gap: calc(var(--n-space) * 2);
572
+ }
573
+
574
+ /* Trailing — push to end, stay fixed */
575
+ :where(n-sidebar-nav-item) > :where([slot="trailing"]) {
576
+ margin-inline-start: auto;
577
+ flex-shrink: 0;
578
+ display: flex;
579
+ align-items: center;
580
+ gap: calc(var(--n-space) * 2);
581
+ }
582
+
583
+ /* Content — full-width row below */
584
+ :where(n-sidebar-nav-item) > :where([slot="content"]) {
585
+ flex-basis: 100%;
586
+ }
587
+
564
588
  /* ── Nav Item States ── */
565
589
 
566
590
  :where(n-sidebar-nav-item):hover,
@@ -589,8 +613,8 @@
589
613
  outline-offset: -2px;
590
614
  }
591
615
 
592
- /* Badge in nav item — push to trailing edge */
593
- :where(n-sidebar-nav-item) > :where(.badge) {
616
+ /* Badge in nav item — push to trailing edge (non-slotted fallback) */
617
+ :where(n-sidebar-nav-item) > :where(n-badge, .badge):not([slot]) {
594
618
  margin-inline-start: auto;
595
619
  flex-shrink: 0;
596
620
  }
@@ -1039,25 +1063,18 @@
1039
1063
  padding: 0;
1040
1064
  transition:
1041
1065
  width var(--n-duration) var(--n-easing),
1042
- min-width var(--n-duration) var(--n-easing),
1043
- padding var(--n-duration) var(--n-easing),
1044
- margin var(--n-duration) var(--n-easing);
1066
+ min-width var(--n-duration) var(--n-easing);
1045
1067
  }
1046
1068
 
1047
1069
  :where(n-dashboard-panel)[aside][open] {
1048
- width: 360px;
1049
- min-width: 280px;
1050
- margin-inline-start: calc(var(--n-space-k) * var(--n-space));
1070
+ width: var(--n-aside-width);
1071
+ min-width: var(--n-aside-min-width);
1051
1072
  overflow-y: auto;
1052
- padding: calc(var(--n-space-k) * var(--n-space));
1053
1073
  }
1054
1074
 
1055
- /* WHY: When n-chat manages its own sub-container padding and scroll,
1056
- the layout container delegates — no own padding, no own scroll.
1057
- overflow: visible lets CSS anchor-positioned popovers (n-select etc.)
1058
- resolve through to the top layer. */
1075
+ /* WHY: When n-chat manages its own sub-container scroll,
1076
+ the layout container delegates — no own scroll. */
1059
1077
  :where(n-dashboard-panel)[aside][open]:has(> n-chat) {
1060
- padding: 0;
1061
1078
  overflow: visible;
1062
1079
  }
1063
1080
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nonoun/native-dashboard",
3
- "version": "0.4.18",
3
+ "version": "0.4.20",
4
4
  "description": "Dashboard layout and navigation components for @nonoun/native-ui",
5
5
  "license": "MIT",
6
6
  "type": "module",