feat(sdk): broaden goView iframe/video import support
This commit is contained in:
parent
3d9154baf7
commit
9ac5bbaa09
@ -14,6 +14,10 @@ export interface GoViewIframeOption {
|
||||
iframeUrl?: unknown;
|
||||
iframeSrc?: unknown;
|
||||
embedUrl?: unknown;
|
||||
frameUrl?: unknown;
|
||||
frameSrc?: unknown;
|
||||
webUrl?: unknown;
|
||||
webpageUrl?: unknown;
|
||||
|
||||
// list-ish shapes (some low-code editors model embeds as a list even for a single item)
|
||||
sources?: unknown;
|
||||
@ -133,7 +137,15 @@ function pickFirstUrlFromList(input: unknown): string {
|
||||
function pickSrc(option: GoViewIframeOption): string {
|
||||
// 1) Prefer explicit iframe-ish URL fields.
|
||||
const url =
|
||||
pickUrlLike({ iframeUrl: option.iframeUrl, iframeSrc: option.iframeSrc, embedUrl: option.embedUrl }) ||
|
||||
pickUrlLike({
|
||||
iframeUrl: option.iframeUrl,
|
||||
iframeSrc: option.iframeSrc,
|
||||
embedUrl: option.embedUrl,
|
||||
frameUrl: option.frameUrl,
|
||||
frameSrc: option.frameSrc,
|
||||
webUrl: option.webUrl,
|
||||
webpageUrl: option.webpageUrl,
|
||||
}) ||
|
||||
pickUrlLike(option) ||
|
||||
pickUrlLike(option.dataset) ||
|
||||
pickUrlLike(option.src) ||
|
||||
|
||||
@ -10,6 +10,10 @@ export interface GoViewVideoOption {
|
||||
src?: unknown;
|
||||
url?: unknown;
|
||||
|
||||
// seen in some forks
|
||||
srcUrl?: unknown;
|
||||
sourceUrl?: unknown;
|
||||
|
||||
// common alternative shapes
|
||||
sources?: unknown;
|
||||
sourceList?: unknown;
|
||||
@ -208,6 +212,8 @@ function pickSrc(option: GoViewVideoOption): string {
|
||||
// generic fallbacks
|
||||
'src',
|
||||
'url',
|
||||
'srcUrl',
|
||||
'sourceUrl',
|
||||
'value',
|
||||
// sometimes low-code exports store <video> HTML under these fields
|
||||
'html',
|
||||
@ -239,7 +245,12 @@ function pickSrc(option: GoViewVideoOption): string {
|
||||
if (fromList) return normalizeSrcMaybeFromHtml(fromList);
|
||||
|
||||
// Last resort: permissive URL-like picking across option/dataset/src/url.
|
||||
const raw = pickUrlLike(option) || pickUrlLike(option.dataset) || pickUrlLike(option.src) || pickUrlLike(option.url);
|
||||
const raw =
|
||||
pickUrlLike({ srcUrl: option.srcUrl, sourceUrl: option.sourceUrl }) ||
|
||||
pickUrlLike(option) ||
|
||||
pickUrlLike(option.dataset) ||
|
||||
pickUrlLike(option.src) ||
|
||||
pickUrlLike(option.url);
|
||||
return normalizeSrcMaybeFromHtml(raw);
|
||||
}
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user