UNPKG

bitmovin-player-react-native

Version:

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

17 lines (16 loc) 534 B
export function normalizeNonFinite<T>(input: T): T { const sentinelPrefix = 'BMP_'; function walk(v: any): any { if (v === `${sentinelPrefix}Infinity`) return Infinity; if (v === `${sentinelPrefix}-Infinity`) return -Infinity; if (v === `${sentinelPrefix}NaN`) return NaN; if (Array.isArray(v)) return v.map(walk); if (v && typeof v === 'object') { const out: any = {}; for (const k of Object.keys(v)) out[k] = walk((v as any)[k]); return out; } return v; } return walk(input); }