feat: 完善知识库预览功能与配置管理优化

This commit is contained in:
caoxiaozhu
2026-05-09 07:29:49 +00:00
parent d9133193e8
commit 94122fd34b
26 changed files with 20232 additions and 300 deletions

View File

@@ -0,0 +1,54 @@
import assert from 'node:assert/strict'
import { buildOnlyOfficePreviewConfig } from '../src/views/scripts/onlyOfficePreviewConfig.js'
function testUsesExplicitPixelHeightFromViewport() {
const config = buildOnlyOfficePreviewConfig({ width: '50%', height: '100%' }, { viewportHeight: 900 })
assert.equal(config.width, '100%')
assert.equal(config.height, '680px')
}
function testFallsBackToSafeDefaultHeight() {
const config = buildOnlyOfficePreviewConfig({}, {})
assert.equal(config.height, '720px')
}
function testClampsSmallViewportHeight() {
const config = buildOnlyOfficePreviewConfig({}, { viewportHeight: 600 })
assert.equal(config.height, '520px')
}
function testUsesEmbeddedPreviewModeWithMinimalToolbar() {
const config = buildOnlyOfficePreviewConfig(
{
editorConfig: {
customization: {
compactHeader: true
}
}
},
{}
)
assert.equal(config.type, 'embedded')
assert.deepEqual(config.editorConfig.embedded, {
embedUrl: '',
fullscreenUrl: '',
saveUrl: '',
shareUrl: '',
toolbarDocked: 'top'
})
}
function run() {
testUsesExplicitPixelHeightFromViewport()
testFallsBackToSafeDefaultHeight()
testClampsSmallViewportHeight()
testUsesEmbeddedPreviewModeWithMinimalToolbar()
console.log('onlyoffice preview config tests passed')
}
run()