Browse Source

fix: narrow popiserver media upload response

feature/add_provider_popi
weige 1 month ago
parent
commit
9d2b490e92
  1. 5
      src/app/api/popi/media/upload/route.ts

5
src/app/api/popi/media/upload/route.ts

@ -65,6 +65,10 @@ function mediaResourceUrl(media: PopiMedia): string | null {
return media.url || media.originUrl || media.path || media.originPath || null; return media.url || media.originUrl || media.path || media.originPath || null;
} }
function isPopiMedia(value: PopiMediaUploadData): value is PopiMedia {
return "url" in value || "originUrl" in value || "path" in value || "originPath" in value;
}
function uploadedMediaUrls(data: PopiMediaUploadData | undefined): string[] { function uploadedMediaUrls(data: PopiMediaUploadData | undefined): string[] {
if (!data) return []; if (!data) return [];
if (Array.isArray(data)) { if (Array.isArray(data)) {
@ -81,6 +85,7 @@ function uploadedMediaUrls(data: PopiMediaUploadData | undefined): string[] {
if (list) { if (list) {
return list.map(mediaResourceUrl).filter((url): url is string => Boolean(url)); return list.map(mediaResourceUrl).filter((url): url is string => Boolean(url));
} }
if (!isPopiMedia(data)) return [];
const single = mediaResourceUrl(data); const single = mediaResourceUrl(data);
return single ? [single] : []; return single ? [single] : [];
} }

Loading…
Cancel
Save