@playkit-js/kaltura-player-js
Version:
[](https://github.com/kaltura/kaltura-player-js/actions/workflows/run_canary.yaml) [ • 1.38 kB
text/typescript
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 };