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

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 (60) 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 +2 -1
  4. package/dist/es/common/styles.js +1 -1
  5. package/dist/es/config/command-icons.js +4 -2
  6. package/dist/es/config/commands.js +32 -31
  7. package/dist/es/editor-toolbar-state.js +20 -2
  8. package/dist/es/editor.component.js +7 -5
  9. package/dist/es/editor.module.js +7 -1
  10. package/dist/es/index.js +2 -0
  11. package/dist/es/localization/messages.js +8 -0
  12. package/dist/es/package-metadata.js +1 -1
  13. package/dist/es/tools/print/editor-print-button.directive.js +67 -0
  14. package/dist/es/tools/select-all/select-all-button.directive.js +48 -0
  15. package/dist/es/tools/shared/editor-command-base.js +10 -10
  16. package/dist/es/tools/tables/editor-insert-table-button.component.js +5 -8
  17. package/dist/es2015/common/commands.d.ts +5 -1
  18. package/dist/es2015/common/error-messages.js +2 -1
  19. package/dist/es2015/common/styles.d.ts +1 -1
  20. package/dist/es2015/common/styles.js +72 -0
  21. package/dist/es2015/config/command-icons.d.ts +2 -2
  22. package/dist/es2015/config/command-icons.js +4 -2
  23. package/dist/es2015/config/commands.js +31 -30
  24. package/dist/es2015/editor-toolbar-state.js +20 -2
  25. package/dist/es2015/editor.component.d.ts +5 -0
  26. package/dist/es2015/editor.component.js +10 -4
  27. package/dist/es2015/editor.module.js +7 -1
  28. package/dist/es2015/index.d.ts +2 -0
  29. package/dist/es2015/index.js +2 -0
  30. package/dist/es2015/index.metadata.json +1 -1
  31. package/dist/es2015/localization/messages.d.ts +8 -0
  32. package/dist/es2015/localization/messages.js +8 -0
  33. package/dist/es2015/package-metadata.js +1 -1
  34. package/dist/es2015/tools/print/editor-print-button.directive.d.ts +33 -0
  35. package/dist/es2015/tools/print/editor-print-button.directive.js +64 -0
  36. package/dist/es2015/tools/select-all/select-all-button.directive.d.ts +29 -0
  37. package/dist/es2015/tools/select-all/select-all-button.directive.js +46 -0
  38. package/dist/es2015/tools/shared/editor-command-base.d.ts +3 -3
  39. package/dist/es2015/tools/shared/editor-command-base.js +9 -9
  40. package/dist/es2015/tools/shared/editor-command-button.d.ts +3 -3
  41. package/dist/es2015/tools/tables/editor-insert-table-button.component.d.ts +2 -3
  42. package/dist/es2015/tools/tables/editor-insert-table-button.component.js +13 -8
  43. package/dist/fesm2015/index.js +263 -57
  44. package/dist/fesm5/index.js +188 -61
  45. package/dist/npm/common/error-messages.js +2 -1
  46. package/dist/npm/common/styles.js +1 -1
  47. package/dist/npm/config/command-icons.js +4 -2
  48. package/dist/npm/config/commands.js +33 -31
  49. package/dist/npm/editor-toolbar-state.js +20 -2
  50. package/dist/npm/editor.component.js +6 -4
  51. package/dist/npm/editor.module.js +7 -1
  52. package/dist/npm/index.js +4 -0
  53. package/dist/npm/localization/messages.js +8 -0
  54. package/dist/npm/package-metadata.js +1 -1
  55. package/dist/npm/tools/print/editor-print-button.directive.js +69 -0
  56. package/dist/npm/tools/select-all/select-all-button.directive.js +50 -0
  57. package/dist/npm/tools/shared/editor-command-base.js +10 -10
  58. package/dist/npm/tools/tables/editor-insert-table-button.component.js +5 -8
  59. package/dist/systemjs/kendo-angular-editor.js +1 -1
  60. package/package.json +1 -1
