@syncfusion/ej2-richtexteditor 23.2.5 → 23.2.7

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 (38) hide show
  1. package/CHANGELOG.md +36 -0
  2. package/dist/ej2-richtexteditor.min.js +2 -2
  3. package/dist/ej2-richtexteditor.umd.min.js +2 -2
  4. package/dist/ej2-richtexteditor.umd.min.js.map +1 -1
  5. package/dist/es6/ej2-richtexteditor.es2015.js +191 -55
  6. package/dist/es6/ej2-richtexteditor.es2015.js.map +1 -1
  7. package/dist/es6/ej2-richtexteditor.es5.js +191 -55
  8. package/dist/es6/ej2-richtexteditor.es5.js.map +1 -1
  9. package/dist/global/ej2-richtexteditor.min.js +2 -2
  10. package/dist/global/ej2-richtexteditor.min.js.map +1 -1
  11. package/dist/global/index.d.ts +1 -1
  12. package/package.json +9 -9
  13. package/src/editor-manager/base/interface.d.ts +1 -0
  14. package/src/editor-manager/plugin/inserthtml.js +3 -1
  15. package/src/editor-manager/plugin/link.js +2 -0
  16. package/src/editor-manager/plugin/ms-word-clean-up.js +6 -2
  17. package/src/rich-text-editor/actions/enter-key.js +1 -1
  18. package/src/rich-text-editor/actions/html-editor.js +3 -0
  19. package/src/rich-text-editor/actions/paste-clean-up.js +4 -2
  20. package/src/rich-text-editor/actions/quick-toolbar.js +4 -1
  21. package/src/rich-text-editor/actions/toolbar.d.ts +0 -1
  22. package/src/rich-text-editor/actions/toolbar.js +0 -8
  23. package/src/rich-text-editor/base/classes.d.ts +5 -0
  24. package/src/rich-text-editor/base/classes.js +5 -0
  25. package/src/rich-text-editor/base/interface.d.ts +1 -0
  26. package/src/rich-text-editor/base/rich-text-editor.d.ts +12 -0
  27. package/src/rich-text-editor/base/rich-text-editor.js +49 -13
  28. package/src/rich-text-editor/models/default-locale.js +1 -0
  29. package/src/rich-text-editor/renderer/audio-module.js +0 -1
  30. package/src/rich-text-editor/renderer/dialog-renderer.d.ts +1 -0
  31. package/src/rich-text-editor/renderer/dialog-renderer.js +11 -0
  32. package/src/rich-text-editor/renderer/image-module.js +2 -4
  33. package/src/rich-text-editor/renderer/link-module.js +2 -1
  34. package/src/rich-text-editor/renderer/table-module.d.ts +1 -0
  35. package/src/rich-text-editor/renderer/table-module.js +9 -1
  36. package/src/rich-text-editor/renderer/toolbar-renderer.js +79 -10
  37. package/src/rich-text-editor/renderer/video-module.js +1 -2
  38. package/src/rich-text-editor/renderer/view-source.js +9 -8
@@ -1358,6 +1358,11 @@ var CLS_RTE_TB_ENABLED = 'e-rte-toolbar-enabled';
1358
1358
  * @deprecated
1359
1359
  */
1360
1360
  var CLS_RTE_RES_WEST = 'e-south-west';
1361
+ /**
1362
+ * @hidden
1363
+ * @deprecated
1364
+ */
1365
+ var CLS_RTE_SOURCE_CODE_TXTAREA = 'e-rte-srctextarea';
1361
1366
 
