@syncfusion/ej2-richtexteditor 27.1.57 → 27.2.2

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 (32) hide show
  1. package/dist/ej2-richtexteditor.min.js +2 -2
  2. package/dist/ej2-richtexteditor.umd.min.js +2 -2
  3. package/dist/ej2-richtexteditor.umd.min.js.map +1 -1
  4. package/dist/es6/ej2-richtexteditor.es2015.js +241 -100
  5. package/dist/es6/ej2-richtexteditor.es2015.js.map +1 -1
  6. package/dist/es6/ej2-richtexteditor.es5.js +231 -77
  7. package/dist/es6/ej2-richtexteditor.es5.js.map +1 -1
  8. package/dist/global/ej2-richtexteditor.min.js +2 -2
  9. package/dist/global/ej2-richtexteditor.min.js.map +1 -1
  10. package/dist/global/index.d.ts +1 -1
  11. package/package.json +13 -13
  12. package/src/common/config.d.ts +0 -7
  13. package/src/common/config.js +0 -12
  14. package/src/common/editor-styles.js +1 -1
  15. package/src/common/interface.d.ts +2 -0
  16. package/src/common/util.js +2 -1
  17. package/src/editor-manager/base/constant.d.ts +4 -0
  18. package/src/editor-manager/base/constant.js +4 -0
  19. package/src/editor-manager/plugin/formats.d.ts +1 -0
  20. package/src/editor-manager/plugin/formats.js +25 -0
  21. package/src/editor-manager/plugin/image.js +8 -2
  22. package/src/editor-manager/plugin/inserthtml.d.ts +2 -0
  23. package/src/editor-manager/plugin/inserthtml.js +96 -17
  24. package/src/editor-manager/plugin/nodecutter.js +2 -2
  25. package/src/rich-text-editor/actions/html-editor.js +9 -1
  26. package/src/rich-text-editor/actions/paste-clean-up.js +48 -21
  27. package/src/rich-text-editor/base/rich-text-editor.js +5 -2
  28. package/src/rich-text-editor/renderer/image-module.js +7 -6
  29. package/src/rich-text-editor/renderer/slash-menu.js +9 -0
  30. package/src/rich-text-editor/renderer/table-module.js +1 -1
  31. package/src/selection/selection.d.ts +2 -1
  32. package/src/selection/selection.js +15 -12
@@ -150,6 +150,15 @@ var SlashMenu = /** @class */ (function () {
150
150
  break;
151
151
  }
152
152
  }
153
+ else {
154
+ if (_this.parent.inputElement.classList.contains('e-mention')) {
155
+ var slashMenuPopup = _this.parent.inputElement.ownerDocument.getElementById(_this.parent.inputElement.id + '_slash_menu_popup');
156
+ var isSlashMenuPopupOpen = slashMenuPopup && slashMenuPopup.classList.contains('e-popup-open');
157
+ if (isSlashMenuPopupOpen) {
158
+ _this.mention.hidePopup();
159
+ }
160
+ }
161
+ }
153
162
  }
154
163
  });
155
164
  };
