import { THUMBNAIL_REGEX } from '../common/thumbnail-manager'; import { PKDimensionsConfig, PKSourcesConfigObject } from '@playkit-js/playkit-js'; import { ProviderMediaConfigSourcesObject } from '@playkit-js/playkit-js-providers/types'; /** * Add poster with player dimensions to thumbnail API call * @param {PKSourcesConfigObject} playerSources - player sources container * @param {ProviderMediaConfigSourcesObject} mediaSources - media config sources container * @param {Object} dimensions - player dimensions object * @param {string} ks - ks * @private * @returns {void} */ function addKalturaPoster( playerSources: PKSourcesConfigObject, mediaSources: ProviderMediaConfigSourcesObject, dimensions: PKDimensionsConfig, ks?: string ): void { const playerPoster = playerSources.poster; const mediaConfigPoster = mediaSources.poster; const playerWidth = dimensions.width; const playerHeight = dimensions.height; const rawThumbnailUrl = mediaSources.rawThumbnailUrl; if ( typeof playerPoster === 'string' && THUMBNAIL_REGEX.test(playerPoster) && playerPoster === mediaConfigPoster && typeof rawThumbnailUrl === 'string' ) { playerSources.poster = `${rawThumbnailUrl}/height/${playerHeight}/width/${playerWidth}${ks ? `/ks/${ks}` : ''}`; } mediaSources.poster = playerSources.poster || ''; } export { addKalturaPoster };