@acorex/components 18.5.12 → 18.5.14

Sign up to get free protection for your applications and to get access to all the features.
Files changed (59) hide show
  1. package/README.md +29 -4
  2. package/calendar/lib/calendar-range.component.d.ts +2 -1
  3. package/comment/index.d.ts +1 -1
  4. package/comment/lib/comment-container/comment-container.component.d.ts +1 -1
  5. package/comment/lib/comment-item/comment-item.component.d.ts +1 -1
  6. package/comment/lib/comment-reply-text/comment-reply-text.component.d.ts +5 -0
  7. package/comment/lib/comment.module.d.ts +6 -6
  8. package/datetime-box/lib/datetime-box.component.d.ts +1 -1
  9. package/dialog/lib/dialog.class.d.ts +1 -0
  10. package/esm2022/calendar/lib/calendar-range.component.mjs +7 -7
  11. package/esm2022/calendar/lib/calendar.component.mjs +3 -3
  12. package/esm2022/comment/index.mjs +2 -2
  13. package/esm2022/comment/lib/comment-container/comment-container.component.mjs +3 -3
  14. package/esm2022/comment/lib/comment-item/comment-item.component.mjs +4 -5
  15. package/esm2022/comment/lib/comment-reply-text/comment-reply-text.component.mjs +12 -0
  16. package/esm2022/comment/lib/comment.module.mjs +7 -7
  17. package/esm2022/datetime-box/lib/datetime-box.component.mjs +2 -2
  18. package/esm2022/datetime-picker/lib/datetime-picker.component.mjs +4 -1
  19. package/esm2022/dialog/lib/dialog.class.mjs +1 -1
  20. package/esm2022/dialog/lib/dialog.component.mjs +3 -3
  21. package/esm2022/number-box/lib/number-box.component.mjs +1 -1
  22. package/esm2022/uploader/index.mjs +2 -1
  23. package/esm2022/uploader/lib/uploader-browse-handle.directive.mjs +3 -3
  24. package/esm2022/uploader/lib/uploader-drop-zone.component.mjs +1 -1
  25. package/esm2022/uploader/lib/uploader-zone.directive.mjs +41 -12
  26. package/esm2022/uploader/lib/uploader.models.mjs +37 -31
  27. package/esm2022/uploader/lib/uploader.module.mjs +3 -8
  28. package/esm2022/uploader/lib/uploader.service.mjs +20 -5
  29. package/esm2022/wysiwyg/lib/wysiwyg/wysiwyg-container/wysiwyg-container.component.mjs +2 -2
  30. package/esm2022/wysiwyg/lib/wysiwyg/wysiwyg-toolbar/wysiwyg-toolbar.component.mjs +62 -19
  31. package/esm2022/wysiwyg/lib/wysiwyg/wysiwyg-view/wysiwyg-view.component.mjs +24 -5
  32. package/esm2022/wysiwyg/lib/wysiwyg/wysiwyg.service.mjs +2 -1
  33. package/fesm2022/acorex-components-calendar.mjs +8 -8
  34. package/fesm2022/acorex-components-calendar.mjs.map +1 -1
  35. package/fesm2022/acorex-components-comment.mjs +27 -48
  36. package/fesm2022/acorex-components-comment.mjs.map +1 -1
  37. package/fesm2022/acorex-components-datetime-box.mjs +1 -1
  38. package/fesm2022/acorex-components-datetime-box.mjs.map +1 -1
  39. package/fesm2022/acorex-components-datetime-picker.mjs +3 -0
  40. package/fesm2022/acorex-components-datetime-picker.mjs.map +1 -1
  41. package/fesm2022/acorex-components-dialog.mjs +2 -2
  42. package/fesm2022/acorex-components-dialog.mjs.map +1 -1
  43. package/fesm2022/acorex-components-number-box.mjs.map +1 -1
  44. package/fesm2022/acorex-components-uploader.mjs +101 -54
  45. package/fesm2022/acorex-components-uploader.mjs.map +1 -1
  46. package/fesm2022/acorex-components-wysiwyg.mjs +84 -22
  47. package/fesm2022/acorex-components-wysiwyg.mjs.map +1 -1
  48. package/number-box/lib/number-box.component.d.ts +1 -1
  49. package/package.json +43 -43
  50. package/uploader/index.d.ts +1 -0
  51. package/uploader/lib/uploader-zone.directive.d.ts +9 -5
  52. package/uploader/lib/uploader.models.d.ts +26 -9
  53. package/uploader/lib/uploader.module.d.ts +10 -11
  54. package/uploader/lib/uploader.service.d.ts +8 -4
  55. package/wysiwyg/lib/wysiwyg/wysiwyg-toolbar/wysiwyg-toolbar.component.d.ts +19 -4
  56. package/wysiwyg/lib/wysiwyg/wysiwyg-view/wysiwyg-view.component.d.ts +6 -1
  57. package/wysiwyg/lib/wysiwyg/wysiwyg.service.d.ts +1 -0
  58. package/comment/lib/comment-input/comment-input.component.d.ts +0 -10
  59. package/esm2022/comment/lib/comment-input/comment-input.component.mjs +0 -33
@@ -1,5 +1,5 @@
1
1
  import { AXDataSource } from '@acorex/components/common';
2
- import { Component, ViewEncapsulation, afterNextRender, inject, output, signal } from '@angular/core';
2
+ import { Component, ViewEncapsulation, afterNextRender, effect, inject, input, output, signal } from '@angular/core';
3
3
  import { AXWysiwygService } from '../wysiwyg.service';
4
4
  import * as i0 from "@angular/core";
5
5
  import * as i1 from "@acorex/components/button";
@@ -10,19 +10,29 @@ import * as i5 from "@acorex/components/color-palette";
10
10
  import * as i6 from "@acorex/components/popover";
11
11
  import * as i7 from "@acorex/components/text-box";
