@syncfusion/ej2-image-editor 24.1.44 → 24.1.45

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 (62) hide show
  1. package/CHANGELOG.md +8 -0
  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 +29 -17
  5. package/dist/es6/ej2-image-editor.es2015.js.map +1 -1
  6. package/dist/es6/ej2-image-editor.es5.js +29 -17
  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 +8 -8
  12. package/src/image-editor/action/draw.js +10 -2
  13. package/src/image-editor/action/transform.js +1 -3
  14. package/src/image-editor/renderer/toolbar.js +18 -12
  15. package/styles/bootstrap-dark.css +21 -1
  16. package/styles/bootstrap.css +21 -1
  17. package/styles/bootstrap4.css +21 -1
  18. package/styles/bootstrap5-dark.css +21 -1
  19. package/styles/bootstrap5.css +21 -1
  20. package/styles/fabric-dark.css +21 -1
  21. package/styles/fabric.css +21 -1
  22. package/styles/fluent-dark.css +21 -1
  23. package/styles/fluent.css +21 -1
  24. package/styles/highcontrast-light.css +21 -1
  25. package/styles/highcontrast.css +21 -1
  26. package/styles/image-editor/_bootstrap-dark-definition.scss +2 -0
  27. package/styles/image-editor/_bootstrap-definition.scss +2 -0
  28. package/styles/image-editor/_bootstrap4-definition.scss +2 -0
  29. package/styles/image-editor/_bootstrap5-definition.scss +2 -0
  30. package/styles/image-editor/_fabric-dark-definition.scss +2 -0
  31. package/styles/image-editor/_fabric-definition.scss +2 -0
  32. package/styles/image-editor/_fluent-definition.scss +2 -0
  33. package/styles/image-editor/_highcontrast-definition.scss +2 -0
  34. package/styles/image-editor/_highcontrast-light-definition.scss +2 -0
  35. package/styles/image-editor/_layout.scss +29 -1
  36. package/styles/image-editor/_material-dark-definition.scss +3 -1
  37. package/styles/image-editor/_material-definition.scss +3 -1
  38. package/styles/image-editor/_material3-definition.scss +2 -0
  39. package/styles/image-editor/_tailwind-definition.scss +2 -0
  40. package/styles/image-editor/bootstrap-dark.css +21 -1
  41. package/styles/image-editor/bootstrap.css +21 -1
  42. package/styles/image-editor/bootstrap4.css +21 -1
  43. package/styles/image-editor/bootstrap5-dark.css +21 -1
  44. package/styles/image-editor/bootstrap5.css +21 -1
  45. package/styles/image-editor/fabric-dark.css +21 -1
  46. package/styles/image-editor/fabric.css +21 -1
  47. package/styles/image-editor/fluent-dark.css +21 -1
  48. package/styles/image-editor/fluent.css +21 -1
  49. package/styles/image-editor/highcontrast-light.css +21 -1
  50. package/styles/image-editor/highcontrast.css +21 -1
  51. package/styles/image-editor/material-dark.css +22 -2
  52. package/styles/image-editor/material.css +22 -2
  53. package/styles/image-editor/material3-dark.css +21 -1
  54. package/styles/image-editor/material3.css +21 -1
  55. package/styles/image-editor/tailwind-dark.css +21 -1
  56. package/styles/image-editor/tailwind.css +21 -1
  57. package/styles/material-dark.css +22 -2
  58. package/styles/material.css +22 -2
  59. package/styles/material3-dark.css +21 -1
  60. package/styles/material3.css +21 -1
  61. package/styles/tailwind-dark.css +21 -1
  62. package/styles/tailwind.css +21 -1
@@ -3630,11 +3630,19 @@ class Draw {
3630
3630
  if (!isBlazor()) {
3631
3631
  parent.element.querySelector('.e-contextual-toolbar-wrapper').classList.add('e-hide');
3632
3632
  parent.notify('toolbar', { prop: 'refresh-toolbar', onPropertyChange: false, value: eventargs });
3633
+ if (parent.activeObj.shape && parent.activeObj.shape === 'image') {
3634
+ parent.notify('toolbar', { prop: 'destroy-qa-toolbar', onPropertyChange: false });
3635
+ }
3633
3636
  }
3634
3637
  else {
3635
3638
  parent.updateToolbar(parent.element, 'imageLoaded');
3639
+ if (parent.activeObj.shape && parent.activeObj.shape === 'image') {
3640
+ parent.updateToolbar(parent.element, 'destroyQuickAccessToolbar');
3641
+ }
3636
3642
  }
3637
3643
  parent.notify('undo-redo', { prop: 'updateCurrUrc', value: { type: 'cancel' } });
3644
+ parent.notify('shape', { prop: 'refreshActiveObj', onPropertyChange: false });
3645
+ this.upperContext.clearRect(0, 0, parent.upperCanvas.width, parent.upperCanvas.height);
3638
3646
  }
