@syncfusion/ej2-image-editor 31.1.17 → 31.1.21

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 (53) hide show
  1. package/dist/ej2-image-editor.umd.min.js +2 -2
  2. package/dist/ej2-image-editor.umd.min.js.map +1 -1
  3. package/dist/es6/ej2-image-editor.es2015.js +63 -7
  4. package/dist/es6/ej2-image-editor.es2015.js.map +1 -1
  5. package/dist/es6/ej2-image-editor.es5.js +63 -7
  6. package/dist/es6/ej2-image-editor.es5.js.map +1 -1
  7. package/dist/global/ej2-image-editor.min.js +2 -2
  8. package/dist/global/ej2-image-editor.min.js.map +1 -1
  9. package/dist/global/index.d.ts +1 -1
  10. package/package.json +14 -46
  11. package/src/image-editor/action/export.js +6 -2
  12. package/src/image-editor/action/freehand-draw.d.ts +1 -0
  13. package/src/image-editor/action/freehand-draw.js +30 -3
  14. package/src/image-editor/action/selection.js +14 -2
  15. package/src/image-editor/action/undo-redo.js +10 -0
  16. package/src/image-editor/renderer/toolbar.js +3 -0
  17. package/dist/ts/image-editor/action/crop.d.ts +0 -44
  18. package/dist/ts/image-editor/action/crop.ts +0 -867
  19. package/dist/ts/image-editor/action/draw.d.ts +0 -187
  20. package/dist/ts/image-editor/action/draw.ts +0 -4924
  21. package/dist/ts/image-editor/action/export.d.ts +0 -29
  22. package/dist/ts/image-editor/action/export.ts +0 -509
  23. package/dist/ts/image-editor/action/filter.d.ts +0 -48
  24. package/dist/ts/image-editor/action/filter.ts +0 -872
  25. package/dist/ts/image-editor/action/freehand-draw.d.ts +0 -68
  26. package/dist/ts/image-editor/action/freehand-draw.ts +0 -1135
  27. package/dist/ts/image-editor/action/index.d.ts +0 -9
  28. package/dist/ts/image-editor/action/index.ts +0 -9
  29. package/dist/ts/image-editor/action/selection.d.ts +0 -178
  30. package/dist/ts/image-editor/action/selection.ts +0 -5241
  31. package/dist/ts/image-editor/action/shape.d.ts +0 -130
  32. package/dist/ts/image-editor/action/shape.ts +0 -3917
  33. package/dist/ts/image-editor/action/transform.d.ts +0 -77
  34. package/dist/ts/image-editor/action/transform.ts +0 -2008
  35. package/dist/ts/image-editor/action/undo-redo.d.ts +0 -52
  36. package/dist/ts/image-editor/action/undo-redo.ts +0 -1169
  37. package/dist/ts/image-editor/base/enum.d.ts +0 -277
  38. package/dist/ts/image-editor/base/enum.ts +0 -288
  39. package/dist/ts/image-editor/base/image-editor-model.d.ts +0 -770
  40. package/dist/ts/image-editor/base/image-editor.d.ts +0 -1928
  41. package/dist/ts/image-editor/base/image-editor.ts +0 -5496
  42. package/dist/ts/image-editor/base/index.d.ts +0 -4
  43. package/dist/ts/image-editor/base/index.ts +0 -4
  44. package/dist/ts/image-editor/base/interface.d.ts +0 -1637
  45. package/dist/ts/image-editor/base/interface.ts +0 -1709
  46. package/dist/ts/image-editor/index.d.ts +0 -3
  47. package/dist/ts/image-editor/index.ts +0 -3
  48. package/dist/ts/image-editor/renderer/index.d.ts +0 -1
  49. package/dist/ts/image-editor/renderer/index.ts +0 -1
  50. package/dist/ts/image-editor/renderer/toolbar.d.ts +0 -171
  51. package/dist/ts/image-editor/renderer/toolbar.ts +0 -6356
  52. package/dist/ts/index.d.ts +0 -4
  53. package/dist/ts/index.ts +0 -4
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * filename: index.d.ts
3
- * version : 31.1.17
3
+ * version : 31.1.21
4
4
  * Copyright Syncfusion Inc. 2001 - 2024. 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,49 +1,22 @@
