Next alpha stage commit

This commit is contained in:
2026-07-06 20:54:46 +02:00
parent e23387738b
commit 1d7ec956d2
42 changed files with 11603 additions and 2837 deletions

View File

@@ -383,10 +383,16 @@ input.journey-selected-stop {
gap: 8px;
}
.harmonization-review-form label:has(textarea),
.harmonization-review-form .harmonization-license-grid,
.harmonization-review-form .source-actions,
.harmonization-review-form > .muted {
grid-column: 1 / -1;
}
.harmonization-license-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
gap: 8px;
}
.harmonization-review-item {
display: grid;
gap: 2px;
@@ -416,6 +422,155 @@ input.journey-selected-stop {
.harmonization-review-item span {
color: #52606d;
}
.map-gtfs-review-queue {
display: grid;
gap: 8px;
max-height: 360px;
overflow-x: hidden;
overflow-y: auto;
padding-right: 4px;
min-width: 0;
}
.map-gtfs-review-summary {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 5px;
}
.map-gtfs-review-summary div {
border: 1px solid #e2e8f0;
border-radius: 6px;
background: #f8fafc;
padding: 6px;
min-width: 0;
}
.map-gtfs-review-summary strong,
.map-gtfs-review-summary span {
display: block;
min-width: 0;
overflow-wrap: anywhere;
}
.map-gtfs-review-summary strong {
font-size: 13px;
color: #17212b;
}
.map-gtfs-review-summary span {
font-size: 10px;
color: #5a6875;
}
.map-gtfs-review-item {
display: grid;
gap: 5px;
border-left: 4px solid #64748b;
border-radius: 6px;
background: #f8fafc;
padding: 8px;
font-size: 12px;
min-width: 0;
}
.map-gtfs-review-item.error {
border-left-color: #c24141;
background: #fff7f7;
}
.map-gtfs-review-item.warn {
border-left-color: #c47a12;
background: #fffaf0;
}
.map-gtfs-review-item.info {
border-left-color: #2563eb;
background: #f6f9ff;
}
.map-gtfs-review-title {
display: flex;
justify-content: space-between;
gap: 8px;
min-width: 0;
}
.map-gtfs-review-title > * {
min-width: 0;
overflow-wrap: anywhere;
}
.map-gtfs-review-actions {
display: flex;
flex-wrap: wrap;
gap: 6px;
}
.gtfs-workflow,
.gtfs-workflow-steps,
.gtfs-workflow-diffs,
.gtfs-diff-item-list {
display: grid;
gap: 8px;
min-width: 0;
}
.gtfs-workflow-step {
grid-template-columns: auto minmax(0, 1fr);
}
.gtfs-workflow-step.pending {
opacity: 0.82;
}
.gtfs-workflow-actions {
display: flex;
flex-wrap: wrap;
gap: 6px;
margin-top: 6px;
}
.gtfs-workflow-diffs {
border-top: 1px solid #e2e8f0;
padding-top: 8px;
}
.gtfs-workflow-audit {
display: grid;
gap: 7px;
border-top: 1px solid #e2e8f0;
padding-top: 8px;
min-width: 0;
}
.gtfs-workflow-audit h4 {
margin: 0;
font-size: 12px;
color: #334155;
}
.snapshot-route-preview {
display: grid;
gap: 6px;
max-height: 190px;
overflow-y: auto;
padding-right: 4px;
min-width: 0;
}
.snapshot-route-row {
display: grid;
gap: 2px;
border-left: 3px solid #2563eb;
background: #f8fafc;
padding: 6px 8px;
min-width: 0;
}
.snapshot-route-row strong,
.snapshot-route-row span {
min-width: 0;
overflow-wrap: anywhere;
}
.gtfs-workflow-diffs h4 {
margin: 0;
font-size: 12px;
color: #334155;
}
.gtfs-workflow-diff {
display: grid;
gap: 2px;
width: 100%;
border: 1px solid #e2e8f0;
border-radius: 6px;
background: #f8fafc;
color: #17212b;
padding: 8px;
text-align: left;
}
.gtfs-workflow-diff span {
color: #52606d;
font-size: 11px;
}
.source, .match, .catalog-entry {
border-top: 1px solid #e1e7ee;
padding: 8px 0;
@@ -814,6 +969,14 @@ input.journey-selected-stop {
gap: 8px;
font-size: 12px;
min-width: 0;
}
.jobs-worker-status {
min-width: 0;
}
.jobs-queue {
display: grid;
gap: 8px;
min-width: 0;
max-height: 280px;
overflow-x: hidden;
overflow-y: auto;
@@ -831,6 +994,12 @@ input.journey-selected-stop {
display: grid;
gap: 4px;
}
.worker-controls {
display: flex;
flex-wrap: wrap;
gap: 6px;
min-width: 0;
}
.worker-row {
border: 1px solid #e1e7ee;
border-radius: 6px;
@@ -1202,6 +1371,8 @@ input.journey-selected-stop {
.mode-coach { background: #fef3c7; color: #a16207; }
.mode-ferry { background: #dbeafe; color: #0284c7; }
.mode-walk { background: #dcfce7; color: #16a34a; }
.mode-bike,
.mode-bicycle { background: #ccfbf1; color: #0d9488; }
.mode-drive,
.mode-car { background: #ffedd5; color: #f97316; }
.mode-monorail,
@@ -1416,6 +1587,79 @@ input.journey-selected-stop {
white-space: pre-wrap;
overflow-wrap: anywhere;
}
.review-detail {
display: grid;
gap: 14px;
font-size: 12px;
}
.review-detail section {
display: grid;
gap: 8px;
}
.review-detail h3,
.review-entity-card h4 {
margin: 0;
font-size: 13px;
}
.review-detail-title {
display: flex;
flex-wrap: wrap;
gap: 6px;
}
.review-detail-grid,
.review-comparison {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
gap: 8px;
min-width: 0;
}
.review-entity-card {
display: grid;
gap: 5px;
border: 1px solid #e1e7ee;
border-radius: 6px;
background: #fbfdff;
padding: 8px;
min-width: 0;
}
.review-entity-card div {
display: grid;
grid-template-columns: minmax(80px, 0.42fr) minmax(0, 1fr);
gap: 8px;
min-width: 0;
}
.review-entity-card span {
color: #64748b;
}
.review-entity-card strong,
.review-diff-table span,
.review-diff-table strong {
min-width: 0;
overflow-wrap: anywhere;
}
.review-diff-table {
display: grid;
gap: 5px;
}
.review-diff-table > div {
display: grid;
grid-template-columns: minmax(90px, 0.7fr) repeat(2, minmax(0, 1fr));
gap: 8px;
border: 1px solid #e2e8f0;
border-radius: 6px;
background: #f8fafc;
padding: 7px;
}
.review-detail pre {
margin: 5px 0 0;
padding: 8px;
border-radius: 6px;
background: #f7fafc;
white-space: pre-wrap;
overflow-wrap: anywhere;
max-height: 320px;
overflow-y: auto;
}
.canonical-stop-detail {
display: grid;
gap: 14px;