Build 533169stable
Module 20504
2,593 characters · in no known chunkDependencies
Source Raw
function(e,t,n){"use strict";n.d(t,{A:()=>f});var r=n(627968),i=n(64700),s=n(503698),a=n.n(s),o=n(397927),l=n(122641),u=n(985018),c=n(420397);let d=150;class _ extends i.PureComponent{_mediaBar=i.createRef();_hoverTimeout;state={hovered:!1,focused:!1,dragging:!1};static defaultProps={minValue:0,maxValue:100,handleSize:16};componentDidMount(){this.updateMediaBar()}componentDidUpdate(e){(this.props.value!==e.value||this.props.muted!==e.muted)&&this.updateMediaBar()}updateMediaBar(){let{muted:e,value:t,maxValue:n}=this.props,r=this._mediaBar.current;null!=r&&(e?r.setGrabber(0):r.setGrabber(t/n))}handleValueChange=e=>{let{maxValue:t,onValueChange:n}=this.props,r=e*t;n?.(r)};handleToggleMute=()=>{let{onToggleMute:e}=this.props;e?.()};handleKeyDown=e=>{let{minValue:t,value:n,maxValue:r,onValueChange:i}=this.props,s=.05*(r-t);switch(e.key){case"ArrowUp":if(e.stopPropagation(),e.preventDefault(),!this.state.focused){this.setState({focused:!0});break}i?.(Math.min(r,n+s));break;case"ArrowDown":if(e.stopPropagation(),e.preventDefault(),!this.state.focused){this.setState({focused:!0});break}i?.(Math.max(t,n-s));break;case"Escape":this.setState({focused:!1}),e.stopPropagation(),e.preventDefault()}};handleDragStart=()=>{this.setState({dragging:!0})};handleDragEnd=()=>{this.setState({dragging:!1})};blur=()=>{this.setState({focused:!1})};render(){let{iconClassName:e,iconColor:t,className:n,sliderWrapperClassName:i,sliderClassName:s,currentWindow:_,muted:f,minValue:p,maxValue:h,value:m,onVolumeShow:E,onVolumeHide:g}=this.props,{hovered:A,focused:I,dragging:T}=this.state,S=o.HKD;return f||m===p?S=o._RO:m<h/2&&(S=o.S24),(0,r.jsxs)("div",{className:a()(n,c.kL),onMouseEnter:()=>{clearTimeout(this._hoverTimeout),this.setState({hovered:!0}),E?.()},onMouseLeave:()=>{clearTimeout(this._hoverTimeout),this._hoverTimeout=setTimeout(()=>{this.setState({hovered:!1}),g?.()},d)},onBlur:()=>this.setState({focused:!1}),onKeyDown:this.handleKeyDown,children:[(0,r.jsx)("div",{className:a()(c.QS,i,{[c.OZ]:A||I||T}),onMouseEnter:()=>{clearTimeout(this._hoverTimeout),this.setState({hovered:!0})},onMouseLeave:()=>{clearTimeout(this._hoverTimeout),this._hoverTimeout=setTimeout(()=>this.setState({hovered:!1}),d)},children:(0,r.jsx)(l.A,{className:c.YZ,sliderClassName:s,type:l.A.Types.VOLUME,value:m/h,onDrag:this.handleValueChange,onDragStart:this.handleDragStart,onDragEnd:this.handleDragEnd,currentWindow:_,ref:this._mediaBar})}),(0,r.jsx)(o.DUT,{className:c.bk,"aria-label":u.intl.string(u.t["19lt24"]),onClick:this.handleToggleMute,children:(0,r.jsx)(S,{color:t,className:e})})]})}}let f=_}