@mux/mux-player-react 3.1.0 → 3.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,2 @@
1
+ "use client";import c,{useEffect as pe,useState as de}from"react";import{MaxResolution as Oe,MinResolution as Ge,RenditionOrder as we,generatePlayerInitTime as me}from"@mux/playback-core";import{MediaError as Ie}from"@mux/mux-player";import Q from"react";var m=parseInt(Q.version)>=19,d={className:"class",classname:"class",htmlFor:"for",crossOrigin:"crossorigin",viewBox:"viewBox",playsInline:"playsinline",autoPlay:"autoplay",playbackRate:"playbackrate"},X=e=>e==null,B=(e,n)=>X(n)?!1:e in n,ee=e=>e.replace(/[A-Z]/g,n=>`-${n.toLowerCase()}`),ne=(e,n)=>{if(!(!m&&typeof n=="boolean"&&!n)){if(B(e,d))return d[e];if(typeof n!="undefined")return/[A-Z]/.test(e)?ee(e):e}};var te=(e,n)=>!m&&typeof e=="boolean"?"":e,E=(e={})=>Object.entries(e).reduce((n,[t,o])=>{let r=ne(t,o);if(!r)return n;let i=te(o,t);return n[r]=i,n},{});import{useRef as Ee}from"react";import{useEffect as ae,useRef as re}from"react";var g=(...e)=>{let n=re(null);return ae(()=>{e.forEach(t=>{t&&(typeof t=="function"?t(n.current):t.current=n.current)})},[e]),n};import{useEffect as oe}from"react";var ie=Object.prototype.hasOwnProperty,se=(e,n)=>{if(Object.is(e,n))return!0;if(typeof e!="object"||e===null||typeof n!="object"||n===null)return!1;if(Array.isArray(e))return!Array.isArray(n)||e.length!==n.length?!1:e.some((r,i)=>n[i]===r);let t=Object.keys(e),o=Object.keys(n);if(t.length!==o.length)return!1;for(let r=0;r<t.length;r++)if(!ie.call(n,t[r])||!Object.is(e[t[r]],n[t[r]]))return!1;return!0},p=(e,n,t)=>!se(n,e[t]),le=(e,n,t)=>{e[t]=n},ue=(e,n,t,o=le,r=p)=>oe(()=>{let i=t==null?void 0:t.current;i&&r(i,n,e)&&o(i,n,e)},[t==null?void 0:t.current,n]),s=ue;var ye=()=>{try{return"3.2.0"}catch{}return"UNKNOWN"},ce=ye(),M=()=>ce;var ge=c.forwardRef(({children:e,...n},t)=>c.createElement("mux-player",E({...n,ref:t}),e)),a=(e,n,t)=>pe(()=>{let o=n==null?void 0:n.current;if(!(!o||!t))return o.addEventListener(e,t),()=>{o.removeEventListener(e,t)}},[n==null?void 0:n.current,t]),Me=(e,n)=>{let{onAbort:t,onCanPlay:o,onCanPlayThrough:r,onEmptied:i,onLoadStart:y,onLoadedData:f,onLoadedMetadata:P,onProgress:b,onDurationChange:v,onVolumeChange:x,onRateChange:T,onResize:h,onWaiting:R,onPlay:C,onPlaying:k,onTimeUpdate:L,onPause:S,onSeeking:O,onSeeked:G,onStalled:w,onSuspend:V,onEnded:I,onError:A,onCuePointChange:N,onCuePointsChange:D,onChapterChange:_,metadata:K,tokens:U,paused:j,playbackId:H,playbackRates:W,currentTime:z,themeProps:F,extraSourceParams:Z,castCustomData:q,_hlsConfig:J,...Y}=n;return s("playbackRates",W,e),s("metadata",K,e),s("extraSourceParams",Z,e),s("_hlsConfig",J,e),s("themeProps",F,e),s("tokens",U,e),s("playbackId",H,e),s("castCustomData",q,e),s("paused",j,e,(l,u)=>{u!=null&&(u?l.pause():l.play())},(l,u,$)=>l.hasAttribute("autoplay")&&!l.hasPlayed?!1:p(l,u,$)),s("currentTime",z,e,(l,u)=>{u!=null&&(l.currentTime=u)}),a("abort",e,t),a("canplay",e,o),a("canplaythrough",e,r),a("emptied",e,i),a("loadstart",e,y),a("loadeddata",e,f),a("loadedmetadata",e,P),a("progress",e,b),a("durationchange",e,v),a("volumechange",e,x),a("ratechange",e,T),a("resize",e,h),a("waiting",e,R),a("play",e,C),a("playing",e,k),a("timeupdate",e,L),a("pause",e,S),a("seeking",e,O),a("seeked",e,G),a("stalled",e,w),a("suspend",e,V),a("ended",e,I),a("error",e,A),a("cuepointchange",e,N),a("cuepointschange",e,D),a("chapterchange",e,_),[Y]},fe=M(),Pe="mux-player-react",be=c.forwardRef((e,n)=>{var y;let t=Ee(null),o=g(t,n),[r]=Me(t,e),[i]=de((y=e.playerInitTime)!=null?y:me());return c.createElement(ge,{ref:o,playerSoftwareName:Pe,playerSoftwareVersion:fe,playerInitTime:i,...r})}),Ue=be;export{Oe as MaxResolution,Ie as MediaError,Ge as MinResolution,we as RenditionOrder,Ue as default,me as generatePlayerInitTime,Pe as playerSoftwareName,fe as playerSoftwareVersion};
2
+ //# sourceMappingURL=-GRAOFKCH.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../src/index.tsx", "../src/common/utils.ts", "../src/useCombinedRefs.ts", "../src/useObjectPropEffect.ts", "../src/env.ts"],
4
+ "sourcesContent": ["'use client';\nimport React, { useEffect, useState } from 'react';\nimport type { CSSProperties } from 'react';\nimport type {\n StreamTypes,\n PlaybackTypes,\n CmcdTypes,\n MaxResolutionValue,\n MinResolutionValue,\n RenditionOrderValue,\n} from '@mux/playback-core';\nimport { MaxResolution, MinResolution, RenditionOrder, generatePlayerInitTime } from '@mux/playback-core';\nimport { MediaError } from '@mux/mux-player';\nimport type MuxPlayerElement from '@mux/mux-player';\nimport type { Tokens, MuxPlayerElementEventMap } from '@mux/mux-player';\nimport { toNativeProps } from './common/utils';\nimport { useRef } from 'react';\nimport { useCombinedRefs } from './useCombinedRefs';\nimport useObjectPropEffect, { defaultHasChanged } from './useObjectPropEffect';\nimport { getPlayerVersion } from './env';\n\nexport { MediaError, MaxResolution, MinResolution, RenditionOrder, generatePlayerInitTime };\n\ntype ValueOf<T> = T[keyof T];\ninterface GenericEventListener<T extends Event = CustomEvent> {\n (evt: T): void;\n}\n\nexport type MuxPlayerRefAttributes = MuxPlayerElement;\ntype VideoApiAttributes = {\n currentTime: number;\n volume: number;\n paused: boolean;\n src: string | null;\n poster: string;\n playbackRate: number;\n playsInline: boolean;\n preload: string;\n crossOrigin: string;\n autoPlay: boolean | string;\n loop: boolean;\n muted: boolean;\n style: CSSProperties;\n};\n\ntype MuxMediaPropTypes = {\n audio: boolean;\n // envKey: Options[\"data\"][\"env_key\"];\n envKey: string;\n // debug: Options[\"debug\"] & Hls[\"config\"][\"debug\"];\n debug: boolean;\n disableTracking: boolean;\n disableCookies: boolean;\n disablePictureInPicture?: boolean;\n // metadata: Partial<Options[\"data\"]>;\n metadata: { [k: string]: any };\n extraSourceParams: Record<string, any>;\n _hlsConfig: MuxPlayerElement['_hlsConfig'];\n beaconCollectionDomain: string;\n customDomain: string;\n playbackId: string;\n preferPlayback: ValueOf<PlaybackTypes> | undefined;\n // NOTE: Explicitly adding deprecated values here for now to avoid fully breaking changes in TS envs (CJP)\n streamType: ValueOf<StreamTypes> | 'll-live' | 'live:dvr' | 'll-live:dvr';\n defaultStreamType: ValueOf<StreamTypes>;\n targetLiveWindow: number;\n startTime: number;\n storyboardSrc: string;\n preferCmcd: ValueOf<CmcdTypes> | undefined;\n children?: React.ReactNode;\n};\n\nexport type MuxPlayerProps = {\n className?: string;\n hotkeys?: string;\n nohotkeys?: boolean;\n castReceiver?: string | undefined;\n castCustomData?: Record<string, any> | undefined;\n defaultHiddenCaptions?: boolean;\n playerSoftwareVersion?: string;\n playerSoftwareName?: string;\n playerInitTime?: number;\n forwardSeekOffset?: number;\n backwardSeekOffset?: number;\n maxResolution?: MaxResolutionValue;\n minResolution?: MinResolutionValue;\n renditionOrder?: RenditionOrderValue;\n programStartTime?: number;\n programEndTime?: number;\n assetStartTime?: number;\n assetEndTime?: number;\n metadataVideoId?: string;\n metadataVideoTitle?: string;\n metadataViewerUserId?: string;\n primaryColor?: string;\n secondaryColor?: string;\n accentColor?: string;\n placeholder?: string;\n playbackRates?: number[];\n defaultShowRemainingTime?: boolean;\n defaultDuration?: number;\n noVolumePref?: boolean;\n thumbnailTime?: number;\n title?: string;\n tokens?: Tokens;\n theme?: string;\n themeProps?: { [k: string]: any };\n onAbort?: GenericEventListener<MuxPlayerElementEventMap['abort']>;\n onCanPlay?: GenericEventListener<MuxPlayerElementEventMap['canplay']>;\n onCanPlayThrough?: GenericEventListener<MuxPlayerElementEventMap['canplaythrough']>;\n onEmptied?: GenericEventListener<MuxPlayerElementEventMap['emptied']>;\n onLoadStart?: GenericEventListener<MuxPlayerElementEventMap['loadstart']>;\n onLoadedData?: GenericEventListener<MuxPlayerElementEventMap['loadeddata']>;\n onLoadedMetadata?: GenericEventListener<MuxPlayerElementEventMap['loadedmetadata']>;\n onProgress?: GenericEventListener<MuxPlayerElementEventMap['progress']>;\n onDurationChange?: GenericEventListener<MuxPlayerElementEventMap['durationchange']>;\n onVolumeChange?: GenericEventListener<MuxPlayerElementEventMap['volumechange']>;\n onRateChange?: GenericEventListener<MuxPlayerElementEventMap['ratechange']>;\n onResize?: GenericEventListener<MuxPlayerElementEventMap['resize']>;\n onWaiting?: GenericEventListener<MuxPlayerElementEventMap['waiting']>;\n onPlay?: GenericEventListener<MuxPlayerElementEventMap['play']>;\n onPlaying?: GenericEventListener<MuxPlayerElementEventMap['playing']>;\n onTimeUpdate?: GenericEventListener<MuxPlayerElementEventMap['timeupdate']>;\n onPause?: GenericEventListener<MuxPlayerElementEventMap['pause']>;\n onSeeking?: GenericEventListener<MuxPlayerElementEventMap['seeking']>;\n onSeeked?: GenericEventListener<MuxPlayerElementEventMap['seeked']>;\n onStalled?: GenericEventListener<MuxPlayerElementEventMap['stalled']>;\n onSuspend?: GenericEventListener<MuxPlayerElementEventMap['suspend']>;\n onEnded?: GenericEventListener<MuxPlayerElementEventMap['ended']>;\n onError?: GenericEventListener<MuxPlayerElementEventMap['error']>;\n onCuePointChange?: GenericEventListener<MuxPlayerElementEventMap['cuepointchange']>;\n onCuePointsChange?: GenericEventListener<MuxPlayerElementEventMap['cuepointschange']>;\n onChapterChange?: GenericEventListener<MuxPlayerElementEventMap['chapterchange']>;\n} & Partial<MuxMediaPropTypes> &\n Partial<VideoApiAttributes>;\n\nconst MuxPlayerInternal = React.forwardRef<MuxPlayerRefAttributes, MuxPlayerProps>(({ children, ...props }, ref) => {\n return React.createElement('mux-player', toNativeProps({ ...props, ref }), children);\n});\n\nconst useEventCallbackEffect = <K extends keyof MuxPlayerElementEventMap>(\n type: K,\n ref: // | ((instance: EventTarget | null) => void)\n React.MutableRefObject<MuxPlayerElement | null> | null | undefined,\n callback: GenericEventListener<MuxPlayerElementEventMap[K]> | undefined\n) => {\n return useEffect(() => {\n const eventTarget = ref?.current;\n if (!eventTarget || !callback) return;\n eventTarget.addEventListener(type, callback);\n return () => {\n eventTarget.removeEventListener(type, callback);\n };\n }, [ref?.current, callback]);\n};\n\nconst usePlayer = (\n ref: // | ((instance: EventTarget | null) => void)\n React.MutableRefObject<MuxPlayerElement | null> | null | undefined,\n props: MuxPlayerProps\n) => {\n const {\n onAbort,\n onCanPlay,\n onCanPlayThrough,\n onEmptied,\n onLoadStart,\n onLoadedData,\n onLoadedMetadata,\n onProgress,\n onDurationChange,\n onVolumeChange,\n onRateChange,\n onResize,\n onWaiting,\n onPlay,\n onPlaying,\n onTimeUpdate,\n onPause,\n onSeeking,\n onSeeked,\n onStalled,\n onSuspend,\n onEnded,\n onError,\n onCuePointChange,\n onCuePointsChange,\n onChapterChange,\n metadata,\n tokens,\n paused,\n playbackId,\n playbackRates,\n currentTime,\n themeProps,\n extraSourceParams,\n castCustomData,\n _hlsConfig,\n ...remainingProps\n } = props;\n useObjectPropEffect('playbackRates', playbackRates, ref);\n useObjectPropEffect('metadata', metadata, ref);\n useObjectPropEffect('extraSourceParams', extraSourceParams, ref);\n useObjectPropEffect('_hlsConfig', _hlsConfig, ref);\n useObjectPropEffect('themeProps', themeProps, ref);\n useObjectPropEffect('tokens', tokens, ref);\n useObjectPropEffect('playbackId', playbackId, ref);\n useObjectPropEffect('castCustomData', castCustomData, ref);\n useObjectPropEffect(\n 'paused',\n paused,\n ref,\n (playerEl: HTMLMediaElement, pausedVal?: boolean) => {\n if (pausedVal == null) return;\n if (pausedVal) {\n playerEl.pause();\n } else {\n playerEl.play();\n }\n },\n (playerEl, value, propName) => {\n if (playerEl.hasAttribute('autoplay') && !playerEl.hasPlayed) {\n return false;\n }\n return defaultHasChanged(playerEl, value, propName);\n }\n );\n useObjectPropEffect('currentTime', currentTime, ref, (playerEl: HTMLMediaElement, currentTimeVal?: number) => {\n if (currentTimeVal == null) return;\n playerEl.currentTime = currentTimeVal;\n });\n useEventCallbackEffect('abort', ref, onAbort);\n useEventCallbackEffect('canplay', ref, onCanPlay);\n useEventCallbackEffect('canplaythrough', ref, onCanPlayThrough);\n useEventCallbackEffect('emptied', ref, onEmptied);\n useEventCallbackEffect('loadstart', ref, onLoadStart);\n useEventCallbackEffect('loadeddata', ref, onLoadedData);\n useEventCallbackEffect('loadedmetadata', ref, onLoadedMetadata);\n useEventCallbackEffect('progress', ref, onProgress);\n useEventCallbackEffect('durationchange', ref, onDurationChange);\n useEventCallbackEffect('volumechange', ref, onVolumeChange);\n useEventCallbackEffect('ratechange', ref, onRateChange);\n useEventCallbackEffect('resize', ref, onResize);\n useEventCallbackEffect('waiting', ref, onWaiting);\n useEventCallbackEffect('play', ref, onPlay);\n useEventCallbackEffect('playing', ref, onPlaying);\n useEventCallbackEffect('timeupdate', ref, onTimeUpdate);\n useEventCallbackEffect('pause', ref, onPause);\n useEventCallbackEffect('seeking', ref, onSeeking);\n useEventCallbackEffect('seeked', ref, onSeeked);\n useEventCallbackEffect('stalled', ref, onStalled);\n useEventCallbackEffect('suspend', ref, onSuspend);\n useEventCallbackEffect('ended', ref, onEnded);\n useEventCallbackEffect('error', ref, onError);\n useEventCallbackEffect('cuepointchange', ref, onCuePointChange);\n useEventCallbackEffect('cuepointschange', ref, onCuePointsChange);\n useEventCallbackEffect('chapterchange', ref, onChapterChange);\n return [remainingProps];\n};\n\nexport const playerSoftwareVersion = getPlayerVersion();\nexport const playerSoftwareName = 'mux-player-react';\n\nconst MuxPlayer = React.forwardRef<\n MuxPlayerRefAttributes,\n Omit<MuxPlayerProps, 'playerSoftwareVersion' | 'playerSoftwareName'>\n>((props, ref) => {\n const innerPlayerRef = useRef<MuxPlayerElement>(null);\n const playerRef = useCombinedRefs(innerPlayerRef, ref);\n const [remainingProps] = usePlayer(innerPlayerRef, props);\n const [playerInitTime] = useState(props.playerInitTime ?? generatePlayerInitTime());\n\n return (\n <MuxPlayerInternal\n /** @TODO Fix types relationships (CJP) */\n ref={playerRef as typeof innerPlayerRef}\n playerSoftwareName={playerSoftwareName}\n playerSoftwareVersion={playerSoftwareVersion}\n playerInitTime={playerInitTime}\n {...remainingProps}\n />\n );\n});\n\nexport default MuxPlayer;\n", "import React from 'react';\n\n// React 19 supports custom elements and setting properties directly on them,\n// older React versions converted all props to attributes on custom elments.\n// Boolean `true` values should not be converted to empty strings in React 19+\n// because that would result in a `false` value if it was set via a property.\n// React 19+ handles primitive values correctly but we still need to convert\n// the camelCase prop names to kebab-case attribute names for mux-player. (WL)\n\nconst IS_REACT_19_OR_NEWER = parseInt(React.version) >= 19;\n\n// NOTE: As a forward-looking implementation, we may want to assume\n// prop names -> attribute names is always a simple name.toLowerCase()\n// and provide a mechanism for passing in per-component overrides for\n// e.g. kebab cases, as that's the way React/Preact handles these. (CJP)\nconst ReactPropToAttrNameMap = {\n className: 'class',\n classname: 'class',\n htmlFor: 'for',\n crossOrigin: 'crossorigin',\n viewBox: 'viewBox',\n playsInline: 'playsinline',\n autoPlay: 'autoplay',\n playbackRate: 'playbackrate',\n};\n\ntype KeyTypes = string | number | symbol;\ntype Maybe<T> = T | null | undefined;\n\nexport const isNil = (x: unknown): x is null | undefined => x == undefined;\n\n// Type Guard to determine if a given key is actually a key of some object of type T\nexport const isKeyOf = <T extends object = any>(k: KeyTypes, o: Maybe<T>): k is keyof T => {\n if (isNil(o)) return false;\n return k in o;\n};\n\nconst toKebabCase = (string: string) => string.replace(/[A-Z]/g, (match) => `-${match.toLowerCase()}`);\n\nexport const toNativeAttrName = (propName: string, propValue: any): string | undefined => {\n if (!IS_REACT_19_OR_NEWER && typeof propValue === 'boolean' && !propValue) return undefined;\n if (isKeyOf(propName, ReactPropToAttrNameMap)) return ReactPropToAttrNameMap[propName];\n if (typeof propValue === 'undefined') return undefined;\n if (/[A-Z]/.test(propName)) return toKebabCase(propName);\n return propName;\n};\nexport const toStyleAttr = <T>(x: T) => x;\n\nexport const toNativeAttrValue = (propValue: any, _propName: string) => {\n if (!IS_REACT_19_OR_NEWER && typeof propValue === 'boolean') return '';\n return propValue;\n};\n\nexport const toNativeProps = (props = {}) => {\n return Object.entries(props).reduce<{ [k: string]: string }>((transformedProps, [propName, propValue]) => {\n const attrName = toNativeAttrName(propName, propValue);\n\n // prop was stripped. Don't add.\n if (!attrName) {\n return transformedProps;\n }\n\n const attrValue = toNativeAttrValue(propValue, propName);\n transformedProps[attrName] = attrValue;\n return transformedProps;\n }, {});\n};\n", "import { useEffect, useRef } from 'react';\nimport type { MutableRefObject, ForwardedRef } from 'react';\n\ntype Maybe<T> = T | null | undefined;\ntype RefCb<T> = (instance: Maybe<T>) => void;\ntype RefObj<T> = MutableRefObject<Maybe<T>>;\ntype RefTypes<T> = RefObj<T> | RefCb<T> | ForwardedRef<T>;\ninterface useCombinedRefs {\n <T>(...refs: Maybe<RefTypes<T>>[]): RefObj<T>;\n}\n\nexport const useCombinedRefs: useCombinedRefs = (...refs) => {\n const targetRef = useRef(null);\n\n useEffect(() => {\n refs.forEach((ref) => {\n if (!ref) return;\n\n if (typeof ref === 'function') {\n ref(targetRef.current);\n } else {\n ref.current = targetRef.current;\n }\n });\n }, [refs]);\n\n return targetRef;\n};\n\n// TS assumed default export was interface def instead of function value (CJP)\nconst defaultUseCombinedRefs = useCombinedRefs;\nexport default defaultUseCombinedRefs;\n", "import { useEffect } from 'react';\n\nconst hasOwnProperty = Object.prototype.hasOwnProperty;\n\n/**\n * Slightly modified version of React's shallowEqual, with optimizations for Arrays\n * so we may treat them specifically as unequal if they are not a) both arrays\n * or b) don't contain the same (shallowly compared) elements.\n */\nconst shallowEqual = (objA: any, objB: any): boolean => {\n if (Object.is(objA, objB)) {\n return true;\n }\n\n if (typeof objA !== 'object' || objA === null || typeof objB !== 'object' || objB === null) {\n return false;\n }\n\n if (Array.isArray(objA)) {\n // Early \"cheap\" array compares\n if (!Array.isArray(objB) || objA.length !== objB.length) return false;\n // Shallow compare for arrays\n return objA.some((vVal, i) => objB[i] === vVal);\n }\n\n const keysA = Object.keys(objA);\n const keysB = Object.keys(objB);\n\n if (keysA.length !== keysB.length) {\n return false;\n }\n\n // Test for A's keys different from B.\n for (let i = 0; i < keysA.length; i++) {\n if (!hasOwnProperty.call(objB, keysA[i]) || !Object.is(objA[keysA[i]], objB[keysA[i]])) {\n return false;\n }\n }\n\n return true;\n};\n\nexport const defaultHasChanged = (obj: any, v: any, k: string) => {\n return !shallowEqual(v, obj[k]);\n};\n\nconst defaultUpdateValue = (obj: any, v: any, k: string) => {\n obj[k] = v;\n};\n\nexport const useObjectPropEffect = <T extends { [k: string]: any }, V>(\n propName: string,\n propValue: V | null | undefined,\n ref: React.MutableRefObject<T | null> | null | undefined,\n updateValue = defaultUpdateValue,\n hasChanged = defaultHasChanged\n) => {\n return useEffect(() => {\n const obj = ref?.current;\n if (!obj) return;\n if (!hasChanged(obj, propValue, propName)) return;\n updateValue(obj, propValue, propName);\n }, [ref?.current, propValue]);\n};\n\nexport default useObjectPropEffect;\n", "const getEnvPlayerVersion = () => {\n try {\n // @ts-ignore\n return PLAYER_VERSION as string;\n } catch {}\n return 'UNKNOWN';\n};\n\nconst player_version: string = getEnvPlayerVersion();\n\nexport const getPlayerVersion = () => player_version;\n"],
5
+ "mappings": "aACA,OAAOA,GAAS,aAAAC,GAAW,YAAAC,OAAgB,QAU3C,OAAS,iBAAAC,GAAe,iBAAAC,GAAe,kBAAAC,GAAgB,0BAAAC,OAA8B,qBACrF,OAAS,cAAAC,OAAkB,kBCZ3B,OAAOC,MAAW,QASlB,IAAMC,EAAuB,SAASD,EAAM,OAAO,GAAK,GAMlDE,EAAyB,CAC7B,UAAW,QACX,UAAW,QACX,QAAS,MACT,YAAa,cACb,QAAS,UACT,YAAa,cACb,SAAU,WACV,aAAc,cAChB,EAKaC,EAASC,GAAsCA,GAAK,KAGpDC,EAAU,CAAyBC,EAAaC,IACvDJ,EAAMI,CAAC,EAAU,GACdD,KAAKC,EAGRC,GAAeC,GAAmBA,EAAO,QAAQ,SAAWC,GAAU,IAAIA,EAAM,YAAY,CAAC,EAAE,EAExFC,GAAmB,CAACC,EAAkBC,IAAuC,CACxF,GAAI,GAACZ,GAAwB,OAAOY,GAAc,WAAa,CAACA,GAChE,IAAIR,EAAQO,EAAUV,CAAsB,EAAG,OAAOA,EAAuBU,CAAQ,EACrF,GAAI,OAAOC,GAAc,YACzB,MAAI,QAAQ,KAAKD,CAAQ,EAAUJ,GAAYI,CAAQ,EAChDA,EACT,EAGO,IAAME,GAAoB,CAACC,EAAgBC,IAC5C,CAACC,GAAwB,OAAOF,GAAc,UAAkB,GAC7DA,EAGIG,EAAgB,CAACC,EAAQ,CAAC,IAC9B,OAAO,QAAQA,CAAK,EAAE,OAAgC,CAACC,EAAkB,CAACC,EAAUN,CAAS,IAAM,CACxG,IAAMO,EAAWC,GAAiBF,EAAUN,CAAS,EAGrD,GAAI,CAACO,EACH,OAAOF,EAGT,IAAMI,EAAYV,GAAkBC,EAAWM,CAAQ,EACvD,OAAAD,EAAiBE,CAAQ,EAAIE,EACtBJ,CACT,EAAG,CAAC,CAAC,EDjDP,OAAS,UAAAK,OAAc,QEhBvB,OAAS,aAAAC,GAAW,UAAAC,OAAc,QAW3B,IAAMC,EAAmC,IAAIC,IAAS,CAC3D,IAAMC,EAAYH,GAAO,IAAI,EAE7B,OAAAD,GAAU,IAAM,CACdG,EAAK,QAASE,GAAQ,CACfA,IAED,OAAOA,GAAQ,WACjBA,EAAID,EAAU,OAAO,EAErBC,EAAI,QAAUD,EAAU,QAE5B,CAAC,CACH,EAAG,CAACD,CAAI,CAAC,EAEFC,CACT,EC3BA,OAAS,aAAAE,OAAiB,QAE1B,IAAMC,GAAiB,OAAO,UAAU,eAOlCC,GAAe,CAACC,EAAWC,IAAuB,CACtD,GAAI,OAAO,GAAGD,EAAMC,CAAI,EACtB,MAAO,GAGT,GAAI,OAAOD,GAAS,UAAYA,IAAS,MAAQ,OAAOC,GAAS,UAAYA,IAAS,KACpF,MAAO,GAGT,GAAI,MAAM,QAAQD,CAAI,EAEpB,MAAI,CAAC,MAAM,QAAQC,CAAI,GAAKD,EAAK,SAAWC,EAAK,OAAe,GAEzDD,EAAK,KAAK,CAACE,EAAM,IAAMD,EAAK,CAAC,IAAMC,CAAI,EAGhD,IAAMC,EAAQ,OAAO,KAAKH,CAAI,EACxBI,EAAQ,OAAO,KAAKH,CAAI,EAE9B,GAAIE,EAAM,SAAWC,EAAM,OACzB,MAAO,GAIT,QAASC,EAAI,EAAGA,EAAIF,EAAM,OAAQE,IAChC,GAAI,CAACP,GAAe,KAAKG,EAAME,EAAME,CAAC,CAAC,GAAK,CAAC,OAAO,GAAGL,EAAKG,EAAME,CAAC,CAAC,EAAGJ,EAAKE,EAAME,CAAC,CAAC,CAAC,EACnF,MAAO,GAIX,MAAO,EACT,EAEaC,EAAoB,CAACC,EAAUC,EAAQC,IAC3C,CAACV,GAAaS,EAAGD,EAAIE,CAAC,CAAC,EAG1BC,GAAqB,CAACH,EAAUC,EAAQC,IAAc,CAC1DF,EAAIE,CAAC,EAAID,CACX,EAEaG,GAAsB,CACjCC,EACAC,EACAC,EACAC,EAAcL,GACdM,EAAaV,IAENT,GAAU,IAAM,CACrB,IAAMU,EAAMO,GAAA,YAAAA,EAAK,QACZP,GACAS,EAAWT,EAAKM,EAAWD,CAAQ,GACxCG,EAAYR,EAAKM,EAAWD,CAAQ,CACtC,EAAG,CAACE,GAAA,YAAAA,EAAK,QAASD,CAAS,CAAC,EAGvBI,EAAQN,GCjEf,IAAMO,GAAsB,IAAM,CAChC,GAAI,CAEF,MAAO,OACT,MAAQ,CAAC,CACT,MAAO,SACT,EAEMC,GAAyBD,GAAoB,EAEtCE,EAAmB,IAAMD,GJ8HtC,IAAME,GAAoBC,EAAM,WAAmD,CAAC,CAAE,SAAAC,EAAU,GAAGC,CAAM,EAAGC,IACnGH,EAAM,cAAc,aAAcI,EAAc,CAAE,GAAGF,EAAO,IAAAC,CAAI,CAAC,EAAGF,CAAQ,CACpF,EAEKI,EAAyB,CAC7BC,EACAH,EAEAI,IAEOC,GAAU,IAAM,CACrB,IAAMC,EAAcN,GAAA,YAAAA,EAAK,QACzB,GAAI,GAACM,GAAe,CAACF,GACrB,OAAAE,EAAY,iBAAiBH,EAAMC,CAAQ,EACpC,IAAM,CACXE,EAAY,oBAAoBH,EAAMC,CAAQ,CAChD,CACF,EAAG,CAACJ,GAAA,YAAAA,EAAK,QAASI,CAAQ,CAAC,EAGvBG,GAAY,CAChBP,EAEAD,IACG,CACH,GAAM,CACJ,QAAAS,EACA,UAAAC,EACA,iBAAAC,EACA,UAAAC,EACA,YAAAC,EACA,aAAAC,EACA,iBAAAC,EACA,WAAAC,EACA,iBAAAC,EACA,eAAAC,EACA,aAAAC,EACA,SAAAC,EACA,UAAAC,EACA,OAAAC,EACA,UAAAC,EACA,aAAAC,EACA,QAAAC,EACA,UAAAC,EACA,SAAAC,EACA,UAAAC,EACA,UAAAC,EACA,QAAAC,EACA,QAAAC,EACA,iBAAAC,EACA,kBAAAC,EACA,gBAAAC,EACA,SAAAC,EACA,OAAAC,EACA,OAAAC,EACA,WAAAC,EACA,cAAAC,EACA,YAAAC,EACA,WAAAC,EACA,kBAAAC,EACA,eAAAC,EACA,WAAAC,EACA,GAAGC,CACL,EAAI7C,EACJ,OAAA8C,EAAoB,gBAAiBP,EAAetC,CAAG,EACvD6C,EAAoB,WAAYX,EAAUlC,CAAG,EAC7C6C,EAAoB,oBAAqBJ,EAAmBzC,CAAG,EAC/D6C,EAAoB,aAAcF,EAAY3C,CAAG,EACjD6C,EAAoB,aAAcL,EAAYxC,CAAG,EACjD6C,EAAoB,SAAUV,EAAQnC,CAAG,EACzC6C,EAAoB,aAAcR,EAAYrC,CAAG,EACjD6C,EAAoB,iBAAkBH,EAAgB1C,CAAG,EACzD6C,EACE,SACAT,EACApC,EACA,CAAC8C,EAA4BC,IAAwB,CAC/CA,GAAa,OACbA,EACFD,EAAS,MAAM,EAEfA,EAAS,KAAK,EAElB,EACA,CAACA,EAAUE,EAAOC,IACZH,EAAS,aAAa,UAAU,GAAK,CAACA,EAAS,UAC1C,GAEFI,EAAkBJ,EAAUE,EAAOC,CAAQ,CAEtD,EACAJ,EAAoB,cAAeN,EAAavC,EAAK,CAAC8C,EAA4BK,IAA4B,CACxGA,GAAkB,OACtBL,EAAS,YAAcK,EACzB,CAAC,EACDjD,EAAuB,QAASF,EAAKQ,CAAO,EAC5CN,EAAuB,UAAWF,EAAKS,CAAS,EAChDP,EAAuB,iBAAkBF,EAAKU,CAAgB,EAC9DR,EAAuB,UAAWF,EAAKW,CAAS,EAChDT,EAAuB,YAAaF,EAAKY,CAAW,EACpDV,EAAuB,aAAcF,EAAKa,CAAY,EACtDX,EAAuB,iBAAkBF,EAAKc,CAAgB,EAC9DZ,EAAuB,WAAYF,EAAKe,CAAU,EAClDb,EAAuB,iBAAkBF,EAAKgB,CAAgB,EAC9Dd,EAAuB,eAAgBF,EAAKiB,CAAc,EAC1Df,EAAuB,aAAcF,EAAKkB,CAAY,EACtDhB,EAAuB,SAAUF,EAAKmB,CAAQ,EAC9CjB,EAAuB,UAAWF,EAAKoB,CAAS,EAChDlB,EAAuB,OAAQF,EAAKqB,CAAM,EAC1CnB,EAAuB,UAAWF,EAAKsB,CAAS,EAChDpB,EAAuB,aAAcF,EAAKuB,CAAY,EACtDrB,EAAuB,QAASF,EAAKwB,CAAO,EAC5CtB,EAAuB,UAAWF,EAAKyB,CAAS,EAChDvB,EAAuB,SAAUF,EAAK0B,CAAQ,EAC9CxB,EAAuB,UAAWF,EAAK2B,CAAS,EAChDzB,EAAuB,UAAWF,EAAK4B,CAAS,EAChD1B,EAAuB,QAASF,EAAK6B,CAAO,EAC5C3B,EAAuB,QAASF,EAAK8B,CAAO,EAC5C5B,EAAuB,iBAAkBF,EAAK+B,CAAgB,EAC9D7B,EAAuB,kBAAmBF,EAAKgC,CAAiB,EAChE9B,EAAuB,gBAAiBF,EAAKiC,CAAe,EACrD,CAACW,CAAc,CACxB,EAEaQ,GAAwBC,EAAiB,EACzCC,GAAqB,mBAE5BC,GAAY1D,EAAM,WAGtB,CAACE,EAAOC,IAAQ,CA1QlB,IAAAwD,EA2QE,IAAMC,EAAiBC,GAAyB,IAAI,EAC9CC,EAAYC,EAAgBH,EAAgBzD,CAAG,EAC/C,CAAC4C,CAAc,EAAIrC,GAAUkD,EAAgB1D,CAAK,EAClD,CAAC8D,CAAc,EAAIC,IAASN,EAAAzD,EAAM,iBAAN,KAAAyD,EAAwBO,GAAuB,CAAC,EAElF,OACElE,EAAA,cAACD,GAAA,CAEC,IAAK+D,EACL,mBAAoBL,GACpB,sBAAuBF,GACvB,eAAgBS,EACf,GAAGjB,EACN,CAEJ,CAAC,EAEMoB,GAAQT",
6
+ "names": ["React", "useEffect", "useState", "MaxResolution", "MinResolution", "RenditionOrder", "generatePlayerInitTime", "MediaError", "React", "IS_REACT_19_OR_NEWER", "ReactPropToAttrNameMap", "isNil", "x", "isKeyOf", "k", "o", "toKebabCase", "string", "match", "toNativeAttrName", "propName", "propValue", "toNativeAttrValue", "propValue", "_propName", "IS_REACT_19_OR_NEWER", "toNativeProps", "props", "transformedProps", "propName", "attrName", "toNativeAttrName", "attrValue", "useRef", "useEffect", "useRef", "useCombinedRefs", "refs", "targetRef", "ref", "useEffect", "hasOwnProperty", "shallowEqual", "objA", "objB", "vVal", "keysA", "keysB", "i", "defaultHasChanged", "obj", "v", "k", "defaultUpdateValue", "useObjectPropEffect", "propName", "propValue", "ref", "updateValue", "hasChanged", "useObjectPropEffect_default", "getEnvPlayerVersion", "player_version", "getPlayerVersion", "MuxPlayerInternal", "React", "children", "props", "ref", "toNativeProps", "useEventCallbackEffect", "type", "callback", "useEffect", "eventTarget", "usePlayer", "onAbort", "onCanPlay", "onCanPlayThrough", "onEmptied", "onLoadStart", "onLoadedData", "onLoadedMetadata", "onProgress", "onDurationChange", "onVolumeChange", "onRateChange", "onResize", "onWaiting", "onPlay", "onPlaying", "onTimeUpdate", "onPause", "onSeeking", "onSeeked", "onStalled", "onSuspend", "onEnded", "onError", "onCuePointChange", "onCuePointsChange", "onChapterChange", "metadata", "tokens", "paused", "playbackId", "playbackRates", "currentTime", "themeProps", "extraSourceParams", "castCustomData", "_hlsConfig", "remainingProps", "useObjectPropEffect_default", "playerEl", "pausedVal", "value", "propName", "defaultHasChanged", "currentTimeVal", "playerSoftwareVersion", "getPlayerVersion", "playerSoftwareName", "MuxPlayer", "_a", "innerPlayerRef", "useRef", "playerRef", "useCombinedRefs", "playerInitTime", "useState", "generatePlayerInitTime", "src_default"]
7
+ }
@@ -34,8 +34,14 @@
34
34
  "format": "esm"
