v0.5.1-pre.008

This commit is contained in:
2026-08-10 11:21:07 +02:00
parent a2820062eb
commit 0e05c660c6
90 changed files with 2490 additions and 1613 deletions

View File

@@ -1,5 +1,5 @@
<!-- file: kb-app-demo-desktop/frontend/demo_config.html -->
<!-- version: 5 -->
<!-- version: 6 -->
<!DOCTYPE html>
<html lang="fr">
@@ -46,7 +46,7 @@
<div class="col-12 col-xl-6">
<div class="card shadow-sm border-0 h-100">
<div class="card-body">
<h2 class="h5 card-title mb-3">Configuration active</h2>
<h2 class="h5 card-title mb-3">Configuration publique</h2>
<div id="activeProfileJson" class="app-config-box app-json-viewer mb-0">Chargement...</div>
</div>
</div>
@@ -55,7 +55,7 @@
<div class="col-12 col-xl-6">
<div class="card shadow-sm border-0 h-100">
<div class="card-body">
<h2 class="h5 card-title mb-3">Configuration complète</h2>
<h2 class="h5 card-title mb-3">Diagnostic borné</h2>
<div id="fullConfigJson" class="app-config-box app-json-viewer mb-0">Chargement...</div>
</div>
</div>
@@ -64,7 +64,7 @@
<div class="col-12">
<div class="card shadow-sm border-0">
<div class="card-body">
<h2 class="h5 card-title mb-3">Schéma JSON embarqué</h2>
<h2 class="h5 card-title mb-3">Schéma JSON de composition</h2>
<div id="schemaJson" class="app-config-box app-json-viewer mb-0">Chargement...</div>
</div>
</div>
@@ -84,4 +84,4 @@
<script type="module" src="ts/demo_config.ts" defer></script>
</body>
</html>
</html>

View File

