@syncfusion/ej2-richtexteditor 20.2.43 → 20.2.46

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 (42) hide show
  1. package/CHANGELOG.md +22 -0
  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 +121 -37
  5. package/dist/es6/ej2-richtexteditor.es2015.js.map +1 -1
  6. package/dist/es6/ej2-richtexteditor.es5.js +121 -37
  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 +12 -12
  12. package/src/editor-manager/plugin/lists.d.ts +3 -0
  13. package/src/editor-manager/plugin/lists.js +29 -0
  14. package/src/rich-text-editor/actions/base-toolbar.d.ts +6 -1
  15. package/src/rich-text-editor/actions/dropdown-buttons.d.ts +6 -1
  16. package/src/rich-text-editor/actions/enter-key.d.ts +1 -0
  17. package/src/rich-text-editor/actions/enter-key.js +12 -3
  18. package/src/rich-text-editor/actions/full-screen.d.ts +1 -0
  19. package/src/rich-text-editor/actions/full-screen.js +6 -0
  20. package/src/rich-text-editor/actions/markdown-editor.d.ts +1 -0
  21. package/src/rich-text-editor/actions/markdown-editor.js +6 -0
  22. package/src/rich-text-editor/actions/quick-toolbar.d.ts +1 -0
  23. package/src/rich-text-editor/actions/quick-toolbar.js +5 -0
  24. package/src/rich-text-editor/actions/toolbar-action.d.ts +6 -1
  25. package/src/rich-text-editor/actions/toolbar.d.ts +1 -0
  26. package/src/rich-text-editor/actions/toolbar.js +8 -0
  27. package/src/rich-text-editor/base/constant.d.ts +5 -0
  28. package/src/rich-text-editor/base/constant.js +5 -0
  29. package/src/rich-text-editor/base/rich-text-editor.js +8 -13
  30. package/src/rich-text-editor/renderer/dialog-renderer.d.ts +3 -0
  31. package/src/rich-text-editor/renderer/dialog-renderer.js +18 -0
  32. package/src/rich-text-editor/renderer/image-module.d.ts +1 -8
  33. package/src/rich-text-editor/renderer/image-module.js +9 -9
  34. package/src/rich-text-editor/renderer/link-module.d.ts +1 -8
  35. package/src/rich-text-editor/renderer/link-module.js +2 -7
  36. package/src/rich-text-editor/renderer/render.d.ts +1 -6
  37. package/src/rich-text-editor/renderer/render.js +2 -5
  38. package/src/rich-text-editor/renderer/table-module.d.ts +1 -0
  39. package/src/rich-text-editor/renderer/table-module.js +5 -0
  40. package/src/rich-text-editor/renderer/toolbar-renderer.d.ts +6 -1
  41. package/src/rich-text-editor/renderer/view-source.d.ts +1 -0
  42. package/src/rich-text-editor/renderer/view-source.js +5 -0
@@ -444,6 +444,11 @@ var checkUndo = 'checkUndoStack';
444
444
  * @deprecated
445
445
  */
446
446
  var readOnlyMode = 'readOnlyMode';
447
+ /**
448
+ * @hidden
449
+ * @deprecated
450
+ */
451
+ var moduleDestroy = 'moduleDestroy';
447
452
  /**
448
453
  * @hidden
449
454
  * @deprecated
@@ -4672,6 +4677,12 @@ var Toolbar$2 = /** @__PURE__ @class */ (function () {
4672
4677
  }
4673
4678
  }
4674
4679
  };
