@talrace/ngx-noder 0.0.4 → 0.0.5

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 (75) hide show
  1. package/README.md +72 -64
  2. package/esm2022/lib/+shared/add-link-dialog/add-link-dialog.component.mjs +9 -5
  3. package/esm2022/lib/+shared/confirm-dialog/confirm-dialog.component.mjs +10 -6
  4. package/esm2022/lib/+shared/editor/core/editor.mjs +7 -14
  5. package/esm2022/lib/+shared/editor/core/helpers/rendering.helper.mjs +9 -8
  6. package/esm2022/lib/+shared/editor/core/layers/text.layer.mjs +4 -4
  7. package/esm2022/lib/+shared/editor/custom-components/image/components/image.component.mjs +4 -3
  8. package/esm2022/lib/+shared/editor/custom-components/shared/abstract/base.component.mjs +4 -2
  9. package/esm2022/lib/+shared/editor/custom-components/shared/services/custom-content/custom-content.service.mjs +6 -12
  10. package/esm2022/lib/+shared/editor/custom-components/tab/tab.component.mjs +3 -2
  11. package/esm2022/lib/+shared/editor/custom-components/table/components/table-cell.component.mjs +6 -4
  12. package/esm2022/lib/+shared/editor/custom-components/table/components/table.component.mjs +7 -5
  13. package/esm2022/lib/+shared/editor/editor.component.mjs +5 -12
  14. package/esm2022/lib/+shared/editor/editor.module.mjs +1 -4
  15. package/esm2022/lib/+shared/editor/execution/models/general-properties.model.mjs +1 -1
  16. package/esm2022/lib/+shared/editor/execution/regulator.service.mjs +15 -5
  17. package/esm2022/lib/+shared/editor-title/editor-title.component.mjs +83 -0
  18. package/esm2022/lib/+shared/editor-toolbar/color-picker/color-picker.component.mjs +2 -2
  19. package/esm2022/lib/+shared/editor-toolbar/editor-toolbar.component.mjs +77 -91
  20. package/esm2022/lib/+shared/editor-toolbar/editor-toolbar.module.mjs +11 -1
  21. package/esm2022/lib/+shared/editor-toolbar/font/font.component.mjs +3 -3
  22. package/esm2022/lib/+shared/editor-toolbar/font-size/font-size.component.mjs +2 -2
  23. package/esm2022/lib/+shared/editor-toolbar/font-style/font-style.component.mjs +2 -2
  24. package/esm2022/lib/+shared/editor-toolbar/menu-dropdowns/menu-dropdowns.component.mjs +194 -0
  25. package/esm2022/lib/+shared/editor-toolbar/numbering/numbering.component.mjs +3 -3
  26. package/esm2022/lib/+shared/editor-toolbar/print/print.component.mjs +2 -2
  27. package/esm2022/lib/+shared/editor-toolbar/toolbar-actions/toolbar-actions.component.mjs +126 -0
  28. package/esm2022/lib/+shared/editor-toolbar/undo-redo/undo-redo.component.mjs +2 -2
  29. package/esm2022/lib/+shared/helpers/scaling.helper.mjs +9 -0
  30. package/esm2022/public-api.mjs +2 -2
  31. package/fesm2022/talrace-ngx-noder.mjs +455 -398
  32. package/fesm2022/talrace-ngx-noder.mjs.map +1 -1
  33. package/lib/+shared/add-link-dialog/add-link-dialog.component.d.ts +1 -0
  34. package/lib/+shared/confirm-dialog/confirm-dialog.component.d.ts +1 -0
  35. package/lib/+shared/editor/core/editor.d.ts +3 -3
  36. package/lib/+shared/editor/core/helpers/rendering.helper.d.ts +3 -3
  37. package/lib/+shared/editor/custom-components/shared/abstract/base.component.d.ts +3 -1
  38. package/lib/+shared/editor/custom-components/shared/services/custom-content/custom-content.service.d.ts +1 -1
  39. package/lib/+shared/editor/custom-components/table/components/table-cell.component.d.ts +2 -2
  40. package/lib/+shared/editor/custom-components/table/components/table.component.d.ts +0 -2
  41. package/lib/+shared/editor/editor.component.d.ts +1 -5
  42. package/lib/+shared/editor/editor.module.d.ts +15 -16
  43. package/lib/+shared/editor/execution/models/general-properties.model.d.ts +1 -0
  44. package/lib/+shared/editor/execution/regulator.service.d.ts +2 -2
  45. package/lib/+shared/editor-title/editor-title.component.d.ts +24 -0
  46. package/lib/+shared/editor-toolbar/editor-toolbar.component.d.ts +31 -30
  47. package/lib/+shared/editor-toolbar/editor-toolbar.module.d.ts +19 -16
  48. package/lib/+shared/editor-toolbar/menu-dropdowns/menu-dropdowns.component.d.ts +73 -0
  49. package/lib/+shared/editor-toolbar/toolbar-actions/toolbar-actions.component.d.ts +49 -0
  50. package/lib/+shared/helpers/scaling.helper.d.ts +4 -0
  51. package/package.json +1 -1
  52. package/public-api.d.ts +1 -1
  53. package/src/_ngx-noder.theme.scss +10 -8
  54. package/src/lib/+shared/add-link-dialog/_add-link-dialog.theme.scss +3 -3
  55. package/src/lib/+shared/confirm-dialog/_theme.scss +6 -6
  56. package/src/lib/+shared/editor/_editor.theme.scss +84 -15
  57. package/src/lib/+shared/editor/_theme.scss +0 -2
  58. package/src/lib/+shared/editor-title/_editor-title.theme.scss +28 -0
  59. package/src/lib/+shared/editor-toolbar/_editor-toolbar.theme.scss +1 -24
  60. package/src/lib/+shared/editor-toolbar/_theme.scss +14 -2
  61. package/src/lib/+shared/editor-toolbar/font-size/_font-size.theme.scss +14 -0
  62. package/src/lib/+shared/editor-toolbar/font-style/_font-style.theme.scss +21 -0
  63. package/src/lib/+shared/editor-toolbar/format/_format.theme.scss +21 -0
  64. package/src/lib/+shared/editor-toolbar/menu-dropdowns/_menu-dropdowns.theme.scss +22 -0
  65. package/src/lib/+shared/editor-toolbar/numbering/_numbering.theme.scss +52 -11
  66. package/src/lib/+shared/editor-toolbar/toolbar-actions/_toolbar-actions.theme.scss +21 -0
  67. package/src/lib/+shared/editor-toolbar/undo-redo/_undo-redo.theme.scss +16 -0
  68. package/src/lib/+shared/insert-table/_insert-table.theme.scss +9 -6
  69. package/src/scss/_mixins.scss +2 -37
  70. package/esm2022/lib/+shared/editor/custom-components/external-element/element-toolbar/element-toolbar.component.mjs +0 -35
  71. package/esm2022/lib/+shared/editor-header/editor-header.component.mjs +0 -314
  72. package/lib/+shared/editor/custom-components/external-element/element-toolbar/element-toolbar.component.d.ts +0 -14
  73. package/lib/+shared/editor-header/editor-header.component.d.ts +0 -101
  74. package/src/lib/+shared/editor/custom-components/external-element/element-toolbar/_element-toolbar.theme.scss +0 -10
  75. package/src/lib/+shared/editor-header/_editor-header.theme.scss +0 -106
@@ -1,115 +1,101 @@
1
1
  import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';
2
- import { DEFAULT_FONT_SIZE } from '../editor/core/constants/editor.const';
3
- import { NumberingTemplates } from './constants/numbering-templates.const';
4
- import { ParagraphStyleModel } from '../../models/generated/paragraph-style.model';
5
- import { TextStyleModel } from '../../models/generated/text-style.model';
6
- import { ToolbarStylesHelper } from './helpers/toolbar-styles.helper';
7
2
  import * as i0 from "@angular/core";