35
35
  },
36
36
  "src/common/utils.ts": {
37
- "bytes": 2048,
38
- "imports": [],
37
+ "bytes": 2664,
38
+ "imports": [
39
+ {
40
+ "path": "react",
41
+ "kind": "import-statement",
42
+ "external": true
43
+ }
44
+ ],
39
45
  "format": "esm"
40
46
  },
41
47
  "src/useCombinedRefs.ts": {
@@ -66,7 +72,7 @@
66
72
  "format": "esm"
67
73
  },
68
74
  "src/index.tsx": {
69
- "bytes": 10260,
75
+ "bytes": 10484,
70
76
  "imports": [
71
77
  {
72
78
  "path": "react",
@@ -173,7 +179,7 @@
173
179
  "external": true
174
180
  },
175
181
  {
176
- "path": "dist/-5Z6NQIRW.mjs",
182
+ "path": "dist/-GRAOFKCH.mjs",
177
183
  "kind": "dynamic-import"
178
184
  }
179
185
  ],
@@ -197,13 +203,13 @@
197
203
  },
198
204
  "bytes": 2330
199
205
  },
200
- "dist/-5Z6NQIRW.mjs.map": {
206
+ "dist/-GRAOFKCH.mjs.map": {
201
207
  "imports": [],
202
208
  "exports": [],
203
209
  "inputs": {},
204
- "bytes": 22551
210
+ "bytes": 23772
205
211
  },
206
- "dist/-5Z6NQIRW.mjs": {
212
+ "dist/-GRAOFKCH.mjs": {
207
213
  "imports": [
208
214
  {
209
215
  "path": "react",
@@ -230,6 +236,11 @@
230
236
  "kind": "import-statement",
231
237
  "external": true
232
238
  },
239
+ {
240
+ "path": "react",
241
+ "kind": "import-statement",
242
+ "external": true
243
+ },
233
244
  {
234
245
  "path": "react",
235
246
  "kind": "import-statement",
@@ -241,15 +252,18 @@
241
252
  "MediaError",
242
253
  "MinResolution",
243
254
  "RenditionOrder",
244
- "default"
255
+ "default",
256
+ "generatePlayerInitTime",
257
+ "playerSoftwareName",
258
+ "playerSoftwareVersion"
245
259
  ],
246
260
  "entryPoint": "src/index.tsx",
247
261
  "inputs": {
248
262
  "src/index.tsx": {
249
- "bytesInOutput": 2003
263
+ "bytesInOutput": 2112
250
264
  },
251
265
  "src/common/utils.ts": {
252
- "bytesInOutput": 524
266
+ "bytesInOutput": 590
253
267
  },
254
268
  "src/useCombinedRefs.ts": {
255
269
  "bytesInOutput": 177
@@ -261,7 +275,7 @@
261
275
  "bytesInOutput": 71
262
276
  }
263
277
  },
264
- "bytes": 3530
278
+ "bytes": 3787
265
279
  }
266
280
  }
267
281
  }
package/dist/index.cjs.js CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";"use client";var ae=Object.create;var d=Object.defineProperty;var re=Object.getOwnPropertyDescriptor;var oe=Object.getOwnPropertyNames;var ie=Object.getPrototypeOf,se=Object.prototype.hasOwnProperty;var le=(e,n)=>{for(var t in n)d(e,t,{get:n[t],enumerable:!0})},E=(e,n,t,o)=>{if(n&&typeof n=="object"||typeof n=="function")for(let r of oe(n))!se.call(e,r)&&r!==t&&d(e,r,{get:()=>n[r],enumerable:!(o=re(n,r))||o.enumerable});return e};var ue=(e,n,t)=>(t=e!=null?ae(ie(e)):{},E(n||!e||!e.__esModule?d(t,"default",{value:e,enumerable:!0}):t,e)),ye=e=>E(d({},"__esModule",{value:!0}),e);var Le={};le(Le,{MaxResolution:()=>c.MaxResolution,MediaError:()=>v.MediaError,MinResolution:()=>c.MinResolution,RenditionOrder:()=>c.RenditionOrder,default:()=>ke});module.exports=ye(Le);var y=ue(require("react")),c=require("@mux/playback-core"),v=require("@mux/mux-player");var g={className:"class",classname:"class",htmlFor:"for",crossOrigin:"crossorigin",viewBox:"viewBox",playsInline:"playsinline",autoPlay:"autoplay",playbackRate:"playbackrate"},ce=e=>e==null,de=(e,n)=>ce(n)?!1:e in n,pe=e=>e.replace(/[A-Z]/g,n=>`-${n.toLowerCase()}`),me=(e,n)=>{if(!(typeof n=="boolean"&&!n)){if(de(e,g))return g[e];if(typeof n!=null)return/[A-Z]/.test(e)?pe(e):e}};var Ee=(e,n)=>typeof e=="boolean"?"":e,M=(e={})=>Object.entries(e).reduce((n,[t,o])=>{let r=me(t,o);if(!r)return n;let s=Ee(o,t);return n[r]=s,n},{});var x=require("react");var p=require("react"),f=(...e)=>{let n=(0,p.useRef)(null);return(0,p.useEffect)(()=>{e.forEach(t=>{t&&(typeof t=="function"?t(n.current):t.current=n.current)})},[e]),n};var P=require("react"),ge=Object.prototype.hasOwnProperty,Me=(e,n)=>{if(Object.is(e,n))return!0;if(typeof e!="object"||e===null||typeof n!="object"||n===null)return!1;if(Array.isArray(e))return!Array.isArray(n)||e.length!==n.length?!1:e.some((r,s)=>n[s]===r);let t=Object.keys(e),o=Object.keys(n);if(t.length!==o.length)return!1;for(let r=0;r<t.length;r++)if(!ge.call(n,t[r])||!Object.is(e[t[r]],n[t[r]]))return!1;return!0},m=(e,n,t)=>!Me(n,e[t]),fe=(e,n,t)=>{e[t]=n},Pe=(e,n,t,o=fe,r=m)=>(0,P.useEffect)(()=>{let s=t==null?void 0:t.current;s&&r(s,n,e)&&o(s,n,e)},[t==null?void 0:t.current,n]),i=Pe;var be=()=>{try{return"3.1.0"}catch{}return"UNKNOWN"},ve=be(),b=()=>ve;var xe=y.default.forwardRef(({children:e,...n},t)=>y.default.createElement("mux-player",M({...n,ref:t}),e)),a=(e,n,t)=>(0,y.useEffect)(()=>{let o=n==null?void 0:n.current;if(!(!o||!t))return o.addEventListener(e,t),()=>{o.removeEventListener(e,t)}},[n==null?void 0:n.current,t]),he=(e,n)=>{let{onAbort:t,onCanPlay:o,onCanPlayThrough:r,onEmptied:s,onLoadStart:h,onLoadedData:T,onLoadedMetadata:R,onProgress:C,onDurationChange:k,onVolumeChange:L,onRateChange:O,onResize:S,onWaiting:G,onPlay:w,onPlaying:V,onTimeUpdate:A,onPause:N,onSeeking:D,onSeeked:I,onStalled:K,onSuspend:U,onEnded:_,onError:H,onCuePointChange:j,onCuePointsChange:z,onChapterChange:F,metadata:W,tokens:Z,paused:q,playbackId:J,playbackRates:Y,currentTime:$,themeProps:Q,extraSourceParams:X,castCustomData:B,_hlsConfig:ee,...ne}=n;return i("playbackRates",Y,e),i("metadata",W,e),i("extraSourceParams",X,e),i("_hlsConfig",ee,e),i("themeProps",Q,e),i("tokens",Z,e),i("playbackId",J,e),i("castCustomData",B,e),i("paused",q,e,(l,u)=>{u!=null&&(u?l.pause():l.play())},(l,u,te)=>l.hasAttribute("autoplay")&&!l.hasPlayed?!1:m(l,u,te)),i("currentTime",$,e,(l,u)=>{u!=null&&(l.currentTime=u)}),a("abort",e,t),a("canplay",e,o),a("canplaythrough",e,r),a("emptied",e,s),a("loadstart",e,h),a("loadeddata",e,T),a("loadedmetadata",e,R),a("progress",e,C),a("durationchange",e,k),a("volumechange",e,L),a("ratechange",e,O),a("resize",e,S),a("waiting",e,G),a("play",e,w),a("playing",e,V),a("timeupdate",e,A),a("pause",e,N),a("seeking",e,D),a("seeked",e,I),a("stalled",e,K),a("suspend",e,U),a("ended",e,_),a("error",e,H),a("cuepointchange",e,j),a("cuepointschange",e,z),a("chapterchange",e,F),[ne]},Te=b(),Re="mux-player-react",Ce=y.default.forwardRef((e,n)=>{let t=(0,x.useRef)(null),o=f(t,n),[r]=he(t,e);return y.default.createElement(xe,{ref:o,playerSoftwareName:Re,playerSoftwareVersion:Te,...r})}),ke=Ce;
1
+ "use strict";"use client";var le=Object.create;var d=Object.defineProperty;var ue=Object.getOwnPropertyDescriptor;var ye=Object.getOwnPropertyNames;var ce=Object.getPrototypeOf,pe=Object.prototype.hasOwnProperty;var de=(e,n)=>{for(var t in n)d(e,t,{get:n[t],enumerable:!0})},g=(e,n,t,o)=>{if(n&&typeof n=="object"||typeof n=="function")for(let r of ye(n))!pe.call(e,r)&&r!==t&&d(e,r,{get:()=>n[r],enumerable:!(o=ue(n,r))||o.enumerable});return e};var M=(e,n,t)=>(t=e!=null?le(ce(e)):{},g(n||!e||!e.__esModule?d(t,"default",{value:e,enumerable:!0}):t,e)),me=e=>g(d({},"__esModule",{value:!0}),e);var Oe={};de(Oe,{MaxResolution:()=>u.MaxResolution,MediaError:()=>R.MediaError,MinResolution:()=>u.MinResolution,RenditionOrder:()=>u.RenditionOrder,default:()=>Se,generatePlayerInitTime:()=>u.generatePlayerInitTime,playerSoftwareName:()=>L,playerSoftwareVersion:()=>k});module.exports=me(Oe);var l=M(require("react")),u=require("@mux/playback-core"),R=require("@mux/mux-player");var P=M(require("react")),b=parseInt(P.default.version)>=19,f={className:"class",classname:"class",htmlFor:"for",crossOrigin:"crossorigin",viewBox:"viewBox",playsInline:"playsinline",autoPlay:"autoplay",playbackRate:"playbackrate"},Ee=e=>e==null,ge=(e,n)=>Ee(n)?!1:e in n,Me=e=>e.replace(/[A-Z]/g,n=>`-${n.toLowerCase()}`),fe=(e,n)=>{if(!(!b&&typeof n=="boolean"&&!n)){if(ge(e,f))return f[e];if(typeof n!="undefined")return/[A-Z]/.test(e)?Me(e):e}};var Pe=(e,n)=>!b&&typeof e=="boolean"?"":e,v=(e={})=>Object.entries(e).reduce((n,[t,o])=>{let r=fe(t,o);if(!r)return n;let i=Pe(o,t);return n[r]=i,n},{});var C=require("react");var m=require("react"),x=(...e)=>{let n=(0,m.useRef)(null);return(0,m.useEffect)(()=>{e.forEach(t=>{t&&(typeof t=="function"?t(n.current):t.current=n.current)})},[e]),n};var T=require("react"),be=Object.prototype.hasOwnProperty,ve=(e,n)=>{if(Object.is(e,n))return!0;if(typeof e!="object"||e===null||typeof n!="object"||n===null)return!1;if(Array.isArray(e))return!Array.isArray(n)||e.length!==n.length?!1:e.some((r,i)=>n[i]===r);let t=Object.keys(e),o=Object.keys(n);if(t.length!==o.length)return!1;for(let r=0;r<t.length;r++)if(!be.call(n,t[r])||!Object.is(e[t[r]],n[t[r]]))return!1;return!0},E=(e,n,t)=>!ve(n,e[t]),xe=(e,n,t)=>{e[t]=n},Te=(e,n,t,o=xe,r=E)=>(0,T.useEffect)(()=>{let i=t==null?void 0:t.current;i&&r(i,n,e)&&o(i,n,e)},[t==null?void 0:t.current,n]),s=Te;var he=()=>{try{return"3.2.0"}catch{}return"UNKNOWN"},Re=he(),h=()=>Re;var Ce=l.default.forwardRef(({children:e,...n},t)=>l.default.createElement("mux-player",v({...n,ref:t}),e)),a=(e,n,t)=>(0,l.useEffect)(()=>{let o=n==null?void 0:n.current;if(!(!o||!t))return o.addEventListener(e,t),()=>{o.removeEventListener(e,t)}},[n==null?void 0:n.current,t]),ke=(e,n)=>{let{onAbort:t,onCanPlay:o,onCanPlayThrough:r,onEmptied:i,onLoadStart:p,onLoadedData:S,onLoadedMetadata:O,onProgress:G,onDurationChange:w,onVolumeChange:V,onRateChange:I,onResize:A,onWaiting:N,onPlay:D,onPlaying:_,onTimeUpdate:K,onPause:U,onSeeking:j,onSeeked:H,onStalled:W,onSuspend:z,onEnded:F,onError:Z,onCuePointChange:q,onCuePointsChange:J,onChapterChange:Y,metadata:$,tokens:Q,paused:X,playbackId:B,playbackRates:ee,currentTime:ne,themeProps:te,extraSourceParams:ae,castCustomData:re,_hlsConfig:oe,...ie}=n;return s("playbackRates",ee,e),s("metadata",$,e),s("extraSourceParams",ae,e),s("_hlsConfig",oe,e),s("themeProps",te,e),s("tokens",Q,e),s("playbackId",B,e),s("castCustomData",re,e),s("paused",X,e,(y,c)=>{c!=null&&(c?y.pause():y.play())},(y,c,se)=>y.hasAttribute("autoplay")&&!y.hasPlayed?!1:E(y,c,se)),s("currentTime",ne,e,(y,c)=>{c!=null&&(y.currentTime=c)}),a("abort",e,t),a("canplay",e,o),a("canplaythrough",e,r),a("emptied",e,i),a("loadstart",e,p),a("loadeddata",e,S),a("loadedmetadata",e,O),a("progress",e,G),a("durationchange",e,w),a("volumechange",e,V),a("ratechange",e,I),a("resize",e,A),a("waiting",e,N),a("play",e,D),a("playing",e,_),a("timeupdate",e,K),a("pause",e,U),a("seeking",e,j),a("seeked",e,H),a("stalled",e,W),a("suspend",e,z),a("ended",e,F),a("error",e,Z),a("cuepointchange",e,q),a("cuepointschange",e,J),a("chapterchange",e,Y),[ie]},k=h(),L="mux-player-react",Le=l.default.forwardRef((e,n)=>{var p;let t=(0,C.useRef)(null),o=x(t,n),[r]=ke(t,e),[i]=(0,l.useState)((p=e.playerInitTime)!=null?p:(0,u.generatePlayerInitTime)());return l.default.createElement(Ce,{ref:o,playerSoftwareName:L,playerSoftwareVersion:k,playerInitTime:i,...r})}),Se=Le;
2
2
  //# sourceMappingURL=index.cjs.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../src/index.tsx", "../src/common/utils.ts", "../src/useCombinedRefs.ts", "../src/useObjectPropEffect.ts", "../src/env.ts"],
4
- "sourcesContent": ["'use client';\nimport React, { useEffect } from 'react';\nimport type { CSSProperties } from 'react';\nimport type {\n StreamTypes,\n PlaybackTypes,\n CmcdTypes,\n MaxResolutionValue,\n MinResolutionValue,\n RenditionOrderValue,\n} from '@mux/playback-core';\nimport { MaxResolution, MinResolution, RenditionOrder } from '@mux/playback-core';\nimport { MediaError } from '@mux/mux-player';\nimport type MuxPlayerElement from '@mux/mux-player';\nimport type { Tokens, MuxPlayerElementEventMap } from '@mux/mux-player';\nimport { toNativeProps } from './common/utils';\nimport { useRef } from 'react';\nimport { useCombinedRefs } from './useCombinedRefs';\nimport useObjectPropEffect, { defaultHasChanged } from './useObjectPropEffect';\nimport { getPlayerVersion } from './env';\n\nexport { MediaError, MaxResolution, MinResolution, RenditionOrder };\n\ntype ValueOf<T> = T[keyof T];\ninterface GenericEventListener<T extends Event = CustomEvent> {\n (evt: T): void;\n}\n\nexport type MuxPlayerRefAttributes = MuxPlayerElement;\ntype VideoApiAttributes = {\n currentTime: number;\n volume: number;\n paused: boolean;\n src: string | null;\n poster: string;\n playbackRate: number;\n playsInline: boolean;\n preload: string;\n crossOrigin: string;\n autoPlay: boolean | string;\n loop: boolean;\n muted: boolean;\n style: CSSProperties;\n};\n\ntype MuxMediaPropTypes = {\n audio: boolean;\n // envKey: Options[\"data\"][\"env_key\"];\n envKey: string;\n // debug: Options[\"debug\"] & Hls[\"config\"][\"debug\"];\n debug: boolean;\n disableTracking: boolean;\n disableCookies: boolean;\n disablePictureInPicture?: boolean;\n // metadata: Partial<Options[\"data\"]>;\n metadata: { [k: string]: any };\n extraSourceParams: Record<string, any>;\n _hlsConfig: MuxPlayerElement['_hlsConfig'];\n beaconCollectionDomain: string;\n customDomain: string;\n playbackId: string;\n preferPlayback: ValueOf<PlaybackTypes> | undefined;\n // NOTE: Explicitly adding deprecated values here for now to avoid fully breaking changes in TS envs (CJP)\n streamType: ValueOf<StreamTypes> | 'll-live' | 'live:dvr' | 'll-live:dvr';\n defaultStreamType: ValueOf<StreamTypes>;\n targetLiveWindow: number;\n startTime: number;\n storyboardSrc: string;\n preferCmcd: ValueOf<CmcdTypes> | undefined;\n children?: React.ReactNode;\n};\n\nexport type MuxPlayerProps = {\n className?: string;\n hotkeys?: string;\n nohotkeys?: boolean;\n castReceiver?: string | undefined;\n castCustomData?: Record<string, any> | undefined;\n defaultHiddenCaptions?: boolean;\n playerSoftwareVersion?: string;\n playerSoftwareName?: string;\n forwardSeekOffset?: number;\n backwardSeekOffset?: number;\n maxResolution?: MaxResolutionValue;\n minResolution?: MinResolutionValue;\n renditionOrder?: RenditionOrderValue;\n programStartTime?: number;\n programEndTime?: number;\n assetStartTime?: number;\n assetEndTime?: number;\n metadataVideoId?: string;\n metadataVideoTitle?: string;\n metadataViewerUserId?: string;\n primaryColor?: string;\n secondaryColor?: string;\n accentColor?: string;\n placeholder?: string;\n playbackRates?: number[];\n defaultShowRemainingTime?: boolean;\n defaultDuration?: number;\n noVolumePref?: boolean;\n thumbnailTime?: number;\n title?: string;\n tokens?: Tokens;\n theme?: string;\n themeProps?: { [k: string]: any };\n onAbort?: GenericEventListener<MuxPlayerElementEventMap['abort']>;\n onCanPlay?: GenericEventListener<MuxPlayerElementEventMap['canplay']>;\n onCanPlayThrough?: GenericEventListener<MuxPlayerElementEventMap['canplaythrough']>;\n onEmptied?: GenericEventListener<MuxPlayerElementEventMap['emptied']>;\n onLoadStart?: GenericEventListener<MuxPlayerElementEventMap['loadstart']>;\n onLoadedData?: GenericEventListener<MuxPlayerElementEventMap['loadeddata']>;\n onLoadedMetadata?: GenericEventListener<MuxPlayerElementEventMap['loadedmetadata']>;\n onProgress?: GenericEventListener<MuxPlayerElementEventMap['progress']>;\n onDurationChange?: GenericEventListener<MuxPlayerElementEventMap['durationchange']>;\n onVolumeChange?: GenericEventListener<MuxPlayerElementEventMap['volumechange']>;\n onRateChange?: GenericEventListener<MuxPlayerElementEventMap['ratechange']>;\n onResize?: GenericEventListener<MuxPlayerElementEventMap['resize']>;\n onWaiting?: GenericEventListener<MuxPlayerElementEventMap['waiting']>;\n onPlay?: GenericEventListener<MuxPlayerElementEventMap['play']>;\n onPlaying?: GenericEventListener<MuxPlayerElementEventMap['playing']>;\n onTimeUpdate?: GenericEventListener<MuxPlayerElementEventMap['timeupdate']>;\n onPause?: GenericEventListener<MuxPlayerElementEventMap['pause']>;\n onSeeking?: GenericEventListener<MuxPlayerElementEventMap['seeking']>;\n onSeeked?: GenericEventListener<MuxPlayerElementEventMap['seeked']>;\n onStalled?: GenericEventListener<MuxPlayerElementEventMap['stalled']>;\n onSuspend?: GenericEventListener<MuxPlayerElementEventMap['suspend']>;\n onEnded?: GenericEventListener<MuxPlayerElementEventMap['ended']>;\n onError?: GenericEventListener<MuxPlayerElementEventMap['error']>;\n onCuePointChange?: GenericEventListener<MuxPlayerElementEventMap['cuepointchange']>;\n onCuePointsChange?: GenericEventListener<MuxPlayerElementEventMap['cuepointschange']>;\n onChapterChange?: GenericEventListener<MuxPlayerElementEventMap['chapterchange']>;\n} & Partial<MuxMediaPropTypes> &\n Partial<VideoApiAttributes>;\n\nconst MuxPlayerInternal = React.forwardRef<MuxPlayerRefAttributes, MuxPlayerProps>(({ children, ...props }, ref) => {\n return React.createElement('mux-player', toNativeProps({ ...props, ref }), children);\n});\n\nconst useEventCallbackEffect = <K extends keyof MuxPlayerElementEventMap>(\n type: K,\n ref: // | ((instance: EventTarget | null) => void)\n React.MutableRefObject<MuxPlayerElement | null> | null | undefined,\n callback: GenericEventListener<MuxPlayerElementEventMap[K]> | undefined\n) => {\n return useEffect(() => {\n const eventTarget = ref?.current;\n if (!eventTarget || !callback) return;\n eventTarget.addEventListener(type, callback);\n return () => {\n eventTarget.removeEventListener(type, callback);\n };\n }, [ref?.current, callback]);\n};\n\nconst usePlayer = (\n ref: // | ((instance: EventTarget | null) => void)\n React.MutableRefObject<MuxPlayerElement | null> | null | undefined,\n props: MuxPlayerProps\n) => {\n const {\n onAbort,\n onCanPlay,\n onCanPlayThrough,\n onEmptied,\n onLoadStart,\n onLoadedData,\n onLoadedMetadata,\n onProgress,\n onDurationChange,\n onVolumeChange,\n onRateChange,\n onResize,\n onWaiting,\n onPlay,\n onPlaying,\n onTimeUpdate,\n onPause,\n onSeeking,\n onSeeked,\n onStalled,\n onSuspend,\n onEnded,\n onError,\n onCuePointChange,\n onCuePointsChange,\n onChapterChange,\n metadata,\n tokens,\n paused,\n playbackId,\n playbackRates,\n currentTime,\n themeProps,\n extraSourceParams,\n castCustomData,\n _hlsConfig,\n ...remainingProps\n } = props;\n useObjectPropEffect('playbackRates', playbackRates, ref);\n useObjectPropEffect('metadata', metadata, ref);\n useObjectPropEffect('extraSourceParams', extraSourceParams, ref);\n useObjectPropEffect('_hlsConfig', _hlsConfig, ref);\n useObjectPropEffect('themeProps', themeProps, ref);\n useObjectPropEffect('tokens', tokens, ref);\n useObjectPropEffect('playbackId', playbackId, ref);\n useObjectPropEffect('castCustomData', castCustomData, ref);\n useObjectPropEffect(\n 'paused',\n paused,\n ref,\n (playerEl: HTMLMediaElement, pausedVal?: boolean) => {\n if (pausedVal == null) return;\n if (pausedVal) {\n playerEl.pause();\n } else {\n playerEl.play();\n }\n },\n (playerEl, value, propName) => {\n if (playerEl.hasAttribute('autoplay') && !playerEl.hasPlayed) {\n return false;\n }\n return defaultHasChanged(playerEl, value, propName);\n }\n );\n useObjectPropEffect('currentTime', currentTime, ref, (playerEl: HTMLMediaElement, currentTimeVal?: number) => {\n if (currentTimeVal == null) return;\n playerEl.currentTime = currentTimeVal;\n });\n useEventCallbackEffect('abort', ref, onAbort);\n useEventCallbackEffect('canplay', ref, onCanPlay);\n useEventCallbackEffect('canplaythrough', ref, onCanPlayThrough);\n useEventCallbackEffect('emptied', ref, onEmptied);\n useEventCallbackEffect('loadstart', ref, onLoadStart);\n useEventCallbackEffect('loadeddata', ref, onLoadedData);\n useEventCallbackEffect('loadedmetadata', ref, onLoadedMetadata);\n useEventCallbackEffect('progress', ref, onProgress);\n useEventCallbackEffect('durationchange', ref, onDurationChange);\n useEventCallbackEffect('volumechange', ref, onVolumeChange);\n useEventCallbackEffect('ratechange', ref, onRateChange);\n useEventCallbackEffect('resize', ref, onResize);\n useEventCallbackEffect('waiting', ref, onWaiting);\n useEventCallbackEffect('play', ref, onPlay);\n useEventCallbackEffect('playing', ref, onPlaying);\n useEventCallbackEffect('timeupdate', ref, onTimeUpdate);\n useEventCallbackEffect('pause', ref, onPause);\n useEventCallbackEffect('seeking', ref, onSeeking);\n useEventCallbackEffect('seeked', ref, onSeeked);\n useEventCallbackEffect('stalled', ref, onStalled);\n useEventCallbackEffect('suspend', ref, onSuspend);\n useEventCallbackEffect('ended', ref, onEnded);\n useEventCallbackEffect('error', ref, onError);\n useEventCallbackEffect('cuepointchange', ref, onCuePointChange);\n useEventCallbackEffect('cuepointschange', ref, onCuePointsChange);\n useEventCallbackEffect('chapterchange', ref, onChapterChange);\n return [remainingProps];\n};\n\nconst playerSoftwareVersion = getPlayerVersion();\nconst playerSoftwareName = 'mux-player-react';\n\nconst MuxPlayer = React.forwardRef<\n MuxPlayerRefAttributes,\n Omit<MuxPlayerProps, 'playerSoftwareVersion' | 'playerSoftwareName'>\n>((props, ref) => {\n const innerPlayerRef = useRef<MuxPlayerElement>(null);\n const playerRef = useCombinedRefs(innerPlayerRef, ref);\n const [remainingProps] = usePlayer(innerPlayerRef, props);\n\n return (\n <MuxPlayerInternal\n /** @TODO Fix types relationships (CJP) */\n ref={playerRef as typeof innerPlayerRef}\n playerSoftwareName={playerSoftwareName}\n playerSoftwareVersion={playerSoftwareVersion}\n {...remainingProps}\n />\n );\n});\n\nexport default MuxPlayer;\n", "// NOTE: As a forward-looking implementation, we may want to assume\n// prop names -> attribute names is always a simple name.toLowerCase()\n// and provide a mechanism for passing in per-component overrides for\n// e.g. kebab cases, as that's the way React/Preact handles these. (CJP)\nconst ReactPropToAttrNameMap = {\n className: 'class',\n classname: 'class',\n htmlFor: 'for',\n crossOrigin: 'crossorigin',\n viewBox: 'viewBox',\n playsInline: 'playsinline',\n autoPlay: 'autoplay',\n playbackRate: 'playbackrate',\n};\n\ntype KeyTypes = string | number | symbol;\ntype Maybe<T> = T | null | undefined;\n\nexport const isNil = (x: unknown): x is null | undefined => x == undefined;\n\n// Type Guard to determine if a given key is actually a key of some object of type T\nexport const isKeyOf = <T extends {} = any>(k: KeyTypes, o: Maybe<T>): k is keyof T => {\n if (isNil(o)) return false;\n return k in o;\n};\n\nconst toKebabCase = (string: string) => string.replace(/[A-Z]/g, (match) => `-${match.toLowerCase()}`);\n\nexport const toNativeAttrName = (propName: string, propValue: any): string | undefined => {\n if (typeof propValue === 'boolean' && !propValue) return undefined;\n if (isKeyOf(propName, ReactPropToAttrNameMap)) return ReactPropToAttrNameMap[propName];\n if (typeof propValue == undefined) return undefined;\n if (/[A-Z]/.test(propName)) return toKebabCase(propName);\n return propName;\n};\nexport const toStyleAttr = <T>(x: T) => x;\n\nexport const toNativeAttrValue = (propValue: any, propName: string) => {\n if (typeof propValue === 'boolean') return '';\n return propValue;\n};\n\nexport const toNativeProps = (props = {}) => {\n return Object.entries(props).reduce<{ [k: string]: string }>((transformedProps, [propName, propValue]) => {\n const attrName = toNativeAttrName(propName, propValue);\n\n // prop was stripped. Don't add.\n if (!attrName) {\n return transformedProps;\n }\n\n const attrValue = toNativeAttrValue(propValue, propName);\n transformedProps[attrName] = attrValue;\n return transformedProps;\n }, {});\n};\n", "import { useEffect, useRef } from 'react';\nimport type { MutableRefObject, ForwardedRef } from 'react';\n\ntype Maybe<T> = T | null | undefined;\ntype RefCb<T> = (instance: Maybe<T>) => void;\ntype RefObj<T> = MutableRefObject<Maybe<T>>;\ntype RefTypes<T> = RefObj<T> | RefCb<T> | ForwardedRef<T>;\ninterface useCombinedRefs {\n <T>(...refs: Maybe<RefTypes<T>>[]): RefObj<T>;\n}\n\nexport const useCombinedRefs: useCombinedRefs = (...refs) => {\n const targetRef = useRef(null);\n\n useEffect(() => {\n refs.forEach((ref) => {\n if (!ref) return;\n\n if (typeof ref === 'function') {\n ref(targetRef.current);\n } else {\n ref.current = targetRef.current;\n }\n });\n }, [refs]);\n\n return targetRef;\n};\n\n// TS assumed default export was interface def instead of function value (CJP)\nconst defaultUseCombinedRefs = useCombinedRefs;\nexport default defaultUseCombinedRefs;\n", "import { useEffect } from 'react';\n\nconst hasOwnProperty = Object.prototype.hasOwnProperty;\n\n/**\n * Slightly modified version of React's shallowEqual, with optimizations for Arrays\n * so we may treat them specifically as unequal if they are not a) both arrays\n * or b) don't contain the same (shallowly compared) elements.\n */\nconst shallowEqual = (objA: any, objB: any): boolean => {\n if (Object.is(objA, objB)) {\n return true;\n }\n\n if (typeof objA !== 'object' || objA === null || typeof objB !== 'object' || objB === null) {\n return false;\n }\n\n if (Array.isArray(objA)) {\n // Early \"cheap\" array compares\n if (!Array.isArray(objB) || objA.length !== objB.length) return false;\n // Shallow compare for arrays\n return objA.some((vVal, i) => objB[i] === vVal);\n }\n\n const keysA = Object.keys(objA);\n const keysB = Object.keys(objB);\n\n if (keysA.length !== keysB.length) {\n return false;\n }\n\n // Test for A's keys different from B.\n for (let i = 0; i < keysA.length; i++) {\n if (!hasOwnProperty.call(objB, keysA[i]) || !Object.is(objA[keysA[i]], objB[keysA[i]])) {\n return false;\n }\n }\n\n return true;\n};\n\nexport const defaultHasChanged = (obj: any, v: any, k: string) => {\n return !shallowEqual(v, obj[k]);\n};\n\nconst defaultUpdateValue = (obj: any, v: any, k: string) => {\n obj[k] = v;\n};\n\nexport const useObjectPropEffect = <T extends { [k: string]: any }, V>(\n propName: string,\n propValue: V | null | undefined,\n ref: React.MutableRefObject<T | null> | null | undefined,\n updateValue = defaultUpdateValue,\n hasChanged = defaultHasChanged\n) => {\n return useEffect(() => {\n const obj = ref?.current;\n if (!obj) return;\n if (!hasChanged(obj, propValue, propName)) return;\n updateValue(obj, propValue, propName);\n }, [ref?.current, propValue]);\n};\n\nexport default useObjectPropEffect;\n", "const getEnvPlayerVersion = () => {\n try {\n // @ts-ignore\n return PLAYER_VERSION as string;\n } catch {}\n return 'UNKNOWN';\n};\n\nconst player_version: string = getEnvPlayerVersion();\n\nexport const getPlayerVersion = () => player_version;\n"],
5
- "mappings": "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",
6
- "names": ["src_exports", "__export", "src_default", "__toCommonJS", "import_react", "import_playback_core", "import_mux_player", "ReactPropToAttrNameMap", "isNil", "x", "isKeyOf", "k", "o", "toKebabCase", "string", "match", "toNativeAttrName", "propName", "propValue", "toNativeAttrValue", "propValue", "propName", "toNativeProps", "props", "transformedProps", "attrName", "toNativeAttrName", "attrValue", "import_react", "import_react", "useCombinedRefs", "refs", "targetRef", "ref", "import_react", "hasOwnProperty", "shallowEqual", "objA", "objB", "vVal", "i", "keysA", "keysB", "defaultHasChanged", "obj", "v", "k", "defaultUpdateValue", "useObjectPropEffect", "propName", "propValue", "ref", "updateValue", "hasChanged", "useObjectPropEffect_default", "getEnvPlayerVersion", "player_version", "getPlayerVersion", "MuxPlayerInternal", "React", "children", "props", "ref", "toNativeProps", "useEventCallbackEffect", "type", "callback", "eventTarget", "usePlayer", "onAbort", "onCanPlay", "onCanPlayThrough", "onEmptied", "onLoadStart", "onLoadedData", "onLoadedMetadata", "onProgress", "onDurationChange", "onVolumeChange", "onRateChange", "onResize", "onWaiting", "onPlay", "onPlaying", "onTimeUpdate", "onPause", "onSeeking", "onSeeked", "onStalled", "onSuspend", "onEnded", "onError", "onCuePointChange", "onCuePointsChange", "onChapterChange", "metadata", "tokens", "paused", "playbackId", "playbackRates", "currentTime", "themeProps", "extraSourceParams", "castCustomData", "_hlsConfig", "remainingProps", "useObjectPropEffect_default", "playerEl", "pausedVal", "value", "propName", "defaultHasChanged", "currentTimeVal", "playerSoftwareVersion", "getPlayerVersion", "playerSoftwareName", "MuxPlayer", "innerPlayerRef", "playerRef", "useCombinedRefs", "src_default"]
4
+ "sourcesContent": ["'use client';\nimport React, { useEffect, useState } from 'react';\nimport type { CSSProperties } from 'react';\nimport type {\n StreamTypes,\n PlaybackTypes,\n CmcdTypes,\n MaxResolutionValue,\n MinResolutionValue,\n RenditionOrderValue,\n} from '@mux/playback-core';\nimport { MaxResolution, MinResolution, RenditionOrder, generatePlayerInitTime } from '@mux/playback-core';\nimport { MediaError } from '@mux/mux-player';\nimport type MuxPlayerElement from '@mux/mux-player';\nimport type { Tokens, MuxPlayerElementEventMap } from '@mux/mux-player';\nimport { toNativeProps } from './common/utils';\nimport { useRef } from 'react';\nimport { useCombinedRefs } from './useCombinedRefs';\nimport useObjectPropEffect, { defaultHasChanged } from './useObjectPropEffect';\nimport { getPlayerVersion } from './env';\n\nexport { MediaError, MaxResolution, MinResolution, RenditionOrder, generatePlayerInitTime };\n\ntype ValueOf<T> = T[keyof T];\ninterface GenericEventListener<T extends Event = CustomEvent> {\n (evt: T): void;\n}\n\nexport type MuxPlayerRefAttributes = MuxPlayerElement;\ntype VideoApiAttributes = {\n currentTime: number;\n volume: number;\n paused: boolean;\n src: string | null;\n poster: string;\n playbackRate: number;\n playsInline: boolean;\n preload: string;\n crossOrigin: string;\n autoPlay: boolean | string;\n loop: boolean;\n muted: boolean;\n style: CSSProperties;\n};\n\ntype MuxMediaPropTypes = {\n audio: boolean;\n // envKey: Options[\"data\"][\"env_key\"];\n envKey: string;\n // debug: Options[\"debug\"] & Hls[\"config\"][\"debug\"];\n debug: boolean;\n disableTracking: boolean;\n disableCookies: boolean;\n disablePictureInPicture?: boolean;\n // metadata: Partial<Options[\"data\"]>;\n metadata: { [k: string]: any };\n extraSourceParams: Record<string, any>;\n _hlsConfig: MuxPlayerElement['_hlsConfig'];\n beaconCollectionDomain: string;\n customDomain: string;\n playbackId: string;\n preferPlayback: ValueOf<PlaybackTypes> | undefined;\n // NOTE: Explicitly adding deprecated values here for now to avoid fully breaking changes in TS envs (CJP)\n streamType: ValueOf<StreamTypes> | 'll-live' | 'live:dvr' | 'll-live:dvr';\n defaultStreamType: ValueOf<StreamTypes>;\n targetLiveWindow: number;\n startTime: number;\n storyboardSrc: string;\n preferCmcd: ValueOf<CmcdTypes> | undefined;\n children?: React.ReactNode;\n};\n\nexport type MuxPlayerProps = {\n className?: string;\n hotkeys?: string;\n nohotkeys?: boolean;\n castReceiver?: string | undefined;\n castCustomData?: Record<string, any> | undefined;\n defaultHiddenCaptions?: boolean;\n playerSoftwareVersion?: string;\n playerSoftwareName?: string;\n playerInitTime?: number;\n forwardSeekOffset?: number;\n backwardSeekOffset?: number;\n maxResolution?: MaxResolutionValue;\n minResolution?: MinResolutionValue;\n renditionOrder?: RenditionOrderValue;\n programStartTime?: number;\n programEndTime?: number;\n assetStartTime?: number;\n assetEndTime?: number;\n metadataVideoId?: string;\n metadataVideoTitle?: string;\n metadataViewerUserId?: string;\n primaryColor?: string;\n secondaryColor?: string;\n accentColor?: string;\n placeholder?: string;\n playbackRates?: number[];\n defaultShowRemainingTime?: boolean;\n defaultDuration?: number;\n noVolumePref?: boolean;\n thumbnailTime?: number;\n title?: string;\n tokens?: Tokens;\n theme?: string;\n themeProps?: { [k: string]: any };\n onAbort?: GenericEventListener<MuxPlayerElementEventMap['abort']>;\n onCanPlay?: GenericEventListener<MuxPlayerElementEventMap['canplay']>;\n onCanPlayThrough?: GenericEventListener<MuxPlayerElementEventMap['canplaythrough']>;\n onEmptied?: GenericEventListener<MuxPlayerElementEventMap['emptied']>;\n onLoadStart?: GenericEventListener<MuxPlayerElementEventMap['loadstart']>;\n onLoadedData?: GenericEventListener<MuxPlayerElementEventMap['loadeddata']>;\n onLoadedMetadata?: GenericEventListener<MuxPlayerElementEventMap['loadedmetadata']>;\n onProgress?: GenericEventListener<MuxPlayerElementEventMap['progress']>;\n onDurationChange?: GenericEventListener<MuxPlayerElementEventMap['durationchange']>;\n onVolumeChange?: GenericEventListener<MuxPlayerElementEventMap['volumechange']>;\n onRateChange?: GenericEventListener<MuxPlayerElementEventMap['ratechange']>;\n onResize?: GenericEventListener<MuxPlayerElementEventMap['resize']>;\n onWaiting?: GenericEventListener<MuxPlayerElementEventMap['waiting']>;\n onPlay?: GenericEventListener<MuxPlayerElementEventMap['play']>;\n onPlaying?: GenericEventListener<MuxPlayerElementEventMap['playing']>;\n onTimeUpdate?: GenericEventListener<MuxPlayerElementEventMap['timeupdate']>;\n onPause?: GenericEventListener<MuxPlayerElementEventMap['pause']>;\n onSeeking?: GenericEventListener<MuxPlayerElementEventMap['seeking']>;\n onSeeked?: GenericEventListener<MuxPlayerElementEventMap['seeked']>;\n onStalled?: GenericEventListener<MuxPlayerElementEventMap['stalled']>;\n onSuspend?: GenericEventListener<MuxPlayerElementEventMap['suspend']>;\n onEnded?: GenericEventListener<MuxPlayerElementEventMap['ended']>;\n onError?: GenericEventListener<MuxPlayerElementEventMap['error']>;\n onCuePointChange?: GenericEventListener<MuxPlayerElementEventMap['cuepointchange']>;\n onCuePointsChange?: GenericEventListener<MuxPlayerElementEventMap['cuepointschange']>;\n onChapterChange?: GenericEventListener<MuxPlayerElementEventMap['chapterchange']>;\n} & Partial<MuxMediaPropTypes> &\n Partial<VideoApiAttributes>;\n\nconst MuxPlayerInternal = React.forwardRef<MuxPlayerRefAttributes, MuxPlayerProps>(({ children, ...props }, ref) => {\n return React.createElement('mux-player', toNativeProps({ ...props, ref }), children);\n});\n\nconst useEventCallbackEffect = <K extends keyof MuxPlayerElementEventMap>(\n type: K,\n ref: // | ((instance: EventTarget | null) => void)\n React.MutableRefObject<MuxPlayerElement | null> | null | undefined,\n callback: GenericEventListener<MuxPlayerElementEventMap[K]> | undefined\n) => {\n return useEffect(() => {\n const eventTarget = ref?.current;\n if (!eventTarget || !callback) return;\n eventTarget.addEventListener(type, callback);\n return () => {\n eventTarget.removeEventListener(type, callback);\n };\n }, [ref?.current, callback]);\n};\n\nconst usePlayer = (\n ref: // | ((instance: EventTarget | null) => void)\n React.MutableRefObject<MuxPlayerElement | null> | null | undefined,\n props: MuxPlayerProps\n) => {\n const {\n onAbort,\n onCanPlay,\n onCanPlayThrough,\n onEmptied,\n onLoadStart,\n onLoadedData,\n onLoadedMetadata,\n onProgress,\n onDurationChange,\n onVolumeChange,\n onRateChange,\n onResize,\n onWaiting,\n onPlay,\n onPlaying,\n onTimeUpdate,\n onPause,\n onSeeking,\n onSeeked,\n onStalled,\n onSuspend,\n onEnded,\n onError,\n onCuePointChange,\n onCuePointsChange,\n onChapterChange,\n metadata,\n tokens,\n paused,\n playbackId,\n playbackRates,\n currentTime,\n themeProps,\n extraSourceParams,\n castCustomData,\n _hlsConfig,\n ...remainingProps\n } = props;\n useObjectPropEffect('playbackRates', playbackRates, ref);\n useObjectPropEffect('metadata', metadata, ref);\n useObjectPropEffect('extraSourceParams', extraSourceParams, ref);\n useObjectPropEffect('_hlsConfig', _hlsConfig, ref);\n useObjectPropEffect('themeProps', themeProps, ref);\n useObjectPropEffect('tokens', tokens, ref);\n useObjectPropEffect('playbackId', playbackId, ref);\n useObjectPropEffect('castCustomData', castCustomData, ref);\n useObjectPropEffect(\n 'paused',\n paused,\n ref,\n (playerEl: HTMLMediaElement, pausedVal?: boolean) => {\n if (pausedVal == null) return;\n if (pausedVal) {\n playerEl.pause();\n } else {\n playerEl.play();\n }\n },\n (playerEl, value, propName) => {\n if (playerEl.hasAttribute('autoplay') && !playerEl.hasPlayed) {\n return false;\n }\n return defaultHasChanged(playerEl, value, propName);\n }\n );\n useObjectPropEffect('currentTime', currentTime, ref, (playerEl: HTMLMediaElement, currentTimeVal?: number) => {\n if (currentTimeVal == null) return;\n playerEl.currentTime = currentTimeVal;\n });\n useEventCallbackEffect('abort', ref, onAbort);\n useEventCallbackEffect('canplay', ref, onCanPlay);\n useEventCallbackEffect('canplaythrough', ref, onCanPlayThrough);\n useEventCallbackEffect('emptied', ref, onEmptied);\n useEventCallbackEffect('loadstart', ref, onLoadStart);\n useEventCallbackEffect('loadeddata', ref, onLoadedData);\n useEventCallbackEffect('loadedmetadata', ref, onLoadedMetadata);\n useEventCallbackEffect('progress', ref, onProgress);\n useEventCallbackEffect('durationchange', ref, onDurationChange);\n useEventCallbackEffect('volumechange', ref, onVolumeChange);\n useEventCallbackEffect('ratechange', ref, onRateChange);\n useEventCallbackEffect('resize', ref, onResize);\n useEventCallbackEffect('waiting', ref, onWaiting);\n useEventCallbackEffect('play', ref, onPlay);\n useEventCallbackEffect('playing', ref, onPlaying);\n useEventCallbackEffect('timeupdate', ref, onTimeUpdate);\n useEventCallbackEffect('pause', ref, onPause);\n useEventCallbackEffect('seeking', ref, onSeeking);\n useEventCallbackEffect('seeked', ref, onSeeked);\n useEventCallbackEffect('stalled', ref, onStalled);\n useEventCallbackEffect('suspend', ref, onSuspend);\n useEventCallbackEffect('ended', ref, onEnded);\n useEventCallbackEffect('error', ref, onError);\n useEventCallbackEffect('cuepointchange', ref, onCuePointChange);\n useEventCallbackEffect('cuepointschange', ref, onCuePointsChange);\n useEventCallbackEffect('chapterchange', ref, onChapterChange);\n return [remainingProps];\n};\n\nexport const playerSoftwareVersion = getPlayerVersion();\nexport const playerSoftwareName = 'mux-player-react';\n\nconst MuxPlayer = React.forwardRef<\n MuxPlayerRefAttributes,\n Omit<MuxPlayerProps, 'playerSoftwareVersion' | 'playerSoftwareName'>\n>((props, ref) => {\n const innerPlayerRef = useRef<MuxPlayerElement>(null);\n const playerRef = useCombinedRefs(innerPlayerRef, ref);\n const [remainingProps] = usePlayer(innerPlayerRef, props);\n const [playerInitTime] = useState(props.playerInitTime ?? generatePlayerInitTime());\n\n return (\n <MuxPlayerInternal\n /** @TODO Fix types relationships (CJP) */\n ref={playerRef as typeof innerPlayerRef}\n playerSoftwareName={playerSoftwareName}\n playerSoftwareVersion={playerSoftwareVersion}\n playerInitTime={playerInitTime}\n {...remainingProps}\n />\n );\n});\n\nexport default MuxPlayer;\n", "import React from 'react';\n\n// React 19 supports custom elements and setting properties directly on them,\n// older React versions converted all props to attributes on custom elments.\n// Boolean `true` values should not be converted to empty strings in React 19+\n// because that would result in a `false` value if it was set via a property.\n// React 19+ handles primitive values correctly but we still need to convert\n// the camelCase prop names to kebab-case attribute names for mux-player. (WL)\n\nconst IS_REACT_19_OR_NEWER = parseInt(React.version) >= 19;\n\n// NOTE: As a forward-looking implementation, we may want to assume\n// prop names -> attribute names is always a simple name.toLowerCase()\n// and provide a mechanism for passing in per-component overrides for\n// e.g. kebab cases, as that's the way React/Preact handles these. (CJP)\nconst ReactPropToAttrNameMap = {\n className: 'class',\n classname: 'class',\n htmlFor: 'for',\n crossOrigin: 'crossorigin',\n viewBox: 'viewBox',\n playsInline: 'playsinline',\n autoPlay: 'autoplay',\n playbackRate: 'playbackrate',\n};\n\ntype KeyTypes = string | number | symbol;\ntype Maybe<T> = T | null | undefined;\n\nexport const isNil = (x: unknown): x is null | undefined => x == undefined;\n\n// Type Guard to determine if a given key is actually a key of some object of type T\nexport const isKeyOf = <T extends object = any>(k: KeyTypes, o: Maybe<T>): k is keyof T => {\n if (isNil(o)) return false;\n return k in o;\n};\n\nconst toKebabCase = (string: string) => string.replace(/[A-Z]/g, (match) => `-${match.toLowerCase()}`);\n\nexport const toNativeAttrName = (propName: string, propValue: any): string | undefined => {\n if (!IS_REACT_19_OR_NEWER && typeof propValue === 'boolean' && !propValue) return undefined;\n if (isKeyOf(propName, ReactPropToAttrNameMap)) return ReactPropToAttrNameMap[propName];\n if (typeof propValue === 'undefined') return undefined;\n if (/[A-Z]/.test(propName)) return toKebabCase(propName);\n return propName;\n};\nexport const toStyleAttr = <T>(x: T) => x;\n\nexport const toNativeAttrValue = (propValue: any, _propName: string) => {\n if (!IS_REACT_19_OR_NEWER && typeof propValue === 'boolean') return '';\n return propValue;\n};\n\nexport const toNativeProps = (props = {}) => {\n return Object.entries(props).reduce<{ [k: string]: string }>((transformedProps, [propName, propValue]) => {\n const attrName = toNativeAttrName(propName, propValue);\n\n // prop was stripped. Don't add.\n if (!attrName) {\n return transformedProps;\n }\n\n const attrValue = toNativeAttrValue(propValue, propName);\n transformedProps[attrName] = attrValue;\n return transformedProps;\n }, {});\n};\n", "import { useEffect, useRef } from 'react';\nimport type { MutableRefObject, ForwardedRef } from 'react';\n\ntype Maybe<T> = T | null | undefined;\ntype RefCb<T> = (instance: Maybe<T>) => void;\ntype RefObj<T> = MutableRefObject<Maybe<T>>;\ntype RefTypes<T> = RefObj<T> | RefCb<T> | ForwardedRef<T>;\ninterface useCombinedRefs {\n <T>(...refs: Maybe<RefTypes<T>>[]): RefObj<T>;\n}\n\nexport const useCombinedRefs: useCombinedRefs = (...refs) => {\n const targetRef = useRef(null);\n\n useEffect(() => {\n refs.forEach((ref) => {\n if (!ref) return;\n\n if (typeof ref === 'function') {\n ref(targetRef.current);\n } else {\n ref.current = targetRef.current;\n }\n });\n }, [refs]);\n\n return targetRef;\n};\n\n// TS assumed default export was interface def instead of function value (CJP)\nconst defaultUseCombinedRefs = useCombinedRefs;\nexport default defaultUseCombinedRefs;\n", "import { useEffect } from 'react';\n\nconst hasOwnProperty = Object.prototype.hasOwnProperty;\n\n/**\n * Slightly modified version of React's shallowEqual, with optimizations for Arrays\n * so we may treat them specifically as unequal if they are not a) both arrays\n * or b) don't contain the same (shallowly compared) elements.\n */\nconst shallowEqual = (objA: any, objB: any): boolean => {\n if (Object.is(objA, objB)) {\n return true;\n }\n\n if (typeof objA !== 'object' || objA === null || typeof objB !== 'object' || objB === null) {\n return false;\n }\n\n if (Array.isArray(objA)) {\n // Early \"cheap\" array compares\n if (!Array.isArray(objB) || objA.length !== objB.length) return false;\n // Shallow compare for arrays\n return objA.some((vVal, i) => objB[i] === vVal);\n }\n\n const keysA = Object.keys(objA);\n const keysB = Object.keys(objB);\n\n if (keysA.length !== keysB.length) {\n return false;\n }\n\n // Test for A's keys different from B.\n for (let i = 0; i < keysA.length; i++) {\n if (!hasOwnProperty.call(objB, keysA[i]) || !Object.is(objA[keysA[i]], objB[keysA[i]])) {\n return false;\n }\n }\n\n return true;\n};\n\nexport const defaultHasChanged = (obj: any, v: any, k: string) => {\n return !shallowEqual(v, obj[k]);\n};\n\nconst defaultUpdateValue = (obj: any, v: any, k: string) => {\n obj[k] = v;\n};\n\nexport const useObjectPropEffect = <T extends { [k: string]: any }, V>(\n propName: string,\n propValue: V | null | undefined,\n ref: React.MutableRefObject<T | null> | null | undefined,\n updateValue = defaultUpdateValue,\n hasChanged = defaultHasChanged\n) => {\n return useEffect(() => {\n const obj = ref?.current;\n if (!obj) return;\n if (!hasChanged(obj, propValue, propName)) return;\n updateValue(obj, propValue, propName);\n }, [ref?.current, propValue]);\n};\n\nexport default useObjectPropEffect;\n", "const getEnvPlayerVersion = () => {\n try {\n // @ts-ignore\n return PLAYER_VERSION as string;\n } catch {}\n return 'UNKNOWN';\n};\n\nconst player_version: string = getEnvPlayerVersion();\n\nexport const getPlayerVersion = () => player_version;\n"],
5
+ "mappings": "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",
6
+ "names": ["src_exports", "__export", "src_default", "playerSoftwareName", "playerSoftwareVersion", "__toCommonJS", "import_react", "import_playback_core", "import_mux_player", "import_react", "IS_REACT_19_OR_NEWER", "React", "ReactPropToAttrNameMap", "isNil", "x", "isKeyOf", "k", "o", "toKebabCase", "string", "match", "toNativeAttrName", "propName", "propValue", "toNativeAttrValue", "propValue", "_propName", "IS_REACT_19_OR_NEWER", "toNativeProps", "props", "transformedProps", "propName", "attrName", "toNativeAttrName", "attrValue", "import_react", "import_react", "useCombinedRefs", "refs", "targetRef", "ref", "import_react", "hasOwnProperty", "shallowEqual", "objA", "objB", "vVal", "keysA", "keysB", "i", "defaultHasChanged", "obj", "v", "k", "defaultUpdateValue", "useObjectPropEffect", "propName", "propValue", "ref", "updateValue", "hasChanged", "useObjectPropEffect_default", "getEnvPlayerVersion", "player_version", "getPlayerVersion", "MuxPlayerInternal", "React", "children", "props", "ref", "toNativeProps", "useEventCallbackEffect", "type", "callback", "eventTarget", "usePlayer", "onAbort", "onCanPlay", "onCanPlayThrough", "onEmptied", "onLoadStart", "onLoadedData", "onLoadedMetadata", "onProgress", "onDurationChange", "onVolumeChange", "onRateChange", "onResize", "onWaiting", "onPlay", "onPlaying", "onTimeUpdate", "onPause", "onSeeking", "onSeeked", "onStalled", "onSuspend", "onEnded", "onError", "onCuePointChange", "onCuePointsChange", "onChapterChange", "metadata", "tokens", "paused", "playbackId", "playbackRates", "currentTime", "themeProps", "extraSourceParams", "castCustomData", "_hlsConfig", "remainingProps", "useObjectPropEffect_default", "playerEl", "pausedVal", "value", "propName", "defaultHasChanged", "currentTimeVal", "playerSoftwareVersion", "getPlayerVersion", "playerSoftwareName", "MuxPlayer", "_a", "innerPlayerRef", "playerRef", "useCombinedRefs", "playerInitTime", "src_default"]
7
7
  }
