Build 562131stable
Module 458817
5,689 characters · in cc0350b9a25188dd.jsDependencies
Source Raw
function(e,t,n){n.d(t,{A:()=>f});var r=n(64700),l=n(771253),s=n(731738),a=n(17928),i=n(807393),u=n(544180),o=n(18437),c=n(753386),d=n(163961),E=n(652215);function _(e){return null==e.current||e.current.currentLevel<0||e.current.levels.length<=e.current.currentLevel?{hls_level_index:-100,hls_segment_res_width:-100,hls_segment_res_height:-100}:{hls_level_index:e.current.currentLevel,hls_segment_res_width:e.current.levels[e.current.currentLevel].width,hls_segment_res_height:e.current.levels[e.current.currentLevel].height}}function f(e){let{videoRef:t,hlsRef:n,videoSessionId:f,videoAssetId:m,sourceQuestContent:p,logger:S,questId:C,isQuestCompleted:v,isFullEpisodeVideoQuest:A,listenForHlsErrors:g=!0}=e,h=(0,o.u0)(),I=(0,o.Ut)(),D=(0,a.bG)([u.A],()=>u.A.getEffectiveConnectionSpeed()),T=(0,r.useRef)(-1),R=r.useCallback(e=>{null!=t.current&&h({questId:C,event:E.HAw.QUEST_VIDEO_LOADING_STARTED,properties:{video_asset_id:m,network_connection_speed:e,video_session_id:f,is_hls_supported:l.Ay.isSupported(),..._(n)},sourceQuestContent:p})},[C,t,m,f,n,h,p]),x=r.useCallback(e=>{null!=t.current&&null!=e&&h({questId:C,event:E.HAw.QUEST_VIDEO_LOADING_ENDED,properties:{video_asset_id:m,network_connection_speed:D,duration:e,video_session_id:f,..._(n)},sourceQuestContent:p})},[C,t,m,f,n,h,p,D]),O=r.useCallback(e=>{null!=t.current&&h({questId:C,event:E.HAw.QUEST_VIDEO_TIME_TO_FIRST_FRAME,properties:{duration_ms:e,video_session_id:f,video_asset_id:m,..._(n)},sourceQuestContent:p})},[C,t,m,f,n,h,p]),L=r.useCallback(()=>{null!=t.current&&h({questId:C,event:E.HAw.QUEST_VIDEO_PROGRESSED,properties:{progress:(0,c.zh)(t.current.currentTime,t.current.duration),video_timestamp_seconds:t.current.currentTime,video_session_id:f,video_asset_id:m,..._(n)},sourceQuestContent:p})},[C,t,f,n,h,m,p]),P=r.useCallback(e=>{null!=t.current&&h({questId:C,event:E.HAw.QUEST_VIDEO_RESUMED,properties:{video_timestamp_seconds:t.current.currentTime,pause_reason:e,video_session_id:f,video_asset_id:m,..._(n)},sourceQuestContent:p})},[C,t,f,n,h,m,p]),b=r.useCallback(e=>{null!=t.current&&null!=e&&h({questId:C,event:E.HAw.QUEST_VIDEO_PAUSED,properties:{video_timestamp_seconds:t.current.currentTime,reason:e,video_session_id:f,video_asset_id:m,..._(n)},sourceQuestContent:p})},[C,t,f,n,h,m,p]),k=r.useCallback((e,n)=>{null!=t.current&&h({questId:C,event:e?E.HAw.QUEST_VIDEO_APP_FOCUSED:E.HAw.QUEST_VIDEO_APP_UNFOCUSED,properties:{video_timestamp_seconds:t.current.currentTime,video_state:n,video_session_id:f,video_asset_id:m},sourceQuestContent:p})},[C,t,f,h,m,p]),N=r.useCallback(()=>{null!=t.current&&(T.current+=1,h({questId:C,event:E.HAw.QUEST_VIDEO_BUFFERING_STARTED,properties:{video_asset_id:m,network_connection_speed:D,buffer_index:T.current,video_session_id:f,..._(n)},sourceQuestContent:p}))},[C,t,m,f,n,h,p,D]),y=r.useCallback(e=>{null!=t.current&&(T.current+=1,h({questId:C,event:E.HAw.QUEST_VIDEO_BUFFERING_ENDED,properties:{video_asset_id:m,network_connection_speed:D,duration:e,buffer_index:T.current,video_session_id:f,..._(n)},sourceQuestContent:p}))},[C,t,m,f,n,h,p,D]),V=r.useCallback((e,t)=>{I({questId:C,questContent:e,questContentCTA:t,sourceQuestContent:p})},[C,p,I]),U=r.useCallback(e=>{null!=t.current&&h({questId:C,event:E.HAw.QUEST_VIDEO_SEGMENT_WATCHED,properties:{...e,video_asset_id:m,quest_completed:v,video_duration_sec:t.current.duration,video_progress:(0,c.zh)(e.segment_end_sec,t.current.duration),video_session_id:f,..._(n)},sourceQuestContent:p})},[h,C,m,v,f,n,t,p]),Q=r.useCallback((e,r)=>{if(null==t.current)return;let a=t.current?.error,u=t.current?.networkState,o=null!=t.current?(0,c.zh)(t.current.currentTime,t.current.duration):void 0,S=null!=r?{hls_error_subtype:r.errorDetails,hls_error_fatal:r.fatal}:{};h({questId:C,event:E.HAw.QUEST_VIDEO_ERROR,properties:{video_progress:o,video_error_type:e,video_asset_id:m,network_connection_speed:D,video_session_id:f,video_error_code:a?.code,video_error_message:a?.message,video_network_state:u,is_full_episode_video_quest:A,is_hls_supported:l.Ay.isSupported(),..._(n),...S},sourceQuestContent:p}),(e===d.SB.SOURCE_ERROR||e===d.SB.NO_VALID_SOURCE)&&i.A.increment({name:s.K.QUEST_VIDEO_ERROR,tags:[`quest_id:${C}`,`error_type:${e}`]})},[C,t,m,f,n,h,p,D,A]);r.useEffect(()=>{if(!g||null==n.current)return;let e=n.current,t=(e,t)=>{let n;switch(S.info(`[QV] | HLS Error: type=${t.type}, details=${t.details}, fatal=${t.fatal}`),t.type){case l.Ay.ErrorTypes.NETWORK_ERROR:n=d.SB.HLS_NETWORK_ERROR;break;case l.Ay.ErrorTypes.MEDIA_ERROR:n=d.SB.HLS_MEDIA_ERROR;break;case l.Ay.ErrorTypes.MUX_ERROR:n=d.SB.HLS_MUX_ERROR;break;case l.Ay.ErrorTypes.KEY_SYSTEM_ERROR:n=d.SB.HLS_KEY_SYSTEM_ERROR;break;default:n=d.SB.HLS_OTHER_ERROR}Q(n,{errorDetails:t.details,fatal:t.fatal})};return e.on(l.Ay.Events.ERROR,t),()=>{e.off(l.Ay.Events.ERROR,t)}},[g,n,S,Q]);let w=r.useCallback(e=>{null!=t.current&&h({questId:C,event:e?E.HAw.QUEST_VIDEO_FULLSCREEN_ENTERED:E.HAw.QUEST_VIDEO_FULLSCREEN_EXITED,properties:{video_session_id:f,video_asset_id:m,..._(n)},sourceQuestContent:p})},[C,t,f,n,h,m,p]),M=r.useCallback(e=>{null!=t.current&&h({questId:C,event:E.HAw.QUEST_VIDEO_VOLUME_CHANGED,properties:{volume_threshold:e>0&&e<1?.5:e,video_session_id:f,video_asset_id:m,..._(n)},sourceQuestContent:p})},[C,t,m,f,n,h,p]);return{trackQuestVideoLoadingStarted:R,trackQuestVideoLoadingEnded:x,trackQuestVideoTimeToFirstFrame:O,trackQuestVideoProgressed:L,trackQuestVideoResumed:P,trackQuestVideoPaused:b,trackQuestVideoFocusChange:k,trackQuestContentClick:V,trackQuestVideoBufferingStarted:N,trackQuestVideoBufferingEnded:y,trackQuestVideoSegmentWatched:U,trackQuestVideoFullscreenChanged:w,trackQuestVideoError:Q,trackQuestVideoVolumeChanged:M}}}