1
1
  {
2
- "_from": "@syncfusion/ej2-image-editor@*",
3
- "_id": "@syncfusion/ej2-image-editor@28.2.0",
4
- "_inBundle": false,
5
- "_integrity": "sha512-ZRXJy4ABn0/rhrAz6BSWecD3KqFtdXN6HpMbzT1Nwd+EpL4R8sKC7vJF4xo/km1ZTWgDjgFdImviKKV0Ze/GOQ==",
6
- "_location": "/@syncfusion/ej2-image-editor",
7
- "_phantomChildren": {},
8
- "_requested": {
9
- "type": "range",
10
- "registry": true,
11
- "raw": "@syncfusion/ej2-image-editor@*",
12
- "name": "@syncfusion/ej2-image-editor",
13
- "escapedName": "@syncfusion%2fej2-image-editor",
14
- "scope": "@syncfusion",
15
- "rawSpec": "*",
16
- "saveSpec": null,
17
- "fetchSpec": "*"
18
- },
19
- "_requiredBy": [
20
- "/",
21
- "/@syncfusion/ej2",
22
- "/@syncfusion/ej2-angular-image-editor",
23
- "/@syncfusion/ej2-react-image-editor",
24
- "/@syncfusion/ej2-vue-image-editor"
25
- ],
26
- "_resolved": "https://nexus.syncfusioninternal.com/repository/ej2-development/@syncfusion/ej2-image-editor/-/ej2-image-editor-28.2.0.tgz",
27
- "_shasum": "db58ce2ba449bdc03efaac0d29a3129ed74204ec",
28
- "_spec": "@syncfusion/ej2-image-editor@*",
29
- "_where": "D:\\SF3992\\WFH\\Nexus\\release",
30
- "author": {
31
- "name": "Syncfusion Inc."
32
- },
33
- "bundleDependencies": false,
2
+ "name": "@syncfusion/ej2-image-editor",
3
+ "version": "31.1.21",
4
+ "description": "Essential JS 2 ImageEditor",
5
+ "author": "Syncfusion Inc.",
6
+ "license": "SEE LICENSE IN license",
7
+ "main": "./dist/ej2-image-editor.umd.min.js",
8
+ "module": "./index.js",
9
+ "es2015": "./dist/es6/ej2-image-editor.es5.js",
34
10
  "dependencies": {
35
- "@syncfusion/ej2-base": "~31.1.17",
36
- "@syncfusion/ej2-buttons": "~31.1.17",
37
- "@syncfusion/ej2-dropdowns": "~31.1.17",
38
- "@syncfusion/ej2-inputs": "~31.1.17",
39
- "@syncfusion/ej2-navigations": "~31.1.17",
40
- "@syncfusion/ej2-popups": "~31.1.17",
11
+ "@syncfusion/ej2-base": "~31.1.20",
12
+ "@syncfusion/ej2-buttons": "~31.1.21",
13
+ "@syncfusion/ej2-dropdowns": "~31.1.20",
14
+ "@syncfusion/ej2-inputs": "~31.1.21",
15
+ "@syncfusion/ej2-navigations": "~31.1.20",
16
+ "@syncfusion/ej2-popups": "~31.1.20",
41
17
  "@syncfusion/ej2-splitbuttons": "~31.1.17"
42
18
  },
43
- "deprecated": false,
44
- "description": "Essential JS 2 ImageEditor",
45
19
  "devDependencies": {},
46
- "es2015": "./dist/es6/ej2-image-editor.es5.js",
47
20
  "keywords": [
48
21
  "ej2",
49
22
  "syncfusion",
@@ -59,16 +32,11 @@
59
32
  "web image editor",
60
33
  "image editing software"
61
34
  ],
62
- "license": "SEE LICENSE IN license",
63
- "main": "./dist/ej2-image-editor.umd.min.js",
64
- "module": "./index.js",
65
- "name": "@syncfusion/ej2-image-editor",
66
35
  "repository": {
67
36
  "type": "git",
68
37
  "url": "https://github.com/syncfusion/ej2-javascript-ui-controls/tree/master/controls/imageeditor"
69
38
  },
70
39
  "typings": "index.d.ts",
71
- "version": "31.1.17",
72
40
  "sideEffects": false,
73
41
  "homepage": "https://www.syncfusion.com/javascript-ui-controls"
74
42
  }