package/dist/index.mjs CHANGED
@@ -1,2 +1,2 @@
1
- "use client";import y,{useEffect as ye}from"react";import{MaxResolution as Re,MinResolution as Ce,RenditionOrder as ke}from"@mux/playback-core";import{MediaError as Oe}from"@mux/mux-player";var d={className:"class",classname:"class",htmlFor:"for",crossOrigin:"crossorigin",viewBox:"viewBox",playsInline:"playsinline",autoPlay:"autoplay",playbackRate:"playbackrate"},$=e=>e==null,Q=(e,n)=>$(n)?!1:e in n,X=e=>e.replace(/[A-Z]/g,n=>`-${n.toLowerCase()}`),B=(e,n)=>{if(!(typeof n=="boolean"&&!n)){if(Q(e,d))return d[e];if(typeof n!=null)return/[A-Z]/.test(e)?X(e):e}};var ee=(e,n)=>typeof e=="boolean"?"":e,p=(e={})=>Object.entries(e).reduce((n,[t,o])=>{let r=B(t,o);if(!r)return n;let s=ee(o,t);return n[r]=s,n},{});import{useRef as ce}from"react";import{useEffect as ne,useRef as te}from"react";var m=(...e)=>{let n=te(null);return ne(()=>{e.forEach(t=>{t&&(typeof t=="function"?t(n.current):t.current=n.current)})},[e]),n};import{useEffect as ae}from"react";var re=Object.prototype.hasOwnProperty,oe=(e,n)=>{if(Object.is(e,n))return!0;if(typeof e!="object"||e===null||typeof n!="object"||n===null)return!1;if(Array.isArray(e))return!Array.isArray(n)||e.length!==n.length?!1:e.some((r,s)=>n[s]===r);let t=Object.keys(e),o=Object.keys(n);if(t.length!==o.length)return!1;for(let r=0;r<t.length;r++)if(!re.call(n,t[r])||!Object.is(e[t[r]],n[t[r]]))return!1;return!0},c=(e,n,t)=>!oe(n,e[t]),ie=(e,n,t)=>{e[t]=n},se=(e,n,t,o=ie,r=c)=>ae(()=>{let s=t==null?void 0:t.current;s&&r(s,n,e)&&o(s,n,e)},[t==null?void 0:t.current,n]),i=se;var le=()=>{try{return"3.1.0"}catch{}return"UNKNOWN"},ue=le(),E=()=>ue;var de=y.forwardRef(({children:e,...n},t)=>y.createElement("mux-player",p({...n,ref:t}),e)),a=(e,n,t)=>ye(()=>{let o=n==null?void 0:n.current;if(!(!o||!t))return o.addEventListener(e,t),()=>{o.removeEventListener(e,t)}},[n==null?void 0:n.current,t]),pe=(e,n)=>{let{onAbort:t,onCanPlay:o,onCanPlayThrough:r,onEmptied:s,onLoadStart:g,onLoadedData:M,onLoadedMetadata:f,onProgress:P,onDurationChange:b,onVolumeChange:v,onRateChange:x,onResize:h,onWaiting:T,onPlay:R,onPlaying:C,onTimeUpdate:k,onPause:L,onSeeking:O,onSeeked:S,onStalled:G,onSuspend:w,onEnded:V,onError:A,onCuePointChange:N,onCuePointsChange:D,onChapterChange:I,metadata:K,tokens:U,paused:_,playbackId:H,playbackRates:j,currentTime:z,themeProps:F,extraSourceParams:W,castCustomData:Z,_hlsConfig:q,...J}=n;return i("playbackRates",j,e),i("metadata",K,e),i("extraSourceParams",W,e),i("_hlsConfig",q,e),i("themeProps",F,e),i("tokens",U,e),i("playbackId",H,e),i("castCustomData",Z,e),i("paused",_,e,(l,u)=>{u!=null&&(u?l.pause():l.play())},(l,u,Y)=>l.hasAttribute("autoplay")&&!l.hasPlayed?!1:c(l,u,Y)),i("currentTime",z,e,(l,u)=>{u!=null&&(l.currentTime=u)}),a("abort",e,t),a("canplay",e,o),a("canplaythrough",e,r),a("emptied",e,s),a("loadstart",e,g),a("loadeddata",e,M),a("loadedmetadata",e,f),a("progress",e,P),a("durationchange",e,b),a("volumechange",e,v),a("ratechange",e,x),a("resize",e,h),a("waiting",e,T),a("play",e,R),a("playing",e,C),a("timeupdate",e,k),a("pause",e,L),a("seeking",e,O),a("seeked",e,S),a("stalled",e,G),a("suspend",e,w),a("ended",e,V),a("error",e,A),a("cuepointchange",e,N),a("cuepointschange",e,D),a("chapterchange",e,I),[J]},me=E(),Ee="mux-player-react",ge=y.forwardRef((e,n)=>{let t=ce(null),o=m(t,n),[r]=pe(t,e);return y.createElement(de,{ref:o,playerSoftwareName:Ee,playerSoftwareVersion:me,...r})}),Ne=ge;export{Re as MaxResolution,Oe as MediaError,Ce as MinResolution,ke as RenditionOrder,Ne as default};
1
+ "use client";import c,{useEffect as pe,useState as de}from"react";import{MaxResolution as Oe,MinResolution as Ge,RenditionOrder as we,generatePlayerInitTime as me}from"@mux/playback-core";import{MediaError as Ie}from"@mux/mux-player";import Q from"react";var m=parseInt(Q.version)>=19,d={className:"class",classname:"class",htmlFor:"for",crossOrigin:"crossorigin",viewBox:"viewBox",playsInline:"playsinline",autoPlay:"autoplay",playbackRate:"playbackrate"},X=e=>e==null,B=(e,n)=>X(n)?!1:e in n,ee=e=>e.replace(/[A-Z]/g,n=>`-${n.toLowerCase()}`),ne=(e,n)=>{if(!(!m&&typeof n=="boolean"&&!n)){if(B(e,d))return d[e];if(typeof n!="undefined")return/[A-Z]/.test(e)?ee(e):e}};var te=(e,n)=>!m&&typeof e=="boolean"?"":e,E=(e={})=>Object.entries(e).reduce((n,[t,o])=>{let r=ne(t,o);if(!r)return n;let i=te(o,t);return n[r]=i,n},{});import{useRef as Ee}from"react";import{useEffect as ae,useRef as re}from"react";var g=(...e)=>{let n=re(null);return ae(()=>{e.forEach(t=>{t&&(typeof t=="function"?t(n.current):t.current=n.current)})},[e]),n};import{useEffect as oe}from"react";var ie=Object.prototype.hasOwnProperty,se=(e,n)=>{if(Object.is(e,n))return!0;if(typeof e!="object"||e===null||typeof n!="object"||n===null)return!1;if(Array.isArray(e))return!Array.isArray(n)||e.length!==n.length?!1:e.some((r,i)=>n[i]===r);let t=Object.keys(e),o=Object.keys(n);if(t.length!==o.length)return!1;for(let r=0;r<t.length;r++)if(!ie.call(n,t[r])||!Object.is(e[t[r]],n[t[r]]))return!1;return!0},p=(e,n,t)=>!se(n,e[t]),le=(e,n,t)=>{e[t]=n},ue=(e,n,t,o=le,r=p)=>oe(()=>{let i=t==null?void 0:t.current;i&&r(i,n,e)&&o(i,n,e)},[t==null?void 0:t.current,n]),s=ue;var ye=()=>{try{return"3.2.0"}catch{}return"UNKNOWN"},ce=ye(),M=()=>ce;var ge=c.forwardRef(({children:e,...n},t)=>c.createElement("mux-player",E({...n,ref:t}),e)),a=(e,n,t)=>pe(()=>{let o=n==null?void 0:n.current;if(!(!o||!t))return o.addEventListener(e,t),()=>{o.removeEventListener(e,t)}},[n==null?void 0:n.current,t]),Me=(e,n)=>{let{onAbort:t,onCanPlay:o,onCanPlayThrough:r,onEmptied:i,onLoadStart:y,onLoadedData:f,onLoadedMetadata:P,onProgress:b,onDurationChange:v,onVolumeChange:x,onRateChange:T,onResize:h,onWaiting:R,onPlay:C,onPlaying:k,onTimeUpdate:L,onPause:S,onSeeking:O,onSeeked:G,onStalled:w,onSuspend:V,onEnded:I,onError:A,onCuePointChange:N,onCuePointsChange:D,onChapterChange:_,metadata:K,tokens:U,paused:j,playbackId:H,playbackRates:W,currentTime:z,themeProps:F,extraSourceParams:Z,castCustomData:q,_hlsConfig:J,...Y}=n;return s("playbackRates",W,e),s("metadata",K,e),s("extraSourceParams",Z,e),s("_hlsConfig",J,e),s("themeProps",F,e),s("tokens",U,e),s("playbackId",H,e),s("castCustomData",q,e),s("paused",j,e,(l,u)=>{u!=null&&(u?l.pause():l.play())},(l,u,$)=>l.hasAttribute("autoplay")&&!l.hasPlayed?!1:p(l,u,$)),s("currentTime",z,e,(l,u)=>{u!=null&&(l.currentTime=u)}),a("abort",e,t),a("canplay",e,o),a("canplaythrough",e,r),a("emptied",e,i),a("loadstart",e,y),a("loadeddata",e,f),a("loadedmetadata",e,P),a("progress",e,b),a("durationchange",e,v),a("volumechange",e,x),a("ratechange",e,T),a("resize",e,h),a("waiting",e,R),a("play",e,C),a("playing",e,k),a("timeupdate",e,L),a("pause",e,S),a("seeking",e,O),a("seeked",e,G),a("stalled",e,w),a("suspend",e,V),a("ended",e,I),a("error",e,A),a("cuepointchange",e,N),a("cuepointschange",e,D),a("chapterchange",e,_),[Y]},fe=M(),Pe="mux-player-react",be=c.forwardRef((e,n)=>{var y;let t=Ee(null),o=g(t,n),[r]=Me(t,e),[i]=de((y=e.playerInitTime)!=null?y:me());return c.createElement(ge,{ref:o,playerSoftwareName:Pe,playerSoftwareVersion:fe,playerInitTime:i,...r})}),Ue=be;export{Oe as MaxResolution,Ie as MediaError,Ge as MinResolution,we as RenditionOrder,Ue as default,me as generatePlayerInitTime,Pe as playerSoftwareName,fe as playerSoftwareVersion};
2
2
  //# sourceMappingURL=index.mjs.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../src/index.tsx", "../src/common/utils.ts", "../src/useCombinedRefs.ts", "../src/useObjectPropEffect.ts", "../src/env.ts"],
