@validation-os/dashboard 0.16.0 → 0.16.2
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/dist/index.d.ts +3 -0
- package/dist/index.js +109 -23
- package/dist/index.js.map +1 -1
- package/dist/styles.css +176 -9
- package/package.json +2 -2
package/dist/styles.css
CHANGED
|
@@ -3404,15 +3404,182 @@ button.vos-verdict-title {
|
|
|
3404
3404
|
.vos-pipe-tag-needs { color: var(--vos-warn); border-color: var(--vos-warn); }
|
|
3405
3405
|
.vos-detail-tag-qt { border-color: var(--vos-accent); color: var(--vos-accent); }
|
|
3406
3406
|
|
|
3407
|
-
/* Stage-keyed
|
|
3408
|
-
|
|
3409
|
-
|
|
3410
|
-
|
|
3411
|
-
.vos-threshold-bar {
|
|
3412
|
-
|
|
3413
|
-
|
|
3414
|
-
|
|
3415
|
-
|
|
3407
|
+
/* Stage-keyed evidence bar (assumption detail, DEV-5890) — a single
|
|
3408
|
+
Confidence bar that fills UP toward the stage's floor marker. The target
|
|
3409
|
+
zone above the marker is tinted to show "this is where you need to be."
|
|
3410
|
+
Maturity's marker is at 60% (hard to reach); Discovery's is at 10% (easy). */
|
|
3411
|
+
.vos-threshold-bar-card {
|
|
3412
|
+
padding: 14px 16px;
|
|
3413
|
+
display: flex;
|
|
3414
|
+
flex-direction: column;
|
|
3415
|
+
gap: 10px;
|
|
3416
|
+
}
|
|
3417
|
+
|
|
3418
|
+
.vos-threshold-bar-header {
|
|
3419
|
+
display: flex;
|
|
3420
|
+
justify-content: space-between;
|
|
3421
|
+
align-items: center;
|
|
3422
|
+
}
|
|
3423
|
+
|
|
3424
|
+
.vos-threshold-bar-title {
|
|
3425
|
+
font-size: 12px;
|
|
3426
|
+
font-weight: 600;
|
|
3427
|
+
color: var(--vos-text);
|
|
3428
|
+
display: flex;
|
|
3429
|
+
align-items: center;
|
|
3430
|
+
gap: 8px;
|
|
3431
|
+
}
|
|
3432
|
+
|
|
3433
|
+
.vos-threshold-bar-stage-tag {
|
|
3434
|
+
font-size: 9px;
|
|
3435
|
+
font-weight: 500;
|
|
3436
|
+
color: var(--vos-muted);
|
|
3437
|
+
padding: 1px 6px;
|
|
3438
|
+
border: 1px solid var(--vos-border);
|
|
3439
|
+
border-radius: 4px;
|
|
3440
|
+
text-transform: capitalize;
|
|
3441
|
+
}
|
|
3442
|
+
|
|
3443
|
+
.vos-threshold-bar-status {
|
|
3444
|
+
font-size: 11px;
|
|
3445
|
+
font-weight: 600;
|
|
3446
|
+
padding: 2px 8px;
|
|
3447
|
+
border-radius: 4px;
|
|
3448
|
+
}
|
|
3449
|
+
|
|
3450
|
+
.vos-threshold-bar-good { color: var(--vos-good); background: var(--vos-good-weak); }
|
|
3451
|
+
.vos-threshold-bar-warn { color: var(--vos-warn); background: var(--vos-warn-weak); }
|
|
3452
|
+
.vos-threshold-bar-crit { color: var(--vos-crit); background: var(--vos-crit-weak); }
|
|
3453
|
+
|
|
3454
|
+
/* Bar section */
|
|
3455
|
+
.vos-threshold-bar-section {
|
|
3456
|
+
display: flex;
|
|
3457
|
+
flex-direction: column;
|
|
3458
|
+
gap: 4px;
|
|
3459
|
+
}
|
|
3460
|
+
|
|
3461
|
+
.vos-threshold-bar-section-label {
|
|
3462
|
+
display: flex;
|
|
3463
|
+
align-items: baseline;
|
|
3464
|
+
gap: 6px;
|
|
3465
|
+
font-size: 10px;
|
|
3466
|
+
color: var(--vos-muted);
|
|
3467
|
+
}
|
|
3468
|
+
|
|
3469
|
+
.vos-threshold-bar-section-val {
|
|
3470
|
+
font-weight: 700;
|
|
3471
|
+
color: var(--vos-text);
|
|
3472
|
+
font-size: 13px;
|
|
3473
|
+
}
|
|
3474
|
+
|
|
3475
|
+
.vos-threshold-bar-section-target {
|
|
3476
|
+
font-size: 9px;
|
|
3477
|
+
color: var(--vos-faint);
|
|
3478
|
+
margin-left: auto;
|
|
3479
|
+
}
|
|
3480
|
+
|
|
3481
|
+
/* The bar track — taller for prominence */
|
|
3482
|
+
.vos-threshold-bar-track {
|
|
3483
|
+
position: relative;
|
|
3484
|
+
height: 24px;
|
|
3485
|
+
border-radius: 6px;
|
|
3486
|
+
background: var(--vos-surface-2);
|
|
3487
|
+
overflow: visible;
|
|
3488
|
+
border: 1px solid var(--vos-border);
|
|
3489
|
+
}
|
|
3490
|
+
|
|
3491
|
+
.vos-threshold-bar-track-tall {
|
|
3492
|
+
height: 28px;
|
|
3493
|
+
}
|
|
3494
|
+
|
|
3495
|
+
/* The target zone — tinted area above the floor marker (where you need to be) */
|
|
3496
|
+
.vos-threshold-bar-target-zone {
|
|
3497
|
+
position: absolute;
|
|
3498
|
+
top: 0;
|
|
3499
|
+
right: 0;
|
|
3500
|
+
bottom: 0;
|
|
3501
|
+
background: repeating-linear-gradient(
|
|
3502
|
+
45deg,
|
|
3503
|
+
transparent,
|
|
3504
|
+
transparent 4px,
|
|
3505
|
+
rgba(0, 0, 0, 0.03) 4px,
|
|
3506
|
+
rgba(0, 0, 0, 0.03) 8px
|
|
3507
|
+
);
|
|
3508
|
+
border-radius: 0 5px 5px 0;
|
|
3509
|
+
pointer-events: none;
|
|
3510
|
+
}
|
|
3511
|
+
|
|
3512
|
+
/* The fill */
|
|
3513
|
+
.vos-threshold-bar-fill {
|
|
3514
|
+
position: absolute;
|
|
3515
|
+
top: 0;
|
|
3516
|
+
left: 0;
|
|
3517
|
+
height: 100%;
|
|
3518
|
+
border-radius: 5px 0 0 5px;
|
|
3519
|
+
transition: width 0.5s cubic-bezier(0.16, 1, 0.3, 1);
|
|
3520
|
+
opacity: 0.8;
|
|
3521
|
+
z-index: 1;
|
|
3522
|
+
}
|
|
3523
|
+
|
|
3524
|
+
.vos-threshold-bar-fill.vos-fill-good { background: var(--vos-good); }
|
|
3525
|
+
.vos-threshold-bar-fill.vos-fill-warn { background: var(--vos-warn); }
|
|
3526
|
+
.vos-threshold-bar-fill.vos-fill-crit { background: var(--vos-crit); }
|
|
3527
|
+
|
|
3528
|
+
/* The floor marker — a vertical dashed line with a label above */
|
|
3529
|
+
.vos-threshold-bar-marker {
|
|
3530
|
+
position: absolute;
|
|
3531
|
+
top: -2px;
|
|
3532
|
+
bottom: -2px;
|
|
3533
|
+
width: 0;
|
|
3534
|
+
border-left: 2px dashed var(--vos-border-strong);
|
|
3535
|
+
pointer-events: none;
|
|
3536
|
+
z-index: 2;
|
|
3537
|
+
}
|
|
3538
|
+
|
|
3539
|
+
.vos-threshold-bar-marker-label {
|
|
3540
|
+
position: absolute;
|
|
3541
|
+
top: -14px;
|
|
3542
|
+
left: 4px;
|
|
3543
|
+
font-size: 9px;
|
|
3544
|
+
font-weight: 600;
|
|
3545
|
+
color: var(--vos-muted);
|
|
3546
|
+
white-space: nowrap;
|
|
3547
|
+
}
|
|
3548
|
+
|
|
3549
|
+
/* Scale under the bar */
|
|
3550
|
+
.vos-threshold-bar-scale {
|
|
3551
|
+
display: flex;
|
|
3552
|
+
justify-content: space-between;
|
|
3553
|
+
font-size: 8px;
|
|
3554
|
+
color: var(--vos-faint);
|
|
3555
|
+
padding: 0 1px;
|
|
3556
|
+
}
|
|
3557
|
+
|
|
3558
|
+
.vos-threshold-bar-scale-mid {
|
|
3559
|
+
color: var(--vos-faint);
|
|
3560
|
+
}
|
|
3561
|
+
|
|
3562
|
+
/* Compact risk summary */
|
|
3563
|
+
.vos-threshold-bar-risk-summary {
|
|
3564
|
+
display: flex;
|
|
3565
|
+
align-items: baseline;
|
|
3566
|
+
gap: 8px;
|
|
3567
|
+
font-size: 11px;
|
|
3568
|
+
}
|
|
3569
|
+
|
|
3570
|
+
.vos-threshold-bar-risk-val {
|
|
3571
|
+
font-weight: 700;
|
|
3572
|
+
}
|
|
3573
|
+
|
|
3574
|
+
.vos-threshold-bar-risk-cap {
|
|
3575
|
+
color: var(--vos-muted);
|
|
3576
|
+
font-size: 10px;
|
|
3577
|
+
}
|
|
3578
|
+
|
|
3579
|
+
.vos-threshold-bar-hint {
|
|
3580
|
+
font-size: 11px;
|
|
3581
|
+
color: var(--vos-muted);
|
|
3582
|
+
}
|
|
3416
3583
|
|
|
3417
3584
|
/* Probative vs flagged-as-non-evidence grouping (assumption detail evidence list) */
|
|
3418
3585
|
.vos-evidence-group { margin-top: 8px; }
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@validation-os/dashboard",
|
|
3
|
-
"version": "0.16.
|
|
3
|
+
"version": "0.16.2",
|
|
4
4
|
"description": "React dashboard components + hooks for validation-os, consuming the DataProvider seam.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
"access": "public"
|
|
23
23
|
},
|
|
24
24
|
"dependencies": {
|
|
25
|
-
"@validation-os/core": "0.16.
|
|
25
|
+
"@validation-os/core": "0.16.2"
|
|
26
26
|
},
|
|
27
27
|
"peerDependencies": {
|
|
28
28
|
"react": ">=18",
|