Module 51092

2,068 characters · in e5708d385d6af126.js
Dependencies
Lazily required by (0)none
Lazily requires (0)none
Source Raw
function(e,t,n){n.d(t,{$:()=>x,A:()=>E});var l,i=n(477900),s=n(582128),r=n(503698),a=n.n(r),o=n(289873),u=n(459838),c=n(451988),d=n(684339),m=n(276208),p=n(927813),g=n(37965);let h=20*p.A.Millis.SECOND;var f=n(821589),A=n(772148),x=((l={}).CONTAIN="contain",l.COVER="cover",l.COVER_LANDSCAPE="cover-landscape",l);let E=s.memo(function(e){let{streamId:t,onResize:n,wrapperClassName:l,videoComponent:r,className:p,fit:x="contain",mirror:E=!1,paused:v=!1,streamPreviewURL:C,videoSpinnerContext:I,userId:S,streamKey:j}=e,[_,N]=s.useState(!0),[b,y]=s.useState(null),T=s.useCallback(e=>{"cover-landscape"===x&&y(e),n?.(e)},[x,n]),D="cover-landscape"===x?null==b||b.width>=b.height?"cover":"contain":x;!function(e){let{location:t,videoSpinnerContext:n,userId:l,streamId:i,loading:r,paused:a=!1}=e,[o]=s.useState(()=>new d.M(t));s.useEffect(()=>{a||(r?o.onSpinnerStarted():null!=i&&o.trackSpinnerDuration(n,l,i))},[r,a,i,o,n,l])}({location:"VideoStream",videoSpinnerContext:I,userId:S,streamId:t,loading:_,paused:v});let{onReady:R}=function(e){let{streamId:t,userId:n,videoSpinnerContext:l,streamKey:i,loading:r,paused:a=!1}=e,o=s.useRef(new c.Ep),p=l===d.u.SELF_STREAM||l===d.u.REMOTE_STREAM?u.x.STREAM:u.x.DEFAULT;return s.useEffect(()=>{if(!r||a||!m.X.isIncomingVideoEnabled())return;let e=o.current;return e.start(h,()=>{(0,g.Z)(t,n,p,i)}),()=>{e.stop()}},[a,t,r,p,i,n]),{onReady:s.useCallback(()=>{o.current.stop(),(0,g.W)(p,n)},[n,p])}}({streamId:t,userId:S,loading:_,videoSpinnerContext:I,streamKey:j,paused:v}),k=s.useCallback(()=>{N(!1),R()},[R]);return(0,i.jsxs)("div",{className:a()(A.wrapper,l),children:[null!=t&&(0,i.jsx)(r,{className:a()(A.video,(0,f.t)(A,"video",D),{[A.mirror]:E},p),streamId:t,onResize:T,onReady:k,paused:v}),v?null:(0,i.jsx)("div",{className:a()(A.previewWrapper,{[A.loading]:_}),children:_&&(0,i.jsxs)(s.Fragment,{children:[null!=C?(0,i.jsx)("img",{src:C,alt:"",className:A.previewImage}):(0,i.jsx)("div",{className:A.emptyPreviewWrapper,children:(0,i.jsx)("div",{className:A.emptyPreview})}),(0,i.jsx)(o.y,{className:A.spinner})]})})]})})}