4
- "sourcesContent": ["'use client';\nimport React, { useEffect } from 'react';\nimport type { CSSProperties } from 'react';\nimport type {\n StreamTypes,\n PlaybackTypes,\n CmcdTypes,\n MaxResolutionValue,\n MinResolutionValue,\n RenditionOrderValue,\n} from '@mux/playback-core';\nimport { MaxResolution, MinResolution, RenditionOrder } from '@mux/playback-core';\nimport { MediaError } from '@mux/mux-player';\nimport type MuxPlayerElement from '@mux/mux-player';\nimport type { Tokens, MuxPlayerElementEventMap } from '@mux/mux-player';\nimport { toNativeProps } from './common/utils';\nimport { useRef } from 'react';\nimport { useCombinedRefs } from './useCombinedRefs';\nimport useObjectPropEffect, { defaultHasChanged } from './useObjectPropEffect';\nimport { getPlayerVersion } from './env';\n\nexport { MediaError, MaxResolution, MinResolution, RenditionOrder };\n\ntype ValueOf<T> = T[keyof T];\ninterface GenericEventListener<T extends Event = CustomEvent> {\n (evt: T): void;\n}\n\nexport type MuxPlayerRefAttributes = MuxPlayerElement;\ntype VideoApiAttributes = {\n currentTime: number;\n volume: number;\n paused: boolean;\n src: string | null;\n poster: string;\n playbackRate: number;\n playsInline: boolean;\n preload: string;\n crossOrigin: string;\n autoPlay: boolean | string;\n loop: boolean;\n muted: boolean;\n style: CSSProperties;\n};\n\ntype MuxMediaPropTypes = {\n audio: boolean;\n // envKey: Options[\"data\"][\"env_key\"];\n envKey: string;\n // debug: Options[\"debug\"] & Hls[\"config\"][\"debug\"];\n debug: boolean;\n disableTracking: boolean;\n disableCookies: boolean;\n disablePictureInPicture?: boolean;\n // metadata: Partial<Options[\"data\"]>;\n metadata: { [k: string]: any };\n extraSourceParams: Record<string, any>;\n _hlsConfig: MuxPlayerElement['_hlsConfig'];\n beaconCollectionDomain: string;\n customDomain: string;\n playbackId: string;\n preferPlayback: ValueOf<PlaybackTypes> | undefined;\n // NOTE: Explicitly adding deprecated values here for now to avoid fully breaking changes in TS envs (CJP)\n streamType: ValueOf<StreamTypes> | 'll-live' | 'live:dvr' | 'll-live:dvr';\n defaultStreamType: ValueOf<StreamTypes>;\n targetLiveWindow: number;\n startTime: number;\n storyboardSrc: string;\n preferCmcd: ValueOf<CmcdTypes> | undefined;\n children?: React.ReactNode;\n};\n\nexport type MuxPlayerProps = {\n className?: string;\n hotkeys?: string;\n nohotkeys?: boolean;\n castReceiver?: string | undefined;\n castCustomData?: Record<string, any> | undefined;\n defaultHiddenCaptions?: boolean;\n playerSoftwareVersion?: string;\n playerSoftwareName?: string;\n forwardSeekOffset?: number;\n backwardSeekOffset?: number;\n maxResolution?: MaxResolutionValue;\n minResolution?: MinResolutionValue;\n renditionOrder?: RenditionOrderValue;\n programStartTime?: number;\n programEndTime?: number;\n assetStartTime?: number;\n assetEndTime?: number;\n metadataVideoId?: string;\n metadataVideoTitle?: string;\n metadataViewerUserId?: string;\n primaryColor?: string;\n secondaryColor?: string;\n accentColor?: string;\n placeholder?: string;\n playbackRates?: number[];\n defaultShowRemainingTime?: boolean;\n defaultDuration?: number;\n noVolumePref?: boolean;\n thumbnailTime?: number;\n title?: string;\n tokens?: Tokens;\n theme?: string;\n themeProps?: { [k: string]: any };\n onAbort?: GenericEventListener<MuxPlayerElementEventMap['abort']>;\n onCanPlay?: GenericEventListener<MuxPlayerElementEventMap['canplay']>;\n onCanPlayThrough?: GenericEventListener<MuxPlayerElementEventMap['canplaythrough']>;\n onEmptied?: GenericEventListener<MuxPlayerElementEventMap['emptied']>;\n onLoadStart?: GenericEventListener<MuxPlayerElementEventMap['loadstart']>;\n onLoadedData?: GenericEventListener<MuxPlayerElementEventMap['loadeddata']>;\n onLoadedMetadata?: GenericEventListener<MuxPlayerElementEventMap['loadedmetadata']>;\n onProgress?: GenericEventListener<MuxPlayerElementEventMap['progress']>;\n onDurationChange?: GenericEventListener<MuxPlayerElementEventMap['durationchange']>;\n onVolumeChange?: GenericEventListener<MuxPlayerElementEventMap['volumechange']>;\n onRateChange?: GenericEventListener<MuxPlayerElementEventMap['ratechange']>;\n onResize?: GenericEventListener<MuxPlayerElementEventMap['resize']>;\n onWaiting?: GenericEventListener<MuxPlayerElementEventMap['waiting']>;\n onPlay?: GenericEventListener<MuxPlayerElementEventMap['play']>;\n onPlaying?: GenericEventListener<MuxPlayerElementEventMap['playing']>;\n onTimeUpdate?: GenericEventListener<MuxPlayerElementEventMap['timeupdate']>;\n onPause?: GenericEventListener<MuxPlayerElementEventMap['pause']>;\n onSeeking?: GenericEventListener<MuxPlayerElementEventMap['seeking']>;\n onSeeked?: GenericEventListener<MuxPlayerElementEventMap['seeked']>;\n onStalled?: GenericEventListener<MuxPlayerElementEventMap['stalled']>;\n onSuspend?: GenericEventListener<MuxPlayerElementEventMap['suspend']>;\n onEnded?: GenericEventListener<MuxPlayerElementEventMap['ended']>;\n onError?: GenericEventListener<MuxPlayerElementEventMap['error']>;\n onCuePointChange?: GenericEventListener<MuxPlayerElementEventMap['cuepointchange']>;\n onCuePointsChange?: GenericEventListener<MuxPlayerElementEventMap['cuepointschange']>;\n onChapterChange?: GenericEventListener<MuxPlayerElementEventMap['chapterchange']>;\n} & Partial<MuxMediaPropTypes> &\n Partial<VideoApiAttributes>;\n\nconst MuxPlayerInternal = React.forwardRef<MuxPlayerRefAttributes, MuxPlayerProps>(({ children, ...props }, ref) => {\n return React.createElement('mux-player', toNativeProps({ ...props, ref }), children);\n});\n\nconst useEventCallbackEffect = <K extends keyof MuxPlayerElementEventMap>(\n type: K,\n ref: // | ((instance: EventTarget | null) => void)\n React.MutableRefObject<MuxPlayerElement | null> | null | undefined,\n callback: GenericEventListener<MuxPlayerElementEventMap[K]> | undefined\n) => {\n return useEffect(() => {\n const eventTarget = ref?.current;\n if (!eventTarget || !callback) return;\n eventTarget.addEventListener(type, callback);\n return () => {\n eventTarget.removeEventListener(type, callback);\n };\n }, [ref?.current, callback]);\n};\n\nconst usePlayer = (\n ref: // | ((instance: EventTarget | null) => void)\n React.MutableRefObject<MuxPlayerElement | null> | null | undefined,\n props: MuxPlayerProps\n) => {\n const {\n onAbort,\n onCanPlay,\n onCanPlayThrough,\n onEmptied,\n onLoadStart,\n onLoadedData,\n onLoadedMetadata,\n onProgress,\n onDurationChange,\n onVolumeChange,\n onRateChange,\n onResize,\n onWaiting,\n onPlay,\n onPlaying,\n onTimeUpdate,\n onPause,\n onSeeking,\n onSeeked,\n onStalled,\n onSuspend,\n onEnded,\n onError,\n onCuePointChange,\n onCuePointsChange,\n onChapterChange,\n metadata,\n tokens,\n paused,\n playbackId,\n playbackRates,\n currentTime,\n themeProps,\n extraSourceParams,\n castCustomData,\n _hlsConfig,\n ...remainingProps\n } = props;\n useObjectPropEffect('playbackRates', playbackRates, ref);\n useObjectPropEffect('metadata', metadata, ref);\n useObjectPropEffect('extraSourceParams', extraSourceParams, ref);\n useObjectPropEffect('_hlsConfig', _hlsConfig, ref);\n useObjectPropEffect('themeProps', themeProps, ref);\n useObjectPropEffect('tokens', tokens, ref);\n useObjectPropEffect('playbackId', playbackId, ref);\n useObjectPropEffect('castCustomData', castCustomData, ref);\n useObjectPropEffect(\n 'paused',\n paused,\n ref,\n (playerEl: HTMLMediaElement, pausedVal?: boolean) => {\n if (pausedVal == null) return;\n if (pausedVal) {\n playerEl.pause();\n } else {\n playerEl.play();\n }\n },\n (playerEl, value, propName) => {\n if (playerEl.hasAttribute('autoplay') && !playerEl.hasPlayed) {\n return false;\n }\n return defaultHasChanged(playerEl, value, propName);\n }\n );\n useObjectPropEffect('currentTime', currentTime, ref, (playerEl: HTMLMediaElement, currentTimeVal?: number) => {\n if (currentTimeVal == null) return;\n playerEl.currentTime = currentTimeVal;\n });\n useEventCallbackEffect('abort', ref, onAbort);\n useEventCallbackEffect('canplay', ref, onCanPlay);\n useEventCallbackEffect('canplaythrough', ref, onCanPlayThrough);\n useEventCallbackEffect('emptied', ref, onEmptied);\n useEventCallbackEffect('loadstart', ref, onLoadStart);\n useEventCallbackEffect('loadeddata', ref, onLoadedData);\n useEventCallbackEffect('loadedmetadata', ref, onLoadedMetadata);\n useEventCallbackEffect('progress', ref, onProgress);\n useEventCallbackEffect('durationchange', ref, onDurationChange);\n useEventCallbackEffect('volumechange', ref, onVolumeChange);\n useEventCallbackEffect('ratechange', ref, onRateChange);\n useEventCallbackEffect('resize', ref, onResize);\n useEventCallbackEffect('waiting', ref, onWaiting);\n useEventCallbackEffect('play', ref, onPlay);\n useEventCallbackEffect('playing', ref, onPlaying);\n useEventCallbackEffect('timeupdate', ref, onTimeUpdate);\n useEventCallbackEffect('pause', ref, onPause);\n useEventCallbackEffect('seeking', ref, onSeeking);\n useEventCallbackEffect('seeked', ref, onSeeked);\n useEventCallbackEffect('stalled', ref, onStalled);\n useEventCallbackEffect('suspend', ref, onSuspend);\n useEventCallbackEffect('ended', ref, onEnded);\n useEventCallbackEffect('error', ref, onError);\n useEventCallbackEffect('cuepointchange', ref, onCuePointChange);\n useEventCallbackEffect('cuepointschange', ref, onCuePointsChange);\n useEventCallbackEffect('chapterchange', ref, onChapterChange);\n return [remainingProps];\n};\n\nconst playerSoftwareVersion = getPlayerVersion();\nconst playerSoftwareName = 'mux-player-react';\n\nconst MuxPlayer = React.forwardRef<\n MuxPlayerRefAttributes,\n Omit<MuxPlayerProps, 'playerSoftwareVersion' | 'playerSoftwareName'>\n>((props, ref) => {\n const innerPlayerRef = useRef<MuxPlayerElement>(null);\n const playerRef = useCombinedRefs(innerPlayerRef, ref);\n const [remainingProps] = usePlayer(innerPlayerRef, props);\n\n return (\n <MuxPlayerInternal\n /** @TODO Fix types relationships (CJP) */\n ref={playerRef as typeof innerPlayerRef}\n playerSoftwareName={playerSoftwareName}\n playerSoftwareVersion={playerSoftwareVersion}\n {...remainingProps}\n />\n );\n});\n\nexport default MuxPlayer;\n", "// NOTE: As a forward-looking implementation, we may want to assume\n// prop names -> attribute names is always a simple name.toLowerCase()\n// and provide a mechanism for passing in per-component overrides for\n// e.g. kebab cases, as that's the way React/Preact handles these. (CJP)\nconst ReactPropToAttrNameMap = {\n className: 'class',\n classname: 'class',\n htmlFor: 'for',\n crossOrigin: 'crossorigin',\n viewBox: 'viewBox',\n playsInline: 'playsinline',\n autoPlay: 'autoplay',\n playbackRate: 'playbackrate',\n};\n\ntype KeyTypes = string | number | symbol;\ntype Maybe<T> = T | null | undefined;\n\nexport const isNil = (x: unknown): x is null | undefined => x == undefined;\n\n// Type Guard to determine if a given key is actually a key of some object of type T\nexport const isKeyOf = <T extends {} = any>(k: KeyTypes, o: Maybe<T>): k is keyof T => {\n if (isNil(o)) return false;\n return k in o;\n};\n\nconst toKebabCase = (string: string) => string.replace(/[A-Z]/g, (match) => `-${match.toLowerCase()}`);\n\nexport const toNativeAttrName = (propName: string, propValue: any): string | undefined => {\n if (typeof propValue === 'boolean' && !propValue) return undefined;\n if (isKeyOf(propName, ReactPropToAttrNameMap)) return ReactPropToAttrNameMap[propName];\n if (typeof propValue == undefined) return undefined;\n if (/[A-Z]/.test(propName)) return toKebabCase(propName);\n return propName;\n};\nexport const toStyleAttr = <T>(x: T) => x;\n\nexport const toNativeAttrValue = (propValue: any, propName: string) => {\n if (typeof propValue === 'boolean') return '';\n return propValue;\n};\n\nexport const toNativeProps = (props = {}) => {\n return Object.entries(props).reduce<{ [k: string]: string }>((transformedProps, [propName, propValue]) => {\n const attrName = toNativeAttrName(propName, propValue);\n\n // prop was stripped. Don't add.\n if (!attrName) {\n return transformedProps;\n }\n\n const attrValue = toNativeAttrValue(propValue, propName);\n transformedProps[attrName] = attrValue;\n return transformedProps;\n }, {});\n};\n", "import { useEffect, useRef } from 'react';\nimport type { MutableRefObject, ForwardedRef } from 'react';\n\ntype Maybe<T> = T | null | undefined;\ntype RefCb<T> = (instance: Maybe<T>) => void;\ntype RefObj<T> = MutableRefObject<Maybe<T>>;\ntype RefTypes<T> = RefObj<T> | RefCb<T> | ForwardedRef<T>;\ninterface useCombinedRefs {\n <T>(...refs: Maybe<RefTypes<T>>[]): RefObj<T>;\n}\n\nexport const useCombinedRefs: useCombinedRefs = (...refs) => {\n const targetRef = useRef(null);\n\n useEffect(() => {\n refs.forEach((ref) => {\n if (!ref) return;\n\n if (typeof ref === 'function') {\n ref(targetRef.current);\n } else {\n ref.current = targetRef.current;\n }\n });\n }, [refs]);\n\n return targetRef;\n};\n\n// TS assumed default export was interface def instead of function value (CJP)\nconst defaultUseCombinedRefs = useCombinedRefs;\nexport default defaultUseCombinedRefs;\n", "import { useEffect } from 'react';\n\nconst hasOwnProperty = Object.prototype.hasOwnProperty;\n\n/**\n * Slightly modified version of React's shallowEqual, with optimizations for Arrays\n * so we may treat them specifically as unequal if they are not a) both arrays\n * or b) don't contain the same (shallowly compared) elements.\n */\nconst shallowEqual = (objA: any, objB: any): boolean => {\n if (Object.is(objA, objB)) {\n return true;\n }\n\n if (typeof objA !== 'object' || objA === null || typeof objB !== 'object' || objB === null) {\n return false;\n }\n\n if (Array.isArray(objA)) {\n // Early \"cheap\" array compares\n if (!Array.isArray(objB) || objA.length !== objB.length) return false;\n // Shallow compare for arrays\n return objA.some((vVal, i) => objB[i] === vVal);\n }\n\n const keysA = Object.keys(objA);\n const keysB = Object.keys(objB);\n\n if (keysA.length !== keysB.length) {\n return false;\n }\n\n // Test for A's keys different from B.\n for (let i = 0; i < keysA.length; i++) {\n if (!hasOwnProperty.call(objB, keysA[i]) || !Object.is(objA[keysA[i]], objB[keysA[i]])) {\n return false;\n }\n }\n\n return true;\n};\n\nexport const defaultHasChanged = (obj: any, v: any, k: string) => {\n return !shallowEqual(v, obj[k]);\n};\n\nconst defaultUpdateValue = (obj: any, v: any, k: string) => {\n obj[k] = v;\n};\n\nexport const useObjectPropEffect = <T extends { [k: string]: any }, V>(\n propName: string,\n propValue: V | null | undefined,\n ref: React.MutableRefObject<T | null> | null | undefined,\n updateValue = defaultUpdateValue,\n hasChanged = defaultHasChanged\n) => {\n return useEffect(() => {\n const obj = ref?.current;\n if (!obj) return;\n if (!hasChanged(obj, propValue, propName)) return;\n updateValue(obj, propValue, propName);\n }, [ref?.current, propValue]);\n};\n\nexport default useObjectPropEffect;\n", "const getEnvPlayerVersion = () => {\n try {\n // @ts-ignore\n return PLAYER_VERSION as string;\n } catch {}\n return 'UNKNOWN';\n};\n\nconst player_version: string = getEnvPlayerVersion();\n\nexport const getPlayerVersion = () => player_version;\n"],
5
- "mappings": "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",
6
- "names": ["React", "useEffect", "MaxResolution", "MinResolution", "RenditionOrder", "MediaError", "ReactPropToAttrNameMap", "isNil", "x", "isKeyOf", "k", "o", "toKebabCase", "string", "match", "toNativeAttrName", "propName", "propValue", "toNativeAttrValue", "propValue", "propName", "toNativeProps", "props", "transformedProps", "attrName", "toNativeAttrName", "attrValue", "useRef", "useEffect", "useRef", "useCombinedRefs", "refs", "targetRef", "ref", "useEffect", "hasOwnProperty", "shallowEqual", "objA", "objB", "vVal", "i", "keysA", "keysB", "defaultHasChanged", "obj", "v", "k", "defaultUpdateValue", "useObjectPropEffect", "propName", "propValue", "ref", "updateValue", "hasChanged", "useObjectPropEffect_default", "getEnvPlayerVersion", "player_version", "getPlayerVersion", "MuxPlayerInternal", "React", "children", "props", "ref", "toNativeProps", "useEventCallbackEffect", "type", "callback", "useEffect", "eventTarget", "usePlayer", "onAbort", "onCanPlay", "onCanPlayThrough", "onEmptied", "onLoadStart", "onLoadedData", "onLoadedMetadata", "onProgress", "onDurationChange", "onVolumeChange", "onRateChange", "onResize", "onWaiting", "onPlay", "onPlaying", "onTimeUpdate", "onPause", "onSeeking", "onSeeked", "onStalled", "onSuspend", "onEnded", "onError", "onCuePointChange", "onCuePointsChange", "onChapterChange", "metadata", "tokens", "paused", "playbackId", "playbackRates", "currentTime", "themeProps", "extraSourceParams", "castCustomData", "_hlsConfig", "remainingProps", "useObjectPropEffect_default", "playerEl", "pausedVal", "value", "propName", "defaultHasChanged", "currentTimeVal", "playerSoftwareVersion", "getPlayerVersion", "playerSoftwareName", "MuxPlayer", "innerPlayerRef", "useRef", "playerRef", "useCombinedRefs", "src_default"]
4
+ "sourcesContent": ["'use client';\nimport React, { useEffect, useState } from 'react';\nimport type { CSSProperties } from 'react';\nimport type {\n StreamTypes,\n PlaybackTypes,\n CmcdTypes,\n MaxResolutionValue,\n MinResolutionValue,\n RenditionOrderValue,\n} from '@mux/playback-core';\nimport { MaxResolution, MinResolution, RenditionOrder, generatePlayerInitTime } from '@mux/playback-core';\nimport { MediaError } from '@mux/mux-player';\nimport type MuxPlayerElement from '@mux/mux-player';\nimport type { Tokens, MuxPlayerElementEventMap } from '@mux/mux-player';\nimport { toNativeProps } from './common/utils';\nimport { useRef } from 'react';\nimport { useCombinedRefs } from './useCombinedRefs';\nimport useObjectPropEffect, { defaultHasChanged } from './useObjectPropEffect';\nimport { getPlayerVersion } from './env';\n\nexport { MediaError, MaxResolution, MinResolution, RenditionOrder, generatePlayerInitTime };\n\ntype ValueOf<T> = T[keyof T];\ninterface GenericEventListener<T extends Event = CustomEvent> {\n (evt: T): void;\n}\n\nexport type MuxPlayerRefAttributes = MuxPlayerElement;\ntype VideoApiAttributes = {\n currentTime: number;\n volume: number;\n paused: boolean;\n src: string | null;\n poster: string;\n playbackRate: number;\n playsInline: boolean;\n preload: string;\n crossOrigin: string;\n autoPlay: boolean | string;\n loop: boolean;\n muted: boolean;\n style: CSSProperties;\n};\n\ntype MuxMediaPropTypes = {\n audio: boolean;\n // envKey: Options[\"data\"][\"env_key\"];\n envKey: string;\n // debug: Options[\"debug\"] & Hls[\"config\"][\"debug\"];\n debug: boolean;\n disableTracking: boolean;\n disableCookies: boolean;\n disablePictureInPicture?: boolean;\n // metadata: Partial<Options[\"data\"]>;\n metadata: { [k: string]: any };\n extraSourceParams: Record<string, any>;\n _hlsConfig: MuxPlayerElement['_hlsConfig'];\n beaconCollectionDomain: string;\n customDomain: string;\n playbackId: string;\n preferPlayback: ValueOf<PlaybackTypes> | undefined;\n // NOTE: Explicitly adding deprecated values here for now to avoid fully breaking changes in TS envs (CJP)\n streamType: ValueOf<StreamTypes> | 'll-live' | 'live:dvr' | 'll-live:dvr';\n defaultStreamType: ValueOf<StreamTypes>;\n targetLiveWindow: number;\n startTime: number;\n storyboardSrc: string;\n preferCmcd: ValueOf<CmcdTypes> | undefined;\n children?: React.ReactNode;\n};\n\nexport type MuxPlayerProps = {\n className?: string;\n hotkeys?: string;\n nohotkeys?: boolean;\n castReceiver?: string | undefined;\n castCustomData?: Record<string, any> | undefined;\n defaultHiddenCaptions?: boolean;\n playerSoftwareVersion?: string;\n playerSoftwareName?: string;\n playerInitTime?: number;\n forwardSeekOffset?: number;\n backwardSeekOffset?: number;\n maxResolution?: MaxResolutionValue;\n minResolution?: MinResolutionValue;\n renditionOrder?: RenditionOrderValue;\n programStartTime?: number;\n programEndTime?: number;\n assetStartTime?: number;\n assetEndTime?: number;\n metadataVideoId?: string;\n metadataVideoTitle?: string;\n metadataViewerUserId?: string;\n primaryColor?: string;\n secondaryColor?: string;\n accentColor?: string;\n placeholder?: string;\n playbackRates?: number[];\n defaultShowRemainingTime?: boolean;\n defaultDuration?: number;\n noVolumePref?: boolean;\n thumbnailTime?: number;\n title?: string;\n tokens?: Tokens;\n theme?: string;\n themeProps?: { [k: string]: any };\n onAbort?: GenericEventListener<MuxPlayerElementEventMap['abort']>;\n onCanPlay?: GenericEventListener<MuxPlayerElementEventMap['canplay']>;\n onCanPlayThrough?: GenericEventListener<MuxPlayerElementEventMap['canplaythrough']>;\n onEmptied?: GenericEventListener<MuxPlayerElementEventMap['emptied']>;\n onLoadStart?: GenericEventListener<MuxPlayerElementEventMap['loadstart']>;\n onLoadedData?: GenericEventListener<MuxPlayerElementEventMap['loadeddata']>;\n onLoadedMetadata?: GenericEventListener<MuxPlayerElementEventMap['loadedmetadata']>;\n onProgress?: GenericEventListener<MuxPlayerElementEventMap['progress']>;\n onDurationChange?: GenericEventListener<MuxPlayerElementEventMap['durationchange']>;\n onVolumeChange?: GenericEventListener<MuxPlayerElementEventMap['volumechange']>;\n onRateChange?: GenericEventListener<MuxPlayerElementEventMap['ratechange']>;\n onResize?: GenericEventListener<MuxPlayerElementEventMap['resize']>;\n onWaiting?: GenericEventListener<MuxPlayerElementEventMap['waiting']>;\n onPlay?: GenericEventListener<MuxPlayerElementEventMap['play']>;\n onPlaying?: GenericEventListener<MuxPlayerElementEventMap['playing']>;\n onTimeUpdate?: GenericEventListener<MuxPlayerElementEventMap['timeupdate']>;\n onPause?: GenericEventListener<MuxPlayerElementEventMap['pause']>;\n onSeeking?: GenericEventListener<MuxPlayerElementEventMap['seeking']>;\n onSeeked?: GenericEventListener<MuxPlayerElementEventMap['seeked']>;\n onStalled?: GenericEventListener<MuxPlayerElementEventMap['stalled']>;\n onSuspend?: GenericEventListener<MuxPlayerElementEventMap['suspend']>;\n onEnded?: GenericEventListener<MuxPlayerElementEventMap['ended']>;\n onError?: GenericEventListener<MuxPlayerElementEventMap['error']>;\n onCuePointChange?: GenericEventListener<MuxPlayerElementEventMap['cuepointchange']>;\n onCuePointsChange?: GenericEventListener<MuxPlayerElementEventMap['cuepointschange']>;\n onChapterChange?: GenericEventListener<MuxPlayerElementEventMap['chapterchange']>;\n} & Partial<MuxMediaPropTypes> &\n Partial<VideoApiAttributes>;\n\nconst MuxPlayerInternal = React.forwardRef<MuxPlayerRefAttributes, MuxPlayerProps>(({ children, ...props }, ref) => {\n return React.createElement('mux-player', toNativeProps({ ...props, ref }), children);\n});\n\nconst useEventCallbackEffect = <K extends keyof MuxPlayerElementEventMap>(\n type: K,\n ref: // | ((instance: EventTarget | null) => void)\n React.MutableRefObject<MuxPlayerElement | null> | null | undefined,\n callback: GenericEventListener<MuxPlayerElementEventMap[K]> | undefined\n) => {\n return useEffect(() => {\n const eventTarget = ref?.current;\n if (!eventTarget || !callback) return;\n eventTarget.addEventListener(type, callback);\n return () => {\n eventTarget.removeEventListener(type, callback);\n };\n }, [ref?.current, callback]);\n};\n\nconst usePlayer = (\n ref: // | ((instance: EventTarget | null) => void)\n React.MutableRefObject<MuxPlayerElement | null> | null | undefined,\n props: MuxPlayerProps\n) => {\n const {\n onAbort,\n onCanPlay,\n onCanPlayThrough,\n onEmptied,\n onLoadStart,\n onLoadedData,\n onLoadedMetadata,\n onProgress,\n onDurationChange,\n onVolumeChange,\n onRateChange,\n onResize,\n onWaiting,\n onPlay,\n onPlaying,\n onTimeUpdate,\n onPause,\n onSeeking,\n onSeeked,\n onStalled,\n onSuspend,\n onEnded,\n onError,\n onCuePointChange,\n onCuePointsChange,\n onChapterChange,\n metadata,\n tokens,\n paused,\n playbackId,\n playbackRates,\n currentTime,\n themeProps,\n extraSourceParams,\n castCustomData,\n _hlsConfig,\n ...remainingProps\n } = props;\n useObjectPropEffect('playbackRates', playbackRates, ref);\n useObjectPropEffect('metadata', metadata, ref);\n useObjectPropEffect('extraSourceParams', extraSourceParams, ref);\n useObjectPropEffect('_hlsConfig', _hlsConfig, ref);\n useObjectPropEffect('themeProps', themeProps, ref);\n useObjectPropEffect('tokens', tokens, ref);\n useObjectPropEffect('playbackId', playbackId, ref);\n useObjectPropEffect('castCustomData', castCustomData, ref);\n useObjectPropEffect(\n 'paused',\n paused,\n ref,\n (playerEl: HTMLMediaElement, pausedVal?: boolean) => {\n if (pausedVal == null) return;\n if (pausedVal) {\n playerEl.pause();\n } else {\n playerEl.play();\n }\n },\n (playerEl, value, propName) => {\n if (playerEl.hasAttribute('autoplay') && !playerEl.hasPlayed) {\n return false;\n }\n return defaultHasChanged(playerEl, value, propName);\n }\n );\n useObjectPropEffect('currentTime', currentTime, ref, (playerEl: HTMLMediaElement, currentTimeVal?: number) => {\n if (currentTimeVal == null) return;\n playerEl.currentTime = currentTimeVal;\n });\n useEventCallbackEffect('abort', ref, onAbort);\n useEventCallbackEffect('canplay', ref, onCanPlay);\n useEventCallbackEffect('canplaythrough', ref, onCanPlayThrough);\n useEventCallbackEffect('emptied', ref, onEmptied);\n useEventCallbackEffect('loadstart', ref, onLoadStart);\n useEventCallbackEffect('loadeddata', ref, onLoadedData);\n useEventCallbackEffect('loadedmetadata', ref, onLoadedMetadata);\n useEventCallbackEffect('progress', ref, onProgress);\n useEventCallbackEffect('durationchange', ref, onDurationChange);\n useEventCallbackEffect('volumechange', ref, onVolumeChange);\n useEventCallbackEffect('ratechange', ref, onRateChange);\n useEventCallbackEffect('resize', ref, onResize);\n useEventCallbackEffect('waiting', ref, onWaiting);\n useEventCallbackEffect('play', ref, onPlay);\n useEventCallbackEffect('playing', ref, onPlaying);\n useEventCallbackEffect('timeupdate', ref, onTimeUpdate);\n useEventCallbackEffect('pause', ref, onPause);\n useEventCallbackEffect('seeking', ref, onSeeking);\n useEventCallbackEffect('seeked', ref, onSeeked);\n useEventCallbackEffect('stalled', ref, onStalled);\n useEventCallbackEffect('suspend', ref, onSuspend);\n useEventCallbackEffect('ended', ref, onEnded);\n useEventCallbackEffect('error', ref, onError);\n useEventCallbackEffect('cuepointchange', ref, onCuePointChange);\n useEventCallbackEffect('cuepointschange', ref, onCuePointsChange);\n useEventCallbackEffect('chapterchange', ref, onChapterChange);\n return [remainingProps];\n};\n\nexport const playerSoftwareVersion = getPlayerVersion();\nexport const playerSoftwareName = 'mux-player-react';\n\nconst MuxPlayer = React.forwardRef<\n MuxPlayerRefAttributes,\n Omit<MuxPlayerProps, 'playerSoftwareVersion' | 'playerSoftwareName'>\n>((props, ref) => {\n const innerPlayerRef = useRef<MuxPlayerElement>(null);\n const playerRef = useCombinedRefs(innerPlayerRef, ref);\n const [remainingProps] = usePlayer(innerPlayerRef, props);\n const [playerInitTime] = useState(props.playerInitTime ?? generatePlayerInitTime());\n\n return (\n <MuxPlayerInternal\n /** @TODO Fix types relationships (CJP) */\n ref={playerRef as typeof innerPlayerRef}\n playerSoftwareName={playerSoftwareName}\n playerSoftwareVersion={playerSoftwareVersion}\n playerInitTime={playerInitTime}\n {...remainingProps}\n />\n );\n});\n\nexport default MuxPlayer;\n", "import React from 'react';\n\n// React 19 supports custom elements and setting properties directly on them,\n// older React versions converted all props to attributes on custom elments.\n// Boolean `true` values should not be converted to empty strings in React 19+\n// because that would result in a `false` value if it was set via a property.\n// React 19+ handles primitive values correctly but we still need to convert\n// the camelCase prop names to kebab-case attribute names for mux-player. (WL)\n\nconst IS_REACT_19_OR_NEWER = parseInt(React.version) >= 19;\n\n// NOTE: As a forward-looking implementation, we may want to assume\n// prop names -> attribute names is always a simple name.toLowerCase()\n// and provide a mechanism for passing in per-component overrides for\n// e.g. kebab cases, as that's the way React/Preact handles these. (CJP)\nconst ReactPropToAttrNameMap = {\n className: 'class',\n classname: 'class',\n htmlFor: 'for',\n crossOrigin: 'crossorigin',\n viewBox: 'viewBox',\n playsInline: 'playsinline',\n autoPlay: 'autoplay',\n playbackRate: 'playbackrate',\n};\n\ntype KeyTypes = string | number | symbol;\ntype Maybe<T> = T | null | undefined;\n\nexport const isNil = (x: unknown): x is null | undefined => x == undefined;\n\n// Type Guard to determine if a given key is actually a key of some object of type T\nexport const isKeyOf = <T extends object = any>(k: KeyTypes, o: Maybe<T>): k is keyof T => {\n if (isNil(o)) return false;\n return k in o;\n};\n\nconst toKebabCase = (string: string) => string.replace(/[A-Z]/g, (match) => `-${match.toLowerCase()}`);\n\nexport const toNativeAttrName = (propName: string, propValue: any): string | undefined => {\n if (!IS_REACT_19_OR_NEWER && typeof propValue === 'boolean' && !propValue) return undefined;\n if (isKeyOf(propName, ReactPropToAttrNameMap)) return ReactPropToAttrNameMap[propName];\n if (typeof propValue === 'undefined') return undefined;\n if (/[A-Z]/.test(propName)) return toKebabCase(propName);\n return propName;\n};\nexport const toStyleAttr = <T>(x: T) => x;\n\nexport const toNativeAttrValue = (propValue: any, _propName: string) => {\n if (!IS_REACT_19_OR_NEWER && typeof propValue === 'boolean') return '';\n return propValue;\n};\n\nexport const toNativeProps = (props = {}) => {\n return Object.entries(props).reduce<{ [k: string]: string }>((transformedProps, [propName, propValue]) => {\n const attrName = toNativeAttrName(propName, propValue);\n\n // prop was stripped. Don't add.\n if (!attrName) {\n return transformedProps;\n }\n\n const attrValue = toNativeAttrValue(propValue, propName);\n transformedProps[attrName] = attrValue;\n return transformedProps;\n }, {});\n};\n", "import { useEffect, useRef } from 'react';\nimport type { MutableRefObject, ForwardedRef } from 'react';\n\ntype Maybe<T> = T | null | undefined;\ntype RefCb<T> = (instance: Maybe<T>) => void;\ntype RefObj<T> = MutableRefObject<Maybe<T>>;\ntype RefTypes<T> = RefObj<T> | RefCb<T> | ForwardedRef<T>;\ninterface useCombinedRefs {\n <T>(...refs: Maybe<RefTypes<T>>[]): RefObj<T>;\n}\n\nexport const useCombinedRefs: useCombinedRefs = (...refs) => {\n const targetRef = useRef(null);\n\n useEffect(() => {\n refs.forEach((ref) => {\n if (!ref) return;\n\n if (typeof ref === 'function') {\n ref(targetRef.current);\n } else {\n ref.current = targetRef.current;\n }\n });\n }, [refs]);\n\n return targetRef;\n};\n\n// TS assumed default export was interface def instead of function value (CJP)\nconst defaultUseCombinedRefs = useCombinedRefs;\nexport default defaultUseCombinedRefs;\n", "import { useEffect } from 'react';\n\nconst hasOwnProperty = Object.prototype.hasOwnProperty;\n\n/**\n * Slightly modified version of React's shallowEqual, with optimizations for Arrays\n * so we may treat them specifically as unequal if they are not a) both arrays\n * or b) don't contain the same (shallowly compared) elements.\n */\nconst shallowEqual = (objA: any, objB: any): boolean => {\n if (Object.is(objA, objB)) {\n return true;\n }\n\n if (typeof objA !== 'object' || objA === null || typeof objB !== 'object' || objB === null) {\n return false;\n }\n\n if (Array.isArray(objA)) {\n // Early \"cheap\" array compares\n if (!Array.isArray(objB) || objA.length !== objB.length) return false;\n // Shallow compare for arrays\n return objA.some((vVal, i) => objB[i] === vVal);\n }\n\n const keysA = Object.keys(objA);\n const keysB = Object.keys(objB);\n\n if (keysA.length !== keysB.length) {\n return false;\n }\n\n // Test for A's keys different from B.\n for (let i = 0; i < keysA.length; i++) {\n if (!hasOwnProperty.call(objB, keysA[i]) || !Object.is(objA[keysA[i]], objB[keysA[i]])) {\n return false;\n }\n }\n\n return true;\n};\n\nexport const defaultHasChanged = (obj: any, v: any, k: string) => {\n return !shallowEqual(v, obj[k]);\n};\n\nconst defaultUpdateValue = (obj: any, v: any, k: string) => {\n obj[k] = v;\n};\n\nexport const useObjectPropEffect = <T extends { [k: string]: any }, V>(\n propName: string,\n propValue: V | null | undefined,\n ref: React.MutableRefObject<T | null> | null | undefined,\n updateValue = defaultUpdateValue,\n hasChanged = defaultHasChanged\n) => {\n return useEffect(() => {\n const obj = ref?.current;\n if (!obj) return;\n if (!hasChanged(obj, propValue, propName)) return;\n updateValue(obj, propValue, propName);\n }, [ref?.current, propValue]);\n};\n\nexport default useObjectPropEffect;\n", "const getEnvPlayerVersion = () => {\n try {\n // @ts-ignore\n return PLAYER_VERSION as string;\n } catch {}\n return 'UNKNOWN';\n};\n\nconst player_version: string = getEnvPlayerVersion();\n\nexport const getPlayerVersion = () => player_version;\n"],
5
+ "mappings": "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",
6
+ "names": ["React", "useEffect", "useState", "MaxResolution", "MinResolution", "RenditionOrder", "generatePlayerInitTime", "MediaError", "React", "IS_REACT_19_OR_NEWER", "ReactPropToAttrNameMap", "isNil", "x", "isKeyOf", "k", "o", "toKebabCase", "string", "match", "toNativeAttrName", "propName", "propValue", "toNativeAttrValue", "propValue", "_propName", "IS_REACT_19_OR_NEWER", "toNativeProps", "props", "transformedProps", "propName", "attrName", "toNativeAttrName", "attrValue", "useRef", "useEffect", "useRef", "useCombinedRefs", "refs", "targetRef", "ref", "useEffect", "hasOwnProperty", "shallowEqual", "objA", "objB", "vVal", "keysA", "keysB", "i", "defaultHasChanged", "obj", "v", "k", "defaultUpdateValue", "useObjectPropEffect", "propName", "propValue", "ref", "updateValue", "hasChanged", "useObjectPropEffect_default", "getEnvPlayerVersion", "player_version", "getPlayerVersion", "MuxPlayerInternal", "React", "children", "props", "ref", "toNativeProps", "useEventCallbackEffect", "type", "callback", "useEffect", "eventTarget", "usePlayer", "onAbort", "onCanPlay", "onCanPlayThrough", "onEmptied", "onLoadStart", "onLoadedData", "onLoadedMetadata", "onProgress", "onDurationChange", "onVolumeChange", "onRateChange", "onResize", "onWaiting", "onPlay", "onPlaying", "onTimeUpdate", "onPause", "onSeeking", "onSeeked", "onStalled", "onSuspend", "onEnded", "onError", "onCuePointChange", "onCuePointsChange", "onChapterChange", "metadata", "tokens", "paused", "playbackId", "playbackRates", "currentTime", "themeProps", "extraSourceParams", "castCustomData", "_hlsConfig", "remainingProps", "useObjectPropEffect_default", "playerEl", "pausedVal", "value", "propName", "defaultHasChanged", "currentTimeVal", "playerSoftwareVersion", "getPlayerVersion", "playerSoftwareName", "MuxPlayer", "_a", "innerPlayerRef", "useRef", "playerRef", "useCombinedRefs", "playerInitTime", "useState", "generatePlayerInitTime", "src_default"]
7
7
  }
