UNPKG

bitmovin-player-react-native

Version:

Official React Native bindings for Bitmovin's mobile Player SDKs.

59 lines (58 loc) 2.49 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const config_plugins_1 = require("expo/config-plugins"); const isTV = !!process.env.EXPO_TV; const withBitmovinIosConfig = (config, { playerLicenseKey, features }) => { const offlineFeatureConfig = typeof features.offline === 'object' ? features.offline : { android: { isEnabled: !!features.offline, externalStoragePermission: false, }, ios: { isEnabled: !!features.offline }, }; const googleCastIosConfig = features.googleCastSDK?.ios ? typeof features.googleCastSDK.ios === 'string' ? { version: features.googleCastSDK.ios } : features.googleCastSDK.ios : null; config = (0, config_plugins_1.withInfoPlist)(config, (config) => { config.modResults['BitmovinPlayerLicenseKey'] = playerLicenseKey; if (features.backgroundPlayback || features.airPlay || features.pictureInPicture) { let backgroundModes = new Set(config.modResults['UIBackgroundModes'] || []); backgroundModes.add('audio'); config.modResults['UIBackgroundModes'] = Array.from(backgroundModes); } if (!isTV) { if (offlineFeatureConfig?.ios?.isEnabled) { config.modResults['BitmovinPlayerOfflineSupportEnabled'] = true; } if (googleCastIosConfig) { const appId = googleCastIosConfig.appId || 'FFE417E5'; const localNetworkUsageDescription = googleCastIosConfig.localNetworkUsageDescription || '${PRODUCT_NAME} uses the local network to discover Cast-enabled devices on your WiFi network.'; config.modResults['NSBonjourServices'] = [ '_googlecast._tcp', `_${appId}._googlecast._tcp`, ]; config.modResults['NSLocalNetworkUsageDescription'] = localNetworkUsageDescription; } } return config; }); if (!isTV) { config = (0, config_plugins_1.withPodfileProperties)(config, (config) => { if (googleCastIosConfig) { config.modResults['BITMOVIN_GOOGLE_CAST_SDK_VERSION'] = googleCastIosConfig.version; } return config; }); } return config; }; exports.default = withBitmovinIosConfig;