8
- import * as i1 from "../services/custom-icon.service";
9
- import * as i2 from "@angular/common";
10
- import * as i3 from "./font/font.component";
11
- import * as i4 from "./font-size/font-size.component";
12
- import * as i5 from "./font-style/font-style.component";
13
- import * as i6 from "./format/format.component";
14
- import * as i7 from "./numbering/numbering.component";
15
- import * as i8 from "./print/print.component";
16
- import * as i9 from "./undo-redo/undo-redo.component";
3
+ import * as i1 from "@angular/common";
4
+ import * as i2 from "./menu-dropdowns/menu-dropdowns.component";
5
+ import * as i3 from "./toolbar-actions/toolbar-actions.component";
17
6
  export class EditorToolbarComponent {
18
- set styles(value) {
19
- this._styles = value;
20
- this.numberingType = ToolbarStylesHelper.getNumberingType(value.isBulletMarker);
21
- this.numberingTemplateType = ToolbarStylesHelper.getNumberingTemplateType(value.numberingLevelsStyles);
22
- }
23
- get styles() {
24
- return this._styles;
25
- }
26
- set historyInfo(value) {
27
- this.canUndo = value.step !== -1;
28
- this.canRedo = value.step < value.lastStep;
29
- }
30
- constructor(customIconService) {
31
- this.customIconService = customIconService;
32
- this.changeTextStyle = new EventEmitter();
7
+ constructor() {
8
+ this.showActions = true;
9
+ this.openFileFromDisk = new EventEmitter();
10
+ this.addCustomElement = new EventEmitter();
11
+ this.saveAs = new EventEmitter();
12
+ this.print = new EventEmitter();
13
+ this.insertPageBreak = new EventEmitter();
14
+ this.createDocument = new EventEmitter();
15
+ this.insertImage = new EventEmitter();
16
+ this.rename = new EventEmitter();
17
+ this.delete = new EventEmitter();
18
+ this.openEditMenu = new EventEmitter();
19
+ this.redo = new EventEmitter();
20
+ this.undo = new EventEmitter();
21
+ this.cutSelected = new EventEmitter();
22
+ this.copySelected = new EventEmitter();
23
+ this.pasteClipboardData = new EventEmitter();
24
+ this.selectAll = new EventEmitter();
25
+ this.removeSelected = new EventEmitter();
26
+ this.insertLink = new EventEmitter();
27
+ this.createElement = new EventEmitter();
33
28
  this.changeParagraphStyle = new EventEmitter();
29
+ this.changeTextStyle = new EventEmitter();
34
30
  this.setNumberingTemplateType = new EventEmitter();
35
31
  this.removeNumberings = new EventEmitter();
36
- this.redo = new EventEmitter();
37
- this.undo = new EventEmitter();
38
- this.print = new EventEmitter();
39
- this.customIconService.register();
40
- }
41
- onApplyFontFamily(font) {
42
- this.checkFontLoadedAndApplyStyle(new TextStyleModel({ fontFamily: font }));
43
- }
44
- onApplyFontSize(size) {
45
- this.checkFontLoadedAndApplyStyle(new TextStyleModel({ fontSize: size }));
46
- }
47
- onApplyBold(bold) {
48
- this.checkFontLoadedAndApplyStyle(new TextStyleModel({ bold }));
32
+ this.insertTable = new EventEmitter();
49
33
  }
50
- onApplyUnderline(underline) {
51
- this.changeTextStyle.emit(new TextStyleModel({ underline }));
52
- }
53
- onApplyItalic(italic) {
54
- this.checkFontLoadedAndApplyStyle(new TextStyleModel({ italic }));
55
- }
56
- onApplyFontColor(color) {
57
- this.changeTextStyle.emit(new TextStyleModel({ fontColor: color }));
58
- }
59
- onApplyHighlightColor(color) {
60
- this.changeTextStyle.emit(new TextStyleModel({ highlightColor: color }));
61
- }
62
- onApplyAlignment(alignment) {
63
- this.changeParagraphStyle.emit(new ParagraphStyleModel({ alignment }));
64
- }
65
- onSetNumberingTemplateType(templateType) {
66
- const templateLevels = NumberingTemplates.find(x => x.templateType === templateType).levels;
67
- this.setNumberingTemplateType.emit(templateLevels);
68
- }
69
- onRemoveNumberings() {
70
- this.removeNumberings.emit();
71
- }
72
- checkFontLoadedAndApplyStyle(style) {
73
- const newStyles = { ...this.styles, ...style };
74
- const italic = newStyles.italic ? 'italic ' : '';
75
- const bold = newStyles.bold ? 'bold ' : '';
76
- const fontStyles = `${italic}${bold}${newStyles.fontSize ?? DEFAULT_FONT_SIZE}pt ${newStyles.fontFamily}`;
77
- if (document.fonts.check(fontStyles)) {
78
- this.changeTextStyle.emit(style);
79
- return;
80
- }
81
- document.fonts
82
- .load(fontStyles)
83
- .then(() => this.changeTextStyle.emit(style))
84
- .catch(() => {
85
- // continue regardless of error
86
- });
87
- }
88
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: EditorToolbarComponent, deps: [{ token: i1.CustomIconService }], target: i0.ɵɵFactoryTarget.Component }); }
89
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.1", type: EditorToolbarComponent, selector: "app-editor-toolbar", inputs: { isViewOnly: "isViewOnly", styles: "styles", historyInfo: "historyInfo" }, outputs: { changeTextStyle: "changeTextStyle", changeParagraphStyle: "changeParagraphStyle", setNumberingTemplateType: "setNumberingTemplateType", removeNumberings: "removeNumberings", redo: "redo", undo: "undo", print: "print" }, ngImport: i0, template: "<ng-container *ngIf=\"styles\">\n <app-undo-redo\n [canUndo]=\"canUndo\"\n [canRedo]=\"canRedo\"\n (undo)=\"undo.emit()\"\n (redo)=\"redo.emit()\"></app-undo-redo>\n <app-print (print)=\"print.emit()\"></app-print>\n <div class=\"separator\"></div>\n <app-font\n [isDisabled]=\"isViewOnly\"\n [styles]=\"styles\"\n (selectFont)=\"onApplyFontFamily($event)\"></app-font>\n <div class=\"separator\"></div>\n <app-font-size\n [isDisabled]=\"isViewOnly\"\n [fontSize]=\"styles.fontSize\"\n (selectFontSize)=\"onApplyFontSize($event)\"></app-font-size>\n <div class=\"separator\"></div>\n <app-font-style\n [isDisabled]=\"isViewOnly\"\n [bold]=\"styles.bold\"\n [italic]=\"styles.italic\"\n [underline]=\"styles.underline\"\n [fontColor]=\"styles.fontColor\"\n [highlightColor]=\"styles.highlightColor\"\n (selectFontColor)=\"onApplyFontColor($event)\"\n (toggleBold)=\"onApplyBold($event)\"\n (toggleItalic)=\"onApplyItalic($event)\"\n (toggleUnderline)=\"onApplyUnderline($event)\"\n (selectHighlightColor)=\"onApplyHighlightColor($event)\"></app-font-style>\n <div class=\"separator\"></div>\n <app-format\n [isDisabled]=\"isViewOnly\"\n [alignment]=\"styles.alignment\"\n (selectAlignment)=\"onApplyAlignment($event)\"></app-format>\n <div class=\"separator\"></div>\n <app-numbering\n [isDisabled]=\"isViewOnly\"\n [selectedNumberingType]=\"numberingType\"\n [selectedNumberingTemplate]=\"numberingTemplateType\"\n (selectNumberingTemplate)=\"onSetNumberingTemplateType($event)\"\n (removeNumberings)=\"onRemoveNumberings()\"></app-numbering>\n</ng-container>\n", styles: [":host ::ng-deep{display:flex;height:40px;justify-content:center;border-bottom:1px solid}:host ::ng-deep mat-button-toggle,:host ::ng-deep .mat-button-toggle-button{height:28px;width:28px;border-radius:4px}:host ::ng-deep mat-button-toggle mat-icon,:host ::ng-deep .mat-button-toggle-button mat-icon{font-size:24px;height:24px;width:24px;border-radius:4px}:host ::ng-deep mat-button-toggle .mat-button-toggle-label-content,:host ::ng-deep .mat-button-toggle-button .mat-button-toggle-label-content{padding:0 2px}.separator{border-left:1px solid;opacity:.1;height:100%;margin:0 8px}.mdc-button{width:28px;height:28px;padding:0}.mat-mdc-button>.mat-icon{margin-right:0}.do-action{padding-right:1px;justify-content:center;display:flex}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.FontComponent, selector: "app-font", inputs: ["isDisabled", "styles"], outputs: ["selectFont"] }, { kind: "component", type: i4.FontSizeComponent, selector: "app-font-size", inputs: ["isDisabled", "fontSize"], outputs: ["selectFontSize"] }, { kind: "component", type: i5.FontStyleComponent, selector: "app-font-style", inputs: ["isDisabled", "bold", "italic", "underline", "fontColor", "highlightColor"], outputs: ["toggleBold", "toggleItalic", "toggleUnderline", "selectFontColor", "selectHighlightColor"] }, { kind: "component", type: i6.FormatComponent, selector: "app-format", inputs: ["isDisabled", "alignment"], outputs: ["selectAlignment"] }, { kind: "component", type: i7.NumberingComponent, selector: "app-numbering", inputs: ["isDisabled", "selectedNumberingType", "selectedNumberingTemplate"], outputs: ["selectNumberingTemplate", "removeNumberings"] }, { kind: "component", type: i8.PrintComponent, selector: "app-print", outputs: ["print"] }, { kind: "component", type: i9.UndoRedoComponent, selector: "app-undo-redo", inputs: ["canUndo", "canRedo"], outputs: ["undo", "redo"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
34
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: EditorToolbarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
35
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.1", type: EditorToolbarComponent, selector: "app-editor-toolbar", inputs: { showActions: "showActions", isViewOnly: "isViewOnly", hasSelection: "hasSelection", clipboardData: "clipboardData", historyInfo: "historyInfo", styles: "styles" }, outputs: { openFileFromDisk: "openFileFromDisk", addCustomElement: "addCustomElement", saveAs: "saveAs", print: "print", insertPageBreak: "insertPageBreak", createDocument: "createDocument", insertImage: "insertImage", rename: "rename", delete: "delete", openEditMenu: "openEditMenu", redo: "redo", undo: "undo", cutSelected: "cutSelected", copySelected: "copySelected", pasteClipboardData: "pasteClipboardData", selectAll: "selectAll", removeSelected: "removeSelected", insertLink: "insertLink", createElement: "createElement", changeParagraphStyle: "changeParagraphStyle", changeTextStyle: "changeTextStyle", setNumberingTemplateType: "setNumberingTemplateType", removeNumberings: "removeNumberings", insertTable: "insertTable" }, ngImport: i0, template: "<app-menu-dropdowns\n [isViewOnly]=\"isViewOnly\"\n [hasSelection]=\"hasSelection\"\n [clipboardData]=\"clipboardData\"\n [historyInfo]=\"historyInfo\"\n [styles]=\"styles\"\n (openFileFromDisk)=\"openFileFromDisk.emit($event)\"\n (addCustomElement)=\"addCustomElement.emit($event)\"\n (saveAs)=\"saveAs.emit()\"\n (print)=\"print.emit()\"\n (insertPageBreak)=\"insertPageBreak.emit()\"\n (createDocument)=\"createDocument.emit()\"\n (insertImage)=\"insertImage.emit($event)\"\n (rename)=\"rename.emit()\"\n (delete)=\"delete.emit()\"\n (openEditMenu)=\"openEditMenu.emit()\"\n (redo)=\"redo.emit()\"\n (undo)=\"undo.emit()\"\n (cutSelected)=\"cutSelected.emit()\"\n (copySelected)=\"copySelected.emit()\"\n (pasteClipboardData)=\"pasteClipboardData.emit()\"\n (selectAll)=\"selectAll.emit()\"\n (removeSelected)=\"removeSelected.emit()\"\n (insertLink)=\"insertLink.emit()\"\n (createElement)=\"createElement.emit($event)\"\n (changeParagraphStyle)=\"changeParagraphStyle.emit($event)\"\n (changeTextStyle)=\"changeTextStyle.emit($event)\"\n (setNumberingTemplateType)=\"setNumberingTemplateType.emit($event)\"\n (removeNumberings)=\"removeNumberings.emit()\"\n (insertTable)=\"insertTable.emit($event)\" />\n<app-toolbar-actions\n *ngIf=\"styles && showActions\"\n [isViewOnly]=\"isViewOnly\"\n [historyInfo]=\"historyInfo\"\n [styles]=\"styles\"\n (print)=\"print.emit()\"\n (redo)=\"redo.emit()\"\n (undo)=\"undo.emit()\"\n (changeParagraphStyle)=\"changeParagraphStyle.emit($event)\"\n (changeTextStyle)=\"changeTextStyle.emit($event)\"\n (setNumberingTemplateType)=\"setNumberingTemplateType.emit($event)\"\n (removeNumberings)=\"removeNumberings.emit()\"\n (createElement)=\"createElement.emit($event)\" />\n", styles: [":host ::ng-deep{display:flex;position:relative;width:100%;height:32px}app-toolbar-actions{display:flex;position:absolute;align-items:center;justify-content:center;width:100%;height:100%}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MenuDropdownsComponent, selector: "app-menu-dropdowns", inputs: ["isViewOnly", "hasSelection", "clipboardData", "historyInfo", "styles"], outputs: ["openFileFromDisk", "addCustomElement", "saveAs", "print", "insertPageBreak", "createDocument", "insertImage", "rename", "delete", "openEditMenu", "redo", "undo", "cutSelected", "copySelected", "pasteClipboardData", "selectAll", "removeSelected", "insertLink", "createElement", "changeParagraphStyle", "changeTextStyle", "setNumberingTemplateType", "removeNumberings", "insertTable"] }, { kind: "component", type: i3.ToolbarActionsComponent, selector: "app-toolbar-actions", inputs: ["isViewOnly", "historyInfo", "styles"], outputs: ["print", "redo", "undo", "changeParagraphStyle", "changeTextStyle", "setNumberingTemplateType", "removeNumberings", "createElement"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
90
36
  }
91
37
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: EditorToolbarComponent, decorators: [{
92
38
  type: Component,
93
- args: [{ changeDetection: ChangeDetectionStrategy.OnPush, selector: 'app-editor-toolbar', template: "<ng-container *ngIf=\"styles\">\n <app-undo-redo\n [canUndo]=\"canUndo\"\n [canRedo]=\"canRedo\"\n (undo)=\"undo.emit()\"\n (redo)=\"redo.emit()\"></app-undo-redo>\n <app-print (print)=\"print.emit()\"></app-print>\n <div class=\"separator\"></div>\n <app-font\n [isDisabled]=\"isViewOnly\"\n [styles]=\"styles\"\n (selectFont)=\"onApplyFontFamily($event)\"></app-font>\n <div class=\"separator\"></div>\n <app-font-size\n [isDisabled]=\"isViewOnly\"\n [fontSize]=\"styles.fontSize\"\n (selectFontSize)=\"onApplyFontSize($event)\"></app-font-size>\n <div class=\"separator\"></div>\n <app-font-style\n [isDisabled]=\"isViewOnly\"\n [bold]=\"styles.bold\"\n [italic]=\"styles.italic\"\n [underline]=\"styles.underline\"\n [fontColor]=\"styles.fontColor\"\n [highlightColor]=\"styles.highlightColor\"\n (selectFontColor)=\"onApplyFontColor($event)\"\n (toggleBold)=\"onApplyBold($event)\"\n (toggleItalic)=\"onApplyItalic($event)\"\n (toggleUnderline)=\"onApplyUnderline($event)\"\n (selectHighlightColor)=\"onApplyHighlightColor($event)\"></app-font-style>\n <div class=\"separator\"></div>\n <app-format\n [isDisabled]=\"isViewOnly\"\n [alignment]=\"styles.alignment\"\n (selectAlignment)=\"onApplyAlignment($event)\"></app-format>\n <div class=\"separator\"></div>\n <app-numbering\n [isDisabled]=\"isViewOnly\"\n [selectedNumberingType]=\"numberingType\"\n [selectedNumberingTemplate]=\"numberingTemplateType\"\n (selectNumberingTemplate)=\"onSetNumberingTemplateType($event)\"\n (removeNumberings)=\"onRemoveNumberings()\"></app-numbering>\n</ng-container>\n", styles: [":host ::ng-deep{display:flex;height:40px;justify-content:center;border-bottom:1px solid}:host ::ng-deep mat-button-toggle,:host ::ng-deep .mat-button-toggle-button{height:28px;width:28px;border-radius:4px}:host ::ng-deep mat-button-toggle mat-icon,:host ::ng-deep .mat-button-toggle-button mat-icon{font-size:24px;height:24px;width:24px;border-radius:4px}:host ::ng-deep mat-button-toggle .mat-button-toggle-label-content,:host ::ng-deep .mat-button-toggle-button .mat-button-toggle-label-content{padding:0 2px}.separator{border-left:1px solid;opacity:.1;height:100%;margin:0 8px}.mdc-button{width:28px;height:28px;padding:0}.mat-mdc-button>.mat-icon{margin-right:0}.do-action{padding-right:1px;justify-content:center;display:flex}\n"] }]
94
- }], ctorParameters: () => [{ type: i1.CustomIconService }], propDecorators: { isViewOnly: [{
39
+ args: [{ changeDetection: ChangeDetectionStrategy.OnPush, selector: 'app-editor-toolbar', template: "<app-menu-dropdowns\n [isViewOnly]=\"isViewOnly\"\n [hasSelection]=\"hasSelection\"\n [clipboardData]=\"clipboardData\"\n [historyInfo]=\"historyInfo\"\n [styles]=\"styles\"\n (openFileFromDisk)=\"openFileFromDisk.emit($event)\"\n (addCustomElement)=\"addCustomElement.emit($event)\"\n (saveAs)=\"saveAs.emit()\"\n (print)=\"print.emit()\"\n (insertPageBreak)=\"insertPageBreak.emit()\"\n (createDocument)=\"createDocument.emit()\"\n (insertImage)=\"insertImage.emit($event)\"\n (rename)=\"rename.emit()\"\n (delete)=\"delete.emit()\"\n (openEditMenu)=\"openEditMenu.emit()\"\n (redo)=\"redo.emit()\"\n (undo)=\"undo.emit()\"\n (cutSelected)=\"cutSelected.emit()\"\n (copySelected)=\"copySelected.emit()\"\n (pasteClipboardData)=\"pasteClipboardData.emit()\"\n (selectAll)=\"selectAll.emit()\"\n (removeSelected)=\"removeSelected.emit()\"\n (insertLink)=\"insertLink.emit()\"\n (createElement)=\"createElement.emit($event)\"\n (changeParagraphStyle)=\"changeParagraphStyle.emit($event)\"\n (changeTextStyle)=\"changeTextStyle.emit($event)\"\n (setNumberingTemplateType)=\"setNumberingTemplateType.emit($event)\"\n (removeNumberings)=\"removeNumberings.emit()\"\n (insertTable)=\"insertTable.emit($event)\" />\n<app-toolbar-actions\n *ngIf=\"styles && showActions\"\n [isViewOnly]=\"isViewOnly\"\n [historyInfo]=\"historyInfo\"\n [styles]=\"styles\"\n (print)=\"print.emit()\"\n (redo)=\"redo.emit()\"\n (undo)=\"undo.emit()\"\n (changeParagraphStyle)=\"changeParagraphStyle.emit($event)\"\n (changeTextStyle)=\"changeTextStyle.emit($event)\"\n (setNumberingTemplateType)=\"setNumberingTemplateType.emit($event)\"\n (removeNumberings)=\"removeNumberings.emit()\"\n (createElement)=\"createElement.emit($event)\" />\n", styles: [":host ::ng-deep{display:flex;position:relative;width:100%;height:32px}app-toolbar-actions{display:flex;position:absolute;align-items:center;justify-content:center;width:100%;height:100%}\n"] }]
40
+ }], propDecorators: { showActions: [{
95
41
  type: Input
96
- }], styles: [{
42
+ }], isViewOnly: [{
43
+ type: Input
44
+ }], hasSelection: [{
45
+ type: Input
46
+ }], clipboardData: [{
97
47
  type: Input
98
48
  }], historyInfo: [{
99
49
  type: Input
100
- }], changeTextStyle: [{
50
+ }], styles: [{
51
+ type: Input
52
+ }], openFileFromDisk: [{
101
53
  type: Output
102
- }], changeParagraphStyle: [{
54
+ }], addCustomElement: [{
103
55
  type: Output
104
- }], setNumberingTemplateType: [{
56
+ }], saveAs: [{
105
57
  type: Output
106
- }], removeNumberings: [{
58
+ }], print: [{
59
+ type: Output
60
+ }], insertPageBreak: [{
61
+ type: Output
62
+ }], createDocument: [{
63
+ type: Output
64
+ }], insertImage: [{
65
+ type: Output
66
+ }], rename: [{
67
+ type: Output
68
+ }], delete: [{
69
+ type: Output
70
+ }], openEditMenu: [{
107
71
  type: Output
108
72
  }], redo: [{
109
73
  type: Output
110
74
  }], undo: [{
111
75
  type: Output
112
- }], print: [{
76
+ }], cutSelected: [{
77
+ type: Output
78
+ }], copySelected: [{
79
+ type: Output
80
+ }], pasteClipboardData: [{
81
+ type: Output
82
+ }], selectAll: [{
83
+ type: Output
84
+ }], removeSelected: [{
85
+ type: Output
86
+ }], insertLink: [{
87
+ type: Output
88
+ }], createElement: [{
89
+ type: Output
90
+ }], changeParagraphStyle: [{
91
+ type: Output
92
+ }], changeTextStyle: [{
93
+ type: Output
94
+ }], setNumberingTemplateType: [{
95
+ type: Output
96
+ }], removeNumberings: [{
97
+ type: Output
98
+ }], insertTable: [{
113
99
  type: Output
114
100
  }] } });
