Next alpha stage commit
This commit is contained in:
@@ -5,7 +5,7 @@
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>Mobility Workbench</title>
|
||||
<link rel="stylesheet" href="https://unpkg.com/leaflet@1.9.4/dist/leaflet.css" crossorigin="" />
|
||||
<link rel="stylesheet" href="/static/style.css?v=20260701-harmonizer-module" />
|
||||
<link rel="stylesheet" href="/static/style.css?v={{ static_version }}" />
|
||||
</head>
|
||||
<body>
|
||||
<header>
|
||||
@@ -49,7 +49,7 @@
|
||||
<summary><h2>GTFS Harmonization</h2></summary>
|
||||
<div class="sidebar-section-body">
|
||||
<details class="nested-section" data-sidebar-section="add-gtfs-source">
|
||||
<summary><h3>Add GTFS source</h3></summary>
|
||||
<summary><h3>Add GTFS feed</h3></summary>
|
||||
<div class="nested-section-body">
|
||||
<form id="sourceForm">
|
||||
<input name="catalog_entry_id" type="hidden" />
|
||||
@@ -58,13 +58,13 @@
|
||||
<label>URL or path <input name="url" required placeholder="https://.../feed.zip or ./data/feed.zip" /></label>
|
||||
<label>Country <input name="country" placeholder="DE" maxlength="8" /></label>
|
||||
<label>License <input name="license" placeholder="ODbL / CC-BY / unknown" /></label>
|
||||
<button type="submit">Add GTFS source</button>
|
||||
<button type="submit">Add GTFS feed</button>
|
||||
</form>
|
||||
</div>
|
||||
</details>
|
||||
|
||||
<details class="nested-section source-catalog-card" data-sidebar-section="source-catalog">
|
||||
<summary><h3>Transit source catalog</h3></summary>
|
||||
<summary><h3>Discovery catalog</h3></summary>
|
||||
<div class="nested-section-body">
|
||||
<div id="sourceCatalogSummary" class="muted"></div>
|
||||
<div class="filter-row source-catalog-filter">
|
||||
@@ -83,14 +83,24 @@
|
||||
</div>
|
||||
<div class="source-catalog-actions">
|
||||
<button type="button" id="importSourceCatalogBtn">Import catalog</button>
|
||||
<button type="button" id="importIngestableSourcesBtn">Import ingestable seeds</button>
|
||||
<button type="button" id="importIngestableSourcesBtn">Import feed seeds</button>
|
||||
</div>
|
||||
<div id="sourceCatalog"></div>
|
||||
</div>
|
||||
</details>
|
||||
|
||||
<details class="nested-section" data-sidebar-section="gtfs-workflow" open>
|
||||
<summary><h3>GTFS workflow</h3></summary>
|
||||
<div class="nested-section-body">
|
||||
<div class="qa-toolbar">
|
||||
<button type="button" id="refreshGtfsWorkflowBtn">Refresh workflow</button>
|
||||
</div>
|
||||
<div id="gtfsWorkflow" class="gtfs-workflow muted">Workflow status loading...</div>
|
||||
</div>
|
||||
</details>
|
||||
|
||||
<details class="nested-section" data-sidebar-section="gtfs-feed-qa" open>
|
||||
<summary><h3>Feed QA</h3></summary>
|
||||
<summary><h3>GTFS feed QA</h3></summary>
|
||||
<div class="nested-section-body">
|
||||
<div class="qa-toolbar">
|
||||
<button type="button" id="refreshGtfsHarmonizationBtn">Refresh feeds</button>
|
||||
@@ -99,11 +109,57 @@
|
||||
</div>
|
||||
</details>
|
||||
|
||||
<details class="nested-section" data-sidebar-section="map-gtfs-workbench" open>
|
||||
<summary><h3>Map/GTFS workbench</h3></summary>
|
||||
<div class="nested-section-body">
|
||||
<p class="muted">Review and persist GTFS-to-map decisions here. Run the ordered workflow from the GTFS workflow panel above.</p>
|
||||
<div class="qa-toolbar">
|
||||
<button type="button" id="refreshMapGtfsWorkbenchBtn">Refresh queue</button>
|
||||
</div>
|
||||
<div class="filter-row">
|
||||
<select id="mapGtfsReviewQueueFilter">
|
||||
<option value="">all queues</option>
|
||||
<option value="gtfs_deduplication">GTFS deduplication</option>
|
||||
<option value="gtfs_update_diff">GTFS update diff</option>
|
||||
<option value="route_matching">route matching</option>
|
||||
<option value="stop_matching">stop matching</option>
|
||||
</select>
|
||||
<select id="mapGtfsReviewStatus">
|
||||
<option value="open">open</option>
|
||||
<option value="in_review">in review</option>
|
||||
<option value="resolved">resolved</option>
|
||||
<option value="dismissed">dismissed</option>
|
||||
<option value="">all statuses</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="filter-row">
|
||||
<select id="mapGtfsReviewSeverityFilter">
|
||||
<option value="">all severities</option>
|
||||
<option value="error">error</option>
|
||||
<option value="warn">warn</option>
|
||||
<option value="info">info</option>
|
||||
</select>
|
||||
<select id="mapGtfsReviewModeFilter">
|
||||
<option value="">all modes</option>
|
||||
<option value="train">train</option>
|
||||
<option value="tram">tram</option>
|
||||
<option value="subway">subway</option>
|
||||
<option value="bus">bus</option>
|
||||
<option value="ferry">ferry</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="filter-row">
|
||||
<input id="mapGtfsReviewSearch" placeholder="Search review queue" />
|
||||
</div>
|
||||
<div id="mapGtfsReviewQueue" class="map-gtfs-review-queue muted">No workbench review queue loaded.</div>
|
||||
</div>
|
||||
</details>
|
||||
|
||||
<details class="nested-section" data-sidebar-section="gtfs-source-management" open>
|
||||
<summary><h3>GTFS source library</h3></summary>
|
||||
<summary><h3>Registered GTFS feeds</h3></summary>
|
||||
<div class="nested-section-body">
|
||||
<div class="filter-row">
|
||||
<input id="sourceSearch" placeholder="Filter GTFS sources" />
|
||||
<input id="sourceSearch" placeholder="Filter registered feeds" />
|
||||
</div>
|
||||
<div id="sources"></div>
|
||||
</div>
|
||||
@@ -172,10 +228,9 @@
|
||||
<summary><h3>Derivation pipeline</h3></summary>
|
||||
<div class="nested-section-body">
|
||||
<div class="workflow-actions">
|
||||
<button id="runMatchBtn" type="button">Run matcher</button>
|
||||
<button id="buildRouteLayerBtn" type="button">Build route layer</button>
|
||||
<button id="loadSampleBtn" type="button">Reset sample</button>
|
||||
</div>
|
||||
<p class="muted">Matcher and route-layer controls live in the Map/GTFS workbench so review actions stay in one workflow.</p>
|
||||
</div>
|
||||
</details>
|
||||
|
||||
@@ -194,8 +249,9 @@
|
||||
</details>
|
||||
|
||||
<details class="nested-section matches-card" data-sidebar-section="route-matches">
|
||||
<summary><h3>Route matches</h3></summary>
|
||||
<summary><h3>Raw route matches</h3></summary>
|
||||
<div class="nested-section-body">
|
||||
<p class="muted">Inspection/debug view of raw matcher rows. Use the Map/GTFS workbench for review decisions.</p>
|
||||
<div class="filter-row">
|
||||
<select id="matchStatusFilter">
|
||||
<option value="">all</option>
|
||||
@@ -272,6 +328,7 @@
|
||||
<div class="journey-mode" role="radiogroup" aria-label="Route mode">
|
||||
<label><input type="radio" name="journeyMode" value="transit" checked /> Public transport</label>
|
||||
<label><input type="radio" name="journeyMode" value="walk" /> Walk</label>
|
||||
<label><input type="radio" name="journeyMode" value="bike" /> Bike</label>
|
||||
<label><input type="radio" name="journeyMode" value="drive" /> Car</label>
|
||||
</div>
|
||||
<div class="journey-options">
|
||||
@@ -324,6 +381,6 @@
|
||||
</div>
|
||||
|
||||
<script src="https://unpkg.com/leaflet@1.9.4/dist/leaflet.js" crossorigin=""></script>
|
||||
<script src="/static/app.js?v=20260701-harmonizer-module"></script>
|
||||
<script src="/static/app.js?v={{ static_version }}"></script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
Reference in New Issue
Block a user