@progress/kendo-angular-editor 2.5.0-dev.202111240844 → 3.0.0-dev.202112211443

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 (194) hide show
  1. package/dist/cdn/js/kendo-angular-editor.js +2 -2
  2. package/dist/cdn/main.js +1 -1
  3. package/dist/es/common/error-messages.js +3 -2
  4. package/dist/es/editor.component.js +102 -69
  5. package/dist/es/index.js +1 -0
  6. package/dist/es/main.js +1 -0
  7. package/dist/es/package-metadata.js +1 -1
  8. package/dist/es/preventable-events/paste-event-data.js +4 -0
  9. package/dist/es/preventable-events/paste-event.js +25 -0
  10. package/dist/es/tools/alignment/editor-align-center-button.directive.js +5 -3
  11. package/dist/es/tools/alignment/editor-align-justify-button.directive.js +5 -3
  12. package/dist/es/tools/alignment/editor-align-left-button.directive.js +5 -3
  13. package/dist/es/tools/alignment/editor-align-right-button.directive.js +5 -3
  14. package/dist/es/tools/editor-clean-formatting-button.directive.js +5 -3
  15. package/dist/es/tools/fontfamily/editor-fontfamily.component.js +9 -3
  16. package/dist/es/tools/fontsize/editor-fontsize.component.js +9 -3
  17. package/dist/es/tools/format/editor-format.component.js +9 -3
  18. package/dist/es/tools/history/editor-redo-button.directive.js +5 -3
  19. package/dist/es/tools/history/editor-undo-button.directive.js +5 -3
  20. package/dist/es/tools/image/editor-insert-image-button.directive.js +5 -3
  21. package/dist/es/tools/indentation/editor-indent-button.directive.js +5 -3
  22. package/dist/es/tools/indentation/editor-outdent-button.directive.js +5 -3
  23. package/dist/es/tools/link/editor-create-link-button.directive.js +5 -3
  24. package/dist/es/tools/link/editor-insert-file-button.directive.js +5 -3
  25. package/dist/es/tools/link/editor-unlink-button.directive.js +5 -3
  26. package/dist/es/tools/list/editor-insert-ordered-list-button.directive.js +5 -3
  27. package/dist/es/tools/list/editor-insert-unordered-list-button.directive.js +5 -3
  28. package/dist/es/tools/print/editor-print-button.directive.js +5 -3
  29. package/dist/es/tools/select-all/select-all-button.directive.js +5 -3
  30. package/dist/es/tools/shared/editor-command-base.js +3 -1
  31. package/dist/es/tools/shared/editor-command-button.js +3 -2
  32. package/dist/es/tools/shared/editor-command-dialog.js +3 -2
  33. package/dist/es/tools/source/editor-view-source-button.directive.js +5 -3
  34. package/dist/es/tools/tables/editor-add-column-after-button.directive.js +5 -3
  35. package/dist/es/tools/tables/editor-add-column-before-button.directive.js +5 -3
  36. package/dist/es/tools/tables/editor-add-row-after-button.directive.js +5 -3
  37. package/dist/es/tools/tables/editor-add-row-before-button.directive.js +5 -3
  38. package/dist/es/tools/tables/editor-delete-column-button.directive.js +5 -3
  39. package/dist/es/tools/tables/editor-delete-row-button.directive.js +5 -3
  40. package/dist/es/tools/tables/editor-delete-table-button.directive.js +5 -3
  41. package/dist/es/tools/tables/editor-merge-cells-button.directive.js +5 -3
  42. package/dist/es/tools/tables/editor-split-cell-button.directive.js +5 -3
  43. package/dist/es/tools/tools.service.js +20 -0
  44. package/dist/es/tools/typographical-emphasis/editor-bold-button.directive.js +5 -3
  45. package/dist/es/tools/typographical-emphasis/editor-italic-button.directive.js +5 -3
  46. package/dist/es/tools/typographical-emphasis/editor-strikethrough-button.directive.js +5 -3
  47. package/dist/es/tools/typographical-emphasis/editor-subscript-button.directive.js +5 -3
  48. package/dist/es/tools/typographical-emphasis/editor-superscript-button.directive.js +5 -3
  49. package/dist/es/tools/typographical-emphasis/editor-underline-button.directive.js +5 -3
  50. package/dist/es2015/common/error-messages.js +3 -2
  51. package/dist/es2015/common/paste-cleanup-settings.d.ts +14 -0
  52. package/dist/es2015/editor.component.d.ts +18 -11
  53. package/dist/es2015/editor.component.js +102 -69
  54. package/dist/es2015/index.d.ts +1 -0
  55. package/dist/es2015/index.js +1 -0
  56. package/dist/es2015/index.metadata.json +1 -1
  57. package/dist/es2015/main.d.ts +2 -0
  58. package/dist/es2015/main.js +1 -0
  59. package/dist/es2015/package-metadata.js +1 -1
  60. package/dist/es2015/preventable-events/paste-event-data.d.ts +21 -0
  61. package/dist/es2015/preventable-events/paste-event-data.js +4 -0
  62. package/dist/es2015/preventable-events/paste-event.d.ts +27 -0
  63. package/dist/es2015/preventable-events/paste-event.js +20 -0
  64. package/dist/es2015/tools/alignment/editor-align-center-button.directive.d.ts +2 -1
  65. package/dist/es2015/tools/alignment/editor-align-center-button.directive.js +5 -3
  66. package/dist/es2015/tools/alignment/editor-align-justify-button.directive.d.ts +2 -1
  67. package/dist/es2015/tools/alignment/editor-align-justify-button.directive.js +5 -3
  68. package/dist/es2015/tools/alignment/editor-align-left-button.directive.d.ts +2 -1
  69. package/dist/es2015/tools/alignment/editor-align-left-button.directive.js +5 -3
  70. package/dist/es2015/tools/alignment/editor-align-right-button.directive.d.ts +2 -1
  71. package/dist/es2015/tools/alignment/editor-align-right-button.directive.js +5 -3
  72. package/dist/es2015/tools/editor-clean-formatting-button.directive.d.ts +2 -1
  73. package/dist/es2015/tools/editor-clean-formatting-button.directive.js +5 -3
  74. package/dist/es2015/tools/fontfamily/editor-fontfamily.component.d.ts +3 -1
  75. package/dist/es2015/tools/fontfamily/editor-fontfamily.component.js +9 -3
  76. package/dist/es2015/tools/fontsize/editor-fontsize.component.d.ts +3 -1
  77. package/dist/es2015/tools/fontsize/editor-fontsize.component.js +9 -3
  78. package/dist/es2015/tools/format/editor-format.component.d.ts +3 -1
  79. package/dist/es2015/tools/format/editor-format.component.js +9 -3
  80. package/dist/es2015/tools/history/editor-redo-button.directive.d.ts +2 -1
  81. package/dist/es2015/tools/history/editor-redo-button.directive.js +5 -3
  82. package/dist/es2015/tools/history/editor-undo-button.directive.d.ts +2 -1
  83. package/dist/es2015/tools/history/editor-undo-button.directive.js +5 -3
  84. package/dist/es2015/tools/image/editor-insert-image-button.directive.d.ts +2 -1
  85. package/dist/es2015/tools/image/editor-insert-image-button.directive.js +5 -3
  86. package/dist/es2015/tools/indentation/editor-indent-button.directive.d.ts +2 -1
  87. package/dist/es2015/tools/indentation/editor-indent-button.directive.js +5 -3
  88. package/dist/es2015/tools/indentation/editor-outdent-button.directive.d.ts +2 -1
  89. package/dist/es2015/tools/indentation/editor-outdent-button.directive.js +5 -3
  90. package/dist/es2015/tools/link/editor-create-link-button.directive.d.ts +2 -1
  91. package/dist/es2015/tools/link/editor-create-link-button.directive.js +5 -3
  92. package/dist/es2015/tools/link/editor-insert-file-button.directive.d.ts +2 -1
  93. package/dist/es2015/tools/link/editor-insert-file-button.directive.js +5 -3
  94. package/dist/es2015/tools/link/editor-unlink-button.directive.d.ts +2 -1
  95. package/dist/es2015/tools/link/editor-unlink-button.directive.js +5 -3
  96. package/dist/es2015/tools/list/editor-insert-ordered-list-button.directive.d.ts +2 -1
  97. package/dist/es2015/tools/list/editor-insert-ordered-list-button.directive.js +5 -3
  98. package/dist/es2015/tools/list/editor-insert-unordered-list-button.directive.d.ts +2 -1
  99. package/dist/es2015/tools/list/editor-insert-unordered-list-button.directive.js +5 -3
  100. package/dist/es2015/tools/print/editor-print-button.directive.d.ts +2 -1
  101. package/dist/es2015/tools/print/editor-print-button.directive.js +5 -3
  102. package/dist/es2015/tools/select-all/select-all-button.directive.d.ts +2 -1
  103. package/dist/es2015/tools/select-all/select-all-button.directive.js +5 -3
  104. package/dist/es2015/tools/shared/editor-command-base.d.ts +3 -1
  105. package/dist/es2015/tools/shared/editor-command-base.js +3 -1
  106. package/dist/es2015/tools/shared/editor-command-button.d.ts +3 -1
  107. package/dist/es2015/tools/shared/editor-command-button.js +3 -2
  108. package/dist/es2015/tools/shared/editor-command-dialog.d.ts +3 -1
  109. package/dist/es2015/tools/shared/editor-command-dialog.js +3 -2
  110. package/dist/es2015/tools/source/editor-view-source-button.directive.d.ts +2 -1
  111. package/dist/es2015/tools/source/editor-view-source-button.directive.js +5 -3
  112. package/dist/es2015/tools/tables/editor-add-column-after-button.directive.d.ts +2 -1
  113. package/dist/es2015/tools/tables/editor-add-column-after-button.directive.js +5 -3
  114. package/dist/es2015/tools/tables/editor-add-column-before-button.directive.d.ts +2 -1
  115. package/dist/es2015/tools/tables/editor-add-column-before-button.directive.js +5 -3
  116. package/dist/es2015/tools/tables/editor-add-row-after-button.directive.d.ts +2 -1
  117. package/dist/es2015/tools/tables/editor-add-row-after-button.directive.js +5 -3
  118. package/dist/es2015/tools/tables/editor-add-row-before-button.directive.d.ts +2 -1
  119. package/dist/es2015/tools/tables/editor-add-row-before-button.directive.js +5 -3
  120. package/dist/es2015/tools/tables/editor-delete-column-button.directive.d.ts +2 -1
  121. package/dist/es2015/tools/tables/editor-delete-column-button.directive.js +5 -3
  122. package/dist/es2015/tools/tables/editor-delete-row-button.directive.d.ts +2 -1
  123. package/dist/es2015/tools/tables/editor-delete-row-button.directive.js +5 -3
  124. package/dist/es2015/tools/tables/editor-delete-table-button.directive.d.ts +2 -1
  125. package/dist/es2015/tools/tables/editor-delete-table-button.directive.js +5 -3
  126. package/dist/es2015/tools/tables/editor-merge-cells-button.directive.d.ts +2 -1
  127. package/dist/es2015/tools/tables/editor-merge-cells-button.directive.js +5 -3
  128. package/dist/es2015/tools/tables/editor-split-cell-button.directive.d.ts +2 -1
  129. package/dist/es2015/tools/tables/editor-split-cell-button.directive.js +5 -3
  130. package/dist/es2015/tools/tools.service.d.ts +11 -0
  131. package/dist/es2015/tools/tools.service.js +22 -0
  132. package/dist/es2015/tools/typographical-emphasis/editor-bold-button.directive.d.ts +2 -1
  133. package/dist/es2015/tools/typographical-emphasis/editor-bold-button.directive.js +5 -3
  134. package/dist/es2015/tools/typographical-emphasis/editor-italic-button.directive.d.ts +2 -1
  135. package/dist/es2015/tools/typographical-emphasis/editor-italic-button.directive.js +5 -3
  136. package/dist/es2015/tools/typographical-emphasis/editor-strikethrough-button.directive.d.ts +2 -1
  137. package/dist/es2015/tools/typographical-emphasis/editor-strikethrough-button.directive.js +5 -3
  138. package/dist/es2015/tools/typographical-emphasis/editor-subscript-button.directive.d.ts +2 -1
  139. package/dist/es2015/tools/typographical-emphasis/editor-subscript-button.directive.js +5 -3
  140. package/dist/es2015/tools/typographical-emphasis/editor-superscript-button.directive.d.ts +2 -1
  141. package/dist/es2015/tools/typographical-emphasis/editor-superscript-button.directive.js +5 -3
  142. package/dist/es2015/tools/typographical-emphasis/editor-underline-button.directive.d.ts +2 -1
  143. package/dist/es2015/tools/typographical-emphasis/editor-underline-button.directive.js +5 -3
  144. package/dist/fesm2015/index.js +301 -186
  145. package/dist/fesm5/index.js +302 -186
  146. package/dist/npm/common/error-messages.js +3 -1
  147. package/dist/npm/editor.component.js +98 -65
  148. package/dist/npm/index.js +2 -0
  149. package/dist/npm/main.js +2 -0
  150. package/dist/npm/package-metadata.js +1 -1
  151. package/dist/npm/preventable-events/paste-event-data.js +6 -0
  152. package/dist/npm/preventable-events/paste-event.js +27 -0
  153. package/dist/npm/tools/alignment/editor-align-center-button.directive.js +5 -3
  154. package/dist/npm/tools/alignment/editor-align-justify-button.directive.js +5 -3
  155. package/dist/npm/tools/alignment/editor-align-left-button.directive.js +5 -3
  156. package/dist/npm/tools/alignment/editor-align-right-button.directive.js +5 -3
  157. package/dist/npm/tools/editor-clean-formatting-button.directive.js +5 -3
  158. package/dist/npm/tools/fontfamily/editor-fontfamily.component.js +9 -3
  159. package/dist/npm/tools/fontsize/editor-fontsize.component.js +9 -3
  160. package/dist/npm/tools/format/editor-format.component.js +9 -3
  161. package/dist/npm/tools/history/editor-redo-button.directive.js +5 -3
  162. package/dist/npm/tools/history/editor-undo-button.directive.js +5 -3
  163. package/dist/npm/tools/image/editor-insert-image-button.directive.js +5 -3
  164. package/dist/npm/tools/indentation/editor-indent-button.directive.js +5 -3
  165. package/dist/npm/tools/indentation/editor-outdent-button.directive.js +5 -3
  166. package/dist/npm/tools/link/editor-create-link-button.directive.js +5 -3
  167. package/dist/npm/tools/link/editor-insert-file-button.directive.js +5 -3
  168. package/dist/npm/tools/link/editor-unlink-button.directive.js +5 -3
  169. package/dist/npm/tools/list/editor-insert-ordered-list-button.directive.js +5 -3
  170. package/dist/npm/tools/list/editor-insert-unordered-list-button.directive.js +5 -3
  171. package/dist/npm/tools/print/editor-print-button.directive.js +5 -3
  172. package/dist/npm/tools/select-all/select-all-button.directive.js +5 -3
  173. package/dist/npm/tools/shared/editor-command-base.js +3 -1
  174. package/dist/npm/tools/shared/editor-command-button.js +3 -2
  175. package/dist/npm/tools/shared/editor-command-dialog.js +3 -2
  176. package/dist/npm/tools/source/editor-view-source-button.directive.js +5 -3
  177. package/dist/npm/tools/tables/editor-add-column-after-button.directive.js +5 -3
  178. package/dist/npm/tools/tables/editor-add-column-before-button.directive.js +5 -3
  179. package/dist/npm/tools/tables/editor-add-row-after-button.directive.js +5 -3
  180. package/dist/npm/tools/tables/editor-add-row-before-button.directive.js +5 -3
  181. package/dist/npm/tools/tables/editor-delete-column-button.directive.js +5 -3
  182. package/dist/npm/tools/tables/editor-delete-row-button.directive.js +5 -3
  183. package/dist/npm/tools/tables/editor-delete-table-button.directive.js +5 -3
  184. package/dist/npm/tools/tables/editor-merge-cells-button.directive.js +5 -3
  185. package/dist/npm/tools/tables/editor-split-cell-button.directive.js +5 -3
  186. package/dist/npm/tools/tools.service.js +22 -0
  187. package/dist/npm/tools/typographical-emphasis/editor-bold-button.directive.js +5 -3
  188. package/dist/npm/tools/typographical-emphasis/editor-italic-button.directive.js +5 -3
  189. package/dist/npm/tools/typographical-emphasis/editor-strikethrough-button.directive.js +5 -3
  190. package/dist/npm/tools/typographical-emphasis/editor-subscript-button.directive.js +5 -3
  191. package/dist/npm/tools/typographical-emphasis/editor-superscript-button.directive.js +5 -3
  192. package/dist/npm/tools/typographical-emphasis/editor-underline-button.directive.js +5 -3
  193. package/dist/systemjs/kendo-angular-editor.js +1 -1
  194. package/package.json +4 -4