115
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLXRvb2xiYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LW5vZGVyL3NyYy9saWIvK3NoYXJlZC9lZGl0b3ItdG9vbGJhci9lZGl0b3ItdG9vbGJhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbm9kZXIvc3JjL2xpYi8rc2hhcmVkL2VkaXRvci10b29sYmFyL2VkaXRvci10b29sYmFyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFJaEcsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFHMUUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFJM0UsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDbkYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDOzs7Ozs7Ozs7OztBQVF0RSxNQUFNLE9BQU8sc0JBQXNCO0lBRy9CLElBQ0ksTUFBTSxDQUFDLEtBQXFCO1FBQzVCLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ3JCLElBQUksQ0FBQyxhQUFhLEdBQUcsbUJBQW1CLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ2hGLElBQUksQ0FBQyxxQkFBcUIsR0FBRyxtQkFBbUIsQ0FBQyx3QkFBd0IsQ0FBQyxLQUFLLENBQUMscUJBQXFCLENBQUMsQ0FBQztJQUMzRyxDQUFDO0lBQ0QsSUFBSSxNQUFNO1FBQ04sT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3hCLENBQUM7SUFHRCxJQUNJLFdBQVcsQ0FBQyxLQUFpQztRQUM3QyxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQyxJQUFJLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDakMsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQyxRQUFRLENBQUM7SUFDL0MsQ0FBQztJQXdCRCxZQUFvQixpQkFBb0M7UUFBcEMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQWQ5QyxvQkFBZSxHQUFHLElBQUksWUFBWSxFQUFrQixDQUFDO1FBRXJELHlCQUFvQixHQUFHLElBQUksWUFBWSxFQUF1QixDQUFDO1FBRS9ELDZCQUF3QixHQUFHLElBQUksWUFBWSxFQUF5QixDQUFDO1FBRXJFLHFCQUFnQixHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7UUFFNUMsU0FBSSxHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7UUFFaEMsU0FBSSxHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7UUFFaEMsVUFBSyxHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7UUFHdkMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ3RDLENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxJQUFZO1FBQzFCLElBQUksQ0FBQyw0QkFBNEIsQ0FBQyxJQUFJLGNBQWMsQ0FBQyxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDaEYsQ0FBQztJQUVELGVBQWUsQ0FBQyxJQUFZO1FBQ3hCLElBQUksQ0FBQyw0QkFBNEIsQ0FBQyxJQUFJLGNBQWMsQ0FBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDOUUsQ0FBQztJQUVELFdBQVcsQ0FBQyxJQUFhO1FBQ3JCLElBQUksQ0FBQyw0QkFBNEIsQ0FBQyxJQUFJLGNBQWMsQ0FBQyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQztJQUNwRSxDQUFDO0lBRUQsZ0JBQWdCLENBQUMsU0FBa0I7UUFDL0IsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxjQUFjLENBQUMsRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDakUsQ0FBQztJQUVELGFBQWEsQ0FBQyxNQUFlO1FBQ3pCLElBQUksQ0FBQyw0QkFBNEIsQ0FBQyxJQUFJLGNBQWMsQ0FBQyxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FBQztJQUN0RSxDQUFDO0lBRUQsZ0JBQWdCLENBQUMsS0FBYTtRQUMxQixJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxJQUFJLGNBQWMsQ0FBQyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDeEUsQ0FBQztJQUVELHFCQUFxQixDQUFDLEtBQWE7UUFDL0IsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxjQUFjLENBQUMsRUFBRSxjQUFjLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQzdFLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxTQUFvQjtRQUNqQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLElBQUksbUJBQW1CLENBQUMsRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDM0UsQ0FBQztJQUVELDBCQUEwQixDQUFDLFlBQW1DO1FBQzFELE1BQU0sY0FBYyxHQUFHLGtCQUFrQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxZQUFZLEtBQUssWUFBWSxDQUFDLENBQUMsTUFBTSxDQUFDO1FBQzVGLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVELGtCQUFrQjtRQUNkLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNqQyxDQUFDO0lBRU8sNEJBQTRCLENBQUMsS0FBcUI7UUFDdEQsTUFBTSxTQUFTLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsR0FBRyxLQUFLLEVBQUUsQ0FBQztRQUMvQyxNQUFNLE1BQU0sR0FBRyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUNqRCxNQUFNLElBQUksR0FBRyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUMzQyxNQUFNLFVBQVUsR0FBRyxHQUFHLE1BQU0sR0FBRyxJQUFJLEdBQUcsU0FBUyxDQUFDLFFBQVEsSUFBSSxpQkFBaUIsTUFBTSxTQUFTLENBQUMsVUFBVSxFQUFFLENBQUM7UUFFMUcsSUFBSSxRQUFRLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsRUFBRTtZQUNsQyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNqQyxPQUFPO1NBQ1Y7UUFFRCxRQUFRLENBQUMsS0FBSzthQUNULElBQUksQ0FBQyxVQUFVLENBQUM7YUFDaEIsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO2FBQzVDLEtBQUssQ0FBQyxHQUFHLEVBQUU7WUFDUiwrQkFBK0I7UUFDbkMsQ0FBQyxDQUFDLENBQUM7SUFDWCxDQUFDOzhHQXhHUSxzQkFBc0I7a0dBQXRCLHNCQUFzQixxWENyQm5DLDB3REEyQ0E7OzJGRHRCYSxzQkFBc0I7a0JBTmxDLFNBQVM7c0NBQ1csdUJBQXVCLENBQUMsTUFBTSxZQUNyQyxvQkFBb0I7c0ZBS3JCLFVBQVU7c0JBQWxCLEtBQUs7Z0JBR0YsTUFBTTtzQkFEVCxLQUFLO2dCQVlGLFdBQVc7c0JBRGQsS0FBSztnQkFjSSxlQUFlO3NCQUF4QixNQUFNO2dCQUVHLG9CQUFvQjtzQkFBN0IsTUFBTTtnQkFFRyx3QkFBd0I7c0JBQWpDLE1BQU07Z0JBRUcsZ0JBQWdCO3NCQUF6QixNQUFNO2dCQUVHLElBQUk7c0JBQWIsTUFBTTtnQkFFRyxJQUFJO3NCQUFiLE1BQU07Z0JBRUcsS0FBSztzQkFBZCxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEFsaWdubWVudCB9IGZyb20gJy4vZW51bXMvYWxpZ25tZW50LmVudW0nO1xuaW1wb3J0IHsgQ3VzdG9tSWNvblNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9jdXN0b20taWNvbi5zZXJ2aWNlJztcbmltcG9ydCB7IERFRkFVTFRfRk9OVF9TSVpFIH0gZnJvbSAnLi4vZWRpdG9yL2NvcmUvY29uc3RhbnRzL2VkaXRvci5jb25zdCc7XG5pbXBvcnQgeyBJVG9vbGJhclN0eWxlcyB9IGZyb20gJy4uL2VkaXRvci9jb3JlL2ludGVyZmFjZXMvdG9vbGJhci1zdHlsZXMuaW50ZXJmYWNlJztcbmltcG9ydCB7IE51bWJlcmluZ0xldmVsTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMvZ2VuZXJhdGVkL251bWJlcmluZy1sZXZlbC5tb2RlbCc7XG5pbXBvcnQgeyBOdW1iZXJpbmdUZW1wbGF0ZXMgfSBmcm9tICcuL2NvbnN0YW50cy9udW1iZXJpbmctdGVtcGxhdGVzLmNvbnN0JztcbmltcG9ydCB7IE51bWJlcmluZ1RlbXBsYXRlVHlwZSB9IGZyb20gJy4vZW51bXMvbnVtYmVyaW5nLXRlbXBsYXRlLXR5cGUuZW51bSc7XG5pbXBvcnQgeyBOdW1iZXJpbmdUeXBlIH0gZnJvbSAnLi9lbnVtcy9udW1iZXJpbmctdHlwZS5lbnVtJztcbmltcG9ydCB7IE9wZXJhdGlvbnNIaXN0b3J5SW5mb01vZGVsIH0gZnJvbSAnLi4vZWRpdG9yL29wZXJhdGlvbi1oaXN0b3J5L29wZXJhdGlvbnMtaGlzdG9yeS1pbmZvLm1vZGVsJztcbmltcG9ydCB7IFBhcmFncmFwaFN0eWxlTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMvZ2VuZXJhdGVkL3BhcmFncmFwaC1zdHlsZS5tb2RlbCc7XG5pbXBvcnQgeyBUZXh0U3R5bGVNb2RlbCB9IGZyb20gJy4uLy4uL21vZGVscy9nZW5lcmF0ZWQvdGV4dC1zdHlsZS5tb2RlbCc7XG5pbXBvcnQgeyBUb29sYmFyU3R5bGVzSGVscGVyIH0gZnJvbSAnLi9oZWxwZXJzL3Rvb2xiYXItc3R5bGVzLmhlbHBlcic7XG5cbkBDb21wb25lbnQoe1xuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHNlbGVjdG9yOiAnYXBwLWVkaXRvci10b29sYmFyJyxcbiAgICB0ZW1wbGF0ZVVybDogJ2VkaXRvci10b29sYmFyLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnZWRpdG9yLXRvb2xiYXIuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBFZGl0b3JUb29sYmFyQ29tcG9uZW50IHtcbiAgICBASW5wdXQoKSBpc1ZpZXdPbmx5OiBib29sZWFuO1xuXG4gICAgQElucHV0KClcbiAgICBzZXQgc3R5bGVzKHZhbHVlOiBJVG9vbGJhclN0eWxlcykge1xuICAgICAgICB0aGlzLl9zdHlsZXMgPSB2YWx1ZTtcbiAgICAgICAgdGhpcy5udW1iZXJpbmdUeXBlID0gVG9vbGJhclN0eWxlc0hlbHBlci5nZXROdW1iZXJpbmdUeXBlKHZhbHVlLmlzQnVsbGV0TWFya2VyKTtcbiAgICAgICAgdGhpcy5udW1iZXJpbmdUZW1wbGF0ZVR5cGUgPSBUb29sYmFyU3R5bGVzSGVscGVyLmdldE51bWJlcmluZ1RlbXBsYXRlVHlwZSh2YWx1ZS5udW1iZXJpbmdMZXZlbHNTdHlsZXMpO1xuICAgIH1cbiAgICBnZXQgc3R5bGVzKCk6IElUb29sYmFyU3R5bGVzIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3N0eWxlcztcbiAgICB9XG4gICAgcHJpdmF0ZSBfc3R5bGVzOiBJVG9vbGJhclN0eWxlcztcblxuICAgIEBJbnB1dCgpXG4gICAgc2V0IGhpc3RvcnlJbmZvKHZhbHVlOiBPcGVyYXRpb25zSGlzdG9yeUluZm9Nb2RlbCkge1xuICAgICAgICB0aGlzLmNhblVuZG8gPSB2YWx1ZS5zdGVwICE9PSAtMTtcbiAgICAgICAgdGhpcy5jYW5SZWRvID0gdmFsdWUuc3RlcCA8IHZhbHVlLmxhc3RTdGVwO1xuICAgIH1cblxuICAgIGNhblVuZG86IGJvb2xlYW47XG5cbiAgICBjYW5SZWRvOiBib29sZWFuO1xuXG4gICAgbnVtYmVyaW5nVHlwZTogTnVtYmVyaW5nVHlwZSB8IG51bGw7XG5cbiAgICBudW1iZXJpbmdUZW1wbGF0ZVR5cGU6IE51bWJlcmluZ1RlbXBsYXRlVHlwZSB8IG51bGw7XG5cbiAgICBAT3V0cHV0KCkgY2hhbmdlVGV4dFN0eWxlID0gbmV3IEV2ZW50RW1pdHRlcjxUZXh0U3R5bGVNb2RlbD4oKTtcblxuICAgIEBPdXRwdXQoKSBjaGFuZ2VQYXJhZ3JhcGhTdHlsZSA9IG5ldyBFdmVudEVtaXR0ZXI8UGFyYWdyYXBoU3R5bGVNb2RlbD4oKTtcblxuICAgIEBPdXRwdXQoKSBzZXROdW1iZXJpbmdUZW1wbGF0ZVR5cGUgPSBuZXcgRXZlbnRFbWl0dGVyPE51bWJlcmluZ0xldmVsTW9kZWxbXT4oKTtcblxuICAgIEBPdXRwdXQoKSByZW1vdmVOdW1iZXJpbmdzID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gICAgQE91dHB1dCgpIHJlZG8gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgICBAT3V0cHV0KCkgdW5kbyA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICAgIEBPdXRwdXQoKSBwcmludCA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgY3VzdG9tSWNvblNlcnZpY2U6IEN1c3RvbUljb25TZXJ2aWNlKSB7XG4gICAgICAgIHRoaXMuY3VzdG9tSWNvblNlcnZpY2UucmVnaXN0ZXIoKTtcbiAgICB9XG5cbiAgICBvbkFwcGx5Rm9udEZhbWlseShmb250OiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jaGVja0ZvbnRMb2FkZWRBbmRBcHBseVN0eWxlKG5ldyBUZXh0U3R5bGVNb2RlbCh7IGZvbnRGYW1pbHk6IGZvbnQgfSkpO1xuICAgIH1cblxuICAgIG9uQXBwbHlGb250U2l6ZShzaXplOiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jaGVja0ZvbnRMb2FkZWRBbmRBcHBseVN0eWxlKG5ldyBUZXh0U3R5bGVNb2RlbCh7IGZvbnRTaXplOiBzaXplIH0pKTtcbiAgICB9XG5cbiAgICBvbkFwcGx5Qm9sZChib2xkOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY2hlY2tGb250TG9hZGVkQW5kQXBwbHlTdHlsZShuZXcgVGV4dFN0eWxlTW9kZWwoeyBib2xkIH0pKTtcbiAgICB9XG5cbiAgICBvbkFwcGx5VW5kZXJsaW5lKHVuZGVybGluZTogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLmNoYW5nZVRleHRTdHlsZS5lbWl0KG5ldyBUZXh0U3R5bGVNb2RlbCh7IHVuZGVybGluZSB9KSk7XG4gICAgfVxuXG4gICAgb25BcHBseUl0YWxpYyhpdGFsaWM6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jaGVja0ZvbnRMb2FkZWRBbmRBcHBseVN0eWxlKG5ldyBUZXh0U3R5bGVNb2RlbCh7IGl0YWxpYyB9KSk7XG4gICAgfVxuXG4gICAgb25BcHBseUZvbnRDb2xvcihjb2xvcjogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY2hhbmdlVGV4dFN0eWxlLmVtaXQobmV3IFRleHRTdHlsZU1vZGVsKHsgZm9udENvbG9yOiBjb2xvciB9KSk7XG4gICAgfVxuXG4gICAgb25BcHBseUhpZ2hsaWdodENvbG9yKGNvbG9yOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jaGFuZ2VUZXh0U3R5bGUuZW1pdChuZXcgVGV4dFN0eWxlTW9kZWwoeyBoaWdobGlnaHRDb2xvcjogY29sb3IgfSkpO1xuICAgIH1cblxuICAgIG9uQXBwbHlBbGlnbm1lbnQoYWxpZ25tZW50OiBBbGlnbm1lbnQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jaGFuZ2VQYXJhZ3JhcGhTdHlsZS5lbWl0KG5ldyBQYXJhZ3JhcGhTdHlsZU1vZGVsKHsgYWxpZ25tZW50IH0pKTtcbiAgICB9XG5cbiAgICBvblNldE51bWJlcmluZ1RlbXBsYXRlVHlwZSh0ZW1wbGF0ZVR5cGU6IE51bWJlcmluZ1RlbXBsYXRlVHlwZSk6IHZvaWQge1xuICAgICAgICBjb25zdCB0ZW1wbGF0ZUxldmVscyA9IE51bWJlcmluZ1RlbXBsYXRlcy5maW5kKHggPT4geC50ZW1wbGF0ZVR5cGUgPT09IHRlbXBsYXRlVHlwZSkubGV2ZWxzO1xuICAgICAgICB0aGlzLnNldE51bWJlcmluZ1RlbXBsYXRlVHlwZS5lbWl0KHRlbXBsYXRlTGV2ZWxzKTtcbiAgICB9XG5cbiAgICBvblJlbW92ZU51bWJlcmluZ3MoKTogdm9pZCB7XG4gICAgICAgIHRoaXMucmVtb3ZlTnVtYmVyaW5ncy5lbWl0KCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjaGVja0ZvbnRMb2FkZWRBbmRBcHBseVN0eWxlKHN0eWxlOiBUZXh0U3R5bGVNb2RlbCk6IHZvaWQge1xuICAgICAgICBjb25zdCBuZXdTdHlsZXMgPSB7IC4uLnRoaXMuc3R5bGVzLCAuLi5zdHlsZSB9O1xuICAgICAgICBjb25zdCBpdGFsaWMgPSBuZXdTdHlsZXMuaXRhbGljID8gJ2l0YWxpYyAnIDogJyc7XG4gICAgICAgIGNvbnN0IGJvbGQgPSBuZXdTdHlsZXMuYm9sZCA/ICdib2xkICcgOiAnJztcbiAgICAgICAgY29uc3QgZm9udFN0eWxlcyA9IGAke2l0YWxpY30ke2JvbGR9JHtuZXdTdHlsZXMuZm9udFNpemUgPz8gREVGQVVMVF9GT05UX1NJWkV9cHQgJHtuZXdTdHlsZXMuZm9udEZhbWlseX1gO1xuXG4gICAgICAgIGlmIChkb2N1bWVudC5mb250cy5jaGVjayhmb250U3R5bGVzKSkge1xuICAgICAgICAgICAgdGhpcy5jaGFuZ2VUZXh0U3R5bGUuZW1pdChzdHlsZSk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBkb2N1bWVudC5mb250c1xuICAgICAgICAgICAgLmxvYWQoZm9udFN0eWxlcylcbiAgICAgICAgICAgIC50aGVuKCgpID0+IHRoaXMuY2hhbmdlVGV4dFN0eWxlLmVtaXQoc3R5bGUpKVxuICAgICAgICAgICAgLmNhdGNoKCgpID0+IHtcbiAgICAgICAgICAgICAgICAvLyBjb250aW51ZSByZWdhcmRsZXNzIG9mIGVycm9yXG4gICAgICAgICAgICB9KTtcbiAgICB9XG59XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwic3R5bGVzXCI+XG4gICAgPGFwcC11bmRvLXJlZG9cbiAgICAgICAgW2NhblVuZG9dPVwiY2FuVW5kb1wiXG4gICAgICAgIFtjYW5SZWRvXT1cImNhblJlZG9cIlxuICAgICAgICAodW5kbyk9XCJ1bmRvLmVtaXQoKVwiXG4gICAgICAgIChyZWRvKT1cInJlZG8uZW1pdCgpXCI+PC9hcHAtdW5kby1yZWRvPlxuICAgIDxhcHAtcHJpbnQgKHByaW50KT1cInByaW50LmVtaXQoKVwiPjwvYXBwLXByaW50PlxuICAgIDxkaXYgY2xhc3M9XCJzZXBhcmF0b3JcIj48L2Rpdj5cbiAgICA8YXBwLWZvbnRcbiAgICAgICAgW2lzRGlzYWJsZWRdPVwiaXNWaWV3T25seVwiXG4gICAgICAgIFtzdHlsZXNdPVwic3R5bGVzXCJcbiAgICAgICAgKHNlbGVjdEZvbnQpPVwib25BcHBseUZvbnRGYW1pbHkoJGV2ZW50KVwiPjwvYXBwLWZvbnQ+XG4gICAgPGRpdiBjbGFzcz1cInNlcGFyYXRvclwiPjwvZGl2PlxuICAgIDxhcHAtZm9udC1zaXplXG4gICAgICAgIFtpc0Rpc2FibGVkXT1cImlzVmlld09ubHlcIlxuICAgICAgICBbZm9udFNpemVdPVwic3R5bGVzLmZvbnRTaXplXCJcbiAgICAgICAgKHNlbGVjdEZvbnRTaXplKT1cIm9uQXBwbHlGb250U2l6ZSgkZXZlbnQpXCI+PC9hcHAtZm9udC1zaXplPlxuICAgIDxkaXYgY2xhc3M9XCJzZXBhcmF0b3JcIj48L2Rpdj5cbiAgICA8YXBwLWZvbnQtc3R5bGVcbiAgICAgICAgW2lzRGlzYWJsZWRdPVwiaXNWaWV3T25seVwiXG4gICAgICAgIFtib2xkXT1cInN0eWxlcy5ib2xkXCJcbiAgICAgICAgW2l0YWxpY109XCJzdHlsZXMuaXRhbGljXCJcbiAgICAgICAgW3VuZGVybGluZV09XCJzdHlsZXMudW5kZXJsaW5lXCJcbiAgICAgICAgW2ZvbnRDb2xvcl09XCJzdHlsZXMuZm9udENvbG9yXCJcbiAgICAgICAgW2hpZ2hsaWdodENvbG9yXT1cInN0eWxlcy5oaWdobGlnaHRDb2xvclwiXG4gICAgICAgIChzZWxlY3RGb250Q29sb3IpPVwib25BcHBseUZvbnRDb2xvcigkZXZlbnQpXCJcbiAgICAgICAgKHRvZ2dsZUJvbGQpPVwib25BcHBseUJvbGQoJGV2ZW50KVwiXG4gICAgICAgICh0b2dnbGVJdGFsaWMpPVwib25BcHBseUl0YWxpYygkZXZlbnQpXCJcbiAgICAgICAgKHRvZ2dsZVVuZGVybGluZSk9XCJvbkFwcGx5VW5kZXJsaW5lKCRldmVudClcIlxuICAgICAgICAoc2VsZWN0SGlnaGxpZ2h0Q29sb3IpPVwib25BcHBseUhpZ2hsaWdodENvbG9yKCRldmVudClcIj48L2FwcC1mb250LXN0eWxlPlxuICAgIDxkaXYgY2xhc3M9XCJzZXBhcmF0b3JcIj48L2Rpdj5cbiAgICA8YXBwLWZvcm1hdFxuICAgICAgICBbaXNEaXNhYmxlZF09XCJpc1ZpZXdPbmx5XCJcbiAgICAgICAgW2FsaWdubWVudF09XCJzdHlsZXMuYWxpZ25tZW50XCJcbiAgICAgICAgKHNlbGVjdEFsaWdubWVudCk9XCJvbkFwcGx5QWxpZ25tZW50KCRldmVudClcIj48L2FwcC1mb3JtYXQ+XG4gICAgPGRpdiBjbGFzcz1cInNlcGFyYXRvclwiPjwvZGl2PlxuICAgIDxhcHAtbnVtYmVyaW5nXG4gICAgICAgIFtpc0Rpc2FibGVkXT1cImlzVmlld09ubHlcIlxuICAgICAgICBbc2VsZWN0ZWROdW1iZXJpbmdUeXBlXT1cIm51bWJlcmluZ1R5cGVcIlxuICAgICAgICBbc2VsZWN0ZWROdW1iZXJpbmdUZW1wbGF0ZV09XCJudW1iZXJpbmdUZW1wbGF0ZVR5cGVcIlxuICAgICAgICAoc2VsZWN0TnVtYmVyaW5nVGVtcGxhdGUpPVwib25TZXROdW1iZXJpbmdUZW1wbGF0ZVR5cGUoJGV2ZW50KVwiXG4gICAgICAgIChyZW1vdmVOdW1iZXJpbmdzKT1cIm9uUmVtb3ZlTnVtYmVyaW5ncygpXCI+PC9hcHAtbnVtYmVyaW5nPlxuPC9uZy1jb250YWluZXI+XG4iXX0=
101
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLXRvb2xiYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LW5vZGVyL3NyYy9saWIvK3NoYXJlZC9lZGl0b3ItdG9vbGJhci9lZGl0b3ItdG9vbGJhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbm9kZXIvc3JjL2xpYi8rc2hhcmVkL2VkaXRvci10b29sYmFyL2VkaXRvci10b29sYmFyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7O0FBZWhHLE1BQU0sT0FBTyxzQkFBc0I7SUFObkM7UUFPYSxnQkFBVyxHQUFHLElBQUksQ0FBQztRQVlsQixxQkFBZ0IsR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO1FBRTNDLHFCQUFnQixHQUFHLElBQUksWUFBWSxFQUFvQixDQUFDO1FBRXhELFdBQU0sR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBRTVCLFVBQUssR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO1FBRWpDLG9CQUFlLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUUxQyxtQkFBYyxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7UUFFekMsZ0JBQVcsR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO1FBRXRDLFdBQU0sR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBRTVCLFdBQU0sR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO1FBRXBDLGlCQUFZLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUVsQyxTQUFJLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUVoQyxTQUFJLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUVoQyxnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFFakMsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBRWxDLHVCQUFrQixHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFFeEMsY0FBUyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFFL0IsbUJBQWMsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBRXBDLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBRWhDLGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQW9CLENBQUM7UUFFckQseUJBQW9CLEdBQUcsSUFBSSxZQUFZLEVBQXVCLENBQUM7UUFFL0Qsb0JBQWUsR0FBRyxJQUFJLFlBQVksRUFBa0IsQ0FBQztRQUVyRCw2QkFBd0IsR0FBRyxJQUFJLFlBQVksRUFBeUIsQ0FBQztRQUVyRSxxQkFBZ0IsR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO1FBRTVDLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQXFDLENBQUM7S0FDakY7OEdBNURZLHNCQUFzQjtrR0FBdEIsc0JBQXNCLHE4QkNmbkMsZ3pEQTJDQTs7MkZENUJhLHNCQUFzQjtrQkFObEMsU0FBUztzQ0FDVyx1QkFBdUIsQ0FBQyxNQUFNLFlBQ3JDLG9CQUFvQjs4QkFLckIsV0FBVztzQkFBbkIsS0FBSztnQkFFRyxVQUFVO3NCQUFsQixLQUFLO2dCQUVHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBRUcsYUFBYTtzQkFBckIsS0FBSztnQkFFRyxXQUFXO3NCQUFuQixLQUFLO2dCQUVHLE1BQU07c0JBQWQsS0FBSztnQkFFSSxnQkFBZ0I7c0JBQXpCLE1BQU07Z0JBRUcsZ0JBQWdCO3NCQUF6QixNQUFNO2dCQUVHLE1BQU07c0JBQWYsTUFBTTtnQkFFRyxLQUFLO3NCQUFkLE1BQU07Z0JBRUcsZUFBZTtzQkFBeEIsTUFBTTtnQkFFRyxjQUFjO3NCQUF2QixNQUFNO2dCQUVHLFdBQVc7c0JBQXBCLE1BQU07Z0JBRUcsTUFBTTtzQkFBZixNQUFNO2dCQUVHLE1BQU07c0JBQWYsTUFBTTtnQkFFRyxZQUFZO3NCQUFyQixNQUFNO2dCQUVHLElBQUk7c0JBQWIsTUFBTTtnQkFFRyxJQUFJO3NCQUFiLE1BQU07Z0JBRUcsV0FBVztzQkFBcEIsTUFBTTtnQkFFRyxZQUFZO3NCQUFyQixNQUFNO2dCQUVHLGtCQUFrQjtzQkFBM0IsTUFBTTtnQkFFRyxTQUFTO3NCQUFsQixNQUFNO2dCQUVHLGNBQWM7c0JBQXZCLE1BQU07Z0JBRUcsVUFBVTtzQkFBbkIsTUFBTTtnQkFFRyxhQUFhO3NCQUF0QixNQUFNO2dCQUVHLG9CQUFvQjtzQkFBN0IsTUFBTTtnQkFFRyxlQUFlO3NCQUF4QixNQUFNO2dCQUVHLHdCQUF3QjtzQkFBakMsTUFBTTtnQkFFRyxnQkFBZ0I7c0JBQXpCLE1BQU07Z0JBRUcsV0FBVztzQkFBcEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBFbGVtZW50RGF0YU1vZGVsIH0gZnJvbSAnLi4vZWRpdG9yL2N1c3RvbS1jb21wb25lbnRzL2V4dGVybmFsLWVsZW1lbnQvbW9kZWxzL2VsZW1lbnQtZGF0YS5tb2RlbCc7XG5pbXBvcnQgeyBJVG9vbGJhclN0eWxlcyB9IGZyb20gJy4uL2VkaXRvci9jb3JlL2ludGVyZmFjZXMvdG9vbGJhci1zdHlsZXMuaW50ZXJmYWNlJztcbmltcG9ydCB7IE51bWJlcmluZ0xldmVsTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMvZ2VuZXJhdGVkL251bWJlcmluZy1sZXZlbC5tb2RlbCc7XG5pbXBvcnQgeyBPcGVyYXRpb25zSGlzdG9yeUluZm9Nb2RlbCB9IGZyb20gJy4uL2VkaXRvci9vcGVyYXRpb24taGlzdG9yeS9vcGVyYXRpb25zLWhpc3RvcnktaW5mby5tb2RlbCc7XG5pbXBvcnQgeyBQYXJhZ3JhcGhTdHlsZU1vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2dlbmVyYXRlZC9wYXJhZ3JhcGgtc3R5bGUubW9kZWwnO1xuaW1wb3J0IHsgVGV4dFN0eWxlTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMvZ2VuZXJhdGVkL3RleHQtc3R5bGUubW9kZWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBzZWxlY3RvcjogJ2FwcC1lZGl0b3ItdG9vbGJhcicsXG4gICAgdGVtcGxhdGVVcmw6ICdlZGl0b3ItdG9vbGJhci5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJ2VkaXRvci10b29sYmFyLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgRWRpdG9yVG9vbGJhckNvbXBvbmVudCB7XG4gICAgQElucHV0KCkgc2hvd0FjdGlvbnMgPSB0cnVlO1xuXG4gICAgQElucHV0KCkgaXNWaWV3T25seTogYm9vbGVhbjtcblxuICAgIEBJbnB1dCgpIGhhc1NlbGVjdGlvbjogYm9vbGVhbjtcblxuICAgIEBJbnB1dCgpIGNsaXBib2FyZERhdGE6IHN0cmluZztcblxuICAgIEBJbnB1dCgpIGhpc3RvcnlJbmZvOiBPcGVyYXRpb25zSGlzdG9yeUluZm9Nb2RlbDtcblxuICAgIEBJbnB1dCgpIHN0eWxlczogSVRvb2xiYXJTdHlsZXM7XG5cbiAgICBAT3V0cHV0KCkgb3BlbkZpbGVGcm9tRGlzayA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuXG4gICAgQE91dHB1dCgpIGFkZEN1c3RvbUVsZW1lbnQgPSBuZXcgRXZlbnRFbWl0dGVyPEVsZW1lbnREYXRhTW9kZWw+KCk7XG5cbiAgICBAT3V0cHV0KCkgc2F2ZUFzID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gICAgQE91dHB1dCgpIHByaW50ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gICAgQE91dHB1dCgpIGluc2VydFBhZ2VCcmVhayA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuXG4gICAgQE91dHB1dCgpIGNyZWF0ZURvY3VtZW50ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgICBAT3V0cHV0KCkgaW5zZXJ0SW1hZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICAgIEBPdXRwdXQoKSByZW5hbWUgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgICBAT3V0cHV0KCkgZGVsZXRlID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG5cbiAgICBAT3V0cHV0KCkgb3BlbkVkaXRNZW51ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gICAgQE91dHB1dCgpIHJlZG8gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgICBAT3V0cHV0KCkgdW5kbyA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICAgIEBPdXRwdXQoKSBjdXRTZWxlY3RlZCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAgIEBPdXRwdXQoKSBjb3B5U2VsZWN0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgICBAT3V0cHV0KCkgcGFzdGVDbGlwYm9hcmREYXRhID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gICAgQE91dHB1dCgpIHNlbGVjdEFsbCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAgIEBPdXRwdXQoKSByZW1vdmVTZWxlY3RlZCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAgIEBPdXRwdXQoKSBpbnNlcnRMaW5rID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gICAgQE91dHB1dCgpIGNyZWF0ZUVsZW1lbnQgPSBuZXcgRXZlbnRFbWl0dGVyPEVsZW1lbnREYXRhTW9kZWw+KCk7XG5cbiAgICBAT3V0cHV0KCkgY2hhbmdlUGFyYWdyYXBoU3R5bGUgPSBuZXcgRXZlbnRFbWl0dGVyPFBhcmFncmFwaFN0eWxlTW9kZWw+KCk7XG5cbiAgICBAT3V0cHV0KCkgY2hhbmdlVGV4dFN0eWxlID0gbmV3IEV2ZW50RW1pdHRlcjxUZXh0U3R5bGVNb2RlbD4oKTtcblxuICAgIEBPdXRwdXQoKSBzZXROdW1iZXJpbmdUZW1wbGF0ZVR5cGUgPSBuZXcgRXZlbnRFbWl0dGVyPE51bWJlcmluZ0xldmVsTW9kZWxbXT4oKTtcblxuICAgIEBPdXRwdXQoKSByZW1vdmVOdW1iZXJpbmdzID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gICAgQE91dHB1dCgpIGluc2VydFRhYmxlID0gbmV3IEV2ZW50RW1pdHRlcjx7IHJvd3M6IG51bWJlcjsgY29sdW1uczogbnVtYmVyIH0+KCk7XG59XG4iLCI8YXBwLW1lbnUtZHJvcGRvd25zXG4gICAgW2lzVmlld09ubHldPVwiaXNWaWV3T25seVwiXG4gICAgW2hhc1NlbGVjdGlvbl09XCJoYXNTZWxlY3Rpb25cIlxuICAgIFtjbGlwYm9hcmREYXRhXT1cImNsaXBib2FyZERhdGFcIlxuICAgIFtoaXN0b3J5SW5mb109XCJoaXN0b3J5SW5mb1wiXG4gICAgW3N0eWxlc109XCJzdHlsZXNcIlxuICAgIChvcGVuRmlsZUZyb21EaXNrKT1cIm9wZW5GaWxlRnJvbURpc2suZW1pdCgkZXZlbnQpXCJcbiAgICAoYWRkQ3VzdG9tRWxlbWVudCk9XCJhZGRDdXN0b21FbGVtZW50LmVtaXQoJGV2ZW50KVwiXG4gICAgKHNhdmVBcyk9XCJzYXZlQXMuZW1pdCgpXCJcbiAgICAocHJpbnQpPVwicHJpbnQuZW1pdCgpXCJcbiAgICAoaW5zZXJ0UGFnZUJyZWFrKT1cImluc2VydFBhZ2VCcmVhay5lbWl0KClcIlxuICAgIChjcmVhdGVEb2N1bWVudCk9XCJjcmVhdGVEb2N1bWVudC5lbWl0KClcIlxuICAgIChpbnNlcnRJbWFnZSk9XCJpbnNlcnRJbWFnZS5lbWl0KCRldmVudClcIlxuICAgIChyZW5hbWUpPVwicmVuYW1lLmVtaXQoKVwiXG4gICAgKGRlbGV0ZSk9XCJkZWxldGUuZW1pdCgpXCJcbiAgICAob3BlbkVkaXRNZW51KT1cIm9wZW5FZGl0TWVudS5lbWl0KClcIlxuICAgIChyZWRvKT1cInJlZG8uZW1pdCgpXCJcbiAgICAodW5kbyk9XCJ1bmRvLmVtaXQoKVwiXG4gICAgKGN1dFNlbGVjdGVkKT1cImN1dFNlbGVjdGVkLmVtaXQoKVwiXG4gICAgKGNvcHlTZWxlY3RlZCk9XCJjb3B5U2VsZWN0ZWQuZW1pdCgpXCJcbiAgICAocGFzdGVDbGlwYm9hcmREYXRhKT1cInBhc3RlQ2xpcGJvYXJkRGF0YS5lbWl0KClcIlxuICAgIChzZWxlY3RBbGwpPVwic2VsZWN0QWxsLmVtaXQoKVwiXG4gICAgKHJlbW92ZVNlbGVjdGVkKT1cInJlbW92ZVNlbGVjdGVkLmVtaXQoKVwiXG4gICAgKGluc2VydExpbmspPVwiaW5zZXJ0TGluay5lbWl0KClcIlxuICAgIChjcmVhdGVFbGVtZW50KT1cImNyZWF0ZUVsZW1lbnQuZW1pdCgkZXZlbnQpXCJcbiAgICAoY2hhbmdlUGFyYWdyYXBoU3R5bGUpPVwiY2hhbmdlUGFyYWdyYXBoU3R5bGUuZW1pdCgkZXZlbnQpXCJcbiAgICAoY2hhbmdlVGV4dFN0eWxlKT1cImNoYW5nZVRleHRTdHlsZS5lbWl0KCRldmVudClcIlxuICAgIChzZXROdW1iZXJpbmdUZW1wbGF0ZVR5cGUpPVwic2V0TnVtYmVyaW5nVGVtcGxhdGVUeXBlLmVtaXQoJGV2ZW50KVwiXG4gICAgKHJlbW92ZU51bWJlcmluZ3MpPVwicmVtb3ZlTnVtYmVyaW5ncy5lbWl0KClcIlxuICAgIChpbnNlcnRUYWJsZSk9XCJpbnNlcnRUYWJsZS5lbWl0KCRldmVudClcIiAvPlxuPGFwcC10b29sYmFyLWFjdGlvbnNcbiAgICAqbmdJZj1cInN0eWxlcyAmJiBzaG93QWN0aW9uc1wiXG4gICAgW2lzVmlld09ubHldPVwiaXNWaWV3T25seVwiXG4gICAgW2hpc3RvcnlJbmZvXT1cImhpc3RvcnlJbmZvXCJcbiAgICBbc3R5bGVzXT1cInN0eWxlc1wiXG4gICAgKHByaW50KT1cInByaW50LmVtaXQoKVwiXG4gICAgKHJlZG8pPVwicmVkby5lbWl0KClcIlxuICAgICh1bmRvKT1cInVuZG8uZW1pdCgpXCJcbiAgICAoY2hhbmdlUGFyYWdyYXBoU3R5bGUpPVwiY2hhbmdlUGFyYWdyYXBoU3R5bGUuZW1pdCgkZXZlbnQpXCJcbiAgICAoY2hhbmdlVGV4dFN0eWxlKT1cImNoYW5nZVRleHRTdHlsZS5lbWl0KCRldmVudClcIlxuICAgIChzZXROdW1iZXJpbmdUZW1wbGF0ZVR5cGUpPVwic2V0TnVtYmVyaW5nVGVtcGxhdGVUeXBlLmVtaXQoJGV2ZW50KVwiXG4gICAgKHJlbW92ZU51bWJlcmluZ3MpPVwicmVtb3ZlTnVtYmVyaW5ncy5lbWl0KClcIlxuICAgIChjcmVhdGVFbGVtZW50KT1cImNyZWF0ZUVsZW1lbnQuZW1pdCgkZXZlbnQpXCIgLz5cbiJdfQ==
@@ -18,8 +18,11 @@ import { FontSizeComponent } from './font-size/font-size.component';
18
18
  import { FontStyleComponent } from './font-style/font-style.component';
