Mirror the backend App\Enums\Media\Type on the frontend so "is this an image/video/PDF?" has a single definition instead of being hand-written (type === 'x' || mime_type startsWith ...) across a dozen files. - add lib/mediaType.ts: MediaType union, classify(), fromMimeType(), fromExtension(), isImage/isVideo/isDocument/isGif, acceptAttribute() - route every MediaItem detection and every File-upload validator through it - fix MediaDropzone rendering a typeless image item (AI/Unsplash/Giphy) as a broken <video> via the img-vs-video v-else - collapse getMediaIncompatibilityReason onto the shared getMediaValidationWarning core (canSchedule / variant selection unchanged) - tighten MediaItem/AssetMedia/SavedMedia/PickedMedia .type to MediaType - replace GalleryBrowser's hardcoded accept list with acceptAttribute() |
||
|---|---|---|
| .. | ||
| automation | ||
| channel.ts | ||
| content-type.ts | ||
| globals.d.ts | ||
| index.d.ts | ||
| media.ts | ||
| platform.ts | ||
| post.ts | ||
| workspace-role.ts | ||