feat: unify vehicle live metric rail

This commit is contained in:
lingniu
2026-07-19 10:10:28 +08:00
parent a6f6ce260f
commit add47b7efc
4 changed files with 241 additions and 25 deletions

View File

@@ -22782,3 +22782,170 @@
height: 46px;
}
}
/*
* Single-vehicle live metrics use the shared Semi queue rail.
* The desktop rail keeps operating evidence in one scan line; mobile keeps
* the four driver-facing metrics in a compact 2 × 2 block so the map arrives
* sooner without removing mileage source evidence.
*/
.v2-vehicle-live-metric-rail.is-queue.semi-card {
border-bottom-color: #dfe7f0;
}
.v2-vehicle-live-metric-rail.is-queue > .semi-card-body {
grid-template-columns: minmax(0, 1fr) 196px;
}
.v2-vehicle-live-metric-rail .v2-workspace-metric-list {
grid-template-columns: .78fr .72fr 1.14fr 1.02fr .84fr;
}
.v2-vehicle-live-metric-rail .v2-workspace-metric-list > span,
.v2-vehicle-live-metric-rail .v2-workspace-metric-action.semi-button,
.v2-vehicle-live-metric-rail .v2-workspace-metric-action .semi-button-content {
min-height: 70px;
}
.v2-vehicle-live-metric-rail .v2-workspace-metric-list > span,
.v2-vehicle-live-metric-rail .v2-workspace-metric-action .semi-button-content {
padding: 8px 12px;
}
.v2-vehicle-live-metric-rail .v2-workspace-metric-list > span.is-action {
display: block;
padding: 0;
}
.v2-vehicle-live-metric-rail .v2-workspace-metric-list > span > strong,
.v2-vehicle-live-metric-rail .v2-workspace-metric-action .semi-button-content > strong {
overflow: hidden;
font-size: clamp(17px, 1.45vw, 21px);
text-overflow: ellipsis;
}
.v2-vehicle-live-metric-rail .v2-workspace-metric-list > span.is-secondary > strong,
.v2-vehicle-live-metric-rail .v2-workspace-metric-list > span.is-secondary .v2-workspace-metric-action strong {
font-size: clamp(15px, 1.25vw, 18px);
}
.v2-vehicle-live-unit {
margin-left: 4px;
color: #8492a4;
font-size: 9px;
font-style: normal;
font-weight: 550;
letter-spacing: 0;
}
.v2-vehicle-live-metric-rail .v2-workspace-metric-list > span.is-primary .v2-vehicle-live-unit {
color: #6f91bf;
}
.v2-vehicle-live-action-note {
display: inline-flex;
align-items: center;
gap: 2px;
}
.v2-vehicle-live-action-note > .semi-icon {
flex: 0 0 auto;
font-size: 9px;
}
.v2-vehicle-live-metric-rail .v2-workspace-metric-context {
padding: 8px 12px;
}
.v2-vehicle-live-source-context {
align-items: center;
}
.v2-vehicle-live-source-context > strong {
display: flex;
min-width: 0;
align-items: center;
}
.v2-vehicle-record-v3 .v2-vehicle-command-card .v2-vehicle-live-source-context .v2-live-primary-protocol.semi-tag {
min-height: 23px;
max-width: 100%;
margin: 0;
border-radius: 7px;
padding-inline: 7px;
font-size: 9px;
}
.v2-vehicle-live-source-context > em {
max-width: 172px;
}
@media (max-width: 900px) {
.v2-vehicle-live-metric-rail.is-queue > .semi-card-body {
grid-template-columns: minmax(0, 1fr) 164px;
}
.v2-vehicle-live-metric-rail .v2-workspace-metric-list > span,
.v2-vehicle-live-metric-rail .v2-workspace-metric-action .semi-button-content {
padding-inline: 9px;
}
}
@media (max-width: 680px) {
.v2-vehicle-live-metric-rail.is-queue > .semi-card-body {
min-height: 104px;
grid-template-columns: minmax(0, 1fr);
}
.v2-vehicle-live-metric-rail .v2-workspace-metric-list {
grid-template-columns: repeat(2, minmax(0, 1fr));
}
.v2-vehicle-live-metric-rail .v2-workspace-metric-list > span.is-secondary {
display: grid;
}
.v2-vehicle-live-metric-rail .v2-workspace-metric-list > span.is-secondary.is-action {
display: block;
}
.v2-vehicle-live-metric-rail .v2-workspace-metric-list > span:nth-child(n + 5) {
display: none;
}
.v2-vehicle-live-metric-rail .v2-workspace-metric-list > span,
.v2-vehicle-live-metric-rail .v2-workspace-metric-action.semi-button,
.v2-vehicle-live-metric-rail .v2-workspace-metric-action .semi-button-content {
min-height: 52px;
}
.v2-vehicle-live-metric-rail .v2-workspace-metric-list > span:nth-child(odd) {
border-left: 0;
}
.v2-vehicle-live-metric-rail .v2-workspace-metric-list > span:nth-child(n + 3) {
border-top: 1px solid #e5ebf2;
}
.v2-vehicle-live-metric-rail .v2-workspace-metric-list > span,
.v2-vehicle-live-metric-rail .v2-workspace-metric-action .semi-button-content {
padding: 5px 9px;
}
.v2-vehicle-live-metric-rail .v2-workspace-metric-list > span.is-action {
padding: 0;
}
.v2-vehicle-live-metric-rail .v2-workspace-metric-list > span > strong,
.v2-vehicle-live-metric-rail .v2-workspace-metric-action .semi-button-content > strong,
.v2-vehicle-live-metric-rail .v2-workspace-metric-list > span.is-secondary > strong,
.v2-vehicle-live-metric-rail .v2-workspace-metric-list > span.is-secondary .v2-workspace-metric-action strong {
font-size: 16px;
line-height: 19px;
}
.v2-vehicle-live-metric-rail .v2-workspace-metric-list > span > em,
.v2-vehicle-live-metric-rail .v2-workspace-metric-action .semi-button-content > em {
font-size: 7px;
}
}