@syncfusion/ej2-image-editor 24.1.45 → 24.2.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (67) hide show
  1. package/CHANGELOG.md +16 -2
  2. package/dist/ej2-image-editor.umd.min.js +2 -2
  3. package/dist/ej2-image-editor.umd.min.js.map +1 -1
  4. package/dist/es6/ej2-image-editor.es2015.js +75 -18
  5. package/dist/es6/ej2-image-editor.es2015.js.map +1 -1
  6. package/dist/es6/ej2-image-editor.es5.js +75 -18
  7. package/dist/es6/ej2-image-editor.es5.js.map +1 -1
  8. package/dist/global/ej2-image-editor.min.js +2 -2
  9. package/dist/global/ej2-image-editor.min.js.map +1 -1
  10. package/dist/global/index.d.ts +1 -1
  11. package/package.json +11 -11
  12. package/src/image-editor/action/draw.js +3 -0
  13. package/src/image-editor/action/selection.js +7 -5
  14. package/src/image-editor/action/shape.d.ts +1 -0
  15. package/src/image-editor/action/shape.js +23 -7
  16. package/src/image-editor/action/undo-redo.d.ts +1 -0
  17. package/src/image-editor/action/undo-redo.js +41 -6
  18. package/src/image-editor/base/image-editor.js +1 -0
  19. package/styles/bootstrap-dark.css +12 -0
  20. package/styles/bootstrap.css +12 -0
  21. package/styles/bootstrap4.css +13 -1
  22. package/styles/bootstrap5-dark.css +12 -0
  23. package/styles/bootstrap5.css +12 -0
  24. package/styles/fabric-dark.css +12 -0
  25. package/styles/fabric.css +12 -0
  26. package/styles/fluent-dark.css +12 -0
  27. package/styles/fluent.css +12 -0
  28. package/styles/highcontrast-light.css +12 -0
  29. package/styles/highcontrast.css +12 -0
  30. package/styles/image-editor/_bootstrap-dark-definition.scss +1 -0
  31. package/styles/image-editor/_bootstrap-definition.scss +1 -0
  32. package/styles/image-editor/_bootstrap4-definition.scss +1 -0
  33. package/styles/image-editor/_bootstrap5-definition.scss +1 -0
  34. package/styles/image-editor/_fabric-dark-definition.scss +1 -0
  35. package/styles/image-editor/_fabric-definition.scss +1 -0
  36. package/styles/image-editor/_fluent-definition.scss +1 -0
  37. package/styles/image-editor/_fusionnew-definition.scss +1 -0
  38. package/styles/image-editor/_highcontrast-definition.scss +1 -0
  39. package/styles/image-editor/_highcontrast-light-definition.scss +1 -0
  40. package/styles/image-editor/_layout.scss +32 -2
  41. package/styles/image-editor/_material-dark-definition.scss +1 -0
  42. package/styles/image-editor/_material-definition.scss +1 -0
  43. package/styles/image-editor/_material3-definition.scss +3 -2
  44. package/styles/image-editor/_tailwind-definition.scss +1 -0
  45. package/styles/image-editor/bootstrap-dark.css +12 -0
  46. package/styles/image-editor/bootstrap.css +12 -0
  47. package/styles/image-editor/bootstrap4.css +13 -1
  48. package/styles/image-editor/bootstrap5-dark.css +12 -0
  49. package/styles/image-editor/bootstrap5.css +12 -0
  50. package/styles/image-editor/fabric-dark.css +12 -0
  51. package/styles/image-editor/fabric.css +12 -0
  52. package/styles/image-editor/fluent-dark.css +12 -0
  53. package/styles/image-editor/fluent.css +12 -0
  54. package/styles/image-editor/highcontrast-light.css +12 -0
  55. package/styles/image-editor/highcontrast.css +12 -0
  56. package/styles/image-editor/material-dark.css +12 -0
  57. package/styles/image-editor/material.css +12 -0
  58. package/styles/image-editor/material3-dark.css +25 -4
  59. package/styles/image-editor/material3.css +25 -4
  60. package/styles/image-editor/tailwind-dark.css +15 -2
  61. package/styles/image-editor/tailwind.css +15 -2
  62. package/styles/material-dark.css +12 -0
  63. package/styles/material.css +12 -0
  64. package/styles/material3-dark.css +25 -4
  65. package/styles/material3.css +25 -4
  66. package/styles/tailwind-dark.css +15 -2
  67. package/styles/tailwind.css +15 -2
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * filename: index.d.ts
3
- * version : 24.1.45
3
+ * version : 24.2.3
4
4
  * Copyright Syncfusion Inc. 2001 - 2023. All rights reserved.
5
5
  * Use of this code is subject to the terms of our license.
6
6
  * A copy of the current license can be obtained at any time by e-mailing
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "_from": "@syncfusion/ej2-image-editor@*",
3
- "_id": "@syncfusion/ej2-image-editor@24.1.44",
3
+ "_id": "@syncfusion/ej2-image-editor@24.1.46",
4
4
  "_inBundle": false,
