@neuravision/construct 1.1.3 → 1.1.4
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/components/app-shell-v2.css +17 -11
- package/components/banner.css +1 -1
- package/components/button.css +2 -2
- package/components/chip.css +9 -9
- package/components/combobox.css +1 -2
- package/components/navbar.css +46 -19
- package/components/table.css +3 -3
- package/package.json +1 -1
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
--ct-v2-radius: var(--radius-lg);
|
|
33
33
|
--ct-v2-canvas-bg: var(--color-bg-muted);
|
|
34
34
|
--ct-v2-surface-bg: var(--color-bg-canvas);
|
|
35
|
-
--ct-v2-surface-shadow:
|
|
35
|
+
--ct-v2-surface-shadow: var(--shadow-xs);
|
|
36
36
|
--ct-v2-transition-duration: 250ms;
|
|
37
37
|
--ct-v2-transition-easing: cubic-bezier(0.32, 0.72, 0, 1);
|
|
38
38
|
|
|
@@ -278,10 +278,16 @@
|
|
|
278
278
|
/* Tinted sidebar surface — Slack / Linear / Discord aesthetic. */
|
|
279
279
|
|
|
280
280
|
.ct-app-shell-v2--sidebar-branded > .ct-app-shell-v2__sidebar {
|
|
281
|
-
--_branded-
|
|
282
|
-
--_branded-
|
|
283
|
-
--_branded-
|
|
284
|
-
|
|
281
|
+
--_branded-bg: var(--color-slate-900);
|
|
282
|
+
--_branded-border: var(--color-slate-700);
|
|
283
|
+
--_branded-text: var(--color-slate-300);
|
|
284
|
+
--_branded-text-strong: var(--color-slate-0);
|
|
285
|
+
--_branded-text-muted: var(--color-slate-100);
|
|
286
|
+
--_branded-hover-bg: color-mix(in srgb, var(--_branded-text-strong) 8%, transparent);
|
|
287
|
+
--_branded-active-bg: color-mix(in srgb, var(--_branded-text-strong) 12%, transparent);
|
|
288
|
+
--_branded-badge-bg: color-mix(in srgb, var(--_branded-text-strong) 15%, transparent);
|
|
289
|
+
|
|
290
|
+
background: var(--_branded-bg);
|
|
285
291
|
color: var(--color-text-inverse);
|
|
286
292
|
box-shadow: none;
|
|
287
293
|
}
|
|
@@ -291,30 +297,30 @@
|
|
|
291
297
|
}
|
|
292
298
|
|
|
293
299
|
.ct-app-shell-v2--sidebar-branded .ct-app-shell-v2__sidebar .ct-sidebar__header {
|
|
294
|
-
border-bottom-color: var(--
|
|
295
|
-
color: var(--
|
|
300
|
+
border-bottom-color: var(--_branded-border);
|
|
301
|
+
color: var(--_branded-text-strong);
|
|
296
302
|
}
|
|
297
303
|
|
|
298
304
|
.ct-app-shell-v2--sidebar-branded .ct-app-shell-v2__sidebar .ct-nav-item {
|
|
299
|
-
color: var(--
|
|
305
|
+
color: var(--_branded-text);
|
|
300
306
|
}
|
|
301
307
|
|
|
302
308
|
@media (hover: hover) {
|
|
303
309
|
.ct-app-shell-v2--sidebar-branded .ct-app-shell-v2__sidebar .ct-nav-item:hover {
|
|
304
310
|
background: var(--_branded-hover-bg);
|
|
305
|
-
color: var(--
|
|
311
|
+
color: var(--_branded-text-strong);
|
|
306
312
|
}
|
|
307
313
|
}
|
|
308
314
|
|
|
309
315
|
.ct-app-shell-v2--sidebar-branded .ct-app-shell-v2__sidebar .ct-nav-item--active,
|
|
310
316
|
.ct-app-shell-v2--sidebar-branded .ct-app-shell-v2__sidebar .ct-nav-item[aria-current='page'] {
|
|
311
317
|
background: var(--_branded-active-bg);
|
|
312
|
-
color: var(--
|
|
318
|
+
color: var(--_branded-text-strong);
|
|
313
319
|
}
|
|
314
320
|
|
|
315
321
|
.ct-app-shell-v2--sidebar-branded .ct-app-shell-v2__sidebar .ct-nav-item__badge {
|
|
316
322
|
background: var(--_branded-badge-bg);
|
|
317
|
-
color: var(--
|
|
323
|
+
color: var(--_branded-text-muted);
|
|
318
324
|
}
|
|
319
325
|
|
|
320
326
|
.ct-app-shell-v2--sidebar-branded .ct-app-shell-v2__sidebar .ct-nav-item--active .ct-nav-item__badge,
|
package/components/banner.css
CHANGED
|
@@ -144,7 +144,7 @@
|
|
|
144
144
|
|
|
145
145
|
/* Solid + success needs darker green for WCAG AA contrast with inverse text */
|
|
146
146
|
.ct-banner.ct-banner--solid[data-variant='success'] {
|
|
147
|
-
--ct-banner-accent: var(--color-
|
|
147
|
+
--ct-banner-accent: var(--color-state-success-text);
|
|
148
148
|
}
|
|
149
149
|
|
|
150
150
|
/* ---- Appearance: Accents ---- */
|
package/components/button.css
CHANGED
|
@@ -88,8 +88,8 @@
|
|
|
88
88
|
|
|
89
89
|
.ct-button--danger {
|
|
90
90
|
--ct-button-bg: var(--color-state-danger);
|
|
91
|
-
--ct-button-bg-hover: var(--color-
|
|
92
|
-
--ct-button-bg-active: var(--color-
|
|
91
|
+
--ct-button-bg-hover: color-mix(in srgb, var(--color-state-danger) 85%, black);
|
|
92
|
+
--ct-button-bg-active: color-mix(in srgb, var(--color-state-danger) 70%, black);
|
|
93
93
|
--ct-button-border: transparent;
|
|
94
94
|
--ct-button-color: var(--color-text-inverse);
|
|
95
95
|
}
|
package/components/chip.css
CHANGED
|
@@ -98,14 +98,14 @@
|
|
|
98
98
|
.ct-chip--info {
|
|
99
99
|
--ct-chip-bg: var(--color-state-info-surface);
|
|
100
100
|
--ct-chip-border: var(--color-state-info-border);
|
|
101
|
-
--ct-chip-color: var(--color-
|
|
101
|
+
--ct-chip-color: var(--color-state-info-text);
|
|
102
102
|
--ct-chip-accent: var(--color-state-info);
|
|
103
103
|
}
|
|
104
104
|
|
|
105
105
|
.ct-chip--success {
|
|
106
106
|
--ct-chip-bg: var(--color-state-success-surface);
|
|
107
107
|
--ct-chip-border: var(--color-state-success-border);
|
|
108
|
-
--ct-chip-color: var(--color-
|
|
108
|
+
--ct-chip-color: var(--color-state-success-text);
|
|
109
109
|
--ct-chip-accent: var(--color-state-success);
|
|
110
110
|
}
|
|
111
111
|
|
|
@@ -119,7 +119,7 @@
|
|
|
119
119
|
.ct-chip--danger {
|
|
120
120
|
--ct-chip-bg: var(--color-state-danger-surface);
|
|
121
121
|
--ct-chip-border: var(--color-state-danger-border);
|
|
122
|
-
--ct-chip-color: var(--color-
|
|
122
|
+
--ct-chip-color: var(--color-state-danger-text);
|
|
123
123
|
--ct-chip-accent: var(--color-state-danger);
|
|
124
124
|
}
|
|
125
125
|
|
|
@@ -163,17 +163,17 @@
|
|
|
163
163
|
}
|
|
164
164
|
|
|
165
165
|
.ct-chip--solid.ct-chip--success {
|
|
166
|
-
--ct-chip-bg: var(--color-
|
|
167
|
-
--ct-chip-border: var(--color-
|
|
166
|
+
--ct-chip-bg: var(--color-state-success-text);
|
|
167
|
+
--ct-chip-border: var(--color-state-success-text);
|
|
168
168
|
--ct-chip-color: var(--color-text-inverse);
|
|
169
169
|
--ct-chip-accent: var(--color-text-inverse);
|
|
170
170
|
}
|
|
171
171
|
|
|
172
172
|
.ct-chip--solid.ct-chip--warning {
|
|
173
|
-
--ct-chip-bg: var(--color-
|
|
174
|
-
--ct-chip-border: var(--color-
|
|
175
|
-
--ct-chip-color: var(--color-
|
|
176
|
-
--ct-chip-accent: var(--color-
|
|
173
|
+
--ct-chip-bg: var(--color-state-warning-text);
|
|
174
|
+
--ct-chip-border: var(--color-state-warning-text);
|
|
175
|
+
--ct-chip-color: var(--color-text-inverse);
|
|
176
|
+
--ct-chip-accent: var(--color-text-inverse);
|
|
177
177
|
}
|
|
178
178
|
|
|
179
179
|
.ct-chip--solid.ct-chip--danger {
|
package/components/combobox.css
CHANGED
|
@@ -348,8 +348,7 @@
|
|
|
348
348
|
border-top: var(--border-thin) solid var(--color-border-subtle);
|
|
349
349
|
border-radius: 0 0 var(--radius-md) var(--radius-md);
|
|
350
350
|
box-shadow: none;
|
|
351
|
-
border-
|
|
352
|
-
border-right: none;
|
|
351
|
+
border-inline: none;
|
|
353
352
|
border-bottom: none;
|
|
354
353
|
}
|
|
355
354
|
|
package/components/navbar.css
CHANGED
|
@@ -40,6 +40,12 @@
|
|
|
40
40
|
|
|
41
41
|
/* ── Brand ──────────────────────────────────────────────────────── */
|
|
42
42
|
|
|
43
|
+
.ct-navbar__brand-wrapper {
|
|
44
|
+
display: flex;
|
|
45
|
+
align-items: center;
|
|
46
|
+
flex-shrink: 0;
|
|
47
|
+
}
|
|
48
|
+
|
|
43
49
|
.ct-navbar__brand {
|
|
44
50
|
display: inline-flex;
|
|
45
51
|
align-items: center;
|
|
@@ -487,24 +493,31 @@
|
|
|
487
493
|
/* ── Dark ──────────────────────────────────────────────────────── */
|
|
488
494
|
|
|
489
495
|
.ct-navbar--dark {
|
|
490
|
-
--
|
|
491
|
-
--
|
|
492
|
-
|
|
496
|
+
--_dark-bg: var(--color-slate-900);
|
|
497
|
+
--_dark-bg-hover: var(--color-slate-800);
|
|
498
|
+
--_dark-border: var(--color-slate-800);
|
|
499
|
+
--_dark-text: var(--color-slate-300);
|
|
500
|
+
--_dark-text-strong: var(--color-text-inverse);
|
|
501
|
+
--_dark-text-muted: var(--color-slate-400);
|
|
502
|
+
|
|
503
|
+
--ct-navbar-bg: var(--_dark-bg);
|
|
504
|
+
--ct-navbar-border-color: var(--_dark-border);
|
|
505
|
+
color: var(--_dark-text-strong);
|
|
493
506
|
}
|
|
494
507
|
|
|
495
508
|
.ct-navbar--dark .ct-navbar__link {
|
|
496
|
-
color: var(--
|
|
509
|
+
color: var(--_dark-text);
|
|
497
510
|
}
|
|
498
511
|
|
|
499
512
|
@media (hover: hover) {
|
|
500
513
|
.ct-navbar--dark .ct-navbar__link:hover {
|
|
501
|
-
background: var(--
|
|
502
|
-
color: var(--
|
|
514
|
+
background: var(--_dark-bg-hover);
|
|
515
|
+
color: var(--_dark-text-strong);
|
|
503
516
|
}
|
|
504
517
|
}
|
|
505
518
|
|
|
506
519
|
.ct-navbar--dark .ct-navbar__link[aria-current='page'] {
|
|
507
|
-
color: var(--
|
|
520
|
+
color: var(--_dark-text-strong);
|
|
508
521
|
}
|
|
509
522
|
|
|
510
523
|
.ct-navbar--dark .ct-navbar__link[aria-current='page']::after {
|
|
@@ -512,48 +525,62 @@
|
|
|
512
525
|
}
|
|
513
526
|
|
|
514
527
|
.ct-navbar--dark .ct-navbar__link-chevron {
|
|
515
|
-
color: var(--
|
|
528
|
+
color: var(--_dark-text-muted);
|
|
516
529
|
}
|
|
517
530
|
|
|
518
531
|
.ct-navbar--dark .ct-navbar__toggle {
|
|
519
|
-
color: var(--
|
|
532
|
+
color: var(--_dark-text-strong);
|
|
520
533
|
}
|
|
521
534
|
|
|
522
535
|
@media (hover: hover) {
|
|
523
536
|
.ct-navbar--dark .ct-navbar__toggle:hover {
|
|
524
|
-
background: var(--
|
|
537
|
+
background: var(--_dark-bg-hover);
|
|
525
538
|
}
|
|
526
539
|
}
|
|
527
540
|
|
|
528
541
|
.ct-navbar--dark .ct-navbar__mobile-menu {
|
|
529
|
-
background: var(--
|
|
530
|
-
border-color: var(--
|
|
542
|
+
background: var(--_dark-bg);
|
|
543
|
+
border-color: var(--_dark-border);
|
|
531
544
|
}
|
|
532
545
|
|
|
533
546
|
.ct-navbar--dark .ct-navbar__mobile-menu .ct-navbar__link {
|
|
534
|
-
color: var(--
|
|
547
|
+
color: var(--_dark-text);
|
|
535
548
|
}
|
|
536
549
|
|
|
537
550
|
@media (hover: hover) {
|
|
538
551
|
.ct-navbar--dark .ct-navbar__mobile-menu .ct-navbar__link:hover {
|
|
539
|
-
background: var(--
|
|
540
|
-
color: var(--
|
|
552
|
+
background: var(--_dark-bg-hover);
|
|
553
|
+
color: var(--_dark-text-strong);
|
|
541
554
|
}
|
|
542
555
|
}
|
|
543
556
|
|
|
544
557
|
.ct-navbar--dark .ct-navbar__mobile-menu .ct-navbar__link[aria-current='page'] {
|
|
545
|
-
background: var(--
|
|
546
|
-
color: var(--
|
|
558
|
+
background: var(--_dark-bg-hover);
|
|
559
|
+
color: var(--_dark-text-strong);
|
|
547
560
|
}
|
|
548
561
|
|
|
549
562
|
.ct-navbar--dark .ct-navbar__actions .ct-button {
|
|
550
|
-
color: var(--
|
|
563
|
+
color: var(--_dark-text-strong);
|
|
551
564
|
}
|
|
552
565
|
|
|
553
566
|
/* ── Center Nav ────────────────────────────────────────────────── */
|
|
554
567
|
|
|
568
|
+
.ct-navbar--center .ct-navbar__brand-wrapper {
|
|
569
|
+
flex: 1;
|
|
570
|
+
}
|
|
571
|
+
|
|
555
572
|
.ct-navbar--center .ct-navbar__nav {
|
|
556
|
-
|
|
573
|
+
justify-content: center;
|
|
574
|
+
}
|
|
575
|
+
|
|
576
|
+
.ct-navbar--center .ct-navbar__actions {
|
|
577
|
+
flex: 1;
|
|
578
|
+
justify-content: flex-end;
|
|
579
|
+
margin-inline-start: 0;
|
|
580
|
+
}
|
|
581
|
+
|
|
582
|
+
.ct-navbar--center .ct-navbar__spacer {
|
|
583
|
+
display: none;
|
|
557
584
|
}
|
|
558
585
|
|
|
559
586
|
/* ── Responsive ────────────────────────────────────────────────── */
|
package/components/table.css
CHANGED
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
.ct-table td {
|
|
17
17
|
padding: var(--space-4) var(--space-5);
|
|
18
18
|
border-bottom: var(--border-thin) solid var(--color-border-subtle);
|
|
19
|
-
text-align:
|
|
19
|
+
text-align: start;
|
|
20
20
|
}
|
|
21
21
|
|
|
22
22
|
.ct-table thead th {
|
|
@@ -117,12 +117,12 @@ th[aria-sort='descending'] .ct-table__sort-indicator::after {
|
|
|
117
117
|
}
|
|
118
118
|
|
|
119
119
|
.ct-table__cell--numeric {
|
|
120
|
-
text-align:
|
|
120
|
+
text-align: end;
|
|
121
121
|
font-variant-numeric: tabular-nums;
|
|
122
122
|
}
|
|
123
123
|
|
|
124
124
|
.ct-table__cell--actions {
|
|
125
|
-
text-align:
|
|
125
|
+
text-align: end;
|
|
126
126
|
white-space: nowrap;
|
|
127
127
|
}
|
|
128
128
|
|