22 lines
565 B
JavaScript
22 lines
565 B
JavaScript
|
|
const ONLYOFFICE_EXTENSIONS = new Set(['docx', 'xlsx', 'pptx'])
|
||
|
|
|
||
|
|
function supportsOnlyOfficePreview(document) {
|
||
|
|
return ONLYOFFICE_EXTENSIONS.has(String(document?.extension || '').toLowerCase())
|
||
|
|
}
|
||
|
|
|
||
|
|
export function resolveKnowledgePreviewMode(document, options = {}) {
|
||
|
|
if (!document) {
|
||
|
|
return 'none'
|
||
|
|
}
|
||
|
|
|
||
|
|
if (supportsOnlyOfficePreview(document) && options.onlyOfficeAvailable) {
|
||
|
|
return 'onlyoffice'
|
||
|
|
}
|
||
|
|
|
||
|
|
return document.previewKind || 'unsupported'
|
||
|
|
}
|
||
|
|
|
||
|
|
export function canUseOnlyOfficePreview(document) {
|
||
|
|
return supportsOnlyOfficePreview(document)
|
||
|
|
}
|