19
19
  import { FormatComponent } from './format/format.component';
20
20
  import { HeadingComponent } from './heading/heading.component';
21
+ import { InsertTableComponent } from '../insert-table/insert-table.component';
22
+ import { MenuDropdownsComponent } from './menu-dropdowns/menu-dropdowns.component';
21
23
  import { NumberingComponent } from './numbering/numbering.component';
22
24
  import { PrintComponent } from './print/print.component';
25
+ import { ToolbarActionsComponent } from './toolbar-actions/toolbar-actions.component';
23
26
  import { UndoRedoComponent } from './undo-redo/undo-redo.component';
24
27
  import { ZoomComponent } from './zoom/zoom.component';
25
28
  import * as i0 from "@angular/core";
@@ -37,11 +40,14 @@ export class EditorToolbarModule {
37
40
  FormatComponent,
38
41
  HeadingComponent,
39
42
  HeadingComponent,
43
+ MenuDropdownsComponent,
40
44
  NumberingComponent,
41
45
  PrintComponent,
46
+ ToolbarActionsComponent,
42
47
  UndoRedoComponent,
43
48
  ZoomComponent], imports: [CommonModule,
44
49
  FormsModule,
50
+ InsertTableComponent,
45
51
  MatAutocompleteModule,
46
52
  MatButtonModule,
47
53
  MatButtonToggleModule,
@@ -54,6 +60,7 @@ export class EditorToolbarModule {
54
60
  ReactiveFormsModule], exports: [EditorToolbarComponent] }); }