1362
1367
  /**
1363
1368
  * Defines types of Render
@@ -2597,6 +2602,7 @@ var defaultLocale = {
2597
2602
  'emojiPickerTypeToFind': 'Type to find',
2598
2603
  'emojiPickerNoResultFound': 'No results found',
2599
2604
  'emojiPickerTrySomethingElse': 'Try something else',
2605
+ 'linkAriaLabel': 'Open in new window',
2600
2606
  };
2601
2607
  var toolsLocale = {
2602
2608
  'alignments': 'alignments',
@@ -3334,7 +3340,7 @@ var ToolbarRenderer = /** @__PURE__ @class */ (function () {
3334
3340
  };
3335
3341
  ToolbarRenderer.prototype.destroyTooltip = function () {
3336
3342
  if (!isNullOrUndefined(document.querySelector('.e-tooltip-wrap')) && !isNullOrUndefined(document.querySelector(' [data-tooltip-id]'))) {
3337
- var tooltipTargetEle = document.querySelector('#' + (this.parent.element).id + ' [data-tooltip-id]');
3343
+ var tooltipTargetEle = this.parent.element.querySelector('[data-tooltip-id]');
3338
3344
  var event_1 = new MouseEvent('mouseleave', { bubbles: true, cancelable: true });
3339
3345
  tooltipTargetEle.dispatchEvent(event_1);
3340
3346
  }
@@ -3495,17 +3501,86 @@ var ToolbarRenderer = /** @__PURE__ @class */ (function () {
3495
3501
  return;
3496
3502
  }
3497
3503
  // eslint-disable-next-line
3498
- for (var index = 0; index < args.element.childNodes.length; index++) {
3499
- var divNode = _this.parent.createElement('div');
3500
- divNode.innerHTML = dropDown.content.trim();
3501
- if (divNode.textContent.trim() !== ''
3502
- && args.element.childNodes[index].textContent.trim() === divNode.textContent.trim()) {
3503
- if (!args.element.childNodes[index].classList.contains('e-active')) {
3504
- addClass([args.element.childNodes[index]], 'e-active');
3504
+ // Table styles dropdown preselect
3505
+ if (proxy.parent.editorMode !== 'Markdown') {
3506
+ var startNode = proxy.parent.getRange().startContainer.parentElement;
3507
+ var tableEle = startNode.closest('table');
3508
+ var trow = startNode.closest('tr');
3509
+ if (!isNullOrUndefined(tableEle) && tableEle.classList.contains('e-dashed-border')) {
3510
+ for (var index = 0; index < args.element.childNodes.length; index++) {
3511
+ if (args.element.childNodes[index].classList.contains('e-dashed-borders')) {
3512
+ addClass([args.element.childNodes[index]], 'e-active');
3513
+ }
3505
3514
  }
3506
3515
  }
3507
- else {
3508
- removeClass([args.element.childNodes[index]], 'e-active');
3516
+ else if (!isNullOrUndefined(tableEle) && !tableEle.classList.contains('e-dashed-border') && tableEle.classList.contains('e-alternate-rows') && window.getComputedStyle(trow).backgroundColor !== '') {
3517
+ for (var index = 0; index < args.element.childNodes.length; index++) {
3518
+ if (args.element.childNodes[index].classList.contains('e-alternate-rows')) {
3519
+ addClass([args.element.childNodes[index]], 'e-active');
3520
+ }
3521
+ }
3522
+ }
3523
+ //Alignments preselect
3524
+ var alignEle = proxy.parent.getRange().startContainer;
3525
+ while (alignEle !== proxy.parent.element.querySelector('.e-content') && !isNullOrUndefined(alignEle.parentElement)) {
3526
+ if (alignEle.nodeName === '#text') {
3527
+ alignEle = alignEle.parentElement;
3528
+ }
3529
+ var alignStyle = window.getComputedStyle(alignEle).textAlign;
3530
+ if (args.items[0].command === 'Alignments') {
3531
+ if ((args.items[0].text === 'Align Left' && (alignStyle === 'left') || alignStyle === 'start')) {
3532
+ addClass([args.element.childNodes[0]], 'e-active');
3533
+ break;
3534
+ }
3535
+ else if (args.items[1].text === 'Align Center' && alignStyle === 'center') {
3536
+ addClass([args.element.childNodes[1]], 'e-active');
3537
+ break;
3538
+ }
3539
+ else if (args.items[2].text === 'Align Right' && alignStyle === 'right') {
3540
+ addClass([args.element.childNodes[2]], 'e-active');
3541
+ break;
3542
+ }
3543
+ else if (args.items[3].text === 'Align Justify' && alignStyle === 'justify') {
3544
+ addClass([args.element.childNodes[3]], 'e-active');
3545
+ break;
3546
+ }
3547
+ }
3548
+ alignEle = alignEle.parentElement;
3549
+ }
3550
+ //image preselect
3551
+ var imageEle = startNode.closest('img') ? startNode.closest('img') : startNode.querySelector('img');
3552
+ if (args.items[0].command === 'Images') {
3553
+ if (!isNullOrUndefined(imageEle)) {
3554
+ var index = void 0;
3555
+ if (imageEle.classList.contains('e-imgleft') || imageEle.classList.contains('e-imginline')) {
3556
+ index = 0;
3557
+ }
3558
+ else if (imageEle.classList.contains('e-imgcenter') || imageEle.classList.contains('e-imgbreak')) {
3559
+ index = 1;
3560
+ }
3561
+ else if (imageEle.classList.contains('e-imgright')) {
3562
+ index = 2;
3563
+ }
3564
+ if (!isNullOrUndefined(args.element.childNodes[index])) {
3565
+ addClass([args.element.childNodes[index]], 'e-active');
3566
+ }
3567
+ }
3568
+ }
3569
+ //Formats preselect
3570
+ if (args.items[0].command === 'Formats') {
3571
+ for (var index = 0; index < args.element.childNodes.length; index++) {
3572
+ var divNode = _this.parent.createElement('div');
3573
+ divNode.innerHTML = dropDown.content.trim();
3574
+ if (divNode.textContent.trim() !== ''
3575
+ && args.element.childNodes[index].textContent.trim() === divNode.textContent.trim()) {
3576
+ if (!args.element.childNodes[index].classList.contains('e-active')) {
3577
+ addClass([args.element.childNodes[index]], 'e-active');
3578
+ }
3579
+ }
3580
+ else {
3581
+ removeClass([args.element.childNodes[index]], 'e-active');
3582
+ }
3583
+ }
3509
3584
  }
3510
3585
  }
3511
3586
  proxy.parent.notify(beforeDropDownOpen, args);
@@ -5362,12 +5437,6 @@ var Toolbar$2 = /** @__PURE__ @class */ (function () {
5362
5437
  }
5363
5438
  }
5364
5439
  };
5365
- Toolbar$$1.prototype.tbKeydownHandler = function (e) {
5366
- if (e.target.classList.contains('e-dropdown-btn') ||
5367
- e.target.getAttribute('id') === this.parent.getID() + '_toolbar_CreateTable') {
5368
- e.target.setAttribute('tabindex', '0');
5369
- }
5370
- };
5371
5440
  Toolbar$$1.prototype.toolbarClickHandler = function (e) {
5372
5441
  var trg = closest(e.originalEvent.target, '.e-hor-nav');
5373
5442
  if (trg && this.parent.toolbarSettings.type === ToolbarType.Expand && !isNullOrUndefined(trg)) {
@@ -5397,11 +5466,9 @@ var Toolbar$2 = /** @__PURE__ @class */ (function () {
5397
5466
  return;
5398
5467
  }
5399
5468
  EventHandler.add(this.tbElement, 'focusin', this.tbFocusHandler, this);
5400
- EventHandler.add(this.tbElement, 'keydown', this.tbKeydownHandler, this);
5401
5469
  };
5402
5470
  Toolbar$$1.prototype.unWireEvents = function () {
5403
5471
  EventHandler.remove(this.tbElement, 'focusin', this.tbFocusHandler);
5404
- EventHandler.remove(this.tbElement, 'keydown', this.tbKeydownHandler);
5405
5472
  };
5406
5473
  Toolbar$$1.prototype.addEventListener = function () {
5407
5474
  if (this.parent.isDestroyed) {
@@ -6644,7 +6711,7 @@ var QuickToolbar = /** @__PURE__ @class */ (function () {
6644
6711
  * @deprecated
6645
6712
  */
6646
6713
  QuickToolbar.prototype.showInlineQTBar = function (x, y, target) {
6647
- if (this.parent.readonly || target.tagName.toLowerCase() === 'img') {
6714
+ if (isNullOrUndefined(this.parent) || this.parent.readonly || target.tagName.toLowerCase() === 'img') {
6648
6715
  return;
6649
6716
  }
6650
6717
  this.inlineQTBar.showPopup(x, y, target);
@@ -7014,6 +7081,9 @@ var QuickToolbar = /** @__PURE__ @class */ (function () {
7014
7081
  this.parent.off(rtlMode, this.setRtl);
7015
7082
  this.parent.off(bindCssClass, this.setCssClass);
7016
7083
  this.parent.off(hidePopup, this.hideQuickToolbars);
7084
+ if (this.deBouncer) {
7085
+ clearTimeout(this.deBouncer);
7086
+ }
7017
7087
  };
7018
7088
  /**
7019
7089
  * Called internally if any of the property value changed.
@@ -13683,7 +13753,9 @@ var InsertHtml = /** @__PURE__ @class */ (function () {
13683
13753
  InsertHtml.findDetachEmptyElem = function (element) {
13684
13754
  var removableElement;
13685
13755
  if (!isNullOrUndefined(element.parentElement)) {
13686
- if (element.parentElement.textContent.trim() === '' && element.parentElement.contentEditable !== 'true' &&
13756
+ var hasNbsp = element.parentElement.textContent.length > 0 && element.parentElement.textContent.match(/\u00a0/g)
13757
+ && element.parentElement.textContent.match(/\u00a0/g).length > 0;
13758
+ if (!hasNbsp && element.parentElement.textContent.trim() === '' && element.parentElement.contentEditable !== 'true' &&
13687
13759
  isNullOrUndefined(element.parentElement.querySelector('img'))) {
13688
13760
  removableElement = this.findDetachEmptyElem(element.parentElement);
13689
13761
  }
@@ -13798,9 +13870,11 @@ var LinkCommand = /** @__PURE__ @class */ (function () {
13798
13870
  }
13799
13871
  if (!isNullOrUndefined(e.item.target)) {
13800
13872
  anchorEle.setAttribute('target', e.item.target);
13873
+ anchorEle.setAttribute('aria-label', e.item.ariaLabel);
13801
13874
  }
13802
13875
  else {
13803
13876
  anchorEle.removeAttribute('target');
13877
+ anchorEle.removeAttribute('aria-label');
13804
13878
  }
13805
13879
  if (linkText === e.item.text) {
13806
13880
  e.item.selection.setSelectionText(this.parent.currentDocument, anchorEle, anchorEle, 1, 1);
@@ -17936,7 +18010,9 @@ var MsWordPaste = /** @__PURE__ @class */ (function () {
17936
18010
  isNullOrUndefined(allElements[i].nextElementSibling)))) {
17937
18011
  var detachableElement = this.findDetachElem(allElements[i]);
17938
18012
  var brElement = createElement('br');
17939
- if (!isNullOrUndefined(detachableElement.parentElement)) {
18013
+ var hasNbsp = detachableElement.textContent.length > 0 && detachableElement.textContent.match(/\u00a0/g)
18014
+ && detachableElement.textContent.match(/\u00a0/g).length > 0;
18015
+ if (!hasNbsp && !isNullOrUndefined(detachableElement.parentElement)) {
17940
18016
  detachableElement.parentElement.insertBefore(brElement, detachableElement);
17941
18017
  detach(detachableElement);
17942
18018
  }
@@ -17975,7 +18051,9 @@ var MsWordPaste = /** @__PURE__ @class */ (function () {
17975
18051
  MsWordPaste.prototype.findDetachEmptyElem = function (element) {
17976
18052
  var removableElement;
17977
18053
  if (!isNullOrUndefined(element.parentElement)) {
17978
- if (element.parentElement.textContent.trim() === '' &&
18054
+ var hasNbsp = element.parentElement.textContent.length > 0 && element.parentElement.textContent.match(/\u00a0/g)
18055
+ && element.parentElement.textContent.match(/\u00a0/g).length > 0;
18056
+ if (!hasNbsp && element.parentElement.textContent.trim() === '' &&
17979
18057
  element.parentElement.getAttribute('id') !== 'MSWord-Content' &&
17980
18058
  !(this.hasParentWithClass(element, 'MsoListParagraph')) &&
17981
18059
  isNullOrUndefined(element.parentElement.querySelector('img'))) {
@@ -21030,6 +21108,9 @@ var HtmlEditor = /** @__PURE__ @class */ (function () {
21030
21108
  */
21031
21109
  HtmlEditor.prototype.onPropertyChanged = function (e) {
21032
21110
  // On property code change here
21111
+ if (!isNullOrUndefined(e) && !isNullOrUndefined(e.newProp.toolbarSettings) && !isNullOrUndefined(e.newProp.toolbarSettings.enable)) {
21112
+ this.toolbarUpdate = new HtmlToolbarStatus(this.parent);
21113
+ }
21033
21114
  if (!isNullOrUndefined(e.newProp.formatter)) {
21034
21115
  var editElement = this.contentRenderer.getEditPanel();
21035
21116
  var option = { undoRedoSteps: this.parent.undoRedoSteps,
@@ -21339,7 +21420,7 @@ var PasteCleanup = /** @__PURE__ @class */ (function () {
21339
21420
  var popupEle = this.parent.createElement('div');
21340
21421
  this.parent.element.appendChild(popupEle);
21341
21422
  var contentEle = this.parent.createElement('input', {
21342
- id: this.parent.element.id + '_upload', attrs: { type: 'File', name: 'UploadFiles' }
21423
+ id: this.parent.getID() + '_upload', attrs: { type: 'File', name: 'UploadFiles' }
21343
21424
  });
21344
21425
  var offsetY = this.parent.iframeSettings.enable ? -50 : -90;
21345
21426
  this.popupObj = new Popup(popupEle, {
@@ -21967,7 +22048,9 @@ var PasteCleanup = /** @__PURE__ @class */ (function () {
21967
22048
  PasteCleanup.prototype.findDetachEmptyElem = function (element) {
21968
22049
  var removableElement;
21969
22050
  if (!isNullOrUndefined(element.parentElement)) {
21970
- if (element.parentElement.textContent.trim() === '' &&
22051
+ var hasNbsp = element.parentElement.textContent.length > 0 && element.parentElement.textContent.match(/\u00a0/g)
22052
+ && element.parentElement.textContent.match(/\u00a0/g).length > 0;
22053
+ if (!hasNbsp && element.parentElement.textContent.trim() === '' &&
21971
22054
  element.parentElement.getAttribute('class') !== 'pasteContent') {
21972
22055
  removableElement = this.findDetachEmptyElem(element.parentElement);
21973
22056
  }
@@ -24144,6 +24227,7 @@ var Link = /** @__PURE__ @class */ (function () {
24144
24227
  linkTitle = linkEle.querySelector('.e-rte-linkTitle').value;
24145
24228
  }
24146
24229
  var target = (this.selfLink.checkBoxObj.checked) ? '_blank' : null;
24230
+ var linkLabel = (this.selfLink.checkBoxObj.checked) ? this.selfLink.i10n.getConstant('linkAriaLabel') : null;
24147
24231
  if (linkUrl === '') {
24148
24232
  this.selfLink.checkUrl(true);
24149
24233
  return;
@@ -24174,7 +24258,7 @@ var Link = /** @__PURE__ @class */ (function () {
24174
24258
  this.selectParent = proxy.parent.formatter.editorManager.nodeSelection.getParentNodeCollection(range);
24175
24259
  }
24176
24260
  var value = {
24177
- url: linkUrl, text: linkText, title: linkTitle, target: target,
24261
+ url: linkUrl, text: linkText, title: linkTitle, target: target, ariaLabel: linkLabel,
24178
24262
  selection: this.selection, selectParent: this.selectParent
24179
24263
  };
24180
24264
  if (document.body.contains(proxy.dialogObj.element)) {
@@ -25323,7 +25407,6 @@ var Image$1 = /** @__PURE__ @class */ (function () {
25323
25407
  width: '290px',
25324
25408
  header: this.parent.localeObj.getConstant('imageInsertLinkHeader'),
25325
25409
  content: linkWrap,
25326
- position: { X: 'center', Y: 'center' },
25327
25410
  buttons: [{
25328
25411
  // eslint-disable-next-line
25329
25412
  click: function (e) {
@@ -25373,7 +25456,7 @@ var Image$1 = /** @__PURE__ @class */ (function () {
25373
25456
  alt: inputAlt
25374
25457
  };
25375
25458
  this.dialogObj.setProperties({
25376
- height: 'inherit', width: '290px', header: altHeader, content: altWrap, position: { X: 'center', Y: 'center' },
25459
+ height: 'inherit', width: '290px', header: altHeader, content: altWrap,
25377
25460
  buttons: [{
25378
25461
  // eslint-disable-next-line
25379
25462
  click: function (e) {
@@ -25600,7 +25683,7 @@ var Image$1 = /** @__PURE__ @class */ (function () {
25600
25683
  var dialogContent = this.imgsizeInput(e);
25601
25684
  var selectObj_1 = { args: e.args, selfImage: this, selection: e.selection, selectNode: e.selectNode };
25602
25685
  this.dialogObj.setProperties({
25603
- height: (Browser.isDevice) ? '300px' : 'inherit', width: '290px', header: imgSizeHeader, content: dialogContent, position: { X: 'center', Y: 'center' },
25686
+ height: (Browser.isDevice) ? '300px' : 'inherit', width: '290px', header: imgSizeHeader, content: dialogContent,
25604
25687
  buttons: [{
25605
25688
  // eslint-disable-next-line
25606
25689
  click: function (e) {
@@ -25666,7 +25749,6 @@ var Image$1 = /** @__PURE__ @class */ (function () {
25666
25749
  enableRtl: this.parent.enableRtl,
25667
25750
  locale: this.parent.locale,
25668
25751
  showCloseIcon: true, closeOnEscape: true, width: (Browser.isDevice) ? '290px' : '340px',
25669
- position: { X: 'center', Y: (Browser.isDevice) ? 'center' : 'top' },
25670
25752
  isModal: Browser.isDevice,
25671
25753
  buttons: [{
25672
25754
  click: this.insertImageUrl.bind(selectObj),
@@ -27160,7 +27242,6 @@ var Audio = /** @__PURE__ @class */ (function () {
27160
27242
  enableRtl: this.parent.enableRtl,
27161
27243
  locale: this.parent.locale,
27162
27244
  showCloseIcon: true, closeOnEscape: true, width: (Browser.isDevice) ? '290px' : '340px',
27163
- position: { X: 'center', Y: (Browser.isDevice) ? 'center' : 'top' },
27164
27245
  isModal: Browser.isDevice,
27165
27246
  buttons: [{
27166
27247
  click: this.insertAudioUrl.bind(selectObj),
@@ -27593,7 +27674,7 @@ var Video = /** @__PURE__ @class */ (function () {
27593
27674
  var dialogContent = this.vidsizeInput(e);
27594
27675
  var selectObj_1 = { args: e.args, selfVideo: this, selection: e.selection, selectNode: e.selectNode };
27595
27676
  this.dialogObj.setProperties({
27596
- height: 'inherit', width: '290px', header: vidSizeHeader, content: dialogContent, position: { X: 'center', Y: 'center' },
27677
+ height: 'inherit', width: '290px', header: vidSizeHeader, content: dialogContent,
27597
27678
  buttons: [{
27598
27679
  // eslint-disable-next-line
27599
27680
  click: function (e) {
@@ -28498,7 +28579,6 @@ var Video = /** @__PURE__ @class */ (function () {
28498
28579
  enableRtl: this.parent.enableRtl,
28499
28580
  locale: this.parent.locale,
28500
28581
  showCloseIcon: true, closeOnEscape: true, width: (Browser.isDevice) ? '290px' : '340px',
28501
- position: { X: 'center', Y: (Browser.isDevice) ? 'center' : 'top' },
28502
28582
  isModal: Browser.isDevice,
28503
28583
  buttons: [{
28504
28584
  click: this.insertVideoUrl.bind(selectObj),
@@ -28902,7 +28982,7 @@ var ViewSource = /** @__PURE__ @class */ (function () {
28902
28982
  this.parent.formatter.editorManager.observer.off(KEY_DOWN_HANDLER, this.onKeyDown);
28903
28983
  };
28904
28984
  ViewSource.prototype.getSourceCode = function () {
28905
- return this.parent.createElement('textarea', { className: 'e-rte-srctextarea' + ' ' + this.parent.cssClass });
28985
+ return this.parent.createElement('textarea', { className: CLS_RTE_SOURCE_CODE_TXTAREA + ' ' + this.parent.cssClass });
28906
28986
  };
28907
28987
  ViewSource.prototype.wireEvent = function (element) {
28908
28988
  this.keyboardModule = new KeyboardEvents$1(element, {
@@ -28936,9 +29016,10 @@ var ViewSource = /** @__PURE__ @class */ (function () {
28936
29016
  event.preventDefault();
28937
29017
  break;
28938
29018
  case 'toolbar-focus':
28939
- if (this.parent.toolbarSettings.enable) {
28940
- var selector = '.e-toolbar-item[title] [tabindex]';
28941
- this.parent.toolbarModule.baseToolbar.toolbarObj.element.querySelector(selector).focus();
29019
+ if (this.parent.toolbarSettings.enable && this.parent.getToolbarElement()) {
29020
+ var firstActiveItem = this.parent.getToolbarElement().querySelector('.e-toolbar-item:not(.e-overlay)[title]');
29021
+ firstActiveItem.firstElementChild.removeAttribute('tabindex');
29022
+ firstActiveItem.firstElementChild.focus();
28942
29023
  }
28943
29024
  break;
28944
29025
  }
@@ -28980,13 +29061,13 @@ var ViewSource = /** @__PURE__ @class */ (function () {
28980
29061
  this.parent.updateValueData();
28981
29062
  if (this.parent.iframeSettings.enable) {
28982
29063
  var rteContent = void 0;
28983
- if (isNullOrUndefined(this.parent.element.querySelector('#' + this.parent.element.id + '_source-view'))) {
29064
+ if (isNullOrUndefined(this.parent.element.querySelector('#' + this.parent.getID() + '_source-view'))) {
28984
29065
  rteContent = this.parent.createElement('div', {
28985
- className: 'e-source-content', id: this.parent.element.id + '_source-view'
29066
+ className: 'e-source-content', id: this.parent.getID() + '_source-view'
28986
29067
  });
28987
29068
  }
28988
29069
  else {
28989
- rteContent = this.parent.element.querySelector('#' + this.parent.element.id + '_source-view');
29070
+ rteContent = this.parent.element.querySelector('#' + this.parent.getID() + '_source-view');
28990
29071
  }
28991
29072
  rteContent.appendChild(this.previewElement);
28992
29073
  this.parent.element.appendChild(rteContent);
@@ -29167,6 +29248,7 @@ var Table = /** @__PURE__ @class */ (function () {
29167
29248
  this.parent.on(tableToolbarAction, this.onToolbarAction, this);
29168
29249
  this.parent.on(dropDownSelect, this.dropdownSelect, this);
29169
29250
  this.parent.on(keyDown, this.keyDown, this);
29251
+ this.parent.on(keyUp, this.keyUp, this);
29170
29252
  this.parent.on(mouseUp, this.selectionTable, this);
29171
29253
  this.parent.on(tableModulekeyUp, this.tableModulekeyUp, this);
29172
29254
  this.parent.on(bindCssClass, this.setCssClass, this);
@@ -29189,6 +29271,7 @@ var Table = /** @__PURE__ @class */ (function () {
29189
29271
  this.parent.off(dropDownSelect, this.dropdownSelect);
29190
29272
  this.parent.off(mouseDown, this.cellSelect);
29191
29273
  this.parent.off(tableColorPickerChanged, this.setBGColor);
29274
+ this.parent.off(keyUp, this.keyUp);
29192
29275
  this.parent.off(keyDown, this.keyDown);
29193
29276
  this.parent.off(mouseUp, this.selectionTable);
29194
29277
  this.parent.off(tableModulekeyUp, this.tableModulekeyUp);
@@ -29293,6 +29376,12 @@ var Table = /** @__PURE__ @class */ (function () {
29293
29376
  this.parent.formatter.process(this.parent, e, e, { selection: selectCell, subCommand: e.item.subCommand });
29294
29377
  this.hideTableQuickToolbar();
29295
29378
  };
29379
+ Table.prototype.keyUp = function (e) {
29380
+ var target = e.args.target;
29381
+ if (e.args.key.toLocaleLowerCase() === 'escape' && target && target.classList && (this.popupObj && !closest(target, '[id=' + "'" + this.popupObj.element.id + "'" + ']')) && this.popupObj) {
29382
+ this.popupObj.hide();
29383
+ }
29384
+ };
29296
29385
  Table.prototype.keyDown = function (e) {
29297
29386
  var event = e.args;
29298
29387
  // eslint-disable-next-line
@@ -30478,7 +30567,7 @@ var Table = /** @__PURE__ @class */ (function () {
30478
30567
  value: 3,
30479
30568
  placeholder: tableRow,
30480
30569
  floatLabelType: 'Auto',
30481
- max: 50,
30570
+ max: 1000,
30482
30571
  enableRtl: this.parent.enableRtl, locale: this.parent.locale,
30483
30572
  cssClass: this.parent.cssClass
30484
30573
  });
@@ -30700,6 +30789,7 @@ var DialogRenderer = /** @__PURE__ @class */ (function () {
30700
30789
  var dlgObj;
30701
30790
  e.beforeOpen = this.beforeOpen.bind(this);
30702
30791
  e.open = this.open.bind(this);
30792
+ e.position = { X: 'center', Y: this.getDialogPosition() };
30703
30793
  if (isNullOrUndefined(e.close)) {
30704
30794
  e.close = this.close.bind(this);
30705
30795
  }
@@ -30744,6 +30834,16 @@ var DialogRenderer = /** @__PURE__ @class */ (function () {
30744
30834
  }
30745
30835
  });
30746
30836
  };
30837
+ DialogRenderer.prototype.getDialogPosition = function () {
30838
+ var distanceFromVisibleTop = this.parent.element.getBoundingClientRect().top;
30839
+ if (distanceFromVisibleTop < 0) {
30840
+ distanceFromVisibleTop = Math.abs(distanceFromVisibleTop);
30841
+ return distanceFromVisibleTop.toString();
30842
+ }
30843
+ else {
30844
+ return 'top';
30845
+ }
30846
+ };
30747
30847
  /**
30748
30848
  * dialog close method
30749
30849
  *
@@ -31937,7 +32037,7 @@ var EnterKeyAction = /** @__PURE__ @class */ (function () {
31937
32037
  var newElem = void 0;
31938
32038
  var outerBRElem = _this.parent.createElement('br');
31939
32039
  if (_this.range.startOffset === 0 && _this.range.endOffset === 0 &&
31940
- !isNullOrUndefined(currentParent.previousSibling) && currentParent.previousSibling.nodeName === 'BR') {
32040
+ !isNullOrUndefined(currentParent.previousSibling) && currentParent.previousSibling.nodeName === 'BR' && currentParent.nodeName !== 'P' && currentParent.nodeName !== 'DIV') {
31941
32041
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
31942
32042
  newElem = _this.parent.formatter.editorManager.nodeCutter.SplitNode(_this.range, currentParent, false).cloneNode(true);
31943
32043
  _this.parent.formatter.editorManager.domNode.insertAfter(outerBRElem, currentParent);
@@ -32768,10 +32868,10 @@ var RichTextEditor = /** @__PURE__ @class */ (function (_super) {
32768
32868
  }
32769
32869
  switch (e.action) {
32770
32870
  case 'toolbar-focus':
32771
- if (this.toolbarSettings.enable) {
32772
- // eslint-disable-next-line
32773
- var selector = '.e-toolbar-item[title] [tabindex]';
32774
- this.toolbarModule.baseToolbar.toolbarObj.element.querySelector(selector).focus();
32871
+ if (this.toolbarSettings.enable && this.getToolbarElement()) {
32872
+ var firstActiveItem = this.getToolbarElement().querySelector('.e-toolbar-item:not(.e-overlay)[title]');
32873
+ firstActiveItem.firstElementChild.removeAttribute('tabindex');
32874
+ firstActiveItem.firstElementChild.focus();
32775
32875
  }
32776
32876
  break;
32777
32877
  case 'escape':
@@ -34134,15 +34234,10 @@ var RichTextEditor = /** @__PURE__ @class */ (function (_super) {
34134
34234
  }
34135
34235
  EventHandler.add(document, 'mousedown', this.onDocumentClick, this);
34136
34236
  }
34137
- if (!isNullOrUndefined(this.getToolbarElement())) {
34138
- var toolbarItem = this.getToolbarElement().querySelectorAll('input,select,button,a,[tabindex]');
34139
- for (var i = 0; i < toolbarItem.length; i++) {
34140
- if ((!toolbarItem[i].classList.contains('e-rte-dropdown-btn') &&
34141
- !toolbarItem[i].classList.contains('e-insert-table-btn')) &&
34142
- (!toolbarItem[i].hasAttribute('tabindex') ||
34143
- toolbarItem[i].getAttribute('tabindex') !== '-1')) {
34144
- toolbarItem[i].setAttribute('tabindex', '-1');
34145
- }
34237
+ if (!this.readonly) {
34238
+ var currentFocus = this.getCurrentFocus(e);
34239
+ if (currentFocus === 'editArea' || currentFocus === 'textArea' || currentFocus === 'sourceCode') {
34240
+ this.resetToolbarTabIndex();
34146
34241
  }
34147
34242
  }
34148
34243
  };
@@ -34259,6 +34354,9 @@ var RichTextEditor = /** @__PURE__ @class */ (function (_super) {
34259
34354
  else {
34260
34355
  this.isRTE = true;
34261
34356
  }
34357
+ if (!this.readonly && this.getCurrentFocus(e) === 'outside') {
34358
+ this.resetToolbarTabIndex();
34359
+ }
34262
34360
  };
34263
34361
  /**
34264
34362
  * invokeChangeEvent method
@@ -34513,6 +34611,44 @@ var RichTextEditor = /** @__PURE__ @class */ (function (_super) {
34513
34611
  }
34514
34612
  this.unWireScrollElementsEvents();
34515
34613
  };
34614
+ /**
34615
+ *
34616
+ * @param e Focus event
34617
+ * @returns string Returns the current focus either `editArea` or `toolbar` or `textArea` or `sourceCode` or `outside` of the RichTextEditor.
34618
+ * @hidden
34619
+ */
34620
+ RichTextEditor.prototype.getCurrentFocus = function (e) {
34621
+ if (e.target === this.inputElement && document.activeElement === this.inputElement) {
34622
+ return 'editArea';
34623
+ }
34624
+ else if (e.target === this.getToolbarElement() || (!isNullOrUndefined(e.relatedTarget) && closest(e.relatedTarget, '.e-rte-toolbar') === this.getToolbarElement())) {
34625
+ return 'toolbar';
34626
+ }
34627
+ else if (e.target === this.valueContainer && document.activeElement === this.valueContainer) {
34628
+ return 'textArea';
34629
+ }
34630
+ else if (!isNullOrUndefined(e.target) && e.target.classList.contains(CLS_RTE_SOURCE_CODE_TXTAREA) && document.activeElement === e.target) {
34631
+ return 'sourceCode';
34632
+ }
34633
+ return 'outside';
34634
+ };
34635
+ /**
34636
+ * @param {FocusEvent} e - specifies the event.
34637
+ * @hidden
34638
+ */
34639
+ RichTextEditor.prototype.resetToolbarTabIndex = function () {
34640
+ if (this.getToolbarElement()) {
34641
+ var toolbarItem = this.getToolbarElement().querySelectorAll('input,select,button,a,[tabindex]');
34642
+ for (var i = 0; i < toolbarItem.length; i++) {
34643
+ if ((!toolbarItem[i].classList.contains('e-rte-dropdown-btn') &&
34644
+ !toolbarItem[i].classList.contains('e-insert-table-btn')) &&
34645
+ (!toolbarItem[i].hasAttribute('tabindex') ||
34646
+ toolbarItem[i].getAttribute('tabindex') !== '-1')) {
34647
+ toolbarItem[i].setAttribute('tabindex', '-1');
34648
+ }
34649
+ }
34650
+ }
34651
+ };
34516
34652
  __decorate$1([
34517
34653
  Complex({}, ToolbarSettings$1)
34518
34654
  ], RichTextEditor.prototype, "toolbarSettings", void 0);
@@ -34817,5 +34953,5 @@ var RichTextEditor = /** @__PURE__ @class */ (function (_super) {
34817
34953
  * Rich Text Editor component exported items
34818
34954
  */
34819
34955
 
34820
- 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, FormatPainter, EmojiPicker, HTMLFormatter, Formatter, MarkdownFormatter, ContentRender, Render, ToolbarRenderer, Link, Image$1 as Image, Audio, Video, ViewSource, Table, DialogRenderer, IframeContentRender, MarkdownRender, PopupRenderer, RichTextEditor, RenderType, ToolbarType, DialogType, executeGroup, created, destroyed, tableclass, load, initialLoad, contentChanged, initialEnd, iframeMouseDown, destroy, toolbarClick, toolbarRefresh, refreshBegin, toolbarUpdated, bindOnEnd, renderColorPicker, htmlToolbarClick, markdownToolbarClick, destroyColorPicker, modelChanged, tableModulekeyUp, keyUp, keyDown, mouseUp, toolbarCreated, toolbarRenderComplete, enableFullScreen, disableFullScreen, dropDownSelect, beforeDropDownItemRender, execCommandCallBack, imageToolbarAction, audioToolbarAction, videoToolbarAction, linkToolbarAction, windowResize, resizeStart, onResize, resizeStop, undo, redo, insertLink, unLink, editLink, openLink, actionBegin, actionComplete, updatedToolbarStatus, actionSuccess, updateToolbarItem, insertImage, insertAudio, insertVideo, insertCompleted, imageLeft, imageRight, imageCenter, imageBreak, imageInline, imageLink, imageAlt, imageDelete, audioDelete, videoDelete, imageCaption, imageSize, videoSize, 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, fileSelected, fileUploading, fileUploadSuccess, fileUploadFailed, fileRemoving, afterImageDelete, afterMediaDelete, drop, xhtmlValidation, beforeImageUpload, beforeFileUpload, resizeInitialized, renderFileManager, beforeImageDrop, dynamicModule, beforePasteCleanup, afterPasteCleanup, updateTbItemsStatus, showLinkDialog, closeLinkDialog, showImageDialog, showAudioDialog, showVideoDialog, closeImageDialog, closeAudioDialog, closeVideoDialog, showTableDialog, closeTableDialog, bindCssClass, formatPainterClick, formatPainterDoubleClick, emojiPicker, maximizeMinimizeClick, hidePopup, 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_TEXT_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_AUDIOBREAK, CLS_CLICKELEM, CLS_VID_CLICK_ELEM, CLS_AUDIOWRAP, CLS_VIDEOWRAP, CLS_VIDEOBREAK, CLS_CAPTION, CLS_RTE_CAPTION, CLS_CAPINLINE, CLS_IMGINLINE, CLS_AUDIOINLINE, CLS_VIDEOINLINE, 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_AUD_FOCUS, CLS_VID_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, AUDIO, VIDEO, 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_VIDEO_RIGHT, CLASS_VIDEO_LEFT, CLASS_VIDEO_CENTER, CLASS_IMAGE_BREAK, CLASS_AUDIO_BREAK, CLASS_VIDEO_BREAK, CLASS_CAPTION, CLASS_RTE_CAPTION, CLASS_CAPTION_INLINE, CLASS_IMAGE_INLINE, CLASS_AUDIO_INLINE, CLASS_CLICK_ELEM, CLASS_VIDEO_CLICK_ELEM, CLASS_AUDIO, CLASS_VIDEO, CLASS_AUDIO_WRAP, CLASS_VIDEO_WRAP, CLASS_EMBED_VIDEO_WRAP, CLASS_AUDIO_FOCUS, CLASS_VIDEO_FOCUS, CLASS_VIDEO_INLINE, Lists, markerClassName, DOMNode, Alignments, Indents, Formats, LinkCommand, InsertMethods, InsertTextExec, InsertHtmlExec, InsertHtml, IsFormatted, MsWordPaste, NodeCutter, ImageCommand, AudioCommand, VideoCommand, SelectionCommands, SelectionBasedExec, ClearFormatExec, UndoRedoManager, TableCommand, statusCollection, ToolbarStatus, FormatPainterActions, EmojiPickerAction, 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, FORMAT_PAINTER_ACTIONS, EMOJI_PICKER_ACTIONS };
34956
+ 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, FormatPainter, EmojiPicker, HTMLFormatter, Formatter, MarkdownFormatter, ContentRender, Render, ToolbarRenderer, Link, Image$1 as Image, Audio, Video, ViewSource, Table, DialogRenderer, IframeContentRender, MarkdownRender, PopupRenderer, RichTextEditor, RenderType, ToolbarType, DialogType, executeGroup, created, destroyed, tableclass, load, initialLoad, contentChanged, initialEnd, iframeMouseDown, destroy, toolbarClick, toolbarRefresh, refreshBegin, toolbarUpdated, bindOnEnd, renderColorPicker, htmlToolbarClick, markdownToolbarClick, destroyColorPicker, modelChanged, tableModulekeyUp, keyUp, keyDown, mouseUp, toolbarCreated, toolbarRenderComplete, enableFullScreen, disableFullScreen, dropDownSelect, beforeDropDownItemRender, execCommandCallBack, imageToolbarAction, audioToolbarAction, videoToolbarAction, linkToolbarAction, windowResize, resizeStart, onResize, resizeStop, undo, redo, insertLink, unLink, editLink, openLink, actionBegin, actionComplete, updatedToolbarStatus, actionSuccess, updateToolbarItem, insertImage, insertAudio, insertVideo, insertCompleted, imageLeft, imageRight, imageCenter, imageBreak, imageInline, imageLink, imageAlt, imageDelete, audioDelete, videoDelete, imageCaption, imageSize, videoSize, 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, fileSelected, fileUploading, fileUploadSuccess, fileUploadFailed, fileRemoving, afterImageDelete, afterMediaDelete, drop, xhtmlValidation, beforeImageUpload, beforeFileUpload, resizeInitialized, renderFileManager, beforeImageDrop, dynamicModule, beforePasteCleanup, afterPasteCleanup, updateTbItemsStatus, showLinkDialog, closeLinkDialog, showImageDialog, showAudioDialog, showVideoDialog, closeImageDialog, closeAudioDialog, closeVideoDialog, showTableDialog, closeTableDialog, bindCssClass, formatPainterClick, formatPainterDoubleClick, emojiPicker, maximizeMinimizeClick, hidePopup, 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_TEXT_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_AUDIOBREAK, CLS_CLICKELEM, CLS_VID_CLICK_ELEM, CLS_AUDIOWRAP, CLS_VIDEOWRAP, CLS_VIDEOBREAK, CLS_CAPTION, CLS_RTE_CAPTION, CLS_CAPINLINE, CLS_IMGINLINE, CLS_AUDIOINLINE, CLS_VIDEOINLINE, 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_AUD_FOCUS, CLS_VID_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, CLS_RTE_SOURCE_CODE_TXTAREA, 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, AUDIO, VIDEO, 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_VIDEO_RIGHT, CLASS_VIDEO_LEFT, CLASS_VIDEO_CENTER, CLASS_IMAGE_BREAK, CLASS_AUDIO_BREAK, CLASS_VIDEO_BREAK, CLASS_CAPTION, CLASS_RTE_CAPTION, CLASS_CAPTION_INLINE, CLASS_IMAGE_INLINE, CLASS_AUDIO_INLINE, CLASS_CLICK_ELEM, CLASS_VIDEO_CLICK_ELEM, CLASS_AUDIO, CLASS_VIDEO, CLASS_AUDIO_WRAP, CLASS_VIDEO_WRAP, CLASS_EMBED_VIDEO_WRAP, CLASS_AUDIO_FOCUS, CLASS_VIDEO_FOCUS, CLASS_VIDEO_INLINE, Lists, markerClassName, DOMNode, Alignments, Indents, Formats, LinkCommand, InsertMethods, InsertTextExec, InsertHtmlExec, InsertHtml, IsFormatted, MsWordPaste, NodeCutter, ImageCommand, AudioCommand, VideoCommand, SelectionCommands, SelectionBasedExec, ClearFormatExec, UndoRedoManager, TableCommand, statusCollection, ToolbarStatus, FormatPainterActions, EmojiPickerAction, 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, FORMAT_PAINTER_ACTIONS, EMOJI_PICKER_ACTIONS };
34821
34957
  //# sourceMappingURL=ej2-richtexteditor.es5.js.map