@syncfusion/ej2-richtexteditor 20.1.61 → 20.2.36

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 (54) hide show
  1. package/CHANGELOG.md +10 -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 +419 -171
  5. package/dist/es6/ej2-richtexteditor.es2015.js.map +1 -1
  6. package/dist/es6/ej2-richtexteditor.es5.js +411 -162
  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/helpers/e2e/index.js +8 -6
  12. package/helpers/e2e/rte-helper.js +80 -64
  13. package/package.json +12 -12
  14. package/src/common/util.js +7 -8
  15. package/src/editor-manager/plugin/inserthtml.d.ts +1 -0
  16. package/src/editor-manager/plugin/inserthtml.js +25 -3
  17. package/src/editor-manager/plugin/lists.js +12 -4
  18. package/src/markdown-parser/base/constant.d.ts +6 -0
  19. package/src/markdown-parser/base/constant.js +6 -0
  20. package/src/markdown-parser/base/markdown-parser.d.ts +2 -0
  21. package/src/markdown-parser/base/markdown-parser.js +6 -0
  22. package/src/markdown-parser/base/types.d.ts +1 -1
  23. package/src/markdown-parser/plugin/insert-text.d.ts +22 -0
  24. package/src/markdown-parser/plugin/insert-text.js +51 -0
  25. package/src/rich-text-editor/actions/color-picker.js +20 -4
  26. package/src/rich-text-editor/actions/resize.js +4 -3
  27. package/src/rich-text-editor/actions/toolbar.js +4 -2
  28. package/src/rich-text-editor/base/classes.d.ts +5 -0
  29. package/src/rich-text-editor/base/classes.js +5 -0
  30. package/src/rich-text-editor/base/constant.d.ts +40 -0
  31. package/src/rich-text-editor/base/constant.js +41 -1
  32. package/src/rich-text-editor/base/interface.d.ts +2 -0
  33. package/src/rich-text-editor/base/rich-text-editor.d.ts +1 -0
  34. package/src/rich-text-editor/base/rich-text-editor.js +26 -23
  35. package/src/rich-text-editor/base/util.js +3 -3
  36. package/src/rich-text-editor/formatter/formatter.js +1 -1
  37. package/src/rich-text-editor/renderer/iframe-content-renderer.js +1 -1
  38. package/src/rich-text-editor/renderer/image-module.js +38 -37
  39. package/src/rich-text-editor/renderer/link-module.js +16 -14
  40. package/src/rich-text-editor/renderer/markdown-renderer.js +2 -1
  41. package/src/rich-text-editor/renderer/table-module.d.ts +3 -0
  42. package/src/rich-text-editor/renderer/table-module.js +132 -55
  43. package/src/rich-text-editor/renderer/toolbar-renderer.js +11 -1
  44. package/src/rich-text-editor/renderer/view-source.js +1 -1
  45. package/styles/fluent-dark.css +1 -0
  46. package/styles/fluent.css +1 -0
  47. package/styles/rich-text-editor/_fluent-definition.scss +1 -0
  48. package/styles/rich-text-editor/_fusionnew-definition.scss +189 -0
  49. package/styles/rich-text-editor/_layout.scss +3 -0
  50. package/styles/rich-text-editor/_material3-definition.scss +189 -0
  51. package/styles/rich-text-editor/fluent-dark.css +1 -0
  52. package/styles/rich-text-editor/fluent.css +1 -0
  53. package/styles/rich-text-editor/icons/_fusionnew.scss +303 -0
  54. package/styles/rich-text-editor/icons/_material3.scss +303 -0
@@ -524,11 +524,41 @@ var imageUploadFailed = 'imageUploadFailed';
524
524
  * @deprecated
525
525
  */
526
526
  var imageRemoving = 'imageRemoving';
527
+ /**
528
+ * @hidden
529
+ * @deprecated
530
+ */
531
+ var mediaSelected = 'mediaSelected';
532
+ /**
533
+ * @hidden
534
+ * @deprecated
535
+ */
536
+ var mediaUploading = 'mediaUploading';
537
+ /**
538
+ * @hidden
539
+ * @deprecated
540
+ */
541
+ var mediaUploadSuccess = 'mediaUploadSuccess';
542
+ /**
543
+ * @hidden
544
+ * @deprecated
545
+ */
546
+ var mediaUploadFailed = 'mediaUploadFailed';
547
+ /**
548
+ * @hidden
549
+ * @deprecated
550
+ */
551
+ var mediaRemoving = 'mediaRemoving';
527
552
  /**
528
553
  * @hidden
529
554
  * @deprecated
530
555
  */
531
556
  var afterImageDelete = 'afterImageDelete';
557
+ /**
558
+ * @hidden
559
+ * @deprecated
560
+ */
561
+ var afterMediaDelete = 'afterMediaaDelete';
532
562
  /**
533
563
  * @hidden
534
564
  * @deprecated
@@ -544,6 +574,11 @@ var xhtmlValidation = 'xhtmlValidation';
544
574
  * @deprecated
545
575
  */
546
576
  var beforeImageUpload = 'beforeImageUpload';
577
+ /**
578
+ * @hidden
579
+ * @deprecated
580
+ */
581
+ var beforeMediaUpload = 'beforeMediaUpload';
547
582
  /**
548
583
  * @hidden
549
584
  * @deprecated
@@ -599,6 +634,11 @@ var showImageDialog = 'showImageDialog';
599
634
  * @deprecated
600
635
  */
601
636
  var closeImageDialog = 'closeImageDialog';
637
+ /**
638
+ * @hidden
639
+ * @deprecated
640
+ */
641
+ var closeAudioDialog = 'closeAudioDialog';
602
642
  /**
603
643
  * @hidden
604
644
  * @deprecated
@@ -618,7 +658,7 @@ var bindCssClass = 'closeTableDialog';
618
658
  * @hidden
619
659
  * @deprecated
620
660
  */
621
- var blockInlineEmptyNodes = "address:empty, article:empty, aside:empty, blockquote:empty,\ndetails:empty, dd:empty, div:empty, dl:empty, dt:empty, fieldset:empty, footer:empty,form:empty, h1:empty,\nh2:empty, h3:empty, h4:empty, h5:empty, h6:empty, header:empty, hgroup:empty, hr:empty, li:empty, main:empty, nav:empty,\nnoscript:empty, output:empty, p:empty, pre:empty, section:empty, td:empty, th:empty,\na:empty, abbr:empty, acronym:empty, b:empty, bdi:empty, bdo:empty, big:empty, button:empty,\ncanvas:empty, cite:empty, code:empty, data:empty, datalist:empty, del:empty, dfn:empty, em:empty, font:empty, i:empty, iframe:empty,\nins:empty, kbd:empty, label:empty, map:empty, mark:empty, meter:empty, noscript:empty, object:empty, output:empty, picture:empty, progress:empty,\nq:empty, ruby:empty, s:empty, samp:empty, script:empty, select:empty, slot:empty, small:empty, span:empty, strong:empty, strike:empty, sub:empty, sup:empty, svg:empty,\ntemplate:empty, textarea:empty, time:empty, u:empty, tt:empty, var:empty, wbr:empty";
661
+ var blockInlineEmptyNodes = "address:empty, article:empty, aside:empty, blockquote:empty,\n details:empty, dd:empty, div:empty, dl:empty, dt:empty, fieldset:empty, footer:empty,form:empty, h1:empty,\n h2:empty, h3:empty, h4:empty, h5:empty, h6:empty, header:empty, hgroup:empty, hr:empty, li:empty, main:empty, nav:empty,\n noscript:empty, output:empty, p:empty, pre:empty, section:empty, td:empty, th:empty,\n a:empty, abbr:empty, acronym:empty, b:empty, bdi:empty, bdo:empty, big:empty, button:empty,\n canvas:empty, cite:empty, code:empty, data:empty, datalist:empty, del:empty, dfn:empty, em:empty, font:empty, i:empty, iframe:empty,\n ins:empty, kbd:empty, label:empty, map:empty, mark:empty, meter:empty, noscript:empty, object:empty, output:empty, picture:empty, progress:empty,\n q:empty, ruby:empty, s:empty, samp:empty, script:empty, select:empty, slot:empty, small:empty, span:empty, strong:empty, strike:empty, sub:empty, sup:empty, svg:empty,\n template:empty, textarea:empty, time:empty, u:empty, tt:empty, var:empty, wbr:empty";
622
662
 
623
663
  /**
624
664
  * Rich Text Editor classes defined here.
@@ -1163,6 +1203,11 @@ var CLS_RTE_FIXED_TB_EXPAND = 'e-rte-fixed-tb-expand';
1163
1203
  * @deprecated
1164
1204
  */
1165
1205
  var CLS_RTE_TB_ENABLED = 'e-rte-toolbar-enabled';
1206
+ /**
1207
+ * @hidden
1208
+ * @deprecated
1209
+ */
1210
+ var CLS_RTE_RES_WEST = 'e-south-west';
1166
1211
 
