"use strict";define("mediaZoom/mediaZoom/svgShapesData",[],function(){return{buttonClose:{svg:{viewBox:"0 0 180 180",className:"svgButtonClose"},content:''},buttonPrevious:{svg:{viewBox:"0 0 180 310",className:"svgNavButton"},content:''},buttonNext:{svg:{viewBox:"0 0 180 310",className:"svgNavButton"},content:''}}}),define("mediaZoom",["zepto","react","lodash","core","mediaZoom/mediaZoom/svgShapesData","reactDOM","santaProps","image","imageZoomDisplayer"],function(t,e,i,o,n,s,a,p,c){function r(t){return t&&!t.target.href}function l(t){return t.isMobileDevice||t.isTabletDevice}var u=o.compMixins,g={width:240,height:60},h={width:0,height:0};return{displayName:"MediaZoom",mixins:[u.skinBasedComp,u.animationsMixin,u.skinInfo,o.compMixins.galleryImageExpandedActionMixin],propTypes:i.assign({styleId:a.Types.Component.styleId.isRequired,isZoomAllowed:a.Types.RenderFlags.isZoomAllowed.isRequired,isMobileDevice:a.Types.Device.isMobileDevice.isRequired,isTabletDevice:a.Types.Device.isTabletDevice.isRequired,rootNavigationInfo:a.Types.Component.rootNavigationInfo.isRequired,navigateToPage:a.Types.navigateToPage.isRequired,passClickEvent:a.Types.passClickEvent.isRequired,exitFullScreenMode:a.Types.exitFullScreenMode.isRequired,enterFullScreenMode:a.Types.enterFullScreenMode.isRequired,isExperimentOpen:a.Types.isExperimentOpen,getPrevAndNextStateFunc:e.PropTypes.func,isDataChangedFunc:e.PropTypes.func,getChildCompFunc:e.PropTypes.func,getBoxDimensionsFunc:e.PropTypes.func,actualNavigateToItemFunc:e.PropTypes.func,closeFunction:e.PropTypes.func,dataChanged:e.PropTypes.bool},a.santaTypesUtils.getSantaTypesByDefinition(p),a.santaTypesUtils.getSantaTypesByDefinition(c)),statics:{useSantaTypes:!0},getSvg:function(t){var o=n[t],s=i.clone(o.svg),a=this.props.styleId+"_";return i.assign(s,{className:a+o.svg.className,dangerouslySetInnerHTML:{__html:o.content}}),e.DOM.svg(s)},getInitialState:function(){this.isAnimating=!1,this.shouldUpdateSizeOnLayout=!0;var t="desktop";return this.props.isMobileDevice?t="mobile":this.props.isTabletDevice&&(t="tablet"),i.assign({$buttonsState:"showButtons",$device:t},this.props.getPrevAndNextStateFunc())},componentWillReceiveProps:function(t){if(this.props.isZoomAllowed){var e=this.props.dataChanged||this.props.isDataChangedFunc(this.props,t);this.shouldUpdateSizeOnLayout=e,e&&this.setState(this.props.getPrevAndNextStateFunc())}else setTimeout(this.closeMediaZoom,0)},getSkinProperties:function(){var t=!!this.state.next?{}:{display:"none"},e=l(this.props)?h:g,i=this.props.getChildCompFunc({toggleButtons:this.toggleButtons,goToNextItem:this.clickOnNextButton,goToPrevItem:this.clickOnPreviousButton},e),o={"":{"data-width-spacer":e.width,"data-height-spacer":e.height},blockingLayer:{onClick:this.onBlockingLayerClick},xButton:{onClick:this.closeMediaZoom,children:[this.getSvg("buttonClose")]},dialogBox:{onClick:this.handleDialogBoxClick},itemsContainer:{children:i},buttonPrev:{onClick:this.clickOnPreviousButton,style:t,children:[this.getSvg("buttonPrevious")]},buttonNext:{onClick:this.clickOnNextButton,style:t,children:[this.getSvg("buttonNext")]}};return l(this.props)&&(o.blockingLayer.onSwipeLeft=this.clickOnNextButton,o.blockingLayer.onSwipeRight=this.clickOnPreviousButton),o},onBlockingLayerClick:function(t){r(t)&&(this.closeMediaZoom(),t.preventDefault(),t.stopPropagation())},componentDidLayout:function(){var e=this.props.getBoxDimensionsFunc(),i={width:e.dialogBoxWidth,height:e.dialogBoxHeight,"margin-top":e.marginTop,"margin-left":e.marginLeft,padding:e.padding},o={width:e.dialogBoxWidth,height:e.dialogBoxHeight,marginTop:e.marginTop,marginLeft:e.marginLeft,padding:e.padding};if(this.shouldUpdateSizeOnLayout){this.shouldUpdateSizeOnLayout=!1;var n=this;this.sequence().add("dialogBox","BaseDimensions",.5,0,{to:o}).add("itemsContainer","FadeIn",.5,0).onCompleteAll(function(){n.unBlockNavigation(),n.handleImageExpandedAction()}).execute()}else t(s.findDOMNode(this.refs.dialogBox)).css(i)},clickOnNextButton:function(t){this.navigateToOtherPageWithAnimations(this.state.next),t&&(t.preventDefault(),t.stopPropagation())},clickOnPreviousButton:function(t){this.navigateToOtherPageWithAnimations(this.state.prev),t&&(t.preventDefault(),t.stopPropagation())},navigateToOtherPageWithAnimations:function(t){if(!this.isNavigationBlocked()){var e=this;this.blockNavigation(),this.animate("itemsContainer","FadeOut",.5,0,null,{onComplete:function(){e.props.actualNavigateToItemFunc(t)}})}},closeMediaZoom:function(){if(this.props.closeFunction)this.props.closeFunction();else{var t=i.omit(this.props.rootNavigationInfo,["imageZoom","pageItemId","title"]);this.props.navigateToPage(t)}},handleDialogBoxClick:function(t){r(t)&&(t.preventDefault(),t.stopPropagation(),this.props.passClickEvent(t))},unBlockNavigation:function(){this.isAnimating=!1},blockNavigation:function(){this.isAnimating=!0},isNavigationBlocked:function(){return this.isAnimating},componentDidMount:function(){this.props.enterFullScreenMode()},componentWillUnmount:function(){this.props.exitFullScreenMode()},toggleButtons:function(t){var e="showButtons"===this.state.$buttonsState?"hideButtons":"showButtons";this.setState({$buttonsState:e}),t&&(t.preventDefault(),t.stopPropagation())}}}); //# sourceMappingURL=mediaZoom.min.js.map