12
12
  export class AXWysiwygToolbarComponent {
13
- submitLink() {
14
- this.wysiwyg().addImage(this.textBoxOptions.text);
15
- }
16
13
  constructor() {
17
14
  this.outputHTML = output();
18
15
  this.service = inject(AXWysiwygService);
16
+ this.config = input({
17
+ bold: true,
18
+ undo: true,
19
+ redo: true,
20
+ italic: true,
21
+ underLine: true,
22
+ strike: true,
23
+ color: true,
24
+ highlight: true,
25
+ fontSize: true,
26
+ list: true,
27
+ alignment: true,
28
+ image: true,
29
+ });
19
30
  this.wysiwyg = signal(null);
20
31
  this.boldState = signal(false);
21
32
  this.italicState = signal(false);
22
33
  this.underLineState = signal(false);
23
34
  this.strikeLineState = signal(false);
24
- this.orderListState = signal('');
25
- this.unOrderListState = signal('');
35
+ this.listState = signal('');
26
36
  this.alignState = signal('');
27
37
  this.selectedFont = 'medium';
28
38
  this.selectedColor = '';
@@ -57,10 +67,43 @@ export class AXWysiwygToolbarComponent {
57
67
  placeholder: 'Enter yor url ...',
58
68
  size: 'ax-sm',
59
69
  };
70
+ effect(() => {
71
+ this.wysiwyg().bold(false);
72
+ this.boldState.set(false);
73
+ this.wysiwyg().italic(false);
74
+ this.italicState.set(false);
75
+ this.wysiwyg().strike(false);
76
+ this.strikeLineState.set(false);
77
+ this.wysiwyg().underLine(false);
78
+ this.underLineState.set(false);
79
+ this.service.currentSelectedElemArray().forEach((item) => {
80
+ switch (item) {
81
+ case 'U':
82
+ this.wysiwyg().underLine(true);
83
+ this.underLineState.set(true);
84
+ break;
85
+ case 'S':
86
+ this.wysiwyg().strike(true);
87
+ this.strikeLineState.set(true);
88
+ break;
89
+ case 'EM':
90
+ this.wysiwyg().italic(true);
91
+ this.italicState.set(true);
92
+ break;
93
+ case 'STRONG':
94
+ this.wysiwyg().bold(true);
95
+ this.boldState.set(true);
96
+ break;
97
+ }
98
+ });
99
+ }, { allowSignalWrites: true });
60
100
  afterNextRender(() => {
61
101
  this.wysiwyg.set(this.service.wysiwyg());
62
102
  });
63
103
  }
104
+ submitLink() {
105
+ this.wysiwyg().addImage(this.textBoxOptions.text);
106
+ }
64
107
  changeColorHandler(e) {
65
108
  this.selectedColor = e;
66
109
  this.wysiwyg().color(e);
@@ -110,23 +153,23 @@ export class AXWysiwygToolbarComponent {
110
153
  }
111
154
  }
112
155
  orderList() {
113
- if (this.orderListState()) {
114
- this.wysiwyg().list('');
115
- this.orderListState.set('');
156
+ if (!this.listState() || this.listState() === 'bullet') {
157
+ this.wysiwyg().list('ordered');
158
+ this.listState.set('ordered');
116
159
  }
117
160
  else {
118
- this.wysiwyg().list('ordered');
119
- this.orderListState.set('ordered');
161
+ this.wysiwyg().list('');
162
+ this.listState.set('');
120
163
  }
121
164
  }
122
165
  unOrderList() {
123
- if (this.unOrderListState()) {
124
- this.wysiwyg().list('');
125
- this.unOrderListState.set('');
166
+ if (!this.listState() || this.listState() === 'ordered') {
167
+ this.wysiwyg().list('bullet');
168
+ this.listState.set('bullet');
126
169
  }
127
170
  else {
128
- this.wysiwyg().list('bullet');
129
- this.unOrderListState.set('bullet');
171
+ this.wysiwyg().list('');
172
+ this.listState.set('');
130
173
  }
131
174
  }
132
175
  alignStateHandler(e) {
@@ -153,10 +196,10 @@ export class AXWysiwygToolbarComponent {
153
196
  this.wysiwyg().background('red');
154
197
  }
155
198
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXWysiwygToolbarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
156
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.2", type: AXWysiwygToolbarComponent, selector: "ax-wysiwyg-toolbar", outputs: { outputHTML: "outputHTML" }, ngImport: i0, template: "<div class=\"ax-wysiwyg-toolbar-container ax-sm\">\n <ng-content select=\"ax-prefix\"></ng-content>\n\n <div class=\"ax-wysiwyg-tool-container\">\n <ax-button class=\"\" (click)=\"undo()\" look=\"blank\">\n <ax-icon class=\"ax-icon ax-icon-undo\"></ax-icon>\n </ax-button>\n\n <ax-button class=\"\" (click)=\"redo()\" look=\"blank\">\n <ax-icon class=\"ax-icon ax-icon-redo\"></ax-icon>\n </ax-button>\n\n <ax-button class=\"\" (click)=\"bold()\" look=\"blank\" [toggleable]=\"true\">\n <ax-icon class=\"ax-icon ax-icon-bold\"></ax-icon>\n </ax-button>\n\n <ax-button (click)=\"italic()\" look=\"blank\" [toggleable]=\"true\">\n <ax-icon class=\"ax-icon ax-icon-italic\"></ax-icon>\n </ax-button>\n\n <ax-button (click)=\"underLine()\" look=\"blank\" [toggleable]=\"true\">\n <ax-icon class=\"ax-icon ax-icon-under-line\"></ax-icon>\n </ax-button>\n\n <ax-button (click)=\"strike()\" look=\"blank\" [toggleable]=\"true\">\n <ax-icon class=\"ax-icon ax-icon-strike\"></ax-icon>\n </ax-button>\n\n <ax-button #colorBtn look=\"blank\">\n <ax-icon class=\"ax-icon ax-icon-color-palette\"></ax-icon>\n </ax-button>\n\n <ax-button #highlightBtn look=\"blank\">\n <ax-icon class=\"ax-icon ax-icon-highlight\"></ax-icon>\n </ax-button>\n\n <ax-popover [openOn]=\"popoverOption.openOn\" [closeOn]=\"popoverOption.closeOn\" [target]=\"colorBtn\" [placement]=\"popoverOption.placement\">\n <div class=\"ax-overlay-pane\">\n <ax-color-palette (ngModelChange)=\"changeColorHandler($event)\" [ngModel]=\"selectedColor\">\n <ax-color-palette-preview></ax-color-palette-preview>\n <ax-color-palette-picker></ax-color-palette-picker>\n <ax-color-palette-input></ax-color-palette-input>\n </ax-color-palette>\n </div>\n </ax-popover>\n\n <ax-popover\n [openOn]=\"popoverOption.openOn\"\n [closeOn]=\"popoverOption.closeOn\"\n [target]=\"highlightBtn\"\n [placement]=\"popoverOption.placement\"\n >\n <div class=\"ax-overlay-pane\">\n <ax-color-palette (ngModelChange)=\"changeHighlightColorHandler($event)\" [ngModel]=\"selectedHighlightColor\">\n <ax-color-palette-preview></ax-color-palette-preview>\n <ax-color-palette-picker></ax-color-palette-picker>\n <ax-color-palette-input></ax-color-palette-input>\n </ax-color-palette>\n </div>\n </ax-popover>\n\n <ax-select-box (ngModelChange)=\"fontHandler($event)\" [ngModel]=\"selectedFont\" [dataSource]=\"fontSize\" placeholder=\"Choose...\">\n </ax-select-box>\n\n <ax-button (click)=\"orderList()\" look=\"blank\" [toggleable]=\"true\">\n <ax-icon class=\"ax-icon ax-icon-order-list\"></ax-icon>\n </ax-button>\n\n <ax-button (click)=\"unOrderList()\" look=\"blank\" [toggleable]=\"true\">\n <ax-icon class=\"ax-icon ax-icon-un-order-list\"></ax-icon>\n </ax-button>\n\n <ax-button look=\"blank\" #alignPop>\n <ax-icon class=\"ax-icon ax-icon-align-left\"></ax-icon>\n </ax-button>\n\n <ax-popover [openOn]=\"popoverOption.openOn\" [closeOn]=\"popoverOption.closeOn\" [target]=\"alignPop\" [placement]=\"popoverOption.placement\">\n <div class=\"ax-overlay-pane\">\n <ax-button\n (click)=\"alignStateHandler('left')\"\n [look]=\"alignState() !== 'left' && 'blank'\"\n [color]=\"alignState() === 'left' && 'primary'\"\n >\n <ax-icon class=\"ax-icon ax-icon-align-left\"></ax-icon>\n </ax-button>\n\n <ax-button\n (click)=\"alignStateHandler('center')\"\n [look]=\"alignState() !== 'center' && 'blank'\"\n [color]=\"alignState() === 'center' && 'primary'\"\n >\n <ax-icon class=\"ax-icon ax-icon-align-center\"></ax-icon>\n </ax-button>\n\n <ax-button\n (click)=\"alignStateHandler('right')\"\n [look]=\"alignState() !== 'right' && 'blank'\"\n [color]=\"alignState() === 'right' && 'primary'\"\n >\n <ax-icon class=\"ax-icon ax-icon-align-right\"></ax-icon>\n </ax-button>\n </div>\n </ax-popover>\n\n <ax-button #linkBtn look=\"blank\">\n <ax-icon class=\"ax-icon ax-icon-image\"></ax-icon>\n </ax-button>\n\n <ax-popover [openOn]=\"popoverOption.openOn\" [closeOn]=\"popoverOption.closeOn\" [target]=\"linkBtn\" [placement]=\"popoverOption.placement\">\n <ax-text-box class=\"{{ textBoxOptions.size }}\" [(ngModel)]=\"textBoxOptions.text\" [placeholder]=\"textBoxOptions.placeholder\">\n </ax-text-box>\n <ax-suffix>\n <ax-button (click)=\"submitLink()\" class=\"ax-sm\" color=\"secondary\" text=\"Add\"> </ax-button>\n </ax-suffix>\n </ax-popover>\n </div>\n\n <ng-content select=\"ax-suffix\"></ng-content>\n</div>\n", styles: [".ax-wysiwyg-toolbar-container{display:flex;justify-content:space-between;align-items:center;padding:.5rem 1rem}.ax-wysiwyg-toolbar-container .ax-icon{font-weight:900;font-size:1rem}.ax-wysiwyg-toolbar-container .ax-wysiwyg-tool-container{display:flex}.ax-wysiwyg-toolbar-container .ax-wysiwyg-tool-container ax-button{margin-inline:.1rem}.ax-wysiwyg-toolbar-container .ax-wysiwyg-tool-container ax-select-box{margin-inline:1rem}\n"], dependencies: [{ kind: "component", type: i1.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "component", type: i2.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i2.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-sub-title, ax-placeholder, ax-overlay" }, { kind: "component", type: i3.AXSelectBoxComponent, selector: "ax-select-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "id", "type", "look", "multiple", "valueField", "textField", "textTemplate", "dataSource", "caption", "itemTemplate", "selectedTemplate", "emptyTemplate", "loadingTemplate", "dropdownWidth"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onOpened", "onClosed"] }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i5.AXColorPalleteComponent, selector: "ax-color-palette", inputs: ["disabled", "tabIndex", "readonly", "value", "state", "name", "checked"], outputs: ["onBlur", "onFocus", "valueChange", "stateChange", "onValueChanged", "readonlyChange", "disabledChange"] }, { kind: "component", type: i5.AXColorPalettePreviewComponent, selector: "ax-color-palette-preview" }, { kind: "component", type: i5.AXColorPaletteInputComponent, selector: "ax-color-palette-input" }, { kind: "component", type: i5.AXColorPalettePickerComponent, selector: "ax-color-palette-picker" }, { kind: "component", type: i6.AXPopoverComponent, selector: "ax-popover", inputs: ["offsetX", "offsetY", "target", "placement", "content", "openOn", "closeOn", "hasBackdrop", "openAfter", "closeAfter", "backdropClass", "adaptivityEnabled"], outputs: ["onOpened", "onClosed"] }, { kind: "component", type: i7.AXTextBoxComponent, selector: "ax-text-box", inputs: ["disabled", "tabIndex", "readonly", "value", "state", "name", "id", "placeholder", "maxLength", "allowNull", "type", "autoComplete", "look", "mask-options", "class"], outputs: ["onBlur", "onFocus", "valueChange", "stateChange", "onValueChanged", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }], encapsulation: i0.ViewEncapsulation.None }); }
199
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.2", type: AXWysiwygToolbarComponent, selector: "ax-wysiwyg-toolbar", inputs: { config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { outputHTML: "outputHTML" }, ngImport: i0, template: "<div class=\"ax-wysiwyg-toolbar-container ax-sm\">\n <ng-content select=\"ax-prefix\"></ng-content>\n\n <div class=\"ax-wysiwyg-tool-container\">\n @if (config().undo) {\n <ax-button class=\"\" (click)=\"undo()\" look=\"blank\">\n <ax-icon class=\"ax-icon ax-icon-undo\"></ax-icon>\n </ax-button>\n }\n\n @if (config().redo) {\n <ax-button class=\"\" (click)=\"redo()\" look=\"blank\">\n <ax-icon class=\"ax-icon ax-icon-redo\"></ax-icon>\n </ax-button>\n }\n @if (config().bold) {\n <ax-button (click)=\"bold()\" [look]=\"boldState() ? 'solid' : 'blank'\">\n <ax-icon class=\"ax-icon ax-icon-bold\"></ax-icon>\n </ax-button>\n }\n @if (config().italic) {\n <ax-button (click)=\"italic()\" [look]=\"italicState() ? 'solid' : 'blank'\">\n <ax-icon class=\"ax-icon ax-icon-italic\"></ax-icon>\n </ax-button>\n }\n @if (config().underLine) {\n <ax-button (click)=\"underLine()\" [look]=\"underLineState() ? 'solid' : 'blank'\">\n <ax-icon class=\"ax-icon ax-icon-under-line\"></ax-icon>\n </ax-button>\n }\n @if (config().strike) {\n <ax-button (click)=\"strike()\" [look]=\"strikeLineState() ? 'solid' : 'blank'\">\n <ax-icon class=\"ax-icon ax-icon-strike\"></ax-icon>\n </ax-button>\n }\n @if (config().color) {\n <ax-button #colorBtn look=\"blank\">\n <ax-icon class=\"ax-icon ax-icon-color-palette\"></ax-icon>\n </ax-button>\n <ax-popover\n [openOn]=\"popoverOption.openOn\"\n [closeOn]=\"popoverOption.closeOn\"\n [target]=\"colorBtn\"\n [placement]=\"popoverOption.placement\"\n >\n <div class=\"ax-overlay-pane\">\n <ax-color-palette (ngModelChange)=\"changeColorHandler($event)\" [ngModel]=\"selectedColor\">\n <ax-color-palette-preview></ax-color-palette-preview>\n <ax-color-palette-picker></ax-color-palette-picker>\n <ax-color-palette-input></ax-color-palette-input>\n </ax-color-palette>\n </div>\n </ax-popover>\n }\n @if (config().highlight) {\n <ax-button #highlightBtn look=\"blank\">\n <ax-icon class=\"ax-icon ax-icon-highlight\"></ax-icon>\n </ax-button>\n <ax-popover\n [openOn]=\"popoverOption.openOn\"\n [closeOn]=\"popoverOption.closeOn\"\n [target]=\"highlightBtn\"\n [placement]=\"popoverOption.placement\"\n >\n <div class=\"ax-overlay-pane\">\n <ax-color-palette (ngModelChange)=\"changeHighlightColorHandler($event)\" [ngModel]=\"selectedHighlightColor\">\n <ax-color-palette-preview></ax-color-palette-preview>\n <ax-color-palette-picker></ax-color-palette-picker>\n <ax-color-palette-input></ax-color-palette-input>\n </ax-color-palette>\n </div>\n </ax-popover>\n }\n @if (config().fontSize) {\n <ax-select-box (ngModelChange)=\"fontHandler($event)\" [ngModel]=\"selectedFont\" [dataSource]=\"fontSize\" placeholder=\"Choose...\">\n </ax-select-box>\n }\n @if (config().list) {\n <ax-button (click)=\"orderList()\" [look]=\"listState() === 'ordered' ? 'solid' : 'blank'\">\n <ax-icon class=\"ax-icon ax-icon-order-list\"></ax-icon>\n </ax-button>\n\n <ax-button (click)=\"unOrderList()\" [look]=\"listState() === 'bullet' ? 'solid' : 'blank'\">\n <ax-icon class=\"ax-icon ax-icon-un-order-list\"></ax-icon>\n </ax-button>\n }\n @if (config().alignment) {\n <ax-button look=\"blank\" #alignPop>\n <ax-icon class=\"ax-icon ax-icon-align-left\"></ax-icon>\n </ax-button>\n <ax-popover\n [openOn]=\"popoverOption.openOn\"\n [closeOn]=\"popoverOption.closeOn\"\n [target]=\"alignPop\"\n [placement]=\"popoverOption.placement\"\n >\n <div class=\"ax-overlay-pane\">\n <ax-button (click)=\"alignStateHandler('left')\" [look]=\"alignState() === 'left' ? 'solid' : 'blank'\">\n <ax-icon class=\"ax-icon ax-icon-align-left\"></ax-icon>\n </ax-button>\n\n <ax-button (click)=\"alignStateHandler('center')\" [look]=\"alignState() === 'center' ? 'solid' : 'blank'\">\n <ax-icon class=\"ax-icon ax-icon-align-center\"></ax-icon>\n </ax-button>\n\n <ax-button (click)=\"alignStateHandler('right')\" [look]=\"alignState() === 'right' ? 'solid' : 'blank'\">\n <ax-icon class=\"ax-icon ax-icon-align-right\"></ax-icon>\n </ax-button>\n </div>\n </ax-popover>\n }\n @if (config().image) {\n <ax-button #linkBtn look=\"blank\">\n <ax-icon class=\"ax-icon ax-icon-image\"></ax-icon>\n </ax-button>\n\n <ax-popover\n [openOn]=\"popoverOption.openOn\"\n [closeOn]=\"popoverOption.closeOn\"\n [target]=\"linkBtn\"\n [placement]=\"popoverOption.placement\"\n >\n <ax-text-box class=\"{{ textBoxOptions.size }}\" [(ngModel)]=\"textBoxOptions.text\" [placeholder]=\"textBoxOptions.placeholder\">\n </ax-text-box>\n <ax-suffix>\n <ax-button (click)=\"submitLink()\" class=\"ax-sm\" color=\"secondary\" text=\"Add\"> </ax-button>\n </ax-suffix>\n </ax-popover>\n }\n </div>\n\n <ng-content select=\"ax-suffix\"></ng-content>\n</div>\n", styles: [".ax-wysiwyg-toolbar-container{display:flex;justify-content:space-between;align-items:center;padding:.5rem 1rem}.ax-wysiwyg-toolbar-container .ax-icon{font-weight:900;font-size:1rem}.ax-wysiwyg-toolbar-container .ax-wysiwyg-tool-container{display:flex}.ax-wysiwyg-toolbar-container .ax-wysiwyg-tool-container ax-button{margin-inline:.1rem}.ax-wysiwyg-toolbar-container .ax-wysiwyg-tool-container ax-select-box{margin-inline:1rem}\n"], dependencies: [{ kind: "component", type: i1.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "component", type: i2.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i2.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-sub-title, ax-placeholder, ax-overlay" }, { kind: "component", type: i3.AXSelectBoxComponent, selector: "ax-select-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "id", "type", "look", "multiple", "valueField", "textField", "textTemplate", "dataSource", "caption", "itemTemplate", "selectedTemplate", "emptyTemplate", "loadingTemplate", "dropdownWidth"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onOpened", "onClosed"] }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i5.AXColorPalleteComponent, selector: "ax-color-palette", inputs: ["disabled", "tabIndex", "readonly", "value", "state", "name", "checked"], outputs: ["onBlur", "onFocus", "valueChange", "stateChange", "onValueChanged", "readonlyChange", "disabledChange"] }, { kind: "component", type: i5.AXColorPalettePreviewComponent, selector: "ax-color-palette-preview" }, { kind: "component", type: i5.AXColorPaletteInputComponent, selector: "ax-color-palette-input" }, { kind: "component", type: i5.AXColorPalettePickerComponent, selector: "ax-color-palette-picker" }, { kind: "component", type: i6.AXPopoverComponent, selector: "ax-popover", inputs: ["offsetX", "offsetY", "target", "placement", "content", "openOn", "closeOn", "hasBackdrop", "openAfter", "closeAfter", "backdropClass", "adaptivityEnabled"], outputs: ["onOpened", "onClosed"] }, { kind: "component", type: i7.AXTextBoxComponent, selector: "ax-text-box", inputs: ["disabled", "tabIndex", "readonly", "value", "state", "name", "id", "placeholder", "maxLength", "allowNull", "type", "autoComplete", "look", "mask-options", "class"], outputs: ["onBlur", "onFocus", "valueChange", "stateChange", "onValueChanged", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }], encapsulation: i0.ViewEncapsulation.None }); }
157
200
  }
158
201
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXWysiwygToolbarComponent, decorators: [{
159
202
  type: Component,
160
- args: [{ selector: 'ax-wysiwyg-toolbar', encapsulation: ViewEncapsulation.None, template: "<div class=\"ax-wysiwyg-toolbar-container ax-sm\">\n <ng-content select=\"ax-prefix\"></ng-content>\n\n <div class=\"ax-wysiwyg-tool-container\">\n <ax-button class=\"\" (click)=\"undo()\" look=\"blank\">\n <ax-icon class=\"ax-icon ax-icon-undo\"></ax-icon>\n </ax-button>\n\n <ax-button class=\"\" (click)=\"redo()\" look=\"blank\">\n <ax-icon class=\"ax-icon ax-icon-redo\"></ax-icon>\n </ax-button>\n\n <ax-button class=\"\" (click)=\"bold()\" look=\"blank\" [toggleable]=\"true\">\n <ax-icon class=\"ax-icon ax-icon-bold\"></ax-icon>\n </ax-button>\n\n <ax-button (click)=\"italic()\" look=\"blank\" [toggleable]=\"true\">\n <ax-icon class=\"ax-icon ax-icon-italic\"></ax-icon>\n </ax-button>\n\n <ax-button (click)=\"underLine()\" look=\"blank\" [toggleable]=\"true\">\n <ax-icon class=\"ax-icon ax-icon-under-line\"></ax-icon>\n </ax-button>\n\n <ax-button (click)=\"strike()\" look=\"blank\" [toggleable]=\"true\">\n <ax-icon class=\"ax-icon ax-icon-strike\"></ax-icon>\n </ax-button>\n\n <ax-button #colorBtn look=\"blank\">\n <ax-icon class=\"ax-icon ax-icon-color-palette\"></ax-icon>\n </ax-button>\n\n <ax-button #highlightBtn look=\"blank\">\n <ax-icon class=\"ax-icon ax-icon-highlight\"></ax-icon>\n </ax-button>\n\n <ax-popover [openOn]=\"popoverOption.openOn\" [closeOn]=\"popoverOption.closeOn\" [target]=\"colorBtn\" [placement]=\"popoverOption.placement\">\n <div class=\"ax-overlay-pane\">\n <ax-color-palette (ngModelChange)=\"changeColorHandler($event)\" [ngModel]=\"selectedColor\">\n <ax-color-palette-preview></ax-color-palette-preview>\n <ax-color-palette-picker></ax-color-palette-picker>\n <ax-color-palette-input></ax-color-palette-input>\n </ax-color-palette>\n </div>\n </ax-popover>\n\n <ax-popover\n [openOn]=\"popoverOption.openOn\"\n [closeOn]=\"popoverOption.closeOn\"\n [target]=\"highlightBtn\"\n [placement]=\"popoverOption.placement\"\n >\n <div class=\"ax-overlay-pane\">\n <ax-color-palette (ngModelChange)=\"changeHighlightColorHandler($event)\" [ngModel]=\"selectedHighlightColor\">\n <ax-color-palette-preview></ax-color-palette-preview>\n <ax-color-palette-picker></ax-color-palette-picker>\n <ax-color-palette-input></ax-color-palette-input>\n </ax-color-palette>\n </div>\n </ax-popover>\n\n <ax-select-box (ngModelChange)=\"fontHandler($event)\" [ngModel]=\"selectedFont\" [dataSource]=\"fontSize\" placeholder=\"Choose...\">\n </ax-select-box>\n\n <ax-button (click)=\"orderList()\" look=\"blank\" [toggleable]=\"true\">\n <ax-icon class=\"ax-icon ax-icon-order-list\"></ax-icon>\n </ax-button>\n\n <ax-button (click)=\"unOrderList()\" look=\"blank\" [toggleable]=\"true\">\n <ax-icon class=\"ax-icon ax-icon-un-order-list\"></ax-icon>\n </ax-button>\n\n <ax-button look=\"blank\" #alignPop>\n <ax-icon class=\"ax-icon ax-icon-align-left\"></ax-icon>\n </ax-button>\n\n <ax-popover [openOn]=\"popoverOption.openOn\" [closeOn]=\"popoverOption.closeOn\" [target]=\"alignPop\" [placement]=\"popoverOption.placement\">\n <div class=\"ax-overlay-pane\">\n <ax-button\n (click)=\"alignStateHandler('left')\"\n [look]=\"alignState() !== 'left' && 'blank'\"\n [color]=\"alignState() === 'left' && 'primary'\"\n >\n <ax-icon class=\"ax-icon ax-icon-align-left\"></ax-icon>\n </ax-button>\n\n <ax-button\n (click)=\"alignStateHandler('center')\"\n [look]=\"alignState() !== 'center' && 'blank'\"\n [color]=\"alignState() === 'center' && 'primary'\"\n >\n <ax-icon class=\"ax-icon ax-icon-align-center\"></ax-icon>\n </ax-button>\n\n <ax-button\n (click)=\"alignStateHandler('right')\"\n [look]=\"alignState() !== 'right' && 'blank'\"\n [color]=\"alignState() === 'right' && 'primary'\"\n >\n <ax-icon class=\"ax-icon ax-icon-align-right\"></ax-icon>\n </ax-button>\n </div>\n </ax-popover>\n\n <ax-button #linkBtn look=\"blank\">\n <ax-icon class=\"ax-icon ax-icon-image\"></ax-icon>\n </ax-button>\n\n <ax-popover [openOn]=\"popoverOption.openOn\" [closeOn]=\"popoverOption.closeOn\" [target]=\"linkBtn\" [placement]=\"popoverOption.placement\">\n <ax-text-box class=\"{{ textBoxOptions.size }}\" [(ngModel)]=\"textBoxOptions.text\" [placeholder]=\"textBoxOptions.placeholder\">\n </ax-text-box>\n <ax-suffix>\n <ax-button (click)=\"submitLink()\" class=\"ax-sm\" color=\"secondary\" text=\"Add\"> </ax-button>\n </ax-suffix>\n </ax-popover>\n </div>\n\n <ng-content select=\"ax-suffix\"></ng-content>\n</div>\n", styles: [".ax-wysiwyg-toolbar-container{display:flex;justify-content:space-between;align-items:center;padding:.5rem 1rem}.ax-wysiwyg-toolbar-container .ax-icon{font-weight:900;font-size:1rem}.ax-wysiwyg-toolbar-container .ax-wysiwyg-tool-container{display:flex}.ax-wysiwyg-toolbar-container .ax-wysiwyg-tool-container ax-button{margin-inline:.1rem}.ax-wysiwyg-toolbar-container .ax-wysiwyg-tool-container ax-select-box{margin-inline:1rem}\n"] }]
203
+ args: [{ selector: 'ax-wysiwyg-toolbar', encapsulation: ViewEncapsulation.None, template: "<div class=\"ax-wysiwyg-toolbar-container ax-sm\">\n <ng-content select=\"ax-prefix\"></ng-content>\n\n <div class=\"ax-wysiwyg-tool-container\">\n @if (config().undo) {\n <ax-button class=\"\" (click)=\"undo()\" look=\"blank\">\n <ax-icon class=\"ax-icon ax-icon-undo\"></ax-icon>\n </ax-button>\n }\n\n @if (config().redo) {\n <ax-button class=\"\" (click)=\"redo()\" look=\"blank\">\n <ax-icon class=\"ax-icon ax-icon-redo\"></ax-icon>\n </ax-button>\n }\n @if (config().bold) {\n <ax-button (click)=\"bold()\" [look]=\"boldState() ? 'solid' : 'blank'\">\n <ax-icon class=\"ax-icon ax-icon-bold\"></ax-icon>\n </ax-button>\n }\n @if (config().italic) {\n <ax-button (click)=\"italic()\" [look]=\"italicState() ? 'solid' : 'blank'\">\n <ax-icon class=\"ax-icon ax-icon-italic\"></ax-icon>\n </ax-button>\n }\n @if (config().underLine) {\n <ax-button (click)=\"underLine()\" [look]=\"underLineState() ? 'solid' : 'blank'\">\n <ax-icon class=\"ax-icon ax-icon-under-line\"></ax-icon>\n </ax-button>\n }\n @if (config().strike) {\n <ax-button (click)=\"strike()\" [look]=\"strikeLineState() ? 'solid' : 'blank'\">\n <ax-icon class=\"ax-icon ax-icon-strike\"></ax-icon>\n </ax-button>\n }\n @if (config().color) {\n <ax-button #colorBtn look=\"blank\">\n <ax-icon class=\"ax-icon ax-icon-color-palette\"></ax-icon>\n </ax-button>\n <ax-popover\n [openOn]=\"popoverOption.openOn\"\n [closeOn]=\"popoverOption.closeOn\"\n [target]=\"colorBtn\"\n [placement]=\"popoverOption.placement\"\n >\n <div class=\"ax-overlay-pane\">\n <ax-color-palette (ngModelChange)=\"changeColorHandler($event)\" [ngModel]=\"selectedColor\">\n <ax-color-palette-preview></ax-color-palette-preview>\n <ax-color-palette-picker></ax-color-palette-picker>\n <ax-color-palette-input></ax-color-palette-input>\n </ax-color-palette>\n </div>\n </ax-popover>\n }\n @if (config().highlight) {\n <ax-button #highlightBtn look=\"blank\">\n <ax-icon class=\"ax-icon ax-icon-highlight\"></ax-icon>\n </ax-button>\n <ax-popover\n [openOn]=\"popoverOption.openOn\"\n [closeOn]=\"popoverOption.closeOn\"\n [target]=\"highlightBtn\"\n [placement]=\"popoverOption.placement\"\n >\n <div class=\"ax-overlay-pane\">\n <ax-color-palette (ngModelChange)=\"changeHighlightColorHandler($event)\" [ngModel]=\"selectedHighlightColor\">\n <ax-color-palette-preview></ax-color-palette-preview>\n <ax-color-palette-picker></ax-color-palette-picker>\n <ax-color-palette-input></ax-color-palette-input>\n </ax-color-palette>\n </div>\n </ax-popover>\n }\n @if (config().fontSize) {\n <ax-select-box (ngModelChange)=\"fontHandler($event)\" [ngModel]=\"selectedFont\" [dataSource]=\"fontSize\" placeholder=\"Choose...\">\n </ax-select-box>\n }\n @if (config().list) {\n <ax-button (click)=\"orderList()\" [look]=\"listState() === 'ordered' ? 'solid' : 'blank'\">\n <ax-icon class=\"ax-icon ax-icon-order-list\"></ax-icon>\n </ax-button>\n\n <ax-button (click)=\"unOrderList()\" [look]=\"listState() === 'bullet' ? 'solid' : 'blank'\">\n <ax-icon class=\"ax-icon ax-icon-un-order-list\"></ax-icon>\n </ax-button>\n }\n @if (config().alignment) {\n <ax-button look=\"blank\" #alignPop>\n <ax-icon class=\"ax-icon ax-icon-align-left\"></ax-icon>\n </ax-button>\n <ax-popover\n [openOn]=\"popoverOption.openOn\"\n [closeOn]=\"popoverOption.closeOn\"\n [target]=\"alignPop\"\n [placement]=\"popoverOption.placement\"\n >\n <div class=\"ax-overlay-pane\">\n <ax-button (click)=\"alignStateHandler('left')\" [look]=\"alignState() === 'left' ? 'solid' : 'blank'\">\n <ax-icon class=\"ax-icon ax-icon-align-left\"></ax-icon>\n </ax-button>\n\n <ax-button (click)=\"alignStateHandler('center')\" [look]=\"alignState() === 'center' ? 'solid' : 'blank'\">\n <ax-icon class=\"ax-icon ax-icon-align-center\"></ax-icon>\n </ax-button>\n\n <ax-button (click)=\"alignStateHandler('right')\" [look]=\"alignState() === 'right' ? 'solid' : 'blank'\">\n <ax-icon class=\"ax-icon ax-icon-align-right\"></ax-icon>\n </ax-button>\n </div>\n </ax-popover>\n }\n @if (config().image) {\n <ax-button #linkBtn look=\"blank\">\n <ax-icon class=\"ax-icon ax-icon-image\"></ax-icon>\n </ax-button>\n\n <ax-popover\n [openOn]=\"popoverOption.openOn\"\n [closeOn]=\"popoverOption.closeOn\"\n [target]=\"linkBtn\"\n [placement]=\"popoverOption.placement\"\n >\n <ax-text-box class=\"{{ textBoxOptions.size }}\" [(ngModel)]=\"textBoxOptions.text\" [placeholder]=\"textBoxOptions.placeholder\">\n </ax-text-box>\n <ax-suffix>\n <ax-button (click)=\"submitLink()\" class=\"ax-sm\" color=\"secondary\" text=\"Add\"> </ax-button>\n </ax-suffix>\n </ax-popover>\n }\n </div>\n\n <ng-content select=\"ax-suffix\"></ng-content>\n</div>\n", styles: [".ax-wysiwyg-toolbar-container{display:flex;justify-content:space-between;align-items:center;padding:.5rem 1rem}.ax-wysiwyg-toolbar-container .ax-icon{font-weight:900;font-size:1rem}.ax-wysiwyg-toolbar-container .ax-wysiwyg-tool-container{display:flex}.ax-wysiwyg-toolbar-container .ax-wysiwyg-tool-container ax-button{margin-inline:.1rem}.ax-wysiwyg-toolbar-container .ax-wysiwyg-tool-container ax-select-box{margin-inline:1rem}\n"] }]
161
204
  }], ctorParameters: () => [] });
162
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid3lzaXd5Zy10b29sYmFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy93eXNpd3lnL3NyYy9saWIvd3lzaXd5Zy93eXNpd3lnLXRvb2xiYXIvd3lzaXd5Zy10b29sYmFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy93eXNpd3lnL3NyYy9saWIvd3lzaXd5Zy93eXNpd3lnLXRvb2xiYXIvd3lzaXd5Zy10b29sYmFyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBZ0IsWUFBWSxFQUFlLE1BQU0sMkJBQTJCLENBQUM7QUFFcEYsT0FBTyxFQUFFLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSxlQUFlLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdEcsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7Ozs7Ozs7OztBQVF0RCxNQUFNLE9BQU8seUJBQXlCO0lBdURwQyxVQUFVO1FBQ1IsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3BELENBQUM7SUFFRDtRQTFEQSxlQUFVLEdBQUcsTUFBTSxFQUFnQixDQUFDO1FBQ3BDLFlBQU8sR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUV6QixZQUFPLEdBQUcsTUFBTSxDQUFtQixJQUFJLENBQUMsQ0FBQztRQUN6QyxjQUFTLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzFCLGdCQUFXLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzVCLG1CQUFjLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQy9CLG9CQUFlLEdBQUcs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TUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQzVCLElBQUksQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2pDLENBQUM7SUFDSCxDQUFDO0lBRUQsVUFBVTtRQUNSLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDbkMsQ0FBQzs4R0FsS1UseUJBQXlCO2tHQUF6Qix5QkFBeUIsaUdDWnRDLHN2SkF1SEE7OzJGRDNHYSx5QkFBeUI7a0JBTnJDLFNBQVM7K0JBQ0Usb0JBQW9CLGlCQUdmLGlCQUFpQixDQUFDLElBQUkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWFd5c2l3eWcgfSBmcm9tICdAYWNvcmV4L2Nkay93eXNpd3lnJztcbmltcG9ydCB7IEFYQ2xpY2tFdmVudCwgQVhEYXRhU291cmNlLCBBWFBsYWNlbWVudCB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9jb21tb24nO1xuaW1wb3J0IHsgQVhQb3BvdmVyQ2xvc2VUcmlnZ2VyLCBBWFBvcG92ZXJPcGVuVHJpZ2dlciB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9wb3BvdmVyJztcbmltcG9ydCB7IENvbXBvbmVudCwgVmlld0VuY2Fwc3VsYXRpb24sIGFmdGVyTmV4dFJlbmRlciwgaW5qZWN0LCBvdXRwdXQsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhXeXNpd3lnU2VydmljZSB9IGZyb20gJy4uL3d5c2l3eWcuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F4LXd5c2l3eWctdG9vbGJhcicsXG4gIHRlbXBsYXRlVXJsOiAnLi93eXNpd3lnLXRvb2xiYXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vd3lzaXd5Zy10b29sYmFyLmNvbXBvbmVudC5zY3NzJyxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbn0pXG5leHBvcnQgY2xhc3MgQVhXeXNpd3lnVG9vbGJhckNvbXBvbmVudCB7XG4gIG91dHB1dEhUTUwgPSBvdXRwdXQ8QVhDbGlja0V2ZW50PigpO1xuICBzZXJ2aWNlID0gaW5qZWN0KEFYV3lzaXd5Z1NlcnZpY2UpO1xuXG4gIHByb3RlY3RlZCB3eXNpd3lnID0gc2lnbmFsPEFYV3lzaXd5ZyB8IG51bGw+KG51bGwpO1xuICBwcm90ZWN0ZWQgYm9sZFN0YXRlID0gc2lnbmFsKGZhbHNlKTtcbiAgcHJvdGVjdGVkIGl0YWxpY1N0YXRlID0gc2lnbmFsKGZhbHNlKTtcbiAgcHJvdGVjdGVkIHVuZGVyTGluZVN0YXRlID0gc2lnbmFsKGZhbHNlKTtcbiAgcHJvdGVjdGVkIHN0cmlrZUxpbmVTdGF0ZSA9IHNpZ25hbChmYWxzZSk7XG4gIHByb3RlY3RlZCBvcmRlckxpc3RTdGF0ZSA9IHNpZ25hbCgnJyk7XG4gIHByb3RlY3RlZCB1bk9yZGVyTGlzdFN0YXRlID0gc2lnbmFsKCcnKTtcbiAgcHJvdGVjdGVkIGFsaWduU3RhdGUgPSBzaWduYWwoJycpO1xuICBwcm90ZWN0ZWQgc2VsZWN0ZWRGb250ID0gJ21lZGl1bSc7XG4gIHByb3RlY3RlZCBzZWxlY3RlZENvbG9yID0gJyc7XG4gIHByb3RlY3RlZCBzZWxlY3RlZEhpZ2hsaWdodENvbG9yID0gJyc7XG4gIHByb3RlY3RlZCBsaW5rQWRkcmVzcyA9ICcnO1xuXG4gIHByb3RlY3RlZCBmb250U2l6ZSA9IG5ldyBBWERhdGFTb3VyY2U8c3RyaW5nPih7XG4gICAgcGFnZVNpemU6IDEwLFxuICAgIGtleTogJ2lkJyxcbiAgICBsb2FkOiAoZSkgPT4ge1xuICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiB7XG4gICAgICAgIHJlc29sdmUoe1xuICAgICAgICAgIGl0ZW1zOiBbJ3NtYWxsJywgJ21lZGl1bScsICdsYXJnZScsICdodWdlJ10sXG4gICAgICAgICAgdG90YWw6IDQsXG4gICAgICAgIH0pO1xuICAgICAgfSk7XG4gICAgfSxcbiAgICBieUtleTogKGtleSkgPT4ge1xuICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiB7XG4gICAgICAgIHJlc29sdmUoJ21lZGl1bScpO1xuICAgICAgfSk7XG4gICAgfSxcbiAgfSk7XG5cbiAgcHJvdGVjdGVkIHBvcG92ZXJPcHRpb246IHtcbiAgICBvcGVuT246IEFYUG9wb3Zlck9wZW5UcmlnZ2VyO1xuICAgIGNsb3NlT246IEFYUG9wb3ZlckNsb3NlVHJpZ2dlcjtcbiAgICBwbGFjZW1lbnQ6IEFYUGxhY2VtZW50O1xuICAgIG9mZnNldFg6IG51bWJlcjtcbiAgICBvZmZzZXRZOiBudW1iZXI7XG4gIH0gPSB7XG4gICAgb3Blbk9uOiAnY2xpY2snLFxuICAgIGNsb3NlT246ICdjbGlja091dCcsXG4gICAgcGxhY2VtZW50OiAndG9wJyxcbiAgICBvZmZzZXRYOiAwLFxuICAgIG9mZnNldFk6IDAsXG4gIH07XG5cbiAgdGV4dEJveE9wdGlvbnMgPSB7XG4gICAgdGV4dDogJycsXG4gICAgcGxhY2Vob2xkZXI6ICdFbnRlciB5b3IgdXJsIC4uLicsXG4gICAgc2l6ZTogJ2F4LXNtJyxcbiAgfTtcblxuICBzdWJtaXRMaW5rKCkge1xuICAgIHRoaXMud3lzaXd5ZygpLmFkZEltYWdlKHRoaXMudGV4dEJveE9wdGlvbnMudGV4dCk7XG4gIH1cblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBhZnRlck5leHRSZW5kZXIoKCkgPT4ge1xuICAgICAgdGhpcy53eXNpd3lnLnNldCh0aGlzLnNlcnZpY2Uud3lzaXd5ZygpKTtcbiAgICB9KTtcbiAgfVxuXG4gIGNoYW5nZUNvbG9ySGFuZGxlcihlOiBzdHJpbmcpIHtcbiAgICB0aGlzLnNlbGVjdGVkQ29sb3IgPSBlO1xuICAgIHRoaXMud3lzaXd5ZygpLmNvbG9yKGUpO1xuICB9XG5cbiAgY2hhbmdlSGlnaGxpZ2h0Q29sb3JIYW5kbGVyKGU6IHN0cmluZykge1xuICAgIHRoaXMuc2VsZWN0ZWRIaWdobGlnaHRDb2xvciA9IGU7XG4gICAgdGhpcy53eXNpd3lnKCkuYmFja2dyb3VuZChlKTtcbiAgfVxuXG4gIGZvbnRIYW5kbGVyKGU6IGFueSkge1xuICAgIHRoaXMud3lzaXd5ZygpLmZvbnRTaXplKGUpO1xuICB9XG5cbiAgYm9sZCgpIHtcbiAgICBpZiAodGhpcy5ib2xkU3RhdGUoKSkge1xuICAgICAgdGhpcy53eXNpd3lnKCkuYm9sZChmYWxzZSk7XG4gICAgICB0aGlzLmJvbGRTdGF0ZS5zZXQoZmFsc2UpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnd5c2l3eWcoKS5ib2xkKHRydWUpO1xuICAgICAgdGhpcy5ib2xkU3RhdGUuc2V0KHRydWUpO1xuICAgIH1cbiAgfVxuXG4gIG91dCgpIHtcbiAgICB0aGlzLm91dHB1dEhUTUwuZW1pdCh7XG4gICAgICBjb21wb25lbnQ6IHRoaXMsXG4gICAgICBkYXRhOiB7IHZhbHVlOiB0aGlzLnd5c2l3eWcoKS5IVE1Mb3V0cHV0IH0sXG4gICAgICBpc1VzZXJJbnRlcmFjdGlvbjogdHJ1ZSxcbiAgICB9KTtcbiAgfVxuXG4gIGl0YWxpYygpIHtcbiAgICBpZiAodGhpcy5pdGFsaWNTdGF0ZSgpKSB7XG4gICAgICB0aGlzLnd5c2l3eWcoKS5pdGFsaWMoZmFsc2UpO1xuICAgICAgdGhpcy5pdGFsaWNTdGF0ZS5zZXQoZmFsc2UpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnd5c2l3eWcoKS5pdGFsaWModHJ1ZSk7XG4gICAgICB0aGlzLml0YWxpY1N0YXRlLnNldCh0cnVlKTtcbiAgICB9XG4gIH1cblxuICB1bmRlckxpbmUoKSB7XG4gICAgaWYgKHRoaXMudW5kZXJMaW5lU3RhdGUoKSkge1xuICAgICAgdGhpcy53eXNpd3lnKCkudW5kZXJMaW5lKGZhbHNlKTtcbiAgICAgIHRoaXMudW5kZXJMaW5lU3RhdGUuc2V0KGZhbHNlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy53eXNpd3lnKCkudW5kZXJMaW5lKHRydWUpO1xuICAgICAgdGhpcy51bmRlckxpbmVTdGF0ZS5zZXQodHJ1ZSk7XG4gICAgfVxuICB9XG5cbiAgb3JkZXJMaXN0KCkge1xuICAgIGlmICh0aGlzLm9yZGVyTGlzdFN0YXRlKCkpIHtcbiAgICAgIHRoaXMud3lzaXd5ZygpLmxpc3QoJycpO1xuICAgICAgdGhpcy5vcmRlckxpc3RTdGF0ZS5zZXQoJycpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnd5c2l3eWcoKS5saXN0KCdvcmRlcmVkJyk7XG4gICAgICB0aGlzLm9yZGVyTGlzdFN0YXRlLnNldCgnb3JkZXJlZCcpO1xuICAgIH1cbiAgfVxuXG4gIHVuT3JkZXJMaXN0KCkge1xuICAgIGlmICh0aGlzLnVuT3JkZXJMaXN0U3RhdGUoKSkge1xuICAgICAgdGhpcy53eXNpd3lnKCkubGlzdCgnJyk7XG4gICAgICB0aGlzLnVuT3JkZXJMaXN0U3RhdGUuc2V0KCcnKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy53eXNpd3lnKCkubGlzdCgnYnVsbGV0Jyk7XG4gICAgICB0aGlzLnVuT3JkZXJMaXN0U3RhdGUuc2V0KCdidWxsZXQnKTtcbiAgICB9XG4gIH1cblxuICBhbGlnblN0YXRlSGFuZGxlcihlOiBhbnkpIHtcbiAgICB0aGlzLmFsaWduU3RhdGUuc2V0KGUpO1xuICAgIHRoaXMud3lzaXd5ZygpLmFsaWduKGUpO1xuICB9XG5cbiAgdW5kbygpIHtcbiAgICB0aGlzLnd5c2l3eWcoKS51bmRvKCk7XG4gIH1cblxuICByZWRvKCkge1xuICAgIHRoaXMud3lzaXd5ZygpLnJlZG8oKTtcbiAgfVxuXG4gIHN0cmlrZSgpIHtcbiAgICBpZiAodGhpcy5zdHJpa2VMaW5lU3RhdGUoKSkge1xuICAgICAgdGhpcy53eXNpd3lnKCkuc3RyaWtlKGZhbHNlKTtcbiAgICAgIHRoaXMuc3RyaWtlTGluZVN0YXRlLnNldChmYWxzZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMud3lzaXd5ZygpLnN0cmlrZSh0cnVlKTtcbiAgICAgIHRoaXMuc3RyaWtlTGluZVN0YXRlLnNldCh0cnVlKTtcbiAgICB9XG4gIH1cblxuICBiYWNrZ3JvdW5kKCkge1xuICAgIHRoaXMud3lzaXd5ZygpLmJhY2tncm91bmQoJ3JlZCcpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiYXgtd3lzaXd5Zy10b29sYmFyLWNvbnRhaW5lciBheC1zbVwiPlxuICA8bmctY29udGVudCBzZWxlY3Q9XCJheC1wcmVmaXhcIj48L25nLWNvbnRlbnQ+XG5cbiAgPGRpdiBjbGFzcz1cImF4LXd5c2l3eWctdG9vbC1jb250YWluZXJcIj5cbiAgICA8YXgtYnV0dG9uIGNsYXNzPVwiXCIgKGNsaWNrKT1cInVuZG8oKVwiIGxvb2s9XCJibGFua1wiPlxuICAgICAgPGF4LWljb24gY2xhc3M9XCJheC1pY29uIGF4LWljb24tdW5kb1wiPjwvYXgtaWNvbj5cbiAgICA8L2F4LWJ1dHRvbj5cblxuICAgIDxheC1idXR0b24gY2xhc3M9XCJcIiAoY2xpY2spPVwicmVkbygpXCIgbG9vaz1cImJsYW5rXCI+XG4gICAgICA8YXgtaWNvbiBjbGFzcz1cImF4LWljb24gYXgtaWNvbi1yZWRvXCI+PC9heC1pY29uPlxuICAgIDwvYXgtYnV0dG9uPlxuXG4gICAgPGF4LWJ1dHRvbiBjbGFzcz1cIlwiIChjbGljayk9XCJib2xkKClcIiBsb29rPVwiYmxhbmtcIiBbdG9nZ2xlYWJsZV09XCJ0cnVlXCI+XG4gICAgICA8YXgtaWNvbiBjbGFzcz1cImF4LWljb24gYXgtaWNvbi1ib2xkXCI+PC9heC1pY29uPlxuICAgIDwvYXgtYnV0dG9uPlxuXG4gICAgPGF4LWJ1dHRvbiAoY2xpY2spPVwiaXRhbGljKClcIiBsb29rPVwiYmxhbmtcIiBbdG9nZ2xlYWJsZV09XCJ0cnVlXCI+XG4gICAgICA8YXgtaWNvbiBjbGFzcz1cImF4LWljb24gYXgtaWNvbi1pdGFsaWNcIj48L2F4LWljb24+XG4gICAgPC9heC1idXR0b24+XG5cbiAgICA8YXgtYnV0dG9uIChjbGljayk9XCJ1bmRlckxpbmUoKVwiIGxvb2s9XCJibGFua1wiIFt0b2dnbGVhYmxlXT1cInRydWVcIj5cbiAgICAgIDxheC1pY29uIGNsYXNzPVwiYXgtaWNvbiBheC1pY29uLXVuZGVyLWxpbmVcIj48L2F4LWljb24+XG4gICAgPC9heC1idXR0b24+XG5cbiAgICA8YXgtYnV0dG9uIChjbGljayk9XCJzdHJpa2UoKVwiIGxvb2s9XCJibGFua1wiIFt0b2dnbGVhYmxlXT1cInRydWVcIj5cbiAgICAgIDxheC1pY29uIGNsYXNzPVwiYXgtaWNvbiBheC1pY29uLXN0cmlrZVwiPjwvYXgtaWNvbj5cbiAgICA8L2F4LWJ1dHRvbj5cblxuICAgIDxheC1idXR0b24gI2NvbG9yQnRuIGxvb2s9XCJibGFua1wiPlxuICAgICAgPGF4LWljb24gY2xhc3M9XCJheC1pY29uIGF4LWljb24tY29sb3ItcGFsZXR0ZVwiPjwvYXgtaWNvbj5cbiAgICA8L2F4LWJ1dHRvbj5cblxuICAgIDxheC1idXR0b24gI2hpZ2hsaWdodEJ0biBsb29rPVwiYmxhbmtcIj5cbiAgICAgIDxheC1pY29uIGNsYXNzPVwiYXgtaWNvbiBheC1pY29uLWhpZ2hsaWdodFwiPjwvYXgtaWNvbj5cbiAgICA8L2F4LWJ1dHRvbj5cblxuICAgIDxheC1wb3BvdmVyIFtvcGVuT25dPVwicG9wb3Zlck9wdGlvbi5vcGVuT25cIiBbY2xvc2VPbl09XCJwb3BvdmVyT3B0aW9uLmNsb3NlT25cIiBbdGFyZ2V0XT1cImNvbG9yQnRuXCIgW3BsYWNlbWVudF09XCJwb3BvdmVyT3B0aW9uLnBsYWNlbWVudFwiPlxuICAgICAgPGRpdiBjbGFzcz1cImF4LW92ZXJsYXktcGFuZVwiPlxuICAgICAgICA8YXgtY29sb3ItcGFsZXR0ZSAobmdNb2RlbENoYW5nZSk9XCJjaGFuZ2VDb2xvckhhbmRsZXIoJGV2ZW50KVwiIFtuZ01vZGVsXT1cInNlbGVjdGVkQ29sb3JcIj5cbiAgICAgICAgICA8YXgtY29sb3ItcGFsZXR0ZS1wcmV2aWV3PjwvYXgtY29sb3ItcGFsZXR0ZS1wcmV2aWV3PlxuICAgICAgICAgIDxheC1jb2xvci1wYWxldHRlLXBpY2tlcj48L2F4LWNvbG9yLXBhbGV0dGUtcGlja2VyPlxuICAgICAgICAgIDxheC1jb2xvci1wYWxldHRlLWlucHV0PjwvYXgtY29sb3ItcGFsZXR0ZS1pbnB1dD5cbiAgICAgICAgPC9heC1jb2xvci1wYWxldHRlPlxuICAgICAgPC9kaXY+XG4gICAgPC9heC1wb3BvdmVyPlxuXG4gICAgPGF4LXBvcG92ZXJcbiAgICAgIFtvcGVuT25dPVwicG9wb3Zlck9wdGlvbi5vcGVuT25cIlxuICAgICAgW2Nsb3NlT25dPVwicG9wb3Zlck9wdGlvbi5jbG9zZU9uXCJcbiAgICAgIFt0YXJnZXRdPVwiaGlnaGxpZ2h0QnRuXCJcbiAgICAgIFtwbGFjZW1lbnRdPVwicG9wb3Zlck9wdGlvbi5wbGFjZW1lbnRcIlxuICAgID5cbiAgICAgIDxkaXYgY2xhc3M9XCJheC1vdmVybGF5LXBhbmVcIj5cbiAgICAgICAgPGF4LWNvbG9yLXBhbGV0dGUgKG5nTW9kZWxDaGFuZ2UpPVwiY2hhbmdlSGlnaGxpZ2h0Q29sb3JIYW5kbGVyKCRldmVudClcIiBbbmdNb2RlbF09XCJzZWxlY3RlZEhpZ2hsaWdodENvbG9yXCI+XG4gICAgICAgICAgPGF4LWNvbG9yLXBhbGV0dGUtcHJldmlldz48L2F4LWNvbG9yLXBhbGV0dGUtcHJldmlldz5cbiAgICAgICAgICA8YXgtY29sb3ItcGFsZXR0ZS1waWNrZXI+PC9heC1jb2xvci1wYWxldHRlLXBpY2tlcj5cbiAgICAgICAgICA8YXgtY29sb3ItcGFsZXR0ZS1pbnB1dD48L2F4LWNvbG9yLXBhbGV0dGUtaW5wdXQ+XG4gICAgICAgIDwvYXgtY29sb3ItcGFsZXR0ZT5cbiAgICAgIDwvZGl2PlxuICAgIDwvYXgtcG9wb3Zlcj5cblxuICAgIDxheC1zZWxlY3QtYm94IChuZ01vZGVsQ2hhbmdlKT1cImZvbnRIYW5kbGVyKCRldmVudClcIiBbbmdNb2RlbF09XCJzZWxlY3RlZEZvbnRcIiBbZGF0YVNvdXJjZV09XCJmb250U2l6ZVwiIHBsYWNlaG9sZGVyPVwiQ2hvb3NlLi4uXCI+XG4gICAgPC9heC1zZWxlY3QtYm94PlxuXG4gICAgPGF4LWJ1dHRvbiAoY2xpY2spPVwib3JkZXJMaXN0KClcIiBsb29rPVwiYmxhbmtcIiBbdG9nZ2xlYWJsZV09XCJ0cnVlXCI+XG4gICAgICA8YXgtaWNvbiBjbGFzcz1cImF4LWljb24gYXgtaWNvbi1vcmRlci1saXN0XCI+PC9heC1pY29uPlxuICAgIDwvYXgtYnV0dG9uPlxuXG4gICAgPGF4LWJ1dHRvbiAoY2xpY2spPVwidW5PcmRlckxpc3QoKVwiIGxvb2s9XCJibGFua1wiIFt0b2dnbGVhYmxlXT1cInRydWVcIj5cbiAgICAgIDxheC1pY29uIGNsYXNzPVwiYXgtaWNvbiBheC1pY29uLXVuLW9yZGVyLWxpc3RcIj48L2F4LWljb24+XG4gICAgPC9heC1idXR0b24+XG5cbiAgICA8YXgtYnV0dG9uIGxvb2s9XCJibGFua1wiICNhbGlnblBvcD5cbiAgICAgIDxheC1pY29uIGNsYXNzPVwiYXgtaWNvbiBheC1pY29uLWFsaWduLWxlZnRcIj48L2F4LWljb24+XG4gICAgPC9heC1idXR0b24+XG5cbiAgICA8YXgtcG9wb3ZlciBbb3Blbk9uXT1cInBvcG92ZXJPcHRpb24ub3Blbk9uXCIgW2Nsb3NlT25dPVwicG9wb3Zlck9wdGlvbi5jbG9zZU9uXCIgW3RhcmdldF09XCJhbGlnblBvcFwiIFtwbGFjZW1lbnRdPVwicG9wb3Zlck9wdGlvbi5wbGFjZW1lbnRcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJheC1vdmVybGF5LXBhbmVcIj5cbiAgICAgICAgPGF4LWJ1dHRvblxuICAgICAgICAgIChjbGljayk9XCJhbGlnblN0YXRlSGFuZGxlcignbGVmdCcpXCJcbiAgICAgICAgICBbbG9va109XCJhbGlnblN0YXRlKCkgIT09ICdsZWZ0JyAmJiAnYmxhbmsnXCJcbiAgICAgICAgICBbY29sb3JdPVwiYWxpZ25TdGF0ZSgpID09PSAnbGVmdCcgJiYgJ3ByaW1hcnknXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxheC1pY29uIGNsYXNzPVwiYXgtaWNvbiBheC1pY29uLWFsaWduLWxlZnRcIj48L2F4LWljb24+XG4gICAgICAgIDwvYXgtYnV0dG9uPlxuXG4gICAgICAgIDxheC1idXR0b25cbiAgICAgICAgICAoY2xpY2spPVwiYWxpZ25TdGF0ZUhhbmRsZXIoJ2NlbnRlcicpXCJcbiAgICAgICAgICBbbG9va109XCJhbGlnblN0YXRlKCkgIT09ICdjZW50ZXInICYmICdibGFuaydcIlxuICAgICAgICAgIFtjb2xvcl09XCJhbGlnblN0YXRlKCkgPT09ICdjZW50ZXInICYmICdwcmltYXJ5J1wiXG4gICAgICAgID5cbiAgICAgICAgICA8YXgtaWNvbiBjbGFzcz1cImF4LWljb24gYXgtaWNvbi1hbGlnbi1jZW50ZXJcIj48L2F4LWljb24+XG4gICAgICAgIDwvYXgtYnV0dG9uPlxuXG4gICAgICAgIDxheC1idXR0b25cbiAgICAgICAgICAoY2xpY2spPVwiYWxpZ25TdGF0ZUhhbmRsZXIoJ3JpZ2h0JylcIlxuICAgICAgICAgIFtsb29rXT1cImFsaWduU3RhdGUoKSAhPT0gJ3JpZ2h0JyAmJiAnYmxhbmsnXCJcbiAgICAgICAgICBbY29sb3JdPVwiYWxpZ25TdGF0ZSgpID09PSAncmlnaHQnICYmICdwcmltYXJ5J1wiXG4gICAgICAgID5cbiAgICAgICAgICA8YXgtaWNvbiBjbGFzcz1cImF4LWljb24gYXgtaWNvbi1hbGlnbi1yaWdodFwiPjwvYXgtaWNvbj5cbiAgICAgICAgPC9heC1idXR0b24+XG4gICAgICA8L2Rpdj5cbiAgICA8L2F4LXBvcG92ZXI+XG5cbiAgICA8YXgtYnV0dG9uICNsaW5rQnRuIGxvb2s9XCJibGFua1wiPlxuICAgICAgPGF4LWljb24gY2xhc3M9XCJheC1pY29uIGF4LWljb24taW1hZ2VcIj48L2F4LWljb24+XG4gICAgPC9heC1idXR0b24+XG5cbiAgICA8YXgtcG9wb3ZlciBbb3Blbk9uXT1cInBvcG92ZXJPcHRpb24ub3Blbk9uXCIgW2Nsb3NlT25dPVwicG9wb3Zlck9wdGlvbi5jbG9zZU9uXCIgW3RhcmdldF09XCJsaW5rQnRuXCIgW3BsYWNlbWVudF09XCJwb3BvdmVyT3B0aW9uLnBsYWNlbWVudFwiPlxuICAgICAgPGF4LXRleHQtYm94IGNsYXNzPVwie3sgdGV4dEJveE9wdGlvbnMuc2l6ZSB9fVwiIFsobmdNb2RlbCldPVwidGV4dEJveE9wdGlvbnMudGV4dFwiIFtwbGFjZWhvbGRlcl09XCJ0ZXh0Qm94T3B0aW9ucy5wbGFjZWhvbGRlclwiPlxuICAgICAgPC9heC10ZXh0LWJveD5cbiAgICAgIDxheC1zdWZmaXg+XG4gICAgICAgIDxheC1idXR0b24gKGNsaWNrKT1cInN1Ym1pdExpbmsoKVwiIGNsYXNzPVwiYXgtc21cIiBjb2xvcj1cInNlY29uZGFyeVwiIHRleHQ9XCJBZGRcIj4gPC9heC1idXR0b24+XG4gICAgICA8L2F4LXN1ZmZpeD5cbiAgICA8L2F4LXBvcG92ZXI+XG4gIDwvZGl2PlxuXG4gIDxuZy1jb250ZW50IHNlbGVjdD1cImF4LXN1ZmZpeFwiPjwvbmctY29udGVudD5cbjwvZGl2PlxuIl19
205
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid3lzaXd5Zy10b29sYmFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy93eXNpd3lnL3NyYy9saWIvd3lzaXd5Zy93eXNpd3lnLXRvb2xiYXIvd3lzaXd5Zy10b29sYmFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy93eXNpd3lnL3NyYy9saWIvd3lzaXd5Zy93eXNpd3lnLXRvb2xiYXIvd3lzaXd5Zy10b29sYmFyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBZ0IsWUFBWSxFQUFlLE1BQU0sMkJBQTJCLENBQUM7QUFFcEYsT0FBTyxFQUFFLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSxlQUFlLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNySCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQzs7Ozs7Ozs7O0FBdUJ0RCxNQUFNLE9BQU8seUJBQXlCO0lBK0JwQztRQTlCQSxlQUFVLEdBQUcsTUFBTSxFQUFnQixDQUFDO1FBQ3BDLFlBQU8sR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUVuQyxXQUFNLEdBQUcsS0FBSyxDQUFhO1lBQ3pCLElBQUksRUFBRSxJQUFJO1lBQ1YsSUFBSSxFQUFFLElBQUk7WUFDVixJQUFJLEVBQUUsSUFBSTtZQUNWLE1BQU0sRUFBRSxJQUFJO1lBQ1osU0FBUyxFQUFFLElBQUk7WUFDZixNQUFNLEVBQUUsSUFBSTtZQUNaLEtBQUssRUFBRSxJQUFJO1lBQ1gsU0FBUyxFQUFFLElBQUk7WUFDZixRQUFRLEVBQUUsSUFBSTtZQUNkLElBQUksRUFBRSxJQUFJO1lBQ1YsU0FBUyxFQUFFLElBQUk7WUFDZixLQUFLLEVB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cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhXeXNpd3lnIH0gZnJvbSAnQGFjb3JleC9jZGsvd3lzaXd5Zyc7XG5pbXBvcnQgeyBBWENsaWNrRXZlbnQsIEFYRGF0YVNvdXJjZSwgQVhQbGFjZW1lbnQgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvY29tbW9uJztcbmltcG9ydCB7IEFYUG9wb3ZlckNsb3NlVHJpZ2dlciwgQVhQb3BvdmVyT3BlblRyaWdnZXIgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvcG9wb3Zlcic7XG5pbXBvcnQgeyBDb21wb25lbnQsIFZpZXdFbmNhcHN1bGF0aW9uLCBhZnRlck5leHRSZW5kZXIsIGVmZmVjdCwgaW5qZWN0LCBpbnB1dCwgb3V0cHV0LCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFYV3lzaXd5Z1NlcnZpY2UgfSBmcm9tICcuLi93eXNpd3lnLnNlcnZpY2UnO1xuXG50eXBlIENvbmZpZ1R5cGUgPSB7XG4gIGJvbGQ6IGJvb2xlYW47XG4gIHVuZG86IGJvb2xlYW47XG4gIHJlZG86IGJvb2xlYW47XG4gIGl0YWxpYzogYm9vbGVhbjtcbiAgdW5kZXJMaW5lOiBib29sZWFuO1xuICBzdHJpa2U6IGJvb2xlYW47XG4gIGNvbG9yOiBib29sZWFuO1xuICBoaWdobGlnaHQ6IGJvb2xlYW47XG4gIGZvbnRTaXplOiBib29sZWFuO1xuICBsaXN0OiBib29sZWFuO1xuICBhbGlnbm1lbnQ6IGJvb2xlYW47XG4gIGltYWdlOiBib29sZWFuO1xufTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXgtd3lzaXd5Zy10b29sYmFyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3d5c2l3eWctdG9vbGJhci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi93eXNpd3lnLXRvb2xiYXIuY29tcG9uZW50LnNjc3MnLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxufSlcbmV4cG9ydCBjbGFzcyBBWFd5c2l3eWdUb29sYmFyQ29tcG9uZW50IHtcbiAgb3V0cHV0SFRNTCA9IG91dHB1dDxBWENsaWNrRXZlbnQ+KCk7XG4gIHNlcnZpY2UgPSBpbmplY3QoQVhXeXNpd3lnU2VydmljZSk7XG5cbiAgY29uZmlnID0gaW5wdXQ8Q29uZmlnVHlwZT4oe1xuICAgIGJvbGQ6IHRydWUsXG4gICAgdW5kbzogdHJ1ZSxcbiAgICByZWRvOiB0cnVlLFxuICAgIGl0YWxpYzogdHJ1ZSxcbiAgICB1bmRlckxpbmU6IHRydWUsXG4gICAgc3RyaWtlOiB0cnVlLFxuICAgIGNvbG9yOiB0cnVlLFxuICAgIGhpZ2hsaWdodDogdHJ1ZSxcbiAgICBmb250U2l6ZTogdHJ1ZSxcbiAgICBsaXN0OiB0cnVlLFxuICAgIGFsaWdubWVudDogdHJ1ZSxcbiAgICBpbWFnZTogdHJ1ZSxcbiAgfSk7XG5cbiAgcHJvdGVjdGVkIHd5c2l3eWcgPSBzaWduYWw8QVhXeXNpd3lnIHwgbnVsbD4obnVsbCk7XG4gIHByb3RlY3RlZCBib2xkU3RhdGUgPSBzaWduYWwoZmFsc2UpO1xuICBwcm90ZWN0ZWQgaXRhbGljU3RhdGUgPSBzaWduYWwoZmFsc2UpO1xuICBwcm90ZWN0ZWQgdW5kZXJMaW5lU3RhdGUgPSBzaWduYWwoZmFsc2UpO1xuICBwcm90ZWN0ZWQgc3RyaWtlTGluZVN0YXRlID0gc2lnbmFsKGZhbHNlKTtcbiAgcHJvdGVjdGVkIGxpc3RTdGF0ZSA9IHNpZ25hbCgnJyk7XG4gIHByb3RlY3RlZCBhbGlnblN0YXRlID0gc2lnbmFsKCcnKTtcbiAgcHJvdGVjdGVkIHNlbGVjdGVkRm9udCA9ICdtZWRpdW0nO1xuICBwcm90ZWN0ZWQgc2VsZWN0ZWRDb2xvciA9ICcnO1xuICBwcm90ZWN0ZWQgc2VsZWN0ZWRIaWdobGlnaHRDb2xvciA9ICcnO1xuICBwcm90ZWN0ZWQgbGlua0FkZHJlc3MgPSAnJztcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBlZmZlY3QoXG4gICAgICAoKSA9PiB7XG4gICAgICAgIHRoaXMud3lzaXd5ZygpLmJvbGQoZmFsc2UpO1xuICAgICAgICB0aGlzLmJvbGRTdGF0ZS5zZXQoZmFsc2UpO1xuICAgICAgICB0aGlzLnd5c2l3eWcoKS5pdGFsaWMoZmFsc2UpO1xuICAgICAgICB0aGlzLml0YWxpY1N0YXRlLnNldChmYWxzZSk7XG4gICAgICAgIHRoaXMud3lzaXd5ZygpLnN0cmlrZShmYWxzZSk7XG4gICAgICAgIHRoaXMuc3RyaWtlTGluZVN0YXRlLnNldChmYWxzZSk7XG4gICAgICAgIHRoaXMud3lzaXd5ZygpLnVuZGVyTGluZShmYWxzZSk7XG4gICAgICAgIHRoaXMudW5kZXJMaW5lU3RhdGUuc2V0KGZhbHNlKTtcblxuICAgICAgICB0aGlzLnNlcnZpY2UuY3VycmVudFNlbGVjdGVkRWxlbUFycmF5KCkuZm9yRWFjaCgoaXRlbSkgPT4ge1xuICAgICAgICAgIHN3aXRjaCAoaXRlbSkge1xuICAgICAgICAgICAgY2FzZSAnVSc6XG4gICAgICAgICAgICAgIHRoaXMud3lzaXd5ZygpLnVuZGVyTGluZSh0cnVlKTtcbiAgICAgICAgICAgICAgdGhpcy51bmRlckxpbmVTdGF0ZS5zZXQodHJ1ZSk7XG4gICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSAnUyc6XG4gICAgICAgICAgICAgIHRoaXMud3lzaXd5ZygpLnN0cmlrZSh0cnVlKTtcbiAgICAgICAgICAgICAgdGhpcy5zdHJpa2VMaW5lU3RhdGUuc2V0KHRydWUpO1xuICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ0VNJzpcbiAgICAgICAgICAgICAgdGhpcy53eXNpd3lnKCkuaXRhbGljKHRydWUpO1xuICAgICAgICAgICAgICB0aGlzLml0YWxpY1N0YXRlLnNldCh0cnVlKTtcbiAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICdTVFJPTkcnOlxuICAgICAgICAgICAgICB0aGlzLnd5c2l3eWcoKS5ib2xkKHRydWUpO1xuICAgICAgICAgICAgICB0aGlzLmJvbGRTdGF0ZS5zZXQodHJ1ZSk7XG4gICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICB9LFxuICAgICAgeyBhbGxvd1NpZ25hbFdyaXRlczogdHJ1ZSB9LFxuICAgICk7XG4gICAgYWZ0ZXJOZXh0UmVuZGVyKCgpID0+IHtcbiAgICAgIHRoaXMud3lzaXd5Zy5zZXQodGhpcy5zZXJ2aWNlLnd5c2l3eWcoKSk7XG4gICAgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgZm9udFNpemUgPSBuZXcgQVhEYXRhU291cmNlPHN0cmluZz4oe1xuICAgIHBhZ2VTaXplOiAxMCxcbiAgICBrZXk6ICdpZCcsXG4gICAgbG9hZDogKGUpID0+IHtcbiAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4ge1xuICAgICAgICByZXNvbHZlKHtcbiAgICAgICAgICBpdGVtczogWydzbWFsbCcsICdtZWRpdW0nLCAnbGFyZ2UnLCAnaHVnZSddLFxuICAgICAgICAgIHRvdGFsOiA0LFxuICAgICAgICB9KTtcbiAgICAgIH0pO1xuICAgIH0sXG4gICAgYnlLZXk6IChrZXkpID0+IHtcbiAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4ge1xuICAgICAgICByZXNvbHZlKCdtZWRpdW0nKTtcbiAgICAgIH0pO1xuICAgIH0sXG4gIH0pO1xuXG4gIHByb3RlY3RlZCBwb3BvdmVyT3B0aW9uOiB7XG4gICAgb3Blbk9uOiBBWFBvcG92ZXJPcGVuVHJpZ2dlcjtcbiAgICBjbG9zZU9uOiBBWFBvcG92ZXJDbG9zZVRyaWdnZXI7XG4gICAgcGxhY2VtZW50OiBBWFBsYWNlbWVudDtcbiAgICBvZmZzZXRYOiBudW1iZXI7XG4gICAgb2Zmc2V0WTogbnVtYmVyO1xuICB9ID0ge1xuICAgIG9wZW5PbjogJ2NsaWNrJyxcbiAgICBjbG9zZU9uOiAnY2xpY2tPdXQnLFxuICAgIHBsYWNlbWVudDogJ3RvcCcsXG4gICAgb2Zmc2V0WDogMCxcbiAgICBvZmZzZXRZOiAwLFxuICB9O1xuXG4gIHRleHRCb3hPcHRpb25zID0ge1xuICAgIHRleHQ6ICcnLFxuICAgIHBsYWNlaG9sZGVyOiAnRW50ZXIgeW9yIHVybCAuLi4nLFxuICAgIHNpemU6ICdheC1zbScsXG4gIH07XG5cbiAgc3VibWl0TGluaygpIHtcbiAgICB0aGlzLnd5c2l3eWcoKS5hZGRJbWFnZSh0aGlzLnRleHRCb3hPcHRpb25zLnRleHQpO1xuICB9XG5cbiAgY2hhbmdlQ29sb3JIYW5kbGVyKGU6IHN0cmluZykge1xuICAgIHRoaXMuc2VsZWN0ZWRDb2xvciA9IGU7XG4gICAgdGhpcy53eXNpd3lnKCkuY29sb3IoZSk7XG4gIH1cblxuICBjaGFuZ2VIaWdobGlnaHRDb2xvckhhbmRsZXIoZTogc3RyaW5nKSB7XG4gICAgdGhpcy5zZWxlY3RlZEhpZ2hsaWdodENvbG9yID0gZTtcbiAgICB0aGlzLnd5c2l3eWcoKS5iYWNrZ3JvdW5kKGUpO1xuICB9XG5cbiAgZm9udEhhbmRsZXIoZTogYW55KSB7XG4gICAgdGhpcy53eXNpd3lnKCkuZm9udFNpemUoZSk7XG4gIH1cblxuICBib2xkKCkge1xuICAgIGlmICh0aGlzLmJvbGRTdGF0ZSgpKSB7XG4gICAgICB0aGlzLnd5c2l3eWcoKS5ib2xkKGZhbHNlKTtcbiAgICAgIHRoaXMuYm9sZFN0YXRlLnNldChmYWxzZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMud3lzaXd5ZygpLmJvbGQodHJ1ZSk7XG4gICAgICB0aGlzLmJvbGRTdGF0ZS5zZXQodHJ1ZSk7XG4gICAgfVxuICB9XG5cbiAgb3V0KCkge1xuICAgIHRoaXMub3V0cHV0SFRNTC5lbWl0KHtcbiAgICAgIGNvbXBvbmVudDogdGhpcyxcbiAgICAgIGRhdGE6IHsgdmFsdWU6IHRoaXMud3lzaXd5ZygpLkhUTUxvdXRwdXQgfSxcbiAgICAgIGlzVXNlckludGVyYWN0aW9uOiB0cnVlLFxuICAgIH0pO1xuICB9XG5cbiAgaXRhbGljKCkge1xuICAgIGlmICh0aGlzLml0YWxpY1N0YXRlKCkpIHtcbiAgICAgIHRoaXMud3lzaXd5ZygpLml0YWxpYyhmYWxzZSk7XG4gICAgICB0aGlzLml0YWxpY1N0YXRlLnNldChmYWxzZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMud3lzaXd5ZygpLml0YWxpYyh0cnVlKTtcbiAgICAgIHRoaXMuaXRhbGljU3RhdGUuc2V0KHRydWUpO1xuICAgIH1cbiAgfVxuXG4gIHVuZGVyTGluZSgpIHtcbiAgICBpZiAodGhpcy51bmRlckxpbmVTdGF0ZSgpKSB7XG4gICAgICB0aGlzLnd5c2l3eWcoKS51bmRlckxpbmUoZmFsc2UpO1xuICAgICAgdGhpcy51bmRlckxpbmVTdGF0ZS5zZXQoZmFsc2UpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnd5c2l3eWcoKS51bmRlckxpbmUodHJ1ZSk7XG4gICAgICB0aGlzLnVuZGVyTGluZVN0YXRlLnNldCh0cnVlKTtcbiAgICB9XG4gIH1cblxuICBvcmRlckxpc3QoKSB7XG4gICAgaWYgKCF0aGlzLmxpc3RTdGF0ZSgpIHx8IHRoaXMubGlzdFN0YXRlKCkgPT09ICdidWxsZXQnKSB7XG4gICAgICB0aGlzLnd5c2l3eWcoKS5saXN0KCdvcmRlcmVkJyk7XG4gICAgICB0aGlzLmxpc3RTdGF0ZS5zZXQoJ29yZGVyZWQnKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy53eXNpd3lnKCkubGlzdCgnJyk7XG4gICAgICB0aGlzLmxpc3RTdGF0ZS5zZXQoJycpO1xuICAgIH1cbiAgfVxuXG4gIHVuT3JkZXJMaXN0KCkge1xuICAgIGlmICghdGhpcy5saXN0U3RhdGUoKSB8fCB0aGlzLmxpc3RTdGF0ZSgpID09PSAnb3JkZXJlZCcpIHtcbiAgICAgIHRoaXMud3lzaXd5ZygpLmxpc3QoJ2J1bGxldCcpO1xuICAgICAgdGhpcy5saXN0U3RhdGUuc2V0KCdidWxsZXQnKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy53eXNpd3lnKCkubGlzdCgnJyk7XG4gICAgICB0aGlzLmxpc3RTdGF0ZS5zZXQoJycpO1xuICAgIH1cbiAgfVxuXG4gIGFsaWduU3RhdGVIYW5kbGVyKGU6IGFueSkge1xuICAgIHRoaXMuYWxpZ25TdGF0ZS5zZXQoZSk7XG4gICAgdGhpcy53eXNpd3lnKCkuYWxpZ24oZSk7XG4gIH1cblxuICB1bmRvKCkge1xuICAgIHRoaXMud3lzaXd5ZygpLnVuZG8oKTtcbiAgfVxuXG4gIHJlZG8oKSB7XG4gICAgdGhpcy53eXNpd3lnKCkucmVkbygpO1xuICB9XG5cbiAgc3RyaWtlKCkge1xuICAgIGlmICh0aGlzLnN0cmlrZUxpbmVTdGF0ZSgpKSB7XG4gICAgICB0aGlzLnd5c2l3eWcoKS5zdHJpa2UoZmFsc2UpO1xuICAgICAgdGhpcy5zdHJpa2VMaW5lU3RhdGUuc2V0KGZhbHNlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy53eXNpd3lnKCkuc3RyaWtlKHRydWUpO1xuICAgICAgdGhpcy5zdHJpa2VMaW5lU3RhdGUuc2V0KHRydWUpO1xuICAgIH1cbiAgfVxuXG4gIGJhY2tncm91bmQoKSB7XG4gICAgdGhpcy53eXNpd3lnKCkuYmFja2dyb3VuZCgncmVkJyk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJheC13eXNpd3lnLXRvb2xiYXItY29udGFpbmVyIGF4LXNtXCI+XG4gIDxuZy1jb250ZW50IHNlbGVjdD1cImF4LXByZWZpeFwiPjwvbmctY29udGVudD5cblxuICA8ZGl2IGNsYXNzPVwiYXgtd3lzaXd5Zy10b29sLWNvbnRhaW5lclwiPlxuICAgIEBpZiAoY29uZmlnKCkudW5kbykge1xuICAgICAgPGF4LWJ1dHRvbiBjbGFzcz1cIlwiIChjbGljayk9XCJ1bmRvKClcIiBsb29rPVwiYmxhbmtcIj5cbiAgICAgICAgPGF4LWljb24gY2xhc3M9XCJheC1pY29uIGF4LWljb24tdW5kb1wiPjwvYXgtaWNvbj5cbiAgICAgIDwvYXgtYnV0dG9uPlxuICAgIH1cblxuICAgIEBpZiAoY29uZmlnKCkucmVkbykge1xuICAgICAgPGF4LWJ1dHRvbiBjbGFzcz1cIlwiIChjbGljayk9XCJyZWRvKClcIiBsb29rPVwiYmxhbmtcIj5cbiAgICAgICAgPGF4LWljb24gY2xhc3M9XCJheC1pY29uIGF4LWljb24tcmVkb1wiPjwvYXgtaWNvbj5cbiAgICAgIDwvYXgtYnV0dG9uPlxuICAgIH1cbiAgICBAaWYgKGNvbmZpZygpLmJvbGQpIHtcbiAgICAgIDxheC1idXR0b24gKGNsaWNrKT1cImJvbGQoKVwiIFtsb29rXT1cImJvbGRTdGF0ZSgpID8gJ3NvbGlkJyA6ICdibGFuaydcIj5cbiAgICAgICAgPGF4LWljb24gY2xhc3M9XCJheC1pY29uIGF4LWljb24tYm9sZFwiPjwvYXgtaWNvbj5cbiAgICAgIDwvYXgtYnV0dG9uPlxuICAgIH1cbiAgICBAaWYgKGNvbmZpZygpLml0YWxpYykge1xuICAgICAgPGF4LWJ1dHRvbiAoY2xpY2spPVwiaXRhbGljKClcIiBbbG9va109XCJpdGFsaWNTdGF0ZSgpID8gJ3NvbGlkJyA6ICdibGFuaydcIj5cbiAgICAgICAgPGF4LWljb24gY2xhc3M9XCJheC1pY29uIGF4LWljb24taXRhbGljXCI+PC9heC1pY29uPlxuICAgICAgPC9heC1idXR0b24+XG4gICAgfVxuICAgIEBpZiAoY29uZmlnKCkudW5kZXJMaW5lKSB7XG4gICAgICA8YXgtYnV0dG9uIChjbGljayk9XCJ1bmRlckxpbmUoKVwiIFtsb29rXT1cInVuZGVyTGluZVN0YXRlKCkgPyAnc29saWQnIDogJ2JsYW5rJ1wiPlxuICAgICAgICA8YXgtaWNvbiBjbGFzcz1cImF4LWljb24gYXgtaWNvbi11bmRlci1saW5lXCI+PC9heC1pY29uPlxuICAgICAgPC9heC1idXR0b24+XG4gICAgfVxuICAgIEBpZiAoY29uZmlnKCkuc3RyaWtlKSB7XG4gICAgICA8YXgtYnV0dG9uIChjbGljayk9XCJzdHJpa2UoKVwiIFtsb29rXT1cInN0cmlrZUxpbmVTdGF0ZSgpID8gJ3NvbGlkJyA6ICdibGFuaydcIj5cbiAgICAgICAgPGF4LWljb24gY2xhc3M9XCJheC1pY29uIGF4LWljb24tc3RyaWtlXCI+PC9heC1pY29uPlxuICAgICAgPC9heC1idXR0b24+XG4gICAgfVxuICAgIEBpZiAoY29uZmlnKCkuY29sb3IpIHtcbiAgICAgIDxheC1idXR0b24gI2NvbG9yQnRuIGxvb2s9XCJibGFua1wiPlxuICAgICAgICA8YXgtaWNvbiBjbGFzcz1cImF4LWljb24gYXgtaWNvbi1jb2xvci1wYWxldHRlXCI+PC9heC1pY29uPlxuICAgICAgPC9heC1idXR0b24+XG4gICAgICA8YXgtcG9wb3ZlclxuICAgICAgICBbb3Blbk9uXT1cInBvcG92ZXJPcHRpb24ub3Blbk9uXCJcbiAgICAgICAgW2Nsb3NlT25dPVwicG9wb3Zlck9wdGlvbi5jbG9zZU9uXCJcbiAgICAgICAgW3RhcmdldF09XCJjb2xvckJ0blwiXG4gICAgICAgIFtwbGFjZW1lbnRdPVwicG9wb3Zlck9wdGlvbi5wbGFjZW1lbnRcIlxuICAgICAgPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtb3ZlcmxheS1wYW5lXCI+XG4gICAgICAgICAgPGF4LWNvbG9yLXBhbGV0dGUgKG5nTW9kZWxDaGFuZ2UpPVwiY2hhbmdlQ29sb3JIYW5kbGVyKCRldmVudClcIiBbbmdNb2RlbF09XCJzZWxlY3RlZENvbG9yXCI+XG4gICAgICAgICAgICA8YXgtY29sb3ItcGFsZXR0ZS1wcmV2aWV3PjwvYXgtY29sb3ItcGFsZXR0ZS1wcmV2aWV3PlxuICAgICAgICAgICAgPGF4LWNvbG9yLXBhbGV0dGUtcGlja2VyPjwvYXgtY29sb3ItcGFsZXR0ZS1waWNrZXI+XG4gICAgICAgICAgICA8YXgtY29sb3ItcGFsZXR0ZS1pbnB1dD48L2F4LWNvbG9yLXBhbGV0dGUtaW5wdXQ+XG4gICAgICAgICAgPC9heC1jb2xvci1wYWxldHRlPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvYXgtcG9wb3Zlcj5cbiAgICB9XG4gICAgQGlmIChjb25maWcoKS5oaWdobGlnaHQpIHtcbiAgICAgIDxheC1idXR0b24gI2hpZ2hsaWdodEJ0biBsb29rPVwiYmxhbmtcIj5cbiAgICAgICAgPGF4LWljb24gY2xhc3M9XCJheC1pY29uIGF4LWljb24taGlnaGxpZ2h0XCI+PC9heC1pY29uPlxuICAgICAgPC9heC1idXR0b24+XG4gICAgICA8YXgtcG9wb3ZlclxuICAgICAgICBbb3Blbk9uXT1cInBvcG92ZXJPcHRpb24ub3Blbk9uXCJcbiAgICAgICAgW2Nsb3NlT25dPVwicG9wb3Zlck9wdGlvbi5jbG9zZU9uXCJcbiAgICAgICAgW3RhcmdldF09XCJoaWdobGlnaHRCdG5cIlxuICAgICAgICBbcGxhY2VtZW50XT1cInBvcG92ZXJPcHRpb24ucGxhY2VtZW50XCJcbiAgICAgID5cbiAgICAgICAgPGRpdiBjbGFzcz1cImF4LW92ZXJsYXktcGFuZVwiPlxuICAgICAgICAgIDxheC1jb2xvci1wYWxldHRlIChuZ01vZGVsQ2hhbmdlKT1cImNoYW5nZUhpZ2hsaWdodENvbG9ySGFuZGxlcigkZXZlbnQpXCIgW25nTW9kZWxdPVwic2VsZWN0ZWRIaWdobGlnaHRDb2xvclwiPlxuICAgICAgICAgICAgPGF4LWNvbG9yLXBhbGV0dGUtcHJldmlldz48L2F4LWNvbG9yLXBhbGV0dGUtcHJldmlldz5cbiAgICAgICAgICAgIDxheC1jb2xvci1wYWxldHRlLXBpY2tlcj48L2F4LWNvbG9yLXBhbGV0dGUtcGlja2VyPlxuICAgICAgICAgICAgPGF4LWNvbG9yLXBhbGV0dGUtaW5wdXQ+PC9heC1jb2xvci1wYWxldHRlLWlucHV0PlxuICAgICAgICAgIDwvYXgtY29sb3ItcGFsZXR0ZT5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2F4LXBvcG92ZXI+XG4gICAgfVxuICAgIEBpZiAoY29uZmlnKCkuZm9udFNpemUpIHtcbiAgICAgIDxheC1zZWxlY3QtYm94IChuZ01vZGVsQ2hhbmdlKT1cImZvbnRIYW5kbGVyKCRldmVudClcIiBbbmdNb2RlbF09XCJzZWxlY3RlZEZvbnRcIiBbZGF0YVNvdXJjZV09XCJmb250U2l6ZVwiIHBsYWNlaG9sZGVyPVwiQ2hvb3NlLi4uXCI+XG4gICAgICA8L2F4LXNlbGVjdC1ib3g+XG4gICAgfVxuICAgIEBpZiAoY29uZmlnKCkubGlzdCkge1xuICAgICAgPGF4LWJ1dHRvbiAoY2xpY2spPVwib3JkZXJMaXN0KClcIiBbbG9va109XCJsaXN0U3RhdGUoKSA9PT0gJ29yZGVyZWQnID8gJ3NvbGlkJyA6ICdibGFuaydcIj5cbiAgICAgICAgPGF4LWljb24gY2xhc3M9XCJheC1pY29uIGF4LWljb24tb3JkZXItbGlzdFwiPjwvYXgtaWNvbj5cbiAgICAgIDwvYXgtYnV0dG9uPlxuXG4gICAgICA8YXgtYnV0dG9uIChjbGljayk9XCJ1bk9yZGVyTGlzdCgpXCIgW2xvb2tdPVwibGlzdFN0YXRlKCkgPT09ICdidWxsZXQnID8gJ3NvbGlkJyA6ICdibGFuaydcIj5cbiAgICAgICAgPGF4LWljb24gY2xhc3M9XCJheC1pY29uIGF4LWljb24tdW4tb3JkZXItbGlzdFwiPjwvYXgtaWNvbj5cbiAgICAgIDwvYXgtYnV0dG9uPlxuICAgIH1cbiAgICBAaWYgKGNvbmZpZygpLmFsaWdubWVudCkge1xuICAgICAgPGF4LWJ1dHRvbiBsb29rPVwiYmxhbmtcIiAjYWxpZ25Qb3A+XG4gICAgICAgIDxheC1pY29uIGNsYXNzPVwiYXgtaWNvbiBheC1pY29uLWFsaWduLWxlZnRcIj48L2F4LWljb24+XG4gICAgICA8L2F4LWJ1dHRvbj5cbiAgICAgIDxheC1wb3BvdmVyXG4gICAgICAgIFtvcGVuT25dPVwicG9wb3Zlck9wdGlvbi5vcGVuT25cIlxuICAgICAgICBbY2xvc2VPbl09XCJwb3BvdmVyT3B0aW9uLmNsb3NlT25cIlxuICAgICAgICBbdGFyZ2V0XT1cImFsaWduUG9wXCJcbiAgICAgICAgW3BsYWNlbWVudF09XCJwb3BvdmVyT3B0aW9uLnBsYWNlbWVudFwiXG4gICAgICA+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJheC1vdmVybGF5LXBhbmVcIj5cbiAgICAgICAgICA8YXgtYnV0dG9uIChjbGljayk9XCJhbGlnblN0YXRlSGFuZGxlcignbGVmdCcpXCIgW2xvb2tdPVwiYWxpZ25TdGF0ZSgpID09PSAnbGVmdCcgPyAnc29saWQnIDogJ2JsYW5rJ1wiPlxuICAgICAgICAgICAgPGF4LWljb24gY2xhc3M9XCJheC1pY29uIGF4LWljb24tYWxpZ24tbGVmdFwiPjwvYXgtaWNvbj5cbiAgICAgICAgICA8L2F4LWJ1dHRvbj5cblxuICAgICAgICAgIDxheC1idXR0b24gKGNsaWNrKT1cImFsaWduU3RhdGVIYW5kbGVyKCdjZW50ZXInKVwiIFtsb29rXT1cImFsaWduU3RhdGUoKSA9PT0gJ2NlbnRlcicgPyAnc29saWQnIDogJ2JsYW5rJ1wiPlxuICAgICAgICAgICAgPGF4LWljb24gY2xhc3M9XCJheC1pY29uIGF4LWljb24tYWxpZ24tY2VudGVyXCI+PC9heC1pY29uPlxuICAgICAgICAgIDwvYXgtYnV0dG9uPlxuXG4gICAgICAgICAgPGF4LWJ1dHRvbiAoY2xpY2spPVwiYWxpZ25TdGF0ZUhhbmRsZXIoJ3JpZ2h0JylcIiBbbG9va109XCJhbGlnblN0YXRlKCkgPT09ICdyaWdodCcgPyAnc29saWQnIDogJ2JsYW5rJ1wiPlxuICAgICAgICAgICAgPGF4LWljb24gY2xhc3M9XCJheC1pY29uIGF4LWljb24tYWxpZ24tcmlnaHRcIj48L2F4LWljb24+XG4gICAgICAgICAgPC9heC1idXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9heC1wb3BvdmVyPlxuICAgIH1cbiAgICBAaWYgKGNvbmZpZygpLmltYWdlKSB7XG4gICAgICA8YXgtYnV0dG9uICNsaW5rQnRuIGxvb2s9XCJibGFua1wiPlxuICAgICAgICA8YXgtaWNvbiBjbGFzcz1cImF4LWljb24gYXgtaWNvbi1pbWFnZVwiPjwvYXgtaWNvbj5cbiAgICAgIDwvYXgtYnV0dG9uPlxuXG4gICAgICA8YXgtcG9wb3ZlclxuICAgICAgICBbb3Blbk9uXT1cInBvcG92ZXJPcHRpb24ub3Blbk9uXCJcbiAgICAgICAgW2Nsb3NlT25dPVwicG9wb3Zlck9wdGlvbi5jbG9zZU9uXCJcbiAgICAgICAgW3RhcmdldF09XCJsaW5rQnRuXCJcbiAgICAgICAgW3BsYWNlbWVudF09XCJwb3BvdmVyT3B0aW9uLnBsYWNlbWVudFwiXG4gICAgICA+XG4gICAgICAgIDxheC10ZXh0LWJveCBjbGFzcz1cInt7IHRleHRCb3hPcHRpb25zLnNpemUgfX1cIiBbKG5nTW9kZWwpXT1cInRleHRCb3hPcHRpb25zLnRleHRcIiBbcGxhY2Vob2xkZXJdPVwidGV4dEJveE9wdGlvbnMucGxhY2Vob2xkZXJcIj5cbiAgICAgICAgPC9heC10ZXh0LWJveD5cbiAgICAgICAgPGF4LXN1ZmZpeD5cbiAgICAgICAgICA8YXgtYnV0dG9uIChjbGljayk9XCJzdWJtaXRMaW5rKClcIiBjbGFzcz1cImF4LXNtXCIgY29sb3I9XCJzZWNvbmRhcnlcIiB0ZXh0PVwiQWRkXCI+IDwvYXgtYnV0dG9uPlxuICAgICAgICA8L2F4LXN1ZmZpeD5cbiAgICAgIDwvYXgtcG9wb3Zlcj5cbiAgICB9XG4gIDwvZGl2PlxuXG4gIDxuZy1jb250ZW50IHNlbGVjdD1cImF4LXN1ZmZpeFwiPjwvbmctY29udGVudD5cbjwvZGl2PlxuIl19
@@ -1,11 +1,30 @@
1
- import { Component, ViewEncapsulation } from '@angular/core';
1
+ import { Component, HostBinding, inject, input, ViewEncapsulation } from '@angular/core';
2
+ import { AXWysiwygService } from '../wysiwyg.service';
2
3
  import * as i0 from "@angular/core";
3
4
  export class AXWysiwygViewComponent {
5
+ constructor() {
6
+ this.classes = input('', { alias: 'class' });
7
+ this.wysiwygService = inject(AXWysiwygService);
8
+ }
9
+ get __hostClass() {
10
+ return `${this.classes()}`;
11
+ }
12
+ editorStateHandler(e) {
13
+ this.wysiwygService.currentSelectedElemArray.set([
14
+ e.target.nodeName,
15
+ e.target.parentElement.nodeName,
16
+ e.target.parentElement.parentElement.nodeName,
17
+ e.target.parentElement.parentElement.parentElement.nodeName,
18
+ ]);
19
+ }
4
20
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXWysiwygViewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.2", type: AXWysiwygViewComponent, selector: "ax-wysiwyg-view", ngImport: i0, template: "<!-- wysiwyg editor render here -->\n", styles: ["ax-wysiwyg-view{display:block;width:100%;border-bottom:1px solid rgb(var(--ax-color-border-default))}.ql-container{font-family:inherit}.ql-editor.ql-blank:before{color:rgb(var(--ax-color-neutral-400));font-weight:600;font-style:normal}\n"], encapsulation: i0.ViewEncapsulation.None }); }
21
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.0.2", type: AXWysiwygViewComponent, selector: "ax-wysiwyg-view", inputs: { classes: { classPropertyName: "classes", publicName: "class", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "this.__hostClass" } }, ngImport: i0, template: "<div class=\"ax-editor-wrapper\" (click)=\"editorStateHandler($event)\">\n <!-- wysiwyg editor render here -->\n</div>\n", styles: ["ax-wysiwyg-view{display:block;width:100%;border-bottom:1px solid rgb(var(--ax-color-border-default))}.ql-container{font-family:inherit}.ql-editor.ql-blank:before{color:rgb(var(--ax-color-neutral-400));font-weight:600;font-style:normal}\n"], encapsulation: i0.ViewEncapsulation.None }); }
6
22
  }
7
23
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXWysiwygViewComponent, decorators: [{
8
24
  type: Component,
9
- args: [{ selector: 'ax-wysiwyg-view', encapsulation: ViewEncapsulation.None, template: "<!-- wysiwyg editor render here -->\n", styles: ["ax-wysiwyg-view{display:block;width:100%;border-bottom:1px solid rgb(var(--ax-color-border-default))}.ql-container{font-family:inherit}.ql-editor.ql-blank:before{color:rgb(var(--ax-color-neutral-400));font-weight:600;font-style:normal}\n"] }]
10
- }] });
11
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid3lzaXd5Zy12aWV3LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy93eXNpd3lnL3NyYy9saWIvd3lzaXd5Zy93eXNpd3lnLXZpZXcvd3lzaXd5Zy12aWV3LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy93eXNpd3lnL3NyYy9saWIvd3lzaXd5Zy93eXNpd3lnLXZpZXcvd3lzaXd5Zy12aWV3LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBUTdELE1BQU0sT0FBTyxzQkFBc0I7OEdBQXRCLHNCQUFzQjtrR0FBdEIsc0JBQXNCLHVEQ1JuQyx1Q0FDQTs7MkZET2Esc0JBQXNCO2tCQU5sQyxTQUFTOytCQUNFLGlCQUFpQixpQkFHWixpQkFBaUIsQ0FBQyxJQUFJIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdheC13eXNpd3lnLXZpZXcnLFxuICB0ZW1wbGF0ZVVybDogJy4vd3lzaXd5Zy12aWV3LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL3d5c2l3eWctdmlldy5jb21wb25lbnQuc2NzcycsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG59KVxuZXhwb3J0IGNsYXNzIEFYV3lzaXd5Z1ZpZXdDb21wb25lbnQge31cbiIsIjwhLS0gd3lzaXd5ZyBlZGl0b3IgcmVuZGVyIGhlcmUgLS0+XG4iXX0=
25
+ args: [{ selector: 'ax-wysiwyg-view', encapsulation: ViewEncapsulation.None, template: "<div class=\"ax-editor-wrapper\" (click)=\"editorStateHandler($event)\">\n <!-- wysiwyg editor render here -->\n</div>\n", styles: ["ax-wysiwyg-view{display:block;width:100%;border-bottom:1px solid rgb(var(--ax-color-border-default))}.ql-container{font-family:inherit}.ql-editor.ql-blank:before{color:rgb(var(--ax-color-neutral-400));font-weight:600;font-style:normal}\n"] }]
26
+ }], propDecorators: { __hostClass: [{
27
+ type: HostBinding,
28
+ args: ['class']
29
+ }] } });
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid3lzaXd5Zy12aWV3LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy93eXNpd3lnL3NyYy9saWIvd3lzaXd5Zy93eXNpd3lnLXZpZXcvd3lzaXd5Zy12aWV3LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy93eXNpd3lnL3NyYy9saWIvd3lzaXd5Zy93eXNpd3lnLXZpZXcvd3lzaXd5Zy12aWV3LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7O0FBUXRELE1BQU0sT0FBTyxzQkFBc0I7SUFObkM7UUFPRSxZQUFPLEdBQUcsS0FBSyxDQUFTLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDO1FBRWhELG1CQUFjLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7S0FlM0M7SUFiQyxJQUNJLFdBQVc7UUFDYixPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUM7SUFDN0IsQ0FBQztJQUVELGtCQUFrQixDQUFDLENBQU07UUFDdkIsSUFBSSxDQUFDLGNBQWMsQ0FBQyx3QkFBd0IsQ0FBQyxHQUFHLENBQUM7WUFDL0MsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxRQUFRO1lBQ2pCLENBQUMsQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLFFBQVE7WUFDL0IsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLFFBQVE7WUFDN0MsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxRQUFRO1NBQzVELENBQUMsQ0FBQztJQUNMLENBQUM7OEdBakJVLHNCQUFzQjtrR0FBdEIsc0JBQXNCLHNQQ1RuQywySEFHQTs7MkZETWEsc0JBQXNCO2tCQU5sQyxTQUFTOytCQUNFLGlCQUFpQixpQkFHWixpQkFBaUIsQ0FBQyxJQUFJOzhCQVFqQyxXQUFXO3NCQURkLFdBQVc7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSG9zdEJpbmRpbmcsIGluamVjdCwgaW5wdXQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBWFd5c2l3eWdTZXJ2aWNlIH0gZnJvbSAnLi4vd3lzaXd5Zy5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXgtd3lzaXd5Zy12aWV3JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3d5c2l3eWctdmlldy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi93eXNpd3lnLXZpZXcuY29tcG9uZW50LnNjc3MnLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxufSlcbmV4cG9ydCBjbGFzcyBBWFd5c2l3eWdWaWV3Q29tcG9uZW50IHtcbiAgY2xhc3NlcyA9IGlucHV0PHN0cmluZz4oJycsIHsgYWxpYXM6ICdjbGFzcycgfSk7XG5cbiAgd3lzaXd5Z1NlcnZpY2UgPSBpbmplY3QoQVhXeXNpd3lnU2VydmljZSk7XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gIGdldCBfX2hvc3RDbGFzcygpOiBzdHJpbmcge1xuICAgIHJldHVybiBgJHt0aGlzLmNsYXNzZXMoKX1gO1xuICB9XG5cbiAgZWRpdG9yU3RhdGVIYW5kbGVyKGU6IGFueSkge1xuICAgIHRoaXMud3lzaXd5Z1NlcnZpY2UuY3VycmVudFNlbGVjdGVkRWxlbUFycmF5LnNldChbXG4gICAgICBlLnRhcmdldC5ub2RlTmFtZSxcbiAgICAgIGUudGFyZ2V0LnBhcmVudEVsZW1lbnQubm9kZU5hbWUsXG4gICAgICBlLnRhcmdldC5wYXJlbnRFbGVtZW50LnBhcmVudEVsZW1lbnQubm9kZU5hbWUsXG4gICAgICBlLnRhcmdldC5wYXJlbnRFbGVtZW50LnBhcmVudEVsZW1lbnQucGFyZW50RWxlbWVudC5ub2RlTmFtZSxcbiAgICBdKTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImF4LWVkaXRvci13cmFwcGVyXCIgKGNsaWNrKT1cImVkaXRvclN0YXRlSGFuZGxlcigkZXZlbnQpXCI+XG4gIDwhLS0gd3lzaXd5ZyBlZGl0b3IgcmVuZGVyIGhlcmUgLS0+XG48L2Rpdj5cbiJdfQ==
@@ -3,6 +3,7 @@ import * as i0 from "@angular/core";
3
3
  export class AXWysiwygService {
4
4
  constructor() {
5
5
  this.wysiwyg = signal(null);
6
+ this.currentSelectedElemArray = signal([]);
6
7
  }
7
8
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXWysiwygService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
8
9
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXWysiwygService }); }
@@ -10,4 +11,4 @@ export class AXWysiwygService {
10
11
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImport: i0, type: AXWysiwygService, decorators: [{
11
12
  type: Injectable
12
13
  }] });