package/dist/lazy.mjs CHANGED
@@ -1,4 +1,4 @@
1
- "use client";import a,{useEffect as h,useState as k}from"react";import c,{Suspense as y}from"react";var m=({condition:t,fallback:r,children:n,...e})=>t?c.createElement(y,{fallback:r,...e},n):c.createElement(c.Fragment,null,r),i=m;import{useState as f,useEffect as x}from"react";var b=()=>{let[t,r]=f(!1);return x(()=>{typeof window!="undefined"&&r(!0)},[]),t},u=b;import{useState as P,useEffect as I}from"react";var g=(t,r)=>{let[n,e]=P(!1);return I(()=>{if(typeof IntersectionObserver=="function"){let o=new IntersectionObserver(([s])=>{e(s.isIntersecting)},r);return t.current&&o.observe(t.current),()=>{o.disconnect()}}},[t,r]),n},p=g;var v=a.lazy(()=>import("./-5Z6NQIRW.mjs")),R=t=>{let{style:r,className:n,onIntersection:e,placeholder:o}=t,s=a.useRef(null),l=p(s);return h(()=>{l&&e&&e()},[l,e]),a.createElement(a.Fragment,null,a.createElement("mux-player",{ref:s,"data-mux-player-react-lazy-placeholder":!0,placeholder:o!=null?o:"",style:{"--mux-player-react-lazy-placeholder":o?`url('${o}');`:"",...r},className:n||"",nohotkeys:!0,"aria-hidden":!0,tabIndex:-1},a.createElement("div",{"data-mux-player-react-lazy-placeholder-overlay":!0})),a.createElement("style",null,`
1
+ "use client";import a,{useEffect as h,useState as k}from"react";import c,{Suspense as y}from"react";var m=({condition:t,fallback:r,children:n,...e})=>t?c.createElement(y,{fallback:r,...e},n):c.createElement(c.Fragment,null,r),i=m;import{useState as f,useEffect as x}from"react";var b=()=>{let[t,r]=f(!1);return x(()=>{typeof window!="undefined"&&r(!0)},[]),t},u=b;import{useState as P,useEffect as I}from"react";var g=(t,r)=>{let[n,e]=P(!1);return I(()=>{if(typeof IntersectionObserver=="function"){let o=new IntersectionObserver(([s])=>{e(s.isIntersecting)},r);return t.current&&o.observe(t.current),()=>{o.disconnect()}}},[t,r]),n},p=g;var v=a.lazy(()=>import("./-GRAOFKCH.mjs")),R=t=>{let{style:r,className:n,onIntersection:e,placeholder:o}=t,s=a.useRef(null),l=p(s);return h(()=>{l&&e&&e()},[l,e]),a.createElement(a.Fragment,null,a.createElement("mux-player",{ref:s,"data-mux-player-react-lazy-placeholder":!0,placeholder:o!=null?o:"",style:{"--mux-player-react-lazy-placeholder":o?`url('${o}');`:"",...r},className:n||"",nohotkeys:!0,"aria-hidden":!0,tabIndex:-1},a.createElement("div",{"data-mux-player-react-lazy-placeholder-overlay":!0})),a.createElement("style",null,`
2
2
  mux-player[data-mux-player-react-lazy-placeholder] {
3
3
  aspect-ratio: 16/9;
4
4
  display: block;
@@ -1 +1 @@
1
- {"fileNames":["../../../node_modules/typescript/lib/lib.es5.d.ts","../../../node_modules/typescript/lib/lib.es2015.d.ts","../../../node_modules/typescript/lib/lib.es2016.d.ts","../../../node_modules/typescript/lib/lib.es2017.d.ts","../../../node_modules/typescript/lib/lib.es2018.d.ts","../../../node_modules/typescript/lib/lib.es2019.d.ts","../../../node_modules/typescript/lib/lib.dom.d.ts","../../../node_modules/typescript/lib/lib.dom.iterable.d.ts","../../../node_modules/typescript/lib/lib.dom.asynciterable.d.ts","../../../node_modules/typescript/lib/lib.webworker.importscripts.d.ts","../../../node_modules/typescript/lib/lib.scripthost.d.ts","../../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../node_modules/typescript/lib/lib.es2016.intl.d.ts","../../../node_modules/typescript/lib/lib.es2017.date.d.ts","../../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../node_modules/typescript/lib/lib.es2019.intl.d.ts","../../../node_modules/typescript/lib/lib.decorators.d.ts","../../../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../../../node_modules/typescript/lib/lib.es2019.full.d.ts","../../../node_modules/@types/react/global.d.ts","../../../node_modules/csstype/index.d.ts","../../../node_modules/@types/prop-types/index.d.ts","../../../node_modules/@types/react/index.d.ts","../src/ConditionalSuspense.tsx","../src/env.ts","../../../node_modules/mux-embed/dist/types/mux-embed.d.ts","../../playback-core/dist/types/errors.d.ts","../../../node_modules/hls.js/dist/hls.js.d.ts","../../playback-core/dist/types/types.d.ts","../../playback-core/dist/types/hls.d.ts","../../playback-core/dist/types/text-tracks.d.ts","../../playback-core/dist/types/pdt.d.ts","../../playback-core/dist/types/util.d.ts","../../playback-core/dist/types/request-errors.d.ts","../../playback-core/dist/types/index.d.ts","../../../node_modules/media-chrome/dist/constants.d.ts","../../../node_modules/media-chrome/dist/labels/labels.d.ts","../../../node_modules/media-chrome/dist/utils/time.d.ts","../../../node_modules/media-chrome/dist/utils/server-safe-globals.d.ts","../../../node_modules/media-chrome/dist/media-gesture-receiver.d.ts","../../../node_modules/media-chrome/dist/media-container.d.ts","../../../node_modules/media-chrome/dist/utils/attribute-token-list.d.ts","../../../node_modules/media-chrome/dist/media-store/state-mediator.d.ts","../../../node_modules/media-chrome/dist/media-store/request-map.d.ts","../../../node_modules/media-chrome/dist/media-store/media-store.d.ts","../../../node_modules/media-chrome/dist/media-controller.d.ts","../../../node_modules/media-chrome/dist/media-tooltip.d.ts","../../../node_modules/media-chrome/dist/media-chrome-button.d.ts","../../../node_modules/media-chrome/dist/media-airplay-button.d.ts","../../../node_modules/media-chrome/dist/utils/TextTrackLike.d.ts","../../../node_modules/media-chrome/dist/media-captions-button.d.ts","../../../node_modules/media-chrome/dist/media-cast-button.d.ts","../../../node_modules/media-chrome/dist/media-chrome-dialog.d.ts","../../../node_modules/media-chrome/dist/media-chrome-range.d.ts","../../../node_modules/media-chrome/dist/media-control-bar.d.ts","../../../node_modules/media-chrome/dist/media-text-display.d.ts","../../../node_modules/media-chrome/dist/media-duration-display.d.ts","../../../node_modules/media-chrome/dist/media-fullscreen-button.d.ts","../../../node_modules/media-chrome/dist/media-live-button.d.ts","../../../node_modules/media-chrome/dist/media-loading-indicator.d.ts","../../../node_modules/media-chrome/dist/media-mute-button.d.ts","../../../node_modules/media-chrome/dist/media-pip-button.d.ts","../../../node_modules/media-chrome/dist/media-playback-rate-button.d.ts","../../../node_modules/media-chrome/dist/media-play-button.d.ts","../../../node_modules/media-chrome/dist/media-poster-image.d.ts","../../../node_modules/media-chrome/dist/media-preview-chapter-display.d.ts","../../../node_modules/media-chrome/dist/media-preview-thumbnail.d.ts","../../../node_modules/media-chrome/dist/media-preview-time-display.d.ts","../../../node_modules/media-chrome/dist/media-seek-backward-button.d.ts","../../../node_modules/media-chrome/dist/media-seek-forward-button.d.ts","../../../node_modules/media-chrome/dist/media-time-display.d.ts","../../../node_modules/media-chrome/dist/media-time-range.d.ts","../../../node_modules/media-chrome/dist/media-volume-range.d.ts","../../../node_modules/media-chrome/dist/index.d.ts","../../../node_modules/media-chrome/dist/experimental/index.d.ts","../../../node_modules/custom-media-element/custom-media-element.d.ts","../../../node_modules/media-tracks/dist/video-rendition.d.ts","../../../node_modules/media-tracks/dist/video-track.d.ts","../../../node_modules/media-tracks/dist/video-track-list.d.ts","../../../node_modules/media-tracks/dist/audio-rendition.d.ts","../../../node_modules/media-tracks/dist/audio-track.d.ts","../../../node_modules/media-tracks/dist/audio-track-list.d.ts","../../../node_modules/media-tracks/dist/video-rendition-list.d.ts","../../../node_modules/media-tracks/dist/audio-rendition-list.d.ts","../../../node_modules/media-tracks/dist/mixin.d.ts","../../../node_modules/media-tracks/dist/track-event.d.ts","../../../node_modules/media-tracks/dist/rendition-event.d.ts","../../../node_modules/media-tracks/dist/index.d.ts","../../mux-video/dist/types/index.d.ts","../../mux-player/dist/types/polyfills/index.d.ts","../../mux-player/dist/types/video-api.d.ts","../../mux-player/dist/types/helpers.d.ts","../../../node_modules/media-chrome/dist/utils/template-parts.d.ts","../../../node_modules/media-chrome/dist/media-theme-element.d.ts","../../../node_modules/media-chrome/dist/menu/media-chrome-menu-item.d.ts","../../../node_modules/media-chrome/dist/menu/media-chrome-menu.d.ts","../../../node_modules/media-chrome/dist/menu/media-settings-menu.d.ts","../../../node_modules/media-chrome/dist/menu/media-settings-menu-item.d.ts","../../../node_modules/media-chrome/dist/menu/media-chrome-menu-button.d.ts","../../../node_modules/media-chrome/dist/menu/media-settings-menu-button.d.ts","../../../node_modules/media-chrome/dist/menu/media-audio-track-menu.d.ts","../../../node_modules/media-chrome/dist/menu/media-audio-track-menu-button.d.ts","../../../node_modules/media-chrome/dist/menu/media-captions-menu.d.ts","../../../node_modules/media-chrome/dist/menu/media-captions-menu-button.d.ts","../../../node_modules/media-chrome/dist/menu/media-playback-rate-menu.d.ts","../../../node_modules/media-chrome/dist/menu/media-playback-rate-menu-button.d.ts","../../../node_modules/media-chrome/dist/menu/media-rendition-menu.d.ts","../../../node_modules/media-chrome/dist/menu/media-rendition-menu-button.d.ts","../../../node_modules/media-chrome/dist/menu/index.d.ts","../../mux-player/dist/types/themes/gerwig/index.d.ts","../../mux-player/dist/types/index.d.ts","../src/common/utils.ts","../src/useCombinedRefs.ts","../src/useObjectPropEffect.ts","../src/index.tsx","../src/useIsBrowser.ts","../src/useIsIntersecting.ts","../src/lazy.tsx","../src/themes/classic.ts","../src/themes/gerwig.ts","../src/themes/microvideo.ts","../src/themes/minimal.ts"],"fileIdsList":[[42,43,44],[58,59,60,62,68,69,70,71,73,74,75,76,77,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95],[70],[70,72],[61,69],[61],[61,62],[63,64,67],[78],[64,70],[65,66],[58,65,67],[58],[61,68,115],[76,88,89,90],[76],[117,118,119,120,122,123,124,125,126,127,128,129,130],[121],[72,118],[72,121],[61,118],[61,117],[64,121],[64,118],[65,118],[117],[118],[102,103],[103],[102],[99,100,101,102,103,104,105,106,107,108,109],[100,101,103,104,105,106],[99,102],[100,103],[99,100],[100],[99],[45],[45,47,57,133,134,135,136],[45,46,57,133,137,138,139],[57],[48,50,57,96,111,113,114,132],[116,131],[110,111,112],[48,50,57,98,110],[50],[48,49,50,51,52,53,54,55,56],[51],[49,50,51],[51,52],[48,49,50]],"fileInfos":[{"version":"44e584d4f6444f58791784f1d530875970993129442a847597db702a073ca68c","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","impliedFormat":1},{"version":"9a68c0c07ae2fa71b44384a839b7b8d81662a236d4b9ac30916718f7510b1b2d","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"9e8ca8ed051c2697578c023d9c29d6df689a083561feba5c14aedee895853999","affectsGlobalScope":true,"impliedFormat":1},{"version":"69e65d976bf166ce4a9e6f6c18f94d2424bf116e90837ace179610dbccad9b42","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7a3c8b952931daebdfc7a2897c53c0a1c73624593fa070e46bd537e64dcd20a","affectsGlobalScope":true,"impliedFormat":1},{"version":"80e18897e5884b6723488d4f5652167e7bb5024f946743134ecc4aa4ee731f89","affectsGlobalScope":true,"impliedFormat":1},{"version":"cd034f499c6cdca722b60c04b5b1b78e058487a7085a8e0d6fb50809947ee573","affectsGlobalScope":true,"impliedFormat":1},{"version":"6920e1448680767498a0b77c6a00a8e77d14d62c3da8967b171f1ddffa3c18e4","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true,"impliedFormat":1},{"version":"515d0b7b9bea2e31ea4ec968e9edd2c39d3eebf4a2d5cbd04e88639819ae3b71","affectsGlobalScope":true,"impliedFormat":1},{"version":"45d8ccb3dfd57355eb29749919142d4321a0aa4df6acdfc54e30433d7176600a","affectsGlobalScope":true,"impliedFormat":1},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true,"impliedFormat":1},{"version":"93495ff27b8746f55d19fcbcdbaccc99fd95f19d057aed1bd2c0cafe1335fbf0","affectsGlobalScope":true,"impliedFormat":1},{"version":"6fc23bb8c3965964be8c597310a2878b53a0306edb71d4b5a4dfe760186bcc01","affectsGlobalScope":true,"impliedFormat":1},{"version":"ea011c76963fb15ef1cdd7ce6a6808b46322c527de2077b6cfdf23ae6f5f9ec7","affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true,"impliedFormat":1},{"version":"69ab18c3b76cd9b1be3d188eaf8bba06112ebbe2f47f6c322b5105a6fbc45a2e","affectsGlobalScope":true,"impliedFormat":1},{"version":"4738f2420687fd85629c9efb470793bb753709c2379e5f85bc1815d875ceadcd","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"9fc46429fbe091ac5ad2608c657201eb68b6f1b8341bd6d670047d32ed0a88fa","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac9538681b19688c8eae65811b329d3744af679e0bdfa5d842d0e32524c73e1c","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a969edff4bd52585473d24995c5ef223f6652d6ef46193309b3921d65dd4376","affectsGlobalScope":true,"impliedFormat":1},{"version":"9e9fbd7030c440b33d021da145d3232984c8bb7916f277e8ffd3dc2e3eae2bdb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true,"impliedFormat":1},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"74f7fa2d027d5b33eb0471c8e82a6c87216223181ec31247c357a3e8e2fddc5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"33358442698bb565130f52ba79bfd3d4d484ac85fe33f3cb1759c54d18201393","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},{"version":"08f6861df84fba9719c14d5adc3ba40be9f0c687639e6c4df3c05b9301b8ff94","impliedFormat":1},{"version":"36a2e4c9a67439aca5f91bb304611d5ae6e20d420503e96c230cf8fcdc948d94","affectsGlobalScope":true,"impliedFormat":1},{"version":"8a8eb4ebffd85e589a1cc7c178e291626c359543403d58c9cd22b81fab5b1fb9","impliedFormat":1},{"version":"ed6b820c54de95b2510bb673490d61c7f2187f532a339d8d04981645a918961f","impliedFormat":1},{"version":"78e9a9dec8fcd712a2a775d8b67bf7d166c2fb06644bba3132f33dbef06db781","affectsGlobalScope":true,"impliedFormat":1},{"version":"6d3aae02e573b4424749a17ecde853c18195fd6f08297da64aa7fff2057bb7c9","signature":"62d2aa1ca48b93c01d429fb0e92482da2b27b65fe11f1941a33052b6534b6282"},{"version":"a6b7e3c103b4424b9c9d6dce7f059c16bbf037844b9f418775b86506d3d141d4","signature":"91c076ae465392962257aca34e4bf13640363d6cca8e0636d5cda95c890951e9"},{"version":"5b5c872830a799ebdd42d46b0554ac3ec447dda8e96cbe30e6f55dfabcf224b1","affectsGlobalScope":true,"impliedFormat":1},"e116f0c265fb804d67da5f1360d78edc5cdf37dd9e8ce08c8bd0c3829b7f66bd",{"version":"565754cab3838cf74fc46fc6eb98a76a5ee86396c571f6245f4c04d6575f8631","impliedFormat":1},"a1365a8c16e1c65a39d78bd2f6518368cfb7496b2f1de0832a3aa9165292123b","c13fb8c7fdb84f3c59470c672220c380ac26ffb099721ccebba3c53971cb700d","3be94ff5800bf4567d511f1d716237ef30f753ef916bf855209a7f4c2cd741e1","dccea7b665fe08ed006acd191a7e68123ba7ec49848ac7c28a164962bf21254e","f3b0f40a4bb983dddc80f47f172c8c1bcc5a18f38eae03d14431826f613bcad4","62f761999e69713bd78cc26873c6d17c3cbd43abbe41fbef437bf22d51ca9e4d",{"version":"b64ede7c3a5cba655077bb77692848394dc47530b67cf9e49b449dc4d71b8605","affectsGlobalScope":true},{"version":"058cc7729d1bcb3e2d5bb1cc04017ebeebfc81ade135d7d1e0cca9507603c216","impliedFormat":99},{"version":"55c6de56f15d31b45af77753c708a137e9899dbd3f6e1d17d481397e520d4a38","impliedFormat":99},{"version":"386a58b5a3bacacc1eab6b5b87c81f192fc43a2504a909c7f0e01b1611156268","impliedFormat":99},{"version":"8b6de5c9c9bb6ec79adbe0e947c43b072b83a5ae1b64003926c64d6884ff89c3","impliedFormat":99},{"version":"4f4c296924ffa7eddafb240bbda70f7ba3daaeafdab5fd8b3fc6c077fa9aed40","impliedFormat":99},{"version":"f840987b41333cb4d54aa1cbd23037e7ae3b862efb76ed61760d930001f1d3fb","impliedFormat":99},{"version":"085471b526dfadb5539da3101130aa5fa4b9e97d7dad4f90442c819a962b11f6","impliedFormat":99},{"version":"3ebd69fb7f78e02690412952a36013230a0d35ce1fd90fda787cdc6db2019cd1","impliedFormat":99},{"version":"9c152ed82b194bd5f5a260745ab08163913d32bc583e8ebd58a6d5c50063af88","impliedFormat":99},{"version":"5cc73e2a1c308ce7c08647aec345b84ede7c14f422072a94c4bfee881b8dee8d","impliedFormat":99},{"version":"bf5e6d96dcce9ee78e27f903b21c61ec83bda1402a3e803216e269ffbb92b66f","impliedFormat":99},{"version":"588d951f72eee1c74c86da6b126186bdddd56e1045af04d4b2eab188f3cd2d63","impliedFormat":99},{"version":"3c718f0ea66c71ca5b22b26d1826845fd12b0129c7b376ce87d7e01cb82ca307","impliedFormat":99},{"version":"9ea8786d39654040b4e71e3de846ec46fc0ff59a25e7cfd3f1f5467fc4010211","impliedFormat":99},{"version":"ad3cb516cc81f90293f97027b35d448f2077099484044f0b3b40ac16c748c4cd","impliedFormat":99},{"version":"19ca0e902de20493a93177ee8419386b2e8840e1ccb356aa7a09eafb9f2aa4a6","impliedFormat":99},{"version":"491fc9190753711b585bf8985557b41e2745c3fa78703c5d8aef8023cd2da588","impliedFormat":99},{"version":"37570faa043e51cf519edaf0dcbdf5d68967c0d4f6cffc444eb29dd2def6d0a4","impliedFormat":99},{"version":"28577f4936c0825d8650a06aed35bba26950b56e1131c45321fdc1a79b41a6f6","impliedFormat":99},{"version":"52a0596e22d25055409623e232a59fbbb0277670f0f3f491cb7fe244f8cce082","impliedFormat":99},{"version":"fd963b23fc1f2afb8d70d941c76ce3e581c52df8aa2b5fa987ebccf92d549655","impliedFormat":99},{"version":"addb0d289747cd5d2b7d177b1fca4288153dcd1d127448b32c8ba516cb78df65","impliedFormat":99},{"version":"29abecb032cd4fa8a5fbfa28894dc27bd78f9ee8eabce6261ed9427b04c1d462","impliedFormat":99},{"version":"544a1b99ab9d3b43a96081d4605d8c4e28e7900fbb7b7a3e2e4cf39a85d42ec5","impliedFormat":99},{"version":"b90bc63ea1d617f0718aec306e100d60ddca70276f8ffe09eec6cdb1a59d3336","impliedFormat":99},{"version":"8791f09b3d94bd2e015d704d99bd5a58d8634ffe088a628aa3474eaac1ebbde0","impliedFormat":99},{"version":"aaf1f91b84d91e224493aeae688fa2f05d91d96b7f608bac16c089df5c857525","impliedFormat":99},{"version":"08de824f24eb94f50f04e467ee0c51c03f47d0cccf13178eea175295bef26c16","impliedFormat":99},{"version":"bbf70094b304deff2f9e829e17e68642c70f805344b9ac5cd41a57e1d0201b67","impliedFormat":99},{"version":"4fda12edf6e96432c1e1816e9b473f75aebb884c0e5cd05ff5364dfde708300a","impliedFormat":99},{"version":"29268f1a3a04237844ef737d15f98e390f3289ee161c3e57d23d6e0f78b7786a","impliedFormat":99},{"version":"eb781f3ee7987336bf269ea0adcbea63591965c19e9209d168962329259473ac","impliedFormat":99},{"version":"ebaed8b8ffe506df064984cce634c6979d946d4901ba2e2a8cd080ede2125f81","impliedFormat":99},{"version":"9cd1579ffd2f933e4a7c31301c2f66c56669e5d58168106173e6a356eef5818c","impliedFormat":99},{"version":"42b4ec9803afa012deeb2b2f60d00149ec19b4bedf65b3eae36a3bf9ff8823b2","impliedFormat":99},{"version":"e80fd4b1506c5e7b437651461d06e25512c4517094ddab913a1229aa41d4a128","impliedFormat":99},{"version":"10c728d882ef68368f0dc1879b44ea5cb47bff147366647a04c64e24a6fce2b9","impliedFormat":99},{"version":"191edd9d9ee3a2a4ea1d156132c03a16070318b481af0c8e4633d66e34fb9349","impliedFormat":99},{"version":"e66a935f12d810773bcb40b22bff502af44cd838610e528d862c0aa942b62a99","impliedFormat":99},{"version":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","impliedFormat":99},{"version":"1ce9bee7c394636bf6eeba7d1aca1d56983691a1b4a756c04c9c1d7032bc5e91","impliedFormat":99},{"version":"2ed351b90f48ecae9c627d41e2614c6a4fe670f958e8a5a5d3bb4bc21980bdb6","impliedFormat":99},{"version":"8f358619bbe2b132a373c5e8381018bb1f11f55dbac8cb84c380d5279f18eb75","impliedFormat":99},{"version":"ba0b6859e73b5fb85f18160a3b0d741968b1c4122fdd3436398dc99a6a9736c9","impliedFormat":99},{"version":"9979bad516454ac2aaff1756fc7f664ca6ccfdd9b4077f306e99df3033edf0a2","impliedFormat":99},{"version":"323cfa8826348d6f5269abeed193b53c1ee351a9c178858bce4dee6e9b6c3ac9","impliedFormat":99},{"version":"24354cb3bc1d897f8321bce628352612d35d92a79dba42e6609f7f5ec7d3a697","impliedFormat":99},{"version":"2ad77fd12d9bf99057909e40fecb502cb4429c617161f373339f294dfaa5d6f5","impliedFormat":99},{"version":"8e4de702297e7c9173982f2e1af6bb29b5a0251811ac12de6beb48dba2288a9f","impliedFormat":99},{"version":"b3b2e1206c3037779459c39c896f282e22edb992458a118137066807f8dbb899","impliedFormat":99},{"version":"d86abfe8b121d0296f860e2165d243a46895e6a7fd089bc7fff4e779131acc15","impliedFormat":99},{"version":"f9955a6b47c6f2608087b111dca772554ef89d1ed302990104574f7cee41cb05","impliedFormat":99},{"version":"710bfef6f0be756ddb857985b7dd5d0cc831c67b6bdfbd1179b7dc4457819ff7","impliedFormat":99},{"version":"9f6fe1e4ddaeff1d6c2955a98e7a0ef0ea1f5e33a9425d22a4c1808e7b3bd6af","affectsGlobalScope":true},"2f39ccc3f2cad7f2a1e0ad14a744877ed08dae4ae75510109ac981ceb783b566","e4166888216bfa688fc37dfc7e3d67d04b5fce9351343a76f6cd00df687f3863","8c750b8bdfd4dc5e22cda56d4a74166e62e63bed6990d5a3021b641003cd6581",{"version":"c10b802cb3571aa26feaff4500aa0ca18a8215b3dbffdcf19fea6ca6bb25e859","impliedFormat":99},{"version":"395795805d83a39809c9a363e6a7cfb7a58b2b0277a5727fd386f2ca00f702a4","impliedFormat":99},{"version":"1c8bc9c36eba281b38cafa426f4bb9aca70af588f0ca004396dba50ef51e1d44","impliedFormat":99},{"version":"dd025e95e94043d29643e698c71417d21798869630a0235a265ec87cdd48cd36","impliedFormat":99},{"version":"f1488fc78a82b1833b644078f59bd893d554996ff23078a04a9c9c9811d73247","impliedFormat":99},{"version":"fa045e1fe36ab479ddcb7dc4e23738ad611207d96a0b4dc1917cbc77cd5824bf","impliedFormat":99},{"version":"cf610df351130166852e0221c13ae91edd4cc6e564d2ff2d9dba2e76b0b23531","impliedFormat":99},{"version":"45ea15e3d2b7ce097ae3b2059150e27ba61e4b6338edb35d24696185b39d3f72","impliedFormat":99},{"version":"0fea6160584f18d27139fd1b215070e0b89b9bdabefca986f852f2dd48d84fde","impliedFormat":99},{"version":"4cada8d5f7933f0fee93574a28cae2c9dc177884a7bc415871f3f901acae2164","impliedFormat":99},{"version":"ea4b83bf793d9710935ccb3e999fe34a8ce32749220b56faae64bc27dc9a3059","impliedFormat":99},{"version":"79be6ebf6b85f66ddddf4a820edcf4e342de3c123bb8dfa8012fc25a26f40df9","impliedFormat":99},{"version":"1bbf3bb73876d08716cb96188dd5f6a5d174842b6a943a1b4111442ccf383a37","impliedFormat":99},{"version":"8002e759f61231d62afaf8cc6f1cae0a1dc9359649d3800d1947faeb5c199008","impliedFormat":99},{"version":"4d844a40823399dec0f0aad4308f8b2cbdd48ee78315d9d0088676793609cdb9","impliedFormat":99},{"version":"ce506cd6ccb5d7a1ccc73857d48791c037d84a896aa2ded6ab2f66c83c1afe4d","impliedFormat":99},{"version":"b717a39248ea611ac2b155a804d278c8d579c6391962943e3a9d0e6378ca41c8","impliedFormat":99},"320da014495cf377ce9d215a0e205cfeece4965fd8291caf73ba5631dba5c4ee","609de065df868fc2f4bb40d8105d76584577b386cf6fdd7f49b92c7d4ffdbe05",{"version":"498d6a91f4bbfbd412e928a5fd6306d98a8b8b49c334b3ef1b1dccd8ec327e2f","signature":"d84a480259a7bda3cd794ab264e29fda120eb72c8c9270396a584479bf5b827f"},{"version":"f21932f853b3dbd3949e14c7d31d2dcfba3418c5de50878884a54cf0ba14e904","signature":"014089c3590328e311f0651db51765945a630df49cccfaf71c884d53bafd70d2"},{"version":"721526438283d40d50c6356064d346f1c57693f7e9930a3854c20c73bf4380a5","signature":"c4fd6b7393d54385949abe647b9b489a07bde7ccf1edf4331a154b311e17602b"},{"version":"d2b7e30bbf29ddd298a3bb384c25558027838e48cc71e125a7f85d0d44b9fbd0","signature":"4efa97c4f050b87806f0df8beb787ba7276bb9fbf6fde37251dd3a9d923c76a5"},{"version":"1b71f45ead6f14b83fa35f86f43d760f8f5754f62ab638384f30a1e1a56e5b9c","signature":"d8697925fd69925c68732d55ed14c69c38bd4435b91355e974797c6f11685ee5"},{"version":"3afe879128eb0bc263123450b8211b56d7afba72c95e820cb51224fe661546b1","signature":"536ccb1a38a39569293fde322adb7b936d9a8bf81984d675bbba6e57c6569ca9"},{"version":"53357ea7aa47e2176c65f70cd0a13566a505e4a223ccba7e2834b0058ef899af","signature":"11cde0da98999aeac834deb7713a95b100fa2f6795c6eb908f4258382ba43620","affectsGlobalScope":true},{"version":"fa85dd99897bc23086ceca44325d3b49e9901da2f93bcc9ee7a2400305b9a1dc","signature":"5a026523580a8d1a300ac0cbf514fe18ba0c1a2b833dfbc70489f98000f4a6b6"},{"version":"346172d6bd31ef8b97a710c8b6a7a18155d1e4aeeb259229f91b795826e140fe","signature":"e3212c9c6c3810ecf4717ebba997ba5c14f72a5b2aaa08eefe64624c3b26abe5"},{"version":"db877f66f13227c49079ec30fe36cf22b702b4fa8d9005e63f451684b4cd7416","signature":"e5fa2fa2c4814d6fbbf98397afd77fa0f1a6dff2ba1fdc6de6ca35180f433a56"},{"version":"27be6309b4e9f9a8044955a0a7243c223c489ccb1d517c27c48f264d1aced267","signature":"eccacd5847f9abe6711b5f24b4b485f3a80bb12b98bbb4a3cbe9c66a4fbc1a8e"}],"root":[46,47,[134,144]],"options":{"composite":true,"declaration":true,"emitDeclarationOnly":true,"esModuleInterop":true,"jsx":2,"module":6,"noImplicitAny":true,"outDir":"./types","rootDir":"../src","skipLibCheck":false,"sourceMap":true,"strict":true,"target":6},"referencedMap":[[45,1],[96,2],[71,3],[73,4],[74,3],[70,5],[75,6],[76,6],[63,7],[77,6],[68,8],[79,9],[80,3],[62,6],[81,3],[82,6],[83,3],[84,3],[86,3],[85,10],[87,6],[88,9],[89,6],[90,9],[91,3],[92,3],[67,11],[66,12],[65,13],[78,6],[116,14],[93,9],[94,15],[69,6],[95,16],[131,17],[124,18],[123,19],[126,20],[125,19],[121,3],[117,21],[118,22],[128,23],[127,24],[130,18],[129,25],[122,18],[120,26],[119,27],[72,13],[115,6],[106,28],[104,29],[103,30],[110,31],[107,32],[109,33],[108,34],[105,35],[101,36],[100,37],[46,38],[137,39],[140,40],[135,38],[138,38],[139,38],[136,38],[114,41],[133,42],[132,43],[113,44],[111,45],[52,46],[57,47],[54,48],[56,49],[53,50],[51,51],[55,48]],"latestChangedDtsFile":"./types/themes/minimal.d.ts","version":"5.6.2"}
1
+ {"fileNames":["../../../node_modules/typescript/lib/lib.es5.d.ts","../../../node_modules/typescript/lib/lib.es2015.d.ts","../../../node_modules/typescript/lib/lib.es2016.d.ts","../../../node_modules/typescript/lib/lib.es2017.d.ts","../../../node_modules/typescript/lib/lib.es2018.d.ts","../../../node_modules/typescript/lib/lib.es2019.d.ts","../../../node_modules/typescript/lib/lib.dom.d.ts","../../../node_modules/typescript/lib/lib.dom.iterable.d.ts","../../../node_modules/typescript/lib/lib.dom.asynciterable.d.ts","../../../node_modules/typescript/lib/lib.webworker.importscripts.d.ts","../../../node_modules/typescript/lib/lib.scripthost.d.ts","../../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../node_modules/typescript/lib/lib.es2016.intl.d.ts","../../../node_modules/typescript/lib/lib.es2017.date.d.ts","../../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../node_modules/typescript/lib/lib.es2019.intl.d.ts","../../../node_modules/typescript/lib/lib.decorators.d.ts","../../../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../../../node_modules/typescript/lib/lib.es2019.full.d.ts","../../../node_modules/@types/react/global.d.ts","../../../node_modules/csstype/index.d.ts","../../../node_modules/@types/prop-types/index.d.ts","../../../node_modules/@types/react/index.d.ts","../src/ConditionalSuspense.tsx","../src/env.ts","../../../node_modules/mux-embed/dist/types/mux-embed.d.ts","../../playback-core/dist/types/errors.d.ts","../../../node_modules/hls.js/dist/hls.js.d.ts","../../playback-core/dist/types/types.d.ts","../../playback-core/dist/types/hls.d.ts","../../playback-core/dist/types/text-tracks.d.ts","../../playback-core/dist/types/pdt.d.ts","../../playback-core/dist/types/util.d.ts","../../playback-core/dist/types/request-errors.d.ts","../../playback-core/dist/types/index.d.ts","../../../node_modules/media-chrome/dist/constants.d.ts","../../../node_modules/media-chrome/dist/labels/labels.d.ts","../../../node_modules/media-chrome/dist/utils/time.d.ts","../../../node_modules/media-chrome/dist/utils/server-safe-globals.d.ts","../../../node_modules/media-chrome/dist/media-gesture-receiver.d.ts","../../../node_modules/media-chrome/dist/media-container.d.ts","../../../node_modules/media-chrome/dist/utils/attribute-token-list.d.ts","../../../node_modules/media-chrome/dist/media-store/state-mediator.d.ts","../../../node_modules/media-chrome/dist/media-store/request-map.d.ts","../../../node_modules/media-chrome/dist/media-store/media-store.d.ts","../../../node_modules/media-chrome/dist/media-controller.d.ts","../../../node_modules/media-chrome/dist/media-tooltip.d.ts","../../../node_modules/media-chrome/dist/media-chrome-button.d.ts","../../../node_modules/media-chrome/dist/media-airplay-button.d.ts","../../../node_modules/media-chrome/dist/utils/TextTrackLike.d.ts","../../../node_modules/media-chrome/dist/media-captions-button.d.ts","../../../node_modules/media-chrome/dist/media-cast-button.d.ts","../../../node_modules/media-chrome/dist/media-chrome-dialog.d.ts","../../../node_modules/media-chrome/dist/media-chrome-range.d.ts","../../../node_modules/media-chrome/dist/media-control-bar.d.ts","../../../node_modules/media-chrome/dist/media-text-display.d.ts","../../../node_modules/media-chrome/dist/media-duration-display.d.ts","../../../node_modules/media-chrome/dist/media-error-dialog.d.ts","../../../node_modules/media-chrome/dist/media-fullscreen-button.d.ts","../../../node_modules/media-chrome/dist/media-live-button.d.ts","../../../node_modules/media-chrome/dist/media-loading-indicator.d.ts","../../../node_modules/media-chrome/dist/media-mute-button.d.ts","../../../node_modules/media-chrome/dist/media-pip-button.d.ts","../../../node_modules/media-chrome/dist/media-playback-rate-button.d.ts","../../../node_modules/media-chrome/dist/media-play-button.d.ts","../../../node_modules/media-chrome/dist/media-poster-image.d.ts","../../../node_modules/media-chrome/dist/media-preview-chapter-display.d.ts","../../../node_modules/media-chrome/dist/media-preview-thumbnail.d.ts","../../../node_modules/media-chrome/dist/media-preview-time-display.d.ts","../../../node_modules/media-chrome/dist/media-seek-backward-button.d.ts","../../../node_modules/media-chrome/dist/media-seek-forward-button.d.ts","../../../node_modules/media-chrome/dist/media-time-display.d.ts","../../../node_modules/media-chrome/dist/media-time-range.d.ts","../../../node_modules/media-chrome/dist/media-volume-range.d.ts","../../../node_modules/media-chrome/dist/index.d.ts","../../../node_modules/media-chrome/dist/experimental/index.d.ts","../../../node_modules/custom-media-element/dist/custom-media-element.d.ts","../../../node_modules/media-tracks/dist/video-rendition.d.ts","../../../node_modules/media-tracks/dist/video-track.d.ts","../../../node_modules/media-tracks/dist/video-track-list.d.ts","../../../node_modules/media-tracks/dist/audio-rendition.d.ts","../../../node_modules/media-tracks/dist/audio-track.d.ts","../../../node_modules/media-tracks/dist/audio-track-list.d.ts","../../../node_modules/media-tracks/dist/video-rendition-list.d.ts","../../../node_modules/media-tracks/dist/audio-rendition-list.d.ts","../../../node_modules/media-tracks/dist/mixin.d.ts","../../../node_modules/media-tracks/dist/track-event.d.ts","../../../node_modules/media-tracks/dist/rendition-event.d.ts","../../../node_modules/media-tracks/dist/index.d.ts","../../mux-video/dist/types/index.d.ts","../../mux-player/dist/types/polyfills/index.d.ts","../../mux-player/dist/types/video-api.d.ts","../../mux-player/dist/types/helpers.d.ts","../../../node_modules/media-chrome/dist/utils/template-parts.d.ts","../../../node_modules/media-chrome/dist/media-theme-element.d.ts","../../../node_modules/media-chrome/dist/menu/media-chrome-menu-item.d.ts","../../../node_modules/media-chrome/dist/menu/media-chrome-menu.d.ts","../../../node_modules/media-chrome/dist/menu/media-settings-menu.d.ts","../../../node_modules/media-chrome/dist/menu/media-settings-menu-item.d.ts","../../../node_modules/media-chrome/dist/menu/media-chrome-menu-button.d.ts","../../../node_modules/media-chrome/dist/menu/media-settings-menu-button.d.ts","../../../node_modules/media-chrome/dist/menu/media-audio-track-menu.d.ts","../../../node_modules/media-chrome/dist/menu/media-audio-track-menu-button.d.ts","../../../node_modules/media-chrome/dist/menu/media-captions-menu.d.ts","../../../node_modules/media-chrome/dist/menu/media-captions-menu-button.d.ts","../../../node_modules/media-chrome/dist/menu/media-playback-rate-menu.d.ts","../../../node_modules/media-chrome/dist/menu/media-playback-rate-menu-button.d.ts","../../../node_modules/media-chrome/dist/menu/media-rendition-menu.d.ts","../../../node_modules/media-chrome/dist/menu/media-rendition-menu-button.d.ts","../../../node_modules/media-chrome/dist/menu/index.d.ts","../../mux-player/dist/types/themes/gerwig/index.d.ts","../../mux-player/dist/types/index.d.ts","../src/common/utils.ts","../src/useCombinedRefs.ts","../src/useObjectPropEffect.ts","../src/index.tsx","../src/useIsBrowser.ts","../src/useIsIntersecting.ts","../src/lazy.tsx","../src/themes/classic.ts","../src/themes/gerwig.ts","../src/themes/microvideo.ts","../src/themes/minimal.ts"],"fileIdsList":[[42,43,44],[58,59,60,62,68,69,70,71,73,74,75,76,77,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96],[70],[70,72],[61,69],[61],[61,62],[63,64,67],[78],[75],[64,70],[65,66],[58,65,67],[58],[61,68,116],[76,89,90,91],[76],[118,119,120,121,123,124,125,126,127,128,129,130,131],[122],[72,119],[72,122],[61,119],[61,118],[64,122],[64,119],[65,119],[118],[119],[103,104],[104],[103],[100,101,102,103,104,105,106,107,108,109,110],[101,102,104,105,106,107],[100,103],[101,104],[100,101],[101],[100],[45],[45,47,57,134,135,136,137],[45,46,57,134,138,139,140],[57],[48,50,57,97,112,114,115,133],[117,132],[111,112,113],[48,50,57,99,111],[50],[48,49,50,51,52,53,54,55,56],[51],[49,50,51],[51,52],[48,49,50]],"fileInfos":[{"version":"44e584d4f6444f58791784f1d530875970993129442a847597db702a073ca68c","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","impliedFormat":1},{"version":"9a68c0c07ae2fa71b44384a839b7b8d81662a236d4b9ac30916718f7510b1b2d","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"9e8ca8ed051c2697578c023d9c29d6df689a083561feba5c14aedee895853999","affectsGlobalScope":true,"impliedFormat":1},{"version":"69e65d976bf166ce4a9e6f6c18f94d2424bf116e90837ace179610dbccad9b42","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7a3c8b952931daebdfc7a2897c53c0a1c73624593fa070e46bd537e64dcd20a","affectsGlobalScope":true,"impliedFormat":1},{"version":"80e18897e5884b6723488d4f5652167e7bb5024f946743134ecc4aa4ee731f89","affectsGlobalScope":true,"impliedFormat":1},{"version":"cd034f499c6cdca722b60c04b5b1b78e058487a7085a8e0d6fb50809947ee573","affectsGlobalScope":true,"impliedFormat":1},{"version":"6920e1448680767498a0b77c6a00a8e77d14d62c3da8967b171f1ddffa3c18e4","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true,"impliedFormat":1},{"version":"515d0b7b9bea2e31ea4ec968e9edd2c39d3eebf4a2d5cbd04e88639819ae3b71","affectsGlobalScope":true,"impliedFormat":1},{"version":"45d8ccb3dfd57355eb29749919142d4321a0aa4df6acdfc54e30433d7176600a","affectsGlobalScope":true,"impliedFormat":1},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true,"impliedFormat":1},{"version":"93495ff27b8746f55d19fcbcdbaccc99fd95f19d057aed1bd2c0cafe1335fbf0","affectsGlobalScope":true,"impliedFormat":1},{"version":"6fc23bb8c3965964be8c597310a2878b53a0306edb71d4b5a4dfe760186bcc01","affectsGlobalScope":true,"impliedFormat":1},{"version":"ea011c76963fb15ef1cdd7ce6a6808b46322c527de2077b6cfdf23ae6f5f9ec7","affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true,"impliedFormat":1},{"version":"69ab18c3b76cd9b1be3d188eaf8bba06112ebbe2f47f6c322b5105a6fbc45a2e","affectsGlobalScope":true,"impliedFormat":1},{"version":"4738f2420687fd85629c9efb470793bb753709c2379e5f85bc1815d875ceadcd","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"9fc46429fbe091ac5ad2608c657201eb68b6f1b8341bd6d670047d32ed0a88fa","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac9538681b19688c8eae65811b329d3744af679e0bdfa5d842d0e32524c73e1c","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a969edff4bd52585473d24995c5ef223f6652d6ef46193309b3921d65dd4376","affectsGlobalScope":true,"impliedFormat":1},{"version":"9e9fbd7030c440b33d021da145d3232984c8bb7916f277e8ffd3dc2e3eae2bdb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true,"impliedFormat":1},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"74f7fa2d027d5b33eb0471c8e82a6c87216223181ec31247c357a3e8e2fddc5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"33358442698bb565130f52ba79bfd3d4d484ac85fe33f3cb1759c54d18201393","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},{"version":"08f6861df84fba9719c14d5adc3ba40be9f0c687639e6c4df3c05b9301b8ff94","impliedFormat":1},{"version":"36a2e4c9a67439aca5f91bb304611d5ae6e20d420503e96c230cf8fcdc948d94","affectsGlobalScope":true,"impliedFormat":1},{"version":"8a8eb4ebffd85e589a1cc7c178e291626c359543403d58c9cd22b81fab5b1fb9","impliedFormat":1},{"version":"ed6b820c54de95b2510bb673490d61c7f2187f532a339d8d04981645a918961f","impliedFormat":1},{"version":"78e9a9dec8fcd712a2a775d8b67bf7d166c2fb06644bba3132f33dbef06db781","affectsGlobalScope":true,"impliedFormat":1},{"version":"6d3aae02e573b4424749a17ecde853c18195fd6f08297da64aa7fff2057bb7c9","signature":"62d2aa1ca48b93c01d429fb0e92482da2b27b65fe11f1941a33052b6534b6282"},{"version":"a6b7e3c103b4424b9c9d6dce7f059c16bbf037844b9f418775b86506d3d141d4","signature":"91c076ae465392962257aca34e4bf13640363d6cca8e0636d5cda95c890951e9"},{"version":"5b5c872830a799ebdd42d46b0554ac3ec447dda8e96cbe30e6f55dfabcf224b1","affectsGlobalScope":true,"impliedFormat":1},"e116f0c265fb804d67da5f1360d78edc5cdf37dd9e8ce08c8bd0c3829b7f66bd",{"version":"565754cab3838cf74fc46fc6eb98a76a5ee86396c571f6245f4c04d6575f8631","impliedFormat":1},"a1365a8c16e1c65a39d78bd2f6518368cfb7496b2f1de0832a3aa9165292123b","c13fb8c7fdb84f3c59470c672220c380ac26ffb099721ccebba3c53971cb700d","3be94ff5800bf4567d511f1d716237ef30f753ef916bf855209a7f4c2cd741e1","dccea7b665fe08ed006acd191a7e68123ba7ec49848ac7c28a164962bf21254e","f3b0f40a4bb983dddc80f47f172c8c1bcc5a18f38eae03d14431826f613bcad4","62f761999e69713bd78cc26873c6d17c3cbd43abbe41fbef437bf22d51ca9e4d",{"version":"b64ede7c3a5cba655077bb77692848394dc47530b67cf9e49b449dc4d71b8605","affectsGlobalScope":true},{"version":"1042d20bd3e3c341e5b94dc8e0be2bfb55453b3d8e0299afd164e62fa85c0588","impliedFormat":99},{"version":"be60655130595ca18a0122fce05b3aeb4ba64397afabbfd8f2ce040baa1bd9b6","impliedFormat":99},{"version":"386a58b5a3bacacc1eab6b5b87c81f192fc43a2504a909c7f0e01b1611156268","impliedFormat":99},{"version":"8b6de5c9c9bb6ec79adbe0e947c43b072b83a5ae1b64003926c64d6884ff89c3","impliedFormat":99},{"version":"4f4c296924ffa7eddafb240bbda70f7ba3daaeafdab5fd8b3fc6c077fa9aed40","impliedFormat":99},{"version":"df0569f747680d0e862b0687fd935a2bf59800264b4bf8f9827d1231faffb5d2","impliedFormat":99},{"version":"085471b526dfadb5539da3101130aa5fa4b9e97d7dad4f90442c819a962b11f6","impliedFormat":99},{"version":"38a2bfde2243c90db04e6c17f17b573a87d028cd7f813179a68287b415d9e35d","impliedFormat":99},{"version":"9c152ed82b194bd5f5a260745ab08163913d32bc583e8ebd58a6d5c50063af88","impliedFormat":99},{"version":"5cc73e2a1c308ce7c08647aec345b84ede7c14f422072a94c4bfee881b8dee8d","impliedFormat":99},{"version":"bf5e6d96dcce9ee78e27f903b21c61ec83bda1402a3e803216e269ffbb92b66f","impliedFormat":99},{"version":"588d951f72eee1c74c86da6b126186bdddd56e1045af04d4b2eab188f3cd2d63","impliedFormat":99},{"version":"3c718f0ea66c71ca5b22b26d1826845fd12b0129c7b376ce87d7e01cb82ca307","impliedFormat":99},{"version":"9ea8786d39654040b4e71e3de846ec46fc0ff59a25e7cfd3f1f5467fc4010211","impliedFormat":99},{"version":"ad3cb516cc81f90293f97027b35d448f2077099484044f0b3b40ac16c748c4cd","impliedFormat":99},{"version":"19ca0e902de20493a93177ee8419386b2e8840e1ccb356aa7a09eafb9f2aa4a6","impliedFormat":99},{"version":"491fc9190753711b585bf8985557b41e2745c3fa78703c5d8aef8023cd2da588","impliedFormat":99},{"version":"d654f7d45ac0f807cc3563644a000b903f87142c25912ab76e0a2fdbd9b7fd07","impliedFormat":99},{"version":"28577f4936c0825d8650a06aed35bba26950b56e1131c45321fdc1a79b41a6f6","impliedFormat":99},{"version":"52a0596e22d25055409623e232a59fbbb0277670f0f3f491cb7fe244f8cce082","impliedFormat":99},{"version":"fd963b23fc1f2afb8d70d941c76ce3e581c52df8aa2b5fa987ebccf92d549655","impliedFormat":99},{"version":"addb0d289747cd5d2b7d177b1fca4288153dcd1d127448b32c8ba516cb78df65","impliedFormat":99},{"version":"48359bb367bba714b306e0111040ea0216858eb67dcc6b84d26af0d5691bd8be","impliedFormat":99},{"version":"29abecb032cd4fa8a5fbfa28894dc27bd78f9ee8eabce6261ed9427b04c1d462","impliedFormat":99},{"version":"544a1b99ab9d3b43a96081d4605d8c4e28e7900fbb7b7a3e2e4cf39a85d42ec5","impliedFormat":99},{"version":"b90bc63ea1d617f0718aec306e100d60ddca70276f8ffe09eec6cdb1a59d3336","impliedFormat":99},{"version":"8791f09b3d94bd2e015d704d99bd5a58d8634ffe088a628aa3474eaac1ebbde0","impliedFormat":99},{"version":"aaf1f91b84d91e224493aeae688fa2f05d91d96b7f608bac16c089df5c857525","impliedFormat":99},{"version":"08de824f24eb94f50f04e467ee0c51c03f47d0cccf13178eea175295bef26c16","impliedFormat":99},{"version":"bbf70094b304deff2f9e829e17e68642c70f805344b9ac5cd41a57e1d0201b67","impliedFormat":99},{"version":"4fda12edf6e96432c1e1816e9b473f75aebb884c0e5cd05ff5364dfde708300a","impliedFormat":99},{"version":"29268f1a3a04237844ef737d15f98e390f3289ee161c3e57d23d6e0f78b7786a","impliedFormat":99},{"version":"14393d340746f1ff91c5b37e63c21e84b30258774f7bae5d549250c66de947df","impliedFormat":99},{"version":"ebaed8b8ffe506df064984cce634c6979d946d4901ba2e2a8cd080ede2125f81","impliedFormat":99},{"version":"9cd1579ffd2f933e4a7c31301c2f66c56669e5d58168106173e6a356eef5818c","impliedFormat":99},{"version":"42b4ec9803afa012deeb2b2f60d00149ec19b4bedf65b3eae36a3bf9ff8823b2","impliedFormat":99},{"version":"e80fd4b1506c5e7b437651461d06e25512c4517094ddab913a1229aa41d4a128","impliedFormat":99},{"version":"10c728d882ef68368f0dc1879b44ea5cb47bff147366647a04c64e24a6fce2b9","impliedFormat":99},{"version":"191edd9d9ee3a2a4ea1d156132c03a16070318b481af0c8e4633d66e34fb9349","impliedFormat":99},{"version":"724c7a8381f4ad19bd8d5e24abd5eca3aed02a1c3807c658f0d15d5b3ccf0fdd","impliedFormat":99},{"version":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","impliedFormat":99},{"version":"2fd1ca5174c55582bcc8b60204854350d3f6ab02f3bc032479117f993bf811c0","impliedFormat":99},{"version":"2ed351b90f48ecae9c627d41e2614c6a4fe670f958e8a5a5d3bb4bc21980bdb6","impliedFormat":99},{"version":"8f358619bbe2b132a373c5e8381018bb1f11f55dbac8cb84c380d5279f18eb75","impliedFormat":99},{"version":"ba0b6859e73b5fb85f18160a3b0d741968b1c4122fdd3436398dc99a6a9736c9","impliedFormat":99},{"version":"9979bad516454ac2aaff1756fc7f664ca6ccfdd9b4077f306e99df3033edf0a2","impliedFormat":99},{"version":"323cfa8826348d6f5269abeed193b53c1ee351a9c178858bce4dee6e9b6c3ac9","impliedFormat":99},{"version":"24354cb3bc1d897f8321bce628352612d35d92a79dba42e6609f7f5ec7d3a697","impliedFormat":99},{"version":"2ad77fd12d9bf99057909e40fecb502cb4429c617161f373339f294dfaa5d6f5","impliedFormat":99},{"version":"8e4de702297e7c9173982f2e1af6bb29b5a0251811ac12de6beb48dba2288a9f","impliedFormat":99},{"version":"b3b2e1206c3037779459c39c896f282e22edb992458a118137066807f8dbb899","impliedFormat":99},{"version":"d86abfe8b121d0296f860e2165d243a46895e6a7fd089bc7fff4e779131acc15","impliedFormat":99},{"version":"f9955a6b47c6f2608087b111dca772554ef89d1ed302990104574f7cee41cb05","impliedFormat":99},{"version":"710bfef6f0be756ddb857985b7dd5d0cc831c67b6bdfbd1179b7dc4457819ff7","impliedFormat":99},{"version":"2bd1bfc9add92f8c9363870a33ce48599c9301eea94373cd105270721b4af162","affectsGlobalScope":true},"2f39ccc3f2cad7f2a1e0ad14a744877ed08dae4ae75510109ac981ceb783b566","8fd58a43ff6daeb3dd4891e901e6206a26168f40a4f3f72396edfd3b9e54e1e3","8c750b8bdfd4dc5e22cda56d4a74166e62e63bed6990d5a3021b641003cd6581",{"version":"c10b802cb3571aa26feaff4500aa0ca18a8215b3dbffdcf19fea6ca6bb25e859","impliedFormat":99},{"version":"395795805d83a39809c9a363e6a7cfb7a58b2b0277a5727fd386f2ca00f702a4","impliedFormat":99},{"version":"1c8bc9c36eba281b38cafa426f4bb9aca70af588f0ca004396dba50ef51e1d44","impliedFormat":99},{"version":"24d8d24b53386d994fa00924ca8355ccf2106e7ee09e9402f633960f7b17fd82","impliedFormat":99},{"version":"f1488fc78a82b1833b644078f59bd893d554996ff23078a04a9c9c9811d73247","impliedFormat":99},{"version":"fa045e1fe36ab479ddcb7dc4e23738ad611207d96a0b4dc1917cbc77cd5824bf","impliedFormat":99},{"version":"cf610df351130166852e0221c13ae91edd4cc6e564d2ff2d9dba2e76b0b23531","impliedFormat":99},{"version":"45ea15e3d2b7ce097ae3b2059150e27ba61e4b6338edb35d24696185b39d3f72","impliedFormat":99},{"version":"0fea6160584f18d27139fd1b215070e0b89b9bdabefca986f852f2dd48d84fde","impliedFormat":99},{"version":"4cada8d5f7933f0fee93574a28cae2c9dc177884a7bc415871f3f901acae2164","impliedFormat":99},{"version":"ea4b83bf793d9710935ccb3e999fe34a8ce32749220b56faae64bc27dc9a3059","impliedFormat":99},{"version":"79be6ebf6b85f66ddddf4a820edcf4e342de3c123bb8dfa8012fc25a26f40df9","impliedFormat":99},{"version":"1bbf3bb73876d08716cb96188dd5f6a5d174842b6a943a1b4111442ccf383a37","impliedFormat":99},{"version":"8002e759f61231d62afaf8cc6f1cae0a1dc9359649d3800d1947faeb5c199008","impliedFormat":99},{"version":"4d844a40823399dec0f0aad4308f8b2cbdd48ee78315d9d0088676793609cdb9","impliedFormat":99},{"version":"ce506cd6ccb5d7a1ccc73857d48791c037d84a896aa2ded6ab2f66c83c1afe4d","impliedFormat":99},{"version":"b717a39248ea611ac2b155a804d278c8d579c6391962943e3a9d0e6378ca41c8","impliedFormat":99},"320da014495cf377ce9d215a0e205cfeece4965fd8291caf73ba5631dba5c4ee","16ce22c6c2c0dc28d240bf281d8c8665e544bc6cecc3a6351a214d088a5b8206",{"version":"ef8545c58c140e5b095d78f1ba040190a345057a07e6c485e4fe7422b3e4d6f6","signature":"cbcedbc672b44cf465543012151dc5081ae371c7c7aca003952ff843057dfa28"},{"version":"f21932f853b3dbd3949e14c7d31d2dcfba3418c5de50878884a54cf0ba14e904","signature":"014089c3590328e311f0651db51765945a630df49cccfaf71c884d53bafd70d2"},{"version":"721526438283d40d50c6356064d346f1c57693f7e9930a3854c20c73bf4380a5","signature":"c4fd6b7393d54385949abe647b9b489a07bde7ccf1edf4331a154b311e17602b"},{"version":"c4afa5a5f8f8a11631a57c0785409afb971711912aa301bea42e04ae29a68fbc","signature":"7b47d5fee19c80429510ebba52d85129ee33a749ef196966b5d24939f0e26ad4"},{"version":"1b71f45ead6f14b83fa35f86f43d760f8f5754f62ab638384f30a1e1a56e5b9c","signature":"d8697925fd69925c68732d55ed14c69c38bd4435b91355e974797c6f11685ee5"},{"version":"3afe879128eb0bc263123450b8211b56d7afba72c95e820cb51224fe661546b1","signature":"536ccb1a38a39569293fde322adb7b936d9a8bf81984d675bbba6e57c6569ca9"},{"version":"53357ea7aa47e2176c65f70cd0a13566a505e4a223ccba7e2834b0058ef899af","signature":"11cde0da98999aeac834deb7713a95b100fa2f6795c6eb908f4258382ba43620","affectsGlobalScope":true},{"version":"fa85dd99897bc23086ceca44325d3b49e9901da2f93bcc9ee7a2400305b9a1dc","signature":"5a026523580a8d1a300ac0cbf514fe18ba0c1a2b833dfbc70489f98000f4a6b6"},{"version":"346172d6bd31ef8b97a710c8b6a7a18155d1e4aeeb259229f91b795826e140fe","signature":"e3212c9c6c3810ecf4717ebba997ba5c14f72a5b2aaa08eefe64624c3b26abe5"},{"version":"db877f66f13227c49079ec30fe36cf22b702b4fa8d9005e63f451684b4cd7416","signature":"e5fa2fa2c4814d6fbbf98397afd77fa0f1a6dff2ba1fdc6de6ca35180f433a56"},{"version":"27be6309b4e9f9a8044955a0a7243c223c489ccb1d517c27c48f264d1aced267","signature":"eccacd5847f9abe6711b5f24b4b485f3a80bb12b98bbb4a3cbe9c66a4fbc1a8e"}],"root":[46,47,[135,145]],"options":{"composite":true,"declaration":true,"emitDeclarationOnly":true,"esModuleInterop":true,"jsx":2,"module":6,"noImplicitAny":true,"outDir":"./types","rootDir":"../src","skipLibCheck":false,"sourceMap":true,"strict":true,"target":6},"referencedMap":[[45,1],[97,2],[71,3],[73,4],[74,3],[70,5],[75,6],[76,6],[63,7],[77,6],[68,8],[79,9],[80,10],[81,3],[62,6],[82,3],[83,6],[84,3],[85,3],[87,3],[86,11],[88,6],[89,9],[90,6],[91,9],[92,3],[93,3],[67,12],[66,13],[65,14],[78,6],[117,15],[94,9],[95,16],[69,6],[96,17],[132,18],[125,19],[124,20],[127,21],[126,20],[122,3],[118,22],[119,23],[129,24],[128,25],[131,19],[130,26],[123,19],[121,27],[120,28],[72,14],[116,6],[107,29],[105,30],[104,31],[111,32],[108,33],[110,34],[109,35],[106,36],[102,37],[101,38],[46,39],[135,39],[138,40],[141,41],[136,39],[139,39],[140,39],[137,39],[115,42],[134,43],[133,44],[114,45],[112,46],[52,47],[57,48],[54,49],[56,50],[53,51],[51,52],[55,49]],"latestChangedDtsFile":"./types/themes/minimal.d.ts","version":"5.6.2"}
@@ -1,10 +1,10 @@
1
1
  type KeyTypes = string | number | symbol;
2
2
  type Maybe<T> = T | null | undefined;
3
3
  export declare const isNil: (x: unknown) => x is null | undefined;
4
- export declare const isKeyOf: <T extends {} = any>(k: KeyTypes, o: Maybe<T>) => k is keyof T;
4
+ export declare const isKeyOf: <T extends object = any>(k: KeyTypes, o: Maybe<T>) => k is keyof T;
5
5
  export declare const toNativeAttrName: (propName: string, propValue: any) => string | undefined;
6
6
  export declare const toStyleAttr: <T>(x: T) => T;
7
- export declare const toNativeAttrValue: (propValue: any, propName: string) => any;
7
+ export declare const toNativeAttrValue: (propValue: any, _propName: string) => any;
8
8
  export declare const toNativeProps: (props?: {}) => {
9
9
  [k: string]: string;
10
10
  };
@@ -1,11 +1,11 @@
1
1
  import React from 'react';
2
2
  import type { CSSProperties } from 'react';
3
3
  import type { StreamTypes, PlaybackTypes, CmcdTypes, MaxResolutionValue, MinResolutionValue, RenditionOrderValue } from '@mux/playback-core';
4
- import { MaxResolution, MinResolution, RenditionOrder } from '@mux/playback-core';
4
+ import { MaxResolution, MinResolution, RenditionOrder, generatePlayerInitTime } from '@mux/playback-core';
5
5
  import { MediaError } from '@mux/mux-player';
6
6
  import type MuxPlayerElement from '@mux/mux-player';
7
7
  import type { Tokens, MuxPlayerElementEventMap } from '@mux/mux-player';
8
- export { MediaError, MaxResolution, MinResolution, RenditionOrder };
8
+ export { MediaError, MaxResolution, MinResolution, RenditionOrder, generatePlayerInitTime };
9
9
  type ValueOf<T> = T[keyof T];
10
10
  interface GenericEventListener<T extends Event = CustomEvent> {
11
11
  (evt: T): void;
@@ -59,6 +59,7 @@ export type MuxPlayerProps = {
59
59
  defaultHiddenCaptions?: boolean;
60
60
  playerSoftwareVersion?: string;
61
61
  playerSoftwareName?: string;
62
+ playerInitTime?: number;
62
63
  forwardSeekOffset?: number;
63
64
  backwardSeekOffset?: number;
64
65
  maxResolution?: MaxResolutionValue;
@@ -113,5 +114,7 @@ export type MuxPlayerProps = {
113
114
  onCuePointsChange?: GenericEventListener<MuxPlayerElementEventMap['cuepointschange']>;
114
115
  onChapterChange?: GenericEventListener<MuxPlayerElementEventMap['chapterchange']>;
115
116
  } & Partial<MuxMediaPropTypes> & Partial<VideoApiAttributes>;
117
+ export declare const playerSoftwareVersion: string;
118
+ export declare const playerSoftwareName = "mux-player-react";
116
119
  declare const MuxPlayer: React.ForwardRefExoticComponent<Omit<MuxPlayerProps, "playerSoftwareName" | "playerSoftwareVersion"> & React.RefAttributes<MuxPlayerElement>>;
117
120
  export default MuxPlayer;
@@ -1,10 +1,10 @@
1
1
  type KeyTypes = string | number | symbol;
2
2
  type Maybe<T> = T | null | undefined;
3
3
  export declare const isNil: (x: unknown) => x is null | undefined;
4
- export declare const isKeyOf: <T extends {} = any>(k: KeyTypes, o: Maybe<T>) => k is keyof T;
4
+ export declare const isKeyOf: <T extends object = any>(k: KeyTypes, o: Maybe<T>) => k is keyof T;
5
5
  export declare const toNativeAttrName: (propName: string, propValue: any) => string | undefined;
6
6
  export declare const toStyleAttr: <T>(x: T) => T;
7
- export declare const toNativeAttrValue: (propValue: any, propName: string) => any;
7
+ export declare const toNativeAttrValue: (propValue: any, _propName: string) => any;
8
8
  export declare const toNativeProps: (props?: {}) => {
9
9
  [k: string]: string;
10
10
  };
@@ -1,11 +1,11 @@
1
1
  import React from 'react';
2
2
  import { CSSProperties } from 'react';
3
3
  import { StreamTypes, PlaybackTypes, CmcdTypes, MaxResolutionValue, MinResolutionValue, RenditionOrderValue } from '@mux/playback-core';
4
- import { MaxResolution, MinResolution, RenditionOrder } from '@mux/playback-core';
4
+ import { MaxResolution, MinResolution, RenditionOrder, generatePlayerInitTime } from '@mux/playback-core';
5
5
  import { MediaError } from '@mux/mux-player';
6
6
  import MuxPlayerElement from '@mux/mux-player';
7
7
  import { Tokens, MuxPlayerElementEventMap } from '@mux/mux-player';
8
- export { MediaError, MaxResolution, MinResolution, RenditionOrder };
8
+ export { MediaError, MaxResolution, MinResolution, RenditionOrder, generatePlayerInitTime };
9
9
  type ValueOf<T> = T[keyof T];
10
10
  interface GenericEventListener<T extends Event = CustomEvent> {
11
11
  (evt: T): void;
@@ -59,6 +59,7 @@ export type MuxPlayerProps = {
59
59
  defaultHiddenCaptions?: boolean;
60
60
  playerSoftwareVersion?: string;
61
61
  playerSoftwareName?: string;
62
+ playerInitTime?: number;
62
63
  forwardSeekOffset?: number;
63
64
  backwardSeekOffset?: number;
64
65
  maxResolution?: MaxResolutionValue;
@@ -113,5 +114,7 @@ export type MuxPlayerProps = {
113
114
  onCuePointsChange?: GenericEventListener<MuxPlayerElementEventMap['cuepointschange']>;
114
115
  onChapterChange?: GenericEventListener<MuxPlayerElementEventMap['chapterchange']>;
115
116
  } & Partial<MuxMediaPropTypes> & Partial<VideoApiAttributes>;
117
+ export declare const playerSoftwareVersion: string;
118
+ export declare const playerSoftwareName = "mux-player-react";
116
119
  declare const MuxPlayer: React.ForwardRefExoticComponent<Pick<MuxPlayerProps, Exclude<keyof MuxPlayerProps, "playerSoftwareName" | "playerSoftwareVersion">> & React.RefAttributes<MuxPlayerElement>>;
117
120
  export default MuxPlayer;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mux/mux-player-react",
3
- "version": "3.1.0",
3
+ "version": "3.2.0",
4
4
  "description": "An open source Mux player for React that Just Works™",
5
5
  "homepage": "https://mux.com/player",
6
6
  "keywords": [
@@ -40,28 +40,28 @@
40
40
  ".": {
41
41
  "import": "./dist/index.mjs",
42
42
  "require": "./dist/index.cjs.js",
43
- "default": "./dist/index.cjs.js",
44
43
  "types@<4.3.5": "./dist/types-ts3.4/index.d.ts",
45
- "types": "./dist/types/index.d.ts"
44
+ "types": "./dist/types/index.d.ts",
45
+ "default": "./dist/index.cjs.js"
46
46
  },
47
47
  "./lazy": {
48
48
  "import": "./dist/lazy.mjs",
49
- "default": "./dist/lazy.mjs",
50
49
  "types@<4.3.5": "./dist/types-ts3.4/lazy.d.ts",
51
- "types": "./dist/types/lazy.d.ts"
50
+ "types": "./dist/types/lazy.d.ts",
51
+ "default": "./dist/lazy.mjs"
52
52
  },
53
53
  "./themes/*": {
54
54
  "import": "./dist/themes/*.mjs",
55
55
  "require": "./dist/themes/*.cjs.js",
56
- "default": "./dist/themes/*.cjs.js",
57
56
  "types@<4.3.5": "./dist/types-ts3.4/themes/*.d.ts",
58
- "types": "./dist/types/themes/*.d.ts"
57
+ "types": "./dist/types/themes/*.d.ts",
58
+ "default": "./dist/themes/*.cjs.js"
59
59
  }
60
60
  },
61
61
  "types": "./dist/types/index.d.ts",
62
62
  "repository": {
63
63
  "type": "git",
64
- "url": "https://github.com/muxinc/elements",
64
+ "url": "git+https://github.com/muxinc/elements.git",
65
65
  "directory": "packages/mux-player-react"
66
66
  },
67
67
  "author": "Mux, Inc.",
@@ -80,9 +80,7 @@
80
80
  "build:esm:lazy": "esbuild src/lazy.tsx --splitting --target=es2019 --bundle --sourcemap --metafile=./dist/esm.lazy.json --format=esm --loader:.css=text --outdir=dist --out-extension:.js=.mjs --external:react --external:@mux/* --external:prop-types --define:PLAYER_VERSION=\"'$npm_package_version'\"",
81
81
  "build:types": "tsc",
82
82
  "postbuild:types": "downlevel-dts ./dist/types ./dist/types-ts3.4",
83
- "build": "npm-run-all --parallel 'build:cjs --minify' 'build:esm --minify' 'build:esm:lazy --minify'",
84
- "create-release-notes": "create-release-notes ./CHANGELOG.md",
85
- "publish-release": "../../scripts/publish.sh"
83
+ "build": "npm-run-all --parallel 'build:cjs --minify' 'build:esm --minify' 'build:esm:lazy --minify'"
86
84
  },
87
85
  "peerDependencies": {
88
86
  "@types/react": "^17.0.0 || ^17.0.0-0 || ^18 || ^18.0.0-0 || ^19 || ^19.0.0-0",
@@ -98,8 +96,8 @@
98
96
  }
99
97
  },
100
98
  "dependencies": {
101
- "@mux/mux-player": "3.1.0",
102
- "@mux/playback-core": "0.27.0",
99
+ "@mux/mux-player": "3.2.0",
100
+ "@mux/playback-core": "0.28.0",
103
101
  "prop-types": "^15.7.2"
104
102
  },
105
103
  "devDependencies": {
@@ -113,6 +111,5 @@
113
111
  "react-dom": "^18.2.0",
114
112
  "shx": "^0.3.4",
115
113
  "typescript": "^5.5.4"
116
- },
117
- "gitHead": "e1d17f4ce383e95489fc778d3c5bda3b89a27b5b"
114
+ }
118
115
  }
package/LICENSE DELETED
@@ -1,9 +0,0 @@
1
- MIT License
2
-
3
- Copyright (c) 2021 Mux, Inc.
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
6
-
7
- The above copyright notice and this permission notice (including the next paragraph) shall be included in all copies or substantial portions of the Software.
8
-
9
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@@ -1,2 +0,0 @@
1
- "use client";import y,{useEffect as ye}from"react";import{MaxResolution as Re,MinResolution as Ce,RenditionOrder as ke}from"@mux/playback-core";import{MediaError as Oe}from"@mux/mux-player";var d={className:"class",classname:"class",htmlFor:"for",crossOrigin:"crossorigin",viewBox:"viewBox",playsInline:"playsinline",autoPlay:"autoplay",playbackRate:"playbackrate"},$=e=>e==null,Q=(e,n)=>$(n)?!1:e in n,X=e=>e.replace(/[A-Z]/g,n=>`-${n.toLowerCase()}`),B=(e,n)=>{if(!(typeof n=="boolean"&&!n)){if(Q(e,d))return d[e];if(typeof n!=null)return/[A-Z]/.test(e)?X(e):e}};var ee=(e,n)=>typeof e=="boolean"?"":e,p=(e={})=>Object.entries(e).reduce((n,[t,o])=>{let r=B(t,o);if(!r)return n;let s=ee(o,t);return n[r]=s,n},{});import{useRef as ce}from"react";import{useEffect as ne,useRef as te}from"react";var m=(...e)=>{let n=te(null);return ne(()=>{e.forEach(t=>{t&&(typeof t=="function"?t(n.current):t.current=n.current)})},[e]),n};import{useEffect as ae}from"react";var re=Object.prototype.hasOwnProperty,oe=(e,n)=>{if(Object.is(e,n))return!0;if(typeof e!="object"||e===null||typeof n!="object"||n===null)return!1;if(Array.isArray(e))return!Array.isArray(n)||e.length!==n.length?!1:e.some((r,s)=>n[s]===r);let t=Object.keys(e),o=Object.keys(n);if(t.length!==o.length)return!1;for(let r=0;r<t.length;r++)if(!re.call(n,t[r])||!Object.is(e[t[r]],n[t[r]]))return!1;return!0},c=(e,n,t)=>!oe(n,e[t]),ie=(e,n,t)=>{e[t]=n},se=(e,n,t,o=ie,r=c)=>ae(()=>{let s=t==null?void 0:t.current;s&&r(s,n,e)&&o(s,n,e)},[t==null?void 0:t.current,n]),i=se;var le=()=>{try{return"3.1.0"}catch{}return"UNKNOWN"},ue=le(),E=()=>ue;var de=y.forwardRef(({children:e,...n},t)=>y.createElement("mux-player",p({...n,ref:t}),e)),a=(e,n,t)=>ye(()=>{let o=n==null?void 0:n.current;if(!(!o||!t))return o.addEventListener(e,t),()=>{o.removeEventListener(e,t)}},[n==null?void 0:n.current,t]),pe=(e,n)=>{let{onAbort:t,onCanPlay:o,onCanPlayThrough:r,onEmptied:s,onLoadStart:g,onLoadedData:M,onLoadedMetadata:f,onProgress:P,onDurationChange:b,onVolumeChange:v,onRateChange:x,onResize:h,onWaiting:T,onPlay:R,onPlaying:C,onTimeUpdate:k,onPause:L,onSeeking:O,onSeeked:S,onStalled:G,onSuspend:w,onEnded:V,onError:A,onCuePointChange:N,onCuePointsChange:D,onChapterChange:I,metadata:K,tokens:U,paused:_,playbackId:H,playbackRates:j,currentTime:z,themeProps:F,extraSourceParams:W,castCustomData:Z,_hlsConfig:q,...J}=n;return i("playbackRates",j,e),i("metadata",K,e),i("extraSourceParams",W,e),i("_hlsConfig",q,e),i("themeProps",F,e),i("tokens",U,e),i("playbackId",H,e),i("castCustomData",Z,e),i("paused",_,e,(l,u)=>{u!=null&&(u?l.pause():l.play())},(l,u,Y)=>l.hasAttribute("autoplay")&&!l.hasPlayed?!1:c(l,u,Y)),i("currentTime",z,e,(l,u)=>{u!=null&&(l.currentTime=u)}),a("abort",e,t),a("canplay",e,o),a("canplaythrough",e,r),a("emptied",e,s),a("loadstart",e,g),a("loadeddata",e,M),a("loadedmetadata",e,f),a("progress",e,P),a("durationchange",e,b),a("volumechange",e,v),a("ratechange",e,x),a("resize",e,h),a("waiting",e,T),a("play",e,R),a("playing",e,C),a("timeupdate",e,k),a("pause",e,L),a("seeking",e,O),a("seeked",e,S),a("stalled",e,G),a("suspend",e,w),a("ended",e,V),a("error",e,A),a("cuepointchange",e,N),a("cuepointschange",e,D),a("chapterchange",e,I),[J]},me=E(),Ee="mux-player-react",ge=y.forwardRef((e,n)=>{let t=ce(null),o=m(t,n),[r]=pe(t,e);return y.createElement(de,{ref:o,playerSoftwareName:Ee,playerSoftwareVersion:me,...r})}),Ne=ge;export{Re as MaxResolution,Oe as MediaError,Ce as MinResolution,ke as RenditionOrder,Ne as default};
2
- //# sourceMappingURL=-5Z6NQIRW.mjs.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../src/index.tsx", "../src/common/utils.ts", "../src/useCombinedRefs.ts", "../src/useObjectPropEffect.ts", "../src/env.ts"],
4
- "sourcesContent": ["'use client';\nimport React, { useEffect } from 'react';\nimport type { CSSProperties } from 'react';\nimport type {\n StreamTypes,\n PlaybackTypes,\n CmcdTypes,\n MaxResolutionValue,\n MinResolutionValue,\n RenditionOrderValue,\n} from '@mux/playback-core';\nimport { MaxResolution, MinResolution, RenditionOrder } from '@mux/playback-core';\nimport { MediaError } from '@mux/mux-player';\nimport type MuxPlayerElement from '@mux/mux-player';\nimport type { Tokens, MuxPlayerElementEventMap } from '@mux/mux-player';\nimport { toNativeProps } from './common/utils';\nimport { useRef } from 'react';\nimport { useCombinedRefs } from './useCombinedRefs';\nimport useObjectPropEffect, { defaultHasChanged } from './useObjectPropEffect';\nimport { getPlayerVersion } from './env';\n\nexport { MediaError, MaxResolution, MinResolution, RenditionOrder };\n\ntype ValueOf<T> = T[keyof T];\ninterface GenericEventListener<T extends Event = CustomEvent> {\n (evt: T): void;\n}\n\nexport type MuxPlayerRefAttributes = MuxPlayerElement;\ntype VideoApiAttributes = {\n currentTime: number;\n volume: number;\n paused: boolean;\n src: string | null;\n poster: string;\n playbackRate: number;\n playsInline: boolean;\n preload: string;\n crossOrigin: string;\n autoPlay: boolean | string;\n loop: boolean;\n muted: boolean;\n style: CSSProperties;\n};\n\ntype MuxMediaPropTypes = {\n audio: boolean;\n // envKey: Options[\"data\"][\"env_key\"];\n envKey: string;\n // debug: Options[\"debug\"] & Hls[\"config\"][\"debug\"];\n debug: boolean;\n disableTracking: boolean;\n disableCookies: boolean;\n disablePictureInPicture?: boolean;\n // metadata: Partial<Options[\"data\"]>;\n metadata: { [k: string]: any };\n extraSourceParams: Record<string, any>;\n _hlsConfig: MuxPlayerElement['_hlsConfig'];\n beaconCollectionDomain: string;\n customDomain: string;\n playbackId: string;\n preferPlayback: ValueOf<PlaybackTypes> | undefined;\n // NOTE: Explicitly adding deprecated values here for now to avoid fully breaking changes in TS envs (CJP)\n streamType: ValueOf<StreamTypes> | 'll-live' | 'live:dvr' | 'll-live:dvr';\n defaultStreamType: ValueOf<StreamTypes>;\n targetLiveWindow: number;\n startTime: number;\n storyboardSrc: string;\n preferCmcd: ValueOf<CmcdTypes> | undefined;\n children?: React.ReactNode;\n};\n\nexport type MuxPlayerProps = {\n className?: string;\n hotkeys?: string;\n nohotkeys?: boolean;\n castReceiver?: string | undefined;\n castCustomData?: Record<string, any> | undefined;\n defaultHiddenCaptions?: boolean;\n playerSoftwareVersion?: string;\n playerSoftwareName?: string;\n forwardSeekOffset?: number;\n backwardSeekOffset?: number;\n maxResolution?: MaxResolutionValue;\n minResolution?: MinResolutionValue;\n renditionOrder?: RenditionOrderValue;\n programStartTime?: number;\n programEndTime?: number;\n assetStartTime?: number;\n assetEndTime?: number;\n metadataVideoId?: string;\n metadataVideoTitle?: string;\n metadataViewerUserId?: string;\n primaryColor?: string;\n secondaryColor?: string;\n accentColor?: string;\n placeholder?: string;\n playbackRates?: number[];\n defaultShowRemainingTime?: boolean;\n defaultDuration?: number;\n noVolumePref?: boolean;\n thumbnailTime?: number;\n title?: string;\n tokens?: Tokens;\n theme?: string;\n themeProps?: { [k: string]: any };\n onAbort?: GenericEventListener<MuxPlayerElementEventMap['abort']>;\n onCanPlay?: GenericEventListener<MuxPlayerElementEventMap['canplay']>;\n onCanPlayThrough?: GenericEventListener<MuxPlayerElementEventMap['canplaythrough']>;\n onEmptied?: GenericEventListener<MuxPlayerElementEventMap['emptied']>;\n onLoadStart?: GenericEventListener<MuxPlayerElementEventMap['loadstart']>;\n onLoadedData?: GenericEventListener<MuxPlayerElementEventMap['loadeddata']>;\n onLoadedMetadata?: GenericEventListener<MuxPlayerElementEventMap['loadedmetadata']>;\n onProgress?: GenericEventListener<MuxPlayerElementEventMap['progress']>;\n onDurationChange?: GenericEventListener<MuxPlayerElementEventMap['durationchange']>;\n onVolumeChange?: GenericEventListener<MuxPlayerElementEventMap['volumechange']>;\n onRateChange?: GenericEventListener<MuxPlayerElementEventMap['ratechange']>;\n onResize?: GenericEventListener<MuxPlayerElementEventMap['resize']>;\n onWaiting?: GenericEventListener<MuxPlayerElementEventMap['waiting']>;\n onPlay?: GenericEventListener<MuxPlayerElementEventMap['play']>;\n onPlaying?: GenericEventListener<MuxPlayerElementEventMap['playing']>;\n onTimeUpdate?: GenericEventListener<MuxPlayerElementEventMap['timeupdate']>;\n onPause?: GenericEventListener<MuxPlayerElementEventMap['pause']>;\n onSeeking?: GenericEventListener<MuxPlayerElementEventMap['seeking']>;\n onSeeked?: GenericEventListener<MuxPlayerElementEventMap['seeked']>;\n onStalled?: GenericEventListener<MuxPlayerElementEventMap['stalled']>;\n onSuspend?: GenericEventListener<MuxPlayerElementEventMap['suspend']>;\n onEnded?: GenericEventListener<MuxPlayerElementEventMap['ended']>;\n onError?: GenericEventListener<MuxPlayerElementEventMap['error']>;\n onCuePointChange?: GenericEventListener<MuxPlayerElementEventMap['cuepointchange']>;\n onCuePointsChange?: GenericEventListener<MuxPlayerElementEventMap['cuepointschange']>;\n onChapterChange?: GenericEventListener<MuxPlayerElementEventMap['chapterchange']>;\n} & Partial<MuxMediaPropTypes> &\n Partial<VideoApiAttributes>;\n\nconst MuxPlayerInternal = React.forwardRef<MuxPlayerRefAttributes, MuxPlayerProps>(({ children, ...props }, ref) => {\n return React.createElement('mux-player', toNativeProps({ ...props, ref }), children);\n});\n\nconst useEventCallbackEffect = <K extends keyof MuxPlayerElementEventMap>(\n type: K,\n ref: // | ((instance: EventTarget | null) => void)\n React.MutableRefObject<MuxPlayerElement | null> | null | undefined,\n callback: GenericEventListener<MuxPlayerElementEventMap[K]> | undefined\n) => {\n return useEffect(() => {\n const eventTarget = ref?.current;\n if (!eventTarget || !callback) return;\n eventTarget.addEventListener(type, callback);\n return () => {\n eventTarget.removeEventListener(type, callback);\n };\n }, [ref?.current, callback]);\n};\n\nconst usePlayer = (\n ref: // | ((instance: EventTarget | null) => void)\n React.MutableRefObject<MuxPlayerElement | null> | null | undefined,\n props: MuxPlayerProps\n) => {\n const {\n onAbort,\n onCanPlay,\n onCanPlayThrough,\n onEmptied,\n onLoadStart,\n onLoadedData,\n onLoadedMetadata,\n onProgress,\n onDurationChange,\n onVolumeChange,\n onRateChange,\n onResize,\n onWaiting,\n onPlay,\n onPlaying,\n onTimeUpdate,\n onPause,\n onSeeking,\n onSeeked,\n onStalled,\n onSuspend,\n onEnded,\n onError,\n onCuePointChange,\n onCuePointsChange,\n onChapterChange,\n metadata,\n tokens,\n paused,\n playbackId,\n playbackRates,\n currentTime,\n themeProps,\n extraSourceParams,\n castCustomData,\n _hlsConfig,\n ...remainingProps\n } = props;\n useObjectPropEffect('playbackRates', playbackRates, ref);\n useObjectPropEffect('metadata', metadata, ref);\n useObjectPropEffect('extraSourceParams', extraSourceParams, ref);\n useObjectPropEffect('_hlsConfig', _hlsConfig, ref);\n useObjectPropEffect('themeProps', themeProps, ref);\n useObjectPropEffect('tokens', tokens, ref);\n useObjectPropEffect('playbackId', playbackId, ref);\n useObjectPropEffect('castCustomData', castCustomData, ref);\n useObjectPropEffect(\n 'paused',\n paused,\n ref,\n (playerEl: HTMLMediaElement, pausedVal?: boolean) => {\n if (pausedVal == null) return;\n if (pausedVal) {\n playerEl.pause();\n } else {\n playerEl.play();\n }\n },\n (playerEl, value, propName) => {\n if (playerEl.hasAttribute('autoplay') && !playerEl.hasPlayed) {\n return false;\n }\n return defaultHasChanged(playerEl, value, propName);\n }\n );\n useObjectPropEffect('currentTime', currentTime, ref, (playerEl: HTMLMediaElement, currentTimeVal?: number) => {\n if (currentTimeVal == null) return;\n playerEl.currentTime = currentTimeVal;\n });\n useEventCallbackEffect('abort', ref, onAbort);\n useEventCallbackEffect('canplay', ref, onCanPlay);\n useEventCallbackEffect('canplaythrough', ref, onCanPlayThrough);\n useEventCallbackEffect('emptied', ref, onEmptied);\n useEventCallbackEffect('loadstart', ref, onLoadStart);\n useEventCallbackEffect('loadeddata', ref, onLoadedData);\n useEventCallbackEffect('loadedmetadata', ref, onLoadedMetadata);\n useEventCallbackEffect('progress', ref, onProgress);\n useEventCallbackEffect('durationchange', ref, onDurationChange);\n useEventCallbackEffect('volumechange', ref, onVolumeChange);\n useEventCallbackEffect('ratechange', ref, onRateChange);\n useEventCallbackEffect('resize', ref, onResize);\n useEventCallbackEffect('waiting', ref, onWaiting);\n useEventCallbackEffect('play', ref, onPlay);\n useEventCallbackEffect('playing', ref, onPlaying);\n useEventCallbackEffect('timeupdate', ref, onTimeUpdate);\n useEventCallbackEffect('pause', ref, onPause);\n useEventCallbackEffect('seeking', ref, onSeeking);\n useEventCallbackEffect('seeked', ref, onSeeked);\n useEventCallbackEffect('stalled', ref, onStalled);\n useEventCallbackEffect('suspend', ref, onSuspend);\n useEventCallbackEffect('ended', ref, onEnded);\n useEventCallbackEffect('error', ref, onError);\n useEventCallbackEffect('cuepointchange', ref, onCuePointChange);\n useEventCallbackEffect('cuepointschange', ref, onCuePointsChange);\n useEventCallbackEffect('chapterchange', ref, onChapterChange);\n return [remainingProps];\n};\n\nconst playerSoftwareVersion = getPlayerVersion();\nconst playerSoftwareName = 'mux-player-react';\n\nconst MuxPlayer = React.forwardRef<\n MuxPlayerRefAttributes,\n Omit<MuxPlayerProps, 'playerSoftwareVersion' | 'playerSoftwareName'>\n>((props, ref) => {\n const innerPlayerRef = useRef<MuxPlayerElement>(null);\n const playerRef = useCombinedRefs(innerPlayerRef, ref);\n const [remainingProps] = usePlayer(innerPlayerRef, props);\n\n return (\n <MuxPlayerInternal\n /** @TODO Fix types relationships (CJP) */\n ref={playerRef as typeof innerPlayerRef}\n playerSoftwareName={playerSoftwareName}\n playerSoftwareVersion={playerSoftwareVersion}\n {...remainingProps}\n />\n );\n});\n\nexport default MuxPlayer;\n", "// NOTE: As a forward-looking implementation, we may want to assume\n// prop names -> attribute names is always a simple name.toLowerCase()\n// and provide a mechanism for passing in per-component overrides for\n// e.g. kebab cases, as that's the way React/Preact handles these. (CJP)\nconst ReactPropToAttrNameMap = {\n className: 'class',\n classname: 'class',\n htmlFor: 'for',\n crossOrigin: 'crossorigin',\n viewBox: 'viewBox',\n playsInline: 'playsinline',\n autoPlay: 'autoplay',\n playbackRate: 'playbackrate',\n};\n\ntype KeyTypes = string | number | symbol;\ntype Maybe<T> = T | null | undefined;\n\nexport const isNil = (x: unknown): x is null | undefined => x == undefined;\n\n// Type Guard to determine if a given key is actually a key of some object of type T\nexport const isKeyOf = <T extends {} = any>(k: KeyTypes, o: Maybe<T>): k is keyof T => {\n if (isNil(o)) return false;\n return k in o;\n};\n\nconst toKebabCase = (string: string) => string.replace(/[A-Z]/g, (match) => `-${match.toLowerCase()}`);\n\nexport const toNativeAttrName = (propName: string, propValue: any): string | undefined => {\n if (typeof propValue === 'boolean' && !propValue) return undefined;\n if (isKeyOf(propName, ReactPropToAttrNameMap)) return ReactPropToAttrNameMap[propName];\n if (typeof propValue == undefined) return undefined;\n if (/[A-Z]/.test(propName)) return toKebabCase(propName);\n return propName;\n};\nexport const toStyleAttr = <T>(x: T) => x;\n\nexport const toNativeAttrValue = (propValue: any, propName: string) => {\n if (typeof propValue === 'boolean') return '';\n return propValue;\n};\n\nexport const toNativeProps = (props = {}) => {\n return Object.entries(props).reduce<{ [k: string]: string }>((transformedProps, [propName, propValue]) => {\n const attrName = toNativeAttrName(propName, propValue);\n\n // prop was stripped. Don't add.\n if (!attrName) {\n return transformedProps;\n }\n\n const attrValue = toNativeAttrValue(propValue, propName);\n transformedProps[attrName] = attrValue;\n return transformedProps;\n }, {});\n};\n", "import { useEffect, useRef } from 'react';\nimport type { MutableRefObject, ForwardedRef } from 'react';\n\ntype Maybe<T> = T | null | undefined;\ntype RefCb<T> = (instance: Maybe<T>) => void;\ntype RefObj<T> = MutableRefObject<Maybe<T>>;\ntype RefTypes<T> = RefObj<T> | RefCb<T> | ForwardedRef<T>;\ninterface useCombinedRefs {\n <T>(...refs: Maybe<RefTypes<T>>[]): RefObj<T>;\n}\n\nexport const useCombinedRefs: useCombinedRefs = (...refs) => {\n const targetRef = useRef(null);\n\n useEffect(() => {\n refs.forEach((ref) => {\n if (!ref) return;\n\n if (typeof ref === 'function') {\n ref(targetRef.current);\n } else {\n ref.current = targetRef.current;\n }\n });\n }, [refs]);\n\n return targetRef;\n};\n\n// TS assumed default export was interface def instead of function value (CJP)\nconst defaultUseCombinedRefs = useCombinedRefs;\nexport default defaultUseCombinedRefs;\n", "import { useEffect } from 'react';\n\nconst hasOwnProperty = Object.prototype.hasOwnProperty;\n\n/**\n * Slightly modified version of React's shallowEqual, with optimizations for Arrays\n * so we may treat them specifically as unequal if they are not a) both arrays\n * or b) don't contain the same (shallowly compared) elements.\n */\nconst shallowEqual = (objA: any, objB: any): boolean => {\n if (Object.is(objA, objB)) {\n return true;\n }\n\n if (typeof objA !== 'object' || objA === null || typeof objB !== 'object' || objB === null) {\n return false;\n }\n\n if (Array.isArray(objA)) {\n // Early \"cheap\" array compares\n if (!Array.isArray(objB) || objA.length !== objB.length) return false;\n // Shallow compare for arrays\n return objA.some((vVal, i) => objB[i] === vVal);\n }\n\n const keysA = Object.keys(objA);\n const keysB = Object.keys(objB);\n\n if (keysA.length !== keysB.length) {\n return false;\n }\n\n // Test for A's keys different from B.\n for (let i = 0; i < keysA.length; i++) {\n if (!hasOwnProperty.call(objB, keysA[i]) || !Object.is(objA[keysA[i]], objB[keysA[i]])) {\n return false;\n }\n }\n\n return true;\n};\n\nexport const defaultHasChanged = (obj: any, v: any, k: string) => {\n return !shallowEqual(v, obj[k]);\n};\n\nconst defaultUpdateValue = (obj: any, v: any, k: string) => {\n obj[k] = v;\n};\n\nexport const useObjectPropEffect = <T extends { [k: string]: any }, V>(\n propName: string,\n propValue: V | null | undefined,\n ref: React.MutableRefObject<T | null> | null | undefined,\n updateValue = defaultUpdateValue,\n hasChanged = defaultHasChanged\n) => {\n return useEffect(() => {\n const obj = ref?.current;\n if (!obj) return;\n if (!hasChanged(obj, propValue, propName)) return;\n updateValue(obj, propValue, propName);\n }, [ref?.current, propValue]);\n};\n\nexport default useObjectPropEffect;\n", "const getEnvPlayerVersion = () => {\n try {\n // @ts-ignore\n return PLAYER_VERSION as string;\n } catch {}\n return 'UNKNOWN';\n};\n\nconst player_version: string = getEnvPlayerVersion();\n\nexport const getPlayerVersion = () => player_version;\n"],
5
- "mappings": "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",
6
- "names": ["React", "useEffect", "MaxResolution", "MinResolution", "RenditionOrder", "MediaError", "ReactPropToAttrNameMap", "isNil", "x", "isKeyOf", "k", "o", "toKebabCase", "string", "match", "toNativeAttrName", "propName", "propValue", "toNativeAttrValue", "propValue", "propName", "toNativeProps", "props", "transformedProps", "attrName", "toNativeAttrName", "attrValue", "useRef", "useEffect", "useRef", "useCombinedRefs", "refs", "targetRef", "ref", "useEffect", "hasOwnProperty", "shallowEqual", "objA", "objB", "vVal", "i", "keysA", "keysB", "defaultHasChanged", "obj", "v", "k", "defaultUpdateValue", "useObjectPropEffect", "propName", "propValue", "ref", "updateValue", "hasChanged", "useObjectPropEffect_default", "getEnvPlayerVersion", "player_version", "getPlayerVersion", "MuxPlayerInternal", "React", "children", "props", "ref", "toNativeProps", "useEventCallbackEffect", "type", "callback", "useEffect", "eventTarget", "usePlayer", "onAbort", "onCanPlay", "onCanPlayThrough", "onEmptied", "onLoadStart", "onLoadedData", "onLoadedMetadata", "onProgress", "onDurationChange", "onVolumeChange", "onRateChange", "onResize", "onWaiting", "onPlay", "onPlaying", "onTimeUpdate", "onPause", "onSeeking", "onSeeked", "onStalled", "onSuspend", "onEnded", "onError", "onCuePointChange", "onCuePointsChange", "onChapterChange", "metadata", "tokens", "paused", "playbackId", "playbackRates", "currentTime", "themeProps", "extraSourceParams", "castCustomData", "_hlsConfig", "remainingProps", "useObjectPropEffect_default", "playerEl", "pausedVal", "value", "propName", "defaultHasChanged", "currentTimeVal", "playerSoftwareVersion", "getPlayerVersion", "playerSoftwareName", "MuxPlayer", "innerPlayerRef", "useRef", "playerRef", "useCombinedRefs", "src_default"]
7
- }