55
61
  static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: EditorToolbarModule, providers: [CustomIconService], imports: [CommonModule,
56
62
  FormsModule,
63
+ InsertTableComponent,
57
64
  MatAutocompleteModule,
58
65
  MatButtonModule,
59
66
  MatButtonToggleModule,
@@ -81,14 +88,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImpor
81
88
  FormatComponent,
82
89
  HeadingComponent,
83
90
  HeadingComponent,
91
+ MenuDropdownsComponent,
84
92
  NumberingComponent,
85
93
  PrintComponent,
94
+ ToolbarActionsComponent,
86
95
  UndoRedoComponent,
87
96
  ZoomComponent
88
97
  ],
89
98
  imports: [
90
99
  CommonModule,
91
100
  FormsModule,
101
+ InsertTableComponent,
92
102
  MatAutocompleteModule,
93
103
  MatButtonModule,
94
104
  MatButtonToggleModule,
@@ -104,4 +114,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImpor
104
114
  exports: [EditorToolbarComponent]
105
115
  }]
106
116
  }] });
107
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLXRvb2xiYXIubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LW5vZGVyL3NyYy9saWIvK3NoYXJlZC9lZGl0b3ItdG9vbGJhci9lZGl0b3ItdG9vbGJhci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN2RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDeEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzdELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUU3QyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUM3RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNwRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNwRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDdEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDcEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDdkUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzVELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQy9ELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNwRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7O0FBc0N0RCxNQUFNLE9BQU8sbUJBQW1COzhHQUFuQixtQkFBbUI7K0dBQW5CLG1CQUFtQixpQkFsQ3hCLG9CQUFvQjtZQUNwQixzQkFBc0I7WUFDdEIsYUFBYTtZQUNiLGFBQWE7WUFDYixpQkFBaUI7WUFDakIsaUJBQWlCO1lBQ2pCLGtCQUFrQjtZQUNsQixrQkFBa0I7WUFDbEIsZUFBZTtZQUNmLGVBQWU7WUFDZixnQkFBZ0I7WUFDaEIsZ0JBQWdCO1lBQ2hCLGtCQUFrQjtZQUNsQixjQUFjO1lBQ2QsaUJBQWlCO1lBQ2pCLGFBQWEsYUFHYixZQUFZO1lBQ1osV0FBVztZQUNYLHFCQUFxQjtZQUNyQixlQUFlO1lBQ2YscUJBQXFCO1lBQ3JCLGFBQWE7WUFDYixjQUFjO1lBQ2QsYUFBYTtZQUNiLGVBQWU7WUFDZixnQkFBZ0I7WUFDaEIsZUFBZTtZQUNmLG1CQUFtQixhQUdiLHNCQUFzQjsrR0FFdkIsbUJBQW1CLGFBSGpCLENBQUMsaUJBQWlCLENBQUMsWUFiMUIsWUFBWTtZQUNaLFdBQVc7WUFDWCxxQkFBcUI7WUFDckIsZUFBZTtZQUNmLHFCQUFxQjtZQUNyQixhQUFhO1lBQ2IsY0FBYztZQUNkLGFBQWE7WUFDYixlQUFlO1lBQ2YsZ0JBQWdCO1lBQ2hCLGVBQWU7WUFDZixtQkFBbUI7OzJGQUtkLG1CQUFtQjtrQkFwQy9CLFFBQVE7bUJBQUM7b0JBQ04sWUFBWSxFQUFFO3dCQUNWLG9CQUFvQjt3QkFDcEIsc0JBQXNCO3dCQUN0QixhQUFhO3dCQUNiLGFBQWE7d0JBQ2IsaUJBQWlCO3dCQUNqQixpQkFBaUI7d0JBQ2pCLGtCQUFrQjt3QkFDbEIsa0JBQWtCO3dCQUNsQixlQUFlO3dCQUNmLGVBQWU7d0JBQ2YsZ0JBQWdCO3dCQUNoQixnQkFBZ0I7d0JBQ2hCLGtCQUFrQjt3QkFDbEIsY0FBYzt3QkFDZCxpQkFBaUI7d0JBQ2pCLGFBQWE7cUJBQ2hCO29CQUNELE9BQU8sRUFBRTt3QkFDTCxZQUFZO3dCQUNaLFdBQVc7d0JBQ1gscUJBQXFCO3dCQUNyQixlQUFlO3dCQUNmLHFCQUFxQjt3QkFDckIsYUFBYTt3QkFDYixjQUFjO3dCQUNkLGFBQWE7d0JBQ2IsZUFBZTt3QkFDZixnQkFBZ0I7d0JBQ2hCLGVBQWU7d0JBQ2YsbUJBQW1CO3FCQUN0QjtvQkFDRCxTQUFTLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQztvQkFDOUIsT0FBTyxFQUFFLENBQUMsc0JBQXNCLENBQUM7aUJBQ3BDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTWF0QXV0b2NvbXBsZXRlTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYXV0b2NvbXBsZXRlJztcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XG5pbXBvcnQgeyBNYXRCdXR0b25Ub2dnbGVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24tdG9nZ2xlJztcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IE1hdElucHV0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xuaW1wb3J0IHsgTWF0TWVudU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL21lbnUnO1xuaW1wb3J0IHsgTWF0U2VsZWN0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2VsZWN0JztcbmltcG9ydCB7IE1hdFRvb2xiYXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sYmFyJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOZ3hDb2xvcnNNb2R1bGUgfSBmcm9tICduZ3gtY29sb3JzJztcblxuaW1wb3J0IHsgQ29sb3JQaWNrZXJDb21wb25lbnQgfSBmcm9tICcuL2NvbG9yLXBpY2tlci9jb2xvci1waWNrZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEN1c3RvbUljb25TZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvY3VzdG9tLWljb24uc2VydmljZSc7XG5pbXBvcnQgeyBFZGl0b3JUb29sYmFyQ29tcG9uZW50IH0gZnJvbSAnLi9lZGl0b3ItdG9vbGJhci5jb21wb25lbnQnO1xuaW1wb3J0IHsgRm9udENvbXBvbmVudCB9IGZyb20gJy4vZm9udC9mb250LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGb250U2l6ZUNvbXBvbmVudCB9IGZyb20gJy4vZm9udC1zaXplL2ZvbnQtc2l6ZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRm9udFN0eWxlQ29tcG9uZW50IH0gZnJvbSAnLi9mb250LXN0eWxlL2ZvbnQtc3R5bGUuY29tcG9uZW50JztcbmltcG9ydCB7IEZvcm1hdENvbXBvbmVudCB9IGZyb20gJy4vZm9ybWF0L2Zvcm1hdC5jb21wb25lbnQnO1xuaW1wb3J0IHsgSGVhZGluZ0NvbXBvbmVudCB9IGZyb20gJy4vaGVhZGluZy9oZWFkaW5nLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBOdW1iZXJpbmdDb21wb25lbnQgfSBmcm9tICcuL251bWJlcmluZy9udW1iZXJpbmcuY29tcG9uZW50JztcbmltcG9ydCB7IFByaW50Q29tcG9uZW50IH0gZnJvbSAnLi9wcmludC9wcmludC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVW5kb1JlZG9Db21wb25lbnQgfSBmcm9tICcuL3VuZG8tcmVkby91bmRvLXJlZG8uY29tcG9uZW50JztcbmltcG9ydCB7IFpvb21Db21wb25lbnQgfSBmcm9tICcuL3pvb20vem9vbS5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICAgIGRlY2xhcmF0aW9uczogW1xuICAgICAgICBDb2xvclBpY2tlckNvbXBvbmVudCxcbiAgICAgICAgRWRpdG9yVG9vbGJhckNvbXBvbmVudCxcbiAgICAgICAgRm9udENvbXBvbmVudCxcbiAgICAgICAgRm9udENvbXBvbmVudCxcbiAgICAgICAgRm9udFNpemVDb21wb25lbnQsXG4gICAgICAgIEZvbnRTaXplQ29tcG9uZW50LFxuICAgICAgICBGb250U3R5bGVDb21wb25lbnQsXG4gICAgICAgIEZvbnRTdHlsZUNvbXBvbmVudCxcbiAgICAgICAgRm9ybWF0Q29tcG9uZW50LFxuICAgICAgICBGb3JtYXRDb21wb25lbnQsXG4gICAgICAgIEhlYWRpbmdDb21wb25lbnQsXG4gICAgICAgIEhlYWRpbmdDb21wb25lbnQsXG4gICAgICAgIE51bWJlcmluZ0NvbXBvbmVudCxcbiAgICAgICAgUHJpbnRDb21wb25lbnQsXG4gICAgICAgIFVuZG9SZWRvQ29tcG9uZW50LFxuICAgICAgICBab29tQ29tcG9uZW50XG4gICAgXSxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIENvbW1vbk1vZHVsZSxcbiAgICAgICAgRm9ybXNNb2R1bGUsXG4gICAgICAgIE1hdEF1dG9jb21wbGV0ZU1vZHVsZSxcbiAgICAgICAgTWF0QnV0dG9uTW9kdWxlLFxuICAgICAgICBNYXRCdXR0b25Ub2dnbGVNb2R1bGUsXG4gICAgICAgIE1hdEljb25Nb2R1bGUsXG4gICAgICAgIE1hdElucHV0TW9kdWxlLFxuICAgICAgICBNYXRNZW51TW9kdWxlLFxuICAgICAgICBNYXRTZWxlY3RNb2R1bGUsXG4gICAgICAgIE1hdFRvb2xiYXJNb2R1bGUsXG4gICAgICAgIE5neENvbG9yc01vZHVsZSxcbiAgICAgICAgUmVhY3RpdmVGb3Jtc01vZHVsZVxuICAgIF0sXG4gICAgcHJvdmlkZXJzOiBbQ3VzdG9tSWNvblNlcnZpY2VdLFxuICAgIGV4cG9ydHM6IFtFZGl0b3JUb29sYmFyQ29tcG9uZW50XVxufSlcbmV4cG9ydCBjbGFzcyBFZGl0b3JUb29sYmFyTW9kdWxlIHt9XG4iXX0=
117
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLXRvb2xiYXIubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LW5vZGVyL3NyYy9saWIvK3NoYXJlZC9lZGl0b3ItdG9vbGJhci9lZGl0b3ItdG9vbGJhci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN2RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDeEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzdELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUU3QyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUM3RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNwRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNwRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDdEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDcEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDdkUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzVELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQy9ELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ25GLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUN0RixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNwRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7O0FBeUN0RCxNQUFNLE9BQU8sbUJBQW1COzhHQUFuQixtQkFBbUI7K0dBQW5CLG1CQUFtQixpQkFyQ3hCLG9CQUFvQjtZQUNwQixzQkFBc0I7WUFDdEIsYUFBYTtZQUNiLGFBQWE7WUFDYixpQkFBaUI7WUFDakIsaUJBQWlCO1lBQ2pCLGtCQUFrQjtZQUNsQixrQkFBa0I7WUFDbEIsZUFBZTtZQUNmLGVBQWU7WUFDZixnQkFBZ0I7WUFDaEIsZ0JBQWdCO1lBQ2hCLHNCQUFzQjtZQUN0QixrQkFBa0I7WUFDbEIsY0FBYztZQUNkLHVCQUF1QjtZQUN2QixpQkFBaUI7WUFDakIsYUFBYSxhQUdiLFlBQVk7WUFDWixXQUFXO1lBQ1gsb0JBQW9CO1lBQ3BCLHFCQUFxQjtZQUNyQixlQUFlO1lBQ2YscUJBQXFCO1lBQ3JCLGFBQWE7WUFDYixjQUFjO1lBQ2QsYUFBYTtZQUNiLGVBQWU7WUFDZixnQkFBZ0I7WUFDaEIsZUFBZTtZQUNmLG1CQUFtQixhQUdiLHNCQUFzQjsrR0FFdkIsbUJBQW1CLGFBSGpCLENBQUMsaUJBQWlCLENBQUMsWUFkMUIsWUFBWTtZQUNaLFdBQVc7WUFDWCxvQkFBb0I7WUFDcEIscUJBQXFCO1lBQ3JCLGVBQWU7WUFDZixxQkFBcUI7WUFDckIsYUFBYTtZQUNiLGNBQWM7WUFDZCxhQUFhO1lBQ2IsZUFBZTtZQUNmLGdCQUFnQjtZQUNoQixlQUFlO1lBQ2YsbUJBQW1COzsyRkFLZCxtQkFBbUI7a0JBdkMvQixRQUFRO21CQUFDO29CQUNOLFlBQVksRUFBRTt3QkFDVixvQkFBb0I7d0JBQ3BCLHNCQUFzQjt3QkFDdEIsYUFBYTt3QkFDYixhQUFhO3dCQUNiLGlCQUFpQjt3QkFDakIsaUJBQWlCO3dCQUNqQixrQkFBa0I7d0JBQ2xCLGtCQUFrQjt3QkFDbEIsZUFBZTt3QkFDZixlQUFlO3dCQUNmLGdCQUFnQjt3QkFDaEIsZ0JBQWdCO3dCQUNoQixzQkFBc0I7d0JBQ3RCLGtCQUFrQjt3QkFDbEIsY0FBYzt3QkFDZCx1QkFBdUI7d0JBQ3ZCLGlCQUFpQjt3QkFDakIsYUFBYTtxQkFDaEI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNMLFlBQVk7d0JBQ1osV0FBVzt3QkFDWCxvQkFBb0I7d0JBQ3BCLHFCQUFxQjt3QkFDckIsZUFBZTt3QkFDZixxQkFBcUI7d0JBQ3JCLGFBQWE7d0JBQ2IsY0FBYzt3QkFDZCxhQUFhO3dCQUNiLGVBQWU7d0JBQ2YsZ0JBQWdCO3dCQUNoQixlQUFlO3dCQUNmLG1CQUFtQjtxQkFDdEI7b0JBQ0QsU0FBUyxFQUFFLENBQUMsaUJBQWlCLENBQUM7b0JBQzlCLE9BQU8sRUFBRSxDQUFDLHNCQUFzQixDQUFDO2lCQUNwQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE1hdEF1dG9jb21wbGV0ZU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2F1dG9jb21wbGV0ZSc7XG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHsgTWF0QnV0dG9uVG9nZ2xlTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uLXRvZ2dsZSc7XG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5pbXBvcnQgeyBNYXRJbnB1dE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2lucHV0JztcbmltcG9ydCB7IE1hdE1lbnVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9tZW51JztcbmltcG9ydCB7IE1hdFNlbGVjdE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NlbGVjdCc7XG5pbXBvcnQgeyBNYXRUb29sYmFyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbGJhcic7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmd4Q29sb3JzTW9kdWxlIH0gZnJvbSAnbmd4LWNvbG9ycyc7XG5cbmltcG9ydCB7IENvbG9yUGlja2VyQ29tcG9uZW50IH0gZnJvbSAnLi9jb2xvci1waWNrZXIvY29sb3ItcGlja2VyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDdXN0b21JY29uU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2N1c3RvbS1pY29uLnNlcnZpY2UnO1xuaW1wb3J0IHsgRWRpdG9yVG9vbGJhckNvbXBvbmVudCB9IGZyb20gJy4vZWRpdG9yLXRvb2xiYXIuY29tcG9uZW50JztcbmltcG9ydCB7IEZvbnRDb21wb25lbnQgfSBmcm9tICcuL2ZvbnQvZm9udC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRm9udFNpemVDb21wb25lbnQgfSBmcm9tICcuL2ZvbnQtc2l6ZS9mb250LXNpemUuY29tcG9uZW50JztcbmltcG9ydCB7IEZvbnRTdHlsZUNvbXBvbmVudCB9IGZyb20gJy4vZm9udC1zdHlsZS9mb250LXN0eWxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGb3JtYXRDb21wb25lbnQgfSBmcm9tICcuL2Zvcm1hdC9mb3JtYXQuY29tcG9uZW50JztcbmltcG9ydCB7IEhlYWRpbmdDb21wb25lbnQgfSBmcm9tICcuL2hlYWRpbmcvaGVhZGluZy5jb21wb25lbnQnO1xuaW1wb3J0IHsgSW5zZXJ0VGFibGVDb21wb25lbnQgfSBmcm9tICcuLi9pbnNlcnQtdGFibGUvaW5zZXJ0LXRhYmxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNZW51RHJvcGRvd25zQ29tcG9uZW50IH0gZnJvbSAnLi9tZW51LWRyb3Bkb3ducy9tZW51LWRyb3Bkb3ducy5jb21wb25lbnQnO1xuaW1wb3J0IHsgTnVtYmVyaW5nQ29tcG9uZW50IH0gZnJvbSAnLi9udW1iZXJpbmcvbnVtYmVyaW5nLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQcmludENvbXBvbmVudCB9IGZyb20gJy4vcHJpbnQvcHJpbnQuY29tcG9uZW50JztcbmltcG9ydCB7IFRvb2xiYXJBY3Rpb25zQ29tcG9uZW50IH0gZnJvbSAnLi90b29sYmFyLWFjdGlvbnMvdG9vbGJhci1hY3Rpb25zLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVbmRvUmVkb0NvbXBvbmVudCB9IGZyb20gJy4vdW5kby1yZWRvL3VuZG8tcmVkby5jb21wb25lbnQnO1xuaW1wb3J0IHsgWm9vbUNvbXBvbmVudCB9IGZyb20gJy4vem9vbS96b29tLmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gICAgZGVjbGFyYXRpb25zOiBbXG4gICAgICAgIENvbG9yUGlja2VyQ29tcG9uZW50LFxuICAgICAgICBFZGl0b3JUb29sYmFyQ29tcG9uZW50LFxuICAgICAgICBGb250Q29tcG9uZW50LFxuICAgICAgICBGb250Q29tcG9uZW50LFxuICAgICAgICBGb250U2l6ZUNvbXBvbmVudCxcbiAgICAgICAgRm9udFNpemVDb21wb25lbnQsXG4gICAgICAgIEZvbnRTdHlsZUNvbXBvbmVudCxcbiAgICAgICAgRm9udFN0eWxlQ29tcG9uZW50LFxuICAgICAgICBGb3JtYXRDb21wb25lbnQsXG4gICAgICAgIEZvcm1hdENvbXBvbmVudCxcbiAgICAgICAgSGVhZGluZ0NvbXBvbmVudCxcbiAgICAgICAgSGVhZGluZ0NvbXBvbmVudCxcbiAgICAgICAgTWVudURyb3Bkb3duc0NvbXBvbmVudCxcbiAgICAgICAgTnVtYmVyaW5nQ29tcG9uZW50LFxuICAgICAgICBQcmludENvbXBvbmVudCxcbiAgICAgICAgVG9vbGJhckFjdGlvbnNDb21wb25lbnQsXG4gICAgICAgIFVuZG9SZWRvQ29tcG9uZW50LFxuICAgICAgICBab29tQ29tcG9uZW50XG4gICAgXSxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIENvbW1vbk1vZHVsZSxcbiAgICAgICAgRm9ybXNNb2R1bGUsXG4gICAgICAgIEluc2VydFRhYmxlQ29tcG9uZW50LFxuICAgICAgICBNYXRBdXRvY29tcGxldGVNb2R1bGUsXG4gICAgICAgIE1hdEJ1dHRvbk1vZHVsZSxcbiAgICAgICAgTWF0QnV0dG9uVG9nZ2xlTW9kdWxlLFxuICAgICAgICBNYXRJY29uTW9kdWxlLFxuICAgICAgICBNYXRJbnB1dE1vZHVsZSxcbiAgICAgICAgTWF0TWVudU1vZHVsZSxcbiAgICAgICAgTWF0U2VsZWN0TW9kdWxlLFxuICAgICAgICBNYXRUb29sYmFyTW9kdWxlLFxuICAgICAgICBOZ3hDb2xvcnNNb2R1bGUsXG4gICAgICAgIFJlYWN0aXZlRm9ybXNNb2R1bGVcbiAgICBdLFxuICAgIHByb3ZpZGVyczogW0N1c3RvbUljb25TZXJ2aWNlXSxcbiAgICBleHBvcnRzOiBbRWRpdG9yVG9vbGJhckNvbXBvbmVudF1cbn0pXG5leHBvcnQgY2xhc3MgRWRpdG9yVG9vbGJhck1vZHVsZSB7fVxuIl19
@@ -30,11 +30,11 @@ export class FontComponent {
30
30
  this.selectFont.emit(font);
31
31
  }