13
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid3lzaXd5Zy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL3d5c2l3eWcvc3JjL2xpYi93eXNpd3lnL3d5c2l3eWcuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFHbkQsTUFBTSxPQUFPLGdCQUFnQjtJQUQ3QjtRQUVFLFlBQU8sR0FBRyxNQUFNLENBQW1CLElBQUksQ0FBQyxDQUFDO0tBQzFDOzhHQUZZLGdCQUFnQjtrSEFBaEIsZ0JBQWdCOzsyRkFBaEIsZ0JBQWdCO2tCQUQ1QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhXeXNpd3lnIH0gZnJvbSAnQGFjb3JleC9jZGsvd3lzaXd5Zyc7XG5pbXBvcnQgeyBJbmplY3RhYmxlLCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEFYV3lzaXd5Z1NlcnZpY2Uge1xuICB3eXNpd3lnID0gc2lnbmFsPEFYV3lzaXd5ZyB8IG51bGw+KG51bGwpO1xufVxuIl19
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid3lzaXd5Zy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL3d5c2l3eWcvc3JjL2xpYi93eXNpd3lnL3d5c2l3eWcuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFHbkQsTUFBTSxPQUFPLGdCQUFnQjtJQUQ3QjtRQUVFLFlBQU8sR0FBRyxNQUFNLENBQW1CLElBQUksQ0FBQyxDQUFDO1FBRXpDLDZCQUF3QixHQUFHLE1BQU0sQ0FBVyxFQUFFLENBQUMsQ0FBQztLQUNqRDs4R0FKWSxnQkFBZ0I7a0hBQWhCLGdCQUFnQjs7MkZBQWhCLGdCQUFnQjtrQkFENUIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYV3lzaXd5ZyB9IGZyb20gJ0BhY29yZXgvY2RrL3d5c2l3eWcnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBBWFd5c2l3eWdTZXJ2aWNlIHtcbiAgd3lzaXd5ZyA9IHNpZ25hbDxBWFd5c2l3eWcgfCBudWxsPihudWxsKTtcblxuICBjdXJyZW50U2VsZWN0ZWRFbGVtQXJyYXkgPSBzaWduYWw8c3RyaW5nW10+KFtdKTtcbn1cbiJdfQ==