v0.2.12-pre.007
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
<!-- file: crates/ksp-app-solprices-desk/frontend/main.html -->
|
||||
<!-- version: 7 -->
|
||||
<!-- version: 8 -->
|
||||
<!DOCTYPE html>
|
||||
<html lang="fr">
|
||||
|
||||
@@ -44,13 +44,16 @@
|
||||
<div class="card app-shell-card mx-auto shadow-sm border-0">
|
||||
<div class="card-body p-4">
|
||||
<section data-view-panel="prices">
|
||||
<div class="d-flex align-items-start justify-content-between gap-3 flex-wrap mb-4">
|
||||
<div class="d-flex align-items-start justify-content-between gap-3 flex-wrap mb-3">
|
||||
<div>
|
||||
<h1 class="h3 mb-1">Prices</h1>
|
||||
<p class="text-body-secondary mb-0">Inventaire provider-neutral du registry Off-chain. Rafraîchissement individuel, sélectionné ou global, sans polling ni fallback automatique.</p>
|
||||
<p class="text-body-secondary mb-0">Inventaire provider-neutral SOL/USD. Les observations restent distinctes : aucune moyenne, aucun fallback automatique et aucun polling.</p>
|
||||
</div>
|
||||
<div class="d-flex align-items-center gap-2 flex-wrap">
|
||||
<span id="selectedProviderCount" class="small text-body-secondary">0 selected</span>
|
||||
<div class="d-flex align-items-center gap-2 flex-wrap app-market-toolbar">
|
||||
<span id="selectedProviderCount" class="small text-body-secondary" aria-live="polite">0 selected</span>
|
||||
<button id="clearSelectionButton" class="btn btn-sm btn-outline-secondary" type="button" disabled>
|
||||
<i class="fa-solid fa-xmark me-1" aria-hidden="true"></i>Clear selection
|
||||
</button>
|
||||
<button id="refreshSelectedButton" class="btn btn-sm btn-outline-primary" type="button" disabled>
|
||||
<i class="fa-solid fa-list-check me-1" aria-hidden="true"></i>Refresh selected
|
||||
</button>
|
||||
@@ -59,6 +62,40 @@
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="pricesSummary" class="row g-2 mb-3" aria-label="Résumé des providers">
|
||||
<div class="col-6 col-lg">
|
||||
<div class="app-market-summary-card">
|
||||
<span class="app-market-summary-label">Providers</span>
|
||||
<strong id="pricesSummaryProviders">0</strong>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-6 col-lg">
|
||||
<div class="app-market-summary-card">
|
||||
<span class="app-market-summary-label">Ready</span>
|
||||
<strong id="pricesSummaryReady">0</strong>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-6 col-lg">
|
||||
<div class="app-market-summary-card">
|
||||
<span class="app-market-summary-label">Observed</span>
|
||||
<strong id="pricesSummaryObserved">0</strong>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-6 col-lg">
|
||||
<div class="app-market-summary-card">
|
||||
<span class="app-market-summary-label">Attention</span>
|
||||
<strong id="pricesSummaryAttention">0</strong>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-12 col-lg">
|
||||
<div class="app-market-summary-card">
|
||||
<span class="app-market-summary-label">Refreshing</span>
|
||||
<strong id="pricesSummaryLoading">0</strong>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="pricesLoading" class="app-placeholder">
|
||||
<div>
|
||||
<i class="fa-solid fa-spinner fa-spin text-body-secondary mb-3" aria-hidden="true"></i>
|
||||
@@ -73,22 +110,24 @@
|
||||
<p class="text-body-secondary mb-0">Le runtime Off-chain ne contient actuellement aucune ligne provider.</p>
|
||||
</div>
|
||||
</div>
|
||||
<div id="pricesDiagnostic" class="alert alert-warning mb-3" hidden></div>
|
||||
<div id="pricesTableContainer" class="table-responsive" hidden>
|
||||
<table id="marketPriceTable" class="table table-hover align-middle mb-0">
|
||||
<div id="pricesDiagnostic" class="alert alert-warning mb-3" role="status" aria-live="polite" hidden></div>
|
||||
<div id="pricesTableContainer" class="table-responsive app-market-table-container" hidden>
|
||||
<table id="marketPriceTable" class="table table-hover align-middle mb-0 app-market-table">
|
||||
<caption class="visually-hidden">Providers SOL/USD, disponibilité, prix exacts, fraîcheur et actions de refresh.</caption>
|
||||
<thead>
|
||||
<tr>
|
||||
<th scope="col"><span class="visually-hidden">Select</span></th>
|
||||
<th scope="col" class="app-market-selection-column">
|
||||
<input id="selectAllProviders" class="form-check-input" type="checkbox" aria-label="Select all providers" disabled>
|
||||
</th>
|
||||
<th scope="col">Provider</th>
|
||||
<th scope="col">Pair</th>
|
||||
<th scope="col">Semantics</th>
|
||||
<th scope="col">Auth</th>
|
||||
<th scope="col" class="d-none d-xl-table-cell">Semantics</th>
|
||||
<th scope="col" class="d-none d-xl-table-cell">Auth</th>
|
||||
<th scope="col">Availability</th>
|
||||
<th scope="col">Exact price</th>
|
||||
<th scope="col">Provider timestamp (ms)</th>
|
||||
<th scope="col">Received at (ms)</th>
|
||||
<th scope="col">Retry at (ms)</th>
|
||||
<th scope="col">Action</th>
|
||||
<th scope="col" class="app-market-time-column">Observation times</th>
|
||||
<th scope="col" class="app-market-time-column">Retry</th>
|
||||
<th scope="col" class="text-end">Action</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody id="marketPriceRows"></tbody>
|
||||
@@ -127,7 +166,7 @@
|
||||
<dt class="col-sm-5">Fallback Logging</dt>
|
||||
<dd id="runtimeLoggingFallback" class="col-sm-7">—</dd>
|
||||
</dl>
|
||||
<div id="runtimeDiagnostic" class="alert alert-warning mt-3 mb-0" hidden></div>
|
||||
<div id="runtimeDiagnostic" class="alert alert-warning mt-3 mb-0" role="status" aria-live="polite" hidden></div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
Reference in New Issue
Block a user