diff --git a/packages/sdk/src/core/goview/convert.ts b/packages/sdk/src/core/goview/convert.ts index 17bd3fb..e78f8a4 100644 --- a/packages/sdk/src/core/goview/convert.ts +++ b/packages/sdk/src/core/goview/convert.ts @@ -123,10 +123,16 @@ function isIframe(c: GoViewComponentLike): boolean { k.includes('browser') || k.includes('webpage') || k.includes('website') || + // Chinese low-code widgets / dashboards sometimes label this more directly. + k.includes('网页') || + k.includes('嵌入') || + k.includes('内嵌') || + k.includes('页面') || // Chinese low-code widgets sometimes call this H5. k === 'h5' || k.includes('h5_') || k.includes('_h5') || + k.includes('h5页面') || // keep the plain 'web' check last; it's broad and may overlap other widgets. k === 'web' || k.endsWith('_web') || @@ -150,6 +156,17 @@ function isVideo(c: GoViewComponentLike): boolean { // Misspellings / aliases seen in forks. if (k.includes('vedio')) return true; + // Chinese low-code widget names. + if ( + k.includes('视频') || + k.includes('监控') || + k.includes('直播') || + k.includes('摄像') || + k.includes('摄像头') + ) { + return true; + } + // Other names seen in the wild. return ( k.includes('mp4') || @@ -270,6 +287,9 @@ function looksLikeVideoOption(option: unknown): boolean { if ( 'videoUrl' in o || 'videoSrc' in o || + 'playUrl' in o || + 'liveUrl' in o || + 'streamUrl' in o || 'mp4' in o || 'm3u8' in o || 'flv' in o ||