' + escapeHtml(cmd.label) + '
' + + '' + escapeHtml(cmd.description) + '
' + + 'diff --git a/plugins/ms-ai-architect/playground/ms-ai-architect-v3.html b/plugins/ms-ai-architect/playground/ms-ai-architect-v3.html index 7f70b13..660ad56 100644 --- a/plugins/ms-ai-architect/playground/ms-ai-architect-v3.html +++ b/plugins/ms-ai-architect/playground/ms-ai-architect-v3.html @@ -1440,7 +1440,7 @@ if (active === 'onboarding') renderOnboardingSurface(); else if (active === 'home') renderHomeSurface(); else if (active === 'project') renderProjectSurface(); - else if (active === 'catalog') renderCatalogStub(); + else if (active === 'catalog') renderCatalogSurface(); } function navigate(surface) { @@ -1920,10 +1920,164 @@ ); } - function renderCatalogStub() { + // ============================================================ + // CATALOG SURFACE (Step 9) + // ============================================================ + // + // 24 commands gruppert i 5 .expansion-grupper (CATALOG.categories) med + // søke-input som filtrerer på id+label+description+argument_hint. + // Hver kategori-expansion rendrer en .catalog-cards-grid med kort. + // "Åpne skjema" på et kort åpner renderCommandForm() i modal. + // + // Søk: input-event oppdaterer modul-lokal catalogSearchQuery og + // re-rendrer kun groups-containeren (bevarer fokus/cursor i søkefeltet). + // Når query er ikke-tom forces alle expansions åpne. I tom-state er + // 'regulatory' åpen som standard (mest brukt entry-point). + // + // Verktøy-commands får .catalog-tool-notice "Verktøy"-pill + samme + // skjema-modal — ingen rapport-import (parser/renderer hopper dem over). + + let catalogSearchQuery = ''; + + function catalogMatches(cmd, q) { + if (!q) return true; + const hay = ( + (cmd.id || '') + ' ' + + (cmd.label || '') + ' ' + + (cmd.description || '') + ' ' + + (cmd.argument_hint || '') + ).toLowerCase(); + return hay.indexOf(q) >= 0; + } + + function renderCatalogCardHtml(cmd) { + const isVerktoy = !cmd.produces_report; + const pill = isVerktoy + ? 'Verktøy' + : 'Rapport'; + const hintHtml = cmd.argument_hint + ? '' + escapeHtml(cmd.argument_hint) + '' + : ''; + const verktoyNotice = isVerktoy + ? '
' + escapeHtml(cmd.description) + '
' + + 'Ingen treff i denne kategorien.
'; + return ( + 'Command-katalog fylles i Step 9.
24 commands gruppert i 5 kategorier. Åpne skjema for å bygge en pipeline-streng som kopieres til terminalen og kjøres med Claude Code.
' + + 'Dette er et verktøy. Skjemaet bygger en pipeline-streng — ingen rapport-import.
' + + '' + escapeHtml(cmd.description) + '
' + + '/architect:' + escapeHtml(cmd.id) + '' + + '