@syncfusion/ej2-richtexteditor 22.2.12 → 23.1.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 (81) hide show
  1. package/CHANGELOG.md +39 -1
  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 +365 -263
  6. package/dist/es6/ej2-richtexteditor.es2015.js.map +1 -1
  7. package/dist/es6/ej2-richtexteditor.es5.js +365 -259
  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/editor-manager/plugin/dom-node.js +6 -5
  14. package/src/editor-manager/plugin/ms-word-clean-up.d.ts +2 -0
  15. package/src/editor-manager/plugin/ms-word-clean-up.js +68 -11
  16. package/src/editor-manager/plugin/table.js +1 -1
  17. package/src/rich-text-editor/actions/base-quick-toolbar.d.ts +2 -1
  18. package/src/rich-text-editor/actions/base-quick-toolbar.js +10 -6
  19. package/src/rich-text-editor/actions/emoji-picker.js +29 -14
  20. package/src/rich-text-editor/actions/enter-key.js +6 -2
  21. package/src/rich-text-editor/actions/format-painter.js +12 -6
  22. package/src/rich-text-editor/actions/html-editor.js +14 -1
  23. package/src/rich-text-editor/actions/paste-clean-up.d.ts +2 -0
  24. package/src/rich-text-editor/actions/paste-clean-up.js +63 -32
  25. package/src/rich-text-editor/actions/quick-toolbar.js +32 -2
  26. package/src/rich-text-editor/actions/toolbar.js +1 -1
  27. package/src/rich-text-editor/actions/xhtml-validation.js +1 -1
  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 +5 -0
  31. package/src/rich-text-editor/base/constant.js +5 -0
  32. package/src/rich-text-editor/base/enum.d.ts +4 -0
  33. package/src/rich-text-editor/base/interface.d.ts +10 -22
  34. package/src/rich-text-editor/base/rich-text-editor-model.d.ts +1 -39
  35. package/src/rich-text-editor/base/rich-text-editor.d.ts +1 -39
  36. package/src/rich-text-editor/base/rich-text-editor.js +2 -8
  37. package/src/rich-text-editor/base/util.js +5 -1
  38. package/src/rich-text-editor/models/items.js +34 -22
  39. package/src/rich-text-editor/models/toolbar-settings-model.d.ts +4 -5
  40. package/src/rich-text-editor/models/toolbar-settings.d.ts +4 -5
  41. package/src/rich-text-editor/models/toolbar-settings.js +1 -1
  42. package/src/rich-text-editor/renderer/audio-module.js +5 -33
  43. package/src/rich-text-editor/renderer/dialog-renderer.js +1 -1
  44. package/src/rich-text-editor/renderer/image-module.js +8 -65
  45. package/src/rich-text-editor/renderer/link-module.js +3 -0
  46. package/src/rich-text-editor/renderer/table-module.js +18 -7
  47. package/src/rich-text-editor/renderer/toolbar-renderer.d.ts +5 -1
  48. package/src/rich-text-editor/renderer/toolbar-renderer.js +28 -2
  49. package/src/rich-text-editor/renderer/video-module.js +5 -33
  50. package/src/rich-text-editor/renderer/view-source.js +1 -0
  51. package/styles/material-dark.css +0 -1
  52. package/styles/material.css +0 -1
  53. package/styles/material3-dark.css +0 -1
  54. package/styles/material3-dark.scss +1 -1
  55. package/styles/material3.css +0 -1
  56. package/styles/material3.scss +1 -1
  57. package/styles/rich-text-editor/bootstrap-dark.scss +1 -1
  58. package/styles/rich-text-editor/bootstrap.scss +1 -1
  59. package/styles/rich-text-editor/bootstrap4.scss +1 -1
  60. package/styles/rich-text-editor/bootstrap5-dark.scss +1 -1
  61. package/styles/rich-text-editor/bootstrap5.scss +1 -1
  62. package/styles/rich-text-editor/fabric-dark.scss +1 -1
  63. package/styles/rich-text-editor/fabric.scss +1 -1
  64. package/styles/rich-text-editor/fluent-dark.scss +1 -1
  65. package/styles/rich-text-editor/fluent.scss +1 -1
  66. package/styles/rich-text-editor/highcontrast-light.scss +1 -1
  67. package/styles/rich-text-editor/highcontrast.scss +1 -1
  68. package/styles/rich-text-editor/material-dark.css +0 -1
  69. package/styles/rich-text-editor/material-dark.scss +1 -1
  70. package/styles/rich-text-editor/material.css +0 -1
  71. package/styles/rich-text-editor/material.scss +1 -1
  72. package/styles/rich-text-editor/material3-dark.css +0 -1
  73. package/styles/rich-text-editor/material3-dark.scss +1 -1
  74. package/styles/rich-text-editor/material3.css +0 -1
  75. package/styles/rich-text-editor/material3.scss +1 -1
  76. package/styles/rich-text-editor/tailwind-dark.css +0 -1
  77. package/styles/rich-text-editor/tailwind-dark.scss +1 -1
  78. package/styles/rich-text-editor/tailwind.css +0 -1
  79. package/styles/rich-text-editor/tailwind.scss +1 -1
  80. package/styles/tailwind-dark.css +0 -1
  81. package/styles/tailwind.css +0 -1