@@ -3,14 +3,14 @@
3
3
  * Licensed under commercial license. See LICENSE.md in the project root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
5
  import { __assign, __extends, __decorate, __param, __metadata } from 'tslib';
6
- import { Inject, Optional, Input, ViewChild, ElementRef, Component, isDevMode, Output, EventEmitter, HostBinding, ContentChild, ViewContainerRef, forwardRef, ChangeDetectorRef, NgZone, TemplateRef, Host, Directive, NgModule } from '@angular/core';
6
+ import { Inject, Optional, Input, ViewChild, ElementRef, Component, Injectable, isDevMode, Output, EventEmitter, HostBinding, ContentChild, ViewContainerRef, forwardRef, ChangeDetectorRef, NgZone, TemplateRef, Host, Directive, NgModule } from '@angular/core';
7
7
  import { FormControl, Validators, FormGroup, NG_VALUE_ACCESSOR, FormsModule, ReactiveFormsModule } from '@angular/forms';
8
- import { fromEvent, merge, BehaviorSubject, Subject, zip, interval } from 'rxjs';
9
- import { take, filter, auditTime, map, concatMap, takeUntil } from 'rxjs/operators';
8
+ import { Subject, fromEvent, BehaviorSubject, zip, interval } from 'rxjs';
9
+ import { take, map, filter, concatMap, takeUntil } from 'rxjs/operators';
10
10
  import { ToolBarComponent, ToolBarToolComponent, ToolBarButtonComponent, ToolBarModule } from '@progress/kendo-angular-toolbar';
11
11
  import { DialogRef, DialogContentBase, DialogService, DialogModule } from '@progress/kendo-angular-dialog';
12
- import { isDocumentAvailable, guid, KendoInput, Keys } from '@progress/kendo-angular-common';
13
- import { nodes, Schema, marks, SelectionRange, TextSelection, Fragment, Slice, Selection, NodeSelection, insertNode, expandToWordWrap, toggleInlineFormat, bold, cleanFormatting, applyLink, applyInlineStyle, insertText, italic, strikethrough, subscript, superscript, underline, removeLink, link, selectAll, isAligned, alignCenterRules, alignBlocks, alignRemoveRules, alignJustifyRules, alignLeftRules, alignRightRules, formatBlockElements, getHtml, indent, insertImage, toggleOrderedList, toggleUnorderedList, outdent, redo, setHtml, undo, hasMark, activeNode, canIndentAsListItem, canBeIndented, indentRules, hasNode, canOutdentAsListItem, outdentRules, getActiveMarks, expandSelection, addColumnBefore, addColumnAfter, addRowBefore, addRowAfter, deleteRow, deleteColumn, mergeCells, splitCell, deleteTable, getNodeFromSelection, getMark, getSelectionText, parseContent, Plugin, PluginKey, history, keymap, buildListKeymap, buildKeymap, baseKeymap, gapCursor, imageResizing, placeholder, EditorState, EditorView, hasSameMarkup, pasteCleanup, removeComments, sanitize, removeAttribute, sanitizeStyleAttr, sanitizeClassAttr } from '@progress/kendo-editor-common';
12
+ import { isDocumentAvailable, guid, PreventableEvent, KendoInput, hasObservers, Keys } from '@progress/kendo-angular-common';
13
+ import { nodes, Schema, marks, SelectionRange, TextSelection, Fragment, Slice, Selection, NodeSelection, insertNode, expandToWordWrap, toggleInlineFormat, bold, cleanFormatting, applyLink, applyInlineStyle, insertText, italic, strikethrough, subscript, superscript, underline, removeLink, link, selectAll, isAligned, alignCenterRules, alignBlocks, alignRemoveRules, alignJustifyRules, alignLeftRules, alignRightRules, formatBlockElements, getHtml, indent, insertImage, toggleOrderedList, toggleUnorderedList, outdent, redo, setHtml, undo, hasMark, activeNode, canIndentAsListItem, canBeIndented, indentRules, hasNode, canOutdentAsListItem, outdentRules, getActiveMarks, expandSelection, addColumnBefore, addColumnAfter, addRowBefore, addRowAfter, deleteRow, deleteColumn, mergeCells, splitCell, deleteTable, getNodeFromSelection, getMark, getSelectionText, parseContent, Plugin, PluginKey, history, keymap, buildListKeymap, buildKeymap, baseKeymap, gapCursor, imageResizing, placeholder, EditorState, EditorView, pasteCleanup, AllSelection, removeComments, sanitize, removeAttribute, sanitizeStyleAttr, sanitizeClassAttr } from '@progress/kendo-editor-common';
14
14
  export { Schema, EditorState, Plugin, PluginKey, Transaction, EditorView, Decoration, DecorationSet, NodeType, Node, MarkType, Mark, InputRule, inputRules, wrappingInputRule, textblockTypeInputRule, keymap, baseKeymap, history, dropCursor, gapCursor, tableNodes, getSelectionText } from '@progress/kendo-editor-common';
15
15
  import { validatePackage } from '@progress/kendo-licensing';
16
16
  import { L10N_PREFIX, RTL, MessageService, LocalizationService, ComponentMessages } from '@progress/kendo-angular-l10n';
@@ -27,7 +27,7 @@ var packageMetadata = {
27
27
  name: '@progress/kendo-angular-editor',
28
28
  productName: 'Kendo UI for Angular',
29
29
  productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
30
- publishDate: 1637743184,
30
+ publishDate: 1640097479,
31
31
  version: '',
32
32
  licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/?utm_medium=product&utm_source=kendoangular&utm_campaign=kendo-ui-angular-purchase-license-keys-warning'
33
33
  };
@@ -2273,7 +2273,7 @@ var tablesStyles = "\n .ProseMirror .tableWrapper {\n overflow-x: auto;\n
2273
2273
  */
2274
2274
  var rtlStyles = 'body { direction: rtl }';
2275
2275
 
2276
- var ɵ0$6 = function (arg) { return "plugins must be a function, but received " + JSON.stringify(arg) + "."; };
2276
+ var ɵ0$6 = function (arg) { return "plugins must be a function, but received " + JSON.stringify(arg) + "."; }, ɵ1$6 = function (arg) { return "pastedContent must be a function, but received " + JSON.stringify(arg) + "."; };
2277
2277
  /* tslint:disable:variable-name */
2278
2278
  /**
2279
2279
  * @hidden
@@ -2282,20 +2282,53 @@ var EditorErrorMessages = {
2282
2282
  schemaType: 'Expected value of type Schema. See http://www.telerik.com/kendo-angular-ui/components/editor/schema/',
2283
2283
  setSchemaOnce: 'The Schema cannot be changed dynamically. See http://www.telerik.com/kendo-angular-ui/components/editor/schema/',
2284
2284
  pluginsCallbackType: ɵ0$6,
2285
+ pastedContentCallbackType: ɵ1$6,
2285
2286
  setPluginsOnce: 'The plugins cannot be changed dynamically. See http://www.telerik.com/kendo-angular-ui/components/editor/plugins/',
2286
2287
  setPlaceHolderOnce: 'The placeholder cannot be changed dynamically. See http://www.telerik.com/kendo-angular-ui/components/editor/placeholder/',
2287
2288
  printTool: 'The Print tool and functionality are supported only in iframe mode. See https://www.telerik.com/kendo-angular-ui-develop/components/editor/api/EditorPrintButtonDirective/'
2288
2289
  };
2289
2290
 
2291
+ /**
2292
+ * @hidden
2293
+ */
2294
+ var EditorToolsService = /** @class */ (function () {
2295
+ function EditorToolsService() {
2296
+ this.needsCheck = new Subject();
2297
+ }
2298
+ EditorToolsService = __decorate([
2299
+ Injectable()
2300
+ ], EditorToolsService);
2301
+ return EditorToolsService;
2302
+ }());
2303
+
2304
+ /**
2305
+ * The Editor [`paste`]({% slug api_editor_editorcomponent %}#toc-paste) event.
2306
+ */
2307
+ var EditorPasteEvent = /** @class */ (function (_super) {
2308
+ __extends(EditorPasteEvent, _super);
2309
+ /**
2310
+ * Constructs the event arguments for the `paste` event.
2311
+ * @hidden
2312
+ */
2313
+ function EditorPasteEvent(cleanedHtml, originalHtml, originalEvent) {
2314
+ var _this = _super.call(this) || this;
2315
+ _this.cleanedHtml = cleanedHtml;
2316
+ _this.originalHtml = originalHtml;
2317
+ _this.originalEvent = originalEvent;
2318
+ return _this;
2319
+ }
2320
+ return EditorPasteEvent;
2321
+ }(PreventableEvent));
2322
+
2290
2323
  var EMPTY_PARAGRAPH = '<p></p>';
2291
2324
  var defaultPasteCleanupSettings = {
2292
2325
  convertMsLists: false,
2293
2326
  removeAttributes: [],
2294
2327
  removeHtmlComments: false,
2295
- removeInvalidHTML: false,
2328
+ removeInvalidHTML: true,
2296
2329
  removeMsClasses: false,
2297
2330
  removeMsStyles: false,
2298
- stripTags: ['']
2331
+ stripTags: []
2299
2332
  };
2300
2333
  var removeCommentsIf = conditionallyExecute(removeComments);
2301
2334
  var removeInvalidHTMLIf = conditionallyExecute(sanitize);