32
32
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: FontComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
33
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.1", type: FontComponent, selector: "app-font", inputs: { isDisabled: "isDisabled", styles: "styles" }, outputs: { selectFont: "selectFont" }, ngImport: i0, template: "<button\n mat-button\n [matMenuTriggerFor]=\"fontMenu\"\n [matMenuTriggerRestoreFocus]=\"false\">\n <div class=\"font-menu\">\n <span>{{ font }}</span>\n <mat-icon\n fontSet=\"nc-icon\"\n fontIcon=\"icon-arrow-dropdown\"></mat-icon>\n </div>\n</button>\n<mat-menu #fontMenu=\"matMenu\">\n <ng-container *ngFor=\"let font of fonts\">\n <button\n mat-menu-item\n [disabled]=\"isDisabled\"\n (click)=\"onSelectFont(font)\">\n {{ font }}\n </button>\n </ng-container>\n</mat-menu>\n", styles: [":host{display:flex;align-items:center}:host button{height:28px;margin:0 4px}.font-menu{display:flex;justify-content:space-between;align-items:center;min-width:130px}span{padding-left:10%}mat-icon{margin-right:5%}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i2.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i4.MatMenu, selector: "mat-menu", inputs: ["backdropClass", "aria-label", "aria-labelledby", "aria-describedby", "xPosition", "yPosition", "overlapTrigger", "hasBackdrop", "class", "classList"], outputs: ["closed", "close"], exportAs: ["matMenu"] }, { kind: "component", type: i4.MatMenuItem, selector: "[mat-menu-item]", inputs: ["role", "disabled", "disableRipple"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i4.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData", "matMenuTriggerRestoreFocus"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
33
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.1", type: FontComponent, selector: "app-font", inputs: { isDisabled: "isDisabled", styles: "styles" }, outputs: { selectFont: "selectFont" }, ngImport: i0, template: "<button\n mat-button\n [matMenuTriggerFor]=\"fontMenu\"\n [matMenuTriggerRestoreFocus]=\"false\">\n <div class=\"font-menu\">\n <span>{{ font }}</span>\n <mat-icon\n fontSet=\"nc-icon\"\n fontIcon=\"icon-arrow-dropdown\"></mat-icon>\n </div>\n</button>\n<mat-menu\n #fontMenu=\"matMenu\"\n class=\"noder-modal\">\n <ng-container *ngFor=\"let font of fonts\">\n <button\n mat-menu-item\n [disabled]=\"isDisabled\"\n (click)=\"onSelectFont(font)\">\n {{ font }}\n </button>\n </ng-container>\n</mat-menu>\n", styles: [".font-menu{display:flex;justify-content:space-between;align-items:center;min-width:130px}span{padding-left:10%}button{height:28px;margin:0 4px}mat-icon{margin-right:5%}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i2.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i4.MatMenu, selector: "mat-menu", inputs: ["backdropClass", "aria-label", "aria-labelledby", "aria-describedby", "xPosition", "yPosition", "overlapTrigger", "hasBackdrop", "class", "classList"], outputs: ["closed", "close"], exportAs: ["matMenu"] }, { kind: "component", type: i4.MatMenuItem, selector: "[mat-menu-item]", inputs: ["role", "disabled", "disableRipple"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i4.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData", "matMenuTriggerRestoreFocus"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
34
34
  }
35
35
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: FontComponent, decorators: [{
36
36
  type: Component,
37
- args: [{ changeDetection: ChangeDetectionStrategy.OnPush, selector: 'app-font', template: "<button\n mat-button\n [matMenuTriggerFor]=\"fontMenu\"\n [matMenuTriggerRestoreFocus]=\"false\">\n <div class=\"font-menu\">\n <span>{{ font }}</span>\n <mat-icon\n fontSet=\"nc-icon\"\n fontIcon=\"icon-arrow-dropdown\"></mat-icon>\n </div>\n</button>\n<mat-menu #fontMenu=\"matMenu\">\n <ng-container *ngFor=\"let font of fonts\">\n <button\n mat-menu-item\n [disabled]=\"isDisabled\"\n (click)=\"onSelectFont(font)\">\n {{ font }}\n </button>\n </ng-container>\n</mat-menu>\n", styles: [":host{display:flex;align-items:center}:host button{height:28px;margin:0 4px}.font-menu{display:flex;justify-content:space-between;align-items:center;min-width:130px}span{padding-left:10%}mat-icon{margin-right:5%}\n"] }]
37
+ args: [{ changeDetection: ChangeDetectionStrategy.OnPush, selector: 'app-font', template: "<button\n mat-button\n [matMenuTriggerFor]=\"fontMenu\"\n [matMenuTriggerRestoreFocus]=\"false\">\n <div class=\"font-menu\">\n <span>{{ font }}</span>\n <mat-icon\n fontSet=\"nc-icon\"\n fontIcon=\"icon-arrow-dropdown\"></mat-icon>\n </div>\n</button>\n<mat-menu\n #fontMenu=\"matMenu\"\n class=\"noder-modal\">\n <ng-container *ngFor=\"let font of fonts\">\n <button\n mat-menu-item\n [disabled]=\"isDisabled\"\n (click)=\"onSelectFont(font)\">\n {{ font }}\n </button>\n </ng-container>\n</mat-menu>\n", styles: [".font-menu{display:flex;justify-content:space-between;align-items:center;min-width:130px}span{padding-left:10%}button{height:28px;margin:0 4px}mat-icon{margin-right:5%}\n"] }]
38
38
  }], propDecorators: { isDisabled: [{
39
39
  type: Input
40
40
  }], styles: [{
@@ -42,4 +42,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImpor
42
42
  }], selectFont: [{
43
43
  type: Output
44
44
  }] } });