@@ -484,7 +484,7 @@ export declare class RichTextEditor extends Component<HTMLElement> implements IN
484
484
  /**
485
485
  * Specify the value whether tooltip will be displayed for the Rich Text Editor toolbar.
486
486
  *
487
- * @default false.
487
+ * @default true.
488
488
  */
489
489
  showTooltip: boolean;
490
490
  /**
@@ -827,14 +827,12 @@ export declare class RichTextEditor extends Component<HTMLElement> implements IN
827
827
  * Set the cancel argument to true to cancel the command execution.
828
828
  *
829
829
  * @event 'actionBegin'
830
- * @blazorProperty 'OnActionBegin'
831
830
  */
832
831
  actionBegin: EmitType<ActionBeginEventArgs>;
833
832
  /**
834
833
  * Triggers after command execution using toolbar items or executeCommand method.
835
834
  *
836
835
  * @event 'actionComplete'
837
- * @blazorProperty 'OnActionComplete'
838
836
  */
839
837
  actionComplete: EmitType<ActionCompleteEventArgs>;
840
838
  /**
@@ -843,16 +841,12 @@ export declare class RichTextEditor extends Component<HTMLElement> implements IN
843
841
  * Set the cancel argument to true to cancel the open of a dialog.
844
842
  *
845
843
  * @event 'beforeDialogOpen'
846
- * @blazorProperty 'OnDialogOpen'
847
- * @blazorType Syncfusion.EJ2.Blazor.Popups.BeforeOpenEventArgs
848
844
  */
849
845
  beforeDialogOpen: EmitType<BeforeOpenEventArgs>;
850
846
  /**
851
847
  * Event triggers when a dialog is opened.
852
848
  *
853
849
  * @event 'dialogOpen'
854
- * @blazorProperty 'DialogOpened'
855
- * @blazorType DialogOpenEventArgs
856
850
  */
857
851
  dialogOpen: EmitType<Object>;
858
852
  /**
@@ -861,39 +855,30 @@ export declare class RichTextEditor extends Component<HTMLElement> implements IN
861
855
  * Set the cancel argument to true to prevent closing a dialog.
862
856
  *
863
857
  * @event 'beforeDialogClose'
864
- * @blazorProperty 'OnDialogClose'
865
- * @blazorType Syncfusion.EJ2.Blazor.Popups.BeforeOpenEventArgs
866
858
  */
867
859
  beforeDialogClose: EmitType<BeforeCloseEventArgs>;
868
860
  /**
869
861
  * Event triggers after the dialog has been closed.
870
862
  *
871
863
  * @event 'dialogClose'
872
- * @blazorProperty 'DialogClosed'
873
- * @blazorType DialogCloseEventArgs
874
864
  */
875
865
  dialogClose: EmitType<Object>;
876
866
  /**
877
867
  * Event triggers when the quick toolbar is being opened.
878
868
  *
879
869
  * @event 'beforeQuickToolbarOpen'
880
- * @blazorProperty 'OnQuickToolbarOpen'
881
870
  */
882
871
  beforeQuickToolbarOpen: EmitType<BeforeQuickToolbarOpenArgs>;
883
872
  /**
884
873
  * Event triggers when a quick toolbar is opened.
885
874
  *
886
875
  * @event 'quickToolbarOpen'
887
- * @blazorProperty 'QuickToolbarOpened'
888
- * @blazorType QuickToolbarEventArgs
889
876
  */
890
877
  quickToolbarOpen: EmitType<Object>;
891
878
  /**
892
879
  * Event triggers after the quick toolbar has been closed.
893
880
  *
894
881
  * @event 'quickToolbarClose'
895
- * @blazorProperty 'QuickToolbarClosed'
896
- * @blazorType QuickToolbarEventArgs
897
882
  */
898
883
  quickToolbarClose: EmitType<Object>;
899
884
  /**
@@ -907,14 +892,12 @@ export declare class RichTextEditor extends Component<HTMLElement> implements IN
907
892
  * Triggers when the toolbar items status is updated.
908
893
  *
909
894
  * @event 'updatedToolbarStatus'
910
- * @blazorType ToolbarUpdateEventArgs
911
895
  */
912
896
  updatedToolbarStatus: EmitType<ToolbarStatusEventArgs>;
913
897
  /**
914
898
  * Event triggers when the image is selected or dragged into the insert image dialog.
915
899
  *
916
900
  * @event 'imageSelected'
917
- * @blazorProperty 'OnImageSelected'
918
901
  */
919
902
  imageSelected: EmitType<SelectedEventArgs>;
920
903
  /**
@@ -927,37 +910,30 @@ export declare class RichTextEditor extends Component<HTMLElement> implements IN
927
910
  * Event triggers when the selected image begins to upload in the insert image dialog.
928
911
  *
929
912
  * @event 'imageUploading'
930
- * @blazorProperty 'OnImageUploading'
931
913
  */
932
914
  imageUploading: EmitType<UploadingEventArgs>;