3639
3647
  else {
3640
3648
  if (isContextualToolbar && (!Browser.isDevice || (Browser.isDevice && !straightenObj['bool']))) {
@@ -5042,9 +5050,9 @@ class Draw {
5042
5050
  }
5043
5051
  }
5044
5052
  }
5045
- const panX = (parent.lowerCanvas.clientWidth / 2) - Math.floor(currObj.activePoint.startX +
5053
+ const panX = (parent.lowerCanvas.clientWidth / 2) - (currObj.activePoint.startX +
5046
5054
  (currObj.activePoint.width / 2));
5047
- const panY = (parent.lowerCanvas.clientHeight / 2) - Math.floor(currObj.activePoint.startY +
5055
+ const panY = ((parent.lowerCanvas.clientHeight + 1) / 2) - (currObj.activePoint.startY +
5048
5056
  (currObj.activePoint.height / 2));
5049
5057
  if (isNullOrUndefined(parent.activeObj.shape)) {
5050
5058
  parent.activeObj = extend({}, activeObj, {}, true);
@@ -19053,9 +19061,7 @@ class Transform {
19053
19061
  parent.notify('toolbar', { prop: 'performCropTransformClick', value: { shape: null } });
19054
19062
  }
19055
19063
  parent.setStraighten(degree, true);
19056
- if ((isBlazor() && parent.events && parent.events.straightening.hasDelegate === false) || !isBlazor()) {
19057
- parent.okBtn();
19058
- }
19064
+ parent.okBtn();
19059
19065
  }
19060
19066
  }
19061
19067
 
@@ -24295,7 +24301,7 @@ class ToolbarModule {
24295
24301
  this.createLeftToolbarControls();
24296
24302
  const mToolbar = document.getElementById(id + '_toolbar');
24297
24303
  if (toolbar) {
24298
- this.toolbarHeight = mToolbar.scrollHeight;
24304
+ this.toolbarHeight = mToolbar.clientHeight;
24299
24305
  }
24300
24306
  }
24301
24307
  else {
@@ -24596,10 +24602,10 @@ class ToolbarModule {
24596
24602
  }
24597
24603
  if (!isBlazor()) {
24598
24604
  if (parent.toolbarTemplate) {
24599
- this.toolbarHeight = parent.element.querySelector('#' + parent.element.id + '_toolbarArea').offsetHeight;
24605
+ this.toolbarHeight = parent.element.querySelector('#' + parent.element.id + '_toolbarArea').clientHeight;
24600
24606
  }
24601
24607
  else if (parent.element.querySelector('#' + parent.element.id + '_toolbar')) {
24602
- this.toolbarHeight = parent.element.querySelector('#' + parent.element.id + '_toolbar').offsetHeight;
24608
+ this.toolbarHeight = parent.element.querySelector('#' + parent.element.id + '_toolbar').clientHeight;
24603
24609
  }
24604
24610
  parent.toolbarHeight = this.toolbarHeight;
24605
24611
  }
@@ -24610,7 +24616,7 @@ class ToolbarModule {
24610
24616
  cHt = cusWrapper.offsetHeight + 2;
24611
24617
  }
24612
24618
  const ht = parent.element.querySelector('#' + id + '_canvasWrapper').offsetHeight;
24613
- contextualToolbarArea.style.top = this.toolbarHeight + ht - cHt + 'px';
24619
+ contextualToolbarArea.style.top = this.toolbarHeight + 1 + ht - cHt + 'px';
24614
24620
  if (cType === 'straighten') {
24615
24621
  parent.isStraightening = true;
24616
24622
  const ctxToolbar = parent.element.querySelector('#' + id + '_contextualToolbarArea');
@@ -24627,7 +24633,7 @@ class ToolbarModule {
24627
24633
  }
24628
24634
  }
24629
24635
  else {
24630
- contextualToolbarArea.style.top = this.toolbarHeight + 'px';
24636
+ contextualToolbarArea.style.top = this.toolbarHeight + 1 + 'px';
24631
24637
  }
24632
24638
  }
24633
24639
  processToolbar(position) {
@@ -25447,8 +25453,8 @@ class ToolbarModule {
25447
25453
  }
25448
25454
  const slider = parent.element.querySelector('#' + id + '_straightenSlider');
25449
25455
  if ((isNullOrUndefined(parent.toolbar) || (parent.toolbar && parent.toolbar.indexOf('Straightening') > -1))
25450
- && slider && slider.parentElement.scrollHeight > this.toolbarHeight) {
25451
- this.toolbarHeight = parent.toolbarHeight = slider.parentElement.scrollHeight;
25456
+ && slider && slider.parentElement.clientHeight > this.toolbarHeight) {
25457
+ this.toolbarHeight = parent.toolbarHeight = slider.parentElement.clientHeight;
25452
25458
  }
25453
25459
  this.enableDisableTbrBtn();
25454
25460
  parent.notify('transform', { prop: 'disableZoomOutBtn', value: { isZoomOut: true } });
@@ -28335,20 +28341,23 @@ class ToolbarModule {
28335
28341
  if (type === 'transparency') {
28336
28342
  labelWrapper = hdrWrapper.appendChild(parent.createElement('label', {
28337
28343
  id: id + '_labelWrapper',
28338
- styles: Browser.isDevice ? 'position: absolute; top: 25%; left: calc(50% - 150px); font-size: 15px; text-transform: capitalize; font-weight: 400;'
28339
- : 'position: absolute; top: 25%; left: calc(50% - 250px); font-size: 15px; text-transform: capitalize; font-weight: 400;'
28344
+ className: 'e-ie-finetune-slider-label',
28345
+ styles: Browser.isDevice ? 'position: absolute; top: 31%; left: calc(50% - 150px); font-size: 15px; text-transform: capitalize; font-weight: 400;'
28346
+ : 'position: absolute; top: 31%; left: calc(50% - 220px); font-size: 15px; text-transform: capitalize; font-weight: 400;'
28340
28347
  }));
28341
28348
  }
28342
28349
  else {
28343
28350
  labelWrapper = hdrWrapper.appendChild(parent.createElement('label', {
28344
28351
  id: id + '_labelWrapper',
28345
- styles: Browser.isDevice ? ('position: absolute; top: 25%; left: calc(50% - 150px); font-size: 15px; text-transform: capitalize; font-weight: 400;')
28352
+ className: 'e-ie-finetune-slider-label',
28353
+ styles: Browser.isDevice ? ('position: absolute; top: 31%; left: calc(50% - 160px); font-size: 15px; text-transform: capitalize; font-weight: 400;')
28346
28354
  : 'position: absolute; top: 25%; left: calc(50% - 226px); font-size: 15px; text-transform: capitalize; font-weight: 400;'
28347
28355
  }));
28348
28356
  }
28349
28357
  labelWrapper.textContent = this.l10n.getConstant(parent.toPascalCase(type === 'transparency' ? 'opacity' : type));
28350
28358
  const sliderWrapper = hdrWrapper.appendChild(parent.createElement('div', {
28351
28359
  id: id + '_sliderWrapper',
28360
+ className: 'e-ie-finetune-slider-wrap',
28352
28361
  styles: 'position: absolute'
28353
28362
  }));
28354
28363
  let value = parent.getCurrAdjustmentValue(type);
@@ -28427,8 +28436,8 @@ class ToolbarModule {
28427
28436
  if (type === 'straighten' && Browser.isDevice) {
28428
28437
  const sLabelWrapper = hdrWrapper.appendChild(parent.createElement('label', {
28429
28438
  id: id + '_sLabelWrapper',
28430
- className: 'e-ie-straighten-value-span',
28431
- styles: 'position: absolute; top: 25%; margin-left: 20px; font-size: 15px; text-transform: capitalize; font-weight: 400;'
28439
+ className: 'e-ie-straighten-value-span e-ie-finetune-value-span',
28440
+ styles: 'position: absolute; top: 31%; margin-left: 20px; font-size: 15px; text-transform: capitalize; font-weight: 400;'
28432
28441
  }));
28433
28442
  sLabelWrapper.innerHTML = parent.transform.straighten.toString() + '&#176';
28434
28443
  sliderWrapper.parentElement.classList.add('e-straighten-slider');
@@ -28441,6 +28450,9 @@ class ToolbarModule {
28441
28450
  'position: absolute; top: 25%; left: calc(50% + 190px); font-size: 15px; text-transform: capitalize; font-weight: 400;'
28442
28451
  }));
28443
28452
  sliderWrapper.parentElement.classList.add('e-finetune-slider');
28453
+ if (type === 'transparency' && Browser.isDevice) {
28454
+ sliderWrapper.parentElement.classList.add('e-ie-device-transparency-slider');
28455
+ }
28444
28456
  this.updateFinetuneSpan(type);
28445
28457
  }
28446
28458
  }