45
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9udC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbm9kZXIvc3JjL2xpYi8rc2hhcmVkL2VkaXRvci10b29sYmFyL2ZvbnQvZm9udC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbm9kZXIvc3JjL2xpYi8rc2hhcmVkL2VkaXRvci10b29sYmFyL2ZvbnQvZm9udC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWhHLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDOzs7Ozs7QUFTbEcsTUFBTSxPQUFPLGFBQWE7SUFOMUI7UUFPYSxlQUFVLEdBQUcsS0FBSyxDQUFDO1FBbUJsQixlQUFVLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUVsRCxVQUFLLEdBQUcsQ0FBQyxtQkFBbUIsRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLGlCQUFpQixDQUFDLENBQUM7UUFFckUsU0FBSSxHQUFHLG1CQUFtQixDQUFDO0tBSzlCO0lBMUJHLElBQ0ksTUFBTSxDQUFDLEtBQXFCO1FBQzVCLElBQUksQ0FBQyxLQUFLLEVBQUUsVUFBVSxFQUFFO1lBQ3BCLE9BQU87U0FDVjtRQUVELEtBQUssSUFBSSxVQUFVLElBQUksS0FBSyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDakQsTUFBTSxNQUFNLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDN0MsTUFBTSxJQUFJLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDdkMsTUFBTSxVQUFVLEdBQUcsR0FBRyxNQUFNLEdBQUcsSUFBSSxHQUFHLEtBQUssQ0FBQyxRQUFRLElBQUksaUJBQWlCLE1BQU0sVUFBVSxFQUFFLENBQUM7WUFDNUYsSUFBSSxRQUFRLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsRUFBRTtnQkFDbEMsSUFBSSxDQUFDLElBQUksR0FBRyxVQUFVLENBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQztnQkFDM0MsT0FBTzthQUNWO1NBQ0o7SUFDTCxDQUFDO0lBUUQsWUFBWSxDQUFDLElBQVk7UUFDckIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDL0IsQ0FBQzs4R0E1QlEsYUFBYTtrR0FBYixhQUFhLCtJQ1gxQixtbEJBcUJBOzsyRkRWYSxhQUFhO2tCQU56QixTQUFTO3NDQUNXLHVCQUF1QixDQUFDLE1BQU0sWUFDckMsVUFBVTs4QkFLWCxVQUFVO3NCQUFsQixLQUFLO2dCQUdGLE1BQU07c0JBRFQsS0FBSztnQkFpQkksVUFBVTtzQkFBbkIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBERUZBVUxUX0ZPTlRfRkFNSUxZLCBERUZBVUxUX0ZPTlRfU0laRSB9IGZyb20gJy4uLy4uL2VkaXRvci9jb3JlL2NvbnN0YW50cy9lZGl0b3IuY29uc3QnO1xuaW1wb3J0IHsgSVRvb2xiYXJTdHlsZXMgfSBmcm9tICcuLi8uLi9lZGl0b3IvY29yZS9pbnRlcmZhY2VzL3Rvb2xiYXItc3R5bGVzLmludGVyZmFjZSc7XG5cbkBDb21wb25lbnQoe1xuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHNlbGVjdG9yOiAnYXBwLWZvbnQnLFxuICAgIHRlbXBsYXRlVXJsOiAnZm9udC5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJ2ZvbnQuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBGb250Q29tcG9uZW50IHtcbiAgICBASW5wdXQoKSBpc0Rpc2FibGVkID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKVxuICAgIHNldCBzdHlsZXModmFsdWU6IElUb29sYmFyU3R5bGVzKSB7XG4gICAgICAgIGlmICghdmFsdWU/LmZvbnRGYW1pbHkpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGZvciAobGV0IGZvbnRGYW1pbHkgb2YgdmFsdWUuZm9udEZhbWlseS5zcGxpdCgnLCAnKSkge1xuICAgICAgICAgICAgY29uc3QgaXRhbGljID0gdmFsdWUuaXRhbGljID8gJ2l0YWxpYyAnIDogJyc7XG4gICAgICAgICAgICBjb25zdCBib2xkID0gdmFsdWUuYm9sZCA/ICdib2xkICcgOiAnJztcbiAgICAgICAgICAgIGNvbnN0IGZvbnRTdHlsZXMgPSBgJHtpdGFsaWN9JHtib2xkfSR7dmFsdWUuZm9udFNpemUgPz8gREVGQVVMVF9GT05UX1NJWkV9cHQgJHtmb250RmFtaWx5fWA7XG4gICAgICAgICAgICBpZiAoZG9jdW1lbnQuZm9udHMuY2hlY2soZm9udFN0eWxlcykpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmZvbnQgPSBmb250RmFtaWx5LnJlcGxhY2VBbGwoJ1wiJywgJycpO1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBPdXRwdXQoKSBzZWxlY3RGb250ID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG5cbiAgICBmb250cyA9IFtERUZBVUxUX0ZPTlRfRkFNSUxZLCAnVmVyZGFuYScsICdBcmlhbCcsICdUaW1lcyBOZXcgUm9tYW4nXTtcblxuICAgIGZvbnQgPSBERUZBVUxUX0ZPTlRfRkFNSUxZO1xuXG4gICAgb25TZWxlY3RGb250KGZvbnQ6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICB0aGlzLnNlbGVjdEZvbnQuZW1pdChmb250KTtcbiAgICB9XG59XG4iLCI8YnV0dG9uXG4gICAgbWF0LWJ1dHRvblxuICAgIFttYXRNZW51VHJpZ2dlckZvcl09XCJmb250TWVudVwiXG4gICAgW21hdE1lbnVUcmlnZ2VyUmVzdG9yZUZvY3VzXT1cImZhbHNlXCI+XG4gICAgPGRpdiBjbGFzcz1cImZvbnQtbWVudVwiPlxuICAgICAgICA8c3Bhbj57eyBmb250IH19PC9zcGFuPlxuICAgICAgICA8bWF0LWljb25cbiAgICAgICAgICAgIGZvbnRTZXQ9XCJuYy1pY29uXCJcbiAgICAgICAgICAgIGZvbnRJY29uPVwiaWNvbi1hcnJvdy1kcm9wZG93blwiPjwvbWF0LWljb24+XG4gICAgPC9kaXY+XG48L2J1dHRvbj5cbjxtYXQtbWVudSAjZm9udE1lbnU9XCJtYXRNZW51XCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgZm9udCBvZiBmb250c1wiPlxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICBtYXQtbWVudS1pdGVtXG4gICAgICAgICAgICBbZGlzYWJsZWRdPVwiaXNEaXNhYmxlZFwiXG4gICAgICAgICAgICAoY2xpY2spPVwib25TZWxlY3RGb250KGZvbnQpXCI+XG4gICAgICAgICAgICB7eyBmb250IH19XG4gICAgICAgIDwvYnV0dG9uPlxuICAgIDwvbmctY29udGFpbmVyPlxuPC9tYXQtbWVudT5cbiJdfQ==
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9udC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbm9kZXIvc3JjL2xpYi8rc2hhcmVkL2VkaXRvci10b29sYmFyL2ZvbnQvZm9udC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbm9kZXIvc3JjL2xpYi8rc2hhcmVkL2VkaXRvci10b29sYmFyL2ZvbnQvZm9udC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWhHLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDOzs7Ozs7QUFTbEcsTUFBTSxPQUFPLGFBQWE7SUFOMUI7UUFPYSxlQUFVLEdBQUcsS0FBSyxDQUFDO1FBbUJsQixlQUFVLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUVsRCxVQUFLLEdBQUcsQ0FBQyxtQkFBbUIsRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLGlCQUFpQixDQUFDLENBQUM7UUFFckUsU0FBSSxHQUFHLG1CQUFtQixDQUFDO0tBSzlCO0lBMUJHLElBQ0ksTUFBTSxDQUFDLEtBQXFCO1FBQzVCLElBQUksQ0FBQyxLQUFLLEVBQUUsVUFBVSxFQUFFO1lBQ3BCLE9BQU87U0FDVjtRQUVELEtBQUssSUFBSSxVQUFVLElBQUksS0FBSyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDakQsTUFBTSxNQUFNLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDN0MsTUFBTSxJQUFJLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDdkMsTUFBTSxVQUFVLEdBQUcsR0FBRyxNQUFNLEdBQUcsSUFBSSxHQUFHLEtBQUssQ0FBQyxRQUFRLElBQUksaUJBQWlCLE1BQU0sVUFBVSxFQUFFLENBQUM7WUFDNUYsSUFBSSxRQUFRLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsRUFBRTtnQkFDbEMsSUFBSSxDQUFDLElBQUksR0FBRyxVQUFVLENBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQztnQkFDM0MsT0FBTzthQUNWO1NBQ0o7SUFDTCxDQUFDO0lBUUQsWUFBWSxDQUFDLElBQVk7UUFDckIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDL0IsQ0FBQzs4R0E1QlEsYUFBYTtrR0FBYixhQUFhLCtJQ1gxQixtbkJBdUJBOzsyRkRaYSxhQUFhO2tCQU56QixTQUFTO3NDQUNXLHVCQUF1QixDQUFDLE1BQU0sWUFDckMsVUFBVTs4QkFLWCxVQUFVO3NCQUFsQixLQUFLO2dCQUdGLE1BQU07c0JBRFQsS0FBSztnQkFpQkksVUFBVTtzQkFBbkIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBERUZBVUxUX0ZPTlRfRkFNSUxZLCBERUZBVUxUX0ZPTlRfU0laRSB9IGZyb20gJy4uLy4uL2VkaXRvci9jb3JlL2NvbnN0YW50cy9lZGl0b3IuY29uc3QnO1xuaW1wb3J0IHsgSVRvb2xiYXJTdHlsZXMgfSBmcm9tICcuLi8uLi9lZGl0b3IvY29yZS9pbnRlcmZhY2VzL3Rvb2xiYXItc3R5bGVzLmludGVyZmFjZSc7XG5cbkBDb21wb25lbnQoe1xuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHNlbGVjdG9yOiAnYXBwLWZvbnQnLFxuICAgIHRlbXBsYXRlVXJsOiAnZm9udC5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJ2ZvbnQuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBGb250Q29tcG9uZW50IHtcbiAgICBASW5wdXQoKSBpc0Rpc2FibGVkID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKVxuICAgIHNldCBzdHlsZXModmFsdWU6IElUb29sYmFyU3R5bGVzKSB7XG4gICAgICAgIGlmICghdmFsdWU/LmZvbnRGYW1pbHkpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGZvciAobGV0IGZvbnRGYW1pbHkgb2YgdmFsdWUuZm9udEZhbWlseS5zcGxpdCgnLCAnKSkge1xuICAgICAgICAgICAgY29uc3QgaXRhbGljID0gdmFsdWUuaXRhbGljID8gJ2l0YWxpYyAnIDogJyc7XG4gICAgICAgICAgICBjb25zdCBib2xkID0gdmFsdWUuYm9sZCA/ICdib2xkICcgOiAnJztcbiAgICAgICAgICAgIGNvbnN0IGZvbnRTdHlsZXMgPSBgJHtpdGFsaWN9JHtib2xkfSR7dmFsdWUuZm9udFNpemUgPz8gREVGQVVMVF9GT05UX1NJWkV9cHQgJHtmb250RmFtaWx5fWA7XG4gICAgICAgICAgICBpZiAoZG9jdW1lbnQuZm9udHMuY2hlY2soZm9udFN0eWxlcykpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmZvbnQgPSBmb250RmFtaWx5LnJlcGxhY2VBbGwoJ1wiJywgJycpO1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBPdXRwdXQoKSBzZWxlY3RGb250ID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG5cbiAgICBmb250cyA9IFtERUZBVUxUX0ZPTlRfRkFNSUxZLCAnVmVyZGFuYScsICdBcmlhbCcsICdUaW1lcyBOZXcgUm9tYW4nXTtcblxuICAgIGZvbnQgPSBERUZBVUxUX0ZPTlRfRkFNSUxZO1xuXG4gICAgb25TZWxlY3RGb250KGZvbnQ6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICB0aGlzLnNlbGVjdEZvbnQuZW1pdChmb250KTtcbiAgICB9XG59XG4iLCI8YnV0dG9uXG4gICAgbWF0LWJ1dHRvblxuICAgIFttYXRNZW51VHJpZ2dlckZvcl09XCJmb250TWVudVwiXG4gICAgW21hdE1lbnVUcmlnZ2VyUmVzdG9yZUZvY3VzXT1cImZhbHNlXCI+XG4gICAgPGRpdiBjbGFzcz1cImZvbnQtbWVudVwiPlxuICAgICAgICA8c3Bhbj57eyBmb250IH19PC9zcGFuPlxuICAgICAgICA8bWF0LWljb25cbiAgICAgICAgICAgIGZvbnRTZXQ9XCJuYy1pY29uXCJcbiAgICAgICAgICAgIGZvbnRJY29uPVwiaWNvbi1hcnJvdy1kcm9wZG93blwiPjwvbWF0LWljb24+XG4gICAgPC9kaXY+XG48L2J1dHRvbj5cbjxtYXQtbWVudVxuICAgICNmb250TWVudT1cIm1hdE1lbnVcIlxuICAgIGNsYXNzPVwibm9kZXItbW9kYWxcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBmb250IG9mIGZvbnRzXCI+XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICAgIG1hdC1tZW51LWl0ZW1cbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCJpc0Rpc2FibGVkXCJcbiAgICAgICAgICAgIChjbGljayk9XCJvblNlbGVjdEZvbnQoZm9udClcIj5cbiAgICAgICAgICAgIHt7IGZvbnQgfX1cbiAgICAgICAgPC9idXR0b24+XG4gICAgPC9uZy1jb250YWluZXI+XG48L21hdC1tZW51PlxuIl19
@@ -67,11 +67,11 @@ export class FontSizeComponent {
67
67
  }
68
68
  }