933
915
  /**
934
916
  * Event triggers when the image is successfully uploaded to the server side.
935
917
  *
936
918
  * @event 'imageUploadSuccess'
937
- * @blazorProperty 'OnImageUploadSuccess'
938
- * @blazorType ImageSuccessEventArgs
939
919
  */
940
920
  imageUploadSuccess: EmitType<Object>;
941
921
  /**
942
922
  * Event triggers when there is an error in the image upload.
943
923
  *
944
924
  * @event 'imageUploadFailed'
945
- * @blazorProperty 'OnImageUploadFailed'
946
- * @blazorType ImageFailedEventArgs
947
925
  */
948
926
  imageUploadFailed: EmitType<Object>;
949
927
  /**
950
928
  * Event triggers when the selected image is cleared from the insert image dialog.
951
929
  *
952
930
  * @event 'imageRemoving'
953
- * @blazorProperty 'OnImageRemoving'
954
931
  */
955
932
  imageRemoving: EmitType<RemovingEventArgs>;
956
933
  /**
957
934
  * Event triggers when the selected image is cleared from the Rich Text Editor Content.
958
935
  *
959
936
  * @event 'afterImageDelete'
960
- * @blazorProperty 'OnImageDelete'
961
937
  */
962
938
  afterImageDelete: EmitType<AfterImageDeleteEventArgs>;
963
939
  /**
@@ -1006,72 +982,60 @@ export declare class RichTextEditor extends Component<HTMLElement> implements IN
1006
982
  * Triggers when the Rich Text Editor is rendered.
1007
983
  *
1008
984
  * @event 'created'
1009
- * @blazorProperty 'Created'
1010
985
  */
1011
986
  created: EmitType<Object>;
1012
987
  /**
1013
988
  * Triggers when the Rich Text Editor is destroyed.
1014
989
  *
1015
990
  * @event 'destroyed'
1016
- * @blazorProperty 'Destroyed'
1017
- * @blazorType DestroyedEventArgs
1018
991
  */
1019
992
  destroyed: EmitType<Object>;
1020
993
  /**
1021
994
  * Event triggers before sanitize the value. It's only applicable to editorMode as `HTML`.
1022
995
  *
1023
996
  * @event 'beforeSanitizeHtml'
1024
- * @blazorProperty 'OnSanitizeHtml'
1025
997
  */
1026
998
  beforeSanitizeHtml: EmitType<BeforeSanitizeHtmlArgs>;
1027
999
  /**
1028
1000
  * Triggers when Rich Text Editor is focused out.
1029
1001
  *
1030
1002
  * @event 'blur'
1031
- * @blazorType BlurEventArgs
1032
1003
  */
1033
1004
  blur: EmitType<Object>;
1034
1005
  /**
1035
1006
  * Triggers when Rich Text Editor Toolbar items is clicked.
1036
1007
  *
1037
1008
  * @event 'toolbarClick'
1038
- * @blazorProperty 'OnToolbarClick'
1039
- * @blazorType ToolbarClickEventArgs
1040
1009
  */
1041
1010
  toolbarClick: EmitType<Object>;
1042
1011
  /**
1043
1012
  * Triggers when Rich Text Editor is focused in
1044
1013
  *
1045
1014
  * @event 'focus'
1046
- * @blazorType FocusEventArgs
1047
1015
  */
1048
1016
  focus: EmitType<Object>;
1049
1017
  /**
1050
1018
  * Triggers only when Rich Text Editor is blurred and changes are done to the content.
1051
1019
  *
1052
1020
  * @event 'change'
1053
- * @blazorProperty 'ValueChange'
1054
1021
  */
1055
1022
  change: EmitType<ChangeEventArgs>;
1056
1023
  /**
1057
1024
  * Triggers only when resizing the image.
1058
1025
  *
1059
1026
  * @event 'resizing'
1060
- * @blazorProperty 'Resizing'
1061
1027
  */
1062
1028
  resizing: EmitType<ResizeArgs>;
1063
1029
  /**
1064
1030
  * Triggers only when start resize the image.
1065
1031
  *
1066
1032
  * @event 'resizeStart'
1067
- * @blazorProperty 'OnResizeStart'
1068
1033
  */
1069
1034
  resizeStart: EmitType<ResizeArgs>;
1070
1035
  /**
1071
1036
  * Triggers only when stop resize the image.
1072
1037
  *
1073
1038
  * @event 'resizeStop'
1074
- * @blazorProperty 'OnResizeStop'
1075
1039
  */
1076
1040
  resizeStop: EmitType<ResizeArgs>;
1077
1041
  /**
@@ -1090,7 +1054,6 @@ export declare class RichTextEditor extends Component<HTMLElement> implements IN
1090
1054
  * Triggers before drop the image.
1091
1055
  *
1092
1056
  * @event 'beforeImageDrop'
1093
- * @blazorProperty 'OnImageDrop'
1094
1057
  */
1095
1058
  beforeImageDrop: EmitType<ImageDropEventArgs>;
1096
1059
  /**
@@ -1099,7 +1062,6 @@ export declare class RichTextEditor extends Component<HTMLElement> implements IN
1099
1062
  * {% codeBlock src='rich-text-editor/formatter/index.md' %}{% endcodeBlock %}
1100
1063
  *
1101
1064
  * @default null
1102
- * @blazorType object
1103
1065
  */