5
- "_integrity": "sha512-W2VCeuMZRU4WP2BwfpPHF6O6Z0Bff5uCM4U0jWrezd8DQPM4EhOv0EtmzH7eeBnxQNccdBhNXH9H0nB/Txf1Jw==",
5
+ "_integrity": "sha512-9/5hBBSb3R+8NFqnUbJWiPyEKPjsvYL4JjtWl3Bf8qZqL7S87Do5qyBGdVB1/wayxOCVaBm8VZXeSf6acDwe6w==",
6
6
  "_location": "/@syncfusion/ej2-image-editor",
7
7
  "_phantomChildren": {},
8
8
  "_requested": {
@@ -23,8 +23,8 @@
23
23
  "/@syncfusion/ej2-react-image-editor",
24
24
  "/@syncfusion/ej2-vue-image-editor"
25
25
  ],
26
- "_resolved": "https://nexus.syncfusion.com/repository/ej2-hotfix-new/@syncfusion/ej2-image-editor/-/ej2-image-editor-24.1.44.tgz",
27
- "_shasum": "657a8d93d69ff858081ecc60981be7987f93ec89",
26
+ "_resolved": "https://nexus.syncfusion.com/repository/ej2-hotfix-new/@syncfusion/ej2-image-editor/-/ej2-image-editor-24.1.46.tgz",
27
+ "_shasum": "b5346abb18e906d54d931cf017b6efed5449024c",
28
28
  "_spec": "@syncfusion/ej2-image-editor@*",
29
29
  "_where": "/jenkins/workspace/elease-automation_release_24.1.1/packages/included",
30
30
  "author": {
@@ -32,12 +32,12 @@
32
32
  },
33
33
  "bundleDependencies": false,
34
34
  "dependencies": {
35
- "@syncfusion/ej2-base": "~24.1.42",
36
- "@syncfusion/ej2-buttons": "~24.1.45",
37
- "@syncfusion/ej2-inputs": "~24.1.45",
38
- "@syncfusion/ej2-navigations": "~24.1.41",
39
- "@syncfusion/ej2-popups": "~24.1.44",
40
- "@syncfusion/ej2-splitbuttons": "~24.1.45"
35
+ "@syncfusion/ej2-base": "~24.2.3",
36
+ "@syncfusion/ej2-buttons": "~24.2.3",
37
+ "@syncfusion/ej2-inputs": "~24.2.3",
38
+ "@syncfusion/ej2-navigations": "~24.2.3",
39
+ "@syncfusion/ej2-popups": "~24.2.3",
40
+ "@syncfusion/ej2-splitbuttons": "~24.2.3"
41
41
  },
42
42
  "deprecated": false,
43
43
  "description": "Essential JS 2 ImageEditor",
@@ -67,7 +67,7 @@
67
67
  "url": "https://github.com/syncfusion/ej2-javascript-ui-controls/tree/master/controls/imageeditor"
68
68
  },
69
69
  "typings": "index.d.ts",
70
- "version": "24.1.45",
70
+ "version": "24.2.3",
71
71
  "sideEffects": false,
72
72
  "homepage": "https://www.syncfusion.com/javascript-ui-controls"
73
73
  }
