From 69927ca5e6c8734a12beb8466b96d5c647077597 Mon Sep 17 00:00:00 2001
From: Mikei386 <44135113+Mikei386@users.noreply.github.com>
Date: Thu, 1 Oct 2026 12:27:12 +0200
Subject: [PATCH] Group tool libraries by model and component role
---
README.md | 2 +-
catalog-ui.js | 7 ++++++-
style.css | 3 +++
3 files changed, 10 insertions(+), 2 deletions(-)
diff --git a/README.md b/README.md
index e71a377..c3f0f7a 100644
--- a/README.md
+++ b/README.md
@@ -23,7 +23,7 @@ Bestätigung startet den Build. Audio Separator besitzt einen eigenen Installer
BS-/MelBand-RoFormer-Pakete werden einschließlich passender YAML-Konfiguration
geladen; ungeprüfte Hub-Dateien werden dadurch nicht freigeschaltet. Die einzelnen Laufzeiten stehen
nicht mehr separat in der Seitenleiste. Bibliothek und Profile verwenden
-kompakte, aufklappbare Zeilen: Details, API-Freigabe, Komponenten und Aktionen
+kompakte, aufklappbare Zeilen. Bibliotheken gruppieren die Dateien nach Hauptgewichten, Vision-/Audio-Projektoren, Textencodern, VAE, Konfigurationen und weiteren Zusatzkomponenten; nur vorhandene Gruppen werden angezeigt. Unbekannte Rollen bleiben separat sichtbar. In den Zeilen: Details, API-Freigabe, Komponenten und Aktionen
stehen in der geöffneten Zeile. Downloads behalten Fortschritt, Geschwindigkeit,
Restzeit und Warteschlangenaktionen. Der laufende Betrieb wird zentral unter
**Steuerung** angezeigt; Testbereiche behalten ihre jeweiligen Formulare.
diff --git a/catalog-ui.js b/catalog-ui.js
index 2adf72f..5098819 100644
--- a/catalog-ui.js
+++ b/catalog-ui.js
@@ -32,7 +32,12 @@ window.CatalogUI = (() => {
}
function renderLibrary() {
const openRows=new Set([...root.querySelectorAll('.detail-row[open]')].map(x=>x.dataset.rowId));
- el('hub-results').innerHTML = state.entries.filter(x => x.kind === kind).map(x => ` Quelle: ${escape(x.repo)} ${x.profile_eligible?'Modelldatei · über ein Profil verwenden':'Zusatzdatei · wird einem Modellprofil unter Komponenten zugeordnet'} Revision ${escape(x.revision)} ${x.upstream_hash_verified ? 'SHA-256 mit Quelle geprüft' : 'SHA-256 lokal erfasst; Größe mit Quelle geprüft'} Verwendet von Profil: ${x.used_by_profiles.map(p=>escape(p.name)).join(", ")}. Bitte zuerst das Profil löschen.${escape(x.file)}${escape(x.role_label)}${size(x.size)}${x.used_by_profiles?.length?`${x.used_by_profiles.length} Profil(e)`:'Nicht zugeordnet'}
Version und Integrität
Unter „Entdecken“ kannst du Dateien für diesen Bereich auswählen und herunterladen.
Quelle: ${escape(x.repo)}
${x.profile_eligible?'Modelldatei · über ein Profil verwenden':'Zusatzdatei · wird einem Modellprofil unter Komponenten zugeordnet'}
Revision ${escape(x.revision)}
${x.upstream_hash_verified ? 'SHA-256 mit Quelle geprüft' : 'SHA-256 lokal erfasst; Größe mit Quelle geprüft'}
Verwendet von Profil: ${x.used_by_profiles.map(p=>escape(p.name)).join(", ")}. Bitte zuerst das Profil löschen.
`:""}Unter „Entdecken“ kannst du Dateien für diesen Bereich auswählen und herunterladen.