Loading
function(e,t,n){n.d(t,{A:()=>J}),n(321073);var r=n(627968),l=n(64700),a=n(503698),i=n.n(a),s=n(308186),u=n(621466),o=n(17928),c=n(661531),d=n(876230),m=n(106236),f=n(717421),h=n(358618),p=n(793920),v=n(983851),g=n(86147),E=n(729475),x=n(261958),b=n(32880),S=n(922016),C=n(980707),A=n(477782),w=n(365199),y=n(268791),N=n(315710),T=n(534514),R=n(775602),L=n(174459),M=n(61491),P=n(990078),j=n(113494),k=n(782134),I=n(417270),D=n(939249),B=n(834730),_=n(375708),F=n(834926);let U="-:--",K={[d.Q6.PLAYING]:{icon:j.E,label:_.intl.string(_.t.ZcgDJX)},[d.Q6.PAUSED]:{icon:k.u,label:_.intl.string(_.t.RscU7I)},[d.Q6.ENDED]:{icon:I.m,label:_.intl.string(_.t.hsvh0i)}},O={[d.oA.MD]:d.n4.MD,[d.oA.LG]:d.n4.LG},Q={[d.n4.MD]:"md",[d.n4.LG]:"lg"};function $(e){let{videoRef:t,compact:n=!1}=e,[a,s]=l.useState(null),[u,o]=l.useState(null),[c,d]=l.useState(!1);l.useEffect(()=>{let e=t.current;function n(){null!=e&&(s(e.currentTime),o(e.duration))}if(null!=e)return e.addEventListener("timeupdate",n),e.addEventListener("loadedmetadata",n),e.addEventListener("durationchange",n),()=>{e.removeEventListener("timeupdate",n),e.removeEventListener("loadedmetadata",n),e.removeEventListener("durationchange",n)}},[t]);let m=Number.isFinite(a)&&Number.isFinite(u)?Math.max(0,u-a):null,f=c?null!=m?`-${(0,M.rB)(m)}`:U:Number.isFinite(a)?(0,M.rB)(a):U,h=Number.isFinite(u)?(0,M.rB)(u):U;return(0,r.jsxs)(D.D,{className:i()(F.d$,F.jk),"data-testid":"discord-web-video-player-duration",onClick:()=>d(e=>!e),children:[(0,r.jsx)(B.E,{variant:"text-sm/normal",className:F.Ue,tabularNumbers:!0,children:f}),!n&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(B.E,{variant:"text-sm/normal",className:F.zO,children:"/"}),(0,r.jsx)(B.E,{variant:"text-sm/normal",className:F.Ue,tabularNumbers:!0,children:h})]})]})}let G=l.forwardRef(function(e,t){let{iconComponent:n,animationTime:l,visible:a,ariaLabel:u,active:o,disabled:m,tooltipLabel:f,tooltipDelayMs:h=1500,shortcut:p,onClick:v,buttonSize:g=d.n4.MD,"data-testid":E,clickableProps:x}=e;return(0,r.jsx)(P.m,{text:a?f:void 0,keyboardShortcut:""!==(p??"").trim()?p:void 0,delay:h,children:(0,r.jsx)(D.D,{onClick:!0===m?void 0:v,className:i()(F.K5,{[F.Iy]:m}),"aria-label":u,"aria-disabled":m,"data-testid":E,innerRef:t,...x,children:(0,r.jsx)(s.animated.div,{className:F.K5,style:{opacity:(0,s.to)([l.to({range:[0,1],output:[0,1]})],e=>`${a?e:Math.pow(e,8)}`),height:{[d.n4.LG]:"32px",[d.n4.MD]:"24px"}[g]},children:(0,r.jsx)(n,{size:Q[g],color:!0!==m?c.A.colors.WHITE:c.A.colors.TEXT_MUTED,className:i()(F.jk,{[F.x2]:o,[F.Wr]:!m})})})})})});var V=n(91034),H=n(710434),Y=n(634156),Z=n(652215),z=n(445563);let X=[.5,.75,1,1.25,1.5,1.75,2],W=X[0],q=X[X.length-1];function J(e){let{videoRef:t,playerState:n,animSpring:a,visible:S,seekForwardEnabled:C,hideCaptionBtn:A=!1,hideTranscriptBtn:w=!1,hideSkipButtons:y=!1,hideFullScreenBtn:N=!1,hidePlaybackSpeedBtn:T=!1,size:M,downloadUrl:P,downloadContentType:j,extraButtons:k,autoFocus:I=!1,keyDownHandlerRef:D,volume:B,muted:U,transcriptEnabled:Q,captionEnabled:X,fullScreenEnabled:W,handlePlaybackBtnClick:q,handleTranscriptBtnClick:J,handleCaptionBtnClick:et,handleFullScreenBtnClick:er,handleSeekBackBtnClick:el,handleSeekForwardBtnClick:ea,autoHideVolumeSlider:ei=!1,compactTimeDisplay:es=!1,handleControlBarPendingInteraction:eu,onVolumeChange:eo,onMutedChange:ec,onVolumeExpandedChange:ed}=e,em=(0,o.bG)([R.Ay],()=>R.Ay.useReducedMotion),ef=(0,o.bG)([R.Ay],()=>R.Ay.keyboardModeEnabled),[eh,ep]=l.useState(U?0:B),[ev,eg]=l.useState(!1),[eE,ex]=l.useState(!1),[{volumeAnimSpring:eb},eS]=(0,f.z)(()=>({from:{volumeAnimSpring:0},config:{tension:100,friction:3,clamp:!0}})),eC=l.useRef(null),[eA,ew]=l.useState(1),ey=l.useCallback(e=>{ew(e),null!=t.current&&(t.current.playbackRate=e)},[t]),eN=l.useCallback(()=>{if(null==P)return;let e=j?.split("/");L.default.track(Z.HAw.MEDIA_DOWNLOAD_BUTTON_TAPPED,{attachment_type:e?.[0],attachment_subtype:e?.[1]}),window.open(P,"_blank")},[P,j]),eT=l.useCallback(e=>{null!=t.current&&(e!==t.current.volume&&(t.current.volume=e),e!==eh&&ep(e))},[t,eh]),eR=l.useCallback(()=>{if(null!=t.current)if(0===eh){let e=0===B?.3:B;eT(e),ec(!1),eo(e)}else eo(eh),eT(0),ec(!0)},[t,eh,eT,B,ec,eo]);function eL(){eg(!0),ed(!0)}function eM(){eg(!1),ed(!1)}let eP=l.useCallback(e=>{if(!(e.metaKey||(0,u.vq)(e.target)&&(0,u.Cw)(e.target)))switch(e.key){case d.TJ.PLAYBACK:e.stopPropagation(),q();break;case d.TJ.SPACE:e.stopPropagation(),ef||(e.preventDefault(),q());break;case d.TJ.SEEK_BACK:case d.TJ.SEEK_BACK_ALT:e.stopPropagation(),el();break;case d.TJ.SEEK_FORWARD:case d.TJ.SEEK_FORWARD_ALT:e.stopPropagation(),ea();break;case d.TJ.CAPTION:e.stopPropagation(),A||et();break;case d.TJ.FULLSCREEN:e.stopPropagation(),N||er();break;case d.TJ.MUTE:e.stopPropagation(),eR()}},[et,er,q,el,ea,eR,A,N,ef]);l.useEffect(()=>{I&&null!=eC.current&&eC.current.focus()},[I]),l.useEffect(()=>(null!=D&&(D.current=eP),()=>{null!=D&&(D.current=null)}),[eP,D]),l.useEffect(()=>(eS({volumeAnimSpring:!ei||eE||ev?1:0,immediate:em}),()=>{eb.stop()}),[ei,eE,ev,eS,em,eb]);let ej=0===eh?h._:eh<.5?p.S:v.H,{icon:ek,label:eI}=K[n];return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)("div",{className:F.X3,children:[(0,r.jsx)(G,{iconComponent:ek,animationTime:a,visible:S,ariaLabel:eI,tooltipLabel:eI,shortcut:d.TJ.PLAYBACK,onClick:q,ref:eC,buttonSize:O[M],"data-testid":"discord-web-video-player-play-pause-btn"}),!y&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(G,{iconComponent:H.q,animationTime:a,visible:S,onClick:el,ariaLabel:_.intl.string(z.default["dRVF+Z"]),tooltipLabel:_.intl.string(z.default["dRVF+Z"]),shortcut:d.TJ.SEEK_BACK,buttonSize:O[M],"data-testid":"discord-web-video-player-seek-backward-btn"}),(0,r.jsx)(G,{iconComponent:Y.i,animationTime:a,visible:S,onClick:ea,disabled:!C,ariaLabel:C?_.intl.string(z.default.yV2FLL):_.intl.string(z.default.YWbiPw),tooltipLabel:C?_.intl.string(z.default.yV2FLL):_.intl.string(z.default.YWbiPw),tooltipDelayMs:1500*!!C,shortcut:d.TJ.SEEK_FORWARD,buttonSize:O[M],"data-testid":"discord-web-video-player-seek-forward-btn"})]})]}),(0,r.jsxs)(s.animated.div,{className:i()(F.X3,F.L1),style:{opacity:(0,s.to)([a.to({range:[0,1],output:[0,1]})],e=>`${S?e:Math.pow(e,8)}`)},children:[(0,r.jsxs)("div",{onMouseEnter:eL,onMouseLeave:eM,onFocus:eL,onBlur:eM,className:F.RD,"data-testid":"discord-web-video-player-volume-control",children:[(0,r.jsx)(G,{iconComponent:ej,animationTime:a,visible:S,onClick:eR,ariaLabel:_.intl.string(z.default.XiLvuG),tooltipLabel:_.intl.string(z.default.XiLvuG),shortcut:d.TJ.MUTE,buttonSize:O[M],"data-testid":"discord-web-video-player-volume-btn"}),(0,r.jsx)(s.animated.div,{className:F.MQ,"data-testid":"discord-web-video-player-volume-slider",style:{opacity:(0,s.to)([eb.to({range:[0,1],output:[0,1]})],e=>`${S?e:Math.pow(e,8)}`),width:(0,s.to)([eb.to({range:[0,1],output:[0,100]})],e=>`${e}px`)},children:(0,r.jsx)(m.A,{mini:!0,value:eh,keyboardStep:.1,minValue:0,maxValue:1,onValueChange:function(e){eT(e),eo(e),eE&&(ex(!1),eu(!1)),U&&e>0?ec(!1):U||0!==e||ec(!0)},asValueChanges:function(e){eT(e),eE||(ex(!0),eu(!0))},fillStyles:{backgroundColor:c.A.colors.WHITE.css},orientation:"horizontal","aria-label":_.intl.string(z.default.XiLvuG),getAriaValueText:e=>_.intl.formatToPlainString(z.default["5L6uDs"],{percent:Math.round(100*e)})})})]}),(0,r.jsx)($,{videoRef:t,compact:es})]}),(0,r.jsxs)("div",{className:i()(F.X3,F.ST),children:[(0,r.jsx)(ee,{canCollapse:null!=k&&k.length>0,buttons:function(e){let{hideTranscriptBtn:t=!1,hideCaptionBtn:n=!1,transcriptEnabled:r,captionEnabled:l,playerState:a,handleTranscriptBtnClick:i,handleCaptionBtnClick:s,downloadUrl:u,handleDownloadButtonClick:o,extraButtons:c}=e,m=[];return t||m.push({id:"transcript",iconComponent:x.u,label:_.intl.string(z.default["6EjGUv"]),onClick:i,active:r&&a!==d.Q6.ENDED,disabled:a===d.Q6.ENDED,"data-testid":"discord-web-video-player-transcript-btn"}),n||m.push({id:"caption",iconComponent:V.I,label:_.intl.string(z.default["0DbPcL"]),onClick:s,active:l,shortcut:d.TJ.CAPTION,"data-testid":"discord-web-video-player-captions-btn"}),null!=u&&m.push({id:"download",iconComponent:b.s,label:_.intl.string(_.t["1WjMbC"]),onClick:o,"data-testid":"discord-web-video-player-download-btn"}),null!=c&&m.push(...c),m}({hideTranscriptBtn:w,hideCaptionBtn:A,transcriptEnabled:Q,captionEnabled:X,playerState:n,handleTranscriptBtnClick:J,handleCaptionBtnClick:et,downloadUrl:P,handleDownloadButtonClick:eN,extraButtons:k}),animSpring:a,visible:S,size:M}),!T&&(0,r.jsx)(en,{playbackRate:eA,onPlaybackRateChange:ey,animSpring:a,visible:S,size:M,handleControlBarPendingInteraction:eu}),!N&&(0,r.jsx)(G,{iconComponent:W?g.z:E.T,animationTime:a,visible:S,onClick:er,ariaLabel:_.intl.string(z.default.z9Cnzv),tooltipLabel:_.intl.string(z.default.z9Cnzv),shortcut:d.TJ.FULLSCREEN,buttonSize:O[M],"data-testid":"discord-web-video-player-fullscreen-btn"})]})]})}function ee(e){let{buttons:t,canCollapse:n,animSpring:l,visible:a,size:i}=e;return 0===t.length?null:!n||t.length<=1?(0,r.jsx)(r.Fragment,{children:t.map(e=>(0,r.jsx)(G,{iconComponent:e.iconComponent,animationTime:l,visible:a,onClick:e.onClick,active:e.active,disabled:e.disabled,ariaLabel:e.label,tooltipLabel:e.label,tooltipDelayMs:e.tooltipDelayMs,shortcut:e.shortcut,buttonSize:O[i],"data-testid":e["data-testid"]},e.id))}):(0,r.jsx)(et,{buttons:t,animSpring:l,visible:a,size:i})}function et(e){let{buttons:t,animSpring:n,visible:a,size:i}=e,s=l.useRef(null),u=_.intl.string(_.t.PdRCRg);return(0,r.jsx)(S.Y,{targetElementRef:s,position:"top",align:"right",renderPopout:e=>{let{closePopout:n}=e;return(0,r.jsx)(C.W,{navId:"video-player-overflow","aria-label":u,onClose:n,onSelect:n,children:t.map(e=>{let t={type:"icon",icon:e.iconComponent};return null!=e.active?(0,r.jsx)(A.sL,{id:e.id,label:e.label,checked:e.active,disabled:e.disabled,leadingAccessory:t,action:e.onClick},e.id):(0,r.jsx)(A.Dr,{id:e.id,label:e.label,disabled:e.disabled,shortcut:e.shortcut,leadingAccessory:t,action:e.onClick},e.id)})})},children:e=>(0,r.jsx)(G,{ref:s,iconComponent:w.j,animationTime:n,visible:a,ariaLabel:u,tooltipLabel:u,buttonSize:O[i],clickableProps:e,"data-testid":"discord-web-video-player-overflow-menu-button"})})}function en(e){let{playbackRate:t,onPlaybackRateChange:n,animSpring:a,visible:i,size:s,handleControlBarPendingInteraction:u}=e,o=l.useRef(null),c=_.intl.string(z.default.ZwPhbB);return(0,r.jsx)(S.Y,{targetElementRef:o,position:"top",align:"right",onRequestOpen:()=>u(!0),onRequestClose:()=>{u(!1),o.current?.focus()},renderPopout:()=>(0,r.jsx)(er,{playbackRate:t,onPlaybackRateChange:n,label:c}),children:e=>(0,r.jsx)(G,{ref:o,iconComponent:y.$,animationTime:a,visible:i,ariaLabel:c,tooltipLabel:c,buttonSize:O[s],clickableProps:{...e,"aria-haspopup":"dialog"},"data-testid":"discord-web-video-player-playback-speed-btn"})})}function er(e){let{playbackRate:t,onPlaybackRateChange:n,label:a}=e,i=l.useRef(null);return(0,N.t)(i),(0,r.jsxs)("div",{ref:i,className:F.qp,role:"dialog","aria-label":a,"data-testid":"discord-web-video-player-playback-speed-popout",children:[(0,r.jsx)(T.D,{variant:"heading-md/semibold",color:"text-default",className:F.xl,children:a}),(0,r.jsx)(m.A,{value:t,initialValue:1,minValue:W,maxValue:q,markers:X,stickToMarkers:!0,defaultValue:1,onValueChange:n,asValueChanges:n,onMarkerRender:e=>`${e}x`,orientation:"horizontal","aria-label":a,getAriaValueText:e=>`${e}x`})]})}}