UNPKG

react-filerobot-image-editor

Version:

React component version of filerobot image editor (FIE).

1 lines 2.23 kB
import _defineProperty from"@babel/runtime/helpers/defineProperty";function ownKeys(a,b){var c=Object.keys(a);if(Object.getOwnPropertySymbols){var d=Object.getOwnPropertySymbols(a);b&&(d=d.filter(function(b){return Object.getOwnPropertyDescriptor(a,b).enumerable})),c.push.apply(c,d)}return c}function _objectSpread(a){for(var b,c=1;c<arguments.length;c++)b=null==arguments[c]?{}:arguments[c],c%2?ownKeys(Object(b),!0).forEach(function(c){_defineProperty(a,c,b[c])}):Object.getOwnPropertyDescriptors?Object.defineProperties(a,Object.getOwnPropertyDescriptors(b)):ownKeys(Object(b)).forEach(function(c){Object.defineProperty(a,c,Object.getOwnPropertyDescriptor(b,c))});return a}import calculateZoomData from"../utils/calculateZoomData";import{DEFAULT_ZOOM_FACTOR}from"../utils/constants";import getOriginalSourceInitialScale from"../utils/getOriginalSourceInitialScale";import getShownImageZoomPercentage from"../utils/getShownImageZoomPercentage";export var SET_ORIGINAL_SOURCE="SET_ORIGINAL_SOURCE";var isNewImg=function(a,b){var c,d,e,f;return(null===(c=a.originalSource)||void 0===c?void 0:c.width)!==(null===(d=b.originalSource)||void 0===d?void 0:d.width)||(null===(e=a.originalSource)||void 0===e?void 0:e.height)!==b.originalSource.height||b.originalSource.src&&(null===(f=a.originalSource)||void 0===f?void 0:f.src)!==b.originalSource.src},setOriginalSource=function(a,b){var c=!a.originalSource,d=b.zoom||a.zoom;if(b.keepPrevZoomRatio&&!c&&isNewImg(a,b)){var e=getOriginalSourceInitialScale({initialCanvasWidth:a.initialCanvasWidth,initialCanvasHeight:a.initialCanvasHeight,originalSource:b.originalSource}),f=getShownImageZoomPercentage(a)/100/e;d=calculateZoomData(_objectSpread(_objectSpread({},d),{},{x:a.canvasWidth/2,y:a.canvasHeight/2,factor:f}),{factor:DEFAULT_ZOOM_FACTOR,x:null,y:null,customLabel:null},a.canvasWidth,a.canvasHeight)}return _objectSpread(_objectSpread({},a),{},{isDesignState:!c&&!b.dismissHistory,feedback:{},zoom:d,presentOriginalSources:_objectSpread(_objectSpread({},a.presentOriginalSources),{},_defineProperty({},b.originalSource.key||"default",b.originalSource)),originalSource:b.originalSource,imgSrc:b.originalSource.src,bgColor:b.originalSource.bgColor})};export default setOriginalSource;