69
69
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: FontSizeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
70
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.1", type: FontSizeComponent, selector: "app-font-size", inputs: { isDisabled: "isDisabled", fontSize: "fontSize" }, outputs: { selectFontSize: "selectFontSize" }, viewQueries: [{ propertyName: "autocomplete", first: true, predicate: ["auto"], descendants: true }], ngImport: i0, template: "<button\n mat-button\n [disabled]=\"!fontSize || isDisabled\"\n (click)=\"onDecrementFontSize()\">\n <mat-icon\n fontSet=\"nc-icon\"\n fontIcon=\"icon-remove\"></mat-icon>\n</button>\n<input\n type=\"text\"\n [formControl]=\"fontSizeControl\"\n [matAutocomplete]=\"auto\"\n (keyup.enter)=\"onSetFontSize()\"\n (blur)=\"resetFontSize()\" />\n<mat-autocomplete\n #auto=\"matAutocomplete\"\n panelWidth=\"60\"\n disableRipple=\"false\"\n hideSingleSelectionIndicator=\"true\">\n <mat-option\n *ngFor=\"let fontSize of fontSizes\"\n [value]=\"fontSize\"\n (click)=\"onSelectFontSize(fontSize)\">\n {{ fontSize }}\n </mat-option>\n</mat-autocomplete>\n<button\n mat-button\n [disabled]=\"!fontSize || isDisabled\"\n (click)=\"onIncrementFontSize()\">\n <mat-icon\n fontSet=\"nc-icon\"\n fontIcon=\"icon-add\"></mat-icon>\n</button>\n", styles: [":host{justify-content:center;align-items:center;display:flex}button{margin:4px}input{width:30px;height:25px;text-align:center;border-color:transparent;outline-color:#1b84e0}.mdc-button{min-width:28px;min-height:28px;width:28px;height:28px;padding:0}.mat-mdc-button>.mat-icon{margin-right:0;font-size:24px;height:24px;width:24px}.mat-mdc-option{padding-left:6px;padding-right:6px;min-height:30px}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "component", type: i3.MatAutocomplete, selector: "mat-autocomplete", inputs: ["aria-label", "aria-labelledby", "displayWith", "autoActiveFirstOption", "autoSelectActiveOption", "requireSelection", "panelWidth", "disableRipple", "class", "hideSingleSelectionIndicator"], outputs: ["optionSelected", "opened", "closed", "optionActivated"], exportAs: ["matAutocomplete"] }, { kind: "component", type: i4.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "directive", type: i3.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", inputs: ["matAutocomplete", "matAutocompletePosition", "matAutocompleteConnectedTo", "autocomplete", "matAutocompleteDisabled"], exportAs: ["matAutocompleteTrigger"] }, { kind: "component", type: i5.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
70
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.1", type: FontSizeComponent, selector: "app-font-size", inputs: { isDisabled: "isDisabled", fontSize: "fontSize" }, outputs: { selectFontSize: "selectFontSize" }, viewQueries: [{ propertyName: "autocomplete", first: true, predicate: ["auto"], descendants: true }], ngImport: i0, template: "<button\n mat-button\n [disabled]=\"!fontSize || isDisabled\"\n (click)=\"onDecrementFontSize()\">\n <mat-icon\n fontSet=\"nc-icon\"\n fontIcon=\"icon-remove\"></mat-icon>\n</button>\n<input\n type=\"text\"\n [formControl]=\"fontSizeControl\"\n [matAutocomplete]=\"auto\"\n (keyup.enter)=\"onSetFontSize()\"\n (blur)=\"resetFontSize()\" />\n<mat-autocomplete\n #auto=\"matAutocomplete\"\n panelWidth=\"60\"\n disableRipple=\"false\"\n hideSingleSelectionIndicator=\"true\">\n <mat-option\n *ngFor=\"let fontSize of fontSizes\"\n [value]=\"fontSize\"\n (click)=\"onSelectFontSize(fontSize)\">\n {{ fontSize }}\n </mat-option>\n</mat-autocomplete>\n<button\n mat-button\n [disabled]=\"!fontSize || isDisabled\"\n (click)=\"onIncrementFontSize()\">\n <mat-icon\n fontSet=\"nc-icon\"\n fontIcon=\"icon-add\"></mat-icon>\n</button>\n", styles: ["button{margin:4px}input{width:48px;height:32px;text-align:center;border-color:transparent;outline-color:#1b84e0}.mdc-button{min-width:32px;min-height:32px;width:32px;height:32px;padding:0}.mat-mdc-button>.mat-icon{margin-right:0;font-size:24px;height:24px;width:24px}.mat-mdc-option{padding-left:6px;padding-right:6px;min-height:30px}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "component", type: i3.MatAutocomplete, selector: "mat-autocomplete", inputs: ["aria-label", "aria-labelledby", "displayWith", "autoActiveFirstOption", "autoSelectActiveOption", "requireSelection", "panelWidth", "disableRipple", "class", "hideSingleSelectionIndicator"], outputs: ["optionSelected", "opened", "closed", "optionActivated"], exportAs: ["matAutocomplete"] }, { kind: "component", type: i4.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "directive", type: i3.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", inputs: ["matAutocomplete", "matAutocompletePosition", "matAutocompleteConnectedTo", "autocomplete", "matAutocompleteDisabled"], exportAs: ["matAutocompleteTrigger"] }, { kind: "component", type: i5.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
71
71
  }
72
72
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: FontSizeComponent, decorators: [{
73
73
  type: Component,
74
- args: [{ changeDetection: ChangeDetectionStrategy.OnPush, selector: 'app-font-size', template: "<button\n mat-button\n [disabled]=\"!fontSize || isDisabled\"\n (click)=\"onDecrementFontSize()\">\n <mat-icon\n fontSet=\"nc-icon\"\n fontIcon=\"icon-remove\"></mat-icon>\n</button>\n<input\n type=\"text\"\n [formControl]=\"fontSizeControl\"\n [matAutocomplete]=\"auto\"\n (keyup.enter)=\"onSetFontSize()\"\n (blur)=\"resetFontSize()\" />\n<mat-autocomplete\n #auto=\"matAutocomplete\"\n panelWidth=\"60\"\n disableRipple=\"false\"\n hideSingleSelectionIndicator=\"true\">\n <mat-option\n *ngFor=\"let fontSize of fontSizes\"\n [value]=\"fontSize\"\n (click)=\"onSelectFontSize(fontSize)\">\n {{ fontSize }}\n </mat-option>\n</mat-autocomplete>\n<button\n mat-button\n [disabled]=\"!fontSize || isDisabled\"\n (click)=\"onIncrementFontSize()\">\n <mat-icon\n fontSet=\"nc-icon\"\n fontIcon=\"icon-add\"></mat-icon>\n</button>\n", styles: [":host{justify-content:center;align-items:center;display:flex}button{margin:4px}input{width:30px;height:25px;text-align:center;border-color:transparent;outline-color:#1b84e0}.mdc-button{min-width:28px;min-height:28px;width:28px;height:28px;padding:0}.mat-mdc-button>.mat-icon{margin-right:0;font-size:24px;height:24px;width:24px}.mat-mdc-option{padding-left:6px;padding-right:6px;min-height:30px}\n"] }]
74
+ args: [{ changeDetection: ChangeDetectionStrategy.OnPush, selector: 'app-font-size', template: "<button\n mat-button\n [disabled]=\"!fontSize || isDisabled\"\n (click)=\"onDecrementFontSize()\">\n <mat-icon\n fontSet=\"nc-icon\"\n fontIcon=\"icon-remove\"></mat-icon>\n</button>\n<input\n type=\"text\"\n [formControl]=\"fontSizeControl\"\n [matAutocomplete]=\"auto\"\n (keyup.enter)=\"onSetFontSize()\"\n (blur)=\"resetFontSize()\" />\n<mat-autocomplete\n #auto=\"matAutocomplete\"\n panelWidth=\"60\"\n disableRipple=\"false\"\n hideSingleSelectionIndicator=\"true\">\n <mat-option\n *ngFor=\"let fontSize of fontSizes\"\n [value]=\"fontSize\"\n (click)=\"onSelectFontSize(fontSize)\">\n {{ fontSize }}\n </mat-option>\n</mat-autocomplete>\n<button\n mat-button\n [disabled]=\"!fontSize || isDisabled\"\n (click)=\"onIncrementFontSize()\">\n <mat-icon\n fontSet=\"nc-icon\"\n fontIcon=\"icon-add\"></mat-icon>\n</button>\n", styles: ["button{margin:4px}input{width:48px;height:32px;text-align:center;border-color:transparent;outline-color:#1b84e0}.mdc-button{min-width:32px;min-height:32px;width:32px;height:32px;padding:0}.mat-mdc-button>.mat-icon{margin-right:0;font-size:24px;height:24px;width:24px}.mat-mdc-option{padding-left:6px;padding-right:6px;min-height:30px}\n"] }]
75
75
  }], propDecorators: { isDisabled: [{
76
76
  type: Input
77
77
  }], fontSize: [{
@@ -49,11 +49,11 @@ export class FontStyleComponent {
49
49
  this.selectHighlightColor.emit(color);
50
50
  }
51
51
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: FontStyleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
52
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.1", type: FontStyleComponent, selector: "app-font-style", inputs: { isDisabled: "isDisabled", bold: "bold", italic: "italic", underline: "underline", fontColor: "fontColor", highlightColor: "highlightColor" }, outputs: { toggleBold: "toggleBold", toggleItalic: "toggleItalic", toggleUnderline: "toggleUnderline", selectFontColor: "selectFontColor", selectHighlightColor: "selectHighlightColor" }, ngImport: i0, template: "<mat-button-toggle-group multiple>\n <mat-button-toggle\n [disabled]=\"isDisabled\"\n [checked]=\"bold\"\n (click)=\"onToggleBold()\">\n <mat-icon\n fontSet=\"nc-icon\"\n fontIcon=\"icon-format-bold\"></mat-icon>\n </mat-button-toggle>\n <mat-button-toggle\n [disabled]=\"isDisabled\"\n [checked]=\"italic\"\n (click)=\"onToggleItalic()\">\n <mat-icon\n fontSet=\"nc-icon\"\n fontIcon=\"icon-format-italic\"></mat-icon>\n </mat-button-toggle>\n <mat-button-toggle\n [disabled]=\"isDisabled\"\n [checked]=\"underline\"\n (click)=\"onToggleUnderline()\">\n <mat-icon\n fontSet=\"nc-icon\"\n fontIcon=\"icon-format-underlined\"></mat-icon>\n </mat-button-toggle>\n</mat-button-toggle-group>\n<app-color-picker\n id=\"icon-format-colortext\"\n class=\"text-color\"\n [color]=\"fontColor\"\n [isDisabled]=\"isDisabled\"\n icon=\"icon-format-colortext\"\n [palette]=\"textColorPalette\"\n (colorChange)=\"onSelectFontColor($event)\"></app-color-picker>\n<app-color-picker\n id=\"icon-link-highlighter\"\n class=\"highlight-color\"\n [color]=\"highlightColor\"\n [isDisabled]=\"isDisabled\"\n icon=\"icon-link-highlighter\"\n [palette]=\"highlightColorPalette\"\n (colorChange)=\"onSelectHighlightColor($event)\"></app-color-picker>\n", styles: ["mat-button-toggle,button{margin:0 4px}.mat-button-toggle-group-appearance-standard .mat-button-toggle+.mat-button-toggle{border-left:0}.mat-button-toggle-standalone.mat-button-toggle-appearance-standard,.mat-button-toggle-group-appearance-standard{border:0}:host{align-self:center}:host ::ng-deep #format-color-highlight .circle.button:first-child,:host ::ng-deep #format-color-highlight .circle.wrapper.color:first-child{flex:100%;width:100%;background:no-repeat left/20px url(https://cdn3.iconfinder.com/data/icons/google-material-design-icons/48/ic_format_color_reset_48px-512.png);border-radius:unset}:host ::ng-deep #format-color-highlight .circle.button:first-child .circle.color.circle-border,:host ::ng-deep #format-color-highlight .circle.wrapper.color:first-child .circle.color.circle-border{width:100%;border:unset}:host ::ng-deep #format-color-highlight .circle.button:first-child .circle.color.circle-border .selected,:host ::ng-deep #format-color-highlight .circle.wrapper.color:first-child .circle.color.circle-border .selected{display:none}\n"], dependencies: [{ kind: "directive", type: i1.MatButtonToggleGroup, selector: "mat-button-toggle-group", inputs: ["appearance", "name", "vertical", "value", "multiple", "disabled"], outputs: ["valueChange", "change"], exportAs: ["matButtonToggleGroup"] }, { kind: "component", type: i1.MatButtonToggle, selector: "mat-button-toggle", inputs: ["aria-label", "aria-labelledby", "id", "name", "value", "tabIndex", "disableRipple", "appearance", "checked", "disabled"], outputs: ["change"], exportAs: ["matButtonToggle"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i3.ColorPickerComponent, selector: "app-color-picker", inputs: ["color", "icon", "isDisabled", "palette"], outputs: ["colorChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
52
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.1", type: FontStyleComponent, selector: "app-font-style", inputs: { isDisabled: "isDisabled", bold: "bold", italic: "italic", underline: "underline", fontColor: "fontColor", highlightColor: "highlightColor" }, outputs: { toggleBold: "toggleBold", toggleItalic: "toggleItalic", toggleUnderline: "toggleUnderline", selectFontColor: "selectFontColor", selectHighlightColor: "selectHighlightColor" }, ngImport: i0, template: "<mat-button-toggle-group multiple>\n <mat-button-toggle\n [disabled]=\"isDisabled\"\n [checked]=\"bold\"\n (click)=\"onToggleBold()\">\n <mat-icon\n fontSet=\"nc-icon\"\n fontIcon=\"icon-format-bold\"></mat-icon>\n </mat-button-toggle>\n <mat-button-toggle\n [disabled]=\"isDisabled\"\n [checked]=\"italic\"\n (click)=\"onToggleItalic()\">\n <mat-icon\n fontSet=\"nc-icon\"\n fontIcon=\"icon-format-italic\"></mat-icon>\n </mat-button-toggle>\n <mat-button-toggle\n [disabled]=\"isDisabled\"\n [checked]=\"underline\"\n (click)=\"onToggleUnderline()\">\n <mat-icon\n fontSet=\"nc-icon\"\n fontIcon=\"icon-format-underlined\"></mat-icon>\n </mat-button-toggle>\n</mat-button-toggle-group>\n<app-color-picker\n id=\"icon-format-colortext\"\n class=\"text-color\"\n [color]=\"fontColor\"\n [isDisabled]=\"isDisabled\"\n icon=\"icon-format-colortext\"\n [palette]=\"textColorPalette\"\n (colorChange)=\"onSelectFontColor($event)\"></app-color-picker>\n<app-color-picker\n id=\"icon-link-highlighter\"\n class=\"highlight-color\"\n [color]=\"highlightColor\"\n [isDisabled]=\"isDisabled\"\n icon=\"icon-link-highlighter\"\n [palette]=\"highlightColorPalette\"\n (colorChange)=\"onSelectHighlightColor($event)\"></app-color-picker>\n", styles: ["mat-button-toggle,button{margin:0 4px}.mat-button-toggle-group-appearance-standard .mat-button-toggle+.mat-button-toggle{border-left:0}.mat-button-toggle-standalone.mat-button-toggle-appearance-standard,.mat-button-toggle-group-appearance-standard{border:0}:host{display:flex;align-items:center}:host ::ng-deep #format-color-highlight .circle.button:first-child,:host ::ng-deep #format-color-highlight .circle.wrapper.color:first-child{flex:100%;width:100%;background:no-repeat left/20px url(https://cdn3.iconfinder.com/data/icons/google-material-design-icons/48/ic_format_color_reset_48px-512.png);border-radius:unset}:host ::ng-deep #format-color-highlight .circle.button:first-child .circle.color.circle-border,:host ::ng-deep #format-color-highlight .circle.wrapper.color:first-child .circle.color.circle-border{width:100%;border:unset}:host ::ng-deep #format-color-highlight .circle.button:first-child .circle.color.circle-border .selected,:host ::ng-deep #format-color-highlight .circle.wrapper.color:first-child .circle.color.circle-border .selected{display:none}\n"], dependencies: [{ kind: "directive", type: i1.MatButtonToggleGroup, selector: "mat-button-toggle-group", inputs: ["appearance", "name", "vertical", "value", "multiple", "disabled"], outputs: ["valueChange", "change"], exportAs: ["matButtonToggleGroup"] }, { kind: "component", type: i1.MatButtonToggle, selector: "mat-button-toggle", inputs: ["aria-label", "aria-labelledby", "id", "name", "value", "tabIndex", "disableRipple", "appearance", "checked", "disabled"], outputs: ["change"], exportAs: ["matButtonToggle"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i3.ColorPickerComponent, selector: "app-color-picker", inputs: ["color", "icon", "isDisabled", "palette"], outputs: ["colorChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
53
53
  }
54
54
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: FontStyleComponent, decorators: [{
55
55
  type: Component,
56
- args: [{ changeDetection: ChangeDetectionStrategy.OnPush, selector: 'app-font-style', template: "<mat-button-toggle-group multiple>\n <mat-button-toggle\n [disabled]=\"isDisabled\"\n [checked]=\"bold\"\n (click)=\"onToggleBold()\">\n <mat-icon\n fontSet=\"nc-icon\"\n fontIcon=\"icon-format-bold\"></mat-icon>\n </mat-button-toggle>\n <mat-button-toggle\n [disabled]=\"isDisabled\"\n [checked]=\"italic\"\n (click)=\"onToggleItalic()\">\n <mat-icon\n fontSet=\"nc-icon\"\n fontIcon=\"icon-format-italic\"></mat-icon>\n </mat-button-toggle>\n <mat-button-toggle\n [disabled]=\"isDisabled\"\n [checked]=\"underline\"\n (click)=\"onToggleUnderline()\">\n <mat-icon\n fontSet=\"nc-icon\"\n fontIcon=\"icon-format-underlined\"></mat-icon>\n </mat-button-toggle>\n</mat-button-toggle-group>\n<app-color-picker\n id=\"icon-format-colortext\"\n class=\"text-color\"\n [color]=\"fontColor\"\n [isDisabled]=\"isDisabled\"\n icon=\"icon-format-colortext\"\n [palette]=\"textColorPalette\"\n (colorChange)=\"onSelectFontColor($event)\"></app-color-picker>\n<app-color-picker\n id=\"icon-link-highlighter\"\n class=\"highlight-color\"\n [color]=\"highlightColor\"\n [isDisabled]=\"isDisabled\"\n icon=\"icon-link-highlighter\"\n [palette]=\"highlightColorPalette\"\n (colorChange)=\"onSelectHighlightColor($event)\"></app-color-picker>\n", styles: ["mat-button-toggle,button{margin:0 4px}.mat-button-toggle-group-appearance-standard .mat-button-toggle+.mat-button-toggle{border-left:0}.mat-button-toggle-standalone.mat-button-toggle-appearance-standard,.mat-button-toggle-group-appearance-standard{border:0}:host{align-self:center}:host ::ng-deep #format-color-highlight .circle.button:first-child,:host ::ng-deep #format-color-highlight .circle.wrapper.color:first-child{flex:100%;width:100%;background:no-repeat left/20px url(https://cdn3.iconfinder.com/data/icons/google-material-design-icons/48/ic_format_color_reset_48px-512.png);border-radius:unset}:host ::ng-deep #format-color-highlight .circle.button:first-child .circle.color.circle-border,:host ::ng-deep #format-color-highlight .circle.wrapper.color:first-child .circle.color.circle-border{width:100%;border:unset}:host ::ng-deep #format-color-highlight .circle.button:first-child .circle.color.circle-border .selected,:host ::ng-deep #format-color-highlight .circle.wrapper.color:first-child .circle.color.circle-border .selected{display:none}\n"] }]
56
+ args: [{ changeDetection: ChangeDetectionStrategy.OnPush, selector: 'app-font-style', template: "<mat-button-toggle-group multiple>\n <mat-button-toggle\n [disabled]=\"isDisabled\"\n [checked]=\"bold\"\n (click)=\"onToggleBold()\">\n <mat-icon\n fontSet=\"nc-icon\"\n fontIcon=\"icon-format-bold\"></mat-icon>\n </mat-button-toggle>\n <mat-button-toggle\n [disabled]=\"isDisabled\"\n [checked]=\"italic\"\n (click)=\"onToggleItalic()\">\n <mat-icon\n fontSet=\"nc-icon\"\n fontIcon=\"icon-format-italic\"></mat-icon>\n </mat-button-toggle>\n <mat-button-toggle\n [disabled]=\"isDisabled\"\n [checked]=\"underline\"\n (click)=\"onToggleUnderline()\">\n <mat-icon\n fontSet=\"nc-icon\"\n fontIcon=\"icon-format-underlined\"></mat-icon>\n </mat-button-toggle>\n</mat-button-toggle-group>\n<app-color-picker\n id=\"icon-format-colortext\"\n class=\"text-color\"\n [color]=\"fontColor\"\n [isDisabled]=\"isDisabled\"\n icon=\"icon-format-colortext\"\n [palette]=\"textColorPalette\"\n (colorChange)=\"onSelectFontColor($event)\"></app-color-picker>\n<app-color-picker\n id=\"icon-link-highlighter\"\n class=\"highlight-color\"\n [color]=\"highlightColor\"\n [isDisabled]=\"isDisabled\"\n icon=\"icon-link-highlighter\"\n [palette]=\"highlightColorPalette\"\n (colorChange)=\"onSelectHighlightColor($event)\"></app-color-picker>\n", styles: ["mat-button-toggle,button{margin:0 4px}.mat-button-toggle-group-appearance-standard .mat-button-toggle+.mat-button-toggle{border-left:0}.mat-button-toggle-standalone.mat-button-toggle-appearance-standard,.mat-button-toggle-group-appearance-standard{border:0}:host{display:flex;align-items:center}:host ::ng-deep #format-color-highlight .circle.button:first-child,:host ::ng-deep #format-color-highlight .circle.wrapper.color:first-child{flex:100%;width:100%;background:no-repeat left/20px url(https://cdn3.iconfinder.com/data/icons/google-material-design-icons/48/ic_format_color_reset_48px-512.png);border-radius:unset}:host ::ng-deep #format-color-highlight .circle.button:first-child .circle.color.circle-border,:host ::ng-deep #format-color-highlight .circle.wrapper.color:first-child .circle.color.circle-border{width:100%;border:unset}:host ::ng-deep #format-color-highlight .circle.button:first-child .circle.color.circle-border .selected,:host ::ng-deep #format-color-highlight .circle.wrapper.color:first-child .circle.color.circle-border .selected{display:none}\n"] }]
57
57
  }], propDecorators: { isDisabled: [{
58
58
  type: Input
59
59
  }], bold: [{