@@ -3877,6 +3877,9 @@ var Draw = /** @class */ (function () {
3877
3877
  if (lastDotIndex !== -1) {
3878
3878
  return url.slice(lastDotIndex + 1).toLowerCase();
3879
3879
  }
3880
+ else if (url.indexOf('base64') !== -1) {
3881
+ return url.slice(url.indexOf('/') + 1, url.indexOf(';')).toLowerCase();
3882
+ }
3880
3883
  return null;
3881
3884
  };
3882
3885
  Draw.prototype.fileSelect = function (inputElement, args) {
@@ -3298,13 +3298,13 @@ var Selection = /** @class */ (function () {
3298
3298
  if (this.currentDrawingShape === 'text') {
3299
3299
  var prevCropObj_1 = extend({}, parent.cropObj, {}, true);
3300
3300
  parent.notify('undo-redo', { prop: 'updateUndoRedoColl', onPropertyChange: false,
3301
- value: { operation: 'shapeTransform', previousObj: this.initialPrevObj, previousObjColl: this.initialPrevObj.objColl,
3301
+ value: { operation: 'shapeInsert', previousObj: this.initialPrevObj, previousObjColl: this.initialPrevObj.objColl,
3302
3302
  previousPointColl: this.initialPrevObj.pointColl, previousSelPointColl: this.initialPrevObj.selPointColl,
3303
3303
  previousCropObj: prevCropObj_1, previousText: null,
3304
3304
  currentText: null, previousFilter: null, isCircleCrop: null } });
3305
3305
  }
3306
3306
  else {
3307
- parent.notify('undo-redo', { prop: 'updateUrObj', onPropertyChange: false, value: { objColl: this.initialPrevObj.objColl } });
3307
+ parent.notify('undo-redo', { prop: 'updateUrObj', onPropertyChange: false, value: { objColl: this.initialPrevObj.objColl, operation: 'shapeInsert' } });
3308
3308
  }
3309
3309
  this.isShapeInserted = true;
3310
3310
  this.currentDrawingShape = '';
@@ -4153,8 +4153,8 @@ var Selection = /** @class */ (function () {
4153
4153
  actPoint.height = height;
4154
4154
  actPoint.startX = (this.dragPoint.startX = (originalWidth - width) / 2) + arcRadius;
4155
4155
  actPoint.startY = (this.dragPoint.startY = (originalHeight - height) / 2) + arcRadius;
4156
- actPoint.endX = ((originalWidth - width) / 2 + width) - arcRadius;
4157
- actPoint.endY = ((originalHeight - height) / 2 + height) - arcRadius;
4156
+ actPoint.endX = actPoint.startX + actPoint.width;
4157
+ actPoint.endY = actPoint.startY + actPoint.height;
4158
4158
  if (actPoint.startX < destLeft && destLeft + destWidth > parent.lowerCanvas.clientWidth) {
4159
4159
  actPoint.startX = destLeft;
4160
4160
  actPoint.endX = actPoint.startX + width - arcRadius;
@@ -4639,7 +4639,9 @@ var Selection = /** @class */ (function () {
4639
4639
  }
4640
4640
  if (!isInside) {
4641
4641
  if (isNullOrUndefined(parent.activeObj.currIndex)) {
4642
- parent.activeObj.currIndex = 'shape_' + (parent.objColl.length + 1);
4642
+ var shapeIDObj = { id: 'shape_' + (parent.objColl.length + 1) };
4643
+ parent.notify('shape', { prop: 'getNewShapeId', onPropertyChange: false, value: { obj: shapeIDObj } });
4644
+ parent.activeObj.currIndex = shapeIDObj['id'];
4643
4645
  }
4644
4646
  parent.notify('shape', { prop: 'updImgRatioForActObj', onPropertyChange: false });
4645
4647
  if (parent.activeObj.horTopLine !== undefined && parent.activeObj.horTopLine.startX !== 0 && parent.activeObj.horTopLine.endX
@@ -89,6 +89,7 @@ export declare class Shape {
89
89
  private clearActObj;
90
90
  private refreshActiveObj;
91
91
  private applyActObj;
92
+ private getNewShapeId;
92
93
  private alignTextAreaIntoCanvas;
93
94
  private transformTextArea;
94
95
  private getTextAreaWidth;
@@ -249,6 +249,9 @@ var Shape = /** @class */ (function () {
249
249
  case 'setFlipState':
250
250
  this.setFlipState(args.value['x'], args.value['y'], args.value['obj'], args.value['object']);
251
251
  break;
252
+ case 'getNewShapeId':
253
+ args.value['obj']['id'] = this.getNewShapeId();
254
+ break;
252
255
  }
253
256
  };
254
257
  Shape.prototype.getModuleName = function () {
@@ -448,7 +451,7 @@ var Shape = /** @class */ (function () {
448
451
  parent.notify('selection', { prop: 'isShapeInserted', onPropertyChange: false, value: { bool: true } });
449
452
  parent.notify('undo-redo', { prop: 'updateUrObj', onPropertyChange: false, value: { objColl: objColl_1 } });
450
453
  if (parent.isPublicMethod) {
451
- parent.notify('undo-redo', { prop: 'updateUndoRedo', onPropertyChange: false });
454
+ parent.notify('undo-redo', { prop: 'updateUndoRedo', value: { operation: 'shapeInsert' }, onPropertyChange: false });
452
455
  }
453
456
  parent.isPublicMethod = false;
454
457
  });
@@ -474,7 +477,7 @@ var Shape = /** @class */ (function () {
474
477
  isApplyBtn: null, isCropping: null, isZooming: null, cType: null } });
475
478
  parent.notify('toolbar', { prop: 'update-toolbar-items', onPropertyChange: false });
476
479
  if (parent.isPublicMethod) {
477
- parent.notify('undo-redo', { prop: 'updateUndoRedo', onPropertyChange: false });
480
+ parent.notify('undo-redo', { prop: 'updateUndoRedo', value: { operation: 'shapeInsert' }, onPropertyChange: false });
478
481
  }
479
482
  parent.isPublicMethod = false;
480
483
  }
@@ -572,7 +575,7 @@ var Shape = /** @class */ (function () {
572
575
  parent.dotNetRef.invokeMethodAsync('ShapeEventAsync', 'OnShape', shapeChangingArgs, null).then(function (shapeChangingArgs) {
573
576
  _this.drawShapeTextEvent(shapeChangingArgs);
574
577
  if (parent.isPublicMethod) {
575
- parent.notify('undo-redo', { prop: 'updateUndoRedo', onPropertyChange: false });
578
+ parent.notify('undo-redo', { prop: 'updateUndoRedo', value: { operation: 'shapeInsert' }, onPropertyChange: false });
576
579
  }
577
580
  parent.isPublicMethod = false;
578
581
  });
@@ -581,7 +584,7 @@ var Shape = /** @class */ (function () {
581
584
  parent.trigger('shapeChanging', shapeChangingArgs);
582
585
  this.drawShapeTextEvent(shapeChangingArgs);
583
586
  if (parent.isPublicMethod) {
584
- parent.notify('undo-redo', { prop: 'updateUndoRedo', onPropertyChange: false });
587
+ parent.notify('undo-redo', { prop: 'updateUndoRedo', value: { operation: 'shapeInsert' }, onPropertyChange: false });
585
588
  }
586
589
  parent.isPublicMethod = false;
587
590
  }
@@ -594,7 +597,7 @@ var Shape = /** @class */ (function () {
594
597
  parent.objColl.push(parent.activeObj);
595
598
  var prevCropObj = extend({}, parent.cropObj, {}, true);
596
599
  parent.notify('undo-redo', { prop: 'updateUndoRedoColl', onPropertyChange: false,
597
- value: { operation: 'shapeTransform', previousObj: this.prevObj, previousObjColl: this.prevObj.objColl,
600
+ value: { operation: 'shapeInsert', previousObj: this.prevObj, previousObjColl: this.prevObj.objColl,
598
601
  previousPointColl: this.prevObj.pointColl, previousSelPointColl: this.prevObj.selPointColl, previousCropObj: prevCropObj,
599
602
  previousText: null, currentText: null, previousFilter: null, isCircleCrop: null } });
600
603
  parent.notify('selection', { prop: 'redrawShape', onPropertyChange: false,
@@ -625,7 +628,7 @@ var Shape = /** @class */ (function () {
625
628
  parent.objColl.push(parent.activeObj);
626
629
  var prevCropObj = extend({}, parent.cropObj, {}, true);
627
630
  parent.notify('undo-redo', { prop: 'updateUndoRedoColl', onPropertyChange: false,
628
- value: { operation: 'shapeTransform', previousObj: this.prevObj, previousObjColl: this.prevObj.objColl,
631
+ value: { operation: 'shapeInsert', previousObj: this.prevObj, previousObjColl: this.prevObj.objColl,
629
632
  previousPointColl: this.prevObj.pointColl, previousSelPointColl: this.prevObj.selPointColl,
630
633
  previousCropObj: prevCropObj, previousText: null, currentText: null, previousFilter: null, isCircleCrop: null } });
631
634
  parent.notify('selection', { prop: 'redrawShape', onPropertyChange: false,
@@ -639,6 +642,7 @@ var Shape = /** @class */ (function () {
639
642
  parent.notify('selection', { prop: 'isShapeInserted', onPropertyChange: false, value: { bool: true } });
640
643
  if (isBlazor()) {
641
644
  parent.updateToolbar(parent.element, 'text');
645
+ parent.getFontSizes();
642
646
  }
643
647
  else {
644
648
  parent.notify('toolbar', { prop: 'refresh-toolbar', onPropertyChange: false, value: { type: 'text',
@@ -2708,7 +2712,7 @@ var Shape = /** @class */ (function () {
2708
2712
  }
2709
2713
  if (!isActObj) {
2710
2714
  if (isNullOrUndefined(parent.activeObj.currIndex)) {
2711
- parent.activeObj.currIndex = 'shape_' + (parent.objColl.length + 1);
2715
+ parent.activeObj.currIndex = this.getNewShapeId();
2712
2716
  }
2713
2717
  this.updImgRatioForActObj();
2714
2718
  var splitWords_1 = parent.activeObj.currIndex.split('_');
@@ -2744,6 +2748,17 @@ var Shape = /** @class */ (function () {
2744
2748
  }
2745
2749
  }
2746
2750
  };
2751
+ Shape.prototype.getNewShapeId = function () {
2752
+ var parent = this.parent;
2753
+ var value = parent.objColl.length + 1;
2754
+ for (var i = 0; i < parent.objColl.length; i++) {
2755
+ if (parent.objColl[i].currIndex === 'shape_' + value) {
2756
+ value++;
2757
+ i = -1;
2758
+ }
2759
+ }
2760
+ return 'shape_' + value;
2761
+ };
2747
2762
  Shape.prototype.alignTextAreaIntoCanvas = function () {
2748
2763
  var parent = this.parent;
2749
2764
  var letters = parent.textArea.value;
@@ -2854,6 +2869,7 @@ var Shape = /** @class */ (function () {
2854
2869
  case 'text':
2855
2870
  shapeDetails.text = obj.keyHistory;
2856
2871
  shapeDetails.fontSize = obj.textSettings.fontSize;
2872
+ shapeDetails.fontFamily = obj.textSettings.fontFamily;
2857
2873
  shapeDetails.color = obj.strokeSettings.strokeColor;
2858
2874
  shapeDetails.fontStyle = [];
2859
2875
  if (obj.textSettings.bold) {
@@ -38,6 +38,7 @@ export declare class UndoRedo {
38
38
  private updateTextBox;
39
39
  private undoDefault;
40
40
  private endUndoRedo;
41
+ private getImageAction;
41
42
  private updateUrc;
42
43
  private updateUrObj;
43
44
  private updateUndoRedo;
@@ -57,10 +57,10 @@ var UndoRedo = /** @class */ (function () {
57
57
  this.redo();
58
58
  break;
59
59
  case 'updateUrObj':
60
- this.updateUrObj(args.value['objColl']);
60
+ this.updateUrObj(args.value['objColl'], args.value['operation']);
61
61
  break;
62
62
  case 'updateUndoRedo':
63
- this.updateUndoRedo();
63
+ this.updateUndoRedo(args.value ? args.value['operation'] : null);
64
64
  break;
65
65
  case 'getAppliedUndoRedoColl':
66
66
  args.value['obj']['appliedUndoRedoColl'] = this.appliedUndoRedoColl;
@@ -327,6 +327,7 @@ var UndoRedo = /** @class */ (function () {
327
327
  case 'invert':
328
328
  case 'sharpen':
329
329
  case 'imageRotate':
330
+ case 'shapeInsert':
330
331
  this.shapeTransform(obj.previousObjColl);
331
332
  break;
332
333
  case 'freehanddraw':
@@ -460,6 +461,7 @@ var UndoRedo = /** @class */ (function () {
460
461
  case 'invert':
461
462
  case 'sharpen':
462
463
  case 'imageRotate':
464
+ case 'shapeInsert':
463
465
  this.shapeTransform(obj.currentObjColl);
464
466
  break;
465
467
  case 'freehanddraw':
@@ -797,6 +799,37 @@ var UndoRedo = /** @class */ (function () {
797
799
  }
798
800
  parent.notify('filter', { prop: 'setAdjustmentValue', onPropertyChange: false, value: { adjustmentValue: this.lowerContext.filter } });
799
801
  parent.currObjType.isCustomCrop = false;
802
+ if (isBlazor() && parent.events && parent.events.historyChanged.hasDelegate === true) {
803
+ var imageAction = this.getImageAction(operation);
804
+ var args = { length: this.undoRedoColl.length, index: this.undoRedoStep, actionTrigger: isUndo ? 'Undo' : 'Redo', imageAction: imageAction };
805
+ parent.dotNetRef.invokeMethodAsync('OnHistoryChangedAsync', args);
806
+ }
807
+ };
808
+ UndoRedo.prototype.getImageAction = function (operation) {
809
+ if (['brightness', 'contrast', 'saturation', 'opacity', 'blur', 'hue'].indexOf(operation) !== -1) {
810
+ return 'FinetuneApplied';
811
+ }
812
+ else if (['chrome', 'cold', 'warm', 'grayscale', 'blackandwhite', 'sepia', 'invert'].indexOf(operation) !== -1) {
813
+ return 'FilterApplied';
814
+ }
815
+ else if (operation === 'frame') {
816
+ return 'FrameApplied';
817
+ }
818
+ else if (operation === 'resize') {
819
+ return 'ImageResized';
820
+ }
821
+ else if (['deleteFreehandDrawing', 'deleteObj'].indexOf(operation) !== -1) {
822
+ return 'ShapeDeleted';
823
+ }
824
+ else if (operation === 'crop') {
825
+ return 'Cropped';
826
+ }
827
+ else if (['shapeInsert', 'freehanddraw', 'freehand-draw'].indexOf(operation) !== -1) {
828
+ return 'ShapeInserted';
829
+ }
830
+ else {
831
+ return 'ShapeCustomized';
832
+ }
800
833
  };
801
834
  UndoRedo.prototype.updateUrc = function (operation, previousObj, previousObjColl, previousPointColl, previousSelPointColl, previousCropObj, previousText, currentText, previousFilter, isCircleCrop) {
802
835
  var parent = this.parent;
@@ -864,7 +897,7 @@ var UndoRedo = /** @class */ (function () {
864
897
  }
865
898
  }
866
899
  };
867
- UndoRedo.prototype.updateUrObj = function (objColl) {
900
+ UndoRedo.prototype.updateUrObj = function (objColl, operation) {
868
901
  var parent = this.parent;
869
902
  if (parent.allowUndoRedo) {
870
903
  if (parent.currObjType.isUndoAction) {
@@ -885,7 +918,8 @@ var UndoRedo = /** @class */ (function () {
885
918
  parent.notify('freehand-draw', { prop: 'getSelPointColl', onPropertyChange: false,
886
919
  value: { obj: selPointCollObj } });
887
920
  obj.selPointColl = extend([], selPointCollObj['selPointColl'], [], true);
888
- this.undoRedoColl.push({ operation: 'shapeTransform', previousObj: obj, currentObj: obj,
921
+ var oper = operation ? operation : 'shapeTransform';
922
+ this.undoRedoColl.push({ operation: oper, previousObj: obj, currentObj: obj,
889
923
  previousObjColl: objColl, currentObjColl: obj.objColl,
890
924
  previousPointColl: obj.pointColl, currentPointColl: obj.pointColl,
891
925
  previousSelPointColl: obj.selPointColl, currentSelPointColl: obj.selPointColl,
@@ -894,7 +928,7 @@ var UndoRedo = /** @class */ (function () {
894
928
  value: { obj: parent.objColl[parent.objColl.length - 1] } });
895
929
  }
896
930
  };
897
- UndoRedo.prototype.updateUndoRedo = function () {
931
+ UndoRedo.prototype.updateUndoRedo = function (operation) {
898
932
  var parent = this.parent;
899
933
  var prevCropObj = extend({}, parent.cropObj, {}, true);
900
934
  var object = { currObj: {} };
@@ -911,7 +945,8 @@ var UndoRedo = /** @class */ (function () {
911
945
  parent.notify('shape', { prop: 'updImgRatioForActObj', onPropertyChange: false });
912
946
  }
913
947
  parent.objColl.push(parent.activeObj);
914
- this.updateUrc('shapeTransform', prevObj, prevObj.objColl, prevObj.pointColl, prevObj.selPointColl, prevCropObj);
948
+ var oper = operation ? operation : 'shapeTransform';
949
+ this.updateUrc(oper, prevObj, prevObj.objColl, prevObj.pointColl, prevObj.selPointColl, prevCropObj);
915
950
  parent.objColl.pop();
916
951
  parent.notify('shape', { prop: 'applyActObj', onPropertyChange: false, value: { isMouseDown: null } });
917
952
  parent.notify('shape', { prop: 'refreshActiveObj', onPropertyChange: false });
@@ -1203,6 +1203,7 @@ var ImageEditor = /** @class */ (function (_super) {
1203
1203
  *
1204
1204
  */
1205
1205
  ImageEditor.prototype.zoom = function (zoomFactor, zoomPoint) {
1206
+ this.isZoomBtnClick = true;
1206
1207
  this.notify('transform', { prop: 'zoom', onPropertyChange: false,
1207
1208
  value: { zoomFactor: zoomFactor, zoomPoint: zoomPoint } });
1208
1209
  this.notify('draw', { prop: 'redrawDownScale' });
@@ -559,6 +559,18 @@
559
559
  margin-left: calc(50% - 80px) !important; /* stylelint-disable-line declaration-no-important */
560
560
  }
561
561
 
562
+ .e-device .e-transparency-slider-wrap {
563
+ top: calc(50% - 15px) !important; /* stylelint-disable-line declaration-no-important */
564
+ }
565
+
566
+ .e-device .e-ie-finetune-slider-wrap {
567
+ top: calc(50% - 15px) !important; /* stylelint-disable-line declaration-no-important */
568
+ }
569
+
570
+ .e-device .e-ie-slider-wrap {
571
+ top: calc(50% - 14px) !important; /* stylelint-disable-line declaration-no-important */
572
+ }
573
+
562
574
  .e-image-editor {
563
575
  background: #959595;
564
576
  }
@@ -559,6 +559,18 @@
559
559
  margin-left: calc(50% - 80px) !important; /* stylelint-disable-line declaration-no-important */
560
560
  }
561
561
 
562
+ .e-device .e-transparency-slider-wrap {
563
+ top: calc(50% - 15px) !important; /* stylelint-disable-line declaration-no-important */
564
+ }
565
+
566
+ .e-device .e-ie-finetune-slider-wrap {
567
+ top: calc(50% - 15px) !important; /* stylelint-disable-line declaration-no-important */
568
+ }
569
+
570
+ .e-device .e-ie-slider-wrap {
571
+ top: calc(50% - 14px) !important; /* stylelint-disable-line declaration-no-important */
572
+ }
573
+
562
574
  .e-image-editor {
563
575
  background: #e6e6e6;
564
576
  }
@@ -557,6 +557,18 @@
557
557
  margin-left: calc(50% - 80px) !important; /* stylelint-disable-line declaration-no-important */
558
558
  }
559
559
 
560
+ .e-device .e-transparency-slider-wrap {
561
+ top: calc(50% - 15px) !important; /* stylelint-disable-line declaration-no-important */
562
+ }
563
+
564
+ .e-device .e-ie-finetune-slider-wrap {
565
+ top: calc(50% - 15px) !important; /* stylelint-disable-line declaration-no-important */
566
+ }
567
+
568
+ .e-device .e-ie-slider-wrap {
569
+ top: calc(50% - 14px) !important; /* stylelint-disable-line declaration-no-important */
570
+ }
571
+
560
572
  .e-image-editor {
561
573
  background: #e9ecef;
562
574
  }
@@ -585,7 +597,7 @@
585
597
  color: #fff;
586
598
  }
587
599
  .e-image-editor .e-toolbar .e-toolbar-items .e-dropdown-btn:focus {
588
- background: #6c757d;
600
+ background: #5b636a;
589
601
  box-shadow: none;
590
602
  color: #fff;
591
603
  }
@@ -575,6 +575,18 @@
575
575
  margin-left: calc(50% - 80px) !important; /* stylelint-disable-line declaration-no-important */
576
576
  }
577
577
 
578
+ .e-device .e-transparency-slider-wrap {
579
+ top: calc(50% - 15px) !important; /* stylelint-disable-line declaration-no-important */
580
+ }
581
+
582
+ .e-device .e-ie-finetune-slider-wrap {
583
+ top: calc(50% - 15px) !important; /* stylelint-disable-line declaration-no-important */
584
+ }
585
+
586
+ .e-device .e-ie-slider-wrap {
587
+ top: calc(50% - 14px) !important; /* stylelint-disable-line declaration-no-important */
588
+ }
589
+
578
590
  .e-image-editor {
579
591
  background: #444c54;
580
592
  }
@@ -575,6 +575,18 @@
575
575
  margin-left: calc(50% - 80px) !important; /* stylelint-disable-line declaration-no-important */
576
576
  }
577
577
 
578
+ .e-device .e-transparency-slider-wrap {
579
+ top: calc(50% - 15px) !important; /* stylelint-disable-line declaration-no-important */
580
+ }
581
+
582
+ .e-device .e-ie-finetune-slider-wrap {
583
+ top: calc(50% - 15px) !important; /* stylelint-disable-line declaration-no-important */
584
+ }
585
+
586
+ .e-device .e-ie-slider-wrap {
587
+ top: calc(50% - 14px) !important; /* stylelint-disable-line declaration-no-important */
588
+ }
589
+
578
590
  .e-image-editor {
579
591
  background: #dee2e6;
580
592
  }
@@ -559,6 +559,18 @@
559
559
  margin-left: calc(50% - 80px) !important; /* stylelint-disable-line declaration-no-important */
560
560
  }
561
561
 
562
+ .e-device .e-transparency-slider-wrap {
563
+ top: calc(50% - 15px) !important; /* stylelint-disable-line declaration-no-important */
564
+ }
565
+
566
+ .e-device .e-ie-finetune-slider-wrap {
567
+ top: calc(50% - 15px) !important; /* stylelint-disable-line declaration-no-important */
568
+ }
569
+
570
+ .e-device .e-ie-slider-wrap {
571
+ top: calc(50% - 14px) !important; /* stylelint-disable-line declaration-no-important */
572
+ }
573
+
562
574
  .e-image-editor {
563
575
  background: #201f1f;
564
576
  }
package/styles/fabric.css CHANGED
@@ -559,6 +559,18 @@
559
559
  margin-left: calc(50% - 80px) !important; /* stylelint-disable-line declaration-no-important */
560
560
  }
561
561
 
562
+ .e-device .e-transparency-slider-wrap {
563
+ top: calc(50% - 15px) !important; /* stylelint-disable-line declaration-no-important */
564
+ }
565
+
566
+ .e-device .e-ie-finetune-slider-wrap {
567
+ top: calc(50% - 15px) !important; /* stylelint-disable-line declaration-no-important */
568
+ }
569
+
570
+ .e-device .e-ie-slider-wrap {
571
+ top: calc(50% - 14px) !important; /* stylelint-disable-line declaration-no-important */
572
+ }
573
+
562
574
  .e-image-editor {
563
575
  background: #fff;
564
576
  }
@@ -570,6 +570,18 @@
570
570
  margin-left: calc(50% - 80px) !important; /* stylelint-disable-line declaration-no-important */
571
571
  }
572
572
 
573
+ .e-device .e-transparency-slider-wrap {
574
+ top: calc(50% - 15px) !important; /* stylelint-disable-line declaration-no-important */
575
+ }
576
+
577
+ .e-device .e-ie-finetune-slider-wrap {
578
+ top: calc(50% - 15px) !important; /* stylelint-disable-line declaration-no-important */
579
+ }
580
+
581
+ .e-device .e-ie-slider-wrap {
582
+ top: calc(50% - 14px) !important; /* stylelint-disable-line declaration-no-important */
583
+ }
584
+
573
585
  .e-image-editor {
574
586
  background: #201f1e;
575
587
  }
package/styles/fluent.css CHANGED
@@ -570,6 +570,18 @@
570
570
  margin-left: calc(50% - 80px) !important; /* stylelint-disable-line declaration-no-important */
571
571
  }
572
572
 
573
+ .e-device .e-transparency-slider-wrap {
574
+ top: calc(50% - 15px) !important; /* stylelint-disable-line declaration-no-important */
575
+ }
576
+
577
+ .e-device .e-ie-finetune-slider-wrap {
578
+ top: calc(50% - 15px) !important; /* stylelint-disable-line declaration-no-important */
579
+ }
580
+
581
+ .e-device .e-ie-slider-wrap {
582
+ top: calc(50% - 14px) !important; /* stylelint-disable-line declaration-no-important */
583
+ }
584
+
573
585
  .e-image-editor {
574
586
  background: #faf9f8;
575
587
  }
@@ -557,6 +557,18 @@
557
557
  margin-left: calc(50% - 80px) !important; /* stylelint-disable-line declaration-no-important */
558
558
  }
559
559
 
560
+ .e-device .e-transparency-slider-wrap {
561
+ top: calc(50% - 15px) !important; /* stylelint-disable-line declaration-no-important */
562
+ }
563
+
564
+ .e-device .e-ie-finetune-slider-wrap {
565
+ top: calc(50% - 15px) !important; /* stylelint-disable-line declaration-no-important */
566
+ }
567
+
568
+ .e-device .e-ie-slider-wrap {
569
+ top: calc(50% - 14px) !important; /* stylelint-disable-line declaration-no-important */
570
+ }
571
+
560
572
  .e-image-editor {
561
573
  background: #fff;
562
574
  }
@@ -561,6 +561,18 @@
561
561
  margin-left: calc(50% - 80px) !important; /* stylelint-disable-line declaration-no-important */
562
562
  }
563
563
 
564
+ .e-device .e-transparency-slider-wrap {
565
+ top: calc(50% - 15px) !important; /* stylelint-disable-line declaration-no-important */
566
+ }
567
+
568
+ .e-device .e-ie-finetune-slider-wrap {
569
+ top: calc(50% - 15px) !important; /* stylelint-disable-line declaration-no-important */
570
+ }
571
+
572
+ .e-device .e-ie-slider-wrap {
573
+ top: calc(50% - 14px) !important; /* stylelint-disable-line declaration-no-important */
574
+ }
575
+
564
576
  .e-image-editor {
565
577
  background: #000;
566
578
  }
@@ -19,3 +19,4 @@ $image-editor-bigger-slider-handler: calc(50% - 7px) !default;
19
19
  $image-editor-device-slider-handler: calc(50% - 7px) !default;
20
20
  $image-editor-finetune-value-span: 31% !default;
21
21
  $image-editor-finetune-span: 31% !default;
22
+ $image-editor-slider-wrap: calc(50% - 15px) !default;
@@ -19,3 +19,4 @@ $image-editor-bigger-slider-handler: calc(50% - 7px) !default;
19
19
  $image-editor-device-slider-handler: calc(50% - 7px) !default;
20
20
  $image-editor-finetune-value-span: 31% !default;
21
21
  $image-editor-finetune-span: 31% !default;
22
+ $image-editor-slider-wrap: calc(50% - 15px) !default;
@@ -19,3 +19,4 @@ $image-editor-bigger-slider-handler: calc(50% - 7px) !default;
19
19
  $image-editor-device-slider-handler: calc(50% - 7px) !default;
20
20
  $image-editor-finetune-value-span: 31% !default;
21
21
  $image-editor-finetune-span: 31% !default;
22
+ $image-editor-slider-wrap: calc(50% - 15px) !default;
@@ -19,3 +19,4 @@ $image-editor-bigger-slider-handler: calc(50% - 6px) !default;
19
19
  $image-editor-device-slider-handler: calc(50% - 8px) !default;
20
20
  $image-editor-finetune-value-span: 29% !default;
21
21
  $image-editor-finetune-span: 29% !default;
22
+ $image-editor-slider-wrap: calc(50% - 15px) !default;
@@ -19,3 +19,4 @@ $image-editor-bigger-slider-handler: calc(50% - 9px) !default;
19
19
  $image-editor-device-slider-handler: calc(50% - 9px) !default;
20
20
  $image-editor-finetune-value-span: 29% !default;
21
21
  $image-editor-finetune-span: 29% !default;
22
+ $image-editor-slider-wrap: calc(50% - 15px) !default;
@@ -19,3 +19,4 @@ $image-editor-bigger-slider-handler: calc(50% - 9px) !default;
19
19
  $image-editor-device-slider-handler: calc(50% - 9px) !default;
20
20
  $image-editor-finetune-value-span: 29% !default;
21
21
  $image-editor-finetune-span: 29% !default;
22
+ $image-editor-slider-wrap: calc(50% - 15px) !default;
@@ -19,3 +19,4 @@ $image-editor-bigger-slider-handler: calc(50% - 8px) !default;
19
19
  $image-editor-device-slider-handler: calc(50% - 8px) !default;
20
20
  $image-editor-finetune-value-span: 29% !default;
21
21
  $image-editor-finetune-span: 29% !default;
22
+ $image-editor-slider-wrap: calc(50% - 15px) !default;
@@ -17,3 +17,4 @@ $image-editor-bigger-dropdown-btn-preview-left: -7px !default;
17
17
  $image-editor-slider-handler: calc(50% - 6px) !default;
18
18
  $image-editor-bigger-slider-handler: calc(50% - 6px) !default;
19
19
  $image-editor-device-slider-handler: calc(50% - 6px) !default;
20
+ $image-editor-slider-wrap: calc(50% - 15px) !default;
@@ -19,3 +19,4 @@ $image-editor-bigger-slider-handler: calc(50% - 8px) !default;
19
19
  $image-editor-device-slider-handler: calc(50% - 8px) !default;
20
20
  $image-editor-finetune-value-span: 29% !default;
21
21
  $image-editor-finetune-span: 29% !default;
22
+ $image-editor-slider-wrap: calc(50% - 15px) !default;
@@ -19,3 +19,4 @@ $image-editor-bigger-slider-handler: calc(50% - 8px) !default;
19
19
  $image-editor-device-slider-handler: calc(50% - 8px) !default;
20
20
  $image-editor-finetune-value-span: 29% !default;
21
21
  $image-editor-finetune-span: 29% !default;
22
+ $image-editor-slider-wrap: calc(50% - 15px) !default;