@@ -65,8 +65,12 @@ var Export = /** @class */ (function () {
65
65
  type = type ? type : 'Png';
66
66
  parent.notify('shape', { prop: 'redrawActObj', onPropertyChange: false,
67
67
  value: { x: null, y: null, isMouseDown: null } });
68
+ var imageQualityObj = { currentImageQuality: 1 };
69
+ if (type.toLowerCase() === 'jpeg') {
70
+ parent.notify('toolbar', { prop: 'getcurrentImageQuality', onPropertyChange: false, value: { obj: imageQualityObj } });
71
+ }
68
72
  var beforeSave = { cancel: false, fileName: fileName ? fileName : imageName,
69
- fileType: type, imageQuality: imgQuality };
73
+ fileType: type, imageQuality: imgQuality || imageQualityObj['currentImageQuality'] };
70
74
  parent.trigger('beforeSave', beforeSave);
71
75
  this.beforeSaveEvent(beforeSave, type, fileName, imageName, imgQuality);
72
76
  }
@@ -82,7 +86,7 @@ var Export = /** @class */ (function () {
82
86
  this.toSVGImg(fileName);
83
87
  }
84
88
  else {
85
- this.toBlobFn(fileName, lowerCaseType, imgQuality);
89
+ this.toBlobFn(fileName, lowerCaseType, observableSaveArgs.imageQuality || imgQuality);
86
90
  }
87
91
  var saved = { fileName: fileName ? fileName : imageName, fileType: type };
88
92
  parent.trigger('saved', saved);
@@ -32,6 +32,7 @@ export declare class FreehandDrawing {
32
32
  private hoverFhd;
33
33
  private freehandDownHandler;
34
34
  private freehandUpHandler;
35
+ private getHighestOrder;
35
36
  private freehandMoveHandler;
36
37
  private processPoint;
37
38
  private calcCurveCP;
@@ -149,6 +149,15 @@ var FreehandDrawing = /** @class */ (function () {
149
149
  case 'resetFreehandDrawSelectedId':
150
150
  this.fhdSelID = null;
151
151
  break;
152
+ case 'getFHDSelected':
153
+ args.value['obj']['isSelected'] = (this.parent.pointColl[this.fhdSelIdx] && this.parent.pointColl[this.fhdSelIdx].isSelected) ? this.parent.pointColl[this.fhdSelIdx].isSelected : false;
154
+ break;
155
+ case 'resetFHDIdx':
156
+ this.fhdHovIdx = this.fhdSelID = this.fhdSelIdx = null;
157
+ break;
158
+ case 'getHighestOrder':
159
+ this.getHighestOrder();
160
+ break;
152
161
  case 'getTempFreeHandDrawEditingStyles':
153
162
  args.value['obj']['tempFreeHandDrawEditingStyles'] = this.tempFHDStyles;
154
163
  break;
@@ -331,10 +340,11 @@ var FreehandDrawing = /** @class */ (function () {
331
340
  parent.notify('freehand-draw', { prop: 'getSelPointColl', onPropertyChange: false, value: { obj: selPointCollObj } });
332
341
  prevObj.selPointColl = extend([], selPointCollObj['selPointColl'], [], true);
333
342
  var fhCnt = parent.freehandCounter;
334
- var order = parent.objColl.length + parent.freehandCounter + 1;
343
+ var penIndex = this.getHighestOrder();
344
+ var order = parent.objColl.length + penIndex + 1;
335
345
  parent.pointColl[fhCnt] = { points: extend([], parent.points), strokeColor: parent.activeObj.strokeSettings.strokeColor,
336
346
  strokeWidth: this.penStrokeWidth, flipState: parent.transform.currFlipState,
337
- id: 'pen_' + (this.currFHDIdx + 1), order: order };
347
+ id: 'pen_' + (penIndex + 1), order: order };
338
348
  parent.points = [];
339
349
  this.dummyPoints = [];
340
350
  this.selPointColl[fhCnt] = { points: extend([], this.selPoints) };
@@ -349,7 +359,7 @@ var FreehandDrawing = /** @class */ (function () {
349
359
  previousCropObj: prevCropObj, previousText: null,
350
360
  currentText: null, previousFilter: null, isCircleCrop: null } });
351
361
  }
352
- var shapeSettings = { id: 'pen_' + (this.currFHDIdx + 1), type: ShapeType.FreehandDraw,
362
+ var shapeSettings = { id: 'pen_' + (penIndex + 1), type: ShapeType.FreehandDraw,
353
363
  startX: this.freehandDownPoint.x, startY: this.freehandDownPoint.y,
354
364
  strokeColor: parent.activeObj.strokeSettings.strokeColor, strokeWidth: this.penStrokeWidth,
355
365
  points: parent.pointColl[this.currFHDIdx].points, index: order };
@@ -358,6 +368,17 @@ var FreehandDrawing = /** @class */ (function () {
358
368
  this.triggerShapeChanging(shapeChangingArgs);
359
369
  this.currFHDIdx++;
360
370
  };
371
+ FreehandDrawing.prototype.getHighestOrder = function () {
372
+ var parent = this.parent;
373
+ var index = 0;
374
+ for (var i = 0; i < parent.pointColl.length; i++) {
375
+ var value = parseInt(parent.pointColl[i].id.split('_')[1], 10);
376
+ if (index < value) {
377
+ index = value;
378
+ }
379
+ }
380
+ return index;
381
+ };
361
382
  FreehandDrawing.prototype.freehandMoveHandler = function (e) {
362
383
  this.isFreehandPointMoved = true;
363
384
  var rect = this.parent.upperCanvas.getBoundingClientRect();
@@ -746,6 +767,7 @@ var FreehandDrawing = /** @class */ (function () {
746
767
  }
747
768
  parent.freehandCounter -= 1;
748
769
  this.fhdHovIdx = this.fhdSelIdx = null;
770
+ this.currFHDIdx--;
749
771
  parent.notify('selection', { prop: 'resetFreehandDrawVariables' });
750
772
  parent.notify('draw', { prop: 'render-image', value: { isMouseWheel: null } });
751
773
  parent.notify('toolbar', { prop: 'refresh-main-toolbar', onPropertyChange: false });
@@ -1142,6 +1164,11 @@ var FreehandDrawing = /** @class */ (function () {
1142
1164
  var parent = this.parent;
1143
1165
  var point = parent.pointColl[this.fhdSelIdx];
1144
1166
  parent.trigger('shapeChanging', shapeChangingArgs);
1167
+ if (shapeChangingArgs.cancel) {
1168
+ parent.editCompleteArgs = shapeChangingArgs;
1169
+ this.cancelFhd();
1170
+ return;
1171
+ }
1145
1172
  if (parent.element.getAttribute('data-value') === 'mask-drawing' && !this.isMasking) {
1146
1173
  this.isMasking = true;
1147
1174
  parent.upperCanvas.style.cursor = 'crosshair';
@@ -3463,6 +3463,9 @@ var Selection = /** @class */ (function () {
3463
3463
  var objColl = extend([], parent.objColl, [], true);
3464
3464
  if (!isNullOrUndefined(obj['index']) && obj['index'] > -1) {
3465
3465
  parent.notify('freehand-draw', { prop: 'selectFhd', value: { type: 'ok' } });
3466
+ if (!this.isFhdPoint) {
3467
+ return;
3468
+ }
3466
3469
  parent.notify('freehand-draw', { prop: 'hoverFhd', onPropertyChange: false,
3467
3470
  value: { strokeColor: null, strokeWidth: null } });
3468
3471
  parent.notify('toolbar', { prop: 'renderQAT', onPropertyChange: false, value: { isPenEdit: true } });
@@ -4007,7 +4010,9 @@ var Selection = /** @class */ (function () {
4007
4010
  this.currentDrawingShape = parent.drawingShape.toLowerCase();
4008
4011
  if (dummyClick) {
4009
4012
  parent.enableShapeDrawing(parent.toPascalCase(parent.drawingShape), true);
4010
- parent.upperCanvas.style.cursor = 'crosshair';
4013
+ if (parent.cursor !== 'move') {
4014
+ parent.upperCanvas.style.cursor = 'crosshair';
4015
+ }
4011
4016
  }
4012
4017
  }
4013
4018
  parent.isShapeDrawing = false;
@@ -5029,7 +5034,14 @@ var Selection = /** @class */ (function () {
5029
5034
  }
5030
5035
  if (!this.isCropSelection && parent.activeObj.shape !== 'redact') {
5031
5036
  parent.trigger('shapeChanging', shapeChangingArgs);
5032
- this.shapeEvent(shapeChangingArgs);
5037
+ if (shapeChangingArgs.cancel) {
5038
+ parent.objColl.splice(i, 0, temp);
5039
+ parent.notify('shape', { prop: 'refreshActiveObj', onPropertyChange: false });
5040
+ parent.notify('draw', { prop: 'render-image', value: { isMouseWheel: null } });
5041
+ }
5042
+ else {
5043
+ this.shapeEvent(shapeChangingArgs);
5044
+ }
5033
5045
  parent.editCompleteArgs = shapeChangingArgs;
5034
5046
  }
5035
5047
  else {
@@ -359,6 +359,12 @@ var UndoRedo = /** @class */ (function () {
359
359
  parent.initialAdjustmentValue = this.lowerContext.filter;
360
360
  parent.notify('filter', { prop: 'setBevelFilter', onPropertyChange: false, value: { bevelFilter: this.lowerContext.filter } });
361
361
  var editCompleteArgs = { action: this.getUndoRedoAction(obj.operation) };
362
+ var isSelected = void 0;
363
+ if (obj.operation === 'freehanddraw' || obj.operation === 'freehand-draw') {
364
+ var object = { isSelected: null };
365
+ parent.notify('freehand-draw', { prop: 'getFHDSelected', onPropertyChange: false, value: { obj: object } });
366
+ isSelected = object['isSelected'];
367
+ }
362
368
  switch (obj.operation) {
363
369
  case 'shapeTransform':
364
370
  case 'brightness':
@@ -386,6 +392,10 @@ var UndoRedo = /** @class */ (function () {
386
392
  this.updateFreehandDraw(obj.previousPointColl, obj.previousSelPointColl);
387
393
  parent.notify('freehand-draw', { prop: 'setCurrentFreehandDrawIndex',
388
394
  value: { value: parent.pointColl.length } });
395
+ if (isSelected) {
396
+ parent.notify('freehand-draw', { prop: 'resetFHDIdx' });
397
+ parent.notify('selection', { prop: 'resetFreehandDrawVariables' });
398
+ }
389
399
  break;
390
400
  case 'freehanddrawCustomized':
391
401
  this.updateFreehandDrawCustomized(obj.previousObjColl, obj.previousPointColl);
@@ -280,6 +280,9 @@ var ToolbarModule = /** @class */ (function () {
280
280
  case 'getToolbarHeight':
281
281
  args.value['obj']['toolbarHeight'] = this.toolbarHeight;
282
282
  break;
283
+ case 'getcurrentImageQuality':
284
+ args.value['obj']['currentImageQuality'] = this.currentQuality;
285
+ break;
283
286
  case 'setToolbarHeight':
284
287
  if (isNullOrUndefined(parent.toolbar) || (parent.toolbar && parent.toolbar.length > 0 && parent.toolbar.indexOf('Open') > -1)) {
285
288
  this.toolbarHeight = args.value['height'];
@@ -1,44 +0,0 @@
1
- import { ImageEditor } from '../index';
2
- export declare class Crop {
3
- private parent;
4
- private lowerContext;
5
- private upperContext;
6
- private prevCropCurrObj;
7
- private croppedDegree;
8
- private cropDestPoints;
9
- private tempFlipPanPoint;
10
- private isPreventScaling;
11
- private isInitCrop;
12
- private isTransformCrop;
13
- constructor(parent: ImageEditor);
14
- destroy(): void;
15
- private addEventListener;
16
- private removeEventListener;
17
- private cropping;
18
- getModuleName(): string;
19
- private updateCropPvtVar;
20
- private reset;
21
- private cropImg;
22
- private adjustStraightenForShapes;
23
- private updateCropObj;
24
- private rotateCrop;
25
- private revertTransform;
26
- private updateFlipState;
27
- private resetZoom;
28
- private flipCrop;
29
- private cropObjColl;
30
- private cropPointCollection;
31
- private cropFreehandDrawColl;
32
- private resetAnnotations;
33
- private setCurrSelPoints;
34
- private panToSelRangle;
35
- private cropCircle;
36
- private getCurrCropState;
37
- private updateRotatePan;
38
- private crop;
39
- private cropEvent;
40
- private updateUndoRedoColl;
41
- private resizeWrapper;
42
- private calcRatio;
43
- private getCurrFlipState;
44
- }