@@ -83,10 +83,18 @@ export declare class Messages extends ComponentMessages {
83
83
  * The title of the tool that outdents the content.
84
84
  */
85
85
  outdent: string;
86
+ /**
87
+ * The title of the print tool.
88
+ */
89
+ print: string;
86
90
  /**
87
91
  * The title of the tool that redos the last action.
88
92
  */
89
93
  redo: string;
94
+ /**
95
+ * The title of the tool that selects all content.
96
+ */
97
+ selectAll: string;
90
98
  /**
91
99
  * The title of the tool that strikes through text.
92
100
  */
@@ -86,10 +86,18 @@ tslib_1.__decorate([
86
86
  Input(),
87
87
  tslib_1.__metadata("design:type", String)
88
88
  ], Messages.prototype, "outdent", void 0);
89
+ tslib_1.__decorate([
90
+ Input(),
91
+ tslib_1.__metadata("design:type", String)
92
+ ], Messages.prototype, "print", void 0);
89
93
  tslib_1.__decorate([
90
94
  Input(),
91
95
  tslib_1.__metadata("design:type", String)
92
96
  ], Messages.prototype, "redo", void 0);
97
+ tslib_1.__decorate([
98
+ Input(),
99
+ tslib_1.__metadata("design:type", String)
100
+ ], Messages.prototype, "selectAll", void 0);
93
101
  tslib_1.__decorate([
94
102
  Input(),
95
103
  tslib_1.__metadata("design:type", String)
@@ -9,7 +9,7 @@ export const packageMetadata = {
9
9
  name: '@progress/kendo-angular-editor',
10
10
  productName: 'Kendo UI for Angular',
11
11
  productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
12
- publishDate: 1635941024,
12
+ publishDate: 1637743184,
13
13
  version: '',
14
14
  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'
15
15
  };
@@ -0,0 +1,33 @@
1
+ /**-----------------------------------------------------------------------------------------
2
+ * Copyright © 2021 Progress Software Corporation. All rights reserved.
3
+ * Licensed under commercial license. See LICENSE.md in the project root for more information
4
+ *-------------------------------------------------------------------------------------------*/
5
+ import { ToolBarButtonComponent } from '@progress/kendo-angular-toolbar';
6
+ import { EditorComponent } from '../../editor.component';
7
+ import { EditorCommandButton } from '../shared/editor-command-button';
8
+ import { EditorLocalizationService } from '../../localization/editor-localization.service';
9
+ /**
10
+ * A directive which configures an existing `ToolBarButtonComponent` as an Editor Print tool
11
+ * ([see example]({% slug toolbartools_editor %}#toc-built-in-tools)).
12
+ * The directive will predefine the `icon` and `click` event handlers of the button.
13
+ *
14
+ * > The Editor Print tool is supported in the default [`iframe`](https://www.telerik.com/kendo-angular-ui-develop/components/editor/api/EditorComponent/#toc-iframe) mode only.
15
+ *
16
+ * @example
17
+ * ```ts-no-run
18
+ * <kendo-toolbar-button kendoEditorPrintButton></kendo-toolbar-button>
19
+ * ```
20
+ *
21
+ * The following example demonstrates how to change the default icon that is applied by the directive.
22
+ *
23
+ * @example
24
+ * ```ts-no-run
25
+ * <kendo-toolbar-button kendoEditorPrintButton icon="blogger"></kendo-toolbar-button>
26
+ * ```
27
+ */
28
+ export declare class EditorPrintDirective extends EditorCommandButton {
29
+ protected editor: EditorComponent;
30
+ constructor(button: ToolBarButtonComponent, editor: EditorComponent, localization: EditorLocalizationService);
31
+ ngAfterViewInit(): void;
32
+ protected clickHandler(): void;
33
+ }
@@ -0,0 +1,64 @@
1
+ /**-----------------------------------------------------------------------------------------
2
+ * Copyright © 2021 Progress Software Corporation. All rights reserved.
3
+ * Licensed under commercial license. See LICENSE.md in the project root for more information
4
+ *-------------------------------------------------------------------------------------------*/
5
+ import * as tslib_1 from "tslib";
6
+ import { Directive, Host, isDevMode } from '@angular/core';
7
+ import { ToolBarButtonComponent } from '@progress/kendo-angular-toolbar';
8
+ import { EditorComponent } from '../../editor.component';
9
+ import { EditorCommandButton } from '../shared/editor-command-button';
10
+ import { EditorLocalizationService } from '../../localization/editor-localization.service';
11
+ import { EditorErrorMessages } from '../../common/error-messages';
12
+ /**
13
+ * A directive which configures an existing `ToolBarButtonComponent` as an Editor Print tool
14
+ * ([see example]({% slug toolbartools_editor %}#toc-built-in-tools)).
15
+ * The directive will predefine the `icon` and `click` event handlers of the button.
16
+ *
17
+ * > The Editor Print tool is supported in the default [`iframe`](https://www.telerik.com/kendo-angular-ui-develop/components/editor/api/EditorComponent/#toc-iframe) mode only.
18
+ *
19
+ * @example
20
+ * ```ts-no-run
21
+ * <kendo-toolbar-button kendoEditorPrintButton></kendo-toolbar-button>
22
+ * ```
23
+ *
24
+ * The following example demonstrates how to change the default icon that is applied by the directive.
25
+ *
26
+ * @example
27
+ * ```ts-no-run
28
+ * <kendo-toolbar-button kendoEditorPrintButton icon="blogger"></kendo-toolbar-button>
29
+ * ```
30
+ */
31
+ let EditorPrintDirective = class EditorPrintDirective extends EditorCommandButton {
32
+ constructor(button, editor, localization) {
33
+ super('print', button, editor, localization);
34
+ this.editor = editor;
35
+ }
36
+ ngAfterViewInit() {
37
+ if (isDevMode) {
38
+ if (!this.editor.iframe) {
39
+ throw new Error(EditorErrorMessages.printTool);
40
+ }
41
+ }
42
+ }
43
+ clickHandler() {
44
+ if (this.editor.iframe) {
45
+ const view = this.editor.view;
46
+ const dom = view && view.dom;
47
+ const doc = dom && dom.ownerDocument;
48
+ const editorWindow = doc && doc.defaultView;
49
+ if (editorWindow) {
50
+ editorWindow.print();
51
+ }
52
+ }
53
+ }
54
+ };
55
+ EditorPrintDirective = tslib_1.__decorate([
56
+ Directive({
57
+ selector: 'kendo-toolbar-button[kendoEditorPrintButton]'
58
+ }),
59
+ tslib_1.__param(1, Host()),
60
+ tslib_1.__metadata("design:paramtypes", [ToolBarButtonComponent,
61
+ EditorComponent,
62
+ EditorLocalizationService])
63
+ ], EditorPrintDirective);
64
+ export { EditorPrintDirective };
@@ -0,0 +1,29 @@
1
+ /**-----------------------------------------------------------------------------------------
2
+ * Copyright © 2021 Progress Software Corporation. All rights reserved.
3
+ * Licensed under commercial license. See LICENSE.md in the project root for more information
4
+ *-------------------------------------------------------------------------------------------*/
5
+ import { ToolBarButtonComponent } from '@progress/kendo-angular-toolbar';
6
+ import { EditorComponent } from '../../editor.component';
7
+ import { EditorCommandButton } from '../shared/editor-command-button';
8
+ import { EditorLocalizationService } from '../../localization/editor-localization.service';
9
+ /**
10
+ * A directive which configures an existing `ToolBarButtonComponent` as an Editor SelectAll tool
11
+ * ([see example]({% slug toolbartools_editor %}#toc-built-in-tools)).
12
+ * The directive will predefine the `icon` and `click` event handlers of the button.
13
+ *
14
+ * @example
15
+ * ```ts-no-run
16
+ * <kendo-toolbar-button kendoEditorSelectAllButton></kendo-toolbar-button>
17
+ * ```
18
+ *
19
+ * The following example demonstrates how to change the default icon that is applied by the directive.
20
+ *
21
+ * @example
22
+ * ```ts-no-run
23
+ * <kendo-toolbar-button kendoEditorSelectAllButton icon="blogger"></kendo-toolbar-button>
24
+ * ```
25
+ */
26
+ export declare class EditorSelectAllButtonDirective extends EditorCommandButton {
27
+ constructor(button: ToolBarButtonComponent, editor: EditorComponent, localization: EditorLocalizationService);
28
+ protected clickHandler(): void;
29
+ }
@@ -0,0 +1,46 @@
1
+ /**-----------------------------------------------------------------------------------------
2
+ * Copyright © 2021 Progress Software Corporation. All rights reserved.
3
+ * Licensed under commercial license. See LICENSE.md in the project root for more information
4
+ *-------------------------------------------------------------------------------------------*/
5
+ import * as tslib_1 from "tslib";
6
+ import { Directive, Host } from '@angular/core';
7
+ import { ToolBarButtonComponent } from '@progress/kendo-angular-toolbar';
8
+ import { EditorComponent } from '../../editor.component';
9
+ import { EditorCommandButton } from '../shared/editor-command-button';
10
+ import { EditorLocalizationService } from '../../localization/editor-localization.service';
11
+ /**
12
+ * A directive which configures an existing `ToolBarButtonComponent` as an Editor SelectAll tool
13
+ * ([see example]({% slug toolbartools_editor %}#toc-built-in-tools)).
14
+ * The directive will predefine the `icon` and `click` event handlers of the button.
15
+ *
16
+ * @example
17
+ * ```ts-no-run
18
+ * <kendo-toolbar-button kendoEditorSelectAllButton></kendo-toolbar-button>
19
+ * ```
20
+ *
21
+ * The following example demonstrates how to change the default icon that is applied by the directive.
22
+ *
23
+ * @example
24
+ * ```ts-no-run
25
+ * <kendo-toolbar-button kendoEditorSelectAllButton icon="blogger"></kendo-toolbar-button>
26
+ * ```
27
+ */
28
+ let EditorSelectAllButtonDirective = class EditorSelectAllButtonDirective extends EditorCommandButton {
29
+ constructor(button, editor, localization) {
30
+ super('selectAll', button, editor, localization);
31
+ }
32
+ clickHandler() {
33
+ this.editor.shouldEmitFocus = true;
34
+ super.clickHandler();
35
+ }
36
+ };
37
+ EditorSelectAllButtonDirective = tslib_1.__decorate([
38
+ Directive({
39
+ selector: 'kendo-toolbar-button[kendoEditorSelectAllButton]'
40
+ }),
41
+ tslib_1.__param(1, Host()),
42
+ tslib_1.__metadata("design:paramtypes", [ToolBarButtonComponent,
43
+ EditorComponent,
44
+ EditorLocalizationService])
45
+ ], EditorSelectAllButtonDirective);
46
+ export { EditorSelectAllButtonDirective };
@@ -5,18 +5,18 @@
5
5
  import { Subscription } from 'rxjs';
6
6
  import { ToolBarButtonComponent } from '@progress/kendo-angular-toolbar';
7
7
  import { EditorComponent } from '../../editor.component';
8
- import { EditorCommand, DialogCommand } from '../../common/commands';
8
+ import { EditorCommand, DialogCommand, EditorInternalCommand } from '../../common/commands';
9
9
  import { LocalizationService } from '@progress/kendo-angular-l10n';
10
10
  /**
11
11
  * @hidden
12
12
  */
13
13
  export declare abstract class EditorCommandBase {
14
- protected command: DialogCommand | EditorCommand;
14
+ protected command: DialogCommand | EditorCommand | EditorInternalCommand;
15
15
  protected button: ToolBarButtonComponent;
16
16
  protected editor: EditorComponent;
17
17
  protected localization: LocalizationService;
18
18
  protected subs: Subscription;
19
- constructor(command: DialogCommand | EditorCommand, button: ToolBarButtonComponent, editor: EditorComponent, localization: LocalizationService);
19
+ constructor(command: DialogCommand | EditorCommand | EditorInternalCommand, button: ToolBarButtonComponent, editor: EditorComponent, localization: LocalizationService);
20
20
  ngOnInit(): void;
21
21
  ngOnDestroy(): void;
22
22
  protected clickHandler(): void;
@@ -12,24 +12,24 @@ export class EditorCommandBase {
12
12
  this.button = button;
13
13
  this.editor = editor;
14
14
  this.localization = localization;
15
- }
16
- ngOnInit() {
17
- this.subs = this.editor.stateChange.subscribe(this.onStateChange.bind(this));
18
- this.subs.add(this.button.click.subscribe((this.clickHandler.bind(this))));
19
- this.subs.add(this.button.pointerdown.subscribe((this.pointerdownHandler.bind(this))));
20
- Promise.resolve(null).then(() => {
15
+ setTimeout(() => {
21
16
  const text = this.localization.get(this.command);
22
17
  if (text) {
23
- this.button.showText = "overflow";
24
- this.button.showIcon = "both";
18
+ this.button.showText = 'overflow';
19
+ this.button.showIcon = 'both';
25
20
  this.button.text = text;
26
21
  }
27
- if (!this.button.icon) {
22
+ if (!this.button.toolbarOptions.icon) {
28
23
  this.button.icon = commandIcons[this.command];
29
24
  }
30
25
  this.button.title = text;
31
26
  });
32
27
  }
28
+ ngOnInit() {
29
+ this.subs = this.editor.stateChange.subscribe(this.onStateChange.bind(this));
30
+ this.subs.add(this.button.click.subscribe((this.clickHandler.bind(this))));
31
+ this.subs.add(this.button.pointerdown.subscribe((this.pointerdownHandler.bind(this))));
32
+ }
33
33
  ngOnDestroy() {
34
34
  if (this.subs) {
35
35
  this.subs.unsubscribe();
@@ -3,7 +3,7 @@
3
3
  * Licensed under commercial license. See LICENSE.md in the project root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
5
  import { ToolBarButtonComponent } from '@progress/kendo-angular-toolbar';
6
- import { EditorCommand } from '../../common/commands';
6
+ import { EditorCommand, EditorInternalCommand } from '../../common/commands';
7
7
  import { EditorComponent } from '../../editor.component';
8
8
  import { EditorCommandBase } from './editor-command-base';
9
9
  import { LocalizationService } from '@progress/kendo-angular-l10n';
@@ -11,11 +11,11 @@ import { LocalizationService } from '@progress/kendo-angular-l10n';
11
11
  * @hidden
12
12
  */
13
13
  export declare abstract class EditorCommandButton extends EditorCommandBase {
14
- protected command: EditorCommand;
14
+ protected command: EditorCommand | EditorInternalCommand;
15
15
  protected button: ToolBarButtonComponent;
16
16
  protected editor: EditorComponent;
17
17
  protected localization: LocalizationService;
18
- constructor(command: EditorCommand, button: ToolBarButtonComponent, editor: EditorComponent, localization: LocalizationService);
18
+ constructor(command: EditorCommand | EditorInternalCommand, button: ToolBarButtonComponent, editor: EditorComponent, localization: LocalizationService);
19
19
  protected clickHandler(): void;
20
20
  protected pointerdownHandler(e: PointerEvent): void;
21
21
  protected onStateChange(toolBarState: any): void;
@@ -2,7 +2,7 @@
2
2
  * Copyright © 2021 Progress Software Corporation. All rights reserved.
3
3
  * Licensed under commercial license. See LICENSE.md in the project root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
- import { TemplateRef, ElementRef, AfterViewInit, OnDestroy } from '@angular/core';
5
+ import { TemplateRef, ElementRef, OnDestroy } from '@angular/core';
6
6
  import { ToolBarToolComponent } from '@progress/kendo-angular-toolbar';
7
7
  import { PopupRef, PopupService } from '@progress/kendo-angular-popup';
8
8
  import { EditorComponent } from '../../editor.component';
@@ -16,7 +16,7 @@ import { DialogService } from '@progress/kendo-angular-dialog';
16
16
  * <kendo-editor-insert-table-button></kendo-editor-insert-table-button>
17
17
  * ```
18
18
  */
19
- export declare class EditorInsertTableButtonComponent extends ToolBarToolComponent implements AfterViewInit, OnDestroy {
19
+ export declare class EditorInsertTableButtonComponent extends ToolBarToolComponent implements OnDestroy {
20
20
  private editor;
21
21
  private localization;
22
22
  private popupService;
@@ -39,7 +39,6 @@ export declare class EditorInsertTableButtonComponent extends ToolBarToolCompone
39
39
  private cellClicked;
40
40
  private subs;
41
41
  constructor(editor: EditorComponent, localization: EditorLocalizationService, popupService: PopupService, dialogService: DialogService);
42
- ngAfterViewInit(): void;
43
42
  ngOnDestroy(): void;
44
43
  readonly outerWidth: number;
45
44
  readonly title: string;
@@ -42,9 +42,6 @@ let EditorInsertTableButtonComponent = EditorInsertTableButtonComponent_1 = clas
42
42
  this.toggle(false);
43
43
  }));
44
44
  }
45
- ngAfterViewInit() {
46
- this.getButton().tabIndex = -1;
47
- }
48
45
  ngOnDestroy() {
49
46
  this.destroyPopup();
50
47
  if (this.subs) {
@@ -87,7 +84,7 @@ let EditorInsertTableButtonComponent = EditorInsertTableButtonComponent_1 = clas
87
84
  * @hidden
88
85
  */
89
86
  onBlur() {
90
- this.getButton().tabIndex = -1;
87
+ this.tabIndex = -1;
91
88
  this.buttonBlurred.emit();
92
89
  }
93
90
  /**
@@ -108,8 +105,8 @@ let EditorInsertTableButtonComponent = EditorInsertTableButtonComponent_1 = clas
108
105
  * @hidden
109
106
  */
110
107
  focus() {
108
+ this.tabIndex = 0;
111
109
  this.getButton().focus();
112
- this.getButton().tabIndex = 0;
113
110
  }
114
111
  /**
115
112
  * @hidden
@@ -118,7 +115,7 @@ let EditorInsertTableButtonComponent = EditorInsertTableButtonComponent_1 = clas
118
115
  if (ev.keyCode === Keys.Space || ev.keyCode === Keys.Enter) {
119
116
  return true;
120
117
  }
121
- this.getButton().tabIndex = -1;
118
+ this.tabIndex = -1;
122
119
  return false;
123
120
  }
124
121
  /**
@@ -161,7 +158,7 @@ tslib_1.__decorate([
161
158
  tslib_1.__metadata("design:type", TemplateRef)
162
159
  ], EditorInsertTableButtonComponent.prototype, "toolbarTemplate", void 0);
163
160
  tslib_1.__decorate([
164
- ViewChild('popupTemplate', { static: true }),
161
+ ViewChild('popupTemplate', { static: false }),
165
162
  tslib_1.__metadata("design:type", TemplateRef)
166
163
  ], EditorInsertTableButtonComponent.prototype, "popupTemplate", void 0);
167
164
  tslib_1.__decorate([
@@ -188,6 +185,7 @@ EditorInsertTableButtonComponent = EditorInsertTableButtonComponent_1 = tslib_1.
188
185
  kendoButton
189
186
  #element
190
187
  [attr.title]="title"
188
+ [attr.tabindex]="tabIndex"
191
189
  [icon]="'table-insert'"
192
190
  [disabled]="disabled"
193
191
  (click)="toggle()"
@@ -195,7 +193,14 @@ EditorInsertTableButtonComponent = EditorInsertTableButtonComponent_1 = tslib_1.
195
193
  ></button>
196
194
  </ng-template>
197
195
  <ng-template #popupTemplate>
198
- <button kendoButton #overflowElement [attr.title]="title" [icon]="'table-insert'" [disabled]="disabled" (click)="openDialog()">
196
+ <button
197
+ kendoButton
198
+ #overflowElement
199
+ [attr.title]="title"
200
+ [attr.tabindex]="tabIndex"
201
+ [icon]="'table-insert'"
202
+ [disabled]="disabled"
203
+ (click)="openDialog()">
199
204
  {{ title }}
200
205
  </button>
201
206
  </ng-template>