- ClawdDotNet.Web: Kestrel im Prozess der Anwendung, Token-Absicherung (TokenGate mit FixedTimeEquals), Endpunkte unter /api, Ereignisstrom unter /events (Server-Sent Events) und fortlaufendes Log-Streaming. - Weboberflaeche (wwwroot/): Vollstaendiges Single-Page-Frontend mit nativem HTML5, CSS3 und ES-Modulen ohne Buildschritt (strikt textContent, #-Routing, sofortiger Login-Sprung bei fehlendem Token, Light/Dark-Theme, lokale Barlow-Schriften). - ClawdDotNet.App: Fachlogik aus den Avalonia-ViewModels in Dienste herausgeloest (AgentAdministration, JobAdministration, ServiceAdministration, RunCoordinator) und ueber InstanceChange synchronisiert. - Tests: ClawdDotNet.Web.Tests und ClawdDotNet.App.Tests hinzugefuegt, alle 684 Tests erfolgreich.
75 lines
2.6 KiB
JavaScript
75 lines
2.6 KiB
JavaScript
// ClawdDotNet — Platzhalter-Ansichten für noch nicht freigegebene Kern-Endpunkte
|
|
//
|
|
// Leitfaden Abschnitt 7: Sicherung, Einstellungen und Agenten-Chats (Analyse).
|
|
|
|
import { erstelleElement, erstelleKarte, erstelleIcon, PFADE } from "../modules/dom.js";
|
|
|
|
export function rendereSicherung() {
|
|
const container = document.getElementById("ansicht-inhalt");
|
|
if (!container) return;
|
|
container.replaceChildren();
|
|
|
|
const layout = erstelleElement("div", { klasse: "platzhalter-ansicht" });
|
|
layout.append(erstelleElement("h1", { text: "Datensicherung & Wiederherstellung" }));
|
|
|
|
const karte = erstelleKarte("In Vorbereitung", [
|
|
erstelleElement("p", {
|
|
klasse: "gedaempft",
|
|
text: "Die API-Endpunkte für die automatisierte Sicherung und Rücksicherung über das WebUI befinden sich in Arbeit."
|
|
}),
|
|
erstelleElement("p", {
|
|
klasse: "hinweis",
|
|
text: "Bitte verwende für die Sicherung von Instanzen aktuell die Desktop-Oberfläche von ClawdDotNet."
|
|
})
|
|
]);
|
|
|
|
layout.append(karte);
|
|
container.append(layout);
|
|
}
|
|
|
|
export function rendereEinstellungen() {
|
|
const container = document.getElementById("ansicht-inhalt");
|
|
if (!container) return;
|
|
container.replaceChildren();
|
|
|
|
const layout = erstelleElement("div", { klasse: "platzhalter-ansicht" });
|
|
layout.append(erstelleElement("h1", { text: "Instanz-Einstellungen" }));
|
|
|
|
const karte = erstelleKarte("In Vorbereitung", [
|
|
erstelleElement("p", {
|
|
klasse: "gedaempft",
|
|
text: "Die Konfiguration der Instanz (Port, Token, Logging, Budget) erfolgt über die Datei 'InstanceSettings.json' bzw. über den Einstellungsdialog im Desktop-Fenster."
|
|
}),
|
|
erstelleElement("p", {
|
|
klasse: "hinweis",
|
|
text: "Ein dedizierter Web-Endpunkt zum Schreiben sensibler Zugangsdaten ist für einen späteren Meilenstein vorgesehen."
|
|
})
|
|
]);
|
|
|
|
layout.append(karte);
|
|
container.append(layout);
|
|
}
|
|
|
|
export function rendereAgentenChats() {
|
|
const container = document.getElementById("ansicht-inhalt");
|
|
if (!container) return;
|
|
container.replaceChildren();
|
|
|
|
const layout = erstelleElement("div", { klasse: "platzhalter-ansicht" });
|
|
layout.append(erstelleElement("h1", { text: "Agenten-Kommunikation" }));
|
|
|
|
const karte = erstelleKarte("Analyse: Interne Agenten-Chats", [
|
|
erstelleElement("p", {
|
|
klasse: "gedaempft",
|
|
text: "Die Protokollierung und Auswertung der direkten Kommunikation zwischen zwei Agenten (A2A) wird mit Vorhaben #208 bereitgestellt."
|
|
}),
|
|
erstelleElement("p", {
|
|
klasse: "hinweis",
|
|
text: "Direkte Chats mit Agenten können im Bereich 'Chat' geführt werden."
|
|
})
|
|
]);
|
|
|
|
layout.append(karte);
|
|
container.append(layout);
|
|
}
|