KAI-komponenter
KAI-komponentene gir felles presentasjon av AI-assistanse, AI-generert innhold og valideringsresultater. De skal gjøre det tydelig når ePortal viser forslag eller analyser som kommer fra KAI.
Feature-tabell
| Komponent |
Selector |
Hovedfunksjoner |
Import |
| AiChatComponent |
app-ai-chat |
Chatpanel, mode, context, forslag, actions, datauttrekk |
AiChatModule |
| KaiValidationResultComponent |
app-kai-validation-result |
Dockbart valideringspanel, severity, record-lenker, apply fix |
Standalone |
| KaiDisclosureComponent |
app-kai-disclosure |
Badge/banner som forklarer AI-generert eller AI-assistert innhold |
Standalone |
| KAI interne subkomponenter |
kai-suggested-actions, kai-kpi-row, kai-data-table, kai-chart |
Renderes av chatflyten |
Deklarert i AiChatModule |
AI-chat
| Del |
Sti |
| Komponent |
ui/ePortal.ui/src/app/shared/components/ai-chat/ai-chat.component.ts |
| Modul |
ui/ePortal.ui/src/app/shared/components/ai-chat/ai-chat.module.ts |
app-ai-chat brukes når en side skal tilby KAI-chat med kontekst fra fagmodulen. Komponenten støtter flere modes og kan enten vises som flytende panel eller sidepanel.
Brukseksempel
<app-ai-chat
[context]="chatContext"
position="bottom-right"
[initialExpanded]="false"
[hasAccess]="canUseKai"
mode="controller"
[allowModeSwitch]="canSwitchKaiMode"
(highlightRecords)="highlightRows($event)"
(anomaliesDetected)="showAnomalies($event)"
(actionPerformed)="handleKaiAction($event)">
</app-ai-chat>
chatContext: AIChatContext = {
fromDate: this.periodStart,
toDate: this.periodEnd,
employeeNo: this.employeeNo,
moduleContext: 'time',
data: this.rows,
};
API
| Type |
Navn |
Default |
Beskrivelse |
| Input |
context |
påkrevd |
Periode, ansatt, modul og valgfri data. |
| Input |
position |
bottom-right |
bottom-right, bottom-left eller side. |
| Input |
initialExpanded |
false |
Starter åpnet. |
| Input |
hasAccess |
true |
Skjuler/deaktiverer chat hvis bruker mangler tilgang. |
| Input |
mode |
controller |
Chatmodus. |
| Input |
allowModeSwitch |
false |
Lar bruker bytte modus. |
| Output |
highlightRecords |
|
Emitter rad-id-er som bør markeres. |
| Output |
anomaliesDetected |
|
Emitter anomalirapport. |
| Output |
chatToggled |
|
Emitter åpen/lukket state. |
| Output |
dockToggled |
|
Emitter dock-state. |
| Output |
actionPerformed |
|
Emitter valgt KAI-handling og data. |
KAI validation result
| Del |
Sti |
| Komponent |
ui/ePortal.ui/src/app/shared/components/kai-validation-result/kai-validation-result.component.ts |
Komponenten viser en liste av valideringsbrudd med severity, berørte rader og valgfri automatisk retting.
Brukseksempel
<app-kai-validation-result
[violations]="validationViolations"
[summary]="validationSummary"
[title]="'Kai.Validation.Title' | translate"
[initialDocked]="true"
[allowDocking]="true"
[allowDragging]="true"
(showRecords)="focusRecords($event)"
(applyFix)="applyValidationFix($event)"
(close)="hideValidationPanel()">
</app-kai-validation-result>
openValidationResult(): void {
this.validationPanel.open(this.validationViolations, this.validationSummary);
}
API
| Type |
Navn |
Default |
Beskrivelse |
| Input |
violations |
[] |
Valideringsbrudd. |
| Input |
summary |
null |
Summering av totaler og severity. |
| Input |
title |
'' |
Tittel, vanligvis oversatt i parent. |
| Input |
showAsInline |
false |
Inline-visning i stedet for panel. |
| Input |
initialDocked |
true |
Starter docked. |
| Input |
allowDocking |
true |
Tillater dock/undock. |
| Input |
allowDragging |
true |
Tillater dragging når undocked. |
| Output |
showRecords |
|
Emitter berørte record-id-er. |
| Output |
applyFix |
|
Emitter valgt violation for retting. |
| Output |
close |
|
Panel lukkes. |
| Output |
dockChanged |
|
Dock-state endres. |
KAI disclosure
| Del |
Sti |
| Komponent |
ui/ePortal.ui/src/app/shared/components/kai-disclosure/kai-disclosure.component.ts |
Bruk disclosure-komponenten når en tekst, analyse eller handling er foreslått, assistert eller generert av KAI.
<app-kai-disclosure
mode="badge"
variant="suggested"
[compact]="true">
</app-kai-disclosure>
| Type |
Navn |
Default |
Beskrivelse |
| Input |
mode |
badge |
badge eller banner. |
| Input |
variant |
suggested |
generated, suggested eller assisted. |
| Input |
compact |
false |
Kompakt visning. |
Interne chat-renderere
| Selector |
Bruk |
kai-suggested-actions |
Viser actions fra chatrespons og emitter valgt prompt via actionSelected. |
kai-kpi-row |
Viser KPI-kort fra cards. |
kai-data-table |
Viser tabell-payload, bruker valgfri exportData og emitter export med eksportdatasett. |
kai-chart |
Viser chart-payload med ngx-charts datastruktur. |
Disse brukes primært av app-ai-chat. Bruk dem bare direkte hvis ny side allerede følger KAI chat-kontraktene.
Kjente fallgruver
| Fallgruve |
Riktig mønster |
| Vise AI-generert innhold uten disclosure |
Legg inn app-kai-disclosure. |
| La chat være tilgjengelig uten tilgangssjekk |
Bind hasAccess til faktisk rettighet. |
Håndtere applyFix inne i validation-komponenten |
Parent eier domenelogikk og lagring. |
Sende store datasett ukritisk i context.data |
Send bare data KAI trenger for siden eller perioden. |
Relaterte sider