@@ -1068,7 +1068,7 @@ var Table = /** @class */ (function () {
1068
1068
  return;
1069
1069
  }
1070
1070
  var target = e.target || e.targetTouches[0].target;
1071
- var closestTable = closest(target, 'table.e-rte-table, table.e-rte-paste-table');
1071
+ var closestTable = closest(target, 'table.e-rte-table, table.e-rte-paste-table, table.e-rte-custom-table');
1072
1072
  var isResizing = this.parent.contentModule.getEditPanel().querySelectorAll('.e-table-box.e-rbox-select, .e-table-rhelper.e-column-helper, .e-table-rhelper.e-row-helper').length > 0;
1073
1073
  if (!isResizing && !isNOU(this.curTable) && !isNOU(closestTable) && closestTable !== this.curTable &&
1074
1074
  this.parent.contentModule.getEditPanel().contains(closestTable)) {
@@ -1,3 +1,4 @@
1
+ import { ImageOrTableCursor } from '../common';
1
2
  /**
2
3
  * `Selection` module is used to handle RTE Selections.
3
4
  */
@@ -235,5 +236,5 @@ export declare class NodeSelection {
235
236
  setCursorPoint(docElement: Document, element: Element, point: number): void;
236
237
  private isTableOrImageStart;
237
238
  private isTableOrImageEnd;
238
- private processedTableImageCursor;
239
+ processedTableImageCursor(range: Range): ImageOrTableCursor;
239
240
  }
@@ -126,7 +126,8 @@ var NodeSelection = /** @class */ (function () {
126
126
  var tableCursor = this.processedTableImageCursor(range);
127
127
  if (tableCursor.start || tableCursor.end) {
128
128
  if (tableCursor.startName === 'TABLE' || tableCursor.endName === 'TABLE') {
129
- return [];
129
+ var tableNode = tableCursor.start ? tableCursor.startNode : tableCursor.endNode;
130
+ return [tableNode];
130
131
  }
131
132
  }
132
133
  if ((startNode === endNode || (startNode.nodeName === 'BR' && startNode === range.endContainer.childNodes[range.endOffset])) &&
@@ -452,34 +453,36 @@ var NodeSelection = /** @class */ (function () {
452
453
  var customHandlerElements = ['TABLE'];
453
454
  var startContainer = range.startContainer;
454
455
  var startOffset = range.startOffset;
456
+ var startNode = startContainer.childNodes[startOffset];
455
457
  var isCursorAtStart = range.collapsed && (startContainer.nodeType === 1) &&
456
- startContainer.isContentEditable && startContainer.childNodes[startOffset] &&
457
- (customHandlerElements.indexOf(startContainer.childNodes[startOffset].nodeName) > -1);
458
+ startContainer.isContentEditable && startNode &&
459
+ (customHandlerElements.indexOf(startNode.nodeName) > -1);
458
460
  if (isCursorAtStart) {
459
- return { start: isCursorAtStart, startNodeName: startContainer.childNodes[startOffset].nodeName };
461
+ return { start: isCursorAtStart, startNodeName: startNode.nodeName, startNode: startNode };
460
462
  }
461
463
  else {
462
- return { start: false, startNodeName: '' };
464
+ return { start: false, startNodeName: '', startNode: undefined };
463
465
  }
464
466
  };
465
467
  NodeSelection.prototype.isTableOrImageEnd = function (range) {
466
468
  var customHandlerElements = ['TABLE'];
467
469
  var startContainer = range.startContainer;
468
470
  var startOffset = range.startOffset;
471
+ var endNode = startContainer.childNodes[startOffset - 1];
469
472
  var isCursorAtEnd = range.collapsed && (startContainer.nodeType === 1) &&
470
- startContainer.isContentEditable && startContainer.childNodes[startOffset - 1] &&
471
- (customHandlerElements.indexOf(startContainer.childNodes[startOffset - 1].nodeName) > -1);
473
+ startContainer.isContentEditable && endNode &&
474
+ (customHandlerElements.indexOf(endNode.nodeName) > -1);
472
475
  if (isCursorAtEnd) {
473
- return { end: isCursorAtEnd, endNodeName: startContainer.childNodes[startOffset - 1].nodeName };
476
+ return { end: isCursorAtEnd, endNodeName: endNode.nodeName, endNode: endNode };
474
477
  }
475
478
  else {
476
- return { end: false, endNodeName: '' };
479
+ return { end: false, endNodeName: '', endNode: undefined };
477
480
  }
478
481
  };
479
482
  NodeSelection.prototype.processedTableImageCursor = function (range) {
480
- var _a = this.isTableOrImageStart(range), start = _a.start, startNodeName = _a.startNodeName;
481
- var _b = this.isTableOrImageEnd(range), end = _b.end, endNodeName = _b.endNodeName;
482
- return { start: start, startName: startNodeName, end: end, endName: endNodeName };
483
+ var _a = this.isTableOrImageStart(range), start = _a.start, startNodeName = _a.startNodeName, startNode = _a.startNode;
484
+ var _b = this.isTableOrImageEnd(range), end = _b.end, endNodeName = _b.endNodeName, endNode = _b.endNode;
485
+ return { start: start, startName: startNodeName, end: end, endName: endNodeName, startNode: startNode, endNode: endNode };
483
486
  };
484
487
  return NodeSelection;
485
488
  }());