v0.1.0-pre.058

This commit is contained in:
2026-07-27 02:02:11 +02:00
parent e56f2561c5
commit e828677201
22 changed files with 378 additions and 192 deletions

View File

@@ -1,5 +1,5 @@
<!-- file: kb-app-demo-desktop/frontend/demo_backfill.html -->
<!-- version: 5 -->
<!-- version: 6 -->
<!DOCTYPE html>
<html lang="fr">
@@ -97,7 +97,7 @@
<div aria-labelledby="programBackfillHeading" class="accordion-collapse collapse" data-bs-parent="#backfillAccordion" id="programBackfillCollapse">
<div class="accordion-body">
<div class="row g-3 mb-3">
<div class="col-12"><label class="form-label" for="programAddressInput">Program ID</label><input class="form-control font-monospace" id="programAddressInput" /></div>
<div class="col-12"><label class="form-label" for="programAddressInput">Program ID</label><input class="form-control font-monospace" id="programAddressInput" list="programAddressOptions" autocomplete="off" /><datalist id="programAddressOptions"></datalist></div>
<div class="col-12"><label class="form-label" for="programAnchorInput">Signature d'ancrage</label><input class="form-control font-monospace" id="programAnchorInput" />
<div class="form-text">Optionnelle pour « Avant, plus anciennes » : vide, la recherche commence aux transactions les plus récentes. Obligatoire pour « Après, plus récentes ».</div>
</div>

View File

@@ -35,7 +35,7 @@
<div class="osb-scrollable pt-1 pb-4" data-simplebar>
<div class="container-fluid px-4 py-4">
<div class="row g-4 justify-content-center">
<div class="col-12">
<div class="col-12 col-xl-5">
<div class="card shadow-sm border-0 mb-4">
<div class="card-body">
<h1 class="h3 card-title">Extraction transactionnelle canonical vers core</h1>

View File

@@ -32,7 +32,7 @@
<div class="osb-scrollable pt-1 pb-4" data-simplebar>
<div class="container-fluid px-4 py-4">
<div class="row g-4 justify-content-center">
<div class="col-12">
<div class="col-12 col-xl-5">
<div class="card shadow-sm border-0 mb-4">
<div class="card-body">
<h1 class="h4 mb-3">Sélection bornée</h1>

View File

@@ -1,5 +1,5 @@
<!-- file: kb-app-demo-desktop/frontend/demo_http.html -->
<!-- version: 5 -->
<!-- version: 6 -->
<!DOCTYPE html>
<html lang="fr">
@@ -27,7 +27,7 @@
<div class="osb-scrollable pt-1 pb-4" data-simplebar>
<div class="container-fluid px-4 py-4">
<div class="row g-4 justify-content-center">
<div class="col-12">
<div class="col-12 col-xl-5">
<div class="card shadow-sm border-0">
<div class="card-body">
<h1 class="h4 card-title">Requête HTTP Solana standard</h1>

View File

@@ -202,6 +202,7 @@
<div class="col-12 col-lg-4">
<label for="programContainsInput" class="form-label">Program ID contient</label>
<input id="programContainsInput" class="form-control font-monospace" type="text" list="knownProgramDatalist" autocomplete="off" />
<datalist id="knownProgramDatalist"></datalist>
</div>
<div class="col-6 col-lg-1">
<label for="programLimitInput" class="form-label">Limite</label>
@@ -439,7 +440,6 @@
</div>
</div>
</footer>
<datalist id="knownProgramDatalist"></datalist>
<script type="module" src="ts/demo_sql_replay_candidates.ts" defer></script>
</body>

View File

@@ -1,5 +1,5 @@
<!-- file: kb-app-demo-desktop/frontend/demo_ws.html -->
<!-- version: 7 -->
<!-- version: 8 -->
<!DOCTYPE html>
<html lang="fr">
@@ -27,7 +27,7 @@
<div class="osb-scrollable pt-1 pb-4" data-simplebar>
<div class="container-fluid px-4 py-4">
<div class="row g-4 justify-content-center">
<div class="col-12">
<div class="col-12 col-xl-5">
<div class="card shadow-sm border-0">
<div class="card-body">
<h1 class="h4 card-title">Souscription WebSocket Solana standard</h1>

View File

@@ -1,5 +1,5 @@
// file: kb_app_demo/frontend/sass/splash.scss
// version: 3
// version: 4
@font-face {
font-family: 'Dos Amazigh';
@@ -66,6 +66,7 @@ body {
width: 50%;
max-height: 30%;
overflow-y: auto;
scrollbar-width: none;
color: white;
font-family: monospace;
font-size: 12px;
@@ -77,17 +78,25 @@ body {
#messages-container {
position: absolute;
font-family: Arial, sans-serif;
font-size: 14px;
bottom: 0;
left: 0;
width: 100%;
max-height: 30%;
overflow-y: auto;
scrollbar-width: none;
background-color: rgba(0, 0, 0, 0.1);
padding: 10px 10px 40px;
z-index: 2;
box-sizing: border-box;
}
#debug-info::-webkit-scrollbar,
#messages-container::-webkit-scrollbar {
display: none;
}
.splash-message {
margin-bottom: 8px;
padding: 6px 10px;

View File

@@ -1,5 +1,5 @@
// file: kb-app-demo-desktop/frontend/ts/demo_backfill.ts
// version: 7
// version: 8
import * as bootstrap from "bootstrap";
import "simplebar";
@@ -210,6 +210,17 @@ async function cancelBackfill(): Promise<void> {
async function loadOptions(): Promise<void> {
const options = await invoke<DemoBackfillOptionsPayload>("demo_backfill_options");
const optionsWithPrograms = options as DemoBackfillOptionsPayload & {
programs: Array<{ code: string; programId: string }>;
};
const programOptions = element<HTMLDataListElement>("#programAddressOptions");
programOptions.replaceChildren();
for (const program of optionsWithPrograms.programs) {
const option = document.createElement("option");
option.value = program.programId;
option.label = program.code;
programOptions.append(option);
}
const roleSelect = element<HTMLSelectElement>("#backfillRoleSelect");
roleSelect.replaceChildren();
for (const role of options.roles) {

View File

@@ -1,6 +1,7 @@
// file: kb-app-demo-desktop/frontend/ts/splash.ts
// version: 2
// version: 3
import { invoke } from "@tauri-apps/api/core";
import { listen } from "@tauri-apps/api/event";
import type { SplashOrder } from "./bindings/kb_app_demo_desktop/splash/SplashOrder.ts";
@@ -105,6 +106,7 @@ async function initializeSplash(): Promise<void> {
await listen<SplashOrder>("splash", event => {
void handleSplashOrder(event.payload);
});
await invoke("splash_frontend_ready");
}
document.addEventListener("DOMContentLoaded", () => {