1167
1212
  /**
1168
1213
  * Defines types of Render
@@ -2308,7 +2353,7 @@ function setToolbarStatus(e, isPopToolbar, self) {
2308
2353
  result = getDropDownValue(formatItems$$1, value, 'subCommand', 'text');
2309
2354
  dropDown.formatDropDown.content = ('<span style="display: inline-flex;' +
2310
2355
  'width:' + e.parent.format.width + '" >' +
2311
- '<span class="e-rte-dropdown-btn-text">'
2356
+ '<span class="e-rte-dropdown-btn-text' + ' ' + e.parent.cssClass + '">'
2312
2357
  + (isNullOrUndefined(result) ? formatContent : result) +
2313
2358
  '</span></span>');
2314
2359
  dropDown.formatDropDown.dataBind();
@@ -2338,7 +2383,7 @@ function setToolbarStatus(e, isPopToolbar, self) {
2338
2383
  e.tbElements[j].title = name_1;
2339
2384
  dropDown.fontNameDropDown.content = ('<span style="display: inline-flex;' +
2340
2385
  'width:' + e.parent.fontFamily.width + '" >' +
2341
- '<span class="e-rte-dropdown-btn-text">'
2386
+ '<span class="e-rte-dropdown-btn-text' + ' ' + e.parent.cssClass + '">'
2342
2387
  + name_1 + '</span></span>');
2343
2388
  dropDown.fontNameDropDown.dataBind();
2344
2389
  break;
@@ -2354,7 +2399,7 @@ function setToolbarStatus(e, isPopToolbar, self) {
2354
2399
  result = getDropDownValue(fontSizeItems, (value === '' ? fontSizeContent.replace(/\s/g, '') : value), 'value', 'text');
2355
2400
  dropDown.fontSizeDropDown.content = ('<span style="display: inline-flex;' +
2356
2401
  'width:' + e.parent.fontSize.width + '" >' +
2357
- '<span class="e-rte-dropdown-btn-text">'
2402
+ '<span class="e-rte-dropdown-btn-text' + ' ' + e.parent.cssClass + '">'
2358
2403
  + getFormattedFontSize(result) + '</span></span>');
2359
2404
  dropDown.fontSizeDropDown.dataBind();
2360
2405
  break;
@@ -2994,6 +3039,7 @@ var ToolbarRenderer = /** @__PURE__ @class */ (function () {
2994
3039
  var proxy = this;
2995
3040
  var css = CLS_RTE_ELEMENTS + ' ' + CLS_TB_BTN + ((this.parent.inlineMode) ? (' ' + CLS_INLINE_DROPDOWN) : '');
2996
3041
  css += (' ' + ((item === 'backgroundcolor') ? CLS_BACKGROUND_COLOR_DROPDOWN : CLS_FONT_COLOR_DROPDOWN));
3042
+ css += ' ' + this.parent.cssClass;
2997
3043
  var content = proxy.parent.createElement('span', { className: CLS_COLOR_CONTENT });
2998
3044
  var inlineEle = proxy.parent.createElement('span', { className: args.cssClass });
2999
3045
  var range;
@@ -3164,6 +3210,7 @@ var ToolbarRenderer = /** @__PURE__ @class */ (function () {
3164
3210
  * @deprecated
3165
3211
  */
3166
3212
  ToolbarRenderer.prototype.renderColorPicker = function (args, item) {
3213
+ var _this = this;
3167
3214
  // eslint-disable-next-line
3168
3215
  var proxy = this;
3169
3216
  var value;
@@ -3181,6 +3228,14 @@ var ToolbarRenderer = /** @__PURE__ @class */ (function () {
3181
3228
  beforeTileRender: function (args) {
3182
3229
  args.element.classList.add(CLS_COLOR_PALETTE);
3183
3230
  args.element.classList.add(CLS_CUSTOM_TILE);
3231
+ if (!isNullOrUndefined(_this.parent.cssClass)) {
3232
+ var allClassName = _this.parent.cssClass.split(' ');
3233
+ for (var i = 0; i < allClassName.length; i++) {
3234
+ if (allClassName[i].trim() !== '') {
3235
+ args.element.classList.add(allClassName[i]);
3236
+ }
3237
+ }
3238
+ }
3184
3239
  if (args.value === '') {
3185
3240
  args.element.classList.add(CLS_NOCOLOR_ITEM);
3186
3241
  }
@@ -3216,7 +3271,7 @@ var ToolbarRenderer = /** @__PURE__ @class */ (function () {
3216
3271
  colorPicker.columns = (item === 'backgroundcolor') ? this.parent.backgroundColor.columns : this.parent.fontColor.columns;
3217
3272
  colorPicker.presetColors = (item === 'backgroundcolor') ? this.parent.backgroundColor.colorCode :
3218
3273
  this.parent.fontColor.colorCode;
3219
- colorPicker.cssClass = (item === 'backgroundcolor') ? CLS_BACKGROUND_COLOR_PICKER : CLS_FONT_COLOR_PICKER;
3274
+ colorPicker.cssClass = ((item === 'backgroundcolor') ? CLS_BACKGROUND_COLOR_PICKER : CLS_FONT_COLOR_PICKER) + ' ' + args.cssClass;
3220
3275
  colorPicker.createElement = this.parent.createElement;
3221
3276
  colorPicker.appendTo(document.getElementById(args.target));
3222
3277
  return colorPicker;
@@ -4216,7 +4271,8 @@ var Toolbar$2 = /** @__PURE__ @class */ (function () {
4216
4271
  container: ((this.parent.inlineMode.enable) ? 'quick' : 'toolbar'),
4217
4272
  items: this.parent.toolbarSettings.items,
4218
4273
  mode: tBarMode,
4219
- target: ele
4274
+ target: ele,
4275
+ cssClass: this.parent.cssClass
4220
4276
  });
4221
4277
  if (this.parent.toolbarSettings.type === ToolbarType.Expand) {
4222
4278
  addClass([ele], ['e-rte-tb-mobile']);
@@ -4333,7 +4389,8 @@ var Toolbar$2 = /** @__PURE__ @class */ (function () {
4333
4389
  container: 'toolbar',
4334
4390
  items: this.parent.toolbarSettings.items,
4335
4391
  mode: this.getToolbarMode(),
4336
- target: this.tbElement
4392
+ target: this.tbElement,
4393
+ cssClass: this.parent.cssClass
4337
4394
  });
4338
4395
  if (!this.parent.inlineMode.enable) {
4339
4396
  if (this.parent.toolbarSettings.enableFloating) {
@@ -5073,10 +5130,18 @@ var ColorPickerInput = /** @__PURE__ @class */ (function () {
5073
5130
  var fontNode = _this.parent.createElement('input');
5074
5131
  fontNode.id = targetID;
5075
5132
  fontNode.classList.add(CLS_FONT_COLOR_TARGET);
5133
+ if (!isNullOrUndefined(_this.parent.cssClass)) {
5134
+ var allClassName = _this.parent.cssClass.split(' ');
5135
+ for (var i = 0; i < allClassName.length; i++) {
5136
+ if (allClassName[i].trim() !== '') {
5137
+ fontNode.classList.add(allClassName[i]);
5138
+ }
5139
+ }
5140
+ }
5076
5141
  document.body.appendChild(fontNode);
5077
5142
  options = {
5078
5143
  cssClass: _this.tools[item.toLocaleLowerCase()].icon
5079
- + ' ' + CLS_RTE_ELEMENTS + ' ' + CLS_ICONS,
5144
+ + ' ' + CLS_RTE_ELEMENTS + ' ' + CLS_ICONS + ' ' + _this.parent.cssClass,
5080
5145
  value: _this.tools[item.toLocaleLowerCase()].value,
5081
5146
  command: _this.tools[item.toLocaleLowerCase()].command,
5082
5147
  subCommand: _this.tools[item.toLocaleLowerCase()].subCommand,
@@ -5092,10 +5157,18 @@ var ColorPickerInput = /** @__PURE__ @class */ (function () {
5092
5157
  var backNode = _this.parent.createElement('input');
5093
5158
  backNode.id = targetID;
5094
5159
  backNode.classList.add(CLS_BACKGROUND_COLOR_TARGET);
5160
+ if (!isNullOrUndefined(_this.parent.cssClass)) {
5161
+ var allClassName = _this.parent.cssClass.split(' ');
5162
+ for (var i = 0; i < allClassName.length; i++) {
5163
+ if (allClassName[i].trim() !== '') {
5164
+ backNode.classList.add(allClassName[i]);
5165
+ }
5166
+ }
5167
+ }
5095
5168
  document.body.appendChild(backNode);
5096
5169
  options = {
5097
5170
  cssClass: _this.tools[item.toLocaleLowerCase()].icon
5098
- + ' ' + CLS_RTE_ELEMENTS + ' ' + CLS_ICONS,
5171
+ + ' ' + CLS_RTE_ELEMENTS + ' ' + CLS_ICONS + ' ' + _this.parent.cssClass,
5099
5172
  value: _this.tools[item.toLocaleLowerCase()].value,
5100
5173
  command: _this.tools[item.toLocaleLowerCase()].command,
5101
5174
  subCommand: _this.tools[item.toLocaleLowerCase()].subCommand,
@@ -5168,8 +5241,8 @@ var ColorPickerInput = /** @__PURE__ @class */ (function () {
5168
5241
  dropDownObj.setProperties({ cssClass: (dropDownObj.cssClass + ' ' + e.cssClass).trim() });
5169
5242
  }
5170
5243
  else {
5171
- colorPickerObj.setProperties({ cssClass: (colorPickerObj.cssClass.replace(e.oldCssClass, '').trim() + ' ' + e.cssClass).trim() });
5172
- dropDownObj.setProperties({ cssClass: (dropDownObj.cssClass.replace(e.oldCssClass, '').trim() + ' ' + e.cssClass).trim() });
5244
+ colorPickerObj.setProperties({ cssClass: (colorPickerObj.cssClass.replace(e.oldCssClass, '').replace(' ', ' ').trim() + ' ' + e.cssClass).trim() });
5245
+ dropDownObj.setProperties({ cssClass: (dropDownObj.cssClass.replace(e.oldCssClass, '').replace(' ', ' ').trim() + ' ' + e.cssClass).trim() });
5173
5246
  }
5174
5247
  }
5175
5248
  };
@@ -6637,18 +6710,18 @@ function updateTextNode$1(value) {
6637
6710
  tdElm[j].style.removeProperty('border');
6638
6711
  }
6639
6712
  }
6640
- if (!tableElm[i].classList.contains(CLS_TABLE)) {
6641
- tableElm[i].classList.add(CLS_TABLE);
6713
+ if (!tableElm[i].classList.contains('e-rte-table')) {
6714
+ tableElm[i].classList.add('e-rte-table');
6642
6715
  }
6643
6716
  }
6644
6717
  var imageElm = resultElm.querySelectorAll('img');
6645
6718
  for (var i = 0; i < imageElm.length; i++) {
6646
- if (!imageElm[i].classList.contains(CLS_RTE_IMAGE)) {
6647
- imageElm[i].classList.add(CLS_RTE_IMAGE);
6719
+ if (!imageElm[i].classList.contains('e-rte-image')) {
6720
+ imageElm[i].classList.add('e-rte-image');
6648
6721
  }
6649
- if (!(imageElm[i].classList.contains(CLS_IMGINLINE) ||
6650
- imageElm[i].classList.contains(CLS_IMGBREAK))) {
6651
- imageElm[i].classList.add(CLS_IMGINLINE);
6722
+ if (!(imageElm[i].classList.contains('e-imginline') ||
6723
+ imageElm[i].classList.contains('e-imgbreak'))) {
6724
+ imageElm[i].classList.add('e-imginline');
6652
6725
  }
6653
6726
  }
6654
6727
  }
@@ -7110,7 +7183,7 @@ var Formatter = /** @__PURE__ @class */ (function () {
7110
7183
  }
7111
7184
  self.trigger(actionComplete, events, function (callbackArgs) {
7112
7185
  self.setPlaceHolder();
7113
- if (callbackArgs.requestType === 'Images' || callbackArgs.requestType === 'Links' && self.editorMode === 'HTML') {
7186
+ if ((callbackArgs.requestType === 'Images' || callbackArgs.requestType === 'Links') && self.editorMode === 'HTML') {
7114
7187
  var args = callbackArgs;
7115
7188
  if (callbackArgs.requestType === 'Links' && callbackArgs.event &&
7116
7189
  callbackArgs.event.type === 'keydown' &&
@@ -7214,6 +7287,12 @@ var CLEAR_COMMAND = 'clear-commands';
7214
7287
  * @hidden
7215
7288
  */
7216
7289
  var MD_TABLE = 'insert-table';
7290
+ /**
7291
+ * insertText plugin events
7292
+ *
7293
+ * @hidden
7294
+ */
7295
+ var INSERT_TEXT_COMMAND = 'insert-text';
7217
7296
 
7218
7297
  /**
7219
7298
  * Lists internal component
@@ -8950,6 +9029,56 @@ var ClearFormat = /** @__PURE__ @class */ (function () {
8950
9029
  return ClearFormat;
8951
9030
  }());
8952
9031
 
9032
+ /**
9033
+ * Link internal component
9034
+ *
9035
+ * @hidden
9036
+ * @deprecated
9037
+ */
9038
+ var MDInsertText = /** @__PURE__ @class */ (function () {
9039
+ /**
9040
+ * Constructor for creating the insert text plugin
9041
+ *
9042
+ * @param {MarkdownParser} parent - specifies the parent element
9043
+ * @hidden
9044
+ * @deprecated
9045
+ */
9046
+ function MDInsertText(parent) {
9047
+ this.parent = parent;
9048
+ this.selection = this.parent.markdownSelection;
9049
+ this.addEventListener();
9050
+ }
9051
+ MDInsertText.prototype.addEventListener = function () {
9052
+ this.parent.observer.on(INSERT_TEXT_COMMAND, this.InsertTextExec, this);
9053
+ };
9054
+ MDInsertText.prototype.InsertTextExec = function (e) {
9055
+ var textArea = this.parent.element;
9056
+ textArea.focus();
9057
+ var start = textArea.selectionStart;
9058
+ var end = textArea.selectionEnd;
9059
+ var text = e.value.text;
9060
+ var startOffset = start + text.length;
9061
+ var endOffset = end + text.length;
9062
+ textArea.value = textArea.value.substr(0, start)
9063
+ + text + textArea.value.substr(end, textArea.value.length);
9064
+ this.parent.markdownSelection.setSelection(textArea, startOffset, endOffset);
9065
+ this.restore(textArea, startOffset, endOffset, e);
9066
+ };
9067
+ MDInsertText.prototype.restore = function (textArea, start, end, event) {
9068
+ this.selection.save(start, end);
9069
+ this.selection.restore(textArea);
9070
+ if (event && event.callBack) {
9071
+ event.callBack({
9072
+ requestType: event.subCommand,
9073
+ selectedText: this.selection.getSelectedText(textArea),
9074
+ editorMode: 'Markdown',
9075
+ event: event.event
9076
+ });
9077
+ }
9078
+ };
9079
+ return MDInsertText;
9080
+ }());
9081
+
8953
9082
  /**
8954
9083
  * MarkdownParser internal component
8955
9084
  *
@@ -8976,6 +9105,7 @@ var MarkdownParser = /** @__PURE__ @class */ (function () {
8976
9105
  this.linkObj = new MDLink(this);
8977
9106
  this.tableObj = new MDTable({ parent: this, syntaxTag: ({ Formats: this.formatTags, List: this.listTags }) });
8978
9107
  this.clearObj = new ClearFormat(this);
9108
+ this.insertTextObj = new MDInsertText(this);
8979
9109
  this.wireEvents();
8980
9110
  }
8981
9111
  MarkdownParser.prototype.initialize = function () {
@@ -9042,6 +9172,10 @@ var MarkdownParser = /** @__PURE__ @class */ (function () {
9042
9172
  case 'clear':
9043
9173
  this.observer.notify(CLEAR_COMMAND, { subCommand: value, event: event, callBack: callBack });
9044
9174
  break;
9175
+ case 'inserttext':
9176
+ this.observer.notify(INSERT_TEXT_COMMAND, { subCommand: value, event: event, callBack: callBack,
9177
+ value: { text: exeValue } });
9178
+ break;
9045
9179
  }
9046
9180
  };
9047
9181
  return MarkdownParser;
@@ -9134,7 +9268,8 @@ var MarkdownRender = /** @__PURE__ @class */ (function () {
9134
9268
  var div = this.parent.createElement('div', { id: this.parent.getID() + '_view', className: 'e-rte-content' });
9135
9269
  this.editableElement = this.parent.createElement('textarea', {
9136
9270
  className: 'e-content',
9137
- id: this.parent.getID() + '_editable-content'
9271
+ id: this.parent.getID() + '_editable-content',
9272
+ attrs: { 'aria-labelledby': this.parent.getID() + '_view' }
9138
9273
  });
9139
9274
  div.appendChild(this.editableElement);
9140
9275
  this.setPanel(div);
@@ -11224,7 +11359,7 @@ var Lists = /** @__PURE__ @class */ (function () {
11224
11359
  }
11225
11360
  };
11226
11361
  Lists.prototype.applyLists = function (elements, type, selector, item, e) {
11227
- if (this.isRevert(elements, type) && isNullOrUndefined(item)) {
11362
+ if (this.isRevert(elements, type, item) && isNullOrUndefined(item)) {
11228
11363
  this.revertList(elements, e);
11229
11364
  this.removeEmptyListElements();
11230
11365
  }
@@ -11287,13 +11422,14 @@ var Lists = /** @__PURE__ @class */ (function () {
11287
11422
  }
11288
11423
  }
11289
11424
  };
11290
- Lists.prototype.isRevert = function (nodes, tagName) {
11425
+ Lists.prototype.isRevert = function (nodes, tagName, item) {
11291
11426
  var isRevert = true;
11292
11427
  for (var i = 0; i < nodes.length; i++) {
11293
11428
  if (nodes[i].tagName !== 'LI') {
11294
11429
  return false;
11295
11430
  }
11296
- if (nodes[i].parentNode.tagName !== tagName) {
11431
+ if (nodes[i].parentNode.tagName !== tagName ||
11432
+ isNullOrUndefined(item) && nodes[i].parentNode.style.listStyleType !== '') {
11297
11433
  isRevert = false;
11298
11434
  }
11299
11435
  }
@@ -11316,6 +11452,12 @@ var Lists = /** @__PURE__ @class */ (function () {
11316
11452
  (nodes[i].tagName === 'LI' && node.tagName === tagName && nodesTemp.indexOf(node) < 0 && item !== null)) {
11317
11453
  nodesTemp.push(node);
11318
11454
  }
11455
+ if (isNullOrUndefined(item) && (node.tagName === tagName ||
11456
+ ((node.tagName === 'UL' || node.tagName === 'OL') && node.hasAttribute('style')))) {
11457
+ if (node.hasAttribute('style')) {
11458
+ node.removeAttribute('style');
11459
+ }
11460
+ }
11319
11461
  }
11320
11462
  for (var j = nodesTemp.length - 1; j >= 0; j--) {
11321
11463
  var h = nodesTemp[j];
@@ -11417,7 +11559,8 @@ var Lists = /** @__PURE__ @class */ (function () {
11417
11559
  }
11418
11560
  }
11419
11561
  }
11420
- if (element.parentNode.insertBefore(this.closeTag(parentNode.tagName), element), 'LI' === parentNode.parentNode.tagName) {
11562
+ if (element.parentNode.insertBefore(this.closeTag(parentNode.tagName), element), 'LI' === parentNode.parentNode.tagName || 'OL' === parentNode.parentNode.tagName ||
11563
+ 'UL' === parentNode.parentNode.tagName) {
11421
11564
  element.parentNode.insertBefore(this.closeTag('LI'), element);
11422
11565
  }
11423
11566
  else {
@@ -12383,7 +12526,9 @@ var InsertHtml = /** @__PURE__ @class */ (function () {
12383
12526
  var isPreviousInlineElem = void 0;
12384
12527
  var paraElm = void 0;
12385
12528
  var previousParent = void 0;
12386
- range.deleteContents();
12529
+ if (!this.contentsDeleted) {
12530
+ range.deleteContents();
12531
+ }
12387
12532
  while (node.firstChild) {
12388
12533
  if (node.firstChild.nodeName === '#text' && node.firstChild.textContent.trim() === '') {
12389
12534
  detach(node.firstChild);
@@ -12511,9 +12656,28 @@ var InsertHtml = /** @__PURE__ @class */ (function () {
12511
12656
  var nodeSelection = new NodeSelection();
12512
12657
  var currentNode = this.getNodeCollection(range, nodeSelection, node)[this.getNodeCollection(range, nodeSelection, node).length - 1];
12513
12658
  var splitedElm = void 0;
12514
- if ((currentNode.nodeName === 'BR' || currentNode.nodeName === 'HR') && !isNullOrUndefined(currentNode.parentElement) &&
12515
- currentNode.parentElement.textContent.trim().length === 0) {
12659
+ if ((currentNode.nodeName === 'BR' || currentNode.nodeName === 'HR' ||
12660
+ (currentNode.nodeName === '#text' && !isNullOrUndefined(currentNode.parentElement) && currentNode.parentElement.nodeName === 'LI')) &&
12661
+ (!isNullOrUndefined(currentNode.parentElement) && currentNode.parentElement.textContent.trim().length === 0)) {
12516
12662
  splitedElm = currentNode;
12663
+ if (currentNode.parentElement.nodeName === 'LI' && !isNullOrUndefined(currentNode.nextSibling) &&
12664
+ currentNode.nextSibling.nodeName === 'BR') {
12665
+ detach(currentNode.nextSibling);
12666
+ }
12667
+ }
12668
+ else if (currentNode.nodeName === '#text' && !isNullOrUndefined(currentNode.parentElement) &&
12669
+ currentNode.parentElement.nodeName === 'LI' && currentNode.parentElement.textContent.trim().length > 0) {
12670
+ splitedElm = currentNode;
12671
+ if (currentNode.parentElement.nodeName === 'LI' && !isNullOrUndefined(currentNode.nextSibling) &&
12672
+ currentNode.nextSibling.nodeName === 'BR') {
12673
+ detach(currentNode.nextSibling);
12674
+ }
12675
+ if (!range.collapsed) {
12676
+ range.deleteContents();
12677
+ }
12678
+ range.insertNode(node);
12679
+ this.contentsDeleted = true;
12680
+ return;
12517
12681
  }
12518
12682
  else {
12519
12683
  splitedElm = nodeCutter.GetSpliceNode(range, blockNode);
@@ -12600,6 +12764,7 @@ var InsertHtml = /** @__PURE__ @class */ (function () {
12600
12764
  'ins', 'kbd', 'label', 'map', 'mark', 'meter', 'noscript', 'object', 'output', 'picture', 'progress',
12601
12765
  'q', 'ruby', 's', 'samp', 'script', 'select', 'slot', 'small', 'span', 'strong', 'sub', 'sup', 'svg',
12602
12766
  'template', 'textarea', 'time', 'u', 'tt', 'var', 'video', 'wbr'];
12767
+ InsertHtml.contentsDeleted = false;
12603
12768
  return InsertHtml;
12604
12769
  }());
12605
12770
 
@@ -17204,7 +17369,7 @@ var __extends$3 = (undefined && undefined.__extends) || (function () {
17204
17369
  d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
17205
17370
  };
17206
17371
  })();
17207
- var IFRAMEHEADER = "\n<!DOCTYPE html> \n <html>\n <head>\n <meta charset='utf-8' /> \n <style>\n @charset \"UTF-8\";\n body {\n font-family: \"Roboto\", sans-serif;\n font-size: 14px;\n }\n html, body{height: 100%;margin: 0;}\n body.e-cursor{cursor:default}\n span.e-selected-node\t{background-color: #939393;color: white;}\n span.e-selected-node.e-highlight {background-color: #1d9dd8;}\n body{color:#333;word-wrap:break-word;padding: 8px;box-sizing: border-box;}\n .e-rte-image {border: 0;cursor: pointer;display:\n block;float: none;height: auto;margin: 5px auto;max-width: 100%;position: relative;}\n .e-rte-image.e-imginline {display: inline-block;float: none;max-width: calc(100% - (2 * 5px));padding: 1px;vertical-align: bottom;}\n .e-rte-image.e-imgcenter {cursor: pointer;display: block;float: none;margin: 5px auto;max-width: 100%;position: relative;}\n .e-rte-image.e-imgright { float: right; margin: 0 auto;margin-left: 5px;text-align: right;}\n .e-rte-image.e-imgleft {float: left;margin: 0 auto;margin-right: 5px;text-align: left;}\n .e-img-caption { display: inline-block; float: none; margin: 5px auto; max-width: 100%;position: relative;}\n .e-img-caption.e-caption-inline {display: inline-block;float: none;\n margin: 5px auto;margin-left: 5px;margin-right: 5px;max-width: calc(100% - (2 * 5px));\n position: relativetext-align: center;vertical-align: bottom;}\n .e-img-inner {box-sizing: border-box;display: block;font-size: 16px;font-weight: initial;\n margin: auto;opacity: .9;text-align: center;width: 100%;}\n .e-img-wrap {display: inline-block;margin: auto;padding: 0;text-align: center;width: 100%;}\n .e-imgleft {float: left;margin: 0 5px 0 0;text-align: left;}\n .e-imgright {float: right;margin: 0 0 0 5px;text-align: right;}\n .e-imgcenter {cursor: pointer;display: block;float: none;height: auto;margin: 5px auto;max-width: 100%;position: relative;}\n .e-control img:not(.e-resize) {border: 2px solid transparent; z-index: 1000}\n .e-imginline {display: inline-block;float: none;margin-left: 5px;margin-right: 5px;\n max-width: calc(100% - (2 * 5px));vertical-align: bottom;}\n .e-imgbreak {border: 0;cursor: pointer;\n display: block;float: none;height: auto;margin: 5px auto;max-width: 100%;position: relative;}\n .e-rte-image.e-img-focus:not(.e-resize) {border: solid 2px #4a90e2;}\n img.e-img-focus::selection { background: transparent;color: transparent;}\n span.e-rte-imageboxmark { width: 10px; height: 10px; position: absolute; display: block;\n background: #4a90e2; border: 1px solid #fff; z-index: 1000;}\n .e-mob-rte.e-mob-span span.e-rte-imageboxmark { background: #4a90e2; border: 1px solid #fff; }\n .e-mob-rte span.e-rte-imageboxmark { background: #fff; border: 1px solid #4a90e2;\n border-radius: 15px; height: 20px; width: 20px; }\n .e-mob-rte.e-mob-span span.e-rte-imageboxmark { background: #4a90e2; border: 1px solid #fff; }\n .e-rte-content .e-content img.e-resize { z-index: 1000; }\n .e-img-caption .e-img-inner { outline: 0; }\n .e-img-caption a:focus-visible { outline: none; }\n .e-img-caption .e-rte-image.e-imgright, .e-img-caption .e-rte-image.e-imgleft { float: none; margin: 0;}\n body{box-sizing: border-box;min-height: 100px;outline: 0 solid transparent;\n overflow-x: auto;padding: 16px;position: relative;text-align: inherit;z-index: 2;}\n p{margin: 0 0 10px;margin-bottom: 10px;}\n li{margin-bottom: 10px;}\n h1{font-size: 2.17em;font-weight: 400;line-height: 1;margin: 10px 0;}\n h2{font-size: 1.74em;font-weight: 400;margin: 10px 0;}\n h3{font-size: 1.31em;font-weight: 400;margin: 10px 0;}\n h4{font-size: 16px;font-weight: 400;line-height: 1.5;margin: 0;}\n h5{font-size: 00.8em;font-weight: 400;margin: 0;}\n h6{font-size: 00.65em;font-weight: 400;margin: 0;}\n blockquote{margin: 10px 0;margin-left: 0;padding-left: 5px;border-left: solid 2px #5c5c5c;}\n pre{background-color: inherit;border: 0;border-radius: 0;color: #333;\n font-size: inherit;line-height: inherit;margin: 0 0 10px;overflow: visible;padding: 0;\n white-space: pre-wrap;word-break: inherit;word-wrap: break-word;}\n strong, b{font-weight: 700;}\n a{text-decoration: none;user-select: auto;}\n a:hover{text-decoration: underline;};\n p:last-child, pre:last-child, blockquote:last-child{margin-bottom: 0;}\n h3+h4, h4+h5, h5+h6{margin-top: 00.6em;}\n ul:last-child{margin-bottom: 0;}\n table { border-collapse: collapse; empty-cells: show;}\n table td,table th {border: 1px solid #BDBDBD; height: 20px; vertical-align: middle;}\n table.e-alternate-border tbody tr:nth-child(2n) {background-color: #F5F5F5;}\n table th {background-color: #E0E0E0;}\n table.e-dashed-border td,table.e-dashed-border th { border: 1px dashed #BDBDBD} \n table .e-cell-select {border: 1px double #4a90e2;}\n span.e-table-box { cursor: nwse-resize; display: block; height: 10px; position: absolute; width: 10px; }\n span.e-table-box.e-rmob {height: 14px;width: 14px;}\n .e-row-resize, .e-column-resize { background-color: transparent; background-repeat: repeat;\n bottom: 0;cursor: col-resize;height: 1px;overflow: visible;position: absolute;width: 1px; }\n .e-row-resize { cursor: row-resize; height: 1px;}\n .e-table-rhelper { cursor: col-resize; opacity: .87;position: absolute;}\n .e-table-rhelper.e-column-helper { width: 1px; }\n .e-table-rhelper.e-row-helper {height: 1px;}\n .e-reicon::before { border-bottom: 6px solid transparent; border-right: 6px solid;\n border-top: 6px solid transparent; content: ''; display: block; height: 0;\n position: absolute; right: 4px; top: 4px; width: 20px; }\n .e-reicon::after { border-bottom: 6px solid transparent; border-left: 6px solid;\n border-top: 6px solid transparent; content: ''; display: block;\n height: 0; left: 4px; position: absolute; top: 4px; width: 20px; z-index: 3; }\n .e-row-helper.e-reicon::after { top: 10px; transform: rotate(90deg); }\n .e-row-helper.e-reicon::before { left: 4px; top: -20px; transform: rotate(90deg); }\n span.e-table-box { background-color: #ffffff; border: 1px solid #BDBDBD; }\n span.e-table-box.e-rbox-select { background-color: #BDBDBD; border: 1px solid #BDBDBD; }\n .e-table-rhelper { background-color: #4a90e2;}\n .e-rtl { direction: rtl; }\n </style>\n </head>";
17372
+ var IFRAMEHEADER = "\n<!DOCTYPE html> \n <html>\n <head>\n <meta charset='utf-8' /> \n <style>\n @charset \"UTF-8\";\n body {\n font-family: \"Roboto\", sans-serif;\n font-size: 14px;\n }\n html, body{height: 100%;margin: 0;}\n body.e-cursor{cursor:default}\n span.e-selected-node\t{background-color: #939393;color: white;}\n span.e-selected-node.e-highlight {background-color: #1d9dd8;}\n body{color:#333;word-wrap:break-word;padding: 8px;box-sizing: border-box;}\n .e-rte-image {border: 0;cursor: pointer;display:\n block;float: none;height: auto;margin: 5px auto;max-width: 100%;position: relative;}\n .e-rte-image.e-imginline {display: inline-block;float: none;max-width: calc(100% - (2 * 5px));padding: 1px;vertical-align: bottom;}\n .e-rte-image.e-imgcenter {cursor: pointer;display: block;float: none;margin: 5px auto;max-width: 100%;position: relative;}\n .e-rte-image.e-imgright { float: right; margin: 0 auto;margin-left: 5px;text-align: right;}\n .e-rte-image.e-imgleft {float: left;margin: 0 auto;margin-right: 5px;text-align: left;}\n .e-img-caption { display: inline-block; float: none; margin: 5px auto; max-width: 100%;position: relative;}\n .e-img-caption.e-caption-inline {display: inline-block;float: none;\n margin: 5px auto;margin-left: 5px;margin-right: 5px;max-width: calc(100% - (2 * 5px));\n position: relativetext-align: center;vertical-align: bottom;}\n .e-img-inner {box-sizing: border-box;display: block;font-size: 16px;font-weight: initial;\n margin: auto;opacity: .9;text-align: center;width: 100%;}\n .e-img-wrap {display: inline-block;margin: auto;padding: 0;text-align: center;width: 100%;}\n .e-imgleft {float: left;margin: 0 5px 0 0;text-align: left;}\n .e-imgright {float: right;margin: 0 0 0 5px;text-align: right;}\n .e-imgcenter {cursor: pointer;display: block;float: none;height: auto;margin: 5px auto;max-width: 100%;position: relative;}\n .e-control img:not(.e-resize) {border: 2px solid transparent; z-index: 1000}\n .e-imginline {display: inline-block;float: none;margin-left: 5px;margin-right: 5px;\n max-width: calc(100% - (2 * 5px));vertical-align: bottom;}\n .e-imgbreak {border: 0;cursor: pointer;\n display: block;float: none;height: auto;margin: 5px auto;max-width: 100%;position: relative;}\n .e-rte-image.e-img-focus:not(.e-resize) {border: solid 2px #4a90e2;}\n img.e-img-focus::selection { background: transparent;color: transparent;}\n span.e-rte-imageboxmark { width: 10px; height: 10px; position: absolute; display: block;\n background: #4a90e2; border: 1px solid #fff; z-index: 1000;}\n .e-mob-rte.e-mob-span span.e-rte-imageboxmark { background: #4a90e2; border: 1px solid #fff; }\n .e-mob-rte span.e-rte-imageboxmark { background: #fff; border: 1px solid #4a90e2;\n border-radius: 15px; height: 20px; width: 20px; }\n .e-mob-rte.e-mob-span span.e-rte-imageboxmark { background: #4a90e2; border: 1px solid #fff; }\n .e-rte-content .e-content img.e-resize { z-index: 1000; }\n .e-img-caption .e-img-inner { outline: 0; }\n .e-img-caption a:focus-visible { outline: none; }\n .e-img-caption .e-rte-image.e-imgright, .e-img-caption .e-rte-image.e-imgleft { float: none; margin: 0;}\n body{box-sizing: border-box;min-height: 100px;outline: 0 solid transparent;\n overflow-x: auto;padding: 16px;position: relative;text-align: inherit;z-index: 2;}\n p{margin: 0 0 10px;margin-bottom: 10px;}\n li{margin-bottom: 10px;}\n h1{font-size: 2.17em;font-weight: 400;line-height: 1;margin: 10px 0;}\n h2{font-size: 1.74em;font-weight: 400;margin: 10px 0;}\n h3{font-size: 1.31em;font-weight: 400;margin: 10px 0;}\n h4{font-size: 16px;font-weight: 400;line-height: 1.5;margin: 0;}\n h5{font-size: 00.8em;font-weight: 400;margin: 0;}\n h6{font-size: 00.65em;font-weight: 400;margin: 0;}\n blockquote{margin: 10px 0;margin-left: 0;padding-left: 5px;border-left: solid 2px #5c5c5c;}\n pre{background-color: inherit;border: 0;border-radius: 0;color: #333;\n font-size: inherit;line-height: inherit;margin: 0 0 10px;overflow: visible;padding: 0;\n white-space: pre-wrap;word-break: inherit;word-wrap: break-word;}\n strong, b{font-weight: 700;}\n a{text-decoration: none;user-select: auto;}\n a:hover{text-decoration: underline;};\n p:last-child, pre:last-child, blockquote:last-child{margin-bottom: 0;}\n h3+h4, h4+h5, h5+h6{margin-top: 00.6em;}\n ul:last-child{margin-bottom: 0;}\n table { border-collapse: collapse; empty-cells: show;}\n table td,table th {border: 1px solid #BDBDBD; height: 20px; padding: 2px 5px; vertical-align: middle;}\n table.e-alternate-border tbody tr:nth-child(2n) {background-color: #F5F5F5;}\n table th {background-color: #E0E0E0;}\n table.e-dashed-border td,table.e-dashed-border th { border: 1px dashed #BDBDBD} \n table .e-cell-select {border: 1px double #4a90e2;}\n span.e-table-box { cursor: nwse-resize; display: block; height: 10px; position: absolute; width: 10px; }\n span.e-table-box.e-rmob {height: 14px;width: 14px;}\n .e-row-resize, .e-column-resize { background-color: transparent; background-repeat: repeat;\n bottom: 0;cursor: col-resize;height: 1px;overflow: visible;position: absolute;width: 1px; }\n .e-row-resize { cursor: row-resize; height: 1px;}\n .e-table-rhelper { cursor: col-resize; opacity: .87;position: absolute;}\n .e-table-rhelper.e-column-helper { width: 1px; }\n .e-table-rhelper.e-row-helper {height: 1px;}\n .e-reicon::before { border-bottom: 6px solid transparent; border-right: 6px solid;\n border-top: 6px solid transparent; content: ''; display: block; height: 0;\n position: absolute; right: 4px; top: 4px; width: 20px; }\n .e-reicon::after { border-bottom: 6px solid transparent; border-left: 6px solid;\n border-top: 6px solid transparent; content: ''; display: block;\n height: 0; left: 4px; position: absolute; top: 4px; width: 20px; z-index: 3; }\n .e-row-helper.e-reicon::after { top: 10px; transform: rotate(90deg); }\n .e-row-helper.e-reicon::before { left: 4px; top: -20px; transform: rotate(90deg); }\n span.e-table-box { background-color: #ffffff; border: 1px solid #BDBDBD; }\n span.e-table-box.e-rbox-select { background-color: #BDBDBD; border: 1px solid #BDBDBD; }\n .e-table-rhelper { background-color: #4a90e2;}\n .e-rtl { direction: rtl; }\n </style>\n </head>";
17208
17373
  /**
17209
17374
  * Content module is used to render Rich Text Editor content
17210
17375
  *
@@ -19106,9 +19271,10 @@ var Resize = /** @__PURE__ @class */ (function () {
19106
19271
  this.parent.on(destroy, this.destroy, this);
19107
19272
  };
19108
19273
  Resize.prototype.renderResizable = function () {
19274
+ var enableRtlClass = (this.parent.enableRtl) ? CLS_RTE_RES_WEST : CLS_RTE_RES_EAST;
19109
19275
  this.resizer = this.parent.createElement('div', {
19110
19276
  id: this.parent.getID() + '-resizable', className: 'e-icons'
19111
- + ' ' + CLS_RTE_RES_HANDLE + ' ' + CLS_RTE_RES_EAST
19277
+ + ' ' + CLS_RTE_RES_HANDLE + ' ' + enableRtlClass
19112
19278
  });
19113
19279
  this.parent.element.classList.add(CLS_RTE_RES_CNT);
19114
19280
  this.parent.element.appendChild(this.resizer);
@@ -19141,12 +19307,12 @@ var Resize = /** @__PURE__ @class */ (function () {
19141
19307
  var boundRect = this.parent.element.getBoundingClientRect();
19142
19308
  if (this.isMouseEvent(e)) {
19143
19309
  this.parent.element.style.height = e.clientY - boundRect.top + 'px';
19144
- this.parent.element.style.width = e.clientX - boundRect.left + 'px';
19310
+ this.parent.element.style.width = (!this.parent.enableRtl) ? e.clientX - boundRect.left + 'px' : boundRect.right - e.clientX + 'px';
19145
19311
  }
19146
19312
  else {
19147
19313
  var eventType = Browser.info.name !== 'msie' ? e.touches[0] : e;
19148
19314
  this.parent.element.style.height = eventType.clientY - boundRect.top + 'px';
19149
- this.parent.element.style.width = eventType.clientX - boundRect.left + 'px';
19315
+ this.parent.element.style.width = (!this.parent.enableRtl) ? e.clientX - boundRect.left + 'px' : boundRect.right - e.clientX + 'px';
19150
19316
  }
19151
19317
  if (!this.parent.toolbarSettings.enable) {
19152
19318
  this.parent.setContentHeight('', false);
@@ -20023,22 +20189,22 @@ var Link = /** @__PURE__ @class */ (function () {
20023
20189
  var textPlace = this.i10n.getConstant('textPlaceholder');
20024
20190
  var title = this.i10n.getConstant('linkTitle');
20025
20191
  var linkDialogEle = this.parent.createElement('div', {
20026
- className: 'e-rte-link-dialog', id: this.rteID + '_rtelink'
20192
+ className: 'e-rte-link-dialog' + ' ' + this.parent.cssClass, id: this.rteID + '_rtelink'
20027
20193
  });
20028
20194
  this.parent.element.appendChild(linkDialogEle);
20029
20195
  var linkContent = this.parent.createElement('div', {
20030
- className: 'e-rte-linkcontent', id: this.rteID + '_linkContent'
20196
+ className: 'e-rte-linkcontent' + ' ' + this.parent.cssClass, id: this.rteID + '_linkContent'
20031
20197
  });
20032
20198
  var htmlTextbox = (this.parent.editorMode === 'HTML') ? '<label>' + linkTooltip +
20033
- '</label></div><div class="e-rte-field">' +
20034
- '<input type="text" data-role ="none" spellcheck="false" placeholder = "' + title + '" class="e-input e-rte-linkTitle"></div>' +
20035
- '<div class="e-rte-label"></div>' + '<div class="e-rte-field">' +
20036
- '<input type="checkbox" class="e-rte-linkTarget" data-role ="none"></div>' : '';
20037
- var content = '<div class="e-rte-label"><label>' + linkWebAddress + '</label></div>' + '<div class="e-rte-field">' +
20038
- '<input type="text" data-role ="none" spellcheck="false" placeholder="' + urlPlace + '" class="e-input e-rte-linkurl"/></div>' +
20039
- '<div class="e-rte-label">' + '<label>' + linkDisplayText + '</label></div><div class="e-rte-field"> ' +
20040
- '<input type="text" data-role ="none" spellcheck="false" class="e-input e-rte-linkText" placeholder="' + textPlace + '">' +
20041
- '</div><div class="e-rte-label">' + htmlTextbox;
20199
+ '</label></div><div class="e-rte-field' + ' ' + this.parent.cssClass + '">' +
20200
+ '<input type="text" data-role ="none" spellcheck="false" placeholder = "' + title + '" class="e-input e-rte-linkTitle' + ' ' + this.parent.cssClass + '"></div>' +
20201
+ '<div class="e-rte-label' + ' ' + this.parent.cssClass + '"></div>' + '<div class="e-rte-field' + ' ' + this.parent.cssClass + '">' +
20202
+ '<input type="checkbox" class="e-rte-linkTarget' + ' ' + this.parent.cssClass + '" data-role ="none"></div>' : '';
20203
+ var content = '<div class="e-rte-label' + ' ' + this.parent.cssClass + '"><label>' + linkWebAddress + '</label></div>' + '<div class="e-rte-field' + ' ' + this.parent.cssClass + '">' +
20204
+ '<input type="text" data-role ="none" spellcheck="false" placeholder="' + urlPlace + '" class="e-input e-rte-linkurl' + ' ' + this.parent.cssClass + '"/></div>' +
20205
+ '<div class="e-rte-label' + ' ' + this.parent.cssClass + '">' + '<label>' + linkDisplayText + '</label></div><div class="e-rte-field' + ' ' + this.parent.cssClass + '"> ' +
20206
+ '<input type="text" data-role ="none" spellcheck="false" class="e-input e-rte-linkText' + ' ' + this.parent.cssClass + '" placeholder="' + textPlace + '">' +
20207
+ '</div><div class="e-rte-label' + ' ' + this.parent.cssClass + '">' + htmlTextbox;
20042
20208
  var contentElem = parseHtml(content);
20043
20209
  linkContent.appendChild(contentElem);
20044
20210
  var linkTarget = linkContent.querySelector('.e-rte-linkTarget');
@@ -20066,9 +20232,9 @@ var Link = /** @__PURE__ @class */ (function () {
20066
20232
  isModal: Browser.isDevice,
20067
20233
  buttons: [{
20068
20234
  click: this.insertlink.bind(selectObj),
20069
- buttonModel: { content: linkInsert, cssClass: 'e-flat e-insertLink', isPrimary: true }
20235
+ buttonModel: { content: linkInsert, cssClass: 'e-flat e-insertLink' + ' ' + this.parent.cssClass, isPrimary: true }
20070
20236
  },
20071
- { click: this.cancelDialog.bind(selectObj), buttonModel: { cssClass: 'e-flat', content: linkCancel } }],
20237
+ { click: this.cancelDialog.bind(selectObj), buttonModel: { cssClass: 'e-flat' + ' ' + this.parent.cssClass, content: linkCancel } }],
20072
20238
  target: (Browser.isDevice) ? document.body : this.parent.element,
20073
20239
  animationSettings: { effect: 'None' },
20074
20240
  close: function (event) {
@@ -20212,8 +20378,10 @@ var Link = /** @__PURE__ @class */ (function () {
20212
20378
  if (this.parent.formatter.getUndoRedoStack().length === 0) {
20213
20379
  this.parent.formatter.saveData();
20214
20380
  }
20381
+ var selectParentEle = this.getAnchorNode(e.selectParent[0]);
20215
20382
  this.parent.formatter.process(this.parent, e.args, e.args, {
20216
20383
  selectNode: e.selectNode, selectParent: e.selectParent, selection: e.selection,
20384
+ text: selectParentEle.innerText,
20217
20385
  subCommand: e.args.item.subCommand
20218
20386
  });
20219
20387
  if (isIDevice$1() && this.parent.iframeSettings.enable) {
@@ -20228,7 +20396,7 @@ var Link = /** @__PURE__ @class */ (function () {
20228
20396
  var selectParentEle = this.getAnchorNode(e.selectParent[0]);
20229
20397
  if (selectParentEle.classList.contains('e-rte-anchor') || selectParentEle.tagName === 'A') {
20230
20398
  this.parent.formatter.process(this.parent, e.args, e.args, {
20231
- url: selectParentEle.href,
20399
+ url: selectParentEle.href, text: selectParentEle.innerText,
20232
20400
  target: selectParentEle.target === '' ? '_self' : '_blank', selectNode: e.selectNode,
20233
20401
  subCommand: e.args.item.subCommand
20234
20402
  });
@@ -20548,18 +20716,18 @@ var Image = /** @__PURE__ @class */ (function () {
20548
20716
  this.resizeBtnInit();
20549
20717
  this.imgEle = e;
20550
20718
  addClass([this.imgEle], 'e-resize');
20551
- this.imgResizeDiv = this.parent.createElement('span', { className: 'e-img-resize', id: this.rteID + '_imgResize' });
20719
+ this.imgResizeDiv = this.parent.createElement('span', { className: 'e-img-resize' + ' ' + this.parent.cssClass, id: this.rteID + '_imgResize' });
20552
20720
  this.imgResizeDiv.appendChild(this.parent.createElement('span', {
20553
- className: 'e-rte-imageboxmark e-rte-topLeft', styles: 'cursor: nwse-resize'
20721
+ className: 'e-rte-imageboxmark e-rte-topLeft' + ' ' + this.parent.cssClass, styles: 'cursor: nwse-resize'
20554
20722
  }));
20555
20723
  this.imgResizeDiv.appendChild(this.parent.createElement('span', {
20556
- className: 'e-rte-imageboxmark e-rte-topRight', styles: 'cursor: nesw-resize'
20724
+ className: 'e-rte-imageboxmark e-rte-topRight' + ' ' + this.parent.cssClass, styles: 'cursor: nesw-resize'
20557
20725
  }));
20558
20726
  this.imgResizeDiv.appendChild(this.parent.createElement('span', {
20559
- className: 'e-rte-imageboxmark e-rte-botLeft', styles: 'cursor: nesw-resize'
20727
+ className: 'e-rte-imageboxmark e-rte-botLeft' + ' ' + this.parent.cssClass, styles: 'cursor: nesw-resize'
20560
20728
  }));
20561
20729
  this.imgResizeDiv.appendChild(this.parent.createElement('span', {
20562
- className: 'e-rte-imageboxmark e-rte-botRight', styles: 'cursor: nwse-resize'
20730
+ className: 'e-rte-imageboxmark e-rte-botRight' + ' ' + this.parent.cssClass, styles: 'cursor: nwse-resize'
20563
20731
  }));
20564
20732
  if (Browser.isDevice) {
20565
20733
  addClass([this.imgResizeDiv], 'e-mob-rte');
@@ -21224,12 +21392,12 @@ var Image = /** @__PURE__ @class */ (function () {
21224
21392
  }
21225
21393
  this.imagDialog(e);
21226
21394
  if (!isNullOrUndefined(this.dialogObj)) {
21227
- var linkWrap = this.parent.createElement('div', { className: 'e-img-linkwrap' });
21395
+ var linkWrap = this.parent.createElement('div', { className: 'e-img-linkwrap' + ' ' + this.parent.cssClass });
21228
21396
  var linkUrl = this.i10n.getConstant('linkurl');
21229
- var content = '<div class="e-rte-field">' +
21230
- '<input type="text" data-role ="none" class="e-input e-img-link" spellcheck="false" placeholder="' + linkUrl + '"/></div>' +
21397
+ var content = '<div class="e-rte-field' + ' ' + this.parent.cssClass + '">' +
21398
+ '<input type="text" data-role ="none" class="e-input e-img-link' + ' ' + this.parent.cssClass + '" spellcheck="false" placeholder="' + linkUrl + '"/></div>' +
21231
21399
  '<div class="e-rte-label"></div>' + '<div class="e-rte-field">' +
21232
- '<input type="checkbox" class="e-rte-linkTarget" data-role ="none"></div>';
21400
+ '<input type="checkbox" class="e-rte-linkTarget' + ' ' + this.parent.cssClass + '" data-role ="none"></div>';
21233
21401
  var contentElem = parseHtml(content);
21234
21402
  linkWrap.appendChild(contentElem);
21235
21403
  var linkTarget = linkWrap.querySelector('.e-rte-linkTarget');
@@ -21268,7 +21436,7 @@ var Image = /** @__PURE__ @class */ (function () {
21268
21436
  _this.insertlink(linkargs_1);
21269
21437
  },
21270
21438
  buttonModel: {
21271
- content: linkUpdate, cssClass: 'e-flat e-update-link', isPrimary: true
21439
+ content: linkUpdate, cssClass: 'e-flat e-update-link' + ' ' + this.parent.cssClass, isPrimary: true
21272
21440
  }
21273
21441
  }]
21274
21442
  });
@@ -21293,13 +21461,13 @@ var Image = /** @__PURE__ @class */ (function () {
21293
21461
  this.imagDialog(e);
21294
21462
  var altText = this.i10n.getConstant('altText');
21295
21463
  if (!isNullOrUndefined(this.dialogObj)) {
21296
- var altWrap = this.parent.createElement('div', { className: 'e-img-altwrap' });
21464
+ var altWrap = this.parent.createElement('div', { className: 'e-img-altwrap' + ' ' + this.parent.cssClass });
21297
21465
  var altHeader = this.i10n.getConstant('alternateHeader');
21298
21466
  var linkUpdate = this.i10n.getConstant('dialogUpdate');
21299
21467
  var getAlt = (e.selectNode[0].getAttribute('alt') === null) ? '' :
21300
21468
  e.selectNode[0].getAttribute('alt');
21301
- var content = '<div class="e-rte-field">' +
21302
- '<input type="text" spellcheck="false" value="' + getAlt + '" class="e-input e-img-alt" placeholder="' + altText + '"/>' +
21469
+ var content = '<div class="e-rte-field' + ' ' + this.parent.cssClass + '">' +
21470
+ '<input type="text" spellcheck="false" value="' + getAlt + '" class="e-input e-img-alt' + ' ' + this.parent.cssClass + '" placeholder="' + altText + '"/>' +
21303
21471
  '</div>';
21304
21472
  var contentElem = parseHtml(content);
21305
21473
  altWrap.appendChild(contentElem);
@@ -21316,7 +21484,7 @@ var Image = /** @__PURE__ @class */ (function () {
21316
21484
  _this.insertAlt(altArgs_1);
21317
21485
  },
21318
21486
  buttonModel: {
21319
- content: linkUpdate, cssClass: 'e-flat e-update-alt', isPrimary: true
21487
+ content: linkUpdate, cssClass: 'e-flat e-update-alt' + ' ' + this.parent.cssClass, isPrimary: true
21320
21488
  }
21321
21489
  }]
21322
21490
  });
@@ -21482,11 +21650,11 @@ var Image = /** @__PURE__ @class */ (function () {
21482
21650
  }
21483
21651
  else {
21484
21652
  this.captionEle = this.parent.createElement('span', {
21485
- className: CLS_CAPTION + ' ' + CLS_RTE_CAPTION,
21653
+ className: CLS_CAPTION + ' ' + CLS_RTE_CAPTION + ' ' + this.parent.cssClass,
21486
21654
  attrs: { contenteditable: 'false', draggable: 'false', style: 'width:' + this.parent.insertImageSettings.width }
21487
21655
  });
21488
- var imgWrap = this.parent.createElement('span', { className: 'e-img-wrap' });
21489
- var imgInner = this.parent.createElement('span', { className: 'e-img-inner',
21656
+ var imgWrap = this.parent.createElement('span', { className: 'e-img-wrap' + ' ' + this.parent.cssClass });
21657
+ var imgInner = this.parent.createElement('span', { className: 'e-img-inner' + ' ' + this.parent.cssClass,
21490
21658
  attrs: { contenteditable: 'true' } });
21491
21659
  var parent_1 = e.selectNode[0].parentElement;
21492
21660
  if (parent_1.tagName === 'A') {
@@ -21539,7 +21707,7 @@ var Image = /** @__PURE__ @class */ (function () {
21539
21707
  _this.insertSize(selectObj_1);
21540
21708
  },
21541
21709
  buttonModel: {
21542
- content: linkUpdate, cssClass: 'e-flat e-update-size', isPrimary: true
21710
+ content: linkUpdate, cssClass: 'e-flat e-update-size' + ' ' + this.parent.cssClass, isPrimary: true
21543
21711
  }
21544
21712
  }]
21545
21713
  });
@@ -21584,7 +21752,7 @@ var Image = /** @__PURE__ @class */ (function () {
21584
21752
  this.dialogObj.hide({ returnValue: true });
21585
21753
  return;
21586
21754
  }
21587
- var imgDialog = this.parent.createElement('div', { className: 'e-rte-img-dialog', id: this.rteID + '_image' });
21755
+ var imgDialog = this.parent.createElement('div', { className: 'e-rte-img-dialog' + ' ' + this.parent.cssClass, id: this.rteID + '_image' });
21588
21756
  this.parent.element.appendChild(imgDialog);
21589
21757
  var imgInsert = this.i10n.getConstant('dialogInsert');
21590
21758
  var imglinkCancel = this.i10n.getConstant('dialogCancel');
@@ -21593,7 +21761,7 @@ var Image = /** @__PURE__ @class */ (function () {
21593
21761
  var selectObj = { selfImage: this, selection: e.selection, args: e.args, selectParent: e.selectParent };
21594
21762
  var dialogModel = {
21595
21763
  header: imgHeader,
21596
- cssClass: CLS_RTE_ELEMENTS,
21764
+ cssClass: CLS_RTE_ELEMENTS + ' ' + this.parent.cssClass,
21597
21765
  enableRtl: this.parent.enableRtl,
21598
21766
  locale: this.parent.locale,
21599
21767
  showCloseIcon: true, closeOnEscape: true, width: (Browser.isDevice) ? '290px' : '340px', height: 'inherit',
@@ -21601,13 +21769,13 @@ var Image = /** @__PURE__ @class */ (function () {
21601
21769
  isModal: Browser.isDevice,
21602
21770
  buttons: [{
21603
21771
  click: this.insertImageUrl.bind(selectObj),
21604
- buttonModel: { content: imgInsert, cssClass: 'e-flat e-insertImage', isPrimary: true, disabled: true }
21772
+ buttonModel: { content: imgInsert, cssClass: 'e-flat e-insertImage' + ' ' + this.parent.cssClass, isPrimary: true, disabled: true }
21605
21773
  },
21606
21774
  {
21607
21775
  click: function (e) {
21608
21776
  _this.cancelDialog(e);
21609
21777
  },
21610
- buttonModel: { cssClass: 'e-flat e-cancel', content: imglinkCancel }
21778
+ buttonModel: { cssClass: 'e-flat e-cancel' + ' ' + this.parent.cssClass, content: imglinkCancel }
21611
21779
  }],
21612
21780
  target: (Browser.isDevice) ? document.body : this.parent.element,
21613
21781
  animationSettings: { effect: 'None' },
@@ -21630,12 +21798,12 @@ var Image = /** @__PURE__ @class */ (function () {
21630
21798
  _this.dialogObj = null;
21631
21799
  }
21632
21800
  };
21633
- var dialogContent = this.parent.createElement('div', { className: 'e-img-content' });
21801
+ var dialogContent = this.parent.createElement('div', { className: 'e-img-content' + ' ' + this.parent.cssClass });
21634
21802
  if ((!isNullOrUndefined(this.parent.insertImageSettings.path) && this.parent.editorMode === 'Markdown')
21635
21803
  || this.parent.editorMode === 'HTML') {
21636
21804
  dialogContent.appendChild(this.imgUpload(e));
21637
21805
  }
21638
- var linkHeader = this.parent.createElement('div', { className: 'e-linkheader' });
21806
+ var linkHeader = this.parent.createElement('div', { className: 'e-linkheader' + ' ' + this.parent.cssClass });
21639
21807
  var linkHeaderText = this.i10n.getConstant('imageLinkHeader');
21640
21808
  if (this.parent.editorMode === 'HTML') {
21641
21809
  linkHeader.innerHTML = linkHeaderText;
@@ -21707,7 +21875,8 @@ var Image = /** @__PURE__ @class */ (function () {
21707
21875
  }
21708
21876
  /* eslint-enable */
21709
21877
  }
21710
- if (!(this.parent.iframeSettings.enable && this.parent.currentTarget.nodeName === 'IMG') && e.target.tagName !== 'IMG' && this.imgResizeDiv && !(this.quickToolObj &&
21878
+ if (!(this.parent.iframeSettings.enable && !isNullOrUndefined(this.parent.currentTarget) && this.parent.currentTarget.nodeName === 'IMG') &&
21879
+ e.target.tagName !== 'IMG' && this.imgResizeDiv && !(this.quickToolObj &&
21711
21880
  this.quickToolObj.imageQTBar && this.quickToolObj.imageQTBar.element.contains(e.target)) &&
21712
21881
  this.contentModule.getEditPanel().contains(this.imgResizeDiv)) {
21713
21882
  this.cancelResizeAction();
@@ -21737,10 +21906,10 @@ var Image = /** @__PURE__ @class */ (function () {
21737
21906
  // eslint-disable-next-line
21738
21907
  Image.prototype.imageUrlPopup = function (e) {
21739
21908
  var _this = this;
21740
- var imgUrl = this.parent.createElement('div', { className: 'imgUrl' });
21909
+ var imgUrl = this.parent.createElement('div', { className: 'imgUrl' + ' ' + this.parent.cssClass });
21741
21910
  var placeUrl = this.i10n.getConstant('imageUrl');
21742
21911
  this.inputUrl = this.parent.createElement('input', {
21743
- className: 'e-input e-img-url',
21912
+ className: 'e-input e-img-url' + ' ' + this.parent.cssClass,
21744
21913
  attrs: { placeholder: placeUrl, spellcheck: 'false' }
21745
21914
  });
21746
21915
  this.inputUrl.addEventListener('input', function () {
@@ -21807,7 +21976,7 @@ var Image = /** @__PURE__ @class */ (function () {
21807
21976
  var selectNode = e.selectNode[0];
21808
21977
  var imgHeight = this.i10n.getConstant('imageHeight');
21809
21978
  var imgWidth = this.i10n.getConstant('imageWidth');
21810
- var imgSizeWrap = this.parent.createElement('div', { className: 'e-img-sizewrap' });
21979
+ var imgSizeWrap = this.parent.createElement('div', { className: 'e-img-sizewrap' + ' ' + this.parent.cssClass });
21811
21980
  var widthVal = isNullOrUndefined(this.changedWidthValue) && (selectNode.style.width.toString() === 'auto' ||
21812
21981
  selectNode.style.width !== '') ? selectNode.style.width : !isNullOrUndefined(this.changedWidthValue) ?
21813
21982
  this.changedWidthValue : (parseInt(selectNode.getClientRects()[0].width.toString(), 10)).toString();
@@ -21816,12 +21985,12 @@ var Image = /** @__PURE__ @class */ (function () {
21816
21985
  this.changedHeightValue : (parseInt(selectNode.getClientRects()[0].height.toString(), 10)).toString();
21817
21986
  this.changedWidthValue = null;
21818
21987
  this.changedHeightValue = null;
21819
- var content = '<div class="e-rte-label"><label>' + imgWidth +
21820
- '</label></div><div class="e-rte-field"><input type="text" id="imgwidth" class="e-img-width" value=' +
21988
+ var content = '<div class="e-rte-label' + ' ' + this.parent.cssClass + '"><label>' + imgWidth +
21989
+ '</label></div><div class="e-rte-field' + ' ' + this.parent.cssClass + '"><input type="text" id="imgwidth" class="e-img-width' + ' ' + this.parent.cssClass + '" value=' +
21821
21990
  widthVal
21822
21991
  + ' /></div>' +
21823
- '<div class="e-rte-label">' + '<label>' + imgHeight + '</label></div><div class="e-rte-field"> ' +
21824
- '<input type="text" id="imgheight" class="e-img-height" value=' +
21992
+ '<div class="e-rte-label' + ' ' + this.parent.cssClass + '">' + '<label>' + imgHeight + '</label></div><div class="e-rte-field' + ' ' + this.parent.cssClass + '"> ' +
21993
+ '<input type="text" id="imgheight" class="e-img-height' + ' ' + this.parent.cssClass + '" value=' +
21825
21994
  heightVal
21826
21995
  + ' /></div>';
21827
21996
  var contentElem = parseHtml(content);
@@ -21911,16 +22080,16 @@ var Image = /** @__PURE__ @class */ (function () {
21911
22080
  save = e.selection;
21912
22081
  selectParent = e.selectParent;
21913
22082
  }
21914
- var uploadParentEle = this.parent.createElement('div', { className: 'e-img-uploadwrap e-droparea' });
22083
+ var uploadParentEle = this.parent.createElement('div', { className: 'e-img-uploadwrap e-droparea' + ' ' + this.parent.cssClass });
21915
22084
  var deviceImgUpMsg = this.i10n.getConstant('imageDeviceUploadMessage');
21916
22085
  var imgUpMsg = this.i10n.getConstant('imageUploadMessage');
21917
- var span = this.parent.createElement('span', { className: 'e-droptext' });
22086
+ var span = this.parent.createElement('span', { className: 'e-droptext' + ' ' + this.parent.cssClass });
21918
22087
  var spanMsg = this.parent.createElement('span', {
21919
- className: 'e-rte-upload-text', innerHTML: ((Browser.isDevice) ? deviceImgUpMsg : imgUpMsg)
22088
+ className: 'e-rte-upload-text' + ' ' + this.parent.cssClass, innerHTML: ((Browser.isDevice) ? deviceImgUpMsg : imgUpMsg)
21920
22089
  });
21921
22090
  span.appendChild(spanMsg);
21922
22091
  var btnEle = this.parent.createElement('button', {
21923
- className: 'e-browsebtn', id: this.rteID + '_insertImage', attrs: { autofocus: 'true', type: 'button' }
22092
+ className: 'e-browsebtn' + ' ' + this.parent.cssClass, id: this.rteID + '_insertImage', attrs: { autofocus: 'true', type: 'button' }
21924
22093
  });
21925
22094
  span.appendChild(btnEle);
21926
22095
  uploadParentEle.appendChild(span);
@@ -21932,7 +22101,7 @@ var Image = /** @__PURE__ @class */ (function () {
21932
22101
  var btnClick = (Browser.isDevice) ? span : btnEle;
21933
22102
  EventHandler.add(btnClick, 'click', this.fileSelect, this);
21934
22103
  var uploadEle = this.parent.createElement('input', {
21935
- id: this.rteID + '_upload', attrs: { type: 'File', name: 'UploadFiles' }
22104
+ id: this.rteID + '_upload', attrs: { type: 'File', name: 'UploadFiles' }, className: this.parent.cssClass
21936
22105
  });
21937
22106
  uploadParentEle.appendChild(uploadEle);
21938
22107
  var altText;
@@ -22622,7 +22791,7 @@ var ViewSource = /** @__PURE__ @class */ (function () {
22622
22791
  this.parent.formatter.editorManager.observer.off(KEY_DOWN_HANDLER, this.onKeyDown);
22623
22792
  };
22624
22793
  ViewSource.prototype.getSourceCode = function () {
22625
- return this.parent.createElement('textarea', { className: 'e-rte-srctextarea' });
22794
+ return this.parent.createElement('textarea', { className: 'e-rte-srctextarea' + ' ' + this.parent.cssClass });
22626
22795
  };
22627
22796
  ViewSource.prototype.wireEvent = function (element) {
22628
22797
  this.keyboardModule = new KeyboardEvents$1(element, {
@@ -22854,6 +23023,8 @@ var Table = /** @__PURE__ @class */ (function () {
22854
23023
  this.pageX = null;
22855
23024
  this.pageY = null;
22856
23025
  this.moveEle = null;
23026
+ this.currentColumnResize = '';
23027
+ this.currentMarginLeft = 0;
22857
23028
  this.parent = parent;
22858
23029
  this.rteID = parent.element.id;
22859
23030
  this.l10n = serviceLocator.getService('rteLocale');
@@ -23021,6 +23192,7 @@ var Table = /** @__PURE__ @class */ (function () {
23021
23192
  }
23022
23193
  else if (ele && ele.querySelectorAll('table').length > 0) {
23023
23194
  this.removeResizeElement();
23195
+ this.hideTableQuickToolbar();
23024
23196
  }
23025
23197
  }
23026
23198
  if (ele && ele.tagName !== 'TD' && ele.tagName !== 'TH') {
@@ -23397,7 +23569,7 @@ var Table = /** @__PURE__ @class */ (function () {
23397
23569
  };
23398
23570
  Table.prototype.tableResizeEleCreation = function (table, e) {
23399
23571
  this.parent.preventDefaultResize(e);
23400
- var columns = Array.prototype.slice.call(table.rows[this.calMaxCol(table)].cells, 1);
23572
+ var columns = table.rows[this.calMaxCol(table)].cells;
23401
23573
  var rows = [];
23402
23574
  for (var i = 0; i < table.rows.length; i++) {
23403
23575
  rows.push(Array.prototype.slice.call(table.rows[i].cells, 0, 1)[0]);
@@ -23405,15 +23577,21 @@ var Table = /** @__PURE__ @class */ (function () {
23405
23577
  var height = parseInt(getComputedStyle(table).height, 10);
23406
23578
  var width = parseInt(getComputedStyle(table).width, 10);
23407
23579
  var pos = this.calcPos(table);
23408
- for (var i = 0; columns.length > i; i++) {
23580
+ for (var i = 0; columns.length >= i; i++) {
23409
23581
  var colReEle = this.parent.createElement('span', {
23410
23582
  attrs: {
23411
- 'data-col': (i + 1).toString(), 'unselectable': 'on', 'contenteditable': 'false'
23583
+ 'data-col': (i).toString(), 'unselectable': 'on', 'contenteditable': 'false'
23412
23584
  }
23413
23585
  });
23414
23586
  colReEle.classList.add(CLS_RTE_TABLE_RESIZE, CLS_TB_COL_RES);
23415
- colReEle.style.cssText = 'height: ' + height + 'px; width: 4px; top: ' + pos.top +
23416
- 'px; left:' + (pos.left + this.calcPos(columns[i]).left) + 'px;';
23587
+ if (columns.length === i) {
23588
+ colReEle.style.cssText = 'height: ' + height + 'px; width: 4px; top: ' + pos.top +
23589
+ 'px; left:' + (pos.left + this.calcPos(columns[i - 1]).left + columns[i - 1].offsetWidth) + 'px;';
23590
+ }
23591
+ else {
23592
+ colReEle.style.cssText = 'height: ' + height + 'px; width: 4px; top: ' + pos.top +
23593
+ 'px; left:' + (pos.left + this.calcPos(columns[i]).left) + 'px;';
23594
+ }
23417
23595
  this.contentModule.getEditPanel().appendChild(colReEle);
23418
23596
  }
23419
23597
  for (var i = 0; rows.length > i; i++) {
@@ -23431,7 +23609,7 @@ var Table = /** @__PURE__ @class */ (function () {
23431
23609
  this.contentModule.getEditPanel().appendChild(rowReEle);
23432
23610
  }
23433
23611
  var tableReBox = this.parent.createElement('span', {
23434
- className: CLS_TB_BOX_RES, attrs: {
23612
+ className: CLS_TB_BOX_RES + ' ' + this.parent.cssClass, attrs: {
23435
23613
  'data-col': columns.length.toString(), 'unselectable': 'on', 'contenteditable': 'false'
23436
23614
  }
23437
23615
  });
@@ -23530,7 +23708,19 @@ var Table = /** @__PURE__ @class */ (function () {
23530
23708
  this.hideTableQuickToolbar();
23531
23709
  if (target.classList.contains(CLS_TB_COL_RES)) {
23532
23710
  this.resizeBtnStat.column = true;
23533
- this.columnEle = this.curTable.rows[this.calMaxCol(this.curTable)].cells[parseInt(target.getAttribute('data-col'), 10)];
23711
+ if (parseInt(target.getAttribute('data-col'), 10) === this.curTable.rows[this.calMaxCol(this.curTable)].cells.length) {
23712
+ this.currentColumnResize = 'last';
23713
+ this.columnEle = this.curTable.rows[this.calMaxCol(this.curTable)].cells[parseInt(target.getAttribute('data-col'), 10) - 1];
23714
+ }
23715
+ else {
23716
+ if (parseInt(target.getAttribute('data-col'), 10) === 0) {
23717
+ this.currentColumnResize = 'first';
23718
+ }
23719
+ else {
23720
+ this.currentColumnResize = 'middle';
23721
+ }
23722
+ this.columnEle = this.curTable.rows[this.calMaxCol(this.curTable)].cells[parseInt(target.getAttribute('data-col'), 10)];
23723
+ }
23534
23724
  this.colIndex = this.columnEle.cellIndex;
23535
23725
  this.moveEle = e.target;
23536
23726
  this.appendHelper();
@@ -23574,7 +23764,7 @@ var Table = /** @__PURE__ @class */ (function () {
23574
23764
  };
23575
23765
  Table.prototype.appendHelper = function () {
23576
23766
  this.helper = this.parent.createElement('div', {
23577
- className: 'e-table-rhelper'
23767
+ className: 'e-table-rhelper' + ' ' + this.parent.cssClass
23578
23768
  });
23579
23769
  if (Browser.isDevice) {
23580
23770
  this.helper.classList.add('e-reicon');
@@ -23587,7 +23777,8 @@ var Table = /** @__PURE__ @class */ (function () {
23587
23777
  if (this.resizeBtnStat.column) {
23588
23778
  this.helper.classList.add('e-column-helper');
23589
23779
  this.helper.style.cssText = 'height: ' + getComputedStyle(this.curTable).height + '; top: ' +
23590
- pos.top + 'px; left:' + (pos.left + this.calcPos(this.columnEle).left - 1) + 'px;';
23780
+ pos.top + 'px; left:' + ((pos.left + this.calcPos(this.columnEle).left) +
23781
+ (this.currentColumnResize === 'last' ? this.columnEle.offsetWidth + 2 : 0) - 1) + 'px;';
23591
23782
  }
23592
23783
  else {
23593
23784
  this.helper.classList.add('e-row-helper');
@@ -23599,7 +23790,8 @@ var Table = /** @__PURE__ @class */ (function () {
23599
23790
  Table.prototype.updateHelper = function () {
23600
23791
  var pos = this.calcPos(this.curTable);
23601
23792
  if (this.resizeBtnStat.column) {
23602
- var left = pos.left + this.calcPos(this.columnEle).left - 1;
23793
+ var left = (pos.left + this.calcPos(this.columnEle).left) +
23794
+ (this.currentColumnResize === 'last' ? this.columnEle.offsetWidth + 2 : 0) - 1;
23603
23795
  this.helper.style.left = left + 'px';
23604
23796
  }
23605
23797
  else {
@@ -23638,23 +23830,66 @@ var Table = /** @__PURE__ @class */ (function () {
23638
23830
  var paddingSize = +getComputedStyle(_this.contentModule.getEditPanel()).paddingRight.match(/\d/g).join('');
23639
23831
  var rteWidth = _this.contentModule.getEditPanel().offsetWidth - (_this.contentModule.getEditPanel().offsetWidth -
23640
23832
  _this.contentModule.getEditPanel().clientWidth) - paddingSize * 2;
23833
+ var widthCompare = void 0;
23834
+ if (!isNullOrUndefined(_this.curTable.parentElement.closest('table'))) {
23835
+ var currentTd = _this.curTable.closest('td');
23836
+ var currentTDPad = +getComputedStyle(currentTd).paddingRight.match(/\d/g).join('');
23837
+ // Padding of the current table with the parent element multiply with 2.
23838
+ widthCompare = currentTd.offsetWidth - (currentTd.offsetWidth - currentTd.clientWidth) - currentTDPad * 2;
23839
+ }
23840
+ else {
23841
+ widthCompare = rteWidth;
23842
+ }
23641
23843
  if (_this.resizeBtnStat.column) {
23642
- var cellColl = _this.curTable.rows[_this.calMaxCol(_this.curTable)].cells;
23643
23844
  var width = parseFloat(_this.columnEle.offsetWidth.toString());
23644
- var actualwid = width - mouseX;
23645
- var totalwid = parseFloat(_this.columnEle.offsetWidth.toString()) +
23646
- parseFloat(cellColl[_this.colIndex - 1].offsetWidth.toString());
23647
- for (var i = 0; i < _this.curTable.rows.length; i++) {
23648
- if ((totalwid - actualwid) > 20 && actualwid > 20) {
23649
- var leftColumnWidth = totalwid - actualwid;
23650
- var rightColWidth = actualwid;
23651
- if (!isNullOrUndefined(_this.curTable.rows[i].cells[_this.colIndex - 1])) {
23652
- _this.curTable.rows[i].cells[_this.colIndex - 1].style.width =
23653
- _this.convertPixelToPercentage(leftColumnWidth, tableWidth) + '%';
23845
+ var cellRow = _this.curTable.rows[0].cells[0].nodeName === 'TH' ? 1 : 0;
23846
+ var currentTableWidth = parseFloat(_this.curTable.style.width.split('%')[0]);
23847
+ var currentColumnCellWidth = parseFloat(_this.curTable.rows[cellRow].cells[_this.colIndex].style.width.split('%')[0]);
23848
+ if (_this.currentColumnResize === 'first') {
23849
+ mouseX = mouseX - 0.75; //This was done for to make the gripper and the table first/last column will be close.
23850
+ _this.removeResizeElement();
23851
+ // Below the value '100' is the 100% width of the parent element.
23852
+ if (((mouseX !== 0 && 5 < currentColumnCellWidth) || mouseX < 0) && currentTableWidth <= 100 && _this.convertPixelToPercentage(tableWidth - mouseX, widthCompare) <= 100) {
23853
+ var firstColumnsCell = _this.findFirstLastColCells(_this.curTable, true);
23854
+ _this.curTable.style.width = _this.convertPixelToPercentage(tableWidth - mouseX, widthCompare) > 100 ? (100 + '%') : (_this.convertPixelToPercentage(tableWidth - mouseX, widthCompare) + '%');
23855
+ var differenceWidth = currentTableWidth - _this.convertPixelToPercentage(tableWidth - mouseX, widthCompare);
23856
+ _this.currentMarginLeft = _this.currentMarginLeft + differenceWidth;
23857
+ _this.curTable.style.marginLeft = 'calc(' + (_this.curTable.style.width === '100%' ? 0 : _this.currentMarginLeft) + '%)';
23858
+ for (var i = 0; i < firstColumnsCell.length; i++) {
23859
+ _this.curTable.rows[i].cells[_this.colIndex].style.width = (currentColumnCellWidth - differenceWidth) + '%';
23654
23860
  }
23655
- if (!isNullOrUndefined(_this.curTable.rows[i].cells[_this.colIndex])) {
23656
- _this.curTable.rows[i].cells[_this.colIndex].style.width =
23657
- _this.convertPixelToPercentage(rightColWidth, tableWidth) + '%';
23861
+ }
23862
+ }
23863
+ else if (_this.currentColumnResize === 'last') {
23864
+ mouseX = mouseX + 0.75; //This was done for to make the gripper and the table first/last column will be close.
23865
+ _this.removeResizeElement();
23866
+ // Below the value '100' is the 100% width of the parent element.
23867
+ if (((mouseX !== 0 && 5 < currentColumnCellWidth) || mouseX > 0) && currentTableWidth <= 100 && _this.convertPixelToPercentage(tableWidth + mouseX, widthCompare) <= 100) {
23868
+ var lastColumnsCell = _this.findFirstLastColCells(_this.curTable, false);
23869
+ _this.curTable.style.width = _this.convertPixelToPercentage(tableWidth + mouseX, widthCompare) > 100 ? (100 + '%') : (_this.convertPixelToPercentage(tableWidth + mouseX, widthCompare) + '%');
23870
+ var differenceWidth = currentTableWidth - _this.convertPixelToPercentage(tableWidth + mouseX, widthCompare);
23871
+ for (var i = 0; i < lastColumnsCell.length; i++) {
23872
+ _this.curTable.rows[i].cells[_this.colIndex].style.width = (currentColumnCellWidth - differenceWidth) + '%';
23873
+ }
23874
+ }
23875
+ }
23876
+ else {
23877
+ var cellColl = _this.curTable.rows[_this.calMaxCol(_this.curTable)].cells;
23878
+ var actualwid = width - mouseX;
23879
+ var totalwid = parseFloat(_this.columnEle.offsetWidth.toString()) +
23880
+ parseFloat(cellColl[_this.colIndex - 1].offsetWidth.toString());
23881
+ for (var i = 0; i < _this.curTable.rows.length; i++) {
23882
+ if ((totalwid - actualwid) > 20 && actualwid > 20) {
23883
+ var leftColumnWidth = totalwid - actualwid;
23884
+ var rightColWidth = actualwid;
23885
+ if (!isNullOrUndefined(_this.curTable.rows[i].cells[_this.colIndex - 1])) {
23886
+ _this.curTable.rows[i].cells[_this.colIndex - 1].style.width =
23887
+ _this.convertPixelToPercentage(leftColumnWidth, tableWidth) + '%';
23888
+ }
23889
+ if (!isNullOrUndefined(_this.curTable.rows[i].cells[_this.colIndex])) {
23890
+ _this.curTable.rows[i].cells[_this.colIndex].style.width =
23891
+ _this.convertPixelToPercentage(rightColWidth, tableWidth) + '%';
23892
+ }
23658
23893
  }
23659
23894
  }
23660
23895
  }
@@ -23678,7 +23913,7 @@ var Table = /** @__PURE__ @class */ (function () {
23678
23913
  EventHandler.remove(_this.contentModule.getEditPanel(), 'mouseover', _this.resizeHelper);
23679
23914
  }
23680
23915
  var widthType = _this.curTable.style.width.indexOf('%') > -1;
23681
- _this.curTable.style.width = widthType ? _this.convertPixelToPercentage(tableWidth + mouseX, rteWidth) + '%'
23916
+ _this.curTable.style.width = widthType ? _this.convertPixelToPercentage(tableWidth + mouseX, widthCompare) + '%'
23682
23917
  : tableWidth + mouseX + 'px';
23683
23918
  _this.curTable.style.height = tableHeight + mouseY + 'px';
23684
23919
  tableReBox.classList.add('e-rbox-select');
@@ -23688,6 +23923,17 @@ var Table = /** @__PURE__ @class */ (function () {
23688
23923
  }
23689
23924
  });
23690
23925
  };
23926
+ Table.prototype.findFirstLastColCells = function (table, isFirst) {
23927
+ var resultColumns = [];
23928
+ var rows = table.querySelectorAll('tr');
23929
+ for (var i = 0; i < rows.length; i++) {
23930
+ if (rows[i].closest('table') === table) {
23931
+ var columns = rows[i].querySelectorAll('th, td');
23932
+ resultColumns.push(isFirst ? columns[0] : columns[columns.length - 1]);
23933
+ }
23934
+ }
23935
+ return resultColumns;
23936
+ };
23691
23937
  Table.prototype.convertPixelToPercentage = function (value, offsetValue) {
23692
23938
  return (value / offsetValue) * 100;
23693
23939
  };
@@ -23706,14 +23952,14 @@ var Table = /** @__PURE__ @class */ (function () {
23706
23952
  EventHandler.add(this.contentModule.getEditPanel(), 'mouseover', this.resizeHelper, this);
23707
23953
  }
23708
23954
  this.removeResizeElement();
23709
- if (this.helper && this.contentModule.getEditPanel().contains(this.helper)) {
23710
- detach(this.helper);
23711
- this.helper = null;
23712
- }
23713
- this.pageX = null;
23714
- this.pageY = null;
23715
- this.moveEle = null;
23716
23955
  }
23956
+ if (this.helper && this.contentModule.getEditPanel().contains(this.helper)) {
23957
+ detach(this.helper);
23958
+ this.helper = null;
23959
+ }
23960
+ this.pageX = null;
23961
+ this.pageY = null;
23962
+ this.moveEle = null;
23717
23963
  var args = { event: e, requestType: 'table' };
23718
23964
  this.parent.trigger(resizeStop, args);
23719
23965
  this.parent.formatter.saveData();
@@ -23768,16 +24014,16 @@ var Table = /** @__PURE__ @class */ (function () {
23768
24014
  this.hideTableQuickToolbar();
23769
24015
  var header = '1X1';
23770
24016
  var insertbtn = this.l10n.getConstant('inserttablebtn');
23771
- this.dlgDiv = this.parent.createElement('div', { className: 'e-rte-table-popup', id: this.rteID + '_table' });
23772
- this.tblHeader = this.parent.createElement('div', { className: 'e-rte-popup-header' });
24017
+ this.dlgDiv = this.parent.createElement('div', { className: 'e-rte-table-popup' + ' ' + this.parent.cssClass, id: this.rteID + '_table' });
24018
+ this.tblHeader = this.parent.createElement('div', { className: 'e-rte-popup-header' + ' ' + this.parent.cssClass });
23773
24019
  this.tblHeader.innerHTML = header;
23774
24020
  this.dlgDiv.appendChild(this.tblHeader);
23775
- var tableDiv = this.parent.createElement('div', { className: 'e-rte-table-span' });
24021
+ var tableDiv = this.parent.createElement('div', { className: 'e-rte-table-span' + ' ' + this.parent.cssClass });
23776
24022
  this.drawTable(tableDiv, args);
23777
24023
  this.dlgDiv.appendChild(tableDiv);
23778
- this.dlgDiv.appendChild(this.parent.createElement('span', { className: 'e-span-border' }));
24024
+ this.dlgDiv.appendChild(this.parent.createElement('span', { className: 'e-span-border' + ' ' + this.parent.cssClass }));
23779
24025
  var btnEle = this.parent.createElement('button', {
23780
- className: 'e-insert-table-btn', id: this.rteID + '_insertTable',
24026
+ className: 'e-insert-table-btn' + ' ' + this.parent.cssClass, id: this.rteID + '_insertTable',
23781
24027
  attrs: { type: 'button', tabindex: '0' }
23782
24028
  });
23783
24029
  if (!isNullOrUndefined(this.parent.getToolbarElement().querySelector('.e-expended-nav'))) {
@@ -23839,7 +24085,7 @@ var Table = /** @__PURE__ @class */ (function () {
23839
24085
  !target.offsetParent.classList.contains('e-quick-dropdown') &&
23840
24086
  !target.offsetParent.classList.contains('e-rte-backgroundcolor-dropdown') && !closest(target, '.e-rte-dropdown-popup')
23841
24087
  && !closest(target, '.e-rte-elements')) {
23842
- removeClass(this.parent.element.querySelectorAll('table td'), CLS_TABLE_SEL);
24088
+ removeClass(this.parent.inputElement.querySelectorAll('table td'), CLS_TABLE_SEL);
23843
24089
  if (!Browser.isIE) {
23844
24090
  this.hideTableQuickToolbar();
23845
24091
  }
@@ -23853,10 +24099,10 @@ var Table = /** @__PURE__ @class */ (function () {
23853
24099
  var rowDiv;
23854
24100
  var tableCell;
23855
24101
  for (var row = 0; row < 3; row++) {
23856
- rowDiv = this.parent.createElement('div', { className: 'e-rte-table-row', attrs: { 'data-column': '' + row } });
24102
+ rowDiv = this.parent.createElement('div', { className: 'e-rte-table-row' + ' ' + this.parent.cssClass, attrs: { 'data-column': '' + row } });
23857
24103
  for (var col = 0; col < 10; col++) {
23858
24104
  var display = (row > 2) ? 'none' : 'inline-block';
23859
- tableCell = this.parent.createElement('div', { className: 'e-rte-tablecell e-default', attrs: { 'data-cell': '' + col } });
24105
+ tableCell = this.parent.createElement('div', { className: 'e-rte-tablecell e-default' + ' ' + this.parent.cssClass, attrs: { 'data-cell': '' + col } });
23860
24106
  rowDiv.appendChild(tableCell);
23861
24107
  tableCell.style.display = display;
23862
24108
  if (col === 0 && row === 0) {
@@ -23880,13 +24126,13 @@ var Table = /** @__PURE__ @class */ (function () {
23880
24126
  height: 'initial', width: '290px', content: editContent, header: editHeader,
23881
24127
  buttons: [{
23882
24128
  click: this.applyProperties.bind(this, args),
23883
- buttonModel: { content: update, cssClass: 'e-flat e-size-update', isPrimary: true }
24129
+ buttonModel: { content: update, cssClass: 'e-flat e-size-update' + ' ' + this.parent.cssClass, isPrimary: true }
23884
24130
  },
23885
24131
  {
23886
24132
  click: function (e) {
23887
24133
  _this.cancelDialog(e);
23888
24134
  },
23889
- buttonModel: { cssClass: 'e-flat e-cancel', content: cancel }
24135
+ buttonModel: { cssClass: 'e-flat e-cancel' + ' ' + this.parent.cssClass, content: cancel }
23890
24136
  }],
23891
24137
  cssClass: this.parent.cssClass
23892
24138
  });
@@ -23910,13 +24156,13 @@ var Table = /** @__PURE__ @class */ (function () {
23910
24156
  height: 'initial', width: '290px', content: dlgContent,
23911
24157
  buttons: [{
23912
24158
  click: proxy.customTable.bind(this, args),
23913
- buttonModel: { content: insert, cssClass: 'e-flat e-insert-table', isPrimary: true }
24159
+ buttonModel: { content: insert, cssClass: 'e-flat e-insert-table' + ' ' + proxy.parent.cssClass, isPrimary: true }
23914
24160
  },
23915
24161
  {
23916
24162
  click: function (e) {
23917
24163
  proxy.cancelDialog(e);
23918
24164
  },
23919
- buttonModel: { cssClass: 'e-flat e-cancel', content: cancel }
24165
+ buttonModel: { cssClass: 'e-flat e-cancel' + ' ' + proxy.parent.cssClass, content: cancel }
23920
24166
  }]
23921
24167
  });
23922
24168
  if (!isNullOrUndefined(proxy.parent.cssClass)) {
@@ -23928,10 +24174,10 @@ var Table = /** @__PURE__ @class */ (function () {
23928
24174
  Table.prototype.tableCellDlgContent = function () {
23929
24175
  var tableColumn = this.l10n.getConstant('columns');
23930
24176
  var tableRow = this.l10n.getConstant('rows');
23931
- var tableWrap = this.parent.createElement('div', { className: 'e-cell-wrap' });
23932
- var content = '<div class="e-rte-field"><input type="text" '
23933
- + ' data-role ="none" id="tableColumn" class="e-table-column"/></div>'
23934
- + '<div class="e-rte-field"><input type="text" data-role ="none" id="tableRow" class="e-table-row" /></div>';
24177
+ var tableWrap = this.parent.createElement('div', { className: 'e-cell-wrap' + ' ' + this.parent.cssClass });
24178
+ var content = '<div class="e-rte-field' + ' ' + this.parent.cssClass + '"><input type="text" '
24179
+ + ' data-role ="none" id="tableColumn" class="e-table-column' + ' ' + this.parent.cssClass + '"/></div>'
24180
+ + '<div class="e-rte-field' + ' ' + this.parent.cssClass + '"><input type="text" data-role ="none" id="tableRow" class="e-table-row' + ' ' + this.parent.cssClass + '" /></div>';
23935
24181
  var contentElem = parseHtml(content);
23936
24182
  tableWrap.appendChild(contentElem);
23937
24183
  this.columnTextBox = new NumericTextBox({
@@ -23975,7 +24221,7 @@ var Table = /** @__PURE__ @class */ (function () {
23975
24221
  return;
23976
24222
  }
23977
24223
  var tableDialog = this.parent.createElement('div', {
23978
- className: 'e-rte-edit-table', id: this.rteID + '_tabledialog'
24224
+ className: 'e-rte-edit-table' + ' ' + this.parent.cssClass, id: this.rteID + '_tabledialog'
23979
24225
  });
23980
24226
  this.parent.element.appendChild(tableDialog);
23981
24227
  var insert = this.l10n.getConstant('dialogInsert');
@@ -23990,13 +24236,13 @@ var Table = /** @__PURE__ @class */ (function () {
23990
24236
  position: { X: 'center', Y: (Browser.isDevice) ? 'center' : 'top' },
23991
24237
  isModal: Browser.isDevice,
23992
24238
  buttons: [{
23993
- buttonModel: { content: insert, cssClass: 'e-flat e-insert-table', isPrimary: true }
24239
+ buttonModel: { content: insert, cssClass: 'e-flat e-insert-table' + ' ' + this.parent.cssClass, isPrimary: true }
23994
24240
  },
23995
24241
  {
23996
24242
  click: function (e) {
23997
24243
  _this.cancelDialog(e);
23998
24244
  },
23999
- buttonModel: { cssClass: 'e-flat e-cancel', content: cancel }
24245
+ buttonModel: { cssClass: 'e-flat e-cancel' + ' ' + this.parent.cssClass, content: cancel }
24000
24246
  }],
24001
24247
  target: (Browser.isDevice) ? document.body : this.parent.element,
24002
24248
  animationSettings: { effect: 'None' },
@@ -24064,13 +24310,13 @@ var Table = /** @__PURE__ @class */ (function () {
24064
24310
  var tableWidth = this.l10n.getConstant('tableWidth');
24065
24311
  var cellPadding = this.l10n.getConstant('cellpadding');
24066
24312
  var cellSpacing = this.l10n.getConstant('cellspacing');
24067
- var tableWrap = this.parent.createElement('div', { className: 'e-table-sizewrap' });
24313
+ var tableWrap = this.parent.createElement('div', { className: 'e-table-sizewrap' + ' ' + this.parent.cssClass });
24068
24314
  var widthVal = closest(selectNode, 'table').getClientRects()[0].width;
24069
24315
  var padVal = closest(selectNode, 'td').style.padding;
24070
24316
  var brdSpcVal = closest(selectNode, 'table').getAttribute('cellspacing');
24071
- var content = '<div class="e-rte-field"><input type="text" data-role ="none" id="tableWidth" class="e-table-width" '
24072
- + ' /></div>' + '<div class="e-rte-field"><input type="text" data-role ="none" id="cellPadding" class="e-cell-padding" />'
24073
- + ' </div><div class="e-rte-field"><input type="text" data-role ="none" id="cellSpacing" class="e-cell-spacing" /></div>';
24317
+ var content = '<div class="e-rte-field' + ' ' + this.parent.cssClass + '"><input type="text" data-role ="none" id="tableWidth" class="e-table-width' + ' ' + this.parent.cssClass + '" '
24318
+ + ' /></div>' + '<div class="e-rte-field' + ' ' + this.parent.cssClass + '"><input type="text" data-role ="none" id="cellPadding" class="e-cell-padding' + ' ' + this.parent.cssClass + '" />'
24319
+ + ' </div><div class="e-rte-field' + ' ' + this.parent.cssClass + '"><input type="text" data-role ="none" id="cellSpacing" class="e-cell-spacing' + ' ' + this.parent.cssClass + '" /></div>';
24074
24320
  var contentElem = parseHtml(content);
24075
24321
  tableWrap.appendChild(contentElem);
24076
24322
  this.tableWidthNum = new NumericTextBox({
@@ -25215,26 +25461,7 @@ var __decorate$1 = (undefined && undefined.__decorate) || function (decorators,
25215
25461
  var RichTextEditor = /** @__PURE__ @class */ (function (_super) {
25216
25462
  __extends$4(RichTextEditor, _super);
25217
25463
  function RichTextEditor(options, element) {
25218
- var _this = _super.call(this, options, element) || this;
25219
- _this.defaultResetValue = null;
25220
- _this.isResizeInitialized = false;
25221
- /**
25222
- * @hidden
25223
- * @deprecated
25224
- */
25225
- _this.isFocusOut = false;
25226
- /**
25227
- * @hidden
25228
- * @deprecated
25229
- */
25230
- _this.isRTE = false;
25231
- /**
25232
- * @hidden
25233
- * @deprecated
25234
- */
25235
- _this.isBlur = true;
25236
- _this.needsID = true;
25237
- return _this;
25464
+ return _super.call(this, options, element) || this;
25238
25465
  }
25239
25466
  /**
25240
25467
  * To provide the array of modules needed for component rendering
@@ -25315,6 +25542,14 @@ var RichTextEditor = /** @__PURE__ @class */ (function (_super) {
25315
25542
  // eslint-disable-next-line
25316
25543
  (this.enabled) ? this.eventInitializer() : this.unWireEvents();
25317
25544
  };
25545
+ RichTextEditor.prototype.initializeValue = function () {
25546
+ this.isFocusOut = false;
25547
+ this.isRTE = false;
25548
+ this.isBlur = true;
25549
+ this.needsID = true;
25550
+ this.defaultResetValue = null;
25551
+ this.isResizeInitialized = false;
25552
+ };
25318
25553
  /**
25319
25554
  * For internal use only - Initialize the event handler;
25320
25555
  *
@@ -25323,6 +25558,7 @@ var RichTextEditor = /** @__PURE__ @class */ (function (_super) {
25323
25558
  * @private
25324
25559
  */
25325
25560
  RichTextEditor.prototype.preRender = function () {
25561
+ this.initializeValue();
25326
25562
  this.onBlurHandler = this.blurHandler.bind(this);
25327
25563
  this.onFocusHandler = this.focusHandler.bind(this);
25328
25564
  this.onResizeHandler = this.resizeHandler.bind(this);
@@ -25379,11 +25615,18 @@ var RichTextEditor = /** @__PURE__ @class */ (function (_super) {
25379
25615
  }
25380
25616
  else {
25381
25617
  this.valueContainer = this.createElement('textarea', {
25382
- id: this.getID() + '-value'
25618
+ id: this.getID() + '-value',
25619
+ attrs: { 'aria-labelledby': this.getID() }
25383
25620
  });
25384
25621
  }
25385
25622
  this.valueContainer.name = this.getID();
25386
25623
  addClass([this.valueContainer], CLS_RTE_HIDDEN);
25624
+ if (!isNullOrUndefined(this.cssClass)) {
25625
+ var currentClassList = this.cssClass.split(' ');
25626
+ for (var i = 0; i < currentClassList.length; i++) {
25627
+ addClass([this.valueContainer], currentClassList[i]);
25628
+ }
25629
+ }
25387
25630
  this.element.appendChild(this.valueContainer);
25388
25631
  };
25389
25632
  /**
@@ -26022,6 +26265,12 @@ var RichTextEditor = /** @__PURE__ @class */ (function (_super) {
26022
26265
  for (var i = 0; i < this.originalElement.classList.length; i++) {
26023
26266
  addClass([this.element], this.originalElement.classList[i]);
26024
26267
  }
26268
+ if (!isNullOrUndefined(this.cssClass)) {
26269
+ var currentClassList = this.cssClass.split(' ');
26270
+ for (var i = 0; i < currentClassList.length; i++) {
26271
+ addClass([this.element], currentClassList[i]);
26272
+ }
26273
+ }
26025
26274
  removeClass([this.element], CLS_RTE_HIDDEN);
26026
26275
  }
26027
26276
  else {
@@ -26397,7 +26646,7 @@ var RichTextEditor = /** @__PURE__ @class */ (function (_super) {
26397
26646
  if (this.inputElement && this.placeholder && this.iframeSettings.enable !== true) {
26398
26647
  if (this.editorMode !== 'Markdown') {
26399
26648
  if (!this.placeHolderWrapper) {
26400
- this.placeHolderWrapper = this.createElement('span', { className: 'rte-placeholder e-rte-placeholder' });
26649
+ this.placeHolderWrapper = this.createElement('span', { className: 'rte-placeholder e-rte-placeholder' + ' ' + this.cssClass });
26401
26650
  if (this.inputElement) {
26402
26651
  this.inputElement.parentElement.insertBefore(this.placeHolderWrapper, this.inputElement);
26403
26652
  }
@@ -26647,7 +26896,7 @@ var RichTextEditor = /** @__PURE__ @class */ (function (_super) {
26647
26896
  this.setProperties({ value: this.valueTemplate });
26648
26897
  }
26649
26898
  else {
26650
- var compiledTemplate = compile(this.valueTemplate)("", this, 'valueTemplate');
26899
+ var compiledTemplate = compile(this.valueTemplate)('', this, 'valueTemplate');
26651
26900
  for (var i = 0; i < compiledTemplate.length; i++) {
26652
26901
  var item = compiledTemplate[i];
26653
26902
  append([item], this.element);
@@ -27601,5 +27850,5 @@ var RichTextEditor = /** @__PURE__ @class */ (function (_super) {
27601
27850
  * Rich Text Editor component exported items
27602
27851
  */
27603
27852
 
27604
- 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, afterImageDelete, drop, xhtmlValidation, beforeImageUpload, resizeInitialized, renderFileManager, beforeImageDrop, dynamicModule, beforePasteCleanup, afterPasteCleanup, updateTbItemsStatus, showLinkDialog, closeLinkDialog, showImageDialog, closeImageDialog, showTableDialog, closeTableDialog, bindCssClass, blockInlineEmptyNodes, 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, 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, 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 };
27853
+ 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, blockInlineEmptyNodes, 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 };
27605
27854
  //# sourceMappingURL=ej2-richtexteditor.es5.js.map