UNPKG

@wordpress/block-library

Version:
49 lines (48 loc) 1.46 kB
// packages/block-library/src/playlist/utils.js import { __ } from "@wordpress/i18n"; import { decodeEntities } from "@wordpress/html-entities"; function getMediaUrl(media) { return media?.url ?? media?.source_url; } function getMediaTitle(media) { const title = media?.title; if (title === void 0) { return void 0; } if (typeof title === "string") { return title; } return decodeEntities(title?.raw || title?.rendered || ""); } function getTrackImageAttributes(image) { const imageSrc = image?.src ?? getMediaUrl(image); if (imageSrc?.endsWith("/images/media/audio.svg")) { return { image: "", imageAlt: "" }; } return { // Note: Image is not available when a new track is uploaded. image: imageSrc, imageAlt: imageSrc ? image?.alt || image?.alt_text || "" : void 0 }; } function getTrackAttributes(media) { const mediaUrl = getMediaUrl(media); return { id: media.id || mediaUrl, // Attachment ID or URL. src: mediaUrl, title: getMediaTitle(media), artist: media.artist || media?.meta?.artist || media?.media_details?.artist || __("Unknown artist"), album: media.album || media?.meta?.album || media?.media_details?.album || __("Unknown album"), length: media?.fileLength || media?.media_details?.length_formatted, ...getTrackImageAttributes(media?.image) }; } export { getTrackAttributes, getTrackImageAttributes }; //# sourceMappingURL=utils.mjs.map