@@ -2316,13 +2349,14 @@ var getPasteCleanupAttributes = function (config) {
2316
2349
  * Represents the [Kendo UI Editor component for Angular]({% slug overview_editor %}).
2317
2350
  */
2318
2351
  var EditorComponent = /** @class */ (function () {
2319
- function EditorComponent(dialogService, localization, cdr, ngZone, element) {
2352
+ function EditorComponent(dialogService, localization, cdr, ngZone, element, toolsService) {
2320
2353
  var _this = this;
2321
2354
  this.dialogService = dialogService;
2322
2355
  this.localization = localization;
2323
2356
  this.cdr = cdr;
2324
2357
  this.ngZone = ngZone;
2325
2358
  this.element = element;
2359
+ this.toolsService = toolsService;
2326
2360
  /**
2327
2361
  * If set to `false`, the Editor will run in style non-encapsulated mode. This means
2328
2362
  * that the styles of the page will be persisted in the Editor and its content will be affected by them.
@@ -2334,14 +2368,6 @@ var EditorComponent = /** @class */ (function () {
2334
2368
  * @default false
2335
2369
  */
2336
2370
  this.applyToWord = false;
2337
- /**
2338
- * By design, the Editor emits `valueChange`, updates the model and the ToolBar state on each keystroke.
2339
- * When you are interested in ignoring the new values for a given amout of time and take only the most recent one, you can use the `updateInterval` property.
2340
- * A possible use case is to get the new values and to update the ToolBar state at a maximum rate per second in order to speed up your application.
2341
- * The specified interval (in milliseconds) should be a positive number.
2342
- * By default the `updateInterval` is set to 100 miliseconds. If set to zero the delay will be disabled entirely.
2343
- */
2344
- this.updateInterval = 100;
2345
2371
  /**
2346
2372
  * By default, whitespace is collapsed as per HTML's rules.
2347
2373
  * Set to `true` to preserve whitespace, but normalize newlines to spaces.
@@ -2367,6 +2393,11 @@ var EditorComponent = /** @class */ (function () {
2367
2393
  * Fires when the content area of the Editor is focused ([see example]({% slug overview_editor %}#toc-events)).
2368
2394
  */
2369
2395
  this.onFocus = new EventEmitter();
2396
+ /**
2397
+ * Fires when the user performs paste in the content area of the Editor ([see example]({% slug overview_editor %}#toc-events)).
2398
+ * The event is preventable. If you cancel it, the Editor content will not change.
2399
+ */
2400
+ this.paste = new EventEmitter();
2370
2401
  /**
2371
2402
  * Fires when the content area of the Editor is blurred ([see example]({% slug overview_editor %}#toc-events)).
2372
2403
  */
@@ -2382,10 +2413,73 @@ var EditorComponent = /** @class */ (function () {
2382
2413
  this.valueModified = new Subject();
2383
2414
  this._readonly = false;
2384
2415
  this._placeholder = '';
2416
+ this.inForm = false;
2385
2417
  this.afterViewInit = new Subject();
2386
2418
  this.contentAreaLoaded = new Subject();
2387
- this.onChangeCallback = function (_) { }; // tslint:disable-line:no-empty
2419
+ this.dispatchTransaction = function (tr) {
2420
+ var docChanged = tr.docChanged;
2421
+ if (docChanged) {
2422
+ var doc = tr.doc;
2423
+ var html_1 = getHtml({ doc: doc });
2424
+ _this.trOnChange = tr;
2425
+ _this.htmlOnChange = html_1;
2426
+ _this.ngZone.run(function () {
2427
+ _this.valueModified.next(html_1);
2428
+ });
2429
+ }
2430
+ if (!docChanged || _this.inForm) {
2431
+ _this.view.updateState(_this.view.state.apply(tr));
2432
+ }
2433
+ };
2434
+ this.transformPastedHTML = function (dirtyHtml) {
2435
+ var pasteCleanupSettings = __assign({}, defaultPasteCleanupSettings, _this.pasteCleanupSettings);
2436
+ var html = pipe(removeInvalidHTMLIf(pasteCleanupSettings.removeInvalidHTML), removeCommentsIf(pasteCleanupSettings.removeHtmlComments))(dirtyHtml);
2437
+ var clean = pasteCleanup(html, {
2438
+ convertMsLists: pasteCleanupSettings.convertMsLists,
2439
+ stripTags: pasteCleanupSettings.stripTags.join('|'),
2440
+ attributes: getPasteCleanupAttributes(pasteCleanupSettings)
2441
+ });
2442
+ if (hasObservers(_this.paste)) {
2443
+ var event_1 = new EditorPasteEvent(clean, dirtyHtml, _this._pasteEvent);
2444
+ _this.ngZone.run(function () { return _this.paste.emit(event_1); });
2445
+ return event_1.isDefaultPrevented() ? '' : event_1.cleanedHtml;
2446
+ }
2447
+ return clean;
2448
+ };
2449
+ this.changeValue = function (value) {
2450
+ var prev = _this._value;
2451
+ _this._value = value;
2452
+ if (!_this._view) {
2453
+ return;
2454
+ }
2455
+ if (_this.htmlOnChange === value && _this.trOnChange) {
2456
+ _this.view.updateState(_this.view.state.apply(_this.trOnChange));
2457
+ }
2458
+ else {
2459
+ if ((prev || '') !== (value || '')) {
2460
+ var iframeContentWindowNotPresent = _this.iframe && !_this.container.element.nativeElement.contentWindow;
2461
+ if (iframeContentWindowNotPresent) {
2462
+ return;
2463
+ }
2464
+ var state = _this.view.state;
2465
+ var nextDoc = parseContent(value || '', state.schema, { preserveWhitespace: _this.preserveWhitespace });
2466
+ var tr = state.tr
2467
+ .setSelection(new AllSelection(state.doc))
2468
+ .replaceSelectionWith(nextDoc);
2469
+ _this.view.updateState(state.apply(tr));
2470
+ }
2471
+ }
2472
+ _this.trOnChange = null;
2473
+ _this.htmlOnChange = null;
2474
+ };
2475
+ this.onChangeCallback = function (value) {
2476
+ _this.changeValue(value);
2477
+ };
2388
2478
  this.onTouchedCallback = function (_) { }; // tslint:disable-line:no-empty
2479
+ this.onPaste = function (_view, nativeEvent) {
2480
+ _this._pasteEvent = nativeEvent;
2481
+ return false;
2482
+ };
2389
2483
  validatePackage(packageMetadata);
2390
2484
  this.direction = localization.rtl ? 'rtl' : 'ltr';
2391
2485
  // https://stackoverflow.com/questions/56572483/chrome-is-synchronously-handling-iframe-loading-whereas-firefox-handles-it-asyn
@@ -2394,6 +2488,9 @@ var EditorComponent = /** @class */ (function () {
2394
2488
  EditorComponent_1 = EditorComponent;
2395
2489
  Object.defineProperty(EditorComponent.prototype, "value", {
2396
2490
  get: function () {
2491
+ if (this.trOnChange) {
2492
+ return this.htmlOnChange;
2493
+ }
2397
2494
  var value = this._view ? this.getSource() : this._value;
2398
2495
  if (value === EMPTY_PARAGRAPH) {
2399
2496
  return this._value ? '' : this._value;
@@ -2406,23 +2503,7 @@ var EditorComponent = /** @class */ (function () {
2406
2503
  * Sets the value of the Editor ([see example]({% slug overview_editor %}#toc-basic-usage)).
2407
2504
  */
2408
2505
  set: function (value) {
2409
- if (this._previousValue === value) {
2410
- return;
2411
- }
2412
- this._value = value;
2413
- this._previousValue = value;
2414
- if (this._view) {
2415
- var iframeContentWindowNotPresent = this.iframe && !this.container.element.nativeElement.contentWindow;
2416
- if (iframeContentWindowNotPresent) {
2417
- return;
2418
- }
2419
- this.exec('setHTML', {
2420
- content: this._value || '',
2421
- parseOptions: {
2422
- preserveWhitespace: this.preserveWhitespace
2423
- }
2424
- });
2425
- }
2506
+ this.changeValue(value);
2426
2507
  },
2427
2508
  enumerable: true,
2428
2509
  configurable: true
@@ -2670,6 +2751,7 @@ var EditorComponent = /** @class */ (function () {
2670
2751
  var rtl = _a.rtl;
2671
2752
  _this.direction = rtl ? 'rtl' : 'ltr';
2672
2753
  }));
2754
+ this.subs.add(this.toolsService.needsCheck.subscribe(function () { return _this.cdr.markForCheck(); }));
2673
2755
  };
2674
2756
  EditorComponent.prototype.ngAfterViewInit = function () {
2675
2757
  this.afterViewInit.next();
@@ -2682,6 +2764,9 @@ var EditorComponent = /** @class */ (function () {
2682
2764
  };
2683
2765
  EditorComponent.prototype.ngOnChanges = function (changes) {
2684
2766
  var _this = this;
2767
+ if (changes.value && this.view) {
2768
+ this.changeValue(changes.value.currentValue);
2769
+ }
2685
2770
  if (changes.iframe && !changes.iframe.isFirstChange()) {
2686
2771
  this.ngZone.onStable.pipe(take(1)).subscribe(function () { return _this.initialize(); });
2687
2772
  }
@@ -2767,8 +2852,6 @@ var EditorComponent = /** @class */ (function () {
2767
2852
  var command = editorCommands[commandName](attr);
2768
2853
  // Executes a ProseMirror command.
2769
2854
  command(this._view.state, this._view.dispatch, this._view);
2770
- // See the `dispatchTransaction` comments.
2771
- // this.stateChange.emit(updateToolBar(this.view));
2772
2855
  };
2773
2856
  /**
2774
2857
  * Opens a dialog.
@@ -2853,6 +2936,7 @@ var EditorComponent = /** @class */ (function () {
2853
2936
  * @hidden
2854
2937
  */
2855
2938
  EditorComponent.prototype.writeValue = function (value) {
2939
+ this.inForm = true;
2856
2940
  // To avoid confusion, non-existent values are always undefined.
2857
2941
  this.value = value === null ? undefined : value;
2858
2942
  };
@@ -2881,7 +2965,6 @@ var EditorComponent = /** @class */ (function () {
2881
2965
  return;
2882
2966
  }
2883
2967
  var currentSchema = this.schema || schema;
2884
- var that = this;
2885
2968
  var containerNativeElement = this.container.element.nativeElement;
2886
2969
  var contentNode = parseContent((this.value || '').trim(), currentSchema, { preserveWhitespace: this.preserveWhitespace });
2887
2970
  if (this.iframe) {
@@ -2925,7 +3008,7 @@ var EditorComponent = /** @class */ (function () {
2925
3008
  }),
2926
3009
  new Plugin({
2927
3010
  key: new PluginKey('editor-filter-disabled-state'),
2928
- filterTransaction: function () { return !_this.disabled; }
3011
+ filterTransaction: function () { return !_this.disabled || _this.inForm; }
2929
3012
  }),
2930
3013
  history(),
2931
3014
  keymap(buildListKeymap(currentSchema)),
@@ -2952,31 +3035,10 @@ var EditorComponent = /** @class */ (function () {
2952
3035
  _this._view = new EditorView({ mount: _this.viewMountElement }, {
2953
3036
  state: state,
2954
3037
  editable: function () { return !_this.readonly; },
2955
- dispatchTransaction: function (tr) {
2956
- // `this` is bound to the view instance.
2957
- this.updateState(this.state.apply(tr));
2958
- // that.cdr.detectChanges();
2959
- // When the user utilizes keyboard shortcuts&mdash;for example, `Ctrl`+`b`&mdash;
2960
- // `tr.docChanged` is `true` and the toolbar is not updated.
2961
- // A possible future solution is to move the keymaps to the service.
2962
- // if (!tr.docChanged) {
2963
- // that.stateChange.emit(updateToolBar(that.view));
2964
- // }
2965
- var value = that.value;
2966
- if (!hasSameMarkup(value, that._previousValue, this.state.schema)) {
2967
- that._previousValue = value;
2968
- that.ngZone.run(function () { return that.valueModified.next(value); });
2969
- }
2970
- },
2971
- transformPastedHTML: function (html) {
2972
- var pasteCleanupSettings = __assign({}, defaultPasteCleanupSettings, _this.pasteCleanupSettings);
2973
- var clean = pipe(removeCommentsIf(pasteCleanupSettings.removeHtmlComments), removeInvalidHTMLIf(pasteCleanupSettings.removeInvalidHTML))(html);
2974
- var attributes = getPasteCleanupAttributes(pasteCleanupSettings);
2975
- return pasteCleanup(clean, {
2976
- convertMsLists: pasteCleanupSettings.convertMsLists,
2977
- stripTags: pasteCleanupSettings.stripTags.join('|'),
2978
- attributes: attributes
2979
- });
3038
+ dispatchTransaction: _this.dispatchTransaction,
3039
+ transformPastedHTML: _this.transformPastedHTML,
3040
+ handleDOMEvents: {
3041
+ paste: _this.onPaste
2980
3042
  }
2981
3043
  });
2982
3044
  });
@@ -3017,7 +3079,7 @@ var EditorComponent = /** @class */ (function () {
3017
3079
  _this.cdr.detectChanges();
3018
3080
  }
3019
3081
  }));
3020
- this.subs.add(merge(this.valueModified.pipe(filter(function () { return _this.updateInterval > 0; }), auditTime(this.updateInterval)), this.valueModified.pipe(filter(function () { return _this.updateInterval === 0; }))).subscribe(function (value) {
3082
+ this.subs.add(this.valueModified.subscribe(function (value) {
3021
3083
  _this.onChangeCallback(value);
3022
3084
  _this.valueChange.emit(value);
3023
3085
  _this.cdr.markForCheck();
@@ -3111,10 +3173,6 @@ var EditorComponent = /** @class */ (function () {
3111
3173
  __metadata("design:type", String),
3112
3174
  __metadata("design:paramtypes", [String])
3113
3175
  ], EditorComponent.prototype, "placeholder", null);
3114
- __decorate([
3115
- Input(),
3116
- __metadata("design:type", Number)
3117
- ], EditorComponent.prototype, "updateInterval", void 0);
3118
3176
  __decorate([
3119
3177
  Input(),
3120
3178
  __metadata("design:type", Object)
@@ -3135,6 +3193,10 @@ var EditorComponent = /** @class */ (function () {
3135
3193
  Output('focus'),
3136
3194
  __metadata("design:type", EventEmitter)
3137
3195
  ], EditorComponent.prototype, "onFocus", void 0);
3196
+ __decorate([
3197
+ Output(),
3198
+ __metadata("design:type", EventEmitter)
3199
+ ], EditorComponent.prototype, "paste", void 0);
3138
3200
  __decorate([
3139
3201
  Output('blur'),
3140
3202
  __metadata("design:type", EventEmitter)
@@ -3222,6 +3284,7 @@ var EditorComponent = /** @class */ (function () {
3222
3284
  selector: 'kendo-editor',
3223
3285
  providers: [
3224
3286
  EditorLocalizationService,
3287
+ EditorToolsService,
3225
3288
  {
3226
3289
  provide: LocalizationService,
3227
3290
  useExisting: EditorLocalizationService
@@ -3241,7 +3304,7 @@ var EditorComponent = /** @class */ (function () {
3241
3304
  }
3242
3305
  ],
3243
3306
  /* tslint:disable:max-line-length */
3244
- template: "\n <ng-container\n kendoEditorLocalizedMessages\n i18n-alignCenter=\"kendo.editor.alignCenter|The title of the tool that aligns text in the center.\"\n alignCenter=\"Center text\"\n i18n-alignJustify=\"kendo.editor.alignJustify|The title of the tool that justifies text both left and right.\"\n alignJustify=\"Justify\"\n i18n-alignLeft=\"kendo.editor.alignLeft|The title of the tool that aligns text on the left.\"\n alignLeft=\"Align text left\"\n i18n-alignRight=\"kendo.editor.alignRight|The title of the tool that aligns text on the right.\"\n alignRight=\"Align text right\"\n i18n-backColor=\"kendo.editor.backColor|The title of the tool that changes the text background color.\"\n backColor=\"Background color\"\n i18n-bold=\"kendo.editor.bold|The title of the tool that makes text bold.\"\n bold=\"Bold\"\n i18n-cleanFormatting=\"kendo.editor.cleanFormatting|The title of the Clean Formatting tool.\"\n cleanFormatting=\"Clean formatting\"\n i18n-createLink=\"kendo.editor.createLink|The title of the tool that creates hyperlinks.\"\n createLink=\"Insert link\"\n i18n-dialogApply=\"kendo.editor.dialogApply|The label of the **Apply** button in all editor dialogs.\"\n dialogApply=\"Apply\"\n i18n-dialogCancel=\"kendo.editor.dialogCancel|The label of the **Cancel** button in all editor dialogs.\"\n dialogCancel=\"Cancel\"\n i18n-dialogInsert=\"kendo.editor.dialogInsert|The label of the **Insert** button in all editor dialogs.\"\n dialogInsert=\"Insert\"\n i18n-dialogUpdate=\"kendo.editor.dialogUpdate|The label of the **Update** button in all editor dialogs.\"\n dialogUpdate=\"Update\"\n i18n-fileText=\"kendo.editor.fileText|The caption for the file text in the insertFile dialog.\"\n fileText=\"Text\"\n i18n-fileTitle=\"kendo.editor.fileTitle|The caption for the file Title in the insertFile dialog.\"\n fileTitle=\"Title\"\n i18n-fileWebAddress=\"kendo.editor.fileWebAddress|The caption for the file URL in the insertFile dialog.\"\n fileWebAddress=\"Web address\"\n i18n-fontFamily=\"kendo.editor.fontFamily|The title of the tool that changes the text font.\"\n fontFamily=\"Select font family\"\n i18n-fontSize=\"kendo.editor.fontSize|The title of the tool that changes the text size.\"\n fontSize=\"Select font size\"\n i18n-foreColor=\"kendo.editor.foreColor|The title of the tool that changes the text color.\"\n foreColor=\"Color\"\n i18n-format=\"kendo.editor.format|The title of the tool that lets users choose block formats.\"\n format=\"Format\"\n i18n-imageAltText=\"kendo.editor.imageAltText|The caption for the image alternate text in the insertImage dialog.\"\n imageAltText=\"Alternate text\"\n i18n-imageHeight=\"kendo.editor.imageHeight|The caption for the image height in the insertImage dialog.\"\n imageHeight=\"Height (px)\"\n i18n-imageWebAddress=\"kendo.editor.imageWebAddress|The caption for the image URL in the insertImage dialog.\"\n imageWebAddress=\"Web address\"\n i18n-imageWidth=\"kendo.editor.imageWidth|The caption for the image width in the insertImage dialog.\"\n imageWidth=\"Width (px)\"\n i18n-indent=\"kendo.editor.indent|The title of the tool that indents the content.\"\n indent=\"Indent\"\n i18n-insertFile=\"kendo.editor.insertFile|The title of the tool that inserts links to files.\"\n insertFile=\"Insert file\"\n i18n-insertImage=\"kendo.editor.insertImage|The title of the tool that inserts images.\"\n insertImage=\"Insert image\"\n i18n-insertOrderedList=\"kendo.editor.insertOrderedList|The title of the tool that inserts an ordered list.\"\n insertOrderedList=\"Insert ordered list\"\n i18n-insertUnorderedList=\"kendo.editor.insertUnorderedList|The title of the tool that inserts an unordered list.\"\n insertUnorderedList=\"Insert unordered list\"\n i18n-italic=\"kendo.editor.italic|The title of the tool that makes text italicized.\"\n italic=\"Italic\"\n i18n-linkOpenInNewWindow=\"kendo.editor.linkOpenInNewWindow|The caption for the checkbox for opening the link in a new window in the createLink dialog.\"\n linkOpenInNewWindow=\"Open link in new window\"\n i18n-linkText=\"kendo.editor.linkText|The caption for the link text in the createLink dialog.\"\n linkText=\"Text\"\n i18n-linkTitle=\"kendo.editor.linkTitle|The caption for the link title in the createLink dialog.\"\n linkTitle=\"Title\"\n i18n-linkWebAddress=\"kendo.editor.linkWebAddress|The caption for the URL in the createLink dialog.\"\n linkWebAddress=\"Web address\"\n i18n-outdent=\"kendo.editor.outdent|The title of the tool that outdents the content.\"\n outdent=\"Outdent\"\n i18n-print=\"kendo.editor.print|The title of the print tool.\"\n print=\"Print\"\n i18n-redo=\"kendo.editor.redo|The title of the tool that undos the last action.\"\n redo=\"Redo\"\n i18n-selectAll=\"kendo.editor.selectAll|The title of the tool that selects all content.\"\n selectAll=\"Select All\"\n i18n-strikethrough=\"kendo.editor.strikethrough|The title of the tool that strikes through text.\"\n strikethrough=\"Strikethrough\"\n i18n-subscript=\"kendo.editor.subscript|The title of the tool that makes text subscript.\"\n subscript=\"Subscript\"\n i18n-superscript=\"kendo.editor.superscript|The title of the tool that makes text superscript.\"\n superscript=\"Superscript\"\n i18n-underline=\"kendo.editor.underline|The title of the tool that underlines text.\"\n underline=\"Underline\"\n i18n-unlink=\"kendo.editor.unlink|The title of the tool that removes hyperlinks.\"\n unlink=\"Remove Link\"\n i18n-undo=\"kendo.editor.undo|The title of the tool that undos the last action.\"\n undo=\"Undo\"\n i18n-viewSource=\"kendo.editor.viewSource|The title of the tool that shows the editor value as HTML.\"\n viewSource=\"View source\"\n i18n-insertTable=\"kendo.editor.insertTable|The title of the tool that inserts table.\"\n insertTable=\"Insert Table\"\n i18n-addColumnBefore=\"kendo.editor.addColumnBefore|The title of the tool that adds new column before currently selected column.\"\n addColumnBefore=\"Add column before\"\n i18n-addColumnAfter=\"kendo.editor.addColumnAfter|The title of the tool that adds new column after currently selected column.\"\n addColumnAfter=\"Add column after\"\n i18n-addRowBefore=\"kendo.editor.addRowBefore|The title of the tool that adds new row before currently selected row.\"\n addRowBefore=\"Add row before\"\n i18n-addRowAfter=\"kendo.editor.addRowAfter|The title of the tool that adds new row after currently selected row.\"\n addRowAfter=\"Add row after\"\n i18n-deleteColumn=\"kendo.editor.deleteColumn|The title of the tool that deletes a table column.\"\n deleteColumn=\"Delete column\"\n i18n-deleteRow=\"kendo.editor.deleteRow|The title of the tool that deletes a table row.\"\n deleteRow=\"Delete row\"\n i18n-deleteTable=\"kendo.editor.deleteTable|The title of the tool that deletes a table.\"\n deleteTable=\"Delete table\"\n >\n </ng-container>\n\n <ng-content select=\"kendo-toolbar\"></ng-content>\n <kendo-toolbar [overflow]=\"true\" [tabindex]=\"readonly ? -1 : 0\" *ngIf=\"!userToolBarElement\" #defaultToolbar>\n <kendo-toolbar-buttongroup>\n <kendo-toolbar-button kendoEditorBoldButton></kendo-toolbar-button>\n <kendo-toolbar-button kendoEditorItalicButton></kendo-toolbar-button>\n <kendo-toolbar-button kendoEditorUnderlineButton></kendo-toolbar-button>\n </kendo-toolbar-buttongroup>\n <kendo-toolbar-dropdownlist kendoEditorFormat></kendo-toolbar-dropdownlist>\n <kendo-toolbar-buttongroup>\n <kendo-toolbar-button kendoEditorAlignLeftButton></kendo-toolbar-button>\n <kendo-toolbar-button kendoEditorAlignCenterButton></kendo-toolbar-button>\n <kendo-toolbar-button kendoEditorAlignRightButton></kendo-toolbar-button>\n <kendo-toolbar-button kendoEditorAlignJustifyButton></kendo-toolbar-button>\n </kendo-toolbar-buttongroup>\n <kendo-toolbar-buttongroup>\n <kendo-toolbar-button kendoEditorInsertUnorderedListButton></kendo-toolbar-button>\n <kendo-toolbar-button kendoEditorInsertOrderedListButton></kendo-toolbar-button>\n <kendo-toolbar-button kendoEditorIndentButton></kendo-toolbar-button>\n <kendo-toolbar-button kendoEditorOutdentButton></kendo-toolbar-button>\n </kendo-toolbar-buttongroup>\n <kendo-toolbar-buttongroup>\n <kendo-toolbar-button kendoEditorCreateLinkButton></kendo-toolbar-button>\n <kendo-toolbar-button kendoEditorUnlinkButton></kendo-toolbar-button>\n </kendo-toolbar-buttongroup>\n <kendo-toolbar-button kendoEditorInsertImageButton></kendo-toolbar-button>\n </kendo-toolbar>\n\n <div *ngIf=\"!iframe\" #content [attr.dir]=\"direction\" class=\"k-editor-content\"></div>\n\n <div class=\"k-editor-content\" *ngIf=\"iframe\">\n <iframe #content frameborder=\"0\" class=\"k-iframe\" (load)=\"iframeOnLoad()\"></iframe>\n </div>\n\n <ng-container #dialogsContainer></ng-container>\n ",
3307
+ template: "\n <ng-container\n kendoEditorLocalizedMessages\n i18n-alignCenter=\"kendo.editor.alignCenter|The title of the tool that aligns text in the center.\"\n alignCenter=\"Center text\"\n i18n-alignJustify=\"kendo.editor.alignJustify|The title of the tool that justifies text both left and right.\"\n alignJustify=\"Justify\"\n i18n-alignLeft=\"kendo.editor.alignLeft|The title of the tool that aligns text on the left.\"\n alignLeft=\"Align text left\"\n i18n-alignRight=\"kendo.editor.alignRight|The title of the tool that aligns text on the right.\"\n alignRight=\"Align text right\"\n i18n-backColor=\"kendo.editor.backColor|The title of the tool that changes the text background color.\"\n backColor=\"Background color\"\n i18n-bold=\"kendo.editor.bold|The title of the tool that makes text bold.\"\n bold=\"Bold\"\n i18n-cleanFormatting=\"kendo.editor.cleanFormatting|The title of the Clean Formatting tool.\"\n cleanFormatting=\"Clean formatting\"\n i18n-createLink=\"kendo.editor.createLink|The title of the tool that creates hyperlinks.\"\n createLink=\"Insert link\"\n i18n-dialogApply=\"kendo.editor.dialogApply|The label of the **Apply** button in all editor dialogs.\"\n dialogApply=\"Apply\"\n i18n-dialogCancel=\"kendo.editor.dialogCancel|The label of the **Cancel** button in all editor dialogs.\"\n dialogCancel=\"Cancel\"\n i18n-dialogInsert=\"kendo.editor.dialogInsert|The label of the **Insert** button in all editor dialogs.\"\n dialogInsert=\"Insert\"\n i18n-dialogUpdate=\"kendo.editor.dialogUpdate|The label of the **Update** button in all editor dialogs.\"\n dialogUpdate=\"Update\"\n i18n-fileText=\"kendo.editor.fileText|The caption for the file text in the insertFile dialog.\"\n fileText=\"Text\"\n i18n-fileTitle=\"kendo.editor.fileTitle|The caption for the file Title in the insertFile dialog.\"\n fileTitle=\"Title\"\n i18n-fileWebAddress=\"kendo.editor.fileWebAddress|The caption for the file URL in the insertFile dialog.\"\n fileWebAddress=\"Web address\"\n i18n-fontFamily=\"kendo.editor.fontFamily|The title of the tool that changes the text font.\"\n fontFamily=\"Select font family\"\n i18n-fontSize=\"kendo.editor.fontSize|The title of the tool that changes the text size.\"\n fontSize=\"Select font size\"\n i18n-foreColor=\"kendo.editor.foreColor|The title of the tool that changes the text color.\"\n foreColor=\"Color\"\n i18n-format=\"kendo.editor.format|The title of the tool that lets users choose block formats.\"\n format=\"Format\"\n i18n-imageAltText=\"kendo.editor.imageAltText|The caption for the image alternate text in the insertImage dialog.\"\n imageAltText=\"Alternate text\"\n i18n-imageHeight=\"kendo.editor.imageHeight|The caption for the image height in the insertImage dialog.\"\n imageHeight=\"Height (px)\"\n i18n-imageWebAddress=\"kendo.editor.imageWebAddress|The caption for the image URL in the insertImage dialog.\"\n imageWebAddress=\"Web address\"\n i18n-imageWidth=\"kendo.editor.imageWidth|The caption for the image width in the insertImage dialog.\"\n imageWidth=\"Width (px)\"\n i18n-indent=\"kendo.editor.indent|The title of the tool that indents the content.\"\n indent=\"Indent\"\n i18n-insertFile=\"kendo.editor.insertFile|The title of the tool that inserts links to files.\"\n insertFile=\"Insert file\"\n i18n-insertImage=\"kendo.editor.insertImage|The title of the tool that inserts images.\"\n insertImage=\"Insert image\"\n i18n-insertOrderedList=\"kendo.editor.insertOrderedList|The title of the tool that inserts an ordered list.\"\n insertOrderedList=\"Insert ordered list\"\n i18n-insertUnorderedList=\"kendo.editor.insertUnorderedList|The title of the tool that inserts an unordered list.\"\n insertUnorderedList=\"Insert unordered list\"\n i18n-italic=\"kendo.editor.italic|The title of the tool that makes text italicized.\"\n italic=\"Italic\"\n i18n-linkOpenInNewWindow=\"kendo.editor.linkOpenInNewWindow|The caption for the checkbox for opening the link in a new window in the createLink dialog.\"\n linkOpenInNewWindow=\"Open link in new window\"\n i18n-linkText=\"kendo.editor.linkText|The caption for the link text in the createLink dialog.\"\n linkText=\"Text\"\n i18n-linkTitle=\"kendo.editor.linkTitle|The caption for the link title in the createLink dialog.\"\n linkTitle=\"Title\"\n i18n-linkWebAddress=\"kendo.editor.linkWebAddress|The caption for the URL in the createLink dialog.\"\n linkWebAddress=\"Web address\"\n i18n-outdent=\"kendo.editor.outdent|The title of the tool that outdents the content.\"\n outdent=\"Outdent\"\n i18n-print=\"kendo.editor.print|The title of the print tool.\"\n print=\"Print\"\n i18n-redo=\"kendo.editor.redo|The title of the tool that undos the last action.\"\n redo=\"Redo\"\n i18n-selectAll=\"kendo.editor.selectAll|The title of the tool that selects all content.\"\n selectAll=\"Select All\"\n i18n-strikethrough=\"kendo.editor.strikethrough|The title of the tool that strikes through text.\"\n strikethrough=\"Strikethrough\"\n i18n-subscript=\"kendo.editor.subscript|The title of the tool that makes text subscript.\"\n subscript=\"Subscript\"\n i18n-superscript=\"kendo.editor.superscript|The title of the tool that makes text superscript.\"\n superscript=\"Superscript\"\n i18n-underline=\"kendo.editor.underline|The title of the tool that underlines text.\"\n underline=\"Underline\"\n i18n-unlink=\"kendo.editor.unlink|The title of the tool that removes hyperlinks.\"\n unlink=\"Remove Link\"\n i18n-undo=\"kendo.editor.undo|The title of the tool that undos the last action.\"\n undo=\"Undo\"\n i18n-viewSource=\"kendo.editor.viewSource|The title of the tool that shows the editor value as HTML.\"\n viewSource=\"View source\"\n i18n-insertTable=\"kendo.editor.insertTable|The title of the tool that inserts table.\"\n insertTable=\"Insert Table\"\n i18n-addColumnBefore=\"kendo.editor.addColumnBefore|The title of the tool that adds new column before currently selected column.\"\n addColumnBefore=\"Add column before\"\n i18n-addColumnAfter=\"kendo.editor.addColumnAfter|The title of the tool that adds new column after currently selected column.\"\n addColumnAfter=\"Add column after\"\n i18n-addRowBefore=\"kendo.editor.addRowBefore|The title of the tool that adds new row before currently selected row.\"\n addRowBefore=\"Add row before\"\n i18n-addRowAfter=\"kendo.editor.addRowAfter|The title of the tool that adds new row after currently selected row.\"\n addRowAfter=\"Add row after\"\n i18n-deleteColumn=\"kendo.editor.deleteColumn|The title of the tool that deletes a table column.\"\n deleteColumn=\"Delete column\"\n i18n-deleteRow=\"kendo.editor.deleteRow|The title of the tool that deletes a table row.\"\n deleteRow=\"Delete row\"\n i18n-deleteTable=\"kendo.editor.deleteTable|The title of the tool that deletes a table.\"\n deleteTable=\"Delete table\"\n >\n </ng-container>\n\n <ng-content select=\"kendo-toolbar\"></ng-content>\n <kendo-toolbar [overflow]=\"true\" [tabindex]=\"readonly ? -1 : 0\" *ngIf=\"!userToolBarElement\" #defaultToolbar>\n <kendo-toolbar-buttongroup>\n <kendo-toolbar-button kendoEditorBoldButton></kendo-toolbar-button>\n <kendo-toolbar-button kendoEditorItalicButton></kendo-toolbar-button>\n <kendo-toolbar-button kendoEditorUnderlineButton></kendo-toolbar-button>\n </kendo-toolbar-buttongroup>\n <kendo-toolbar-dropdownlist kendoEditorFormat></kendo-toolbar-dropdownlist>\n <kendo-toolbar-buttongroup>\n <kendo-toolbar-button kendoEditorAlignLeftButton></kendo-toolbar-button>\n <kendo-toolbar-button kendoEditorAlignCenterButton></kendo-toolbar-button>\n <kendo-toolbar-button kendoEditorAlignRightButton></kendo-toolbar-button>\n <kendo-toolbar-button kendoEditorAlignJustifyButton></kendo-toolbar-button>\n </kendo-toolbar-buttongroup>\n <kendo-toolbar-buttongroup>\n <kendo-toolbar-button kendoEditorInsertUnorderedListButton></kendo-toolbar-button>\n <kendo-toolbar-button kendoEditorInsertOrderedListButton></kendo-toolbar-button>\n <kendo-toolbar-button kendoEditorIndentButton></kendo-toolbar-button>\n <kendo-toolbar-button kendoEditorOutdentButton></kendo-toolbar-button>\n </kendo-toolbar-buttongroup>\n <kendo-toolbar-buttongroup>\n <kendo-toolbar-button kendoEditorCreateLinkButton></kendo-toolbar-button>\n <kendo-toolbar-button kendoEditorUnlinkButton></kendo-toolbar-button>\n </kendo-toolbar-buttongroup>\n <kendo-toolbar-button kendoEditorInsertImageButton></kendo-toolbar-button>\n </kendo-toolbar>\n\n <div *ngIf=\"!iframe\" #content [attr.dir]=\"direction\" class=\"k-editor-content\"></div>\n\n <div class=\"k-editor-content\" *ngIf=\"iframe\">\n <iframe #content srcdoc=\"<!DOCTYPE html>\" frameborder=\"0\" class=\"k-iframe\" (load)=\"iframeOnLoad()\"></iframe>\n </div>\n\n <ng-container #dialogsContainer></ng-container>\n ",
3245
3308
  styles: [
3246
3309
  "\n >>> .k-editor-content > .ProseMirror {\n height: 100%;\n width: 100%;\n box-sizing: border-box;\n outline: none;\n overflow: auto;\n }\n\n .k-iframe {\n width: 100%;\n height: 100%;\n display: block;\n }\n "
3247
3310
  ]
@@ -3250,7 +3313,8 @@ var EditorComponent = /** @class */ (function () {
3250
3313
  LocalizationService,
3251
3314
  ChangeDetectorRef,
3252
3315
  NgZone,
3253
- ElementRef])
3316
+ ElementRef,
3317
+ EditorToolsService])
3254
3318
  ], EditorComponent);
3255
3319
  return EditorComponent;
3256
3320
  }());
@@ -3603,11 +3667,12 @@ var InsertTableDialogComponent = /** @class */ (function (_super) {
3603
3667
  */
3604
3668
  var EditorFormatComponent = /** @class */ (function (_super) {
3605
3669
  __extends(EditorFormatComponent, _super);
3606
- function EditorFormatComponent(editor, dialogService, localization) {
3670
+ function EditorFormatComponent(editor, dialogService, localization, toolsService) {
3607
3671
  var _this = _super.call(this) || this;
3608
3672
  _this.editor = editor;
3609
3673
  _this.dialogService = dialogService;
3610
3674
  _this.localization = localization;
3675
+ _this.toolsService = toolsService;
3611
3676
  _this.disabled = false;
3612
3677
  _this.tabindex = -1;
3613
3678
  /**
@@ -3650,7 +3715,10 @@ var EditorFormatComponent = /** @class */ (function (_super) {
3650
3715
  return itemArgs.dataItem.tag === null;
3651
3716
  }
3652
3717
  };
3653
- setTimeout(function () { return (_this.defaultItem = { text: _this.title, tag: null }); });
3718
+ setTimeout(function () {
3719
+ _this.defaultItem = { text: _this.title, tag: null };
3720
+ _this.toolsService.needsCheck.next();
3721
+ });
3654
3722
  this.subs = this.editor.stateChange.subscribe(function (_a) {
3655
3723
  var format = _a.format;
3656
3724
  var index = _this.data.findIndex(function (item) { return item.tag === format.selected.tag; });
@@ -3769,7 +3837,8 @@ var EditorFormatComponent = /** @class */ (function (_super) {
3769
3837
  __param(0, Host()),
3770
3838
  __metadata("design:paramtypes", [EditorComponent,
3771
3839
  DialogService,
3772
- EditorLocalizationService])
3840
+ EditorLocalizationService,
3841
+ EditorToolsService])
3773
3842
  ], EditorFormatComponent);
3774
3843
  return EditorFormatComponent;
3775
3844
  }(ToolBarToolComponent));
@@ -3905,11 +3974,12 @@ var FontSizeDialogComponent = /** @class */ (function (_super) {
3905
3974
  */
3906
3975
  var EditorFontSizeComponent = /** @class */ (function (_super) {
3907
3976
  __extends(EditorFontSizeComponent, _super);
3908
- function EditorFontSizeComponent(editor, dialogService, localization) {
3977
+ function EditorFontSizeComponent(editor, dialogService, localization, toolsService) {
3909
3978
  var _this = _super.call(this) || this;
3910
3979
  _this.editor = editor;
3911
3980
  _this.dialogService = dialogService;
3912
3981
  _this.localization = localization;
3982
+ _this.toolsService = toolsService;
3913
3983
  _this.disabled = false;
3914
3984
  _this.tabindex = -1;
3915
3985
  /**
@@ -3951,7 +4021,10 @@ var EditorFontSizeComponent = /** @class */ (function (_super) {
3951
4021
  return itemArgs.dataItem.size === null;
3952
4022
  }
3953
4023
  };
3954
- setTimeout(function () { return (_this.defaultItem = { text: _this.title, size: null }); });
4024
+ setTimeout(function () {
4025
+ _this.defaultItem = { text: _this.title, size: null };
4026
+ _this.toolsService.needsCheck.next();
4027
+ });
3955
4028
  this.subs = this.editor.stateChange.subscribe(function (_a) {
3956
4029
  // remove units(px, em, rem...)
3957
4030
  // string#match returns array
@@ -4074,7 +4147,8 @@ var EditorFontSizeComponent = /** @class */ (function (_super) {
4074
4147
  __param(0, Host()),
4075
4148
  __metadata("design:paramtypes", [EditorComponent,
4076
4149
  DialogService,
4077
- EditorLocalizationService])
4150
+ EditorLocalizationService,
4151
+ EditorToolsService])
4078
4152
  ], EditorFontSizeComponent);
4079
4153
  return EditorFontSizeComponent;
4080
4154
  }(ToolBarToolComponent));
@@ -4092,11 +4166,12 @@ var EditorFontSizeComponent = /** @class */ (function (_super) {
4092
4166
  */
4093
4167
  var EditorFontFamilyComponent = /** @class */ (function (_super) {
4094
4168
  __extends(EditorFontFamilyComponent, _super);
4095
- function EditorFontFamilyComponent(editor, dialogService, localization) {
4169
+ function EditorFontFamilyComponent(editor, dialogService, localization, toolsService) {
4096
4170
  var _this = _super.call(this) || this;
4097
4171
  _this.editor = editor;
4098
4172
  _this.dialogService = dialogService;
4099
4173
  _this.localization = localization;
4174
+ _this.toolsService = toolsService;
4100
4175
  _this.disabled = false;
4101
4176
  _this.tabindex = -1;
4102
4177
  /**
@@ -4145,7 +4220,10 @@ var EditorFontFamilyComponent = /** @class */ (function (_super) {
4145
4220
  return itemArgs.dataItem.fontName === null;
4146
4221
  }
4147
4222
  };
4148
- setTimeout(function () { return (_this.defaultItem = { text: _this.title, fontName: null }); });
4223
+ setTimeout(function () {
4224
+ _this.defaultItem = { text: _this.title, fontName: null };
4225
+ _this.toolsService.needsCheck.next();
4226
+ });
4149
4227
  this.subs = this.editor.stateChange.subscribe(function (_a) {
4150
4228
  var style = _a.style;
4151
4229
  _this.value = getUniqueStyleValues(style.selected, 'font-family') || null;
@@ -4266,7 +4344,8 @@ var EditorFontFamilyComponent = /** @class */ (function (_super) {
4266
4344
  __param(0, Host()),
4267
4345
  __metadata("design:paramtypes", [EditorComponent,
4268
4346
  DialogService,
4269
- EditorLocalizationService])
4347
+ EditorLocalizationService,
4348
+ EditorToolsService])
4270
4349
  ], EditorFontFamilyComponent);
4271
4350
  return EditorFontFamilyComponent;
4272
4351
  }(ToolBarToolComponent));
@@ -4765,12 +4844,13 @@ var commandIcons = {
4765
4844
  * @hidden
4766
4845
  */
4767
4846
  var EditorCommandBase = /** @class */ (function () {
4768
- function EditorCommandBase(command, button, editor, localization) {
4847
+ function EditorCommandBase(command, button, editor, localization, toolsService) {
4769
4848
  var _this = this;
4770
4849
  this.command = command;
4771
4850
  this.button = button;
4772
4851
  this.editor = editor;
4773
4852
  this.localization = localization;
4853
+ this.toolsService = toolsService;
4774
4854
  setTimeout(function () {
4775
4855
  var text = _this.localization.get(_this.command);
4776
4856
  if (text) {
@@ -4782,6 +4862,7 @@ var EditorCommandBase = /** @class */ (function () {
4782
4862
  _this.button.icon = commandIcons[_this.command];
4783
4863
  }
4784
4864
  _this.button.title = text;
4865
+ _this.toolsService.needsCheck.next();
4785
4866
  });
4786
4867
  }
4787
4868
  EditorCommandBase.prototype.ngOnInit = function () {
@@ -4808,12 +4889,13 @@ var EditorCommandBase = /** @class */ (function () {
4808
4889
  */
4809
4890
  var EditorCommandButton = /** @class */ (function (_super) {
4810
4891
  __extends(EditorCommandButton, _super);
4811
- function EditorCommandButton(command, button, editor, localization) {
4812
- var _this = _super.call(this, command, button, editor, localization) || this;
4892
+ function EditorCommandButton(command, button, editor, localization, toolsService) {
4893
+ var _this = _super.call(this, command, button, editor, localization, toolsService) || this;
4813
4894
  _this.command = command;
4814
4895
  _this.button = button;
4815
4896
  _this.editor = editor;
4816
4897
  _this.localization = localization;
4898
+ _this.toolsService = toolsService;
4817
4899
  return _this;
4818
4900
  }
4819
4901
  EditorCommandButton.prototype.clickHandler = function () {
@@ -4850,8 +4932,8 @@ var EditorCommandButton = /** @class */ (function (_super) {
4850
4932
  */
4851
4933
  var EditorAlignLeftButtonDirective = /** @class */ (function (_super) {
4852
4934
  __extends(EditorAlignLeftButtonDirective, _super);
4853
- function EditorAlignLeftButtonDirective(button, editor, localization) {
4854
- return _super.call(this, 'alignLeft', button, editor, localization) || this;
4935
+ function EditorAlignLeftButtonDirective(button, editor, localization, toolsService) {
4936
+ return _super.call(this, 'alignLeft', button, editor, localization, toolsService) || this;
4855
4937
  }
4856
4938
  EditorAlignLeftButtonDirective = __decorate([
4857
4939
  Directive({
@@ -4860,7 +4942,8 @@ var EditorAlignLeftButtonDirective = /** @class */ (function (_super) {
4860
4942
  __param(1, Host()),
4861
4943
  __metadata("design:paramtypes", [ToolBarButtonComponent,
4862
4944
  EditorComponent,
4863
- EditorLocalizationService])
4945
+ EditorLocalizationService,
4946
+ EditorToolsService])
4864
4947
  ], EditorAlignLeftButtonDirective);
4865
4948
  return EditorAlignLeftButtonDirective;
4866
4949
  }(EditorCommandButton));
@@ -4885,8 +4968,8 @@ var EditorAlignLeftButtonDirective = /** @class */ (function (_super) {
4885
4968
  */
4886
4969
  var EditorAlignCenterButtonDirective = /** @class */ (function (_super) {
4887
4970
  __extends(EditorAlignCenterButtonDirective, _super);
4888
- function EditorAlignCenterButtonDirective(button, editor, localization) {
4889
- return _super.call(this, 'alignCenter', button, editor, localization) || this;
4971
+ function EditorAlignCenterButtonDirective(button, editor, localization, toolsService) {
4972
+ return _super.call(this, 'alignCenter', button, editor, localization, toolsService) || this;
4890
4973
  }
4891
4974
  EditorAlignCenterButtonDirective = __decorate([
4892
4975
  Directive({
@@ -4895,7 +4978,8 @@ var EditorAlignCenterButtonDirective = /** @class */ (function (_super) {
4895
4978
  __param(1, Host()),
4896
4979
  __metadata("design:paramtypes", [ToolBarButtonComponent,
4897
4980
  EditorComponent,
4898
- EditorLocalizationService])
4981
+ EditorLocalizationService,
4982
+ EditorToolsService])
4899
4983
  ], EditorAlignCenterButtonDirective);
4900
4984
  return EditorAlignCenterButtonDirective;
4901
4985
  }(EditorCommandButton));
@@ -4920,8 +5004,8 @@ var EditorAlignCenterButtonDirective = /** @class */ (function (_super) {
4920
5004
  */
4921
5005
  var EditorAlignRightButtonDirective = /** @class */ (function (_super) {
4922
5006
  __extends(EditorAlignRightButtonDirective, _super);
4923
- function EditorAlignRightButtonDirective(button, editor, localization) {
4924
- return _super.call(this, 'alignRight', button, editor, localization) || this;
5007
+ function EditorAlignRightButtonDirective(button, editor, localization, toolsService) {
5008
+ return _super.call(this, 'alignRight', button, editor, localization, toolsService) || this;
4925
5009
  }
4926
5010
  EditorAlignRightButtonDirective = __decorate([
4927
5011
  Directive({
@@ -4930,7 +5014,8 @@ var EditorAlignRightButtonDirective = /** @class */ (function (_super) {
4930
5014
  __param(1, Host()),
4931
5015
  __metadata("design:paramtypes", [ToolBarButtonComponent,
4932
5016
  EditorComponent,
4933
- EditorLocalizationService])
5017
+ EditorLocalizationService,
5018
+ EditorToolsService])
4934
5019
  ], EditorAlignRightButtonDirective);
4935
5020
  return EditorAlignRightButtonDirective;
4936
5021
  }(EditorCommandButton));
@@ -4955,8 +5040,8 @@ var EditorAlignRightButtonDirective = /** @class */ (function (_super) {
4955
5040
  */
4956
5041
  var EditorAlignJustifyButtonDirective = /** @class */ (function (_super) {
4957
5042
  __extends(EditorAlignJustifyButtonDirective, _super);
4958
- function EditorAlignJustifyButtonDirective(button, editor, localization) {
4959
- return _super.call(this, 'alignJustify', button, editor, localization) || this;
5043
+ function EditorAlignJustifyButtonDirective(button, editor, localization, toolsService) {
5044
+ return _super.call(this, 'alignJustify', button, editor, localization, toolsService) || this;
4960
5045
  }
4961
5046
  EditorAlignJustifyButtonDirective = __decorate([
4962
5047
  Directive({
@@ -4965,7 +5050,8 @@ var EditorAlignJustifyButtonDirective = /** @class */ (function (_super) {
4965
5050
  __param(1, Host()),
4966
5051
  __metadata("design:paramtypes", [ToolBarButtonComponent,
4967
5052
  EditorComponent,
4968
- EditorLocalizationService])
5053
+ EditorLocalizationService,
5054
+ EditorToolsService])
4969
5055
  ], EditorAlignJustifyButtonDirective);
4970
5056
  return EditorAlignJustifyButtonDirective;
4971
5057
  }(EditorCommandButton));
@@ -4990,8 +5076,8 @@ var EditorAlignJustifyButtonDirective = /** @class */ (function (_super) {
4990
5076
  */
4991
5077
  var EditorRedoButtonDirective = /** @class */ (function (_super) {
4992
5078
  __extends(EditorRedoButtonDirective, _super);
4993
- function EditorRedoButtonDirective(button, editor, localization) {
4994
- return _super.call(this, 'redo', button, editor, localization) || this;
5079
+ function EditorRedoButtonDirective(button, editor, localization, toolsService) {
5080
+ return _super.call(this, 'redo', button, editor, localization, toolsService) || this;
4995
5081
  }
4996
5082
  EditorRedoButtonDirective = __decorate([
4997
5083
  Directive({
@@ -5000,7 +5086,8 @@ var EditorRedoButtonDirective = /** @class */ (function (_super) {
5000
5086
  __param(1, Host()),
5001
5087
  __metadata("design:paramtypes", [ToolBarButtonComponent,
5002
5088
  EditorComponent,
5003
- EditorLocalizationService])
5089
+ EditorLocalizationService,
5090
+ EditorToolsService])
5004
5091
  ], EditorRedoButtonDirective);
5005
5092
  return EditorRedoButtonDirective;
5006
5093
  }(EditorCommandButton));
@@ -5025,8 +5112,8 @@ var EditorRedoButtonDirective = /** @class */ (function (_super) {
5025
5112
  */
5026
5113
  var EditorUndoButtonDirective = /** @class */ (function (_super) {
5027
5114
  __extends(EditorUndoButtonDirective, _super);
5028
- function EditorUndoButtonDirective(button, editor, localization) {
5029
- return _super.call(this, 'undo', button, editor, localization) || this;
5115
+ function EditorUndoButtonDirective(button, editor, localization, toolsService) {
5116
+ return _super.call(this, 'undo', button, editor, localization, toolsService) || this;
5030
5117
  }
5031
5118
  EditorUndoButtonDirective = __decorate([
5032
5119
  Directive({
@@ -5035,7 +5122,8 @@ var EditorUndoButtonDirective = /** @class */ (function (_super) {
5035
5122
  __param(1, Host()),
5036
5123
  __metadata("design:paramtypes", [ToolBarButtonComponent,
5037
5124
  EditorComponent,
5038
- EditorLocalizationService])
5125
+ EditorLocalizationService,
5126
+ EditorToolsService])
5039
5127
  ], EditorUndoButtonDirective);
5040
5128
  return EditorUndoButtonDirective;
5041
5129
  }(EditorCommandButton));
@@ -5045,12 +5133,13 @@ var EditorUndoButtonDirective = /** @class */ (function (_super) {
5045
5133
  */
5046
5134
  var EditorCommandDialog = /** @class */ (function (_super) {
5047
5135
  __extends(EditorCommandDialog, _super);
5048
- function EditorCommandDialog(dialog, button, editor, localization) {
5049
- var _this = _super.call(this, dialog, button, editor, localization) || this;
5136
+ function EditorCommandDialog(dialog, button, editor, localization, toolsService) {
5137
+ var _this = _super.call(this, dialog, button, editor, localization, toolsService) || this;
5050
5138
  _this.dialog = dialog;
5051
5139
  _this.button = button;
5052
5140
  _this.editor = editor;
5053
5141
  _this.localization = localization;
5142
+ _this.toolsService = toolsService;
5054
5143
  return _this;
5055
5144
  }
5056
5145
  EditorCommandDialog.prototype.clickHandler = function () {
@@ -5082,8 +5171,8 @@ var EditorCommandDialog = /** @class */ (function (_super) {
5082
5171
  */
5083
5172
  var EditorInsertImageButtonDirective = /** @class */ (function (_super) {
5084
5173
  __extends(EditorInsertImageButtonDirective, _super);
5085
- function EditorInsertImageButtonDirective(button, editor, localization) {
5086
- return _super.call(this, 'insertImage', button, editor, localization) || this;
5174
+ function EditorInsertImageButtonDirective(button, editor, localization, toolsService) {
5175
+ return _super.call(this, 'insertImage', button, editor, localization, toolsService) || this;
5087
5176
  }
5088
5177
  EditorInsertImageButtonDirective = __decorate([
5089
5178
  Directive({
@@ -5092,7 +5181,8 @@ var EditorInsertImageButtonDirective = /** @class */ (function (_super) {
5092
5181
  __param(1, Host()),
5093
5182
  __metadata("design:paramtypes", [ToolBarButtonComponent,
5094
5183
  EditorComponent,
5095
- EditorLocalizationService])
5184
+ EditorLocalizationService,
5185
+ EditorToolsService])
5096
5186
  ], EditorInsertImageButtonDirective);
5097
5187
  return EditorInsertImageButtonDirective;
5098
5188
  }(EditorCommandDialog));
@@ -5117,8 +5207,8 @@ var EditorInsertImageButtonDirective = /** @class */ (function (_super) {
5117
5207
  */
5118
5208
  var EditorIndentButtonDirective = /** @class */ (function (_super) {
5119
5209
  __extends(EditorIndentButtonDirective, _super);
5120
- function EditorIndentButtonDirective(button, editor, localization) {
5121
- return _super.call(this, 'indent', button, editor, localization) || this;
5210
+ function EditorIndentButtonDirective(button, editor, localization, toolsService) {
5211
+ return _super.call(this, 'indent', button, editor, localization, toolsService) || this;
5122
5212
  }
5123
5213
  EditorIndentButtonDirective = __decorate([
5124
5214
  Directive({
@@ -5127,7 +5217,8 @@ var EditorIndentButtonDirective = /** @class */ (function (_super) {
5127
5217
  __param(1, Host()),
5128
5218
  __metadata("design:paramtypes", [ToolBarButtonComponent,
5129
5219
  EditorComponent,
5130
- EditorLocalizationService])
5220
+ EditorLocalizationService,
5221
+ EditorToolsService])
5131
5222
  ], EditorIndentButtonDirective);
5132
5223
  return EditorIndentButtonDirective;
5133
5224
  }(EditorCommandButton));
@@ -5152,8 +5243,8 @@ var EditorIndentButtonDirective = /** @class */ (function (_super) {
5152
5243
  */
5153
5244
  var EditorOutdentButtonDirective = /** @class */ (function (_super) {
5154
5245
  __extends(EditorOutdentButtonDirective, _super);
5155
- function EditorOutdentButtonDirective(button, editor, localization) {
5156
- return _super.call(this, 'outdent', button, editor, localization) || this;
5246
+ function EditorOutdentButtonDirective(button, editor, localization, toolsService) {
5247
+ return _super.call(this, 'outdent', button, editor, localization, toolsService) || this;
5157
5248
  }
5158
5249
  EditorOutdentButtonDirective = __decorate([
5159
5250
  Directive({
@@ -5162,7 +5253,8 @@ var EditorOutdentButtonDirective = /** @class */ (function (_super) {
5162
5253
  __param(1, Host()),
5163
5254
  __metadata("design:paramtypes", [ToolBarButtonComponent,
5164
5255
  EditorComponent,
5165
- EditorLocalizationService])
5256
+ EditorLocalizationService,
5257
+ EditorToolsService])
5166
5258
  ], EditorOutdentButtonDirective);
5167
5259
  return EditorOutdentButtonDirective;
5168
5260
  }(EditorCommandButton));
@@ -5187,8 +5279,8 @@ var EditorOutdentButtonDirective = /** @class */ (function (_super) {
5187
5279
  */
5188
5280
  var EditorCreateLinkButtonDirective = /** @class */ (function (_super) {
5189
5281
  __extends(EditorCreateLinkButtonDirective, _super);
5190
- function EditorCreateLinkButtonDirective(button, editor, localization) {
5191
- return _super.call(this, 'createLink', button, editor, localization) || this;
5282
+ function EditorCreateLinkButtonDirective(button, editor, localization, toolsService) {
5283
+ return _super.call(this, 'createLink', button, editor, localization, toolsService) || this;
5192
5284
  }
5193
5285
  EditorCreateLinkButtonDirective = __decorate([
5194
5286
  Directive({
@@ -5197,7 +5289,8 @@ var EditorCreateLinkButtonDirective = /** @class */ (function (_super) {
5197
5289
  __param(1, Host()),
5198
5290
  __metadata("design:paramtypes", [ToolBarButtonComponent,
5199
5291
  EditorComponent,
5200
- EditorLocalizationService])
5292
+ EditorLocalizationService,
5293
+ EditorToolsService])
5201
5294
  ], EditorCreateLinkButtonDirective);
5202
5295
  return EditorCreateLinkButtonDirective;
5203
5296
  }(EditorCommandDialog));
@@ -5222,8 +5315,8 @@ var EditorCreateLinkButtonDirective = /** @class */ (function (_super) {
5222
5315
  */
5223
5316
  var EditorUnlinkButtonDirective = /** @class */ (function (_super) {
5224
5317
  __extends(EditorUnlinkButtonDirective, _super);
5225
- function EditorUnlinkButtonDirective(button, editor, localization) {
5226
- return _super.call(this, 'unlink', button, editor, localization) || this;
5318
+ function EditorUnlinkButtonDirective(button, editor, localization, toolsService) {
5319
+ return _super.call(this, 'unlink', button, editor, localization, toolsService) || this;
5227
5320
  }
5228
5321
  EditorUnlinkButtonDirective = __decorate([
5229
5322
  Directive({
@@ -5232,7 +5325,8 @@ var EditorUnlinkButtonDirective = /** @class */ (function (_super) {
5232
5325
  __param(1, Host()),
5233
5326
  __metadata("design:paramtypes", [ToolBarButtonComponent,
5234
5327
  EditorComponent,
5235
- EditorLocalizationService])
5328
+ EditorLocalizationService,
5329
+ EditorToolsService])
5236
5330
  ], EditorUnlinkButtonDirective);
5237
5331
  return EditorUnlinkButtonDirective;
5238
5332
  }(EditorCommandButton));
@@ -5257,8 +5351,8 @@ var EditorUnlinkButtonDirective = /** @class */ (function (_super) {
5257
5351
  */
5258
5352
  var EditorInsertOrderedListButtonDirective = /** @class */ (function (_super) {
5259
5353
  __extends(EditorInsertOrderedListButtonDirective, _super);
5260
- function EditorInsertOrderedListButtonDirective(button, editor, localization) {
5261
- return _super.call(this, 'insertOrderedList', button, editor, localization) || this;
5354
+ function EditorInsertOrderedListButtonDirective(button, editor, localization, toolsService) {
5355
+ return _super.call(this, 'insertOrderedList', button, editor, localization, toolsService) || this;
5262
5356
  }
5263
5357
  EditorInsertOrderedListButtonDirective = __decorate([
5264
5358
  Directive({
@@ -5267,7 +5361,8 @@ var EditorInsertOrderedListButtonDirective = /** @class */ (function (_super) {
5267
5361
  __param(1, Host()),
5268
5362
  __metadata("design:paramtypes", [ToolBarButtonComponent,
5269
5363
  EditorComponent,
5270
- EditorLocalizationService])
5364
+ EditorLocalizationService,
5365
+ EditorToolsService])
5271
5366
  ], EditorInsertOrderedListButtonDirective);
5272
5367
  return EditorInsertOrderedListButtonDirective;
5273
5368
  }(EditorCommandButton));
@@ -5292,8 +5387,8 @@ var EditorInsertOrderedListButtonDirective = /** @class */ (function (_super) {
5292
5387
  */
5293
5388
  var EditorInsertUnorderedListButtonDirective = /** @class */ (function (_super) {
5294
5389
  __extends(EditorInsertUnorderedListButtonDirective, _super);
5295
- function EditorInsertUnorderedListButtonDirective(button, editor, localization) {
5296
- return _super.call(this, 'insertUnorderedList', button, editor, localization) || this;
5390
+ function EditorInsertUnorderedListButtonDirective(button, editor, localization, toolsService) {
5391
+ return _super.call(this, 'insertUnorderedList', button, editor, localization, toolsService) || this;
5297
5392
  }
5298
5393
  EditorInsertUnorderedListButtonDirective = __decorate([
5299
5394
  Directive({
@@ -5302,7 +5397,8 @@ var EditorInsertUnorderedListButtonDirective = /** @class */ (function (_super)
5302
5397
  __param(1, Host()),
5303
5398
  __metadata("design:paramtypes", [ToolBarButtonComponent,
5304
5399
  EditorComponent,
5305
- EditorLocalizationService])
5400
+ EditorLocalizationService,
5401
+ EditorToolsService])
5306
5402
  ], EditorInsertUnorderedListButtonDirective);
5307
5403
  return EditorInsertUnorderedListButtonDirective;
5308
5404
  }(EditorCommandButton));
@@ -5326,8 +5422,8 @@ var EditorInsertUnorderedListButtonDirective = /** @class */ (function (_super)
5326
5422
  */
5327
5423
  var EditorViewSourceButtonDirective = /** @class */ (function (_super) {
5328
5424
  __extends(EditorViewSourceButtonDirective, _super);
5329
- function EditorViewSourceButtonDirective(button, editor, localization) {
5330
- return _super.call(this, 'viewSource', button, editor, localization) || this;
5425
+ function EditorViewSourceButtonDirective(button, editor, localization, toolsService) {
5426
+ return _super.call(this, 'viewSource', button, editor, localization, toolsService) || this;
5331
5427
  }
5332
5428
  EditorViewSourceButtonDirective = __decorate([
5333
5429
  Directive({
@@ -5336,7 +5432,8 @@ var EditorViewSourceButtonDirective = /** @class */ (function (_super) {
5336
5432
  __param(1, Host()),
5337
5433
  __metadata("design:paramtypes", [ToolBarButtonComponent,
5338
5434
  EditorComponent,
5339
- EditorLocalizationService])
5435
+ EditorLocalizationService,
5436
+ EditorToolsService])
5340
5437
  ], EditorViewSourceButtonDirective);
5341
5438
  return EditorViewSourceButtonDirective;
5342
5439
  }(EditorCommandDialog));
@@ -5361,8 +5458,8 @@ var EditorViewSourceButtonDirective = /** @class */ (function (_super) {
5361
5458
  */
5362
5459
  var EditorBoldButtonDirective = /** @class */ (function (_super) {
5363
5460
  __extends(EditorBoldButtonDirective, _super);
5364
- function EditorBoldButtonDirective(button, editor, localization) {
5365
- return _super.call(this, 'bold', button, editor, localization) || this;
5461
+ function EditorBoldButtonDirective(button, editor, localization, toolsService) {
5462
+ return _super.call(this, 'bold', button, editor, localization, toolsService) || this;
5366
5463
  }
5367
5464
  EditorBoldButtonDirective = __decorate([
5368
5465
  Directive({
@@ -5371,7 +5468,8 @@ var EditorBoldButtonDirective = /** @class */ (function (_super) {
5371
5468
  __param(1, Host()),
5372
5469
  __metadata("design:paramtypes", [ToolBarButtonComponent,
5373
5470
  EditorComponent,
5374
- EditorLocalizationService])
5471
+ EditorLocalizationService,
5472
+ EditorToolsService])
5375
5473
  ], EditorBoldButtonDirective);
5376
5474
  return EditorBoldButtonDirective;
5377
5475
  }(EditorCommandButton));
@@ -5396,8 +5494,8 @@ var EditorBoldButtonDirective = /** @class */ (function (_super) {
5396
5494
  */
5397
5495
  var EditorItalicButtonDirective = /** @class */ (function (_super) {
5398
5496
  __extends(EditorItalicButtonDirective, _super);
5399
- function EditorItalicButtonDirective(button, editor, localization) {
5400
- return _super.call(this, 'italic', button, editor, localization) || this;
5497
+ function EditorItalicButtonDirective(button, editor, localization, toolsService) {
5498
+ return _super.call(this, 'italic', button, editor, localization, toolsService) || this;
5401
5499
  }
5402
5500
  EditorItalicButtonDirective = __decorate([
5403
5501
  Directive({
@@ -5406,7 +5504,8 @@ var EditorItalicButtonDirective = /** @class */ (function (_super) {
5406
5504
  __param(1, Host()),
5407
5505
  __metadata("design:paramtypes", [ToolBarButtonComponent,
5408
5506
  EditorComponent,
5409
- EditorLocalizationService])
5507
+ EditorLocalizationService,
5508
+ EditorToolsService])
5410
5509
  ], EditorItalicButtonDirective);
5411
5510
  return EditorItalicButtonDirective;
5412
5511
  }(EditorCommandButton));
@@ -5431,8 +5530,8 @@ var EditorItalicButtonDirective = /** @class */ (function (_super) {
5431
5530
  */
5432
5531
  var EditorUnderlineButtonDirective = /** @class */ (function (_super) {
5433
5532
  __extends(EditorUnderlineButtonDirective, _super);
5434
- function EditorUnderlineButtonDirective(button, editor, localization) {
5435
- return _super.call(this, 'underline', button, editor, localization) || this;
5533
+ function EditorUnderlineButtonDirective(button, editor, localization, toolsService) {
5534
+ return _super.call(this, 'underline', button, editor, localization, toolsService) || this;
5436
5535
  }
5437
5536
  EditorUnderlineButtonDirective = __decorate([
5438
5537
  Directive({
@@ -5441,7 +5540,8 @@ var EditorUnderlineButtonDirective = /** @class */ (function (_super) {
5441
5540
  __param(1, Host()),
5442
5541
  __metadata("design:paramtypes", [ToolBarButtonComponent,
5443
5542
  EditorComponent,
5444
- EditorLocalizationService])
5543
+ EditorLocalizationService,
5544
+ EditorToolsService])
5445
5545
  ], EditorUnderlineButtonDirective);
5446
5546
  return EditorUnderlineButtonDirective;
5447
5547
  }(EditorCommandButton));
@@ -5466,8 +5566,8 @@ var EditorUnderlineButtonDirective = /** @class */ (function (_super) {
5466
5566
  */
5467
5567
  var EditorStrikethroughButtonDirective = /** @class */ (function (_super) {
5468
5568
  __extends(EditorStrikethroughButtonDirective, _super);
5469
- function EditorStrikethroughButtonDirective(button, editor, localization) {
5470
- return _super.call(this, 'strikethrough', button, editor, localization) || this;
5569
+ function EditorStrikethroughButtonDirective(button, editor, localization, toolsService) {
5570
+ return _super.call(this, 'strikethrough', button, editor, localization, toolsService) || this;
5471
5571
  }
5472
5572
  EditorStrikethroughButtonDirective = __decorate([
5473
5573
  Directive({
@@ -5476,7 +5576,8 @@ var EditorStrikethroughButtonDirective = /** @class */ (function (_super) {
5476
5576
  __param(1, Host()),
5477
5577
  __metadata("design:paramtypes", [ToolBarButtonComponent,
5478
5578
  EditorComponent,
5479
- EditorLocalizationService])
5579
+ EditorLocalizationService,
5580
+ EditorToolsService])
5480
5581
  ], EditorStrikethroughButtonDirective);
5481
5582
  return EditorStrikethroughButtonDirective;
5482
5583
  }(EditorCommandButton));
@@ -5501,8 +5602,8 @@ var EditorStrikethroughButtonDirective = /** @class */ (function (_super) {
5501
5602
  */
5502
5603
  var EditorSubscriptButtonDirective = /** @class */ (function (_super) {
5503
5604
  __extends(EditorSubscriptButtonDirective, _super);
5504
- function EditorSubscriptButtonDirective(button, editor, localization) {
5505
- return _super.call(this, 'subscript', button, editor, localization) || this;
5605
+ function EditorSubscriptButtonDirective(button, editor, localization, toolsService) {
5606
+ return _super.call(this, 'subscript', button, editor, localization, toolsService) || this;
5506
5607
  }
5507
5608
  EditorSubscriptButtonDirective = __decorate([
5508
5609
  Directive({
@@ -5511,7 +5612,8 @@ var EditorSubscriptButtonDirective = /** @class */ (function (_super) {
5511
5612
  __param(1, Host()),
5512
5613
  __metadata("design:paramtypes", [ToolBarButtonComponent,
5513
5614
  EditorComponent,
5514
- EditorLocalizationService])
5615
+ EditorLocalizationService,
5616
+ EditorToolsService])
5515
5617
  ], EditorSubscriptButtonDirective);
5516
5618
  return EditorSubscriptButtonDirective;
5517
5619
  }(EditorCommandButton));
@@ -5536,8 +5638,8 @@ var EditorSubscriptButtonDirective = /** @class */ (function (_super) {
5536
5638
  */
5537
5639
  var EditorSuperscriptButtonDirective = /** @class */ (function (_super) {
5538
5640
  __extends(EditorSuperscriptButtonDirective, _super);
5539
- function EditorSuperscriptButtonDirective(button, editor, localization) {
5540
- return _super.call(this, 'superscript', button, editor, localization) || this;
5641
+ function EditorSuperscriptButtonDirective(button, editor, localization, toolsService) {
5642
+ return _super.call(this, 'superscript', button, editor, localization, toolsService) || this;
5541
5643
  }
5542
5644
  EditorSuperscriptButtonDirective = __decorate([
5543
5645
  Directive({
@@ -5546,7 +5648,8 @@ var EditorSuperscriptButtonDirective = /** @class */ (function (_super) {
5546
5648
  __param(1, Host()),
5547
5649
  __metadata("design:paramtypes", [ToolBarButtonComponent,
5548
5650
  EditorComponent,
5549
- EditorLocalizationService])
5651
+ EditorLocalizationService,
5652
+ EditorToolsService])
5550
5653
  ], EditorSuperscriptButtonDirective);
5551
5654
  return EditorSuperscriptButtonDirective;
5552
5655
  }(EditorCommandButton));
@@ -5563,8 +5666,8 @@ var EditorSuperscriptButtonDirective = /** @class */ (function (_super) {
5563
5666
  */
5564
5667
  var EditorInsertFileButtonDirective = /** @class */ (function (_super) {
5565
5668
  __extends(EditorInsertFileButtonDirective, _super);
5566
- function EditorInsertFileButtonDirective(button, editor, localization) {
5567
- return _super.call(this, 'insertFile', button, editor, localization) || this;
5669
+ function EditorInsertFileButtonDirective(button, editor, localization, toolsService) {
5670
+ return _super.call(this, 'insertFile', button, editor, localization, toolsService) || this;
5568
5671
  }
5569
5672
  EditorInsertFileButtonDirective = __decorate([
5570
5673
  Directive({
@@ -5573,7 +5676,8 @@ var EditorInsertFileButtonDirective = /** @class */ (function (_super) {
5573
5676
  __param(1, Host()),
5574
5677
  __metadata("design:paramtypes", [ToolBarButtonComponent,
5575
5678
  EditorComponent,
5576
- EditorLocalizationService])
5679
+ EditorLocalizationService,
5680
+ EditorToolsService])
5577
5681
  ], EditorInsertFileButtonDirective);
5578
5682
  return EditorInsertFileButtonDirective;
5579
5683
  }(EditorCommandDialog));
@@ -5637,8 +5741,8 @@ var EditorBackColorDirective = /** @class */ (function () {
5637
5741
  */
5638
5742
  var EditorCleanFormattingButtonDirective = /** @class */ (function (_super) {
5639
5743
  __extends(EditorCleanFormattingButtonDirective, _super);
5640
- function EditorCleanFormattingButtonDirective(button, editor, localization) {
5641
- return _super.call(this, 'cleanFormatting', button, editor, localization) || this;
5744
+ function EditorCleanFormattingButtonDirective(button, editor, localization, toolsService) {
5745
+ return _super.call(this, 'cleanFormatting', button, editor, localization, toolsService) || this;
5642
5746
  }
5643
5747
  EditorCleanFormattingButtonDirective = __decorate([
5644
5748
  Directive({
@@ -5647,7 +5751,8 @@ var EditorCleanFormattingButtonDirective = /** @class */ (function (_super) {
5647
5751
  __param(1, Host()),
5648
5752
  __metadata("design:paramtypes", [ToolBarButtonComponent,
5649
5753
  EditorComponent,
5650
- EditorLocalizationService])
5754
+ EditorLocalizationService,
5755
+ EditorToolsService])
5651
5756
  ], EditorCleanFormattingButtonDirective);
5652
5757
  return EditorCleanFormattingButtonDirective;
5653
5758
  }(EditorCommandButton));
@@ -5665,8 +5770,8 @@ var EditorCleanFormattingButtonDirective = /** @class */ (function (_super) {
5665
5770
  */
5666
5771
  var EditorAddColumnBeforeButtonDirective = /** @class */ (function (_super) {
5667
5772
  __extends(EditorAddColumnBeforeButtonDirective, _super);
5668
- function EditorAddColumnBeforeButtonDirective(button, editor, localization) {
5669
- return _super.call(this, 'addColumnBefore', button, editor, localization) || this;
5773
+ function EditorAddColumnBeforeButtonDirective(button, editor, localization, toolsService) {
5774
+ return _super.call(this, 'addColumnBefore', button, editor, localization, toolsService) || this;
5670
5775
  }
5671
5776
  EditorAddColumnBeforeButtonDirective = __decorate([
5672
5777
  Directive({
@@ -5675,7 +5780,8 @@ var EditorAddColumnBeforeButtonDirective = /** @class */ (function (_super) {
5675
5780
  __param(1, Host()),
5676
5781
  __metadata("design:paramtypes", [ToolBarButtonComponent,
5677
5782
  EditorComponent,
5678
- EditorLocalizationService])
5783
+ EditorLocalizationService,
5784
+ EditorToolsService])
5679
5785
  ], EditorAddColumnBeforeButtonDirective);
5680
5786
  return EditorAddColumnBeforeButtonDirective;
5681
5787
  }(EditorCommandButton));
@@ -5693,8 +5799,8 @@ var EditorAddColumnBeforeButtonDirective = /** @class */ (function (_super) {
5693
5799
  */
5694
5800
  var EditorAddColumnAfterButtonDirective = /** @class */ (function (_super) {
5695
5801
  __extends(EditorAddColumnAfterButtonDirective, _super);
5696
- function EditorAddColumnAfterButtonDirective(button, editor, localization) {
5697
- return _super.call(this, 'addColumnAfter', button, editor, localization) || this;
5802
+ function EditorAddColumnAfterButtonDirective(button, editor, localization, toolsService) {
5803
+ return _super.call(this, 'addColumnAfter', button, editor, localization, toolsService) || this;
5698
5804
  }
5699
5805
  EditorAddColumnAfterButtonDirective = __decorate([
5700
5806
  Directive({
@@ -5703,7 +5809,8 @@ var EditorAddColumnAfterButtonDirective = /** @class */ (function (_super) {
5703
5809
  __param(1, Host()),
5704
5810
  __metadata("design:paramtypes", [ToolBarButtonComponent,
5705
5811
  EditorComponent,
5706
- EditorLocalizationService])
5812
+ EditorLocalizationService,
5813
+ EditorToolsService])
5707
5814
  ], EditorAddColumnAfterButtonDirective);
5708
5815
  return EditorAddColumnAfterButtonDirective;
5709
5816
  }(EditorCommandButton));
@@ -5721,8 +5828,8 @@ var EditorAddColumnAfterButtonDirective = /** @class */ (function (_super) {
5721
5828
  */
5722
5829
  var EditorAddRowBeforeButtonDirective = /** @class */ (function (_super) {
5723
5830
  __extends(EditorAddRowBeforeButtonDirective, _super);
5724
- function EditorAddRowBeforeButtonDirective(button, editor, localization) {
5725
- return _super.call(this, 'addRowBefore', button, editor, localization) || this;
5831
+ function EditorAddRowBeforeButtonDirective(button, editor, localization, toolsService) {
5832
+ return _super.call(this, 'addRowBefore', button, editor, localization, toolsService) || this;
5726
5833
  }
5727
5834
  EditorAddRowBeforeButtonDirective = __decorate([
5728
5835
  Directive({
@@ -5731,7 +5838,8 @@ var EditorAddRowBeforeButtonDirective = /** @class */ (function (_super) {
5731
5838
  __param(1, Host()),
5732
5839
  __metadata("design:paramtypes", [ToolBarButtonComponent,
5733
5840
  EditorComponent,
5734
- EditorLocalizationService])
5841
+ EditorLocalizationService,
5842
+ EditorToolsService])
5735
5843
  ], EditorAddRowBeforeButtonDirective);
5736
5844
  return EditorAddRowBeforeButtonDirective;
5737
5845
  }(EditorCommandButton));
@@ -5749,8 +5857,8 @@ var EditorAddRowBeforeButtonDirective = /** @class */ (function (_super) {
5749
5857
  */
5750
5858
  var EditorAddRowAfterButtonDirective = /** @class */ (function (_super) {
5751
5859
  __extends(EditorAddRowAfterButtonDirective, _super);
5752
- function EditorAddRowAfterButtonDirective(button, editor, localization) {
5753
- return _super.call(this, 'addRowAfter', button, editor, localization) || this;
5860
+ function EditorAddRowAfterButtonDirective(button, editor, localization, toolsService) {
5861
+ return _super.call(this, 'addRowAfter', button, editor, localization, toolsService) || this;
5754
5862
  }
5755
5863
  EditorAddRowAfterButtonDirective = __decorate([
5756
5864
  Directive({
@@ -5759,7 +5867,8 @@ var EditorAddRowAfterButtonDirective = /** @class */ (function (_super) {
5759
5867
  __param(1, Host()),
5760
5868
  __metadata("design:paramtypes", [ToolBarButtonComponent,
5761
5869
  EditorComponent,
5762
- EditorLocalizationService])
5870
+ EditorLocalizationService,
5871
+ EditorToolsService])
5763
5872
  ], EditorAddRowAfterButtonDirective);
5764
5873
  return EditorAddRowAfterButtonDirective;
5765
5874
  }(EditorCommandButton));
@@ -5777,8 +5886,8 @@ var EditorAddRowAfterButtonDirective = /** @class */ (function (_super) {
5777
5886
  */
5778
5887
  var EditorDeleteColumnButtonDirective = /** @class */ (function (_super) {
5779
5888
  __extends(EditorDeleteColumnButtonDirective, _super);
5780
- function EditorDeleteColumnButtonDirective(button, editor, localization) {
5781
- return _super.call(this, 'deleteColumn', button, editor, localization) || this;
5889
+ function EditorDeleteColumnButtonDirective(button, editor, localization, toolsService) {
5890
+ return _super.call(this, 'deleteColumn', button, editor, localization, toolsService) || this;
5782
5891
  }
5783
5892
  EditorDeleteColumnButtonDirective = __decorate([
5784
5893
  Directive({
@@ -5787,7 +5896,8 @@ var EditorDeleteColumnButtonDirective = /** @class */ (function (_super) {
5787
5896
  __param(1, Host()),
5788
5897
  __metadata("design:paramtypes", [ToolBarButtonComponent,
5789
5898
  EditorComponent,
5790
- EditorLocalizationService])
5899
+ EditorLocalizationService,
5900
+ EditorToolsService])
5791
5901
  ], EditorDeleteColumnButtonDirective);
5792
5902
  return EditorDeleteColumnButtonDirective;
5793
5903
  }(EditorCommandButton));
@@ -5805,8 +5915,8 @@ var EditorDeleteColumnButtonDirective = /** @class */ (function (_super) {
5805
5915
  */
5806
5916
  var EditorDeleteRowButtonDirective = /** @class */ (function (_super) {
5807
5917
  __extends(EditorDeleteRowButtonDirective, _super);
5808
- function EditorDeleteRowButtonDirective(button, editor, localization) {
5809
- return _super.call(this, 'deleteRow', button, editor, localization) || this;
5918
+ function EditorDeleteRowButtonDirective(button, editor, localization, toolsService) {
5919
+ return _super.call(this, 'deleteRow', button, editor, localization, toolsService) || this;
5810
5920
  }
5811
5921
  EditorDeleteRowButtonDirective = __decorate([
5812
5922
  Directive({
@@ -5815,7 +5925,8 @@ var EditorDeleteRowButtonDirective = /** @class */ (function (_super) {
5815
5925
  __param(1, Host()),
5816
5926
  __metadata("design:paramtypes", [ToolBarButtonComponent,
5817
5927
  EditorComponent,
5818
- EditorLocalizationService])
5928
+ EditorLocalizationService,
5929
+ EditorToolsService])
5819
5930
  ], EditorDeleteRowButtonDirective);
5820
5931
  return EditorDeleteRowButtonDirective;
5821
5932
  }(EditorCommandButton));
@@ -5833,8 +5944,8 @@ var EditorDeleteRowButtonDirective = /** @class */ (function (_super) {
5833
5944
  */
5834
5945
  var EditorDeleteTableButtonDirective = /** @class */ (function (_super) {
5835
5946
  __extends(EditorDeleteTableButtonDirective, _super);
5836
- function EditorDeleteTableButtonDirective(button, editor, localization) {
5837
- return _super.call(this, 'deleteTable', button, editor, localization) || this;
5947
+ function EditorDeleteTableButtonDirective(button, editor, localization, toolsService) {
5948
+ return _super.call(this, 'deleteTable', button, editor, localization, toolsService) || this;
5838
5949
  }
5839
5950
  EditorDeleteTableButtonDirective = __decorate([
5840
5951
  Directive({
@@ -5843,7 +5954,8 @@ var EditorDeleteTableButtonDirective = /** @class */ (function (_super) {
5843
5954
  __param(1, Host()),
5844
5955
  __metadata("design:paramtypes", [ToolBarButtonComponent,
5845
5956
  EditorComponent,
5846
- EditorLocalizationService])
5957
+ EditorLocalizationService,
5958
+ EditorToolsService])
5847
5959
  ], EditorDeleteTableButtonDirective);
5848
5960
  return EditorDeleteTableButtonDirective;
5849
5961
  }(EditorCommandButton));
@@ -5863,8 +5975,8 @@ var EditorDeleteTableButtonDirective = /** @class */ (function (_super) {
5863
5975
  */
5864
5976
  var EditorMergeCellsButtonDirective = /** @class */ (function (_super) {
5865
5977
  __extends(EditorMergeCellsButtonDirective, _super);
5866
- function EditorMergeCellsButtonDirective(button, editor, localization) {
5867
- return _super.call(this, 'mergeCells', button, editor, localization) || this;
5978
+ function EditorMergeCellsButtonDirective(button, editor, localization, toolsService) {
5979
+ return _super.call(this, 'mergeCells', button, editor, localization, toolsService) || this;
5868
5980
  }
5869
5981
  EditorMergeCellsButtonDirective = __decorate([
5870
5982
  Directive({
@@ -5873,7 +5985,8 @@ var EditorMergeCellsButtonDirective = /** @class */ (function (_super) {
5873
5985
  __param(1, Host()),
5874
5986
  __metadata("design:paramtypes", [ToolBarButtonComponent,
5875
5987
  EditorComponent,
5876
- EditorLocalizationService])
5988
+ EditorLocalizationService,
5989
+ EditorToolsService])
5877
5990
  ], EditorMergeCellsButtonDirective);
5878
5991
  return EditorMergeCellsButtonDirective;
5879
5992
  }(EditorCommandButton));
@@ -5893,8 +6006,8 @@ var EditorMergeCellsButtonDirective = /** @class */ (function (_super) {
5893
6006
  */
5894
6007
  var EditorSplitCellButtonDirective = /** @class */ (function (_super) {
5895
6008
  __extends(EditorSplitCellButtonDirective, _super);
5896
- function EditorSplitCellButtonDirective(button, editor, localization) {
5897
- return _super.call(this, 'splitCell', button, editor, localization) || this;
6009
+ function EditorSplitCellButtonDirective(button, editor, localization, toolsService) {
6010
+ return _super.call(this, 'splitCell', button, editor, localization, toolsService) || this;
5898
6011
  }
5899
6012
  EditorSplitCellButtonDirective = __decorate([
5900
6013
  Directive({
@@ -5903,7 +6016,8 @@ var EditorSplitCellButtonDirective = /** @class */ (function (_super) {
5903
6016
  __param(1, Host()),
5904
6017
  __metadata("design:paramtypes", [ToolBarButtonComponent,
5905
6018
  EditorComponent,
5906
- EditorLocalizationService])
6019
+ EditorLocalizationService,
6020
+ EditorToolsService])
5907
6021
  ], EditorSplitCellButtonDirective);
5908
6022
  return EditorSplitCellButtonDirective;
5909
6023
  }(EditorCommandButton));
@@ -6241,8 +6355,8 @@ var DropDownToolDirective = /** @class */ (function () {
6241
6355
  */
6242
6356
  var EditorPrintDirective = /** @class */ (function (_super) {
6243
6357
  __extends(EditorPrintDirective, _super);
6244
- function EditorPrintDirective(button, editor, localization) {
6245
- var _this = _super.call(this, 'print', button, editor, localization) || this;
6358
+ function EditorPrintDirective(button, editor, localization, toolsService) {
6359
+ var _this = _super.call(this, 'print', button, editor, localization, toolsService) || this;
6246
6360
  _this.editor = editor;
6247
6361
  return _this;
6248
6362
  }
@@ -6271,7 +6385,8 @@ var EditorPrintDirective = /** @class */ (function (_super) {
6271
6385
  __param(1, Host()),
6272
6386
  __metadata("design:paramtypes", [ToolBarButtonComponent,
6273
6387
  EditorComponent,
6274
- EditorLocalizationService])
6388
+ EditorLocalizationService,
6389
+ EditorToolsService])
6275
6390
  ], EditorPrintDirective);
6276
6391
  return EditorPrintDirective;
6277
6392
  }(EditorCommandButton));
@@ -6295,8 +6410,8 @@ var EditorPrintDirective = /** @class */ (function (_super) {
6295
6410
  */
6296
6411
  var EditorSelectAllButtonDirective = /** @class */ (function (_super) {
6297
6412
  __extends(EditorSelectAllButtonDirective, _super);
6298
- function EditorSelectAllButtonDirective(button, editor, localization) {
6299
- return _super.call(this, 'selectAll', button, editor, localization) || this;
6413
+ function EditorSelectAllButtonDirective(button, editor, localization, toolsService) {
6414
+ return _super.call(this, 'selectAll', button, editor, localization, toolsService) || this;
6300
6415
  }
6301
6416
  EditorSelectAllButtonDirective.prototype.clickHandler = function () {
6302
6417
  this.editor.shouldEmitFocus = true;
@@ -6309,7 +6424,8 @@ var EditorSelectAllButtonDirective = /** @class */ (function (_super) {
6309
6424
  __param(1, Host()),
6310
6425
  __metadata("design:paramtypes", [ToolBarButtonComponent,
6311
6426
  EditorComponent,
6312
- EditorLocalizationService])
6427
+ EditorLocalizationService,
6428
+ EditorToolsService])
6313
6429
  ], EditorSelectAllButtonDirective);
6314
6430
  return EditorSelectAllButtonDirective;
6315
6431
  }(EditorCommandButton));
@@ -6486,4 +6602,4 @@ var EditorModule = /** @class */ (function () {
6486
6602
  * Generated bundle index. Do not edit.
6487
6603
  */
6488
6604
 
6489
- export { ColorPickerDialogComponent, FileLinkDialogComponent, FontFamilyDialogComponent, FontSizeDialogComponent, FormatDialogComponent, ImageDialogComponent, InsertTableDialogComponent, SourceDialogComponent, CustomMessagesComponent, EditorLocalizationService, LocalizedMessagesDirective, Messages, EditorAlignCenterButtonDirective, EditorAlignJustifyButtonDirective, EditorAlignLeftButtonDirective, EditorAlignRightButtonDirective, EditorBackColorDirective, EditorColorPickerComponent, EditorForeColorDirective, EditorCleanFormattingButtonDirective, FontFamilyDropDownListComponent, EditorFontFamilyComponent, FontSizeDropDownListComponent, EditorFontSizeComponent, FormatDropDownListComponent, EditorFormatComponent, EditorRedoButtonDirective, EditorUndoButtonDirective, EditorInsertImageButtonDirective, EditorIndentButtonDirective, EditorOutdentButtonDirective, EditorCreateLinkButtonDirective, EditorInsertFileButtonDirective, EditorUnlinkButtonDirective, EditorInsertOrderedListButtonDirective, EditorInsertUnorderedListButtonDirective, EditorPrintDirective, EditorSelectAllButtonDirective, DropDownToolDirective, EditorCommandBase, EditorCommandButton, EditorCommandDialog, EditorViewSourceButtonDirective, EditorAddColumnAfterButtonDirective, EditorAddColumnBeforeButtonDirective, EditorAddRowAfterButtonDirective, EditorAddRowBeforeButtonDirective, EditorDeleteColumnButtonDirective, EditorDeleteRowButtonDirective, EditorDeleteTableButtonDirective, EditorInsertTableButtonComponent, EditorMergeCellsButtonDirective, EditorSplitCellButtonDirective, PopupTableGridComponent, EditorBoldButtonDirective, EditorItalicButtonDirective, EditorStrikethroughButtonDirective, EditorSubscriptButtonDirective, EditorSuperscriptButtonDirective, EditorUnderlineButtonDirective, EditorComponent, EditorModule, schema };
6605
+ export { ColorPickerDialogComponent, FileLinkDialogComponent, FontFamilyDialogComponent, FontSizeDialogComponent, FormatDialogComponent, ImageDialogComponent, InsertTableDialogComponent, SourceDialogComponent, CustomMessagesComponent, EditorLocalizationService, LocalizedMessagesDirective, Messages, EditorAlignCenterButtonDirective, EditorAlignJustifyButtonDirective, EditorAlignLeftButtonDirective, EditorAlignRightButtonDirective, EditorBackColorDirective, EditorColorPickerComponent, EditorForeColorDirective, EditorCleanFormattingButtonDirective, FontFamilyDropDownListComponent, EditorFontFamilyComponent, FontSizeDropDownListComponent, EditorFontSizeComponent, FormatDropDownListComponent, EditorFormatComponent, EditorRedoButtonDirective, EditorUndoButtonDirective, EditorInsertImageButtonDirective, EditorIndentButtonDirective, EditorOutdentButtonDirective, EditorCreateLinkButtonDirective, EditorInsertFileButtonDirective, EditorUnlinkButtonDirective, EditorInsertOrderedListButtonDirective, EditorInsertUnorderedListButtonDirective, EditorPrintDirective, EditorSelectAllButtonDirective, DropDownToolDirective, EditorCommandBase, EditorCommandButton, EditorCommandDialog, EditorViewSourceButtonDirective, EditorAddColumnAfterButtonDirective, EditorAddColumnBeforeButtonDirective, EditorAddRowAfterButtonDirective, EditorAddRowBeforeButtonDirective, EditorDeleteColumnButtonDirective, EditorDeleteRowButtonDirective, EditorDeleteTableButtonDirective, EditorInsertTableButtonComponent, EditorMergeCellsButtonDirective, EditorSplitCellButtonDirective, PopupTableGridComponent, EditorToolsService, EditorBoldButtonDirective, EditorItalicButtonDirective, EditorStrikethroughButtonDirective, EditorSubscriptButtonDirective, EditorSuperscriptButtonDirective, EditorUnderlineButtonDirective, EditorComponent, EditorModule, schema, EditorPasteEvent };