4680
+ Toolbar$$1.prototype.moduleDestroy = function () {
4681
+ this.parent = null;
4682
+ this.baseToolbar.parent = null;
4683
+ this.toolbarActionModule.parent = null;
4684
+ this.dropDownModule.parent = null;
4685
+ };
4675
4686
  Toolbar$$1.prototype.scrollHandler = function (e) {
4676
4687
  if (!this.parent.inlineMode.enable) {
4677
4688
  if (this.parent.toolbarSettings.enableFloating && this.getDOMVisibility(this.tbElement)) {
@@ -4773,6 +4784,7 @@ var Toolbar$2 = /** @__PURE__ @class */ (function () {
4773
4784
  this.parent.on(mouseDown, this.mouseDownHandler, this);
4774
4785
  this.parent.on(sourceCodeMouseDown, this.mouseDownHandler, this);
4775
4786
  this.parent.on(bindCssClass, this.setCssClass, this);
4787
+ this.parent.on(moduleDestroy, this.moduleDestroy, this);
4776
4788
  if (!this.parent.inlineMode.enable && !isIDevice()) {
4777
4789
  this.parent.on(toolbarClick, this.toolbarClickHandler, this);
4778
4790
  }
@@ -4797,6 +4809,7 @@ var Toolbar$2 = /** @__PURE__ @class */ (function () {
4797
4809
  this.parent.off(mouseDown, this.mouseDownHandler);
4798
4810
  this.parent.off(sourceCodeMouseDown, this.mouseDownHandler);
4799
4811
  this.parent.off(bindCssClass, this.setCssClass);
4812
+ this.parent.off(moduleDestroy, this.moduleDestroy);
4800
4813
  if (!this.parent.inlineMode.enable && !isIDevice()) {
4801
4814
  this.parent.off(toolbarClick, this.toolbarClickHandler);
4802
4815
  }
@@ -6109,6 +6122,9 @@ var QuickToolbar = /** @__PURE__ @class */ (function () {
6109
6122
  }
6110
6123
  this.removeEventListener();
6111
6124
  };
6125
+ QuickToolbar.prototype.moduleDestroy = function () {
6126
+ this.parent = null;
6127
+ };
6112
6128
  QuickToolbar.prototype.wireInlineQTBarEvents = function () {
6113
6129
  this.parent.on(mouseUp, this.mouseUpHandler, this);
6114
6130
  this.parent.on(mouseDown, this.inlineQTBarMouseDownHandler, this);
@@ -6164,6 +6180,7 @@ var QuickToolbar = /** @__PURE__ @class */ (function () {
6164
6180
  this.parent.on(keyDown, this.onKeyDown, this);
6165
6181
  this.parent.on(rtlMode, this.setRtl, this);
6166
6182
  this.parent.on(bindCssClass, this.setCssClass, this);
6183
+ this.parent.on(moduleDestroy, this.moduleDestroy, this);
6167
6184
  };
6168
6185
  QuickToolbar.prototype.onKeyDown = function (e) {
6169
6186
  var args = e.args;
@@ -6233,6 +6250,7 @@ var QuickToolbar = /** @__PURE__ @class */ (function () {
6233
6250
  this.parent.off(keyDown, this.onKeyDown);
6234
6251
  this.parent.off(rtlMode, this.setRtl);
6235
6252
  this.parent.off(bindCssClass, this.setCssClass);
6253
+ this.parent.off(moduleDestroy, this.moduleDestroy);
6236
6254
  };
6237
6255
  /**
6238
6256
  * Called internally if any of the property value changed.
@@ -9359,6 +9377,10 @@ var MarkdownEditor = /** @__PURE__ @class */ (function () {
9359
9377
  MarkdownEditor.prototype.destroy = function () {
9360
9378
  this.removeEventListener();
9361
9379
  };
9380
+ MarkdownEditor.prototype.moduleDestroy = function () {
9381
+ this.parent = null;
9382
+ this.toolbarUpdate.parent = null;
9383
+ };
9362
9384
  MarkdownEditor.prototype.addEventListener = function () {
9363
9385
  if (this.parent.isDestroyed) {
9364
9386
  return;
@@ -9374,6 +9396,7 @@ var MarkdownEditor = /** @__PURE__ @class */ (function () {
9374
9396
  this.parent.on(selectionSave, this.onSelectionSave, this);
9375
9397
  this.parent.on(selectionRestore, this.onSelectionRestore, this);
9376
9398
  this.parent.on(readOnlyMode, this.updateReadOnly, this);
9399
+ this.parent.on(moduleDestroy, this.moduleDestroy, this);
9377
9400
  };
9378
9401
  MarkdownEditor.prototype.updateReadOnly = function () {
9379
9402
  if (this.parent.readonly) {
@@ -9445,6 +9468,7 @@ var MarkdownEditor = /** @__PURE__ @class */ (function () {
9445
9468
  this.parent.off(selectionSave, this.onSelectionSave);
9446
9469
  this.parent.off(selectionRestore, this.onSelectionRestore);
9447
9470
  this.parent.off(readOnlyMode, this.updateReadOnly);
9471
+ this.parent.off(moduleDestroy, this.moduleDestroy);
9448
9472
  };
9449
9473
  MarkdownEditor.prototype.render = function () {
9450
9474
  this.contentRenderer = this.renderFactory.getRenderer(RenderType.Content);
@@ -10839,6 +10863,7 @@ var Lists = /** @__PURE__ @class */ (function () {
10839
10863
  Lists.prototype.addEventListener = function () {
10840
10864
  this.parent.observer.on(LIST_TYPE, this.applyListsHandler, this);
10841
10865
  this.parent.observer.on(KEY_DOWN_HANDLER, this.keyDownHandler, this);
10866
+ this.parent.observer.on(KEY_UP_HANDLER, this.onKeyUp, this);
10842
10867
  this.parent.observer.on(SPACE_ACTION, this.spaceKeyAction, this);
10843
10868
  };
10844
10869
  Lists.prototype.testList = function (elem) {
@@ -10991,6 +11016,7 @@ var Lists = /** @__PURE__ @class */ (function () {
10991
11016
  }
10992
11017
  }
10993
11018
  this.removeList(range, e);
11019
+ this.firstListBackSpace(range, e);
10994
11020
  };
10995
11021
  Lists.prototype.removeList = function (range, e) {
10996
11022
  var startNode = this.parent.domNode.getSelectedNode(range.startContainer, range.startOffset);
@@ -11016,6 +11042,33 @@ var Lists = /** @__PURE__ @class */ (function () {
11016
11042
  e.event.preventDefault();
11017
11043
  }
11018
11044
  };
11045
+ Lists.prototype.onKeyUp = function () {
11046
+ if (!isNullOrUndefined(this.commonLIParent) && !isNullOrUndefined(this.commonLIParent.querySelector('.removeList'))) {
11047
+ var currentLIElem = this.commonLIParent.querySelector('.removeList');
11048
+ while (!isNullOrUndefined(currentLIElem.firstChild)) {
11049
+ this.parent.domNode.insertAfter(currentLIElem.firstChild, currentLIElem);
11050
+ }
11051
+ detach(currentLIElem);
11052
+ }
11053
+ };
11054
+ Lists.prototype.firstListBackSpace = function (range, e) {
11055
+ var startNode = this.parent.domNode.getSelectedNode(range.startContainer, range.startOffset);
11056
+ if (!isNullOrUndefined(startNode.closest('OL'))) {
11057
+ this.commonLIParent = startNode.closest('OL');
11058
+ }
11059
+ else if (!isNullOrUndefined(startNode.closest('UL'))) {
11060
+ this.commonLIParent = startNode.closest('UL');
11061
+ }
11062
+ if (startNode.nodeName === 'LI' && range.startOffset === 0 && range.endOffset === 0 &&
11063
+ isNullOrUndefined(startNode.previousSibling) && !isNullOrUndefined(this.commonLIParent) && isNullOrUndefined(this.commonLIParent.previousSibling) &&
11064
+ (isNullOrUndefined(this.commonLIParent.parentElement.closest('OL')) && isNullOrUndefined(this.commonLIParent.parentElement.closest('UL')) &&
11065
+ isNullOrUndefined(this.commonLIParent.parentElement.closest('LI')))) {
11066
+ var currentElem = createElement('P');
11067
+ currentElem.innerHTML = '​';
11068
+ startNode.classList.add('removeList');
11069
+ this.commonLIParent.parentElement.insertBefore(currentElem, this.commonLIParent);
11070
+ }
11071
+ };
11019
11072
  Lists.prototype.keyDownHandler = function (e) {
11020
11073
  if (e.event.which === 13) {
11021
11074
  this.enterList(e);
@@ -19693,6 +19746,7 @@ var FullScreen = /** @__PURE__ @class */ (function () {
19693
19746
  baseToolbar: _this.parent.getBaseToolbarObject()
19694
19747
  });
19695
19748
  }
19749
+ _this.parent.refreshUI();
19696
19750
  _this.parent.trigger(actionComplete, { requestType: 'Maximize', targetItem: 'Maximize', args: event });
19697
19751
  }
19698
19752
  });
@@ -19778,10 +19832,12 @@ var FullScreen = /** @__PURE__ @class */ (function () {
19778
19832
  FullScreen.prototype.addEventListener = function () {
19779
19833
  this.parent.on(keyDown, this.onKeyDown, this);
19780
19834
  this.parent.on(destroy, this.destroy, this);
19835
+ this.parent.on(moduleDestroy, this.moduleDestroy, this);
19781
19836
  };
19782
19837
  FullScreen.prototype.removeEventListener = function () {
19783
19838
  this.parent.off(keyDown, this.onKeyDown);
19784
19839
  this.parent.off(destroy, this.destroy);
19840
+ this.parent.off(moduleDestroy, this.moduleDestroy);
19785
19841
  };
19786
19842
  /**
19787
19843
  * destroy method
@@ -19800,6 +19856,9 @@ var FullScreen = /** @__PURE__ @class */ (function () {
19800
19856
  }
19801
19857
  this.removeEventListener();
19802
19858
  };
19859
+ FullScreen.prototype.moduleDestroy = function () {
19860
+ this.parent = null;
19861
+ };
19803
19862
  return FullScreen;
19804
19863
  }());
19805
19864
 
@@ -19916,11 +19975,6 @@ var Render = /** @__PURE__ @class */ (function () {
19916
19975
  Render.prototype.destroy = function () {
19917
19976
  this.removeEventListener();
19918
19977
  };
19919
- /**
19920
- * Clears the Render Module.
19921
- *
19922
- * @returns {void}
19923
- */
19924
19978
  Render.prototype.moduleDestroy = function () {
19925
19979
  this.parent = null;
19926
19980
  };
@@ -19930,6 +19984,7 @@ var Render = /** @__PURE__ @class */ (function () {
19930
19984
  }
19931
19985
  this.parent.on(modelChanged, this.refresh, this);
19932
19986
  this.parent.on(keyUp, this.keyUp, this);
19987
+ this.parent.on(moduleDestroy, this.moduleDestroy, this);
19933
19988
  };
19934
19989
  Render.prototype.removeEventListener = function () {
19935
19990
  if (this.parent.isDestroyed) {
@@ -19937,6 +19992,7 @@ var Render = /** @__PURE__ @class */ (function () {
19937
19992
  }
19938
19993
  this.parent.off(modelChanged, this.refresh);
19939
19994
  this.parent.off(keyUp, this.keyUp);
19995
+ this.parent.off(moduleDestroy, this.moduleDestroy);
19940
19996
  };
19941
19997
  Render.prototype.keyUp = function (e) {
19942
19998
  if (this.parent.editorMode === 'HTML') {
@@ -19998,6 +20054,7 @@ var Link = /** @__PURE__ @class */ (function () {
19998
20054
  this.parent.on(editAreaClick, this.editAreaClickHandler, this);
19999
20055
  this.parent.on(bindCssClass, this.setCssClass, this);
20000
20056
  this.parent.on(destroy, this.destroy, this);
20057
+ this.parent.on(moduleDestroy, this.moduleDestroy, this);
20001
20058
  };
20002
20059
  Link.prototype.onToolbarAction = function (args) {
20003
20060
  var item = args.args.item;
@@ -20031,6 +20088,7 @@ var Link = /** @__PURE__ @class */ (function () {
20031
20088
  this.parent.off(editAreaClick, this.editAreaClickHandler);
20032
20089
  this.parent.off(bindCssClass, this.setCssClass);
20033
20090
  this.parent.off(destroy, this.destroy);
20091
+ this.parent.off(moduleDestroy, this.moduleDestroy);
20034
20092
  };
20035
20093
  Link.prototype.onIframeMouseDown = function () {
20036
20094
  if (this.dialogObj) {
@@ -20481,13 +20539,6 @@ var Link = /** @__PURE__ @class */ (function () {
20481
20539
  Link.prototype.destroy = function () {
20482
20540
  this.removeEventListener();
20483
20541
  };
20484
- /**
20485
- * Clears the Link Module.
20486
- *
20487
- * @returns {void}
20488
- * @hidden
20489
- * @deprecated
20490
- */
20491
20542
  Link.prototype.moduleDestroy = function () {
20492
20543
  this.parent = null;
20493
20544
  };
@@ -20546,6 +20597,7 @@ var Image = /** @__PURE__ @class */ (function () {
20546
20597
  this.parent.on(paste, this.imagePaste, this);
20547
20598
  this.parent.on(bindCssClass, this.setCssClass, this);
20548
20599
  this.parent.on(destroy, this.removeEventListener, this);
20600
+ this.parent.on(moduleDestroy, this.moduleDestroy, this);
20549
20601
  };
20550
20602
  Image.prototype.removeEventListener = function () {
20551
20603
  if (this.parent.isDestroyed) {
@@ -20573,6 +20625,7 @@ var Image = /** @__PURE__ @class */ (function () {
20573
20625
  this.parent.off(paste, this.imagePaste);
20574
20626
  this.parent.off(bindCssClass, this.setCssClass);
20575
20627
  this.parent.off(destroy, this.removeEventListener);
20628
+ this.parent.off(moduleDestroy, this.moduleDestroy);
20576
20629
  var dropElement = this.parent.iframeSettings.enable ? this.parent.inputElement.ownerDocument
20577
20630
  : this.parent.inputElement;
20578
20631
  dropElement.removeEventListener('drop', this.dragDrop.bind(this), true);
@@ -20947,6 +21000,10 @@ var Image = /** @__PURE__ @class */ (function () {
20947
21000
  if (this.imgEle.offsetWidth >= this.parent.getInsertImgMaxWidth()) {
20948
21001
  this.imgEle.style.maxHeight = this.imgEle.offsetHeight + 'px';
20949
21002
  }
21003
+ else if (isNullOrUndefined(this.parent.insertImageSettings.maxHeight)) {
21004
+ this.imgEle.style.maxHeight = '';
21005
+ }
21006
+ this.imgEle.style.maxWidth = this.parent.getInsertImgMaxWidth() + 'px';
20950
21007
  var pageX = this.getPointX(e);
20951
21008
  var pageY = this.getPointY(e);
20952
21009
  var mouseX = (this.resizeBtnStat.botLeft || this.resizeBtnStat.topLeft) ? -(pageX - this.pageX) : (pageX - this.pageX);
@@ -21901,6 +21958,9 @@ var Image = /** @__PURE__ @class */ (function () {
21901
21958
  if (target.nodeName === 'IMG') {
21902
21959
  this.imgEle = target;
21903
21960
  }
21961
+ if (!this.parent) {
21962
+ return;
21963
+ }
21904
21964
  if (target.nodeName !== '#document') {
21905
21965
  this.parent.currentTarget = e.target;
21906
21966
  }
@@ -22788,15 +22848,6 @@ var Image = /** @__PURE__ @class */ (function () {
22788
22848
  this.prevSelectedImgEle = undefined;
22789
22849
  this.removeEventListener();
22790
22850
  };
22791
- /* eslint-disable */
22792
- /**
22793
- * Clears the ImageModule.
22794
- *
22795
- * @returns {void}
22796
- * @hidden
22797
- * @deprecated
22798
- */
22799
- /* eslint-enable */
22800
22851
  Image.prototype.moduleDestroy = function () {
22801
22852
  this.parent = null;
22802
22853
  };
@@ -22836,6 +22887,7 @@ var ViewSource = /** @__PURE__ @class */ (function () {
22836
22887
  this.parent.on(initialEnd, this.onInitialEnd, this);
22837
22888
  this.parent.on(updateSource, this.updateSourceCode, this);
22838
22889
  this.parent.on(destroy, this.destroy, this);
22890
+ this.parent.on(moduleDestroy, this.moduleDestroy, this);
22839
22891
  };
22840
22892
  ViewSource.prototype.onInitialEnd = function () {
22841
22893
  this.parent.formatter.editorManager.observer.on(KEY_DOWN_HANDLER, this.onKeyDown, this);
@@ -22846,6 +22898,7 @@ var ViewSource = /** @__PURE__ @class */ (function () {
22846
22898
  this.parent.off(updateSource, this.updateSourceCode);
22847
22899
  this.parent.off(initialEnd, this.onInitialEnd);
22848
22900
  this.parent.off(destroy, this.destroy);
22901
+ this.parent.off(moduleDestroy, this.moduleDestroy);
22849
22902
  this.parent.formatter.editorManager.observer.off(KEY_DOWN_HANDLER, this.onKeyDown);
22850
22903
  };
22851
22904
  ViewSource.prototype.getSourceCode = function () {
@@ -23069,6 +23122,9 @@ var ViewSource = /** @__PURE__ @class */ (function () {
23069
23122
  ViewSource.prototype.destroy = function () {
23070
23123
  this.removeEventListener();
23071
23124
  };
23125
+ ViewSource.prototype.moduleDestroy = function () {
23126
+ this.parent = null;
23127
+ };
23072
23128
  return ViewSource;
23073
23129
  }());
23074
23130
 
@@ -23108,6 +23164,7 @@ var Table = /** @__PURE__ @class */ (function () {
23108
23164
  this.parent.on(mouseUp, this.selectionTable, this);
23109
23165
  this.parent.on(bindCssClass, this.setCssClass, this);
23110
23166
  this.parent.on(destroy, this.destroy, this);
23167
+ this.parent.on(moduleDestroy, this.moduleDestroy, this);
23111
23168
  };
23112
23169
  Table.prototype.removeEventListener = function () {
23113
23170
  if (this.parent.isDestroyed) {
@@ -23129,6 +23186,7 @@ var Table = /** @__PURE__ @class */ (function () {
23129
23186
  this.parent.off(mouseUp, this.selectionTable);
23130
23187
  this.parent.off(bindCssClass, this.setCssClass);
23131
23188
  this.parent.off(destroy, this.destroy);
23189
+ this.parent.off(moduleDestroy, this.moduleDestroy);
23132
23190
  };
23133
23191
  Table.prototype.updateCss = function (currentObj, e) {
23134
23192
  if (currentObj && e.cssClass) {
@@ -24424,6 +24482,9 @@ var Table = /** @__PURE__ @class */ (function () {
24424
24482
  Table.prototype.destroy = function () {
24425
24483
  this.removeEventListener();
24426
24484
  };
24485
+ Table.prototype.moduleDestroy = function () {
24486
+ this.parent = null;
24487
+ };
24427
24488
  /**
24428
24489
  * For internal use only - Get the module name.
24429
24490
  *
@@ -24441,7 +24502,22 @@ var Table = /** @__PURE__ @class */ (function () {
24441
24502
  var DialogRenderer = /** @__PURE__ @class */ (function () {
24442
24503
  function DialogRenderer(parent) {
24443
24504
  this.parent = parent;
24505
+ this.addEventListener();
24444
24506
  }
24507
+ DialogRenderer.prototype.addEventListener = function () {
24508
+ if (this.parent.isDestroyed) {
24509
+ return;
24510
+ }
24511
+ this.parent.on(moduleDestroy, this.moduleDestroy, this);
24512
+ this.parent.on(destroy, this.removeEventListener, this);
24513
+ };
24514
+ DialogRenderer.prototype.removeEventListener = function () {
24515
+ if (this.parent.isDestroyed) {
24516
+ return;
24517
+ }
24518
+ this.parent.off(destroy, this.removeEventListener);
24519
+ this.parent.off(moduleDestroy, this.moduleDestroy);
24520
+ };
24445
24521
  /**
24446
24522
  * dialog render method
24447
24523
  *
@@ -24494,6 +24570,9 @@ var DialogRenderer = /** @__PURE__ @class */ (function () {
24494
24570
  DialogRenderer.prototype.close = function (args) {
24495
24571
  this.parent.trigger(dialogClose, args);
24496
24572
  };
24573
+ DialogRenderer.prototype.moduleDestroy = function () {
24574
+ this.parent = null;
24575
+ };
24497
24576
  return DialogRenderer;
24498
24577
  }());
24499
24578
 
@@ -25145,13 +25224,18 @@ var EnterKeyAction = /** @__PURE__ @class */ (function () {
25145
25224
  EnterKeyAction.prototype.addEventListener = function () {
25146
25225
  this.parent.on(enterHandler, this.enterHandler, this);
25147
25226
  this.parent.on(destroy, this.destroy, this);
25227
+ this.parent.on(moduleDestroy, this.moduleDestroy, this);
25148
25228
  };
25149
25229
  EnterKeyAction.prototype.destroy = function () {
25150
25230
  this.removeEventListener();
25151
25231
  };
25232
+ EnterKeyAction.prototype.moduleDestroy = function () {
25233
+ this.parent = null;
25234
+ };
25152
25235
  EnterKeyAction.prototype.removeEventListener = function () {
25153
25236
  this.parent.off(enterHandler, this.enterHandler);
25154
25237
  this.parent.off(destroy, this.destroy);
25238
+ this.parent.off(moduleDestroy, this.moduleDestroy);
25155
25239
  };
25156
25240
  EnterKeyAction.prototype.getRangeNode = function () {
25157
25241
  this.range = this.parent.getRange();
@@ -25172,7 +25256,7 @@ var EnterKeyAction = /** @__PURE__ @class */ (function () {
25172
25256
  blockElement = curElement;
25173
25257
  curElement = curElement.parentElement;
25174
25258
  }
25175
- isTableEnter = blockElement.tagName === 'TD' ? false : true;
25259
+ isTableEnter = blockElement.tagName === 'TD' || blockElement.tagName === 'TBODY' ? false : true;
25176
25260
  }
25177
25261
  if (e.args.which === 13 && e.args.code === 'Enter') {
25178
25262
  if (isNullOrUndefined(this.startNode.closest('LI')) && isNullOrUndefined(this.endNode.closest('LI')) && isTableEnter &&
@@ -25258,7 +25342,10 @@ var EnterKeyAction = /** @__PURE__ @class */ (function () {
25258
25342
  isFocusedFirst = true;
25259
25343
  }
25260
25344
  _this.removeBRElement(nearBlockNode);
25261
- if (((_this.range.startOffset === 0 && _this.range.endOffset === 0) || isFocusedFirst) &&
25345
+ var fireFoxEnterAtMiddle = Browser.userAgent.indexOf('Firefox') != -1 && _this.range.startOffset === 0 && _this.range.startContainer === _this.range.endContainer &&
25346
+ _this.range.startContainer.nodeName === '#text' && !_this.parent.formatter.editorManager.domNode.isBlockNode(_this.range.startContainer.previousSibling) &&
25347
+ _this.range.startContainer.parentElement === _this.range.startContainer.previousSibling.parentElement;
25348
+ if (!fireFoxEnterAtMiddle && ((_this.range.startOffset === 0 && _this.range.endOffset === 0) || isFocusedFirst) &&
25262
25349
  !(!isNullOrUndefined(_this.range.startContainer.previousSibling) &&
25263
25350
  (_this.range.startContainer.previousSibling.nodeName === 'IMG' || _this.range.startContainer.previousSibling.nodeName === 'BR'))) {
25264
25351
  var isNearBlockLengthZero = void 0;
@@ -25269,7 +25356,8 @@ var EnterKeyAction = /** @__PURE__ @class */ (function () {
25269
25356
  isNearBlockLengthZero = false;
25270
25357
  }
25271
25358
  else {
25272
- if (nearBlockNode.textContent.trim().length !== 0) {
25359
+ if (nearBlockNode.textContent.trim().length !== 0 ||
25360
+ nearBlockNode.childNodes[0].nodeName === 'IMG') {
25273
25361
  newElem = _this.parent.formatter.editorManager.nodeCutter.SplitNode(_this.range, nearBlockNode, false).cloneNode(true);
25274
25362
  isNearBlockLengthZero = false;
25275
25363
  }
@@ -25947,6 +26035,7 @@ var RichTextEditor = /** @__PURE__ @class */ (function (_super) {
25947
26035
  var currentEndContainer = range.endContainer;
25948
26036
  var currentStartOffset = range.startOffset;
25949
26037
  var isSameContainer = currentStartContainer === currentEndContainer ? true : false;
26038
+ var currentEndOffset = currentEndContainer.textContent.length;
25950
26039
  var endNode = range.endContainer.nodeName === '#text' ? range.endContainer.parentElement :
25951
26040
  range.endContainer;
25952
26041
  var closestLI = closest(endNode, 'LI');
@@ -25962,7 +26051,7 @@ var RichTextEditor = /** @__PURE__ @class */ (function (_super) {
25962
26051
  while (currentLastElem.lastChild !== null && currentLastElem.nodeName !== '#text') {
25963
26052
  currentLastElem = currentLastElem.lastChild;
25964
26053
  }
25965
- this.formatter.editorManager.nodeSelection.setSelectionText(this.contentModule.getDocument(), isSameContainer ? (currentLastElem.nodeName === 'BR' && !isNullOrUndefined(currentLastElem.previousSibling) ? currentLastElem.previousSibling : currentLastElem) : currentStartContainer, currentLastElem, currentStartOffset, (currentLastElem.nodeName === 'BR' ? 0 : currentLastElem.textContent.length));
26054
+ this.formatter.editorManager.nodeSelection.setSelectionText(this.contentModule.getDocument(), isSameContainer ? currentStartContainer : (currentLastElem.nodeName === 'BR' && !isNullOrUndefined(currentLastElem.previousSibling) ? currentLastElem.previousSibling : currentStartContainer), currentEndContainer, currentStartOffset, (currentLastElem.nodeName === 'BR' ? 0 : currentEndOffset));
25966
26055
  }
25967
26056
  };
25968
26057
  /**
@@ -26305,15 +26394,7 @@ var RichTextEditor = /** @__PURE__ @class */ (function (_super) {
26305
26394
  if (!isNullOrUndefined(this.toolbarModule)) {
26306
26395
  this.toolbarModule.destroy();
26307
26396
  }
26308
- if (!isNullOrUndefined(this.imageModule)) {
26309
- this.imageModule.moduleDestroy();
26310
- }
26311
- if (!isNullOrUndefined(this.linkModule)) {
26312
- this.linkModule.moduleDestroy();
26313
- }
26314
- if (!isNullOrUndefined(this.renderModule)) {
26315
- this.renderModule.moduleDestroy();
26316
- }
26397
+ this.notify(moduleDestroy, {});
26317
26398
  return;
26318
26399
  }
26319
26400
  this.notify(destroy, {});
@@ -26657,7 +26738,7 @@ var RichTextEditor = /** @__PURE__ @class */ (function (_super) {
26657
26738
  if (this.valueContainer) {
26658
26739
  this.valueContainer.value = (this.enableHtmlEncode) ? this.value : value;
26659
26740
  }
26660
- if (this.editorMode === 'HTML' && this.inputElement && this.inputElement.innerHTML.trim() !== value.trim()) {
26741
+ if (this.editorMode === 'HTML' && this.inputElement && this.inputElement.innerHTML.replace('&', '&').trim() !== value.trim()) {
26661
26742
  this.inputElement.innerHTML = value;
26662
26743
  }
26663
26744
  else if (this.editorMode === 'Markdown' && this.inputElement
@@ -27552,7 +27633,10 @@ var RichTextEditor = /** @__PURE__ @class */ (function (_super) {
27552
27633
  RichTextEditor.prototype.restrict = function (e) {
27553
27634
  if (this.maxLength >= 0) {
27554
27635
  var element = this.editorMode === 'Markdown' ? this.contentModule.getText() :
27555
- e.currentTarget.textContent;
27636
+ (e && e.currentTarget.textContent);
27637
+ if (!element) {
27638
+ return;
27639
+ }
27556
27640
  var array = [8, 16, 17, 37, 38, 39, 40, 46, 65];
27557
27641
  var arrayKey = void 0;
27558
27642
  for (var i = 0; i <= array.length - 1; i++) {
@@ -27929,5 +28013,5 @@ var RichTextEditor = /** @__PURE__ @class */ (function (_super) {
27929
28013
  * Rich Text Editor component exported items
27930
28014
  */
27931
28015
 
27932
- export { Toolbar$2 as Toolbar, KeyboardEvents$1 as KeyboardEvents, BaseToolbar, BaseQuickToolbar, QuickToolbar, Count, ColorPickerInput, MarkdownToolbarStatus, ExecCommandCallBack, ToolbarAction, MarkdownEditor, HtmlEditor, PasteCleanup, Resize, DropDownButtons, FileManager$1 as FileManager, FullScreen, setAttributes, HtmlToolbarStatus, XhtmlValidation, HTMLFormatter, Formatter, MarkdownFormatter, ContentRender, Render, ToolbarRenderer, Link, Image, ViewSource, Table, DialogRenderer, IframeContentRender, MarkdownRender, PopupRenderer, RichTextEditor, RenderType, ToolbarType, DialogType, executeGroup, created, destroyed, load, initialLoad, contentChanged, initialEnd, iframeMouseDown, destroy, toolbarClick, toolbarRefresh, refreshBegin, toolbarUpdated, bindOnEnd, renderColorPicker, htmlToolbarClick, markdownToolbarClick, destroyColorPicker, modelChanged, keyUp, keyDown, mouseUp, toolbarCreated, toolbarRenderComplete, enableFullScreen, disableFullScreen, dropDownSelect, beforeDropDownItemRender, execCommandCallBack, imageToolbarAction, linkToolbarAction, windowResize, resizeStart, onResize, resizeStop, undo, redo, insertLink, unLink, editLink, openLink, actionBegin, actionComplete, updatedToolbarStatus, actionSuccess, updateToolbarItem, insertImage, insertCompleted, imageLeft, imageRight, imageCenter, imageBreak, imageInline, imageLink, imageAlt, imageDelete, imageCaption, imageSize, sourceCode, updateSource, toolbarOpen, beforeDropDownOpen, selectionSave, selectionRestore, expandPopupClick, count, contentFocus, contentBlur, mouseDown, sourceCodeMouseDown, editAreaClick, scroll, contentscroll, colorPickerChanged, tableColorPickerChanged, focusChange, selectAll$1 as selectAll, selectRange, getSelectedHtml, renderInlineToolbar, paste, imgModule, rtlMode, createTable, docClick, tableToolbarAction, checkUndo, readOnlyMode, pasteClean, enterHandler, beforeDialogOpen, clearDialogObj, dialogOpen, beforeDialogClose, dialogClose, beforeQuickToolbarOpen, quickToolbarOpen, quickToolbarClose, popupHide, imageSelected, imageUploading, imageUploadSuccess, imageUploadFailed, imageRemoving, mediaSelected, mediaUploading, mediaUploadSuccess, mediaUploadFailed, mediaRemoving, afterImageDelete, afterMediaDelete, drop, xhtmlValidation, beforeImageUpload, beforeMediaUpload, resizeInitialized, renderFileManager, beforeImageDrop, dynamicModule, beforePasteCleanup, afterPasteCleanup, updateTbItemsStatus, showLinkDialog, closeLinkDialog, showImageDialog, closeImageDialog, closeAudioDialog, showTableDialog, closeTableDialog, bindCssClass, blockEmptyNodes, inlineEmptyNodes, CLS_RTE, CLS_RTL, CLS_CONTENT, CLS_DISABLED, CLS_SCRIPT_SHEET, CLS_STYLE_SHEET, CLS_TOOLBAR, CLS_TB_FIXED, CLS_TB_FLOAT, CLS_TB_ABS_FLOAT, CLS_INLINE, CLS_TB_INLINE, CLS_RTE_EXPAND_TB, CLS_FULL_SCREEN, CLS_QUICK_TB, CLS_POP, CLS_TB_STATIC, CLS_QUICK_POP, CLS_QUICK_DROPDOWN, CLS_IMAGE_POP, CLS_INLINE_POP, CLS_INLINE_DROPDOWN, CLS_DROPDOWN_POPUP, CLS_DROPDOWN_ICONS, CLS_DROPDOWN_ITEMS, CLS_DROPDOWN_BTN, CLS_RTE_CONTENT, CLS_TB_ITEM, CLS_TB_EXTENDED, CLS_TB_WRAP, CLS_POPUP, CLS_SEPARATOR, CLS_MINIMIZE, CLS_MAXIMIZE, CLS_BACK, CLS_SHOW, CLS_HIDE, CLS_VISIBLE, CLS_FOCUS, CLS_RM_WHITE_SPACE, CLS_IMGRIGHT, CLS_IMGLEFT, CLS_IMGCENTER, CLS_IMGBREAK, CLS_CAPTION, CLS_RTE_CAPTION, CLS_CAPINLINE, CLS_IMGINLINE, CLS_COUNT, CLS_WARNING, CLS_ERROR, CLS_ICONS, CLS_ACTIVE, CLS_EXPAND_OPEN, CLS_RTE_ELEMENTS, CLS_TB_BTN, CLS_HR_SEPARATOR, CLS_TB_IOS_FIX, CLS_LIST_PRIMARY_CONTENT, CLS_NUMBERFORMATLIST_TB_BTN, CLS_BULLETFORMATLIST_TB_BTN, CLS_FORMATS_TB_BTN, CLS_FONT_NAME_TB_BTN, CLS_FONT_SIZE_TB_BTN, CLS_ALIGN_TB_BTN, CLS_FONT_COLOR_TARGET, CLS_BACKGROUND_COLOR_TARGET, CLS_COLOR_CONTENT, CLS_FONT_COLOR_DROPDOWN, CLS_BACKGROUND_COLOR_DROPDOWN, CLS_COLOR_PALETTE, CLS_FONT_COLOR_PICKER, CLS_BACKGROUND_COLOR_PICKER, CLS_RTE_READONLY, CLS_TABLE_SEL, CLS_TB_DASH_BOR, CLS_TB_ALT_BOR, CLS_TB_COL_RES, CLS_TB_ROW_RES, CLS_TB_BOX_RES, CLS_RTE_HIDDEN, CLS_RTE_PASTE_KEEP_FORMAT, CLS_RTE_PASTE_REMOVE_FORMAT, CLS_RTE_PASTE_PLAIN_FORMAT, CLS_RTE_PASTE_OK, CLS_RTE_PASTE_CANCEL, CLS_RTE_DIALOG_MIN_HEIGHT, CLS_RTE_RES_HANDLE, CLS_RTE_RES_EAST, CLS_RTE_IMAGE, CLS_RESIZE, CLS_IMG_FOCUS, CLS_RTE_DRAG_IMAGE, CLS_RTE_UPLOAD_POPUP, CLS_POPUP_OPEN, CLS_IMG_RESIZE, CLS_DROPAREA, CLS_IMG_INNER, CLS_UPLOAD_FILES, CLS_RTE_DIALOG_UPLOAD, CLS_RTE_RES_CNT, CLS_CUSTOM_TILE, CLS_NOCOLOR_ITEM, CLS_TABLE, CLS_TABLE_BORDER, CLS_RTE_TABLE_RESIZE, CLS_RTE_FIXED_TB_EXPAND, CLS_RTE_TB_ENABLED, CLS_RTE_RES_WEST, getIndex, hasClass, getDropDownValue, isIDevice, getFormattedFontSize, pageYOffset, getTooltipText, setToolbarStatus, getCollection, getTBarItemsIndex, updateUndoRedoStatus, dispatchEvent, parseHtml, getTextNodesUnder, toObjectLowerCase, getEditValue, updateTextNode, getDefaultValue, isEditableValueEmpty, decode, sanitizeHelper, convertToBlob, getLocaleFontFormat, updateDropDownFontFormatLocale, ServiceLocator, RendererFactory, EditorManager, IMAGE, TABLE, LINK, INSERT_ROW, INSERT_COLUMN, DELETEROW, DELETECOLUMN, REMOVETABLE, TABLEHEADER, TABLE_VERTICAL_ALIGN, TABLE_MERGE, TABLE_VERTICAL_SPLIT, TABLE_HORIZONTAL_SPLIT, TABLE_MOVE, ALIGNMENT_TYPE, INDENT_TYPE, DEFAULT_TAG, BLOCK_TAGS, IGNORE_BLOCK_TAGS, TABLE_BLOCK_TAGS, SELECTION_TYPE, INSERTHTML_TYPE, INSERT_TEXT_TYPE, CLEAR_TYPE, SELF_CLOSING_TAGS, CLASS_IMAGE_RIGHT, CLASS_IMAGE_LEFT, CLASS_IMAGE_CENTER, CLASS_IMAGE_BREAK, CLASS_CAPTION, CLASS_RTE_CAPTION, CLASS_CAPTION_INLINE, CLASS_IMAGE_INLINE, Lists, markerClassName, DOMNode, Alignments, Indents, Formats, LinkCommand, InsertMethods, InsertTextExec, InsertHtmlExec, InsertHtml, IsFormatted, MsWordPaste, NodeCutter, ImageCommand, SelectionCommands, SelectionBasedExec, ClearFormatExec, UndoRedoManager, TableCommand, statusCollection, ToolbarStatus, NodeSelection, MarkdownParser, LISTS_COMMAND, selectionCommand, LINK_COMMAND, CLEAR_COMMAND, MD_TABLE, INSERT_TEXT_COMMAND, ClearFormat, MDLists, MDFormats, MarkdownSelection, UndoRedoCommands, MDSelectionFormats, MDLink, MDTable, markdownFormatTags, markdownSelectionTags, markdownListsTags, htmlKeyConfig, markdownKeyConfig, pasteCleanupGroupingTags, listConversionFilters, selfClosingTags, KEY_DOWN, ACTION, FORMAT_TYPE, KEY_DOWN_HANDLER, LIST_TYPE, KEY_UP_HANDLER, KEY_UP, MODEL_CHANGED_PLUGIN, MODEL_CHANGED, MS_WORD_CLEANUP_PLUGIN, MS_WORD_CLEANUP, ON_BEGIN, SPACE_ACTION };
28016
+ export { Toolbar$2 as Toolbar, KeyboardEvents$1 as KeyboardEvents, BaseToolbar, BaseQuickToolbar, QuickToolbar, Count, ColorPickerInput, MarkdownToolbarStatus, ExecCommandCallBack, ToolbarAction, MarkdownEditor, HtmlEditor, PasteCleanup, Resize, DropDownButtons, FileManager$1 as FileManager, FullScreen, setAttributes, HtmlToolbarStatus, XhtmlValidation, HTMLFormatter, Formatter, MarkdownFormatter, ContentRender, Render, ToolbarRenderer, Link, Image, ViewSource, Table, DialogRenderer, IframeContentRender, MarkdownRender, PopupRenderer, RichTextEditor, RenderType, ToolbarType, DialogType, executeGroup, created, destroyed, load, initialLoad, contentChanged, initialEnd, iframeMouseDown, destroy, toolbarClick, toolbarRefresh, refreshBegin, toolbarUpdated, bindOnEnd, renderColorPicker, htmlToolbarClick, markdownToolbarClick, destroyColorPicker, modelChanged, keyUp, keyDown, mouseUp, toolbarCreated, toolbarRenderComplete, enableFullScreen, disableFullScreen, dropDownSelect, beforeDropDownItemRender, execCommandCallBack, imageToolbarAction, linkToolbarAction, windowResize, resizeStart, onResize, resizeStop, undo, redo, insertLink, unLink, editLink, openLink, actionBegin, actionComplete, updatedToolbarStatus, actionSuccess, updateToolbarItem, insertImage, insertCompleted, imageLeft, imageRight, imageCenter, imageBreak, imageInline, imageLink, imageAlt, imageDelete, imageCaption, imageSize, sourceCode, updateSource, toolbarOpen, beforeDropDownOpen, selectionSave, selectionRestore, expandPopupClick, count, contentFocus, contentBlur, mouseDown, sourceCodeMouseDown, editAreaClick, scroll, contentscroll, colorPickerChanged, tableColorPickerChanged, focusChange, selectAll$1 as selectAll, selectRange, getSelectedHtml, renderInlineToolbar, paste, imgModule, rtlMode, createTable, docClick, tableToolbarAction, checkUndo, readOnlyMode, moduleDestroy, pasteClean, enterHandler, beforeDialogOpen, clearDialogObj, dialogOpen, beforeDialogClose, dialogClose, beforeQuickToolbarOpen, quickToolbarOpen, quickToolbarClose, popupHide, imageSelected, imageUploading, imageUploadSuccess, imageUploadFailed, imageRemoving, mediaSelected, mediaUploading, mediaUploadSuccess, mediaUploadFailed, mediaRemoving, afterImageDelete, afterMediaDelete, drop, xhtmlValidation, beforeImageUpload, beforeMediaUpload, resizeInitialized, renderFileManager, beforeImageDrop, dynamicModule, beforePasteCleanup, afterPasteCleanup, updateTbItemsStatus, showLinkDialog, closeLinkDialog, showImageDialog, closeImageDialog, closeAudioDialog, showTableDialog, closeTableDialog, bindCssClass, blockEmptyNodes, inlineEmptyNodes, CLS_RTE, CLS_RTL, CLS_CONTENT, CLS_DISABLED, CLS_SCRIPT_SHEET, CLS_STYLE_SHEET, CLS_TOOLBAR, CLS_TB_FIXED, CLS_TB_FLOAT, CLS_TB_ABS_FLOAT, CLS_INLINE, CLS_TB_INLINE, CLS_RTE_EXPAND_TB, CLS_FULL_SCREEN, CLS_QUICK_TB, CLS_POP, CLS_TB_STATIC, CLS_QUICK_POP, CLS_QUICK_DROPDOWN, CLS_IMAGE_POP, CLS_INLINE_POP, CLS_INLINE_DROPDOWN, CLS_DROPDOWN_POPUP, CLS_DROPDOWN_ICONS, CLS_DROPDOWN_ITEMS, CLS_DROPDOWN_BTN, CLS_RTE_CONTENT, CLS_TB_ITEM, CLS_TB_EXTENDED, CLS_TB_WRAP, CLS_POPUP, CLS_SEPARATOR, CLS_MINIMIZE, CLS_MAXIMIZE, CLS_BACK, CLS_SHOW, CLS_HIDE, CLS_VISIBLE, CLS_FOCUS, CLS_RM_WHITE_SPACE, CLS_IMGRIGHT, CLS_IMGLEFT, CLS_IMGCENTER, CLS_IMGBREAK, CLS_CAPTION, CLS_RTE_CAPTION, CLS_CAPINLINE, CLS_IMGINLINE, CLS_COUNT, CLS_WARNING, CLS_ERROR, CLS_ICONS, CLS_ACTIVE, CLS_EXPAND_OPEN, CLS_RTE_ELEMENTS, CLS_TB_BTN, CLS_HR_SEPARATOR, CLS_TB_IOS_FIX, CLS_LIST_PRIMARY_CONTENT, CLS_NUMBERFORMATLIST_TB_BTN, CLS_BULLETFORMATLIST_TB_BTN, CLS_FORMATS_TB_BTN, CLS_FONT_NAME_TB_BTN, CLS_FONT_SIZE_TB_BTN, CLS_ALIGN_TB_BTN, CLS_FONT_COLOR_TARGET, CLS_BACKGROUND_COLOR_TARGET, CLS_COLOR_CONTENT, CLS_FONT_COLOR_DROPDOWN, CLS_BACKGROUND_COLOR_DROPDOWN, CLS_COLOR_PALETTE, CLS_FONT_COLOR_PICKER, CLS_BACKGROUND_COLOR_PICKER, CLS_RTE_READONLY, CLS_TABLE_SEL, CLS_TB_DASH_BOR, CLS_TB_ALT_BOR, CLS_TB_COL_RES, CLS_TB_ROW_RES, CLS_TB_BOX_RES, CLS_RTE_HIDDEN, CLS_RTE_PASTE_KEEP_FORMAT, CLS_RTE_PASTE_REMOVE_FORMAT, CLS_RTE_PASTE_PLAIN_FORMAT, CLS_RTE_PASTE_OK, CLS_RTE_PASTE_CANCEL, CLS_RTE_DIALOG_MIN_HEIGHT, CLS_RTE_RES_HANDLE, CLS_RTE_RES_EAST, CLS_RTE_IMAGE, CLS_RESIZE, CLS_IMG_FOCUS, CLS_RTE_DRAG_IMAGE, CLS_RTE_UPLOAD_POPUP, CLS_POPUP_OPEN, CLS_IMG_RESIZE, CLS_DROPAREA, CLS_IMG_INNER, CLS_UPLOAD_FILES, CLS_RTE_DIALOG_UPLOAD, CLS_RTE_RES_CNT, CLS_CUSTOM_TILE, CLS_NOCOLOR_ITEM, CLS_TABLE, CLS_TABLE_BORDER, CLS_RTE_TABLE_RESIZE, CLS_RTE_FIXED_TB_EXPAND, CLS_RTE_TB_ENABLED, CLS_RTE_RES_WEST, getIndex, hasClass, getDropDownValue, isIDevice, getFormattedFontSize, pageYOffset, getTooltipText, setToolbarStatus, getCollection, getTBarItemsIndex, updateUndoRedoStatus, dispatchEvent, parseHtml, getTextNodesUnder, toObjectLowerCase, getEditValue, updateTextNode, getDefaultValue, isEditableValueEmpty, decode, sanitizeHelper, convertToBlob, getLocaleFontFormat, updateDropDownFontFormatLocale, ServiceLocator, RendererFactory, EditorManager, IMAGE, TABLE, LINK, INSERT_ROW, INSERT_COLUMN, DELETEROW, DELETECOLUMN, REMOVETABLE, TABLEHEADER, TABLE_VERTICAL_ALIGN, TABLE_MERGE, TABLE_VERTICAL_SPLIT, TABLE_HORIZONTAL_SPLIT, TABLE_MOVE, ALIGNMENT_TYPE, INDENT_TYPE, DEFAULT_TAG, BLOCK_TAGS, IGNORE_BLOCK_TAGS, TABLE_BLOCK_TAGS, SELECTION_TYPE, INSERTHTML_TYPE, INSERT_TEXT_TYPE, CLEAR_TYPE, SELF_CLOSING_TAGS, CLASS_IMAGE_RIGHT, CLASS_IMAGE_LEFT, CLASS_IMAGE_CENTER, CLASS_IMAGE_BREAK, CLASS_CAPTION, CLASS_RTE_CAPTION, CLASS_CAPTION_INLINE, CLASS_IMAGE_INLINE, Lists, markerClassName, DOMNode, Alignments, Indents, Formats, LinkCommand, InsertMethods, InsertTextExec, InsertHtmlExec, InsertHtml, IsFormatted, MsWordPaste, NodeCutter, ImageCommand, SelectionCommands, SelectionBasedExec, ClearFormatExec, UndoRedoManager, TableCommand, statusCollection, ToolbarStatus, NodeSelection, MarkdownParser, LISTS_COMMAND, selectionCommand, LINK_COMMAND, CLEAR_COMMAND, MD_TABLE, INSERT_TEXT_COMMAND, ClearFormat, MDLists, MDFormats, MarkdownSelection, UndoRedoCommands, MDSelectionFormats, MDLink, MDTable, markdownFormatTags, markdownSelectionTags, markdownListsTags, htmlKeyConfig, markdownKeyConfig, pasteCleanupGroupingTags, listConversionFilters, selfClosingTags, KEY_DOWN, ACTION, FORMAT_TYPE, KEY_DOWN_HANDLER, LIST_TYPE, KEY_UP_HANDLER, KEY_UP, MODEL_CHANGED_PLUGIN, MODEL_CHANGED, MS_WORD_CLEANUP_PLUGIN, MS_WORD_CLEANUP, ON_BEGIN, SPACE_ACTION };
27933
28017
  //# sourceMappingURL=ej2-richtexteditor.es5.js.map