@syncfusion/ej2-richtexteditor 20.4.53 → 21.1.37

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 (133) hide show
  1. package/CHANGELOG.md +16 -2
  2. package/dist/ej2-richtexteditor.min.js +2 -2
  3. package/dist/ej2-richtexteditor.umd.min.js +2 -2
  4. package/dist/ej2-richtexteditor.umd.min.js.map +1 -1
  5. package/dist/es6/ej2-richtexteditor.es2015.js +1479 -576
  6. package/dist/es6/ej2-richtexteditor.es2015.js.map +1 -1
  7. package/dist/es6/ej2-richtexteditor.es5.js +1516 -605
  8. package/dist/es6/ej2-richtexteditor.es5.js.map +1 -1
  9. package/dist/global/ej2-richtexteditor.min.js +2 -2
  10. package/dist/global/ej2-richtexteditor.min.js.map +1 -1
  11. package/dist/global/index.d.ts +1 -1
  12. package/package.json +13 -13
  13. package/src/common/config.js +3 -1
  14. package/src/common/constant.d.ts +6 -0
  15. package/src/common/constant.js +6 -0
  16. package/src/common/util.d.ts +1 -0
  17. package/src/common/util.js +1 -0
  18. package/src/editor-manager/base/editor-manager.d.ts +2 -0
  19. package/src/editor-manager/base/editor-manager.js +5 -0
  20. package/src/editor-manager/base/enum.d.ts +14 -0
  21. package/src/editor-manager/base/interface.d.ts +34 -0
  22. package/src/editor-manager/plugin/clearformat.js +13 -4
  23. package/src/editor-manager/plugin/format-painter-actions.d.ts +63 -0
  24. package/src/editor-manager/plugin/format-painter-actions.js +474 -0
  25. package/src/editor-manager/plugin/image.js +0 -1
  26. package/src/editor-manager/plugin/inserthtml.js +4 -2
  27. package/src/editor-manager/plugin/isformatted.js +1 -0
  28. package/src/editor-manager/plugin/link.js +0 -1
  29. package/src/editor-manager/plugin/lists.js +1 -1
  30. package/src/editor-manager/plugin/ms-word-clean-up.js +4 -4
  31. package/src/editor-manager/plugin/selection-commands.d.ts +4 -1
  32. package/src/editor-manager/plugin/selection-commands.js +70 -9
  33. package/src/editor-manager/plugin/video.js +2 -0
  34. package/src/editor-manager/plugin.d.ts +1 -0
  35. package/src/editor-manager/plugin.js +1 -0
  36. package/src/global.js +1 -1
  37. package/src/rich-text-editor/actions/base-quick-toolbar.d.ts +1 -0
  38. package/src/rich-text-editor/actions/base-quick-toolbar.js +21 -1
  39. package/src/rich-text-editor/actions/base-toolbar.js +33 -10
  40. package/src/rich-text-editor/actions/enter-key.js +5 -10
  41. package/src/rich-text-editor/actions/format-painter.d.ts +24 -0
  42. package/src/rich-text-editor/actions/format-painter.js +142 -0
  43. package/src/rich-text-editor/actions/full-screen.js +0 -1
  44. package/src/rich-text-editor/actions/html-editor.d.ts +1 -0
  45. package/src/rich-text-editor/actions/html-editor.js +117 -97
  46. package/src/rich-text-editor/actions/toolbar.js +5 -0
  47. package/src/rich-text-editor/actions.d.ts +1 -0
  48. package/src/rich-text-editor/actions.js +1 -0
  49. package/src/rich-text-editor/base/constant.d.ts +10 -0
  50. package/src/rich-text-editor/base/constant.js +10 -0
  51. package/src/rich-text-editor/base/enum.d.ts +4 -0
  52. package/src/rich-text-editor/base/interface.d.ts +30 -3
  53. package/src/rich-text-editor/base/interface.js +12 -0
  54. package/src/rich-text-editor/base/rich-text-editor-model.d.ts +30 -4
  55. package/src/rich-text-editor/base/rich-text-editor.d.ts +35 -5
  56. package/src/rich-text-editor/base/rich-text-editor.js +40 -9
  57. package/src/rich-text-editor/base/util.js +2 -0
  58. package/src/rich-text-editor/formatter/formatter.js +22 -13
  59. package/src/rich-text-editor/formatter/html-formatter.d.ts +5 -3
  60. package/src/rich-text-editor/formatter/html-formatter.js +7 -5
  61. package/src/rich-text-editor/models/default-locale.js +4 -2
  62. package/src/rich-text-editor/models/items.d.ts +3 -0
  63. package/src/rich-text-editor/models/items.js +32 -0
  64. package/src/rich-text-editor/models/toolbar-settings-model.d.ts +29 -1
  65. package/src/rich-text-editor/models/toolbar-settings.d.ts +24 -1
  66. package/src/rich-text-editor/models/toolbar-settings.js +20 -0
  67. package/src/rich-text-editor/renderer/audio-module.js +6 -3
  68. package/src/rich-text-editor/renderer/image-module.js +11 -6
  69. package/src/rich-text-editor/renderer/link-module.js +2 -1
  70. package/src/rich-text-editor/renderer/table-module.js +18 -6
  71. package/src/rich-text-editor/renderer/toolbar-renderer.js +10 -1
  72. package/src/rich-text-editor/renderer/video-module.js +8 -5
  73. package/src/rich-text-editor/renderer/view-source.js +1 -1
  74. package/styles/bootstrap-dark.css +31 -1
  75. package/styles/bootstrap.css +31 -1
  76. package/styles/bootstrap4.css +31 -1
  77. package/styles/bootstrap5-dark.css +32 -2
  78. package/styles/bootstrap5.css +32 -2
  79. package/styles/fabric-dark.css +31 -1
  80. package/styles/fabric.css +31 -1
  81. package/styles/fluent-dark.css +34 -4
  82. package/styles/fluent.css +34 -4
  83. package/styles/highcontrast-light.css +31 -1
  84. package/styles/highcontrast.css +31 -1
  85. package/styles/material-dark.css +31 -1
  86. package/styles/material.css +31 -1
  87. package/styles/rich-text-editor/_bootstrap-dark-definition.scss +25 -1
  88. package/styles/rich-text-editor/_bootstrap-definition.scss +25 -1
  89. package/styles/rich-text-editor/_bootstrap4-definition.scss +25 -1
  90. package/styles/rich-text-editor/_bootstrap5-definition.scss +28 -5
  91. package/styles/rich-text-editor/_fabric-dark-definition.scss +25 -1
  92. package/styles/rich-text-editor/_fabric-definition.scss +25 -1
  93. package/styles/rich-text-editor/_fluent-definition.scss +30 -7
  94. package/styles/rich-text-editor/_fusionnew-definition.scss +26 -3
  95. package/styles/rich-text-editor/_highcontrast-definition.scss +25 -1
  96. package/styles/rich-text-editor/_highcontrast-light-definition.scss +25 -1
  97. package/styles/rich-text-editor/_layout.scss +47 -15
  98. package/styles/rich-text-editor/_material-dark-definition.scss +26 -1
  99. package/styles/rich-text-editor/_material-definition.scss +25 -1
  100. package/styles/rich-text-editor/_tailwind-definition.scss +28 -5
  101. package/styles/rich-text-editor/_theme.scss +54 -6
  102. package/styles/rich-text-editor/bootstrap-dark.css +31 -1
  103. package/styles/rich-text-editor/bootstrap.css +31 -1
  104. package/styles/rich-text-editor/bootstrap4.css +31 -1
  105. package/styles/rich-text-editor/bootstrap5-dark.css +32 -2
  106. package/styles/rich-text-editor/bootstrap5.css +32 -2
  107. package/styles/rich-text-editor/fabric-dark.css +31 -1
  108. package/styles/rich-text-editor/fabric.css +31 -1
  109. package/styles/rich-text-editor/fluent-dark.css +34 -4
  110. package/styles/rich-text-editor/fluent.css +34 -4
  111. package/styles/rich-text-editor/highcontrast-light.css +31 -1
  112. package/styles/rich-text-editor/highcontrast.css +31 -1
  113. package/styles/rich-text-editor/icons/_bootstrap-dark.scss +8 -0
  114. package/styles/rich-text-editor/icons/_bootstrap.scss +8 -0
  115. package/styles/rich-text-editor/icons/_bootstrap4.scss +8 -0
  116. package/styles/rich-text-editor/icons/_bootstrap5.scss +8 -0
  117. package/styles/rich-text-editor/icons/_fabric-dark.scss +8 -0
  118. package/styles/rich-text-editor/icons/_fabric.scss +8 -0
  119. package/styles/rich-text-editor/icons/_fluent.scss +8 -0
  120. package/styles/rich-text-editor/icons/_fusionnew.scss +8 -0
  121. package/styles/rich-text-editor/icons/_highcontrast-light.scss +8 -0
  122. package/styles/rich-text-editor/icons/_highcontrast.scss +8 -0
  123. package/styles/rich-text-editor/icons/_material-dark.scss +8 -0
  124. package/styles/rich-text-editor/icons/_material.scss +8 -0
  125. package/styles/rich-text-editor/icons/_material3.scss +8 -0
  126. package/styles/rich-text-editor/icons/_tailwind.scss +8 -0
  127. package/styles/rich-text-editor/material-dark.css +31 -1
  128. package/styles/rich-text-editor/material.css +31 -1
  129. package/styles/rich-text-editor/tailwind-dark.css +31 -1
  130. package/styles/rich-text-editor/tailwind.css +31 -1
  131. package/styles/tailwind-dark.css +31 -1
  132. package/styles/tailwind.css +31 -1
  133. package/styles/rich-text-editor/_material3-definition.scss +0 -196
@@ -561,117 +561,136 @@ var HtmlEditor = /** @class */ (function () {
561
561
  }
562
562
  };
563
563
  HtmlEditor.prototype.onToolbarClick = function (args) {
564
+ var _this = this;
564
565
  var save;
565
566
  var selectNodeEle;
566
567
  var selectParentEle;
567
568
  var item = args.item;
568
569
  var closestElement = closest(args.originalEvent.target, '.e-rte-quick-popup');
569
- if (closestElement && !closestElement.classList.contains('e-rte-inline-popup')) {
570
- if (!(item.subCommand === 'SourceCode' || item.subCommand === 'Preview' ||
571
- item.subCommand === 'FontColor' || item.subCommand === 'BackgroundColor')) {
572
- if (isIDevice() && item.command === 'Images') {
573
- this.nodeSelectionObj.restore();
574
- }
575
- var range = this.nodeSelectionObj.getRange(this.parent.contentModule.getDocument());
576
- save = this.nodeSelectionObj.save(range, this.parent.contentModule.getDocument());
577
- selectNodeEle = this.nodeSelectionObj.getNodeCollection(range);
578
- selectParentEle = this.nodeSelectionObj.getParentNodeCollection(range);
579
- }
580
- if (item.command === 'Images') {
581
- this.parent.notify(events.imageToolbarAction, {
582
- member: 'image', args: args, selectNode: selectNodeEle, selection: save, selectParent: selectParentEle
583
- });
584
- }
585
- if (item.command === 'Audios') {
586
- this.parent.notify(events.audioToolbarAction, {
587
- member: 'audio', args: args, selectNode: selectNodeEle, selection: save, selectParent: selectParentEle
588
- });
589
- }
590
- if (item.command === 'Videos') {
591
- this.parent.notify(events.videoToolbarAction, {
592
- member: 'video', args: args, selectNode: selectNodeEle, selection: save, selectParent: selectParentEle
593
- });
594
- }
595
- if (item.command === 'Links') {
596
- this.parent.notify(events.linkToolbarAction, {
597
- member: 'link', args: args, selectNode: selectNodeEle, selection: save, selectParent: selectParentEle
598
- });
599
- }
600
- if (item.command === 'Table') {
601
- this.parent.notify(events.tableToolbarAction, {
602
- member: 'table', args: args, selectNode: selectNodeEle, selection: save, selectParent: selectParentEle
603
- });
604
- }
605
- }
606
- else {
607
- var linkDialog = document.getElementById(this.parent.getID() + '_rtelink');
608
- var imageDialog = document.getElementById(this.parent.getID() + '_image');
609
- if (!(item.subCommand === 'SourceCode' || item.subCommand === 'Preview' ||
610
- item.subCommand === 'FontColor' || item.subCommand === 'BackgroundColor')) {
611
- var range = this.nodeSelectionObj.getRange(this.parent.contentModule.getDocument());
612
- if (isNullOrUndefined(linkDialog) && isNullOrUndefined(imageDialog)) {
570
+ if (item.command !== 'FormatPainter') {
571
+ if (closestElement && !closestElement.classList.contains('e-rte-inline-popup')) {
572
+ if (!(item.subCommand === 'SourceCode' || item.subCommand === 'Preview' ||
573
+ item.subCommand === 'FontColor' || item.subCommand === 'BackgroundColor')) {
574
+ if (isIDevice() && item.command === 'Images') {
575
+ this.nodeSelectionObj.restore();
576
+ }
577
+ var range = this.nodeSelectionObj.getRange(this.parent.contentModule.getDocument());
613
578
  save = this.nodeSelectionObj.save(range, this.parent.contentModule.getDocument());
579
+ selectNodeEle = this.nodeSelectionObj.getNodeCollection(range);
580
+ selectParentEle = this.nodeSelectionObj.getParentNodeCollection(range);
614
581
  }
615
- selectNodeEle = this.nodeSelectionObj.getNodeCollection(range);
616
- selectParentEle = this.nodeSelectionObj.getParentNodeCollection(range);
617
- }
618
- switch (item.subCommand) {
619
- case 'Maximize':
620
- this.parent.notify(events.enableFullScreen, { args: args });
621
- break;
622
- case 'Minimize':
623
- this.parent.notify(events.disableFullScreen, { args: args });
624
- break;
625
- case 'CreateLink':
626
- this.parent.notify(events.insertLink, {
627
- member: 'link', args: args, selectNode: selectNodeEle, selection: save, selectParent: selectParentEle
628
- });
629
- break;
630
- case 'RemoveLink':
631
- this.parent.notify(events.unLink, {
632
- member: 'link', args: args, selectNode: selectNodeEle, selection: save, selectParent: selectParentEle
633
- });
634
- break;
635
- case 'Print':
636
- this.parent.print();
637
- break;
638
- case 'Image':
639
- this.parent.notify(events.insertImage, {
582
+ if (item.command === 'Images') {
583
+ this.parent.notify(events.imageToolbarAction, {
640
584
  member: 'image', args: args, selectNode: selectNodeEle, selection: save, selectParent: selectParentEle
641
585
  });
642
- break;
643
- case 'Audio':
644
- this.parent.notify(events.insertAudio, {
586
+ }
587
+ if (item.command === 'Audios') {
588
+ this.parent.notify(events.audioToolbarAction, {
645
589
  member: 'audio', args: args, selectNode: selectNodeEle, selection: save, selectParent: selectParentEle
646
590
  });
647
- break;
648
- case 'Video':
649
- this.parent.notify(events.insertVideo, {
591
+ }
592
+ if (item.command === 'Videos') {
593
+ this.parent.notify(events.videoToolbarAction, {
650
594
  member: 'video', args: args, selectNode: selectNodeEle, selection: save, selectParent: selectParentEle
651
595
  });
652
- break;
653
- case 'CreateTable':
654
- this.parent.notify(events.createTable, {
655
- member: 'table', args: args, selection: save
596
+ }
597
+ if (item.command === 'Links') {
598
+ this.parent.notify(events.linkToolbarAction, {
599
+ member: 'link', args: args, selectNode: selectNodeEle, selection: save, selectParent: selectParentEle
600
+ });
601
+ }
602
+ if (item.command === 'Table') {
603
+ this.parent.notify(events.tableToolbarAction, {
604
+ member: 'table', args: args, selectNode: selectNodeEle, selection: save, selectParent: selectParentEle
656
605
  });
657
- break;
658
- case 'SourceCode':
659
- this.parent.notify(events.sourceCode, { member: 'viewSource', args: args });
660
- break;
661
- case 'Preview':
662
- this.parent.notify(events.updateSource, { member: 'updateSource', args: args });
663
- break;
664
- case 'FontColor':
665
- case 'BackgroundColor':
666
- break;
667
- case 'File':
668
- this.parent.notify(events.renderFileManager, {
669
- member: 'fileManager', args: args, selectNode: selectNodeEle, selection: save, selectParent: selectParentEle
606
+ }
607
+ }
608
+ else {
609
+ var linkDialog = document.getElementById(this.parent.getID() + '_rtelink');
610
+ var imageDialog = document.getElementById(this.parent.getID() + '_image');
611
+ if (!(item.subCommand === 'SourceCode' || item.subCommand === 'Preview' ||
612
+ item.subCommand === 'FontColor' || item.subCommand === 'BackgroundColor')) {
613
+ var range = this.nodeSelectionObj.getRange(this.parent.contentModule.getDocument());
614
+ if (isNullOrUndefined(linkDialog) && isNullOrUndefined(imageDialog)) {
615
+ save = this.nodeSelectionObj.save(range, this.parent.contentModule.getDocument());
616
+ }
617
+ selectNodeEle = this.nodeSelectionObj.getNodeCollection(range);
618
+ selectParentEle = this.nodeSelectionObj.getParentNodeCollection(range);
619
+ }
620
+ switch (item.subCommand) {
621
+ case 'Maximize':
622
+ this.parent.notify(events.enableFullScreen, { args: args });
623
+ break;
624
+ case 'Minimize':
625
+ this.parent.notify(events.disableFullScreen, { args: args });
626
+ break;
627
+ case 'CreateLink':
628
+ this.parent.notify(events.insertLink, {
629
+ member: 'link', args: args, selectNode: selectNodeEle, selection: save, selectParent: selectParentEle
630
+ });
631
+ break;
632
+ case 'RemoveLink':
633
+ this.parent.notify(events.unLink, {
634
+ member: 'link', args: args, selectNode: selectNodeEle, selection: save, selectParent: selectParentEle
635
+ });
636
+ break;
637
+ case 'Print':
638
+ this.parent.print();
639
+ break;
640
+ case 'Image':
641
+ this.parent.notify(events.insertImage, {
642
+ member: 'image', args: args, selectNode: selectNodeEle, selection: save, selectParent: selectParentEle
643
+ });
644
+ break;
645
+ case 'Audio':
646
+ this.parent.notify(events.insertAudio, {
647
+ member: 'audio', args: args, selectNode: selectNodeEle, selection: save, selectParent: selectParentEle
648
+ });
649
+ break;
650
+ case 'Video':
651
+ this.parent.notify(events.insertVideo, {
652
+ member: 'video', args: args, selectNode: selectNodeEle, selection: save, selectParent: selectParentEle
653
+ });
654
+ break;
655
+ case 'CreateTable':
656
+ this.parent.notify(events.createTable, {
657
+ member: 'table', args: args, selection: save
658
+ });
659
+ break;
660
+ case 'SourceCode':
661
+ this.parent.notify(events.sourceCode, { member: 'viewSource', args: args });
662
+ break;
663
+ case 'Preview':
664
+ this.parent.notify(events.updateSource, { member: 'updateSource', args: args });
665
+ break;
666
+ case 'FontColor':
667
+ case 'BackgroundColor':
668
+ break;
669
+ case 'File':
670
+ this.parent.notify(events.renderFileManager, {
671
+ member: 'fileManager', args: args, selectNode: selectNodeEle, selection: save, selectParent: selectParentEle
672
+ });
673
+ break;
674
+ default:
675
+ this.parent.formatter.process(this.parent, args, args.originalEvent, null);
676
+ break;
677
+ }
678
+ }
679
+ }
680
+ else {
681
+ if (args.originalEvent.detail === 1) {
682
+ clearTimeout(this.clickTimeout);
683
+ this.clickTimeout = setTimeout(function () {
684
+ _this.parent.notify(events.formatPainterClick, {
685
+ member: 'formatPainter', args: args
670
686
  });
671
- break;
672
- default:
673
- this.parent.formatter.process(this.parent, args, args.originalEvent, null);
674
- break;
687
+ }, 200);
688
+ }
689
+ else {
690
+ clearTimeout(this.clickTimeout);
691
+ this.parent.notify(events.formatPainterDoubleClick, {
692
+ member: 'formatPainter', args: args
693
+ });
675
694
  }
676
695
  }
677
696
  };
@@ -714,7 +733,8 @@ var HtmlEditor = /** @class */ (function () {
714
733
  var formatterClass = new HTMLFormatter({
715
734
  currentDocument: this.contentRenderer.getDocument(),
716
735
  element: editElement,
717
- options: option
736
+ options: option,
737
+ formatPainterSettings: this.parent.formatPainterSettings
718
738
  });
719
739
  this.parent.setProperties({ formatter: formatterClass }, true);
720
740
  }
@@ -318,6 +318,7 @@ var Toolbar = /** @class */ (function () {
318
318
  args.baseToolbar.toolbarObj.items[index].tooltipText = item.tooltip;
319
319
  args.baseToolbar.toolbarObj.items[index].subCommand = item.subCommand;
320
320
  args.baseToolbar.toolbarObj.dataBind();
321
+ args.baseToolbar.toolbarObj.refreshOverflow();
321
322
  }
322
323
  else {
323
324
  this.addTBarItem(args, 0);
@@ -458,7 +459,11 @@ var Toolbar = /** @class */ (function () {
458
459
 
459
460
  */
460
461
  Toolbar.prototype.refreshToolbarOverflow = function () {
462
+ this.parent.element.classList.remove(classes.CLS_RTL);
461
463
  this.baseToolbar.toolbarObj.refreshOverflow();
464
+ if (this.parent.enableRtl) {
465
+ this.parent.element.classList.add(classes.CLS_RTL);
466
+ }
462
467
  };
463
468
  Toolbar.prototype.isToolbarDestroyed = function () {
464
469
  return this.baseToolbar.toolbarObj && !this.baseToolbar.toolbarObj.isDestroyed;
@@ -21,3 +21,4 @@ export * from './actions/full-screen';
21
21
  export * from './actions/html-attributes';
22
22
  export * from './actions/html-toolbar-status';
23
23
  export * from './actions/xhtml-validation';
24
+ export * from './actions/format-painter';
@@ -21,3 +21,4 @@ export * from './actions/full-screen';
21
21
  export * from './actions/html-attributes';
22
22
  export * from './actions/html-toolbar-status';
23
23
  export * from './actions/xhtml-validation';
24
+ export * from './actions/format-painter';
@@ -714,6 +714,16 @@ export declare const bindCssClass: string;
714
714
  /**
715
715
  * @hidden
716
716
 
717
+ */
718
+ export declare const formatPainterClick: string;
719
+ /**
720
+ * @hidden
721
+
722
+ */
723
+ export declare const formatPainterDoubleClick: string;
724
+ /**
725
+ * @hidden
726
+
717
727
  */
718
728
  export declare const blockEmptyNodes: string;
719
729
  /**
@@ -714,6 +714,16 @@ export var bindCssClass = 'closeTableDialog';
714
714
  /**
715
715
  * @hidden
716
716
 
717
+ */
718
+ export var formatPainterClick = 'formatPainterClick';
719
+ /**
720
+ * @hidden
721
+
722
+ */
723
+ export var formatPainterDoubleClick = 'formatPainterDoubleClick';
724
+ /**
725
+ * @hidden
726
+
717
727
  */
718
728
  export var blockEmptyNodes = "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, li:empty, main:empty, nav:empty,\n noscript:empty, output:empty, p:empty, pre:empty, section:empty, td:empty, th:empty";
719
729
  /**
@@ -60,3 +60,7 @@ export declare enum DialogType {
60
60
  * Defines types to be used to configure the toolbar items.
61
61
  */
62
62
  export declare type ToolbarItems = 'alignments' | 'justifyLeft' | 'justifyCenter' | 'justifyRight' | 'justifyFull' | 'fontName' | 'fontSize' | 'fontColor' | 'backgroundColor' | 'bold' | 'italic' | 'underline' | 'strikeThrough' | 'clearFormat' | 'clearAll' | 'cut' | 'copy' | 'paste' | 'unorderedList' | 'orderedList' | 'indent' | 'outdent' | 'undo' | 'redo' | 'superScript' | 'subScript' | 'createLink' | 'openLink' | 'editLink' | 'image' | 'createTable' | 'removeTable' | 'replace' | 'align' | 'caption' | 'remove' | 'openImageLink' | 'editImageLink' | 'removeImageLink' | 'insertLink' | 'display' | 'altText' | 'dimension' | 'fullScreen' | 'maximize' | 'minimize' | 'lowerCase' | 'upperCase' | 'print' | 'formats' | 'sourceCode' | 'preview' | 'viewSide' | 'insertCode' | 'tableHeader' | 'tableRemove' | 'tableRows' | 'tableColumns' | 'tableCellBackground' | 'tableCellHorizontalAlign' | 'tableCellVerticalAlign' | 'tableEditProperties' | 'styles' | 'removeLink' | 'merge';
63
+ /**
64
+ * Defines the context or contexts in which styles will be copied
65
+ */
66
+ export declare type FormatPainterContext = 'Text' | 'List' | 'Table';
@@ -10,7 +10,7 @@ import { BaseQuickToolbar } from '../actions/base-quick-toolbar';
10
10
  import { NodeSelection } from '../../selection/selection';
11
11
  import { EditorMode, EnterKey, ShiftEnterKey } from './../../common/types';
12
12
  import { MarkdownSelection } from './../../markdown-parser/plugin/markdown-selection';
13
- import { ToolbarSettingsModel, IFrameSettingsModel, ImageSettingsModel, AudioSettingsModel, VideoSettingsModel, TableSettingsModel } from '../models/models';
13
+ import { ToolbarSettingsModel, IFrameSettingsModel, ImageSettingsModel, AudioSettingsModel, VideoSettingsModel, TableSettingsModel, FormatPainterSettingsModel } from '../models/models';
14
14
  import { QuickToolbarSettingsModel, InlineModeModel, PasteCleanupSettingsModel, FileManagerSettingsModel } from '../models/models';
15
15
  import { Count } from '../actions/count';
16
16
  import { ColorPicker, ColorPickerEventArgs, ColorPickerModel, FileInfo } from '@syncfusion/ej2-inputs';
@@ -36,6 +36,7 @@ import { Resize } from '../actions/resize';
36
36
  import { FileManager } from '../actions/file-manager';
37
37
  import { NodeCutter, DOMNode } from '../../editor-manager';
38
38
  import { EnterKeyAction } from '../actions/enter-key';
39
+ import { FormatPainter } from '../actions/format-painter';
39
40
  /**
40
41
  * Specifies Rich Text Editor interfaces.
41
42
  *
@@ -82,6 +83,17 @@ export interface IRichTextEditor extends Component<HTMLElement> {
82
83
  fileManagerSettings: FileManagerSettingsModel;
83
84
  tableSettings: TableSettingsModel;
84
85
  pasteCleanupSettings: PasteCleanupSettingsModel;
86
+ /**
87
+ * Configure the format painter settings of the RTE.
88
+ *
89
+ * @default
90
+ * {
91
+ * allowedContext: ['Text', 'List', 'Table'],
92
+ * allowedFormats: 'b; em; font; sub; sup; kbd; i; s; u; code; strong; span; p; div; h1; h2; h3; h4; h5; h6; blockquote; table; thead; tbody; tr; td; th; ol; ul; li; pre;',
93
+ * deniedFormats: null
94
+ * }
95
+ */
96
+ formatPainterSettings: FormatPainterSettingsModel;
85
97
  floatingToolbarOffset?: number;
86
98
  showCharCount?: boolean;
87
99
  enableTabKey?: boolean;
@@ -98,6 +110,7 @@ export interface IRichTextEditor extends Component<HTMLElement> {
98
110
  format?: IFormatProperties;
99
111
  value?: string;
100
112
  saveInterval?: number;
113
+ showTooltip?: boolean;
101
114
  isBlur?: boolean;
102
115
  isRTE?: boolean;
103
116
  contentModule?: IRenderer;
@@ -130,6 +143,7 @@ export interface IRichTextEditor extends Component<HTMLElement> {
130
143
  markdownEditorModule: MarkdownEditor;
131
144
  htmlEditorModule: HtmlEditor;
132
145
  countModule?: Count;
146
+ formatPainterModule?: FormatPainter;
133
147
  serviceLocator?: ServiceLocator;
134
148
  setEnable?(): void;
135
149
  setReadOnly?(isInit?: boolean): void;
@@ -178,6 +192,7 @@ export interface IRichTextEditor extends Component<HTMLElement> {
178
192
  getInsertVidMaxWidth?(): string | number;
179
193
  getSelection(): string;
180
194
  currentTarget: HTMLElement;
195
+ focusIn(): void;
181
196
  }
182
197
  /**
183
198
 
@@ -237,6 +252,7 @@ export interface NotifyArgs {
237
252
  insertElement?: Element;
238
253
  touchData?: ITouchData;
239
254
  allowedStylePropertiesArray?: string[];
255
+ formatPainterSettings?: FormatPainterSettingsModel;
240
256
  }
241
257
  /**
242
258
  * Provides information about the current and previous cssClass property .
@@ -475,6 +491,16 @@ export interface ITableCommandsArgs {
475
491
  /** Defines the instance of the current selection */
476
492
  selection?: NodeSelection;
477
493
  }
494
+ /**
495
+
496
+ */
497
+ export interface IFormatPainterArgs {
498
+ /**
499
+ * Defines the action to be performed.
500
+ * Allowed values are 'format-copy', 'format-paste', 'escape'.
501
+ */
502
+ formatPainterAction: string;
503
+ }
478
504
  /**
479
505
 
480
506
  */
@@ -496,7 +522,7 @@ export interface ITableArgs {
496
522
  */
497
523
  export interface ITableNotifyArgs {
498
524
  module?: string;
499
- args?: ClickEventArgs | MouseEvent | KeyboardEventArgs;
525
+ args?: ClickEventArgs | MouseEvent | KeyboardEventArgs | TouchEvent;
500
526
  selection?: NodeSelection;
501
527
  selectNode?: Node[];
502
528
  selectParent?: Node[];
@@ -843,6 +869,7 @@ export interface IHtmlFormatterModel {
843
869
  options?: {
844
870
  [key: string]: number;
845
871
  };
872
+ formatPainterSettings?: FormatPainterSettingsModel;
846
873
  }
847
874
  /**
848
875
 
@@ -1275,7 +1302,7 @@ export declare const executeGroup: {
1275
1302
  /**
1276
1303
  * Defines types to be used as CommandName.
1277
1304
  */
1278
- export declare type CommandName = 'bold' | 'italic' | 'underline' | 'strikeThrough' | 'superscript' | 'subscript' | 'uppercase' | 'lowercase' | 'fontColor' | 'fontName' | 'fontSize' | 'backColor' | 'justifyCenter' | 'justifyFull' | 'justifyLeft' | 'justifyRight' | 'undo' | 'createLink' | 'formatBlock' | 'heading' | 'indent' | 'insertHTML' | 'insertOrderedList' | 'insertUnorderedList' | 'insertParagraph' | 'outdent' | 'redo' | 'removeFormat' | 'insertText' | 'insertImage' | 'insertAudio' | 'insertVideo' | 'insertHorizontalRule' | 'insertBrOnReturn' | 'insertCode' | 'insertTable' | 'editImage' | 'editLink';
1305
+ export declare type CommandName = 'bold' | 'italic' | 'underline' | 'strikeThrough' | 'superscript' | 'subscript' | 'uppercase' | 'lowercase' | 'fontColor' | 'fontName' | 'fontSize' | 'backColor' | 'justifyCenter' | 'justifyFull' | 'justifyLeft' | 'justifyRight' | 'undo' | 'createLink' | 'formatBlock' | 'heading' | 'indent' | 'insertHTML' | 'insertOrderedList' | 'insertUnorderedList' | 'insertParagraph' | 'outdent' | 'redo' | 'removeFormat' | 'insertText' | 'insertImage' | 'insertAudio' | 'insertVideo' | 'insertHorizontalRule' | 'insertBrOnReturn' | 'insertCode' | 'insertTable' | 'editImage' | 'editLink' | 'applyFormatPainter' | 'copyFormatPainter' | 'escapeFormatPainter';
1279
1306
  /**
1280
1307
  * @hidden
1281
1308
 
@@ -173,5 +173,17 @@ export var executeGroup = {
173
173
  'removeFormat': {
174
174
  command: 'Clear',
175
175
  subCommand: 'ClearFormat'
176
+ },
177
+ 'copyFormatPainter': {
178
+ command: 'FormatPainter',
179
+ value: 'format-copy'
180
+ },
181
+ 'applyFormatPainter': {
182
+ command: 'FormatPainter',
183
+ value: 'format-paste'
184
+ },
185
+ 'escapeFormatPainter': {
186
+ command: 'FormatPainter',
187
+ value: 'escape'
176
188
  }
177
189
  };
@@ -1,4 +1,4 @@
1
- import { Component, ModuleDeclaration, EventHandler, Complex, Browser, EmitType, addClass, select, detach } from '@syncfusion/ej2-base';import { Property, NotifyPropertyChanges, INotifyPropertyChanged, formatUnit, L10n, closest } from '@syncfusion/ej2-base';import { setStyleAttribute, Event, removeClass, print as printWindow, attributes } from '@syncfusion/ej2-base';import { isNullOrUndefined as isNOU, compile, append, extend, debounce } from '@syncfusion/ej2-base';import { Touch as EJ2Touch, TapEventArgs } from '@syncfusion/ej2-base';import { getScrollableParent, BeforeOpenEventArgs, BeforeCloseEventArgs } from '@syncfusion/ej2-popups';import * as events from '../base/constant';import * as classes from '../base/classes';import { Render } from '../renderer/render';import { ViewSource } from '../renderer/view-source';import { IRenderer, IFormatter, PrintEventArgs, ActionCompleteEventArgs, ActionBeginEventArgs, ImageDropEventArgs } from './interface';import { IExecutionGroup, executeGroup, CommandName, ResizeArgs, StatusArgs, ToolbarStatusEventArgs } from './interface';import { BeforeQuickToolbarOpenArgs, ChangeEventArgs, AfterImageDeleteEventArgs, AfterMediaDeleteEventArgs, PasteCleanupArgs } from './interface';import { ILinkCommandsArgs, IImageCommandsArgs, IAudioCommandsArgs, IVideoCommandsArgs, BeforeSanitizeHtmlArgs, ITableCommandsArgs, ExecuteCommandOption } from './interface';import { ServiceLocator } from '../services/service-locator';import { RendererFactory } from '../services/renderer-factory';import { RenderType, ToolbarType, DialogType } from './enum';import { EditorMode, ShiftEnterKey, EnterKey } from './../../common/types';import { Toolbar } from '../actions/toolbar';import { ExecCommandCallBack } from '../actions/execute-command-callback';import { KeyboardEvents, KeyboardEventArgs } from '../actions/keyboard';import { FontFamilyModel, FontSizeModel, FontColorModel, FormatModel, BackgroundColorModel, NumberFormatListModel, BulletFormatListModel } from '../models/models';import { ToolbarSettingsModel, IFrameSettingsModel, ImageSettingsModel, AudioSettingsModel, VideoSettingsModel, TableSettingsModel } from '../models/models';import { QuickToolbarSettingsModel, InlineModeModel, PasteCleanupSettingsModel, FileManagerSettingsModel } from '../models/models';import { ToolbarSettings, ImageSettings, AudioSettings, VideoSettings, QuickToolbarSettings, FontFamily, FontSize, Format, NumberFormatList, BulletFormatList } from '../models/toolbar-settings';import { FileManagerSettings } from '../models/toolbar-settings';import { TableSettings, PasteCleanupSettings } from '../models/toolbar-settings';import { FontColor, BackgroundColor } from '../models/toolbar-settings';import { IFrameSettings } from '../models/iframe-settings';import { InlineMode } from '../models/inline-mode';import { Link } from '../renderer/link-module';import { Image } from '../renderer/image-module';import { Audio } from '../renderer/audio-module';import { Video } from '../renderer/video-module';import { Table } from '../renderer/table-module';import { Count } from '../actions/count';import { HtmlEditor } from '../actions/html-editor';import { MarkdownEditor } from '../actions/markdown-editor';import { defaultLocale } from '../models/default-locale';import { setAttributes } from '../actions/html-attributes';import { BaseToolbar } from '../actions/base-toolbar';import { QuickToolbar } from '../actions/quick-toolbar';import { FullScreen } from '../actions/full-screen';import { PasteCleanup } from '../actions/paste-clean-up';import { EnterKeyAction } from '../actions/enter-key';import * as CONSTANT from '../../common/constant';import { IHtmlKeyboardEvent } from '../../editor-manager/base/interface';import { dispatchEvent, getEditValue, isIDevice, decode, isEditableValueEmpty, getDefaultValue } from '../base/util';import { DialogRenderer } from '../renderer/dialog-renderer';import { SelectedEventArgs, RemovingEventArgs, UploadingEventArgs, BeforeUploadEventArgs } from '@syncfusion/ej2-inputs';import { Resize } from '../actions/resize';import { FileManager } from '../actions/file-manager';import { EditorManager } from '../../editor-manager';
1
+ import { Component, ModuleDeclaration, EventHandler, Complex, Browser, EmitType, addClass, select, detach } from '@syncfusion/ej2-base';import { Property, NotifyPropertyChanges, INotifyPropertyChanged, formatUnit, L10n, closest } from '@syncfusion/ej2-base';import { setStyleAttribute, Event, removeClass, print as printWindow, attributes } from '@syncfusion/ej2-base';import { isNullOrUndefined as isNOU, compile, append, extend, debounce } from '@syncfusion/ej2-base';import { Touch as EJ2Touch, TapEventArgs } from '@syncfusion/ej2-base';import { getScrollableParent, BeforeOpenEventArgs, BeforeCloseEventArgs } from '@syncfusion/ej2-popups';import * as events from '../base/constant';import * as classes from '../base/classes';import { Render } from '../renderer/render';import { ViewSource } from '../renderer/view-source';import { IRenderer, IFormatter, PrintEventArgs, ActionCompleteEventArgs, ActionBeginEventArgs, ImageDropEventArgs, IFormatPainterArgs } from './interface';import { IExecutionGroup, executeGroup, CommandName, ResizeArgs, StatusArgs, ToolbarStatusEventArgs } from './interface';import { BeforeQuickToolbarOpenArgs, ChangeEventArgs, AfterImageDeleteEventArgs, AfterMediaDeleteEventArgs, PasteCleanupArgs } from './interface';import { ILinkCommandsArgs, IImageCommandsArgs, IAudioCommandsArgs, IVideoCommandsArgs, BeforeSanitizeHtmlArgs, ITableCommandsArgs, ExecuteCommandOption } from './interface';import { ServiceLocator } from '../services/service-locator';import { RendererFactory } from '../services/renderer-factory';import { RenderType, ToolbarType, DialogType } from './enum';import { EditorMode, ShiftEnterKey, EnterKey } from './../../common/types';import { Toolbar } from '../actions/toolbar';import { ExecCommandCallBack } from '../actions/execute-command-callback';import { KeyboardEvents, KeyboardEventArgs } from '../actions/keyboard';import { FontFamilyModel, FontSizeModel, FontColorModel, FormatModel, BackgroundColorModel, NumberFormatListModel, BulletFormatListModel } from '../models/models';import { ToolbarSettingsModel, IFrameSettingsModel, ImageSettingsModel, AudioSettingsModel, VideoSettingsModel, TableSettingsModel } from '../models/models';import { QuickToolbarSettingsModel, InlineModeModel, PasteCleanupSettingsModel, FileManagerSettingsModel , FormatPainterSettingsModel} from '../models/models';import { ToolbarSettings, ImageSettings, AudioSettings, VideoSettings, QuickToolbarSettings, FontFamily, FontSize, Format, NumberFormatList, BulletFormatList, FormatPainterSettings } from '../models/toolbar-settings';import { FileManagerSettings } from '../models/toolbar-settings';import { TableSettings, PasteCleanupSettings } from '../models/toolbar-settings';import { FontColor, BackgroundColor } from '../models/toolbar-settings';import { IFrameSettings } from '../models/iframe-settings';import { InlineMode } from '../models/inline-mode';import { Link } from '../renderer/link-module';import { Image } from '../renderer/image-module';import { Audio } from '../renderer/audio-module';import { Video } from '../renderer/video-module';import { Table } from '../renderer/table-module';import { Count } from '../actions/count';import { HtmlEditor } from '../actions/html-editor';import { MarkdownEditor } from '../actions/markdown-editor';import { defaultLocale } from '../models/default-locale';import { setAttributes } from '../actions/html-attributes';import { BaseToolbar } from '../actions/base-toolbar';import { QuickToolbar } from '../actions/quick-toolbar';import { FullScreen } from '../actions/full-screen';import { PasteCleanup } from '../actions/paste-clean-up';import { EnterKeyAction } from '../actions/enter-key';import * as CONSTANT from '../../common/constant';import { IHtmlKeyboardEvent } from '../../editor-manager/base/interface';import { dispatchEvent, getEditValue, isIDevice, decode, isEditableValueEmpty, getDefaultValue } from '../base/util';import { DialogRenderer } from '../renderer/dialog-renderer';import { SelectedEventArgs, RemovingEventArgs, UploadingEventArgs, BeforeUploadEventArgs } from '@syncfusion/ej2-inputs';import { Resize } from '../actions/resize';import { FileManager } from '../actions/file-manager';import { EditorManager } from '../../editor-manager';import { FormatPainter } from '../actions/format-painter';
2
2
  import {ComponentModel} from '@syncfusion/ej2-base';
3
3
 
4
4
  /**
@@ -92,13 +92,32 @@ export interface RichTextEditorModel extends ComponentModel{
92
92
  */
93
93
  pasteCleanupSettings?: PasteCleanupSettingsModel;
94
94
 
95
+ /**
96
+ * Specifies the format painter options in Rich Text Editor with the following properties.
97
+ * * allowedContext - Sets the context or contexts in which styles will be copied.
98
+ * * allowedFormats - Sets the tag name selectors for elements from which the formats can be copied.
99
+ * * deniedFormats - Sets the selectors for elements from which formats cannot be copied.
100
+ *
101
+ * {% codeBlock src='rich-text-editor/format-painter-settings/index.md' %}{% endcodeBlock %}
102
+ *
103
+ * @default
104
+ * {
105
+ * allowedContext: ['Text', 'List', 'Table'],
106
+ * allowedFormats: 'b; em; font; sub; sup; kbd; i; s; u; code; strong; span; p; div; h1; h2; h3; h4; h5; h6; blockquote; table; thead; tbody; tr; td; th; ol; ul; li; pre;',
107
+ * deniedFormats: null
108
+ * }
109
+ * @aspignore
110
+ * @private
111
+ */
112
+ formatPainterSettings?: FormatPainterSettingsModel
113
+
95
114
  /**
96
115
  * Specifies the items to be rendered in an iframe mode, and it has the following properties.
97
116
  * * enable - Set Boolean value to enable, the editors content is placed in an iframe and isolated from the rest of the page.
98
117
  * * attributes - Custom style to be used inside the iframe to display content. This style is added to the iframe body.
99
118
  * * resources - we can add both styles and scripts to the iframe.
100
- * 1. styles[] - An array of CSS style files to inject inside the iframe to display content.
101
- * 2. scripts[] - An array of JS script files to inject inside the iframe.
119
+ * 1. styles[] - An array of CSS style files to inject inside the iframe to display content
120
+ * 2. scripts[] - An array of JS script files to inject inside the iframe
102
121
  *
103
122
  * {% codeBlock src='rich-text-editor/iframe-settings/index.md' %}{% endcodeBlock %}
104
123
  *
@@ -287,6 +306,13 @@ export interface RichTextEditorModel extends ComponentModel{
287
306
  */
288
307
  enablePersistence?: boolean;
289
308
 
309
+ /**
310
+ * Specify the value whether tooltip will be displayed for the Rich Text Editor toolbar.
311
+ *
312
+ * @default false.
313
+ */
314
+ showTooltip?: boolean;
315
+
290
316
  /**
291
317
  * Enables or disables the resizing option in the editor.
292
318
  * If enabled, the Rich Text Editor can be resized by dragging the resize icon in the bottom right corner.
@@ -948,7 +974,7 @@ export interface RichTextEditorModel extends ComponentModel{
948
974
  *
949
975
  * @event 'afterPasteCleanup'
950
976
  */
951
- afterPasteCleanup?: EmitType<Object>;
977
+ afterPasteCleanup?: EmitType<object>;
952
978
 
953
979
  /**
954
980
  * Triggers before drop the image.
@@ -15,7 +15,7 @@ import { Toolbar } from '../actions/toolbar';
15
15
  import { KeyboardEvents } from '../actions/keyboard';
16
16
  import { FontFamilyModel, FontSizeModel, FontColorModel, FormatModel, BackgroundColorModel, NumberFormatListModel, BulletFormatListModel } from '../models/models';
17
17
  import { ToolbarSettingsModel, IFrameSettingsModel, ImageSettingsModel, AudioSettingsModel, VideoSettingsModel, TableSettingsModel } from '../models/models';
18
- import { QuickToolbarSettingsModel, InlineModeModel, PasteCleanupSettingsModel, FileManagerSettingsModel } from '../models/models';
18
+ import { QuickToolbarSettingsModel, InlineModeModel, PasteCleanupSettingsModel, FileManagerSettingsModel, FormatPainterSettingsModel } from '../models/models';
19
19
  import { Link } from '../renderer/link-module';
20
20
  import { Image } from '../renderer/image-module';
21
21
  import { Audio } from '../renderer/audio-module';
@@ -32,6 +32,7 @@ import { EnterKeyAction } from '../actions/enter-key';
32
32
  import { SelectedEventArgs, RemovingEventArgs, UploadingEventArgs, BeforeUploadEventArgs } from '@syncfusion/ej2-inputs';
33
33
  import { Resize } from '../actions/resize';
34
34
  import { FileManager } from '../actions/file-manager';
35
+ import { FormatPainter } from '../actions/format-painter';
35
36
  /**
36
37
  * Represents the Rich Text Editor component.
37
38
  * ```html
@@ -178,6 +179,11 @@ export declare class RichTextEditor extends Component<HTMLElement> implements IN
178
179
 
179
180
  */
180
181
  fileManagerModule: FileManager;
182
+ /**
183
+ * @hidden
184
+
185
+ */
186
+ formatPainterModule: FormatPainter;
181
187
  needsID: boolean;
182
188
  /**
183
189
  * Specifies the group of items aligned horizontally in the toolbar as well as defined the toolbar rendering type.
@@ -262,13 +268,31 @@ export declare class RichTextEditor extends Component<HTMLElement> implements IN
262
268
  * }
263
269
  */
264
270
  pasteCleanupSettings: PasteCleanupSettingsModel;
271
+ /**
272
+ * Specifies the format painter options in Rich Text Editor with the following properties.
273
+ * * allowedContext - Sets the context or contexts in which styles will be copied.
274
+ * * allowedFormats - Sets the tag name selectors for elements from which the formats can be copied.
275
+ * * deniedFormats - Sets the selectors for elements from which formats cannot be copied.
276
+ *
277
+ * {% codeBlock src='rich-text-editor/format-painter-settings/index.md' %}{% endcodeBlock %}
278
+ *
279
+ * @default
280
+ * {
281
+ * allowedContext: ['Text', 'List', 'Table'],
282
+ * allowedFormats: 'b; em; font; sub; sup; kbd; i; s; u; code; strong; span; p; div; h1; h2; h3; h4; h5; h6; blockquote; table; thead; tbody; tr; td; th; ol; ul; li; pre;',
283
+ * deniedFormats: null
284
+ * }
285
+ * @aspignore
286
+ * @private
287
+ */
288
+ formatPainterSettings: FormatPainterSettingsModel;
265
289
  /**
266
290
  * Specifies the items to be rendered in an iframe mode, and it has the following properties.
267
291
  * * enable - Set Boolean value to enable, the editors content is placed in an iframe and isolated from the rest of the page.
268
292
  * * attributes - Custom style to be used inside the iframe to display content. This style is added to the iframe body.
269
293
  * * resources - we can add both styles and scripts to the iframe.
270
- * 1. styles[] - An array of CSS style files to inject inside the iframe to display content.
271
- * 2. scripts[] - An array of JS script files to inject inside the iframe.
294
+ * 1. styles[] - An array of CSS style files to inject inside the iframe to display content
295
+ * 2. scripts[] - An array of JS script files to inject inside the iframe
272
296
  *
273
297
  * {% codeBlock src='rich-text-editor/iframe-settings/index.md' %}{% endcodeBlock %}
274
298
  *
@@ -447,6 +471,12 @@ export declare class RichTextEditor extends Component<HTMLElement> implements IN
447
471
  * @default false.
448
472
  */
449
473
  enablePersistence: boolean;
474
+ /**
475
+ * Specify the value whether tooltip will be displayed for the Rich Text Editor toolbar.
476
+ *
477
+ * @default false.
478
+ */
479
+ showTooltip: boolean;
450
480
  /**
451
481
  * Enables or disables the resizing option in the editor.
452
482
  * If enabled, the Rich Text Editor can be resized by dragging the resize icon in the bottom right corner.
@@ -1044,7 +1074,7 @@ export declare class RichTextEditor extends Component<HTMLElement> implements IN
1044
1074
  *
1045
1075
  * @event 'afterPasteCleanup'
1046
1076
  */
1047
- afterPasteCleanup: EmitType<Object>;
1077
+ afterPasteCleanup: EmitType<object>;
1048
1078
  /**
1049
1079
  * Triggers before drop the image.
1050
1080
  *
@@ -1151,7 +1181,7 @@ export declare class RichTextEditor extends Component<HTMLElement> implements IN
1151
1181
  * @param {ExecuteCommandOption} option - specifies the command option
1152
1182
  * @public
1153
1183
  */
1154
- executeCommand(commandName: CommandName, value?: string | HTMLElement | ILinkCommandsArgs | IImageCommandsArgs | ITableCommandsArgs, option?: ExecuteCommandOption): void;
1184
+ executeCommand(commandName: CommandName, value?: string | HTMLElement | ILinkCommandsArgs | IImageCommandsArgs | ITableCommandsArgs | FormatPainterSettingsModel, option?: ExecuteCommandOption): void;
1155
1185
  private htmlPurifier;
1156
1186
  private encode;
1157
1187
  /**