1104
1066
  formatter: IFormatter;
1105
1067
  keyboardModule: KeyboardEvents;
@@ -1108,9 +1108,6 @@ var RichTextEditor = /** @class */ (function (_super) {
1108
1108
  this.removeAttributes();
1109
1109
  _super.prototype.destroy.call(this);
1110
1110
  this.isRendered = false;
1111
- if (this.enablePersistence) {
1112
- window.localStorage.removeItem(this.getModuleName() + this.element.id);
1113
- }
1114
1111
  };
1115
1112
  RichTextEditor.prototype.removeHtmlAttributes = function () {
1116
1113
  if (this.htmlAttributes) {
@@ -1240,9 +1237,10 @@ var RichTextEditor = /** @class */ (function (_super) {
1240
1237
  else {
1241
1238
  nVal = newProp[prop];
1242
1239
  }
1240
+ nVal = this.serializeValue(nVal);
1243
1241
  var val = this.editorMode === 'HTML' ? getEditValue(nVal, this) : nVal;
1244
1242
  if ((!isNOU(nVal) && nVal !== '') || prop === 'enterKey') {
1245
- this.value = this.serializeValue(((this.enableHtmlEncode) ? this.encode(decode(val)) : val));
1243
+ this.setProperties({ value: ((this.enableHtmlEncode) ? this.encode(decode(val)) : val) }, true);
1246
1244
  }
1247
1245
  this.updatePanelValue();
1248
1246
  if (this.inputElement) {
@@ -1790,10 +1788,6 @@ var RichTextEditor = /** @class */ (function (_super) {
1790
1788
  // eslint-disable-next-line
1791
1789
  var imgPadding = 12;
1792
1790
  var imgResizeBorder = 2;
1793
- if (isNOU(this.contentModule) || isNOU(this.contentModule.getEditPanel())) {
1794
- EventHandler.remove(this.contentModule.getDocument(), Browser.touchMoveEvent, this.imageModule.resizing);
1795
- return maxWidth;
1796
- }
1797
1791
  var editEle = this.contentModule.getEditPanel();
1798
1792
  var eleStyle = window.getComputedStyle(editEle);
1799
1793
  var editEleMaxWidth = editEle.offsetWidth - (imgPadding + imgResizeBorder +
@@ -163,7 +163,7 @@ export function setToolbarStatus(e, isPopToolbar, self) {
163
163
  }
164
164
  }
165
165
  else if ((typeof data["" + key] === 'string' || data["" + key] === null) &&
166
- getIndex(key, e.parent.toolbarSettings.items) > -1) {
166
+ getIndex(key, e.parent.toolbarSettings.items) >= -1) {
167
167
  var value = ((data["" + key]) ? data["" + key] : '');
168
168
  var result = '';
169
169
  switch (key) {
@@ -228,6 +228,10 @@ export function setToolbarStatus(e, isPopToolbar, self) {
228
228
  dropDown.fontSizeDropDown.dataBind();
229
229
  break;
230
230
  }
231
+ case 'bulletFormatList':
232
+ case 'numberFormatList': {
233
+ removeClass([e.tbElements[j]], [classes.CLS_ACTIVE]);
234
+ }
231
235
  }
232
236
  }
233
237
  }
@@ -755,29 +755,41 @@ export function updateDropDownLocale(self) {
755
755
  });
756
756
  }
757
757
  export var windowKeys = {
758
- 'Insert Link': 'Ctrl + K',
759
- 'Insert Image': 'Ctrl + Shift + I',
760
- 'Create Table': 'Ctrl + Shift + E',
761
- 'Undo': 'Ctrl + Z',
762
- 'Redo': 'Ctrl + Y',
763
- 'Copy': 'Ctrl + C',
764
- 'Cut': 'Ctrl + X',
765
- 'Paste': 'Ctrl + V',
766
- 'Bold': 'Ctrl + B',
767
- 'Italic': 'Ctrl + I',
768
- 'Underline': 'Ctrl + U',
769
- 'Strikethrough': 'Ctrl + Shift + S',
770
- 'Upper Case': 'Ctrl + Shift + U',
771
- 'Lower Case': 'Ctrl + Shift + L',
772
- 'Superscript': 'Ctrl + Shift + =',
773
- 'Subscript': 'Ctrl + =',
774
- 'Source Code': 'Ctrl + Shift + H',
775
- 'Maximize': 'Ctrl + Shift + F',
758
+ 'Insert Link': 'Ctrl+K',
759
+ 'Insert Image': 'Ctrl+Shift+I',
760
+ 'Create Table': 'Ctrl+Shift+E',
761
+ 'Undo': 'Ctrl+Z',
762
+ 'Redo': 'Ctrl+Y',
763
+ 'Copy': 'Ctrl+C',
764
+ 'Cut': 'Ctrl+X',
765
+ 'Paste': 'Ctrl+V',
766
+ 'Bold': 'Ctrl+B',
767
+ 'Italic': 'Ctrl+I',
768
+ 'Underline': 'Ctrl+U',
769
+ 'Strikethrough': 'Ctrl+Shift+S',
770
+ 'Upper Case': 'Ctrl+Shift+U',
771
+ 'Lower Case': 'Ctrl+Shift+L',
772
+ 'Superscript': 'Ctrl+Shift+=',
773
+ 'Subscript': 'Ctrl+=',
774
+ 'Code View': 'Ctrl+Shift+H',
775
+ 'Maximize': 'Ctrl+Shift+F',
776
776
  'Minimize': 'Esc',
777
- 'Clear Format': 'Ctrl + Shift + R',
778
- 'Numbered List': 'Ctrl + Shift + O',
779
- 'Bulleted List': 'Ctrl + Alt + O',
780
- 'Format Painter': 'Alt + Shift + C, Alt + Shift + V'
777
+ 'Clear Format': 'Ctrl+Shift+R',
778
+ 'Numbered List': 'Ctrl+Shift+O',
779
+ 'Bulleted List': 'Ctrl+Alt+O',
780
+ 'Number Format List': 'Ctrl+Shift+O',
781
+ 'Bullet Format List': 'Ctrl+Alt+O',
782
+ 'Insert Audio': 'Ctrl+Shift+A',
783
+ 'Insert Video': 'Ctrl+Shift+V',
784
+ 'Increase Indent': 'Ctrl+]',
785
+ 'Decrease Indent': 'Ctrl+[',
786
+ 'Decrease Fontsize': 'Ctrl+Shift+<',
787
+ 'Increase Fontsize': 'Ctrl+Shift+>',
788
+ 'Justify Center': 'Ctrl+E',
789
+ 'Justify Full': 'Ctrl+J',
790
+ 'Justify Left': 'Ctrl+L',
791
+ 'Justify Right': 'Ctrl+R',
792
+ 'Format Painter': 'Alt+Shift+C, Alt+Shift+V'
781
793
  };
782
794
  export var defaultEmojiIcons = [{
783
795
  name: 'Smilies & People', code: '1F600', iconCss: 'e-emoji', icons: [{ code: '1F600', desc: 'Grinning face' },
@@ -1,4 +1,4 @@
1
- import { Property, ChildProperty, Complex, Event, EmitType } from '@syncfusion/ej2-base';import { AjaxSettings, AjaxSettingsModel, ContextMenuSettings, ContextMenuSettingsModel, BeforeSendEventArgs } from '@syncfusion/ej2-filemanager';import { DetailsViewSettings, DetailsViewSettingsModel, NavigationPaneSettings } from '@syncfusion/ej2-filemanager';import { NavigationPaneSettingsModel, SearchSettings, SearchSettingsModel, SortOrder } from '@syncfusion/ej2-filemanager';import { ToolbarSettingsModel as FileToolbarSettingsModel, ToolbarSettings as FileToolbarSettings } from '@syncfusion/ej2-filemanager';import { UploadSettings, UploadSettingsModel, ViewType } from '@syncfusion/ej2-filemanager';import { SaveFormat, DisplayLayoutOptions } from '../../common';import { ToolbarType, ActionOnScroll, ToolbarItems } from '../base/enum';import { IToolbarItems, IDropDownItemModel, ColorModeType, IToolsItemConfigs, IListDropDownModel, EmojiIconsSet } from '../base/interface';import { backgroundColor, fontColor, fontFamily, fontSize, formatItems, predefinedItems, TableStyleItems, numberFormatList, bulletFormatList, defaultEmojiIcons } from './items';
1
+ import { Property, ChildProperty, Complex, Event, EmitType } from '@syncfusion/ej2-base';import { AjaxSettings, AjaxSettingsModel, ContextMenuSettings, ContextMenuSettingsModel, BeforeSendEventArgs } from '@syncfusion/ej2-filemanager';import { DetailsViewSettings, DetailsViewSettingsModel, NavigationPaneSettings } from '@syncfusion/ej2-filemanager';import { NavigationPaneSettingsModel, SearchSettings, SearchSettingsModel, SortOrder } from '@syncfusion/ej2-filemanager';import { ToolbarSettingsModel as FileToolbarSettingsModel, ToolbarSettings as FileToolbarSettings } from '@syncfusion/ej2-filemanager';import { UploadSettings, UploadSettingsModel, ViewType } from '@syncfusion/ej2-filemanager';import { SaveFormat, DisplayLayoutOptions } from '../../common';import { ToolbarType, ActionOnScroll, ToolbarItems, ToolbarConfigItems } from '../base/enum';import { IToolbarItems, IDropDownItemModel, ColorModeType, IToolsItemConfigs, IListDropDownModel, EmojiIconsSet } from '../base/interface';import { backgroundColor, fontColor, fontFamily, fontSize, formatItems, predefinedItems, TableStyleItems, numberFormatList, bulletFormatList, defaultEmojiIcons } from './items';
2
2
 
3
3
  /**
4
4
  * Interface for a class ToolbarSettings
@@ -36,7 +36,7 @@ export interface ToolbarSettingsModel {
36
36
  * @default ['Bold', 'Italic', 'Underline', '|', 'Formats', 'Alignments', 'OrderedList',
37
37
  * 'UnorderedList', '|', 'CreateLink', 'Image', '|', 'SourceCode', 'Undo', 'Redo']
38
38
  */
39
- items?: (string | IToolbarItems)[];
39
+ items?: (string |ToolbarConfigItems | IToolbarItems)[];
40
40
 
41
41
  /**
42
42
  * Using this property, Modify the default toolbar item configuration like icon class.
@@ -570,10 +570,9 @@ export interface QuickToolbarSettingsModel {
570
570
  /**
571
571
  * Specifies the items to render in quick toolbar, when text selected.
572
572
  *
573
- * @default ['Cut', 'Copy', 'Paste']
574
-
573
+ * @default null
575
574
  */
576
- text?: (string | IToolbarItems)[];
575
+ text?: (string | ToolbarConfigItems | IToolbarItems)[];
577
576
 
578
577
  /**
579
578
  * Specifies the items to render in quick toolbar, when table selected.
@@ -5,7 +5,7 @@ import { NavigationPaneSettingsModel, SearchSettingsModel, SortOrder } from '@sy
5
5
  import { ToolbarSettingsModel as FileToolbarSettingsModel } from '@syncfusion/ej2-filemanager';
6
6
  import { UploadSettingsModel, ViewType } from '@syncfusion/ej2-filemanager';
7
7
  import { SaveFormat, DisplayLayoutOptions } from '../../common';
8
- import { ToolbarType, ActionOnScroll, ToolbarItems } from '../base/enum';
8
+ import { ToolbarType, ActionOnScroll, ToolbarItems, ToolbarConfigItems } from '../base/enum';
9
9
  import { IToolbarItems, IDropDownItemModel, ColorModeType, IToolsItemConfigs, IListDropDownModel, EmojiIconsSet } from '../base/interface';
10
10
  /**
11
11
  * Configures the toolbar settings of the RichTextEditor.
@@ -39,7 +39,7 @@ export declare class ToolbarSettings extends ChildProperty<ToolbarSettings> {
39
39
  * @default ['Bold', 'Italic', 'Underline', '|', 'Formats', 'Alignments', 'OrderedList',
40
40
  * 'UnorderedList', '|', 'CreateLink', 'Image', '|', 'SourceCode', 'Undo', 'Redo']
41
41
  */
42
- items: (string | IToolbarItems)[];
42
+ items: (string | ToolbarConfigItems | IToolbarItems)[];
43
43
  /**
44
44
  * Using this property, Modify the default toolbar item configuration like icon class.
45
45
  *
@@ -493,10 +493,9 @@ export declare class QuickToolbarSettings extends ChildProperty<QuickToolbarSett
493
493
  /**
494
494
  * Specifies the items to render in quick toolbar, when text selected.
495
495
  *
496
- * @default ['Cut', 'Copy', 'Paste']
497
-
496
+ * @default null
498
497
  */
499
- text: (string | IToolbarItems)[];
498
+ text: (string | ToolbarConfigItems | IToolbarItems)[];
500
499
  /**
501
500
  * Specifies the items to render in quick toolbar, when table selected.
502
501
  *
@@ -304,7 +304,7 @@ var QuickToolbarSettings = /** @class */ (function (_super) {
304
304
  Property(['VideoReplace', 'VideoAlign', 'VideoRemove', 'VideoLayoutOption', 'VideoDimension'])
305
305
  ], QuickToolbarSettings.prototype, "video", void 0);
306
306
  __decorate([
307
- Property(['Cut', 'Copy', 'Paste'])
307
+ Property(null)
308
308
  ], QuickToolbarSettings.prototype, "text", void 0);
309
309
  __decorate([
310
310
  Property(['TableHeader', 'TableRows', 'TableColumns', 'BackgroundColor', '-', 'TableRemove', 'Alignments', 'TableCellVerticalAlign', 'Styles'])
@@ -617,6 +617,9 @@ var Audio = /** @class */ (function () {
617
617
  if (this.quickToolObj.inlineQTBar && document.body.contains(this.quickToolObj.inlineQTBar.element)) {
618
618
  this.quickToolObj.inlineQTBar.hidePopup();
619
619
  }
620
+ if (this.quickToolObj.textQTBar && this.parent.element.ownerDocument.body.contains(this.quickToolObj.textQTBar.element)) {
621
+ this.quickToolObj.textQTBar.hidePopup();
622
+ }
620
623
  }
621
624
  };
622
625
  // eslint-disable-next-line
@@ -686,10 +689,8 @@ var Audio = /** @class */ (function () {
686
689
  });
687
690
  uploadParentEle.appendChild(uploadEle);
688
691
  var fileName;
689
- var rawFile;
690
692
  var selectArgs;
691
693
  var filesData;
692
- var beforeUploadArgs;
693
694
  this.uploadObj = new Uploader({
694
695
  asyncSettings: { saveUrl: this.parent.insertAudioSettings.saveUrl, removeUrl: this.parent.insertAudioSettings.removeUrl },
695
696
  dropArea: span, multiple: false, enableRtl: this.parent.enableRtl,
@@ -697,13 +698,8 @@ var Audio = /** @class */ (function () {
697
698
  selected: function (e) {
698
699
  proxy.isAudioUploaded = true;
699
700
  selectArgs = e;
701
+ // eslint-disable-next-line
700
702
  filesData = e.filesData;
701
- if (_this.parent.isServerRendered) {
702
- selectArgs = JSON.parse(JSON.stringify(e));
703
- e.cancel = true;
704
- rawFile = e.filesData;
705
- selectArgs.filesData = rawFile;
706
- }
707
703
  _this.parent.trigger(events.fileSelected, selectArgs, function (selectArgs) {
708
704
  if (!selectArgs.cancel) {
709
705
  _this.checkExtension(selectArgs.filesData[0]);
@@ -726,35 +722,11 @@ var Audio = /** @class */ (function () {
726
722
  });
727
723
  reader_1.readAsDataURL(selectArgs.filesData[0].rawFile);
728
724
  }
729
- if (_this.parent.isServerRendered) {
730
- /* eslint-disable */
731
- _this.uploadObj._internalRenderSelect(selectArgs, rawFile);
732
- /* eslint-enable */
733
- }
734
725
  }
735
726
  });
736
727
  },
737
728
  beforeUpload: function (args) {
738
- if (_this.parent.isServerRendered) {
739
- beforeUploadArgs = JSON.parse(JSON.stringify(args));
740
- beforeUploadArgs.filesData = filesData;
741
- args.cancel = true;
742
- _this.parent.trigger(events.fileUploading, beforeUploadArgs, function (beforeUploadArgs) {
743
- if (beforeUploadArgs.cancel) {
744
- return;
745
- }
746
- /* eslint-disable */
747
- _this.uploadObj.currentRequestHeader = beforeUploadArgs.currentRequest ?
748
- beforeUploadArgs.currentRequest : _this.uploadObj.currentRequestHeader;
749
- _this.uploadObj.customFormDatas = beforeUploadArgs.customFormData && beforeUploadArgs.customFormData.length > 0 ?
750
- beforeUploadArgs.customFormData : _this.uploadObj.customFormDatas;
751
- _this.uploadObj.uploadFiles(rawFile, null);
752
- /* eslint-enable */
753
- });
754
- }
755
- else {
756
- _this.parent.trigger(events.beforeFileUpload, args);
757
- }
729
+ _this.parent.trigger(events.beforeFileUpload, args);
758
730
  },
759
731
  uploading: function (e) {
760
732
  if (!_this.parent.isServerRendered) {
@@ -55,7 +55,7 @@ var DialogRenderer = /** @class */ (function () {
55
55
  this.parent.trigger(events.beforeDialogOpen, args, this.beforeOpenCallback.bind(this, args));
56
56
  };
57
57
  DialogRenderer.prototype.handleEnterKeyDown = function (args) {
58
- if (args.code === "Enter") {
58
+ if (args.code === 'Enter') {
59
59
  args.preventDefault();
60
60
  }
61
61
  };
@@ -1424,6 +1424,9 @@ var Image = /** @class */ (function () {
1424
1424
  if (this.quickToolObj.inlineQTBar && document.body.contains(this.quickToolObj.inlineQTBar.element)) {
1425
1425
  this.quickToolObj.inlineQTBar.hidePopup();
1426
1426
  }
1427
+ if (this.quickToolObj.textQTBar && this.parent.element.ownerDocument.body.contains(this.quickToolObj.textQTBar.element)) {
1428
+ this.quickToolObj.textQTBar.hidePopup();
1429
+ }
1427
1430
  }
1428
1431
  };
1429
1432
  // eslint-disable-next-line
@@ -1692,10 +1695,8 @@ var Image = /** @class */ (function () {
1692
1695
  });
1693
1696
  uploadParentEle.appendChild(uploadEle);
1694
1697
  var altText;
1695
- var rawFile;
1696
1698
  var selectArgs;
1697
1699
  var filesData;
1698
- var beforeUploadArgs;
1699
1700
  this.uploadObj = new Uploader({
1700
1701
  asyncSettings: { saveUrl: this.parent.insertImageSettings.saveUrl, removeUrl: this.parent.insertImageSettings.removeUrl },
1701
1702
  dropArea: span, multiple: false, enableRtl: this.parent.enableRtl, cssClass: this.parent.cssClass,
@@ -1703,13 +1704,8 @@ var Image = /** @class */ (function () {
1703
1704
  selected: function (e) {
1704
1705
  proxy.isImgUploaded = true;
1705
1706
  selectArgs = e;
1707
+ // eslint-disable-next-line
1706
1708
  filesData = e.filesData;
1707
- if (_this.parent.isServerRendered) {
1708
- selectArgs = JSON.parse(JSON.stringify(e));
1709
- e.cancel = true;
1710
- rawFile = e.filesData;
1711
- selectArgs.filesData = rawFile;
1712
- }
1713
1709
  _this.parent.trigger(events.imageSelected, selectArgs, function (selectArgs) {
1714
1710
  if (!selectArgs.cancel) {
1715
1711
  _this.checkExtension(selectArgs.filesData[0]);
@@ -1740,35 +1736,11 @@ var Image = /** @class */ (function () {
1740
1736
  });
1741
1737
  reader_1.readAsDataURL(selectArgs.filesData[0].rawFile);
1742
1738
  }
1743
- if (_this.parent.isServerRendered) {
1744
- /* eslint-disable */
1745
- _this.uploadObj._internalRenderSelect(selectArgs, rawFile);
1746
- /* eslint-enable */
1747
- }
1748
1739
  }
1749
1740
  });
1750
1741
  },
1751
1742
  beforeUpload: function (args) {
1752
- if (_this.parent.isServerRendered) {
1753
- beforeUploadArgs = JSON.parse(JSON.stringify(args));
1754
- beforeUploadArgs.filesData = filesData;
1755
- args.cancel = true;
1756
- _this.parent.trigger(events.imageUploading, beforeUploadArgs, function (beforeUploadArgs) {
1757
- if (beforeUploadArgs.cancel) {
1758
- return;
1759
- }
1760
- /* eslint-disable */
1761
- _this.uploadObj.currentRequestHeader = beforeUploadArgs.currentRequest ?
1762
- beforeUploadArgs.currentRequest : _this.uploadObj.currentRequestHeader;
1763
- _this.uploadObj.customFormDatas = beforeUploadArgs.customFormData && beforeUploadArgs.customFormData.length > 0 ?
1764
- beforeUploadArgs.customFormData : _this.uploadObj.customFormDatas;
1765
- _this.uploadObj.uploadFiles(rawFile, null);
1766
- /* eslint-enable */
1767
- });
1768
- }
1769
- else {
1770
- _this.parent.trigger(events.beforeImageUpload, args);
1771
- }
1743
+ _this.parent.trigger(events.beforeImageUpload, args);
1772
1744
  },
1773
1745
  uploading: function (e) {
1774
1746
  if (!_this.parent.isServerRendered) {
@@ -2087,8 +2059,6 @@ var Image = /** @class */ (function () {
2087
2059
  setTimeout(function () {
2088
2060
  proxy.refreshPopup(imageElement);
2089
2061
  }, timeOut);
2090
- var rawFile;
2091
- var beforeUploadArgs;
2092
2062
  this.uploadObj = new Uploader({
2093
2063
  asyncSettings: {
2094
2064
  saveUrl: this.parent.insertImageSettings.saveUrl,
@@ -2114,33 +2084,9 @@ var Image = /** @class */ (function () {
2114
2084
  }, 900);
2115
2085
  },
2116
2086
  beforeUpload: function (args) {
2117
- if (_this.parent.isServerRendered) {
2118
- beforeUploadArgs = JSON.parse(JSON.stringify(args));
2119
- beforeUploadArgs.filesData = rawFile;
2120
- isUploading = true;
2121
- args.cancel = true;
2122
- _this.parent.trigger(events.imageUploading, beforeUploadArgs, function (beforeUploadArgs) {
2123
- if (beforeUploadArgs.cancel) {
2124
- return;
2125
- }
2126
- if (!_this.parent.inlineMode.enable) {
2127
- _this.parent.toolbarModule.baseToolbar.toolbarObj.disable(true);
2128
- }
2129
- /* eslint-disable */
2130
- _this.uploadObj.currentRequestHeader = beforeUploadArgs.currentRequest ?
2131
- beforeUploadArgs.currentRequest : _this.uploadObj.currentRequestHeader;
2132
- _this.uploadObj.customFormDatas = beforeUploadArgs.customFormData && beforeUploadArgs.customFormData.length > 0 ?
2133
- beforeUploadArgs.customFormData : _this.uploadObj.customFormDatas;
2134
- _this.uploadObj.uploadFiles(rawFile, null);
2135
- _this.parent.inputElement.contentEditable = 'false';
2136
- /* eslint-enable */
2137
- });
2138
- }
2139
- else {
2140
- _this.parent.trigger(events.beforeImageUpload, args);
2141
- if (!_this.parent.inlineMode.enable) {
2142
- _this.parent.toolbarModule.baseToolbar.toolbarObj.disable(true);
2143
- }
2087
+ _this.parent.trigger(events.beforeImageUpload, args);
2088
+ if (!_this.parent.inlineMode.enable) {
2089
+ _this.parent.toolbarModule.baseToolbar.toolbarObj.disable(true);
2144
2090
  }
2145
2091
  },
2146
2092
  uploading: function (e) {
@@ -2165,9 +2111,6 @@ var Image = /** @class */ (function () {
2165
2111
  if (isUploading) {
2166
2112
  e.cancel = true;
2167
2113
  }
2168
- if (_this.parent.isServerRendered) {
2169
- rawFile = e.filesData;
2170
- }
2171
2114
  },
2172
2115
  failure: function (e) {
2173
2116
  isUploading = false;
@@ -350,6 +350,9 @@ var Link = /** @class */ (function () {
350
350
  if (this.quickToolObj.inlineQTBar && document.body.contains(this.quickToolObj.inlineQTBar.element)) {
351
351
  this.quickToolObj.inlineQTBar.hidePopup();
352
352
  }
353
+ if (this.quickToolObj.textQTBar && this.parent.element.ownerDocument.body.contains(this.quickToolObj.textQTBar.element)) {
354
+ this.quickToolObj.textQTBar.hidePopup();
355
+ }
353
356
  }
354
357
  };
355
358
  // eslint-disable-next-line