@if (vm().selectedDocument(); as document) { @if (document.sourceType === vm().eKDocumentSourceType.FOLDER) {
{{ 'XP.Knowledgebase.Folder' | translate: { Default: 'Folder' } }}

{{ document.name }}

{{ vm().folderBrowserPath(document) }}

{{ 'XP.Knowledgebase.DirectDocuments' | translate: { Default: 'Direct documents' } }}

{{ vm().folderChildCount(document.id).documentCount }}

{{ 'XP.Knowledgebase.DirectSubfolders' | translate: { Default: 'Direct subfolders' } }}

{{ vm().folderChildCount(document.id).folderCount }}

{{ 'XP.Knowledgebase.FolderBrowser' | translate: { Default: 'Folder browser' } }}

{{ 'XP.Knowledgebase.FolderBrowserDescription' | translate: { Default: 'Browse files and expand subfolders without leaving this page.' } }}

{{ document.name }} {{ vm().folderChildCount(document.id).documentCount + vm().folderChildCount(document.id).folderCount }}
@if (vm().folderBrowserLoading()) {
{{ 'XP.KEY_WORDS.Loading' | translate: { Default: 'Loading' } }}
} @else if (vm().folderBrowserNodes().length) {
} @else {
{{ 'XP.Knowledgebase.EmptyFolder' | translate: { Default: 'This folder is empty.' } }}
}
@for (node of nodes; track node.document.id) {
@if (node.document.sourceType === vm().eKDocumentSourceType.FOLDER) { }
@if ( node.document.sourceType === vm().eKDocumentSourceType.FOLDER && vm().isFolderBrowserExpanded(node.document.id) && node.children.length ) { }
}

{{ 'XP.Knowledgebase.FolderProcessingPolicy' | translate: { Default: 'Folder processing policy' } }}

{{ 'XP.Knowledgebase.KnowledgebaseDefault' | translate: { Default: 'Knowledge base default' } }}

{{ 'XP.Knowledgebase.FolderProcessingPolicyDescription' | translate : { Default: 'This folder currently follows the knowledge base defaults. A folder override should apply to new documents only; existing processed documents keep their processing snapshot until explicitly reprocessed.' } }}

} @else {
@switch (document.status) { @case (vm().eKBDocumentStatusEnum.FINISH) { {{ 'XP.Knowledgebase.ParsingComplete' | translate: { Default: 'Parsing complete' } }} } @case (vm().eKBDocumentStatusEnum.ERROR) { {{ 'XP.Knowledgebase.ParsingFailed' | translate: { Default: 'Parsing failed' } }} } @default { @if (vm().isProcessing(document.status)) { } {{ vm().documentStatusLabelKey(document.status) | translate: { Default: vm().documentStatusDefaultLabel(document.status) } }} } }
@if (vm().selectedPdfPreviewSource(); as previewSource) { } @else {

{{ 'XP.Knowledgebase.CoverUnavailable' | translate: { Default: 'Cover unavailable.' } }}

}
@if (document.processMsg) {
{{ 'XP.Knowledgebase.FailureReason' | translate: { Default: 'Failure reason' } }}
{{ vm().selectedDocumentFailureReason(document) }}
} @else {
{{ 'XP.Knowledgebase.ProcessingResult' | translate: { Default: 'Result' } }}
{{ vm().documentStatusLabelKey(document.status) | translate: { Default: vm().documentStatusDefaultLabel(document.status) } }}
}
{{ 'XP.Knowledgebase.ParsingEngine' | translate: { Default: 'Parser' } }}
{{ vm().selectedDocumentProvider(document) || '-' }}
{{ 'XP.Knowledgebase.LastRun' | translate: { Default: 'Last run' } }}
{{ vm().selectedDocumentLastRun(document) }}

{{ 'XP.Knowledgebase.ParsingProgress' | translate: { Default: 'Parsing progress' } }}

@for ( stage of [ { key: 'transform', labelKey: 'XP.Knowledgebase.TransformStage', defaultLabel: 'Convert' }, { key: 'split', labelKey: 'XP.Knowledgebase.SplitStage', defaultLabel: 'Chunk' }, { key: 'index', labelKey: 'XP.Knowledgebase.IndexStage', defaultLabel: 'Index' } ]; track stage.key ) { @if (vm().processStageState(document, $any(stage.key)) === 'active') { } {{ stage.labelKey | translate: { Default: stage.defaultLabel } }} }
@for ( stage of [ { key: 'transform', descriptionKey: 'XP.Knowledgebase.TransformStageDescription', defaultDescription: 'Document conversion' }, { key: 'split', descriptionKey: 'XP.Knowledgebase.SplitStageDescription', defaultDescription: 'Layout analysis and chunking' }, { key: 'index', descriptionKey: 'XP.Knowledgebase.IndexStageDescription', defaultDescription: 'Recognition and indexing' } ]; track stage.key ) {

{{ stage.descriptionKey | translate: { Default: stage.defaultDescription } }}

{{ vm().processStageStatusLabelKey(vm().processStageState(document, $any(stage.key))) | translate : { Default: vm().processStageStatusDefaultLabel(vm().processStageState(document, $any(stage.key))) } }}

@if (vm().processStageTimestamp(document, $any(stage.key)); as timestamp) {

{{ timestamp }}

}
}
@if (vm().knowledgebaseComponent.wikiEnabled()) { }

{{ 'XP.Knowledgebase.DocumentInformation' | translate: { Default: 'Document information' } }}

{{ 'XP.KEY_WORDS.Type' | translate: { Default: 'Type' } }}
{{ document.type || '-' }}
{{ 'XP.KEY_WORDS.Language' | translate: { Default: 'Language' } }}
{{ vm().selectedDocumentLanguage(document) }}
{{ 'XP.Knowledgebase.FileSize' | translate: { Default: 'File size' } }}
{{ vm().selectedDocumentSize(document) }}
{{ 'XP.KEY_WORDS.CreatedAt' | translate: { Default: 'Created at' } }}
{{ vm().selectedDocumentCreatedTimestamp(document) }}
{{ 'XP.Knowledgebase.PageCount' | translate: { Default: 'Pages' } }}
{{ vm().selectedDocumentPageCount(document) ?? '-' }}
{{ 'XP.Knowledgebase.InspectorDocumentSource' | translate: { Default: 'Source' } }}
{{ vm().selectedDocumentSource(document) }}
{{ 'XP.Knowledgebase.MimeType' | translate: { Default: 'MIME type' } }}
{{ vm().selectedDocumentMimeType(document) }}
{{ 'XP.Knowledgebase.ChunkCount' | translate: { Default: 'Chunks' } }}
{{ vm().selectedDocumentChunkCount(document) ?? '-' }}
{{ 'XP.Knowledgebase.TokenCount' | translate: { Default: 'Tokens' } }}
{{ vm().selectedDocumentTokenCount(document) ?? '-' }}
{{ 'XP.Knowledgebase.ProcessingDuration' | translate: { Default: 'Duration' } }}
{{ vm().selectedDocumentProcessDuration(document) }}
} }