@@ -1,5 +1,5 @@
// file: kb-app-demo-desktop/frontend/ts/demo_config.ts
// version: 6
// version: 7
import * as bootstrap from "bootstrap";
import "simplebar";
@@ -55,12 +55,12 @@ function parseSchemaJson(schemaJson: string): unknown {
async function loadDemoConfig(): Promise<void> {
try {
const payload = await invoke<DemoConfigPayload>("load_demo_config");
setText("#configPath", payload.config_path);
setText("#configPath", payload.diagnostic_config.sources.find(source => source.category === "composition")?.path ?? "non disponible");
setText("#activeProfileName", payload.active_profile_name);
setText("#activeEnvironment", payload.environment);
renderJsonViewer("#activeProfileJson", payload.active_profile);
renderJsonViewer("#fullConfigJson", payload.app_config);
renderJsonViewer("#schemaJson", parseSchemaJson(payload.schema_json));
renderJsonViewer("#activeProfileJson", payload.public_config);
renderJsonViewer("#fullConfigJson", payload.diagnostic_config);
renderJsonViewer("#schemaJson", parseSchemaJson(payload.composition_schema_json));
} catch (caughtError) {
const message = caughtError instanceof Error ? caughtError.message : String(caughtError);
setText("#activeProfileJson", `Erreur pendant le chargement de la configuration : ${message}`);

View File

@@ -1,5 +1,5 @@
// file: kb-app-demo-desktop/frontend/ts/demo_execution_spl.ts
// version: 9
// version: 10
import * as bootstrap from "bootstrap";
import "simplebar";
@@ -698,7 +698,7 @@ async function loadToken2022Fixture(): Promise<void> {
profileName: element<HTMLSelectElement>("#executionProfileSelect").value,
});
applyToken2022Fixture();
element<HTMLElement>("#token_2022FixtureHelp").textContent = `Fixture: ${token_2022Fixture.fixturePath} — program=${token_2022Fixture.programId}`;
element<HTMLElement>("#token_2022FixtureHelp").textContent = `Fixture Token-2022 chargée — program=${token_2022Fixture.programId}`;
appendLog({
timestamp: new Date().toISOString(),
level: "info",

View File

@@ -1,5 +1,5 @@
// file: kb-app-demo-desktop/frontend/ts/demo_http.ts
// version: 7
// version: 9
import * as bootstrap from "bootstrap";
import "simplebar";
@@ -7,6 +7,7 @@ import ResizeObserver from "resize-observer-polyfill";
import { invoke } from "@tauri-apps/api/core";
import { frontendDebug, frontendError, installFrontendConsoleBridge } from "./frontend_log.ts";
import { renderJsonViewer } from "./json_viewer.ts";
import type { DemoHttpEndpointPayload } from "./bindings/kb_app_demo_desktop/demo_http/DemoHttpEndpointPayload.ts";
import type { DemoHttpExecutionPayload } from "./bindings/kb_app_demo_desktop/demo_http/DemoHttpExecutionPayload.ts";
import type { DemoHttpMethodOption } from "./bindings/kb_app_demo_desktop/demo_http/DemoHttpMethodOption.ts";
import type { DemoHttpOptionsPayload } from "./bindings/kb_app_demo_desktop/demo_http/DemoHttpOptionsPayload.ts";
@@ -96,7 +97,6 @@ function formatHttpExecutionPayload(payload: DemoHttpExecutionPayload): unknown
return {
endpointName: payload.endpointName,
provider: payload.provider,
endpointUrl: payload.endpointUrl,
role: payload.role,
method: payload.method,
requestKind: payload.requestKind,
@@ -124,7 +124,7 @@ async function refreshHttpOptions(): Promise<void> {
async function refreshHttpPool(): Promise<void> {
try {
const snapshots = await invoke("demo_http_list_pool_clients");
const snapshots = await invoke<DemoHttpEndpointPayload[]>("demo_http_list_pool_clients");
renderJsonViewer("#httpPoolOutput", snapshots);
} catch (caughtError) {
const message = caughtError instanceof Error ? caughtError.message : String(caughtError);

View File

@@ -1,5 +1,5 @@
// file: kb-app-demo-desktop/frontend/ts/demo_ws.ts
// version: 8
// version: 10
import * as bootstrap from "bootstrap";
import "simplebar";
@@ -8,6 +8,7 @@ import {invoke} from "@tauri-apps/api/core";
import {listen} from "@tauri-apps/api/event";
import {frontendDebug, frontendError, installFrontendConsoleBridge} from "./frontend_log.ts";
import {renderJsonViewer} from "./json_viewer.ts";
import type {DemoWsEndpointPayload} from "./bindings/kb_app_demo_desktop/demo_ws/DemoWsEndpointPayload.ts";
import type {DemoWsExecutionPayload} from "./bindings/kb_app_demo_desktop/demo_ws/DemoWsExecutionPayload.ts";
import type {DemoWsMessagePayload} from "./bindings/kb_app_demo_desktop/demo_ws/DemoWsMessagePayload.ts";
import type {DemoWsMethodOption} from "./bindings/kb_app_demo_desktop/demo_ws/DemoWsMethodOption.ts";
@@ -177,7 +178,6 @@ function formatWsExecutionPayload(payload: DemoWsExecutionPayload): string {
const header = {
endpointName: payload.endpointName,
provider: payload.provider,
endpointUrl: payload.endpointUrl,
role: payload.role,
method: payload.method,
requestKind: payload.requestKind,
@@ -214,7 +214,7 @@ async function refreshWsOptions(): Promise<void> {
async function refreshWsPool(): Promise<void> {
try {
const snapshots = await invoke("demo_ws_list_pool_clients");
const snapshots = await invoke<DemoWsEndpointPayload[]>("demo_ws_list_pool_clients");
renderJsonViewer("#wsPoolOutput", snapshots);
} catch (caughtError) {
const message = caughtError instanceof Error ? caughtError.message : String(caughtError);