@worktile/theia 2.1.13 → 2.1.16

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 (65) hide show
  1. package/bundles/worktile-theia.umd.js +260 -187
  2. package/bundles/worktile-theia.umd.js.map +1 -1
  3. package/components/toolbar/toolbar.component.d.ts +3 -2
  4. package/components/toolbar-dropdown/toolbar-dropdown.component.scss +0 -1
  5. package/components/toolbar-item/toolbar-item.component.d.ts +3 -4
  6. package/esm2015/components/color-select/color-select.component.js +3 -3
  7. package/esm2015/components/column-resize/column-resize-notifier.js +3 -3
  8. package/esm2015/components/column-resize/column-resize.directive.js +3 -3
  9. package/esm2015/components/column-resize/column-resize.module.js +8 -8
  10. package/esm2015/components/column-resize/event-dispatcher.js +3 -3
  11. package/esm2015/components/column-resize/overlay-handle.component.js +3 -3
  12. package/esm2015/components/column-resize/resizing.store.js +5 -5
  13. package/esm2015/components/contextmenu/contextmenu.component.js +3 -3
  14. package/esm2015/components/conversion-hint/conversion-hint.component.js +3 -3
  15. package/esm2015/components/element/element.component.js +3 -3
  16. package/esm2015/components/inline-toolbar/inline-toolbar.component.js +3 -3
  17. package/esm2015/components/nav-split-line/nav-split-line.component.js +3 -3
  18. package/esm2015/components/table-select/table-select.component.js +3 -3
  19. package/esm2015/components/template/template.component.js +3 -3
  20. package/esm2015/components/text/text.component.js +3 -3
  21. package/esm2015/components/toolbar/toolbar.component.js +8 -6
  22. package/esm2015/components/toolbar-base-item/toolbar-base-item.component.js +3 -3
  23. package/esm2015/components/toolbar-dropdown/toolbar-dropdown.component.js +5 -4
  24. package/esm2015/components/toolbar-group/toolbar-group.component.js +5 -4
  25. package/esm2015/components/toolbar-item/toolbar-item.component.js +6 -6
  26. package/esm2015/editor.component.js +3 -3
  27. package/esm2015/editor.module.js +4 -4
  28. package/esm2015/interfaces/view-base.js +3 -3
  29. package/esm2015/pipes.js +6 -6
  30. package/esm2015/plugins/blockquote/blockquote.component.js +3 -3
  31. package/esm2015/plugins/code/code.component.js +38 -7
  32. package/esm2015/plugins/color/toolbar-item.component.js +5 -4
  33. package/esm2015/plugins/deserializers/deserialize-md.plugin.js +2 -1
  34. package/esm2015/plugins/hr/hr.component.js +3 -3
  35. package/esm2015/plugins/image/image.component.js +3 -3
  36. package/esm2015/plugins/inline-code/inline-code.component.js +6 -6
  37. package/esm2015/plugins/link/edit/link-edit.component.js +3 -3
  38. package/esm2015/plugins/link/hover/link-hover.component.js +3 -3
  39. package/esm2015/plugins/link/link.component.js +12 -11
  40. package/esm2015/plugins/list/components/bulleted-list.component.js +3 -3
  41. package/esm2015/plugins/list/components/list-item.component.js +3 -3
  42. package/esm2015/plugins/list/components/numbered-list.component.js +3 -3
  43. package/esm2015/plugins/list/list.editor.js +8 -1
  44. package/esm2015/plugins/quick-insert/components/quick-insert.component.js +3 -3
  45. package/esm2015/plugins/quick-insert/components/quick-toolbar/quick-toolbar.component.js +3 -3
  46. package/esm2015/plugins/quick-insert/quick-insert.editor.js +2 -1
  47. package/esm2015/plugins/table/components/insert-mark/insert-mark.component.js +3 -3
  48. package/esm2015/plugins/table/components/row/row.component.js +3 -3
  49. package/esm2015/plugins/table/components/table.component.js +3 -3
  50. package/esm2015/plugins/table/components/td/td.component.js +21 -8
  51. package/esm2015/plugins/table/components/toolbar/table-toolbar.component.js +3 -3
  52. package/esm2015/plugins/table/table.service.js +5 -4
  53. package/esm2015/plugins/table/table.store.js +3 -3
  54. package/esm2015/plugins/table/toolbar-item.component.js +5 -4
  55. package/esm2015/plugins/todo-item/todo-item.component.js +3 -3
  56. package/esm2015/plugins/vertical-align/toolbar-item.component.js +5 -4
  57. package/esm2015/services/color-select.service.js +5 -4
  58. package/esm2015/services/context.service.js +3 -3
  59. package/esm2015/services/table-contextmenu.service.js +5 -4
  60. package/esm2015/services/toolbar.service.js +3 -3
  61. package/fesm2015/worktile-theia.js +249 -185
  62. package/fesm2015/worktile-theia.js.map +1 -1
  63. package/package.json +1 -1
  64. package/plugins/code/code.component.d.ts +1 -0
  65. package/plugins/inline-code/inline-code.component.scss +0 -1
@@ -11,8 +11,9 @@ import * as i0 from "@angular/core";
11
11
  import * as i1 from "ngx-tethys/nav";
12
12
  import * as i2 from "@angular/common";
13
13
  export class TheToolbarComponent {
14
- constructor(cfr, elementRef, ngZone, toolbarGroupComponent) {
14
+ constructor(cfr, cdr, elementRef, ngZone, toolbarGroupComponent) {
15
15
  this.cfr = cfr;
16
+ this.cdr = cdr;
16
17
  this.elementRef = elementRef;
17
18
  this.ngZone = ngZone;
18
19
  this.toolbarGroupComponent = toolbarGroupComponent;
@@ -87,6 +88,7 @@ export class TheToolbarComponent {
87
88
  }
88
89
  this.createMoreGroup(group);
89
90
  });
91
+ this.cdr.markForCheck();
90
92
  }
91
93
  /**
92
94
  * calculation display toolbar and more grouped toolbars
@@ -225,9 +227,9 @@ export class TheToolbarComponent {
225
227
  return (_c = item === null || item === void 0 ? void 0 : item.includes) === null || _c === void 0 ? void 0 : _c.find((item) => item.key === dropdownKey);
226
228
  }
227
229
  }
228
- TheToolbarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: TheToolbarComponent, deps: [{ token: i0.ComponentFactoryResolver }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: TheToolbarGroupToken }], target: i0.ɵɵFactoryTarget.Component });
229
- TheToolbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: TheToolbarComponent, selector: "the-toolbar", inputs: { editor: "editor", toolbarItems: "toolbarItems", align: "align", containerClass: "containerClass", isMore: "isMore", afterTemplate: "afterTemplate" }, host: { classAttribute: "the-toolbar-container" }, viewQueries: [{ propertyName: "toolbarContainer", first: true, predicate: ["toolbarContainer"], descendants: true, read: ViewContainerRef, static: true }], usesOnChanges: true, ngImport: i0, template: "<thy-icon-nav [style.justifyContent]=\"align\">\n <ng-container #toolbarContainer></ng-container>\n <ng-content></ng-content>\n <ng-template *ngIf=\"afterTemplate\" [ngTemplateOutlet]=\"afterTemplate\"></ng-template>\n</thy-icon-nav>\n", components: [{ type: i1.ThyIconNavComponent, selector: "thy-icon-nav", inputs: ["thyType"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }] });
230
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: TheToolbarComponent, decorators: [{
230
+ TheToolbarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TheToolbarComponent, deps: [{ token: i0.ComponentFactoryResolver }, { token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: TheToolbarGroupToken }], target: i0.ɵɵFactoryTarget.Component });
231
+ TheToolbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: TheToolbarComponent, selector: "the-toolbar", inputs: { editor: "editor", toolbarItems: "toolbarItems", align: "align", containerClass: "containerClass", isMore: "isMore", afterTemplate: "afterTemplate" }, host: { classAttribute: "the-toolbar-container" }, viewQueries: [{ propertyName: "toolbarContainer", first: true, predicate: ["toolbarContainer"], descendants: true, read: ViewContainerRef, static: true }], usesOnChanges: true, ngImport: i0, template: "<thy-icon-nav [style.justifyContent]=\"align\">\n <ng-container #toolbarContainer></ng-container>\n <ng-content></ng-content>\n <ng-template *ngIf=\"afterTemplate\" [ngTemplateOutlet]=\"afterTemplate\"></ng-template>\n</thy-icon-nav>\n", components: [{ type: i1.ThyIconNavComponent, selector: "thy-icon-nav", inputs: ["thyType"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }] });
232
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TheToolbarComponent, decorators: [{
231
233
  type: Component,
232
234
  args: [{
233
235
  selector: 'the-toolbar',
@@ -236,7 +238,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImpo
236
238
  class: 'the-toolbar-container'
237
239
  }
238
240
  }]
239
- }], ctorParameters: function () { return [{ type: i0.ComponentFactoryResolver }, { type: i0.ElementRef }, { type: i0.NgZone }, { type: undefined, decorators: [{
241
+ }], ctorParameters: function () { return [{ type: i0.ComponentFactoryResolver }, { type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }, { type: undefined, decorators: [{
240
242
  type: Inject,
241
243
  args: [TheToolbarGroupToken]
242
244
  }] }]; }, propDecorators: { editor: [{
@@ -255,4 +257,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImpo
255
257
  type: ViewChild,
256
258
  args: ['toolbarContainer', { read: ViewContainerRef, static: true }]
257
259
  }] } });
258
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zcmMvY29tcG9uZW50cy90b29sYmFyL3Rvb2xiYXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvc3JjL2NvbXBvbmVudHMvdG9vbGJhci90b29sYmFyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0gsU0FBUyxFQUNULEtBQUssRUFFTCxTQUFTLEVBQ1QsZ0JBQWdCLEVBUWhCLE1BQU0sRUFFVCxNQUFNLGVBQWUsQ0FBQztBQUd2QixPQUFPLEVBQTRELGVBQWUsRUFBYyxNQUFNLDBCQUEwQixDQUFDO0FBQ2pJLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ2pGLE9BQU8sRUFBRSxZQUFZLEVBQWEsU0FBUyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDcEcsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDakYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDbkYsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFFN0YsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7Ozs7QUFTbkUsTUFBTSxPQUFPLG1CQUFtQjtJQW9CNUIsWUFDWSxHQUE2QixFQUM3QixVQUFzQixFQUN0QixNQUFjLEVBQ2dCLHFCQUE4RDtRQUg1RixRQUFHLEdBQUgsR0FBRyxDQUEwQjtRQUM3QixlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQ3RCLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZ0IsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUF5QztRQXJCL0YsaUJBQVksR0FBa0IsRUFBRSxDQUFDO1FBSWpDLG1CQUFjLEdB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RUFBRSx3QkFBd0I7b0JBQ3JDLElBQUksRUFBRTt3QkFDRixLQUFLLEVBQUUsdUJBQXVCO3FCQUNqQztpQkFDSjs7MEJBeUJRLE1BQU07MkJBQUMsb0JBQW9COzRDQXZCdkIsTUFBTTtzQkFBZCxLQUFLO2dCQUVHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBRUcsS0FBSztzQkFBYixLQUFLO2dCQUVHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBRUcsTUFBTTtzQkFBZCxLQUFLO2dCQUVHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBRW1FLGdCQUFnQjtzQkFBeEYsU0FBUzt1QkFBQyxrQkFBa0IsRUFBRSxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDb21wb25lbnQsXG4gICAgSW5wdXQsXG4gICAgT25Jbml0LFxuICAgIFZpZXdDaGlsZCxcbiAgICBWaWV3Q29udGFpbmVyUmVmLFxuICAgIENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcixcbiAgICBPbkNoYW5nZXMsXG4gICAgU2ltcGxlQ2hhbmdlcyxcbiAgICBDb21wb25lbnRSZWYsXG4gICAgRWxlbWVudFJlZixcbiAgICBPbkRlc3Ryb3ksXG4gICAgTmdab25lLFxuICAgIEluamVjdCxcbiAgICBUZW1wbGF0ZVJlZlxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEVkaXRvciB9IGZyb20gJ3NsYXRlJztcbmltcG9ydCB7IENvbXBvbmVudFR5cGUgfSBmcm9tICdzbGF0ZS1hbmd1bGFyJztcbmltcG9ydCB7IFRvb2xiYXJBbGlnbm1lbnQsIFRvb2xiYXJJdGVtLCBUb29sYmFySXRlbXNDb21wb3NlUmV0dXJuLCBUb29sYmFySXRlbVR5cGUsIFRvb2xiYXJLZXkgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL3Rvb2xiYXInO1xuaW1wb3J0IHsgVGhlVG9vbGJhckdyb3VwVG9rZW4sIFRvb2xiYXJNb3JlR3JvdXAgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvdG9vbGJhcic7XG5pbXBvcnQgeyBFbGVtZW50S2luZHMsIEZvbnRTaXplcywgTWFya1R5cGVzLCBUb29sYmFyQWN0aW9uVHlwZXMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvbm9kZS10eXBlcyc7XG5pbXBvcnQgeyBUaGVUb29sYmFySXRlbUNvbXBvbmVudCB9IGZyb20gJy4uL3Rvb2xiYXItaXRlbS90b29sYmFyLWl0ZW0uY29tcG9uZW50JztcbmltcG9ydCB7IE5hdlNwbGl0TGluZUNvbXBvbmVudCB9IGZyb20gJy4uL25hdi1zcGxpdC1saW5lL25hdi1zcGxpdC1saW5lLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUaGVUb29sYmFyRHJvcGRvd25Db21wb25lbnQgfSBmcm9tICcuLi90b29sYmFyLWRyb3Bkb3duL3Rvb2xiYXItZHJvcGRvd24uY29tcG9uZW50JztcbmltcG9ydCB0eXBlIHsgVGhlVG9vbGJhckdyb3VwQ29tcG9uZW50IH0gZnJvbSAnLi4vdG9vbGJhci1ncm91cC90b29sYmFyLWdyb3VwLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUaGVDb250ZXh0U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2NvbnRleHQuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndGhlLXRvb2xiYXInLFxuICAgIHRlbXBsYXRlVXJsOiAndG9vbGJhci5jb21wb25lbnQuaHRtbCcsXG4gICAgaG9zdDoge1xuICAgICAgICBjbGFzczogJ3RoZS10b29sYmFyLWNvbnRhaW5lcidcbiAgICB9XG59KVxuZXhwb3J0IGNsYXNzIFRoZVRvb2xiYXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcbiAgICBASW5wdXQoKSBlZGl0b3I6IEVkaXRvcjtcblxuICAgIEBJbnB1dCgpIHRvb2xiYXJJdGVtczogVG9vbGJhckl0ZW1bXSA9IFtdO1xuXG4gICAgQElucHV0KCkgYWxpZ246IFRvb2xiYXJBbGlnbm1lbnQ7XG5cbiAgICBASW5wdXQoKSBjb250YWluZXJDbGFzczogc3RyaW5nW10gPSBbXTtcblxuICAgIEBJbnB1dCgpIGlzTW9yZSA9IHRydWU7XG5cbiAgICBASW5wdXQoKSBhZnRlclRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gICAgQFZpZXdDaGlsZCgndG9vbGJhckNvbnRhaW5lcicsIHsgcmVhZDogVmlld0NvbnRhaW5lclJlZiwgc3RhdGljOiB0cnVlIH0pIHRvb2xiYXJDb250YWluZXI6IFZpZXdDb250YWluZXJSZWY7XG5cbiAgICBjb21wb25lbnRzOiBNYXA8c3RyaW5nLCBDb21wb25lbnRSZWY8YW55Pj4gPSBuZXcgTWFwPHN0cmluZywgQ29tcG9uZW50UmVmPGFueT4+KCk7XG4gICAgbW9yZUdyb3VwTWVudSA9IFRvb2xiYXJNb3JlR3JvdXA7XG4gICAgcmVzaXplT2JzZXJ2ZXI7XG4gICAgZWxlbWVudFdpZHRoID0gMDtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIGNmcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxuICAgICAgICBwcml2YXRlIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG4gICAgICAgIHByaXZhdGUgbmdab25lOiBOZ1pvbmUsXG4gICAgICAgIEBJbmplY3QoVGhlVG9vbGJhckdyb3VwVG9rZW4pIHByaXZhdGUgdG9vbGJhckdyb3VwQ29tcG9uZW50OiBDb21wb25lbnRUeXBlPFRoZVRvb2xiYXJHcm91cENvbXBvbmVudD5cbiAgICApIHt9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zZXRUb29sYmFyQ2xhc3MoKTtcbiAgICAgICAgdGhpcy5yZW5kZXJUb29sYmFyVmlldygpO1xuICAgICAgICB0aGlzLnN0YXR1c0NoYW5nZSh0aGlzLmVkaXRvcik7XG5cbiAgICAgICAgaWYgKHRoaXMuaXNNb3JlKSB7XG4gICAgICAgICAgICB0aGlzLnJlc2l6ZUVsZW1lbnQoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgdG9vbGJhckl0ZW1zID0gY2hhbmdlcy50b29sYmFySXRlbXM7XG4gICAgICAgIGlmICh0b29sYmFySXRlbXMgJiYgIXRvb2xiYXJJdGVtcy5maXJzdENoYW5nZSkge1xuICAgICAgICAgICAgdGhpcy5yZW5kZXJUb29sYmFyVmlldygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLnJlc2l6ZU9ic2VydmVyKSB7XG4gICAgICAgICAgICB0aGlzLnJlc2l6ZU9ic2VydmVyLmRpc2Nvbm5lY3QoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBzZXRUb29sYmFyQ2xhc3MoKSB7XG4gICAgICAgIGlmICh0aGlzLmVkaXRvciAmJiAhIXRoaXMuY29udGFpbmVyQ2xhc3MubGVuZ3RoKSB7XG4gICAgICAgICAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5jbGFzc0xpc3QuYWRkKC4uLnRoaXMuY29udGFpbmVyQ2xhc3MpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSByZXNpemVFbGVtZW50KCkge1xuICAgICAgICBjb25zdCBlZGl0YWJsZUVsZW1lbnQgPSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcbiAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICB0aGlzLnJlc2l6ZU9ic2VydmVyID0gbmV3IFJlc2l6ZU9ic2VydmVyKGVudHJpZXMgPT4ge1xuICAgICAgICAgICAgZm9yIChsZXQgZW50cnkgb2YgZW50cmllcykge1xuICAgICAgICAgICAgICAgIGNvbnN0IHsgd2lkdGggfSA9IGVudHJ5LmNvbnRlbnRSZWN0O1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLmlzTW9yZSAmJiB0aGlzLmVsZW1lbnRXaWR0aCAhPT0gd2lkdGgpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5lbGVtZW50V2lkdGggPSB3aWR0aDtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5yZW5kZXJUb29sYmFyVmlldygpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMucmVzaXplT2JzZXJ2ZXIub2JzZXJ2ZShlZGl0YWJsZUVsZW1lbnQpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0dXNDaGFuZ2UoZWRpdG9yOiBFZGl0b3IpIHtcbiAgICAgICAgY29uc3QgdG9vbGJhckl0ZW1zID0gWy4uLnRoaXMudG9vbGJhckl0ZW1zLCB0aGlzLm1vcmVHcm91cE1lbnVdO1xuICAgICAgICBmb3IgKGNvbnN0IGl0ZW0gb2YgdG9vbGJhckl0ZW1zKSB7XG4gICAgICAgICAgICBpZiAoaXRlbS5rZXkgIT09IFRvb2xiYXJBY3Rpb25UeXBlcy5zcGxpdCkge1xuICAgICAgICAgICAgICAgIGNvbnN0IGl0ZW1Db21wb25lbnQgPSB0aGlzLmNvbXBvbmVudHMuZ2V0KGl0ZW0ua2V5KTtcbiAgICAgICAgICAgICAgICBpZiAoaXRlbUNvbXBvbmVudCkge1xuICAgICAgICAgICAgICAgICAgICBpdGVtQ29tcG9uZW50Lmluc3RhbmNlLnN0YXR1c0NoYW5nZShlZGl0b3IpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyByZW5kZXJUb29sYmFyVmlldygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jb21wb25lbnRzLmNsZWFyKCk7XG4gICAgICAgIHRoaXMudG9vbGJhckNvbnRhaW5lci5jbGVhcigpO1xuICAgICAgICBjb25zdCB0b29sYmFySXRlbXMgPSB0aGlzLnRvb2xiYXJJdGVtc0NvbXBvc2UoKTtcbiAgICAgICAgY29uc3QgeyBpdGVtcywgZ3JvdXAgfSA9IHRvb2xiYXJJdGVtcztcblxuICAgICAgICB0aGlzLm5nWm9uZS5ydW4oKCkgPT4ge1xuICAgICAgICAgICAgZm9yIChjb25zdCBpdGVtIG9mIGl0ZW1zKSB7XG4gICAgICAgICAgICAgICAgaWYgKGl0ZW0ua2V5ID09PSBUb29sYmFyQWN0aW9uVHlwZXMuc3BsaXQpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jcmVhdGVUb29sYmFyU3BsaXQoKTtcbiAgICAgICAgICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHRoaXMuY3JlYXRlVG9vbGJhckl0ZW0oaXRlbSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLmNyZWF0ZU1vcmVHcm91cChncm91cCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIGNhbGN1bGF0aW9uIGRpc3BsYXkgdG9vbGJhciBhbmQgbW9yZSBncm91cGVkIHRvb2xiYXJzXG4gICAgICpcbiAgICAgKlx04pSM4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAIEdvb2xiYXJUb29sYmFyVmlldyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilJBcbiAgICAgKlx0fCDilIzilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIAgI2NoaWxkcmVuIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUkCB8XG4gICAgICpcdHwgfCAgIOKUjOKUgOKUgOKUgOKUgOKUgOKUgOKUgCAjaXRlbXNWaWV3IOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUkCDilIzilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilJAg4pSM4pSA4pSAICNncm91cGVkSXRlbXNEcm9wZG93biDilIDilIDilIDilJAgICB8IHxcbiAgICAgKlx0fCB8ICAgfCAgICAgICAjdW5ncm91cGVkSXRlbXMgICAgIHwgfCBUb29sYmFyU2VwYXJhdG9yVmlldyB8IHwgICAgICAgICNncm91cGVkSXRlbXMgICAgICAgfCAgIHwgfFxuICAgICAqXHR8IHwgICDilJTilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIAt4pSYIOKUlOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUmCDilJTilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilJggICB8IHxcbiAgICAgKlx0fCB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxcLS0tLS0tLS0tLSBvbmx5IHdoZW4gdG9vbGJhciBpdGVtcyBvdmVyZmxvdyAtLS0tLS0tLS8gICB8IHxcbiAgICAgKlx0fCDilJTilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilJggfFxuICAgICAqXHTilJTilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilJhcbiAgICAgKiBzcGxpdCB3aWR0aDogNnB4XG4gICAgICogaXRlbSB3aWR0aDogZGVmYXVsdCBpdGVtOiAzNXB4OyBkcm9wZG93biBpdGVtOiA1MHB4XG4gICAgICogc2V0IGFzaWRlIDUwcHhcbiAgICAgKi9cbiAgICBwcml2YXRlIHRvb2xiYXJJdGVtc0NvbXBvc2UoKTogVG9vbGJhckl0ZW1zQ29tcG9zZVJldHVybiB7XG4gICAgICAgIGxldCBlbGVtZW50V2lkdGggPSB0aGlzLmlzTW9yZSA/IHRoaXMuZWxlbWVudFdpZHRoIDogbnVsbDtcbiAgICAgICAgY29uc3QgbWF4SXRlbVdpZHRoID0gNTA7XG4gICAgICAgIGNvbnN0IGRlZmF1bHRJdGVtV2lkdGggPSAzNTtcbiAgICAgICAgY29uc3Qgc3BsaXRXaWR0aCA9IDY7XG4gICAgICAgIC8vIHNwZWNpYWwgdHlwZVxuICAgICAgICBjb25zdCBoZWFkaW5nV2lkdGggPSA3MDtcbiAgICAgICAgY29uc3QgaXRlbXM6IFRvb2xiYXJJdGVtW10gPSBbXTtcbiAgICAgICAgY29uc3QgZ3JvdXA6IFRvb2xiYXJJdGVtW10gPSBbXTtcblxuICAgICAgICBmb3IgKGNvbnN0IGl0ZW0gb2YgdGhpcy50b29sYmFySXRlbXMpIHtcbiAgICAgICAgICAgIGlmICghdGhpcy5pc01vcmUpIHtcbiAgICAgICAgICAgICAgICBpdGVtcy5wdXNoKGl0ZW0pO1xuICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBub3QgZW5vdWdoIGZyZWUgc3BhY2VcbiAgICAgICAgICAgIGNvbnN0IGFsbG93UmVuZGVyID0gZWxlbWVudFdpZHRoICYmIGVsZW1lbnRXaWR0aCA+IG1heEl0ZW1XaWR0aDtcbiAgICAgICAgICAgIGlmIChhbGxvd1JlbmRlciAmJiBpdGVtLmtleSA9PT0gVG9vbGJhckFjdGlvblR5cGVzLnNwbGl0KSB7XG4gICAgICAgICAgICAgICAgaXRlbXMucHVzaChpdGVtKTtcbiAgICAgICAgICAgICAgICBlbGVtZW50V2lkdGggLT0gc3BsaXRXaWR0aDtcbiAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKGFsbG93UmVuZGVyKSB7XG4gICAgICAgICAgICAgICAgaXRlbXMucHVzaChpdGVtKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgZ3JvdXAucHVzaChpdGVtKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKGl0ZW0ua2V5ID09PSBFbGVtZW50S2luZHMuaGVhZGluZ0xpc3QpIHtcbiAgICAgICAgICAgICAgICBlbGVtZW50V2lkdGggLT0gaGVhZGluZ1dpZHRoO1xuICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3QgaXNDdXN0b21Db21wb25lbnQgPSBpdGVtPy50eXBlID09PSBUb29sYmFySXRlbVR5cGUudG9vbERyb3Bkb3duIHx8ICEhaXRlbT8uaWNvbkNvbXBvbmVudDtcbiAgICAgICAgICAgIGVsZW1lbnRXaWR0aCAtPSBpc0N1c3RvbUNvbXBvbmVudCA/IG1heEl0ZW1XaWR0aCA6IGRlZmF1bHRJdGVtV2lkdGg7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgaXRlbXM6IHRoaXMucHVyZVRvb2xiYXJJdGVtcyhpdGVtcyksXG4gICAgICAgICAgICBncm91cFxuICAgICAgICB9O1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIGV4dGVybmFsbHkgZGVzaWduYXRlZCBtb3JlIGdyb3VwXG4gICAgICovXG4gICAgcHJpdmF0ZSB0b29sYmFySXRlbXNBbmRNb3JlQ29tcG9zZSgpIHtcbiAgICAgICAgY29uc3QgaXRlbXMgPSBbXTtcbiAgICAgICAgY29uc3QgZ3JvdXAgPSBbXTtcblxuICAgICAgICBmb3IgKGNvbnN0IGl0ZW0gb2YgdGhpcy50b29sYmFySXRlbXMpIHtcbiAgICAgICAgICAgIGlmIChpdGVtLmtleSA9PT0gVG9vbGJhckFjdGlvblR5cGVzLnNwbGl0KSB7XG4gICAgICAgICAgICAgICAgaXRlbXMucHVzaChpdGVtKTtcbiAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGl0ZW1zLnB1c2goaXRlbSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgaXRlbXM6IHRoaXMucHVyZVRvb2xiYXJJdGVtcyhpdGVtcyksXG4gICAgICAgICAgICBncm91cFxuICAgICAgICB9O1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIGZpbHRlciBhZGphY2VudCByZXBlYXRlZCBkaXZpZGVyc1xuICAgICAqIEBwYXJhbSB7VG9vbGJhckl0ZW1bXX0gaXRlbXNcbiAgICAgKiBAcmV0dXJuc1xuICAgICAqIEBtZW1iZXJvZiBUaGVUb29sYmFyQ29tcG9uZW50XG4gICAgICovXG4gICAgcHVyZVRvb2xiYXJJdGVtcyhpdGVtczogVG9vbGJhckl0ZW1bXSkge1xuICAgICAgICBpZiAoIUFycmF5LmlzQXJyYXkoaXRlbXMpKSB7XG4gICAgICAgICAgICByZXR1cm4gW107XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGl0ZW1zLmZpbHRlcigoYSwgaSkgPT4ge1xuICAgICAgICAgICAgaWYgKGkgPiAwICYmIGl0ZW1zW2kgLSAxXS5rZXkgIT09IFRvb2xiYXJBY3Rpb25UeXBlcy5zcGxpdCkge1xuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIGEua2V5ICE9PSBUb29sYmFyQWN0aW9uVHlwZXMuc3BsaXQ7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgY3JlYXRlVG9vbGJhckl0ZW0oaXRlbTogVG9vbGJhckl0ZW0pIHtcbiAgICAgICAgY29uc3QgeyBpY29uQ29tcG9uZW50LCB0eXBlLCBkcm9wZG93bk1vZGUsIGRyb3Bkb3duSXRlbUtleSwgaW5jbHVkZXMsIC4uLmFyZ3MgfSA9IGl0ZW07XG4gICAgICAgIGNvbnN0IHZpZXdDb21wb25lbnQgPSB0aGlzLnZpZXdDb21wb25lbnRUeXBlKHR5cGUpO1xuICAgICAgICBjb25zdCBkcm9wZG93bkl0ZW0gPSB0aGlzLmdldERyb3Bkb3duSXRlbShpdGVtKTtcbiAgICAgICAgY29uc3QgZmFjdG9yeSA9IHRoaXMuY2ZyLnJlc29sdmVDb21wb25lbnRGYWN0b3J5KGljb25Db21wb25lbnQgPyBpY29uQ29tcG9uZW50IDogdmlld0NvbXBvbmVudCk7XG4gICAgICAgIGNvbnN0IGNvbXBSZWYgPSB0aGlzLnRvb2xiYXJDb250YWluZXIuY3JlYXRlQ29tcG9uZW50KGZhY3RvcnkpO1xuXG4gICAgICAgIGNvbXBSZWYuaW5zdGFuY2UuZWRpdG9yID0gdGhpcy5lZGl0b3I7XG4gICAgICAgIGNvbXBSZWYuaW5zdGFuY2UudG9vbGJhckl0ZW0gPSBpdGVtO1xuICAgICAgICBjb21wUmVmLmluc3RhbmNlLm1lbnVzID0gaW5jbHVkZXM7XG4gICAgICAgIGNvbXBSZWYuaW5zdGFuY2UuaXRlbSA9IGluY2x1ZGVzICYmIGRyb3Bkb3duSXRlbSA/IGRyb3Bkb3duSXRlbSA6IGFyZ3M7XG4gICAgICAgIGNvbXBSZWYuaW5zdGFuY2UubW9kZSA9IGRyb3Bkb3duTW9kZTtcbiAgICAgICAgdGhpcy5jb21wb25lbnRzLnNldChpdGVtLmtleSwgY29tcFJlZik7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjcmVhdGVUb29sYmFyU3BsaXQoKSB7XG4gICAgICAgIGNvbnN0IG5hdlNwbGl0TGluZUZhY3RvcnkgPSB0aGlzLmNmci5yZXNvbHZlQ29tcG9uZW50RmFjdG9yeShOYXZTcGxpdExpbmVDb21wb25lbnQpO1xuICAgICAgICB0aGlzLnRvb2xiYXJDb250YWluZXIuY3JlYXRlQ29tcG9uZW50KG5hdlNwbGl0TGluZUZhY3RvcnkpO1xuICAgIH1cblxuICAgIHByaXZhdGUgY3JlYXRlTW9yZUdyb3VwKGdyb3VwOiBUb29sYmFySXRlbVtdKSB7XG4gICAgICAgIGlmIChncm91cC5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICBjb25zdCBtb3JlR3JvdXBGYWN0b3J5ID0gdGhpcy5jZnIucmVzb2x2ZUNvbXBvbmVudEZhY3RvcnkodGhpcy50b29sYmFyR3JvdXBDb21wb25lbnQpO1xuICAgICAgICAgICAgY29uc3QgY29tcFJlZiA9IHRoaXMudG9vbGJhckNvbnRhaW5lci5jcmVhdGVDb21wb25lbnQobW9yZUdyb3VwRmFjdG9yeSk7XG4gICAgICAgICAgICBjb21wUmVmLmluc3RhbmNlLmVkaXRvciA9IHRoaXMuZWRpdG9yO1xuICAgICAgICAgICAgY29tcFJlZi5pbnN0YW5jZS5tZW51cyA9IGdyb3VwO1xuICAgICAgICAgICAgY29tcFJlZi5pbnN0YW5jZS5pdGVtID0gdGhpcy5tb3JlR3JvdXBNZW51O1xuICAgICAgICAgICAgdGhpcy5jb21wb25lbnRzLnNldCh0aGlzLm1vcmVHcm91cE1lbnUua2V5LCBjb21wUmVmKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgdmlld0NvbXBvbmVudFR5cGUodHlwZTogVG9vbGJhckl0ZW1UeXBlKSB7XG4gICAgICAgIGlmICh0eXBlID09PSBUb29sYmFySXRlbVR5cGUuZGVmYXVsdCkge1xuICAgICAgICAgICAgcmV0dXJuIFRoZVRvb2xiYXJJdGVtQ29tcG9uZW50O1xuICAgICAgICB9XG4gICAgICAgIGlmICh0eXBlID09PSBUb29sYmFySXRlbVR5cGUudG9vbERyb3Bkb3duKSB7XG4gICAgICAgICAgICByZXR1cm4gVGhlVG9vbGJhckRyb3Bkb3duQ29tcG9uZW50O1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBUaGVUb29sYmFySXRlbUNvbXBvbmVudDtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldERyb3Bkb3duSXRlbShpdGVtOiBUb29sYmFySXRlbSkge1xuICAgICAgICBsZXQgZHJvcGRvd25LZXk6IFRvb2xiYXJLZXkgfCBzdHJpbmcgPSBpdGVtPy5kcm9wZG93bkl0ZW1LZXk7XG4gICAgICAgIC8vIG1vZGlmeSB0aGUgZm9udHNpemUgb3B0aW9uIGV4dGVybmFsbHlcbiAgICAgICAgY29uc3QgY29udGV4dFNlcnZpY2UgPSB0aGlzLmVkaXRvcj8uaW5qZWN0b3I/LmdldChUaGVDb250ZXh0U2VydmljZSk7XG4gICAgICAgIGNvbnN0IGZvbnRTaXplID0gY29udGV4dFNlcnZpY2U/LmdldERlZmF1bHRGb250U2l6ZSgpO1xuICAgICAgICBpZiAoY29udGV4dFNlcnZpY2UgJiYgaXRlbS5rZXkgPT09IE1hcmtUeXBlcy5mb250U2l6ZSAmJiBmb250U2l6ZSkge1xuICAgICAgICAgICAgZHJvcGRvd25LZXkgPSBmb250U2l6ZTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gaXRlbT8uaW5jbHVkZXM/LmZpbmQoKGl0ZW06IFRvb2xiYXJJdGVtKSA9PiBpdGVtLmtleSA9PT0gZHJvcGRvd25LZXkpO1xuICAgIH1cbn1cbiIsIjx0aHktaWNvbi1uYXYgW3N0eWxlLmp1c3RpZnlDb250ZW50XT1cImFsaWduXCI+XG4gICAgPG5nLWNvbnRhaW5lciAjdG9vbGJhckNvbnRhaW5lcj48L25nLWNvbnRhaW5lcj5cbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgPG5nLXRlbXBsYXRlICpuZ0lmPVwiYWZ0ZXJUZW1wbGF0ZVwiIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImFmdGVyVGVtcGxhdGVcIj48L25nLXRlbXBsYXRlPlxuPC90aHktaWNvbi1uYXY+XG4iXX0=
260
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zcmMvY29tcG9uZW50cy90b29sYmFyL3Rvb2xiYXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvc3JjL2NvbXBvbmVudHMvdG9vbGJhci90b29sYmFyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0gsU0FBUyxFQUNULEtBQUssRUFFTCxTQUFTLEVBQ1QsZ0JBQWdCLEVBUWhCLE1BQU0sRUFHVCxNQUFNLGVBQWUsQ0FBQztBQUd2QixPQUFPLEVBQTRELGVBQWUsRUFBYyxNQUFNLDBCQUEwQixDQUFDO0FBQ2pJLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ2pGLE9BQU8sRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDekYsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDakYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDbkYsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFFN0YsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7Ozs7QUFTbkUsTUFBTSxPQUFPLG1CQUFtQjtJQW9CNUIsWUFDWSxHQUE2QixFQUM3QixHQUFzQixFQUN0QixVQUFzQixFQUN0QixNQUFjLEVBQ2dCLHFCQUE4RDtRQUo1RixRQUFHLEdBQUgsR0FBRyxDQUEwQjtRQUM3QixRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQUN0QixlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQ3RCLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZ0IsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUF5QztRQXRC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LGdFQ2hEM0Qsc1BBS0E7NEZEOEJhLG1CQUFtQjtrQkFQL0IsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsYUFBYTtvQkFDdkIsV0FBVyxFQUFFLHdCQUF3QjtvQkFDckMsSUFBSSxFQUFFO3dCQUNGLEtBQUssRUFBRSx1QkFBdUI7cUJBQ2pDO2lCQUNKOzswQkEwQlEsTUFBTTsyQkFBQyxvQkFBb0I7NENBeEJ2QixNQUFNO3NCQUFkLEtBQUs7Z0JBRUcsWUFBWTtzQkFBcEIsS0FBSztnQkFFRyxLQUFLO3NCQUFiLEtBQUs7Z0JBRUcsY0FBYztzQkFBdEIsS0FBSztnQkFFRyxNQUFNO3NCQUFkLEtBQUs7Z0JBRUcsYUFBYTtzQkFBckIsS0FBSztnQkFFbUUsZ0JBQWdCO3NCQUF4RixTQUFTO3VCQUFDLGtCQUFrQixFQUFFLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENvbXBvbmVudCxcbiAgICBJbnB1dCxcbiAgICBPbkluaXQsXG4gICAgVmlld0NoaWxkLFxuICAgIFZpZXdDb250YWluZXJSZWYsXG4gICAgQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxuICAgIE9uQ2hhbmdlcyxcbiAgICBTaW1wbGVDaGFuZ2VzLFxuICAgIENvbXBvbmVudFJlZixcbiAgICBFbGVtZW50UmVmLFxuICAgIE9uRGVzdHJveSxcbiAgICBOZ1pvbmUsXG4gICAgSW5qZWN0LFxuICAgIFRlbXBsYXRlUmVmLFxuICAgIENoYW5nZURldGVjdG9yUmVmXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRWRpdG9yIH0gZnJvbSAnc2xhdGUnO1xuaW1wb3J0IHsgQ29tcG9uZW50VHlwZSB9IGZyb20gJ3NsYXRlLWFuZ3VsYXInO1xuaW1wb3J0IHsgVG9vbGJhckFsaWdubWVudCwgVG9vbGJhckl0ZW0sIFRvb2xiYXJJdGVtc0NvbXBvc2VSZXR1cm4sIFRvb2xiYXJJdGVtVHlwZSwgVG9vbGJhcktleSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvdG9vbGJhcic7XG5pbXBvcnQgeyBUaGVUb29sYmFyR3JvdXBUb2tlbiwgVG9vbGJhck1vcmVHcm91cCB9IGZyb20gJy4uLy4uL2NvbnN0YW50cy90b29sYmFyJztcbmltcG9ydCB7IEVsZW1lbnRLaW5kcywgTWFya1R5cGVzLCBUb29sYmFyQWN0aW9uVHlwZXMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvbm9kZS10eXBlcyc7XG5pbXBvcnQgeyBUaGVUb29sYmFySXRlbUNvbXBvbmVudCB9IGZyb20gJy4uL3Rvb2xiYXItaXRlbS90b29sYmFyLWl0ZW0uY29tcG9uZW50JztcbmltcG9ydCB7IE5hdlNwbGl0TGluZUNvbXBvbmVudCB9IGZyb20gJy4uL25hdi1zcGxpdC1saW5lL25hdi1zcGxpdC1saW5lLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUaGVUb29sYmFyRHJvcGRvd25Db21wb25lbnQgfSBmcm9tICcuLi90b29sYmFyLWRyb3Bkb3duL3Rvb2xiYXItZHJvcGRvd24uY29tcG9uZW50JztcbmltcG9ydCB0eXBlIHsgVGhlVG9vbGJhckdyb3VwQ29tcG9uZW50IH0gZnJvbSAnLi4vdG9vbGJhci1ncm91cC90b29sYmFyLWdyb3VwLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUaGVDb250ZXh0U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2NvbnRleHQuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndGhlLXRvb2xiYXInLFxuICAgIHRlbXBsYXRlVXJsOiAndG9vbGJhci5jb21wb25lbnQuaHRtbCcsXG4gICAgaG9zdDoge1xuICAgICAgICBjbGFzczogJ3RoZS10b29sYmFyLWNvbnRhaW5lcidcbiAgICB9XG59KVxuZXhwb3J0IGNsYXNzIFRoZVRvb2xiYXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcbiAgICBASW5wdXQoKSBlZGl0b3I6IEVkaXRvcjtcblxuICAgIEBJbnB1dCgpIHRvb2xiYXJJdGVtczogVG9vbGJhckl0ZW1bXSA9IFtdO1xuXG4gICAgQElucHV0KCkgYWxpZ246IFRvb2xiYXJBbGlnbm1lbnQ7XG5cbiAgICBASW5wdXQoKSBjb250YWluZXJDbGFzczogc3RyaW5nW10gPSBbXTtcblxuICAgIEBJbnB1dCgpIGlzTW9yZSA9IHRydWU7XG5cbiAgICBASW5wdXQoKSBhZnRlclRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gICAgQFZpZXdDaGlsZCgndG9vbGJhckNvbnRhaW5lcicsIHsgcmVhZDogVmlld0NvbnRhaW5lclJlZiwgc3RhdGljOiB0cnVlIH0pIHRvb2xiYXJDb250YWluZXI6IFZpZXdDb250YWluZXJSZWY7XG5cbiAgICBjb21wb25lbnRzOiBNYXA8c3RyaW5nLCBDb21wb25lbnRSZWY8YW55Pj4gPSBuZXcgTWFwPHN0cmluZywgQ29tcG9uZW50UmVmPGFueT4+KCk7XG4gICAgbW9yZUdyb3VwTWVudSA9IFRvb2xiYXJNb3JlR3JvdXA7XG4gICAgcmVzaXplT2JzZXJ2ZXI7XG4gICAgZWxlbWVudFdpZHRoID0gMDtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIGNmcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxuICAgICAgICBwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgIHByaXZhdGUgZWxlbWVudFJlZjogRWxlbWVudFJlZixcbiAgICAgICAgcHJpdmF0ZSBuZ1pvbmU6IE5nWm9uZSxcbiAgICAgICAgQEluamVjdChUaGVUb29sYmFyR3JvdXBUb2tlbikgcHJpdmF0ZSB0b29sYmFyR3JvdXBDb21wb25lbnQ6IENvbXBvbmVudFR5cGU8VGhlVG9vbGJhckdyb3VwQ29tcG9uZW50PlxuICAgICkge31cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnNldFRvb2xiYXJDbGFzcygpO1xuICAgICAgICB0aGlzLnJlbmRlclRvb2xiYXJWaWV3KCk7XG4gICAgICAgIHRoaXMuc3RhdHVzQ2hhbmdlKHRoaXMuZWRpdG9yKTtcblxuICAgICAgICBpZiAodGhpcy5pc01vcmUpIHtcbiAgICAgICAgICAgIHRoaXMucmVzaXplRWxlbWVudCgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgICAgICBjb25zdCB0b29sYmFySXRlbXMgPSBjaGFuZ2VzLnRvb2xiYXJJdGVtcztcbiAgICAgICAgaWYgKHRvb2xiYXJJdGVtcyAmJiAhdG9vbGJhckl0ZW1zLmZpcnN0Q2hhbmdlKSB7XG4gICAgICAgICAgICB0aGlzLnJlbmRlclRvb2xiYXJWaWV3KCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMucmVzaXplT2JzZXJ2ZXIpIHtcbiAgICAgICAgICAgIHRoaXMucmVzaXplT2JzZXJ2ZXIuZGlzY29ubmVjdCgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIHNldFRvb2xiYXJDbGFzcygpIHtcbiAgICAgICAgaWYgKHRoaXMuZWRpdG9yICYmICEhdGhpcy5jb250YWluZXJDbGFzcy5sZW5ndGgpIHtcbiAgICAgICAgICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmNsYXNzTGlzdC5hZGQoLi4udGhpcy5jb250YWluZXJDbGFzcyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHJlc2l6ZUVsZW1lbnQoKSB7XG4gICAgICAgIGNvbnN0IGVkaXRhYmxlRWxlbWVudCA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xuICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgIHRoaXMucmVzaXplT2JzZXJ2ZXIgPSBuZXcgUmVzaXplT2JzZXJ2ZXIoZW50cmllcyA9PiB7XG4gICAgICAgICAgICBmb3IgKGxldCBlbnRyeSBvZiBlbnRyaWVzKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgeyB3aWR0aCB9ID0gZW50cnkuY29udGVudFJlY3Q7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuaXNNb3JlICYmIHRoaXMuZWxlbWVudFdpZHRoICE9PSB3aWR0aCkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmVsZW1lbnRXaWR0aCA9IHdpZHRoO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnJlbmRlclRvb2xiYXJWaWV3KCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5yZXNpemVPYnNlcnZlci5vYnNlcnZlKGVkaXRhYmxlRWxlbWVudCk7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXR1c0NoYW5nZShlZGl0b3I6IEVkaXRvcikge1xuICAgICAgICBjb25zdCB0b29sYmFySXRlbXMgPSBbLi4udGhpcy50b29sYmFySXRlbXMsIHRoaXMubW9yZUdyb3VwTWVudV07XG4gICAgICAgIGZvciAoY29uc3QgaXRlbSBvZiB0b29sYmFySXRlbXMpIHtcbiAgICAgICAgICAgIGlmIChpdGVtLmtleSAhPT0gVG9vbGJhckFjdGlvblR5cGVzLnNwbGl0KSB7XG4gICAgICAgICAgICAgICAgY29uc3QgaXRlbUNvbXBvbmVudCA9IHRoaXMuY29tcG9uZW50cy5nZXQoaXRlbS5rZXkpO1xuICAgICAgICAgICAgICAgIGlmIChpdGVtQ29tcG9uZW50KSB7XG4gICAgICAgICAgICAgICAgICAgIGl0ZW1Db21wb25lbnQuaW5zdGFuY2Uuc3RhdHVzQ2hhbmdlKGVkaXRvcik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIHJlbmRlclRvb2xiYXJWaWV3KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNvbXBvbmVudHMuY2xlYXIoKTtcbiAgICAgICAgdGhpcy50b29sYmFyQ29udGFpbmVyLmNsZWFyKCk7XG4gICAgICAgIGNvbnN0IHRvb2xiYXJJdGVtcyA9IHRoaXMudG9vbGJhckl0ZW1zQ29tcG9zZSgpO1xuICAgICAgICBjb25zdCB7IGl0ZW1zLCBncm91cCB9ID0gdG9vbGJhckl0ZW1zO1xuXG4gICAgICAgIHRoaXMubmdab25lLnJ1bigoKSA9PiB7XG4gICAgICAgICAgICBmb3IgKGNvbnN0IGl0ZW0gb2YgaXRlbXMpIHtcbiAgICAgICAgICAgICAgICBpZiAoaXRlbS5rZXkgPT09IFRvb2xiYXJBY3Rpb25UeXBlcy5zcGxpdCkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmNyZWF0ZVRvb2xiYXJTcGxpdCgpO1xuICAgICAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgdGhpcy5jcmVhdGVUb29sYmFySXRlbShpdGVtKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMuY3JlYXRlTW9yZUdyb3VwKGdyb3VwKTtcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIGNhbGN1bGF0aW9uIGRpc3BsYXkgdG9vbGJhciBhbmQgbW9yZSBncm91cGVkIHRvb2xiYXJzXG4gICAgICpcbiAgICAgKlx04pSM4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAIEdvb2xiYXJUb29sYmFyVmlldyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilJBcbiAgICAgKlx0fCDilIzilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIAgI2NoaWxkcmVuIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUkCB8XG4gICAgICpcdHwgfCAgIOKUjOKUgOKUgOKUgOKUgOKUgOKUgOKUgCAjaXRlbXNWaWV3IOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUkCDilIzilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilJAg4pSM4pSA4pSAICNncm91cGVkSXRlbXNEcm9wZG93biDilIDilIDilIDilJAgICB8IHxcbiAgICAgKlx0fCB8ICAgfCAgICAgICAjdW5ncm91cGVkSXRlbXMgICAgIHwgfCBUb29sYmFyU2VwYXJhdG9yVmlldyB8IHwgICAgICAgICNncm91cGVkSXRlbXMgICAgICAgfCAgIHwgfFxuICAgICAqXHR8IHwgICDilJTilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIAt4pSYIOKUlOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUmCDilJTilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilJggICB8IHxcbiAgICAgKlx0fCB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxcLS0tLS0tLS0tLSBvbmx5IHdoZW4gdG9vbGJhciBpdGVtcyBvdmVyZmxvdyAtLS0tLS0tLS8gICB8IHxcbiAgICAgKlx0fCDilJTilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilJggfFxuICAgICAqXHTilJTilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilJhcbiAgICAgKiBzcGxpdCB3aWR0aDogNnB4XG4gICAgICogaXRlbSB3aWR0aDogZGVmYXVsdCBpdGVtOiAzNXB4OyBkcm9wZG93biBpdGVtOiA1MHB4XG4gICAgICogc2V0IGFzaWRlIDUwcHhcbiAgICAgKi9cbiAgICBwcml2YXRlIHRvb2xiYXJJdGVtc0NvbXBvc2UoKTogVG9vbGJhckl0ZW1zQ29tcG9zZVJldHVybiB7XG4gICAgICAgIGxldCBlbGVtZW50V2lkdGggPSB0aGlzLmlzTW9yZSA/IHRoaXMuZWxlbWVudFdpZHRoIDogbnVsbDtcbiAgICAgICAgY29uc3QgbWF4SXRlbVdpZHRoID0gNTA7XG4gICAgICAgIGNvbnN0IGRlZmF1bHRJdGVtV2lkdGggPSAzNTtcbiAgICAgICAgY29uc3Qgc3BsaXRXaWR0aCA9IDY7XG4gICAgICAgIC8vIHNwZWNpYWwgdHlwZVxuICAgICAgICBjb25zdCBoZWFkaW5nV2lkdGggPSA3MDtcbiAgICAgICAgY29uc3QgaXRlbXM6IFRvb2xiYXJJdGVtW10gPSBbXTtcbiAgICAgICAgY29uc3QgZ3JvdXA6IFRvb2xiYXJJdGVtW10gPSBbXTtcblxuICAgICAgICBmb3IgKGNvbnN0IGl0ZW0gb2YgdGhpcy50b29sYmFySXRlbXMpIHtcbiAgICAgICAgICAgIGlmICghdGhpcy5pc01vcmUpIHtcbiAgICAgICAgICAgICAgICBpdGVtcy5wdXNoKGl0ZW0pO1xuICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBub3QgZW5vdWdoIGZyZWUgc3BhY2VcbiAgICAgICAgICAgIGNvbnN0IGFsbG93UmVuZGVyID0gZWxlbWVudFdpZHRoICYmIGVsZW1lbnRXaWR0aCA+IG1heEl0ZW1XaWR0aDtcbiAgICAgICAgICAgIGlmIChhbGxvd1JlbmRlciAmJiBpdGVtLmtleSA9PT0gVG9vbGJhckFjdGlvblR5cGVzLnNwbGl0KSB7XG4gICAgICAgICAgICAgICAgaXRlbXMucHVzaChpdGVtKTtcbiAgICAgICAgICAgICAgICBlbGVtZW50V2lkdGggLT0gc3BsaXRXaWR0aDtcbiAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKGFsbG93UmVuZGVyKSB7XG4gICAgICAgICAgICAgICAgaXRlbXMucHVzaChpdGVtKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgZ3JvdXAucHVzaChpdGVtKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKGl0ZW0ua2V5ID09PSBFbGVtZW50S2luZHMuaGVhZGluZ0xpc3QpIHtcbiAgICAgICAgICAgICAgICBlbGVtZW50V2lkdGggLT0gaGVhZGluZ1dpZHRoO1xuICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3QgaXNDdXN0b21Db21wb25lbnQgPSBpdGVtPy50eXBlID09PSBUb29sYmFySXRlbVR5cGUudG9vbERyb3Bkb3duIHx8ICEhaXRlbT8uaWNvbkNvbXBvbmVudDtcbiAgICAgICAgICAgIGVsZW1lbnRXaWR0aCAtPSBpc0N1c3RvbUNvbXBvbmVudCA/IG1heEl0ZW1XaWR0aCA6IGRlZmF1bHRJdGVtV2lkdGg7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgaXRlbXM6IHRoaXMucHVyZVRvb2xiYXJJdGVtcyhpdGVtcyksXG4gICAgICAgICAgICBncm91cFxuICAgICAgICB9O1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIGV4dGVybmFsbHkgZGVzaWduYXRlZCBtb3JlIGdyb3VwXG4gICAgICovXG4gICAgcHJpdmF0ZSB0b29sYmFySXRlbXNBbmRNb3JlQ29tcG9zZSgpIHtcbiAgICAgICAgY29uc3QgaXRlbXMgPSBbXTtcbiAgICAgICAgY29uc3QgZ3JvdXAgPSBbXTtcblxuICAgICAgICBmb3IgKGNvbnN0IGl0ZW0gb2YgdGhpcy50b29sYmFySXRlbXMpIHtcbiAgICAgICAgICAgIGlmIChpdGVtLmtleSA9PT0gVG9vbGJhckFjdGlvblR5cGVzLnNwbGl0KSB7XG4gICAgICAgICAgICAgICAgaXRlbXMucHVzaChpdGVtKTtcbiAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGl0ZW1zLnB1c2goaXRlbSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgaXRlbXM6IHRoaXMucHVyZVRvb2xiYXJJdGVtcyhpdGVtcyksXG4gICAgICAgICAgICBncm91cFxuICAgICAgICB9O1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIGZpbHRlciBhZGphY2VudCByZXBlYXRlZCBkaXZpZGVyc1xuICAgICAqIEBwYXJhbSB7VG9vbGJhckl0ZW1bXX0gaXRlbXNcbiAgICAgKiBAcmV0dXJuc1xuICAgICAqIEBtZW1iZXJvZiBUaGVUb29sYmFyQ29tcG9uZW50XG4gICAgICovXG4gICAgcHVyZVRvb2xiYXJJdGVtcyhpdGVtczogVG9vbGJhckl0ZW1bXSkge1xuICAgICAgICBpZiAoIUFycmF5LmlzQXJyYXkoaXRlbXMpKSB7XG4gICAgICAgICAgICByZXR1cm4gW107XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGl0ZW1zLmZpbHRlcigoYSwgaSkgPT4ge1xuICAgICAgICAgICAgaWYgKGkgPiAwICYmIGl0ZW1zW2kgLSAxXS5rZXkgIT09IFRvb2xiYXJBY3Rpb25UeXBlcy5zcGxpdCkge1xuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIGEua2V5ICE9PSBUb29sYmFyQWN0aW9uVHlwZXMuc3BsaXQ7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgY3JlYXRlVG9vbGJhckl0ZW0oaXRlbTogVG9vbGJhckl0ZW0pIHtcbiAgICAgICAgY29uc3QgeyBpY29uQ29tcG9uZW50LCB0eXBlLCBkcm9wZG93bk1vZGUsIGRyb3Bkb3duSXRlbUtleSwgaW5jbHVkZXMsIC4uLmFyZ3MgfSA9IGl0ZW07XG4gICAgICAgIGNvbnN0IHZpZXdDb21wb25lbnQgPSB0aGlzLnZpZXdDb21wb25lbnRUeXBlKHR5cGUpO1xuICAgICAgICBjb25zdCBkcm9wZG93bkl0ZW0gPSB0aGlzLmdldERyb3Bkb3duSXRlbShpdGVtKTtcbiAgICAgICAgY29uc3QgZmFjdG9yeSA9IHRoaXMuY2ZyLnJlc29sdmVDb21wb25lbnRGYWN0b3J5KGljb25Db21wb25lbnQgPyBpY29uQ29tcG9uZW50IDogdmlld0NvbXBvbmVudCk7XG4gICAgICAgIGNvbnN0IGNvbXBSZWYgPSB0aGlzLnRvb2xiYXJDb250YWluZXIuY3JlYXRlQ29tcG9uZW50KGZhY3RvcnkpO1xuXG4gICAgICAgIGNvbXBSZWYuaW5zdGFuY2UuZWRpdG9yID0gdGhpcy5lZGl0b3I7XG4gICAgICAgIGNvbXBSZWYuaW5zdGFuY2UudG9vbGJhckl0ZW0gPSBpdGVtO1xuICAgICAgICBjb21wUmVmLmluc3RhbmNlLm1lbnVzID0gaW5jbHVkZXM7XG4gICAgICAgIGNvbXBSZWYuaW5zdGFuY2UuaXRlbSA9IGluY2x1ZGVzICYmIGRyb3Bkb3duSXRlbSA/IGRyb3Bkb3duSXRlbSA6IGFyZ3M7XG4gICAgICAgIGNvbXBSZWYuaW5zdGFuY2UubW9kZSA9IGRyb3Bkb3duTW9kZTtcbiAgICAgICAgdGhpcy5jb21wb25lbnRzLnNldChpdGVtLmtleSwgY29tcFJlZik7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjcmVhdGVUb29sYmFyU3BsaXQoKSB7XG4gICAgICAgIGNvbnN0IG5hdlNwbGl0TGluZUZhY3RvcnkgPSB0aGlzLmNmci5yZXNvbHZlQ29tcG9uZW50RmFjdG9yeShOYXZTcGxpdExpbmVDb21wb25lbnQpO1xuICAgICAgICB0aGlzLnRvb2xiYXJDb250YWluZXIuY3JlYXRlQ29tcG9uZW50KG5hdlNwbGl0TGluZUZhY3RvcnkpO1xuICAgIH1cblxuICAgIHByaXZhdGUgY3JlYXRlTW9yZUdyb3VwKGdyb3VwOiBUb29sYmFySXRlbVtdKSB7XG4gICAgICAgIGlmIChncm91cC5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICBjb25zdCBtb3JlR3JvdXBGYWN0b3J5ID0gdGhpcy5jZnIucmVzb2x2ZUNvbXBvbmVudEZhY3RvcnkodGhpcy50b29sYmFyR3JvdXBDb21wb25lbnQpO1xuICAgICAgICAgICAgY29uc3QgY29tcFJlZiA9IHRoaXMudG9vbGJhckNvbnRhaW5lci5jcmVhdGVDb21wb25lbnQobW9yZUdyb3VwRmFjdG9yeSk7XG4gICAgICAgICAgICBjb21wUmVmLmluc3RhbmNlLmVkaXRvciA9IHRoaXMuZWRpdG9yO1xuICAgICAgICAgICAgY29tcFJlZi5pbnN0YW5jZS5tZW51cyA9IGdyb3VwO1xuICAgICAgICAgICAgY29tcFJlZi5pbnN0YW5jZS5pdGVtID0gdGhpcy5tb3JlR3JvdXBNZW51O1xuICAgICAgICAgICAgdGhpcy5jb21wb25lbnRzLnNldCh0aGlzLm1vcmVHcm91cE1lbnUua2V5LCBjb21wUmVmKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgdmlld0NvbXBvbmVudFR5cGUodHlwZTogVG9vbGJhckl0ZW1UeXBlKSB7XG4gICAgICAgIGlmICh0eXBlID09PSBUb29sYmFySXRlbVR5cGUuZGVmYXVsdCkge1xuICAgICAgICAgICAgcmV0dXJuIFRoZVRvb2xiYXJJdGVtQ29tcG9uZW50O1xuICAgICAgICB9XG4gICAgICAgIGlmICh0eXBlID09PSBUb29sYmFySXRlbVR5cGUudG9vbERyb3Bkb3duKSB7XG4gICAgICAgICAgICByZXR1cm4gVGhlVG9vbGJhckRyb3Bkb3duQ29tcG9uZW50O1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBUaGVUb29sYmFySXRlbUNvbXBvbmVudDtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldERyb3Bkb3duSXRlbShpdGVtOiBUb29sYmFySXRlbSkge1xuICAgICAgICBsZXQgZHJvcGRvd25LZXk6IFRvb2xiYXJLZXkgfCBzdHJpbmcgPSBpdGVtPy5kcm9wZG93bkl0ZW1LZXk7XG4gICAgICAgIC8vIG1vZGlmeSB0aGUgZm9udHNpemUgb3B0aW9uIGV4dGVybmFsbHlcbiAgICAgICAgY29uc3QgY29udGV4dFNlcnZpY2UgPSB0aGlzLmVkaXRvcj8uaW5qZWN0b3I/LmdldChUaGVDb250ZXh0U2VydmljZSk7XG4gICAgICAgIGNvbnN0IGZvbnRTaXplID0gY29udGV4dFNlcnZpY2U/LmdldERlZmF1bHRGb250U2l6ZSgpO1xuICAgICAgICBpZiAoY29udGV4dFNlcnZpY2UgJiYgaXRlbS5rZXkgPT09IE1hcmtUeXBlcy5mb250U2l6ZSAmJiBmb250U2l6ZSkge1xuICAgICAgICAgICAgZHJvcGRvd25LZXkgPSBmb250U2l6ZTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gaXRlbT8uaW5jbHVkZXM/LmZpbmQoKGl0ZW06IFRvb2xiYXJJdGVtKSA9PiBpdGVtLmtleSA9PT0gZHJvcGRvd25LZXkpO1xuICAgIH1cbn1cbiIsIjx0aHktaWNvbi1uYXYgW3N0eWxlLmp1c3RpZnlDb250ZW50XT1cImFsaWduXCI+XG4gICAgPG5nLWNvbnRhaW5lciAjdG9vbGJhckNvbnRhaW5lcj48L25nLWNvbnRhaW5lcj5cbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgPG5nLXRlbXBsYXRlICpuZ0lmPVwiYWZ0ZXJUZW1wbGF0ZVwiIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImFmdGVyVGVtcGxhdGVcIj48L25nLXRlbXBsYXRlPlxuPC90aHktaWNvbi1uYXY+XG4iXX0=
@@ -16,9 +16,9 @@ export class TheToolbarBaseItemComponent {
16
16
  }
17
17
  }
18
18
  }
19
- TheToolbarBaseItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: TheToolbarBaseItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Directive });
20
- TheToolbarBaseItemComponent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.15", type: TheToolbarBaseItemComponent, ngImport: i0 });
21
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: TheToolbarBaseItemComponent, decorators: [{
19
+ TheToolbarBaseItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TheToolbarBaseItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Directive });
20
+ TheToolbarBaseItemComponent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: TheToolbarBaseItemComponent, ngImport: i0 });
21
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TheToolbarBaseItemComponent, decorators: [{
22
22
  type: Directive
23
23
  }] });
24
24
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGJhci1iYXNlLWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvc3JjL2NvbXBvbmVudHMvdG9vbGJhci1iYXNlLWl0ZW0vdG9vbGJhci1iYXNlLWl0ZW0uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxPQUFPLENBQUM7QUFDM0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU5QyxPQUFPLEtBQUssVUFBVSxNQUFNLGVBQWUsQ0FBQzs7QUFHNUMsTUFBTSxPQUFnQiwyQkFBMkI7SUFNN0MsT0FBTyxDQUFDLEtBQWlCOztRQUNyQixLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDdkIsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBRXhCLElBQUksQ0FBQyxJQUFJLENBQUMsbUJBQW1CLElBQUksQ0FBQyxDQUFBLE1BQUEsSUFBSSxDQUFDLE1BQU0sMENBQUUsU0FBUyxDQUFBLEVBQUU7WUFDdEQsTUFBTSxRQUFRLEdBQUcsVUFBVSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ3hELE1BQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNqRCxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsR0FBRyxDQUFDLENBQUM7WUFDcEMsYUFBYSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7U0FDcEM7SUFDTCxDQUFDOzt5SEFoQmlCLDJCQUEyQjs2R0FBM0IsMkJBQTJCOzRGQUEzQiwyQkFBMkI7a0JBRGhELFNBQVMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEVkaXRvciwgVHJhbnNmb3JtcyB9IGZyb20gJ3NsYXRlJztcbmltcG9ydCB7IEFuZ3VsYXJFZGl0b3IgfSBmcm9tICdzbGF0ZS1hbmd1bGFyJztcbmltcG9ydCB7IFRvb2xiYXJJdGVtIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgKiBhcyBUaGVRdWVyaWVzIGZyb20gJy4uLy4uL3F1ZXJpZXMnO1xuXG5ARGlyZWN0aXZlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBUaGVUb29sYmFyQmFzZUl0ZW1Db21wb25lbnQge1xuICAgIGVkaXRvcjogRWRpdG9yO1xuICAgIGl0ZW1Nb3VzZWRvd25IYW5kbGU6IChpdGVtOiBUb29sYmFySXRlbSkgPT4gdm9pZDtcblxuICAgIGFic3RyYWN0IHN0YXR1c0NoYW5nZShlZGl0b3I6IEVkaXRvcik6IHZvaWQ7XG5cbiAgICBleGVjdXRlKGV2ZW50OiBNb3VzZUV2ZW50KSB7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuXG4gICAgICAgIGlmICghdGhpcy5pdGVtTW91c2Vkb3duSGFuZGxlICYmICF0aGlzLmVkaXRvcj8uc2VsZWN0aW9uKSB7XG4gICAgICAgICAgICBjb25zdCBsYXN0Tm9kZSA9IFRoZVF1ZXJpZXMuZ2V0TGFzdE5vZGUodGhpcy5lZGl0b3IsIDEpO1xuICAgICAgICAgICAgY29uc3QgZW5kID0gRWRpdG9yLmVuZCh0aGlzLmVkaXRvciwgbGFzdE5vZGVbMV0pO1xuICAgICAgICAgICAgVHJhbnNmb3Jtcy5zZWxlY3QodGhpcy5lZGl0b3IsIGVuZCk7XG4gICAgICAgICAgICBBbmd1bGFyRWRpdG9yLmZvY3VzKHRoaXMuZWRpdG9yKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
@@ -89,6 +89,7 @@ export class TheToolbarDropdownComponent extends TheToolbarBaseItemComponent {
89
89
  backdropClosable: true,
90
90
  hasBackdrop: false,
91
91
  offset: 10,
92
+ minWidth: 0,
92
93
  viewContainerRef: this.viewContainerRef,
93
94
  scrollStrategy: this.overlay.scrollStrategies.reposition()
94
95
  });
@@ -119,9 +120,9 @@ export class TheToolbarDropdownComponent extends TheToolbarBaseItemComponent {
119
120
  .withPositions([bottomPosition, topPosition]);
120
121
  }
121
122
  }
122
- TheToolbarDropdownComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: TheToolbarDropdownComponent, deps: [{ token: i0.ElementRef }, { token: i1.ThyPopover }, { token: i0.ViewContainerRef }, { token: i2.Overlay }], target: i0.ɵɵFactoryTarget.Component });
123
- TheToolbarDropdownComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: TheToolbarDropdownComponent, selector: "the-toolbar-dropdown", inputs: { toolbarItem: "toolbarItem", menus: "menus", mode: "mode", item: "item", itemMousedownHandle: "itemMousedownHandle" }, host: { listeners: { "mousedown": "toggleDropdown($event)", "document: mousedown": "handleDocumentMouseDown($event)" }, properties: { "class.disabled": "this.disabledState" }, classAttribute: "the-toolbar-dropdown-container" }, viewQueries: [{ propertyName: "iconModeTemplate", first: true, predicate: ["iconModeTemplate"], descendants: true, static: true }, { propertyName: "textModeTemplate", first: true, predicate: ["textModeTemplate"], descendants: true, static: true }, { propertyName: "dropdownTemplate", first: true, predicate: ["dropdownTemplate"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<ng-template [ngTemplateOutlet]=\"template\"></ng-template>\n\n<ng-template #iconModeTemplate>\n <a thyIconNavLink class=\"icon-mode link-with-down\" [thyTooltip]=\"activeMenu?.name\" thyTooltipPlacement=\"top\">\n <thy-icon [thyIconName]=\"activeMenu?.icon\"></thy-icon>\n <thy-icon class=\"caret-down-icon font-size-sm text-desc\" thyIconName=\"caret-down\"></thy-icon>\n </a>\n</ng-template>\n\n<ng-template #textModeTemplate>\n <a thyIconNavLink class=\"text-mode\" [thyTooltip]=\"activeMenu?.name\" thyTooltipPlacement=\"top\">\n <span class=\"show-text\">{{ activeMenu?.name }}</span>\n <thy-icon class=\"text-caret-down-icon font-size-sm text-desc\" thyIconName=\"caret-down\"></thy-icon>\n </a>\n</ng-template>\n\n<ng-template #dropdownTemplate>\n <thy-action-menu class=\"dropdown\">\n <ng-container *ngFor=\"let menu of menus\">\n <a\n *ngIf=\"menu.key !== 'split'\"\n thyActionMenuItem\n href=\"javascript:;\"\n [thyActionMenuItemActive]=\"menu.key === activeMenu.key\"\n (mousedown)=\"itemMousedown($event, menu)\"\n [ngStyle]=\"menu?.styles\"\n >\n <span *ngIf=\"menu.icon && mode === dropdownMode.icon\" thyActionMenuItemIcon>\n <thy-icon [thyIconName]=\"menu.icon\"></thy-icon>\n </span>\n <span *ngIf=\"menu.name\" thyActionMenuItemName>{{ menu.name }}</span>\n </a>\n <thy-action-menu-divider *ngIf=\"menu.key === 'split'\"></thy-action-menu-divider>\n </ng-container>\n </thy-action-menu>\n</ng-template>\n", components: [{ type: i3.ThyIconNavLinkComponent, selector: "[thyIconNavLink]", inputs: ["thyIconNavLinkIcon", "thyIconNavLinkActive"] }, { type: i4.ThyIconComponent, selector: "thy-icon", inputs: ["thyIconType", "thyTwotoneColor", "thyIconName", "thyIconRotate", "thyIconSet", "thyIconLegging", "thyIconLinearGradient"] }, { type: i5.ThyActionMenuComponent, selector: "thy-action-menu", inputs: ["thyTheme", "thyWidth"] }, { type: i5.ThyActionMenuDividerComponent, selector: "thy-action-menu-divider", inputs: ["thyTitle", "thyType"] }], directives: [{ type: i6.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i7.ThyTooltipDirective, selector: "[thyTooltip],[thy-tooltip]", inputs: ["thyTooltip", "thyTooltipPlacement", "thyTooltipClass", "thyTooltipShowDelay", "thyTooltipHideDelay", "thyTooltipTrigger", "thyTooltipDisabled", "thyTooltipTemplateContext", "thyTooltipOffset", "thyTooltipPin"], exportAs: ["thyTooltip"] }, { type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5.ThyActionMenuItemDirective, selector: "[thyActionMenuItem]", inputs: ["thyDisabled", "thyType"] }, { type: i5.ThyActionMenuItemActiveDirective, selector: "[thyActionMenuItemActive]", inputs: ["thyActionMenuItemActive"] }, { type: i6.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i5.ThyActionMenuItemIconDirective, selector: "[thyActionMenuItemIcon]" }, { type: i5.ThyActionMenuItemNameDirective, selector: "[thyActionMenuItemName]" }] });
124
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: TheToolbarDropdownComponent, decorators: [{
123
+ TheToolbarDropdownComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TheToolbarDropdownComponent, deps: [{ token: i0.ElementRef }, { token: i1.ThyPopover }, { token: i0.ViewContainerRef }, { token: i2.Overlay }], target: i0.ɵɵFactoryTarget.Component });
124
+ TheToolbarDropdownComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: TheToolbarDropdownComponent, selector: "the-toolbar-dropdown", inputs: { toolbarItem: "toolbarItem", menus: "menus", mode: "mode", item: "item", itemMousedownHandle: "itemMousedownHandle" }, host: { listeners: { "mousedown": "toggleDropdown($event)", "document: mousedown": "handleDocumentMouseDown($event)" }, properties: { "class.disabled": "this.disabledState" }, classAttribute: "the-toolbar-dropdown-container" }, viewQueries: [{ propertyName: "iconModeTemplate", first: true, predicate: ["iconModeTemplate"], descendants: true, static: true }, { propertyName: "textModeTemplate", first: true, predicate: ["textModeTemplate"], descendants: true, static: true }, { propertyName: "dropdownTemplate", first: true, predicate: ["dropdownTemplate"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<ng-template [ngTemplateOutlet]=\"template\"></ng-template>\n\n<ng-template #iconModeTemplate>\n <a thyIconNavLink class=\"icon-mode link-with-down\" [thyTooltip]=\"activeMenu?.name\" thyTooltipPlacement=\"top\">\n <thy-icon [thyIconName]=\"activeMenu?.icon\"></thy-icon>\n <thy-icon class=\"caret-down-icon font-size-sm text-desc\" thyIconName=\"caret-down\"></thy-icon>\n </a>\n</ng-template>\n\n<ng-template #textModeTemplate>\n <a thyIconNavLink class=\"text-mode\" [thyTooltip]=\"activeMenu?.name\" thyTooltipPlacement=\"top\">\n <span class=\"show-text\">{{ activeMenu?.name }}</span>\n <thy-icon class=\"text-caret-down-icon font-size-sm text-desc\" thyIconName=\"caret-down\"></thy-icon>\n </a>\n</ng-template>\n\n<ng-template #dropdownTemplate>\n <thy-action-menu class=\"dropdown\">\n <ng-container *ngFor=\"let menu of menus\">\n <a\n *ngIf=\"menu.key !== 'split'\"\n thyActionMenuItem\n href=\"javascript:;\"\n [thyActionMenuItemActive]=\"menu.key === activeMenu.key\"\n (mousedown)=\"itemMousedown($event, menu)\"\n [ngStyle]=\"menu?.styles\"\n >\n <span *ngIf=\"menu.icon && mode === dropdownMode.icon\" thyActionMenuItemIcon>\n <thy-icon [thyIconName]=\"menu.icon\"></thy-icon>\n </span>\n <span *ngIf=\"menu.name\" thyActionMenuItemName>{{ menu.name }}</span>\n </a>\n <thy-action-menu-divider *ngIf=\"menu.key === 'split'\"></thy-action-menu-divider>\n </ng-container>\n </thy-action-menu>\n</ng-template>\n", components: [{ type: i3.ThyIconNavLinkComponent, selector: "[thyIconNavLink]", inputs: ["thyIconNavLinkIcon", "thyIconNavLinkActive"] }, { type: i4.ThyIconComponent, selector: "thy-icon", inputs: ["thyIconType", "thyTwotoneColor", "thyIconName", "thyIconRotate", "thyIconSet", "thyIconLegging", "thyIconLinearGradient"] }, { type: i5.ThyActionMenuComponent, selector: "thy-action-menu", inputs: ["thyTheme", "thyWidth"] }, { type: i5.ThyActionMenuDividerComponent, selector: "thy-action-menu-divider", inputs: ["thyTitle", "thyType"] }], directives: [{ type: i6.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i7.ThyTooltipDirective, selector: "[thyTooltip],[thy-tooltip]", inputs: ["thyTooltip", "thyTooltipPlacement", "thyTooltipClass", "thyTooltipShowDelay", "thyTooltipHideDelay", "thyTooltipTrigger", "thyTooltipDisabled", "thyTooltipTemplateContext", "thyTooltipOffset", "thyTooltipPin"], exportAs: ["thyTooltip"] }, { type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5.ThyActionMenuItemDirective, selector: "[thyActionMenuItem]", inputs: ["thyDisabled", "thyType"] }, { type: i5.ThyActionMenuItemActiveDirective, selector: "[thyActionMenuItemActive]", inputs: ["thyActionMenuItemActive"] }, { type: i6.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i5.ThyActionMenuItemIconDirective, selector: "[thyActionMenuItemIcon]" }, { type: i5.ThyActionMenuItemNameDirective, selector: "[thyActionMenuItemName]" }] });
125
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TheToolbarDropdownComponent, decorators: [{
125
126
  type: Component,
126
127
  args: [{
127
128
  selector: 'the-toolbar-dropdown',
@@ -159,4 +160,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImpo
159
160
  type: HostBinding,
160
161
  args: ['class.disabled']
161
162
  }] } });
162
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGJhci1kcm9wZG93bi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zcmMvY29tcG9uZW50cy90b29sYmFyLWRyb3Bkb3duL3Rvb2xiYXItZHJvcGRvd24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvc3JjL2NvbXBvbmVudHMvdG9vbGJhci1kcm9wZG93bi90b29sYmFyLWRyb3Bkb3duLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQXNCLEtBQUssRUFBRSxZQUFZLEVBQWUsU0FBUyxFQUFvQixXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFJMUksT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRXZELE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGtEQUFrRCxDQUFDOzs7Ozs7Ozs7QUFTL0YsTUFBTSxPQUFPLDJCQUE0QixTQUFRLDJCQUEyQjtJQTZEeEUsWUFDVyxVQUFzQixFQUNyQixVQUFzQixFQUN0QixnQkFBa0MsRUFDbEMsT0FBZ0I7UUFFeEIsS0FBSyxFQUFFLENBQUM7UUFMRCxlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQ3JCLGVBQVUsR0FBVixVQUFVLENBQVk7UUFDdEIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQyxZQUFPLEdBQVAsT0FBTyxDQUFTO1FBMURuQixTQUFJLEdBQWlCLFlBQVksQ0FBQyxJQUFJLENBQUM7UUFlaEQsaUJBQVksR0FBRyxZQUFZLENBQUM7UUFFNUIsYUFBUSxHQUFHLEtBQUssQ0FBQztJQTRDakIsQ0FBQztJQTNERCxJQUNJLElBQUksQ0FBQyxDQUFjO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDO1FBQ2YsSUFBSSxDQUFDLFVBQVUsR0FBRyxDQUFDLENBQUM7SUFDeEIsQ0FBQztJQUNELElBQUks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bnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIEVsZW1lbnRSZWYsIElucHV0LCBIb3N0TGlzdGVuZXIsIFRlbXBsYXRlUmVmLCBWaWV3Q2hpbGQsIFZpZXdDb250YWluZXJSZWYsIEhvc3RCaW5kaW5nIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb25uZWN0ZWRQb3NpdGlvbiwgT3ZlcmxheSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcbmltcG9ydCB7IFRoeVBvcG92ZXIsIFRoeVBvcG92ZXJSZWYgfSBmcm9tICduZ3gtdGV0aHlzL3BvcG92ZXInO1xuaW1wb3J0IHsgRWRpdG9yIH0gZnJvbSAnc2xhdGUnO1xuaW1wb3J0IHsgRHJvcGRvd25Nb2RlIH0gZnJvbSAnLi4vLi4vY29uc3RhbnRzL3Rvb2xiYXInO1xuaW1wb3J0IHsgVG9vbGJhckl0ZW0gfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL3Rvb2xiYXInO1xuaW1wb3J0IHsgVGhlVG9vbGJhckJhc2VJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi4vdG9vbGJhci1iYXNlLWl0ZW0vdG9vbGJhci1iYXNlLWl0ZW0uY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd0aGUtdG9vbGJhci1kcm9wZG93bicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3Rvb2xiYXItZHJvcGRvd24uY29tcG9uZW50Lmh0bWwnLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgY2xhc3M6ICd0aGUtdG9vbGJhci1kcm9wZG93bi1jb250YWluZXInXG4gICAgfVxufSlcbmV4cG9ydCBjbGFzcyBUaGVUb29sYmFyRHJvcGRvd25Db21wb25lbnQgZXh0ZW5kcyBUaGVUb29sYmFyQmFzZUl0ZW1Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIHByaXZhdGUgX2l0ZW06IFRvb2xiYXJJdGVtO1xuXG4gICAgQElucHV0KCkgdG9vbGJhckl0ZW06IFRvb2xiYXJJdGVtO1xuXG4gICAgQElucHV0KCkgbWVudXM6IFRvb2xiYXJJdGVtW107XG5cbiAgICBASW5wdXQoKSBtb2RlOiBEcm9wZG93bk1vZGUgPSBEcm9wZG93bk1vZGUudGV4dDtcblxuICAgIEBJbnB1dCgpXG4gICAgc2V0IGl0ZW0oaTogVG9vbGJhckl0ZW0pIHtcbiAgICAgICAgdGhpcy5faXRlbSA9IGk7XG4gICAgICAgIHRoaXMuYWN0aXZlTWVudSA9IGk7XG4gICAgfVxuICAgIGdldCBpdGVtKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5faXRlbTtcbiAgICB9XG5cbiAgICBASW5wdXQoKSBpdGVtTW91c2Vkb3duSGFuZGxlOiAoaXRlbTogVG9vbGJhckl0ZW0pID0+IHZvaWQ7XG5cbiAgICBlZGl0b3I6IEVkaXRvcjtcbiAgICB0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcbiAgICBkcm9wZG93bk1vZGUgPSBEcm9wZG93bk1vZGU7XG4gICAgYWN0aXZlTWVudTogVG9vbGJhckl0ZW07XG4gICAgZGlzYWJsZWQgPSBmYWxzZTtcbiAgICBkcm9wZG93blBvcG92ZXJSZWY6IFRoeVBvcG92ZXJSZWY8YW55PjtcblxuICAgIGdldCBpc09wZW4oKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmRyb3Bkb3duUG9wb3ZlclJlZiAmJiB0aGlzLmRyb3Bkb3duUG9wb3ZlclJlZi5nZXRPdmVybGF5UmVmKCkgJiYgdGhpcy5kcm9wZG93blBvcG92ZXJSZWYuZ2V0T3ZlcmxheVJlZigpLmhhc0F0dGFjaGVkKCk7XG4gICAgfVxuXG4gICAgQFZpZXdDaGlsZCgnaWNvbk1vZGVUZW1wbGF0ZScsIHsgc3RhdGljOiB0cnVlIH0pXG4gICAgaWNvbk1vZGVUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcblxuICAgIEBWaWV3Q2hpbGQoJ3RleHRNb2RlVGVtcGxhdGUnLCB7IHN0YXRpYzogdHJ1ZSB9KVxuICAgIHRleHRNb2RlVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgICBAVmlld0NoaWxkKCdkcm9wZG93blRlbXBsYXRlJywgeyBzdGF0aWM6IHRydWUgfSlcbiAgICBkcm9wZG93blRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gICAgQEhvc3RMaXN0ZW5lcignbW91c2Vkb3duJywgWyckZXZlbnQnXSlcbiAgICB0b2dnbGVEcm9wZG93bihldmVudDogTW91c2VFdmVudCkge1xuICAgICAgICBzdXBlci5leGVjdXRlKGV2ZW50KTtcblxuICAgICAgICBpZiAodGhpcy5lZGl0b3I/LmRpc2FibGVkIHx8IHRoaXMuZGlzYWJsZWQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLm9wZW5Ecm9wZG93blBvcG92ZXIoKTtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDogbW91c2Vkb3duJywgWyckZXZlbnQnXSlcbiAgICBoYW5kbGVEb2N1bWVudE1vdXNlRG93bihldmVudDogTW91c2VFdmVudCkge1xuICAgICAgICBpZiAoIXRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmNvbnRhaW5zKGV2ZW50LnRhcmdldCBhcyBIVE1MRWxlbWVudCkpIHtcbiAgICAgICAgICAgIHRoaXMuY2xvc2VEcm9wZG93blBvcG92ZXIoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBIb3N0QmluZGluZygnY2xhc3MuZGlzYWJsZWQnKSBnZXQgZGlzYWJsZWRTdGF0ZSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHB1YmxpYyBlbGVtZW50UmVmOiBFbGVtZW50UmVmLFxuICAgICAgICBwcml2YXRlIHRoeVBvcG92ZXI6IFRoeVBvcG92ZXIsXG4gICAgICAgIHByaXZhdGUgdmlld0NvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZixcbiAgICAgICAgcHJpdmF0ZSBvdmVybGF5OiBPdmVybGF5XG4gICAgKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKSB7XG4gICAgICAgIGlmICghdGhpcy50ZW1wbGF0ZSkge1xuICAgICAgICAgICAgdGhpcy50ZW1wbGF0ZSA9IHRoaXMubW9kZSA9PT0gdGhpcy5kcm9wZG93bk1vZGUuaWNvbiA/IHRoaXMuaWNvbk1vZGVUZW1wbGF0ZSA6IHRoaXMudGV4dE1vZGVUZW1wbGF0ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICghdGhpcy5hY3RpdmVNZW51KSB7XG4gICAgICAgICAgICB0aGlzLmFjdGl2ZU1lbnUgPSB0aGlzLm1lbnVzWzBdO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLnRvb2xiYXJJdGVtKSB7XG4gICAgICAgICAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5jbGFzc0xpc3QuYWRkKGAke3RoaXMudG9vbGJhckl0ZW0/LmtleX1gKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0dXNDaGFuZ2UoZWRpdG9yOiBFZGl0b3IpIHtcbiAgICAgICAgdGhpcy5kaXNhYmxlZCA9IHRoaXMudG9vbGJhckl0ZW0/LmRpc2FibGUgPyB0aGlzLnRvb2xiYXJJdGVtPy5kaXNhYmxlKGVkaXRvcikgOiBmYWxzZTtcbiAgICAgICAgY29uc3QgYWN0aXZlSXRlbSA9IHRoaXMubWVudXMuZmluZChpID0+IHtcbiAgICAgICAgICAgIGlmIChpPy5hY3RpdmUpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gaT8uYWN0aXZlKGVkaXRvcik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLmFjdGl2ZU1lbnUgPSBhY3RpdmVJdGVtID8gYWN0aXZlSXRlbSA6IHRoaXMuaXRlbTtcbiAgICB9XG5cbiAgICBpdGVtTW91c2Vkb3duKGV2ZW50OiBNb3VzZUV2ZW50LCBpdGVtOiBUb29sYmFySXRlbSkge1xuICAgICAgICBzdXBlci5leGVjdXRlKGV2ZW50KTtcblxuICAgICAgICB0aGlzLmNsb3NlRHJvcGRvd25Qb3BvdmVyKCk7XG5cbiAgICAgICAgaWYgKHRoaXMuaXRlbU1vdXNlZG93bkhhbmRsZSkge1xuICAgICAgICAgICAgdGhpcy5pdGVtTW91c2Vkb3duSGFuZGxlKGl0ZW0pO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGl0ZW0/LmV4ZWN1dGUpIHtcbiAgICAgICAgICAgIGl0ZW0/LmV4ZWN1dGUodGhpcy5lZGl0b3IpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb3BlbkRyb3Bkb3duUG9wb3ZlcigpIHtcbiAgICAgICAgdGhpcy5kcm9wZG93blBvcG92ZXJSZWYgPSB0aGlzLnRoeVBvcG92ZXIub3Blbih0aGlzLmRyb3Bkb3duVGVtcGxhdGUsIHtcbiAgICAgICAgICAgIG9yaWdpbjogdGhpcy5lbGVtZW50UmVmLFxuICAgICAgICAgICAgcGFuZWxDbGFzczogWyd0aGUtdG9vbGJhci1kcm9wZG93bi1wb3BvdmVyJywgdGhpcy50b29sYmFySXRlbT8ua2V5XSxcbiAgICAgICAgICAgIHBsYWNlbWVudDogJ2JvdHRvbUxlZnQnLFxuICAgICAgICAgICAgaW5zaWRlQ2xvc2FibGU6IGZhbHNlLFxuICAgICAgICAgICAgYmFja2Ryb3BDbG9zYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIGhhc0JhY2tkcm9wOiBmYWxzZSxcbiAgICAgICAgICAgIG9mZnNldDogMTAsXG4gICAgICAgICAgICB2aWV3Q29udGFpbmVyUmVmOiB0aGlzLnZpZXdDb250YWluZXJSZWYsXG4gICAgICAgICAgICBzY3JvbGxTdHJhdGVneTogdGhpcy5vdmVybGF5LnNjcm9sbFN0cmF0ZWdpZXMucmVwb3NpdGlvbigpXG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLmRyb3Bkb3duUG9wb3ZlclJlZj8uZ2V0T3ZlcmxheVJlZigpLnVwZGF0ZVBvc2l0aW9uU3RyYXRlZ3kodGhpcy5jcmVhdGVQb3NpdGlvblN0cmF0ZWd5KCkpO1xuICAgIH1cblxuICAgIGNsb3NlRHJvcGRvd25Qb3BvdmVyKCkge1xuICAgICAgICBpZiAodGhpcy5kcm9wZG93blBvcG92ZXJSZWYpIHtcbiAgICAgICAgICAgIHRoaXMuZHJvcGRvd25Qb3BvdmVyUmVmPy5jbG9zZSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgY3JlYXRlUG9zaXRpb25TdHJhdGVneSgpIHtcbiAgICAgICAgY29uc3QgdG9wUG9zaXRpb246IENvbm5lY3RlZFBvc2l0aW9uID0ge1xuICAgICAgICAgICAgb3JpZ2luWDogJ3N0YXJ0JyxcbiAgICAgICAgICAgIG9yaWdpblk6ICd0b3AnLFxuICAgICAgICAgICAgb3ZlcmxheVg6ICdzdGFydCcsXG4gICAgICAgICAgICBvdmVybGF5WTogJ2JvdHRvbScsXG4gICAgICAgICAgICBvZmZzZXRYOiAwLFxuICAgICAgICAgICAgb2Zmc2V0WTogLTE1XG4gICAgICAgIH07XG4gICAgICAgIGNvbnN0IGJvdHRvbVBvc2l0aW9uOiBDb25uZWN0ZWRQb3NpdGlvbiA9IHtcbiAgICAgICAgICAgIC4uLnRvcFBvc2l0aW9uLFxuICAgICAgICAgICAgb3ZlcmxheVk6ICd0b3AnLFxuICAgICAgICAgICAgb2Zmc2V0WTogNDJcbiAgICAgICAgfTtcbiAgICAgICAgcmV0dXJuIHRoaXMub3ZlcmxheVxuICAgICAgICAgICAgLnBvc2l0aW9uKClcbiAgICAgICAgICAgIC5mbGV4aWJsZUNvbm5lY3RlZFRvKHRoaXMuZWxlbWVudFJlZilcbiAgICAgICAgICAgIC53aXRoRmxleGlibGVEaW1lbnNpb25zKGZhbHNlKVxuICAgICAgICAgICAgLndpdGhHcm93QWZ0ZXJPcGVuKGZhbHNlKVxuICAgICAgICAgICAgLndpdGhQdXNoKGZhbHNlKVxuICAgICAgICAgICAgLndpdGhQb3NpdGlvbnMoW2JvdHRvbVBvc2l0aW9uLCB0b3BQb3NpdGlvbl0pO1xuICAgIH1cbn1cbiIsIjxuZy10ZW1wbGF0ZSBbbmdUZW1wbGF0ZU91dGxldF09XCJ0ZW1wbGF0ZVwiPjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjaWNvbk1vZGVUZW1wbGF0ZT5cbiAgICA8YSB0aHlJY29uTmF2TGluayBjbGFzcz1cImljb24tbW9kZSBsaW5rLXdpdGgtZG93blwiIFt0aHlUb29sdGlwXT1cImFjdGl2ZU1lbnU/Lm5hbWVcIiB0aHlUb29sdGlwUGxhY2VtZW50PVwidG9wXCI+XG4gICAgICAgIDx0aHktaWNvbiBbdGh5SWNvbk5hbWVdPVwiYWN0aXZlTWVudT8uaWNvblwiPjwvdGh5LWljb24+XG4gICAgICAgIDx0aHktaWNvbiBjbGFzcz1cImNhcmV0LWRvd24taWNvbiBmb250LXNpemUtc20gdGV4dC1kZXNjXCIgdGh5SWNvbk5hbWU9XCJjYXJldC1kb3duXCI+PC90aHktaWNvbj5cbiAgICA8L2E+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI3RleHRNb2RlVGVtcGxhdGU+XG4gICAgPGEgdGh5SWNvbk5hdkxpbmsgY2xhc3M9XCJ0ZXh0LW1vZGVcIiBbdGh5VG9vbHRpcF09XCJhY3RpdmVNZW51Py5uYW1lXCIgdGh5VG9vbHRpcFBsYWNlbWVudD1cInRvcFwiPlxuICAgICAgICA8c3BhbiBjbGFzcz1cInNob3ctdGV4dFwiPnt7IGFjdGl2ZU1lbnU/Lm5hbWUgfX08L3NwYW4+XG4gICAgICAgIDx0aHktaWNvbiBjbGFzcz1cInRleHQtY2FyZXQtZG93bi1pY29uIGZvbnQtc2l6ZS1zbSB0ZXh0LWRlc2NcIiB0aHlJY29uTmFtZT1cImNhcmV0LWRvd25cIj48L3RoeS1pY29uPlxuICAgIDwvYT5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjZHJvcGRvd25UZW1wbGF0ZT5cbiAgICA8dGh5LWFjdGlvbi1tZW51IGNsYXNzPVwiZHJvcGRvd25cIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgbWVudSBvZiBtZW51c1wiPlxuICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICAqbmdJZj1cIm1lbnUua2V5ICE9PSAnc3BsaXQnXCJcbiAgICAgICAgICAgICAgICB0aHlBY3Rpb25NZW51SXRlbVxuICAgICAgICAgICAgICAgIGhyZWY9XCJqYXZhc2NyaXB0OjtcIlxuICAgICAgICAgICAgICAgIFt0aHlBY3Rpb25NZW51SXRlbUFjdGl2ZV09XCJtZW51LmtleSA9PT0gYWN0aXZlTWVudS5rZXlcIlxuICAgICAgICAgICAgICAgIChtb3VzZWRvd24pPVwiaXRlbU1vdXNlZG93bigkZXZlbnQsIG1lbnUpXCJcbiAgICAgICAgICAgICAgICBbbmdTdHlsZV09XCJtZW51Py5zdHlsZXNcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwibWVudS5pY29uICYmIG1vZGUgPT09IGRyb3Bkb3duTW9kZS5pY29uXCIgdGh5QWN0aW9uTWVudUl0ZW1JY29uPlxuICAgICAgICAgICAgICAgICAgICA8dGh5LWljb24gW3RoeUljb25OYW1lXT1cIm1lbnUuaWNvblwiPjwvdGh5LWljb24+XG4gICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwibWVudS5uYW1lXCIgdGh5QWN0aW9uTWVudUl0ZW1OYW1lPnt7IG1lbnUubmFtZSB9fTwvc3Bhbj5cbiAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgIDx0aHktYWN0aW9uLW1lbnUtZGl2aWRlciAqbmdJZj1cIm1lbnUua2V5ID09PSAnc3BsaXQnXCI+PC90aHktYWN0aW9uLW1lbnUtZGl2aWRlcj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC90aHktYWN0aW9uLW1lbnU+XG48L25nLXRlbXBsYXRlPlxuIl19
163
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGJhci1kcm9wZG93bi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zcmMvY29tcG9uZW50cy90b29sYmFyLWRyb3Bkb3duL3Rvb2xiYXItZHJvcGRvd24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvc3JjL2NvbXBvbmVudHMvdG9vbGJhci1kcm9wZG93bi90b29sYmFyLWRyb3Bkb3duLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQXNCLEtBQUssRUFBRSxZQUFZLEVBQWUsU0FBUyxFQUFvQixXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFJMUksT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRXZELE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGtEQUFrRCxDQUFDOzs7Ozs7Ozs7QUFTL0YsTUFBTSxPQUFPLDJCQUE0QixTQUFRLDJCQUEyQjtJQTZEeEUsWUFDVyxVQUFzQixFQUNyQixVQUFzQixFQUN0QixnQkFBa0MsRUFDbEMsT0FBZ0I7UUFFeEIsS0FBSyxFQUFFLENBQUM7UUFMRCxlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQ3JCLGVBQVUsR0FBVixVQUFVLENBQVk7UUFDdEIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQyxZQUFPLEdBQVAsT0FBTyxDQUFTO1FBMURuQixTQUFJLEdBQWlCLFlBQVksQ0FBQyxJQUFJLENBQUM7UUFlaEQsaUJBQVksR0FBRyxZQUFZLENBQUM7UUFFNUIsYUFBUSxHQUFHLEtBQUssQ0FBQztJQTRDakIsQ0FBQztJQTNERCxJQUNJLElBQUksQ0FBQyxDQUFjO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDO1FBQ2YsSUFBSSxDQUFDLFVBQVUsR0FBRyxDQUFDLENBQUM7SUFDeEIsQ0FBQztJQUNELElBQUks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QkFBZ0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgRWxlbWVudFJlZiwgSW5wdXQsIEhvc3RMaXN0ZW5lciwgVGVtcGxhdGVSZWYsIFZpZXdDaGlsZCwgVmlld0NvbnRhaW5lclJlZiwgSG9zdEJpbmRpbmcgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbm5lY3RlZFBvc2l0aW9uLCBPdmVybGF5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuaW1wb3J0IHsgVGh5UG9wb3ZlciwgVGh5UG9wb3ZlclJlZiB9IGZyb20gJ25neC10ZXRoeXMvcG9wb3Zlcic7XG5pbXBvcnQgeyBFZGl0b3IgfSBmcm9tICdzbGF0ZSc7XG5pbXBvcnQgeyBEcm9wZG93bk1vZGUgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvdG9vbGJhcic7XG5pbXBvcnQgeyBUb29sYmFySXRlbSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvdG9vbGJhcic7XG5pbXBvcnQgeyBUaGVUb29sYmFyQmFzZUl0ZW1Db21wb25lbnQgfSBmcm9tICcuLi90b29sYmFyLWJhc2UtaXRlbS90b29sYmFyLWJhc2UtaXRlbS5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3RoZS10b29sYmFyLWRyb3Bkb3duJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vdG9vbGJhci1kcm9wZG93bi5jb21wb25lbnQuaHRtbCcsXG4gICAgaG9zdDoge1xuICAgICAgICBjbGFzczogJ3RoZS10b29sYmFyLWRyb3Bkb3duLWNvbnRhaW5lcidcbiAgICB9XG59KVxuZXhwb3J0IGNsYXNzIFRoZVRvb2xiYXJEcm9wZG93bkNvbXBvbmVudCBleHRlbmRzIFRoZVRvb2xiYXJCYXNlSXRlbUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgcHJpdmF0ZSBfaXRlbTogVG9vbGJhckl0ZW07XG5cbiAgICBASW5wdXQoKSB0b29sYmFySXRlbTogVG9vbGJhckl0ZW07XG5cbiAgICBASW5wdXQoKSBtZW51czogVG9vbGJhckl0ZW1bXTtcblxuICAgIEBJbnB1dCgpIG1vZGU6IERyb3Bkb3duTW9kZSA9IERyb3Bkb3duTW9kZS50ZXh0O1xuXG4gICAgQElucHV0KClcbiAgICBzZXQgaXRlbShpOiBUb29sYmFySXRlbSkge1xuICAgICAgICB0aGlzLl9pdGVtID0gaTtcbiAgICAgICAgdGhpcy5hY3RpdmVNZW51ID0gaTtcbiAgICB9XG4gICAgZ2V0IGl0ZW0oKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9pdGVtO1xuICAgIH1cblxuICAgIEBJbnB1dCgpIGl0ZW1Nb3VzZWRvd25IYW5kbGU6IChpdGVtOiBUb29sYmFySXRlbSkgPT4gdm9pZDtcblxuICAgIGVkaXRvcjogRWRpdG9yO1xuICAgIHRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICAgIGRyb3Bkb3duTW9kZSA9IERyb3Bkb3duTW9kZTtcbiAgICBhY3RpdmVNZW51OiBUb29sYmFySXRlbTtcbiAgICBkaXNhYmxlZCA9IGZhbHNlO1xuICAgIGRyb3Bkb3duUG9wb3ZlclJlZjogVGh5UG9wb3ZlclJlZjxhbnk+O1xuXG4gICAgZ2V0IGlzT3BlbigpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZHJvcGRvd25Qb3BvdmVyUmVmICYmIHRoaXMuZHJvcGRvd25Qb3BvdmVyUmVmLmdldE92ZXJsYXlSZWYoKSAmJiB0aGlzLmRyb3Bkb3duUG9wb3ZlclJlZi5nZXRPdmVybGF5UmVmKCkuaGFzQXR0YWNoZWQoKTtcbiAgICB9XG5cbiAgICBAVmlld0NoaWxkKCdpY29uTW9kZVRlbXBsYXRlJywgeyBzdGF0aWM6IHRydWUgfSlcbiAgICBpY29uTW9kZVRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gICAgQFZpZXdDaGlsZCgndGV4dE1vZGVUZW1wbGF0ZScsIHsgc3RhdGljOiB0cnVlIH0pXG4gICAgdGV4dE1vZGVUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcblxuICAgIEBWaWV3Q2hpbGQoJ2Ryb3Bkb3duVGVtcGxhdGUnLCB7IHN0YXRpYzogdHJ1ZSB9KVxuICAgIGRyb3Bkb3duVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgICBASG9zdExpc3RlbmVyKCdtb3VzZWRvd24nLCBbJyRldmVudCddKVxuICAgIHRvZ2dsZURyb3Bkb3duKGV2ZW50OiBNb3VzZUV2ZW50KSB7XG4gICAgICAgIHN1cGVyLmV4ZWN1dGUoZXZlbnQpO1xuXG4gICAgICAgIGlmICh0aGlzLmVkaXRvcj8uZGlzYWJsZWQgfHwgdGhpcy5kaXNhYmxlZCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMub3BlbkRyb3Bkb3duUG9wb3ZlcigpO1xuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OiBtb3VzZWRvd24nLCBbJyRldmVudCddKVxuICAgIGhhbmRsZURvY3VtZW50TW91c2VEb3duKGV2ZW50OiBNb3VzZUV2ZW50KSB7XG4gICAgICAgIGlmICghdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuY29udGFpbnMoZXZlbnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50KSkge1xuICAgICAgICAgICAgdGhpcy5jbG9zZURyb3Bkb3duUG9wb3ZlcigpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5kaXNhYmxlZCcpIGdldCBkaXNhYmxlZFN0YXRlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5kaXNhYmxlZDtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHVibGljIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG4gICAgICAgIHByaXZhdGUgdGh5UG9wb3ZlcjogVGh5UG9wb3ZlcixcbiAgICAgICAgcHJpdmF0ZSB2aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLFxuICAgICAgICBwcml2YXRlIG92ZXJsYXk6IE92ZXJsYXlcbiAgICApIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgaWYgKCF0aGlzLnRlbXBsYXRlKSB7XG4gICAgICAgICAgICB0aGlzLnRlbXBsYXRlID0gdGhpcy5tb2RlID09PSB0aGlzLmRyb3Bkb3duTW9kZS5pY29uID8gdGhpcy5pY29uTW9kZVRlbXBsYXRlIDogdGhpcy50ZXh0TW9kZVRlbXBsYXRlO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCF0aGlzLmFjdGl2ZU1lbnUpIHtcbiAgICAgICAgICAgIHRoaXMuYWN0aXZlTWVudSA9IHRoaXMubWVudXNbMF07XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMudG9vbGJhckl0ZW0pIHtcbiAgICAgICAgICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmNsYXNzTGlzdC5hZGQoYCR7dGhpcy50b29sYmFySXRlbT8ua2V5fWApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXR1c0NoYW5nZShlZGl0b3I6IEVkaXRvcikge1xuICAgICAgICB0aGlzLmRpc2FibGVkID0gdGhpcy50b29sYmFySXRlbT8uZGlzYWJsZSA/IHRoaXMudG9vbGJhckl0ZW0/LmRpc2FibGUoZWRpdG9yKSA6IGZhbHNlO1xuICAgICAgICBjb25zdCBhY3RpdmVJdGVtID0gdGhpcy5tZW51cy5maW5kKGkgPT4ge1xuICAgICAgICAgICAgaWYgKGk/LmFjdGl2ZSkge1xuICAgICAgICAgICAgICAgIHJldHVybiBpPy5hY3RpdmUoZWRpdG9yKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuYWN0aXZlTWVudSA9IGFjdGl2ZUl0ZW0gPyBhY3RpdmVJdGVtIDogdGhpcy5pdGVtO1xuICAgIH1cblxuICAgIGl0ZW1Nb3VzZWRvd24oZXZlbnQ6IE1vdXNlRXZlbnQsIGl0ZW06IFRvb2xiYXJJdGVtKSB7XG4gICAgICAgIHN1cGVyLmV4ZWN1dGUoZXZlbnQpO1xuXG4gICAgICAgIHRoaXMuY2xvc2VEcm9wZG93blBvcG92ZXIoKTtcblxuICAgICAgICBpZiAodGhpcy5pdGVtTW91c2Vkb3duSGFuZGxlKSB7XG4gICAgICAgICAgICB0aGlzLml0ZW1Nb3VzZWRvd25IYW5kbGUoaXRlbSk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoaXRlbT8uZXhlY3V0ZSkge1xuICAgICAgICAgICAgaXRlbT8uZXhlY3V0ZSh0aGlzLmVkaXRvcik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvcGVuRHJvcGRvd25Qb3BvdmVyKCkge1xuICAgICAgICB0aGlzLmRyb3Bkb3duUG9wb3ZlclJlZiA9IHRoaXMudGh5UG9wb3Zlci5vcGVuKHRoaXMuZHJvcGRvd25UZW1wbGF0ZSwge1xuICAgICAgICAgICAgb3JpZ2luOiB0aGlzLmVsZW1lbnRSZWYsXG4gICAgICAgICAgICBwYW5lbENsYXNzOiBbJ3RoZS10b29sYmFyLWRyb3Bkb3duLXBvcG92ZXInLCB0aGlzLnRvb2xiYXJJdGVtPy5rZXldLFxuICAgICAgICAgICAgcGxhY2VtZW50OiAnYm90dG9tTGVmdCcsXG4gICAgICAgICAgICBpbnNpZGVDbG9zYWJsZTogZmFsc2UsXG4gICAgICAgICAgICBiYWNrZHJvcENsb3NhYmxlOiB0cnVlLFxuICAgICAgICAgICAgaGFzQmFja2Ryb3A6IGZhbHNlLFxuICAgICAgICAgICAgb2Zmc2V0OiAxMCxcbiAgICAgICAgICAgIG1pbldpZHRoOiAwLFxuICAgICAgICAgICAgdmlld0NvbnRhaW5lclJlZjogdGhpcy52aWV3Q29udGFpbmVyUmVmLFxuICAgICAgICAgICAgc2Nyb2xsU3RyYXRlZ3k6IHRoaXMub3ZlcmxheS5zY3JvbGxTdHJhdGVnaWVzLnJlcG9zaXRpb24oKVxuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5kcm9wZG93blBvcG92ZXJSZWY/LmdldE92ZXJsYXlSZWYoKS51cGRhdGVQb3NpdGlvblN0cmF0ZWd5KHRoaXMuY3JlYXRlUG9zaXRpb25TdHJhdGVneSgpKTtcbiAgICB9XG5cbiAgICBjbG9zZURyb3Bkb3duUG9wb3ZlcigpIHtcbiAgICAgICAgaWYgKHRoaXMuZHJvcGRvd25Qb3BvdmVyUmVmKSB7XG4gICAgICAgICAgICB0aGlzLmRyb3Bkb3duUG9wb3ZlclJlZj8uY2xvc2UoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGNyZWF0ZVBvc2l0aW9uU3RyYXRlZ3koKSB7XG4gICAgICAgIGNvbnN0IHRvcFBvc2l0aW9uOiBDb25uZWN0ZWRQb3NpdGlvbiA9IHtcbiAgICAgICAgICAgIG9yaWdpblg6ICdzdGFydCcsXG4gICAgICAgICAgICBvcmlnaW5ZOiAndG9wJyxcbiAgICAgICAgICAgIG92ZXJsYXlYOiAnc3RhcnQnLFxuICAgICAgICAgICAgb3ZlcmxheVk6ICdib3R0b20nLFxuICAgICAgICAgICAgb2Zmc2V0WDogMCxcbiAgICAgICAgICAgIG9mZnNldFk6IC0xNVxuICAgICAgICB9O1xuICAgICAgICBjb25zdCBib3R0b21Qb3NpdGlvbjogQ29ubmVjdGVkUG9zaXRpb24gPSB7XG4gICAgICAgICAgICAuLi50b3BQb3NpdGlvbixcbiAgICAgICAgICAgIG92ZXJsYXlZOiAndG9wJyxcbiAgICAgICAgICAgIG9mZnNldFk6IDQyXG4gICAgICAgIH07XG4gICAgICAgIHJldHVybiB0aGlzLm92ZXJsYXlcbiAgICAgICAgICAgIC5wb3NpdGlvbigpXG4gICAgICAgICAgICAuZmxleGlibGVDb25uZWN0ZWRUbyh0aGlzLmVsZW1lbnRSZWYpXG4gICAgICAgICAgICAud2l0aEZsZXhpYmxlRGltZW5zaW9ucyhmYWxzZSlcbiAgICAgICAgICAgIC53aXRoR3Jvd0FmdGVyT3BlbihmYWxzZSlcbiAgICAgICAgICAgIC53aXRoUHVzaChmYWxzZSlcbiAgICAgICAgICAgIC53aXRoUG9zaXRpb25zKFtib3R0b21Qb3NpdGlvbiwgdG9wUG9zaXRpb25dKTtcbiAgICB9XG59XG4iLCI8bmctdGVtcGxhdGUgW25nVGVtcGxhdGVPdXRsZXRdPVwidGVtcGxhdGVcIj48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2ljb25Nb2RlVGVtcGxhdGU+XG4gICAgPGEgdGh5SWNvbk5hdkxpbmsgY2xhc3M9XCJpY29uLW1vZGUgbGluay13aXRoLWRvd25cIiBbdGh5VG9vbHRpcF09XCJhY3RpdmVNZW51Py5uYW1lXCIgdGh5VG9vbHRpcFBsYWNlbWVudD1cInRvcFwiPlxuICAgICAgICA8dGh5LWljb24gW3RoeUljb25OYW1lXT1cImFjdGl2ZU1lbnU/Lmljb25cIj48L3RoeS1pY29uPlxuICAgICAgICA8dGh5LWljb24gY2xhc3M9XCJjYXJldC1kb3duLWljb24gZm9udC1zaXplLXNtIHRleHQtZGVzY1wiIHRoeUljb25OYW1lPVwiY2FyZXQtZG93blwiPjwvdGh5LWljb24+XG4gICAgPC9hPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICN0ZXh0TW9kZVRlbXBsYXRlPlxuICAgIDxhIHRoeUljb25OYXZMaW5rIGNsYXNzPVwidGV4dC1tb2RlXCIgW3RoeVRvb2x0aXBdPVwiYWN0aXZlTWVudT8ubmFtZVwiIHRoeVRvb2x0aXBQbGFjZW1lbnQ9XCJ0b3BcIj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJzaG93LXRleHRcIj57eyBhY3RpdmVNZW51Py5uYW1lIH19PC9zcGFuPlxuICAgICAgICA8dGh5LWljb24gY2xhc3M9XCJ0ZXh0LWNhcmV0LWRvd24taWNvbiBmb250LXNpemUtc20gdGV4dC1kZXNjXCIgdGh5SWNvbk5hbWU9XCJjYXJldC1kb3duXCI+PC90aHktaWNvbj5cbiAgICA8L2E+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2Ryb3Bkb3duVGVtcGxhdGU+XG4gICAgPHRoeS1hY3Rpb24tbWVudSBjbGFzcz1cImRyb3Bkb3duXCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IG1lbnUgb2YgbWVudXNcIj5cbiAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgKm5nSWY9XCJtZW51LmtleSAhPT0gJ3NwbGl0J1wiXG4gICAgICAgICAgICAgICAgdGh5QWN0aW9uTWVudUl0ZW1cbiAgICAgICAgICAgICAgICBocmVmPVwiamF2YXNjcmlwdDo7XCJcbiAgICAgICAgICAgICAgICBbdGh5QWN0aW9uTWVudUl0ZW1BY3RpdmVdPVwibWVudS5rZXkgPT09IGFjdGl2ZU1lbnUua2V5XCJcbiAgICAgICAgICAgICAgICAobW91c2Vkb3duKT1cIml0ZW1Nb3VzZWRvd24oJGV2ZW50LCBtZW51KVwiXG4gICAgICAgICAgICAgICAgW25nU3R5bGVdPVwibWVudT8uc3R5bGVzXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cIm1lbnUuaWNvbiAmJiBtb2RlID09PSBkcm9wZG93bk1vZGUuaWNvblwiIHRoeUFjdGlvbk1lbnVJdGVtSWNvbj5cbiAgICAgICAgICAgICAgICAgICAgPHRoeS1pY29uIFt0aHlJY29uTmFtZV09XCJtZW51Lmljb25cIj48L3RoeS1pY29uPlxuICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cIm1lbnUubmFtZVwiIHRoeUFjdGlvbk1lbnVJdGVtTmFtZT57eyBtZW51Lm5hbWUgfX08L3NwYW4+XG4gICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICA8dGh5LWFjdGlvbi1tZW51LWRpdmlkZXIgKm5nSWY9XCJtZW51LmtleSA9PT0gJ3NwbGl0J1wiPjwvdGh5LWFjdGlvbi1tZW51LWRpdmlkZXI+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvdGh5LWFjdGlvbi1tZW51PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
@@ -71,6 +71,7 @@ export class TheToolbarGroupComponent {
71
71
  this.groupPopoverRef = this.thyPopover.open(this.groupTemplate, {
72
72
  panelClass: 'the-toolbar-group-container',
73
73
  offset: 10,
74
+ minWidth: 0,
74
75
  placement: 'bottomRight',
75
76
  origin: event.currentTarget,
76
77
  viewContainerRef: this.viewContainerRef,
@@ -87,9 +88,9 @@ export class TheToolbarGroupComponent {
87
88
  }
88
89
  }
89
90
  }
90
- TheToolbarGroupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: TheToolbarGroupComponent, deps: [{ token: i0.ElementRef }, { token: i1.ThyPopover }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Component });
91
- TheToolbarGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: TheToolbarGroupComponent, selector: "the-toolbar-group", inputs: { menus: "menus", item: "item" }, host: { listeners: { "mousedown": "mousedownHandler($event)", "click": "clickHandle($event)" }, classAttribute: "the-toolbar-group" }, viewQueries: [{ propertyName: "groupTemplate", first: true, predicate: ["groupTemplate"], descendants: true, read: TemplateRef, static: true }], ngImport: i0, template: "<a thyIconNavLink [thyIconNavLinkIcon]=\"item.icon\" [thyTooltip]=\"item?.name\" thyTooltipPlacement=\"top\" [thyIconNavLinkActive]=\"active\"></a>\n\n<ng-template #groupTemplate>\n <the-toolbar class=\"group\" [editor]=\"editor\" [toolbarItems]=\"menus\" [isMore]=\"false\"></the-toolbar>\n</ng-template>\n", components: [{ type: i2.ThyIconNavLinkComponent, selector: "[thyIconNavLink]", inputs: ["thyIconNavLinkIcon", "thyIconNavLinkActive"] }, { type: i3.TheToolbarComponent, selector: "the-toolbar", inputs: ["editor", "toolbarItems", "align", "containerClass", "isMore", "afterTemplate"] }], directives: [{ type: i4.ThyTooltipDirective, selector: "[thyTooltip],[thy-tooltip]", inputs: ["thyTooltip", "thyTooltipPlacement", "thyTooltipClass", "thyTooltipShowDelay", "thyTooltipHideDelay", "thyTooltipTrigger", "thyTooltipDisabled", "thyTooltipTemplateContext", "thyTooltipOffset", "thyTooltipPin"], exportAs: ["thyTooltip"] }] });
92
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: TheToolbarGroupComponent, decorators: [{
91
+ TheToolbarGroupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TheToolbarGroupComponent, deps: [{ token: i0.ElementRef }, { token: i1.ThyPopover }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Component });
92
+ TheToolbarGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: TheToolbarGroupComponent, selector: "the-toolbar-group", inputs: { menus: "menus", item: "item" }, host: { listeners: { "mousedown": "mousedownHandler($event)", "click": "clickHandle($event)" }, classAttribute: "the-toolbar-group" }, viewQueries: [{ propertyName: "groupTemplate", first: true, predicate: ["groupTemplate"], descendants: true, read: TemplateRef, static: true }], ngImport: i0, template: "<a thyIconNavLink [thyIconNavLinkIcon]=\"item.icon\" [thyTooltip]=\"item?.name\" thyTooltipPlacement=\"top\" [thyIconNavLinkActive]=\"active\"></a>\n\n<ng-template #groupTemplate>\n <the-toolbar class=\"group\" [editor]=\"editor\" [toolbarItems]=\"menus\" [isMore]=\"false\"></the-toolbar>\n</ng-template>\n", components: [{ type: i2.ThyIconNavLinkComponent, selector: "[thyIconNavLink]", inputs: ["thyIconNavLinkIcon", "thyIconNavLinkActive"] }, { type: i3.TheToolbarComponent, selector: "the-toolbar", inputs: ["editor", "toolbarItems", "align", "containerClass", "isMore", "afterTemplate"] }], directives: [{ type: i4.ThyTooltipDirective, selector: "[thyTooltip],[thy-tooltip]", inputs: ["thyTooltip", "thyTooltipPlacement", "thyTooltipClass", "thyTooltipShowDelay", "thyTooltipHideDelay", "thyTooltipTrigger", "thyTooltipDisabled", "thyTooltipTemplateContext", "thyTooltipOffset", "thyTooltipPin"], exportAs: ["thyTooltip"] }] });
93
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TheToolbarGroupComponent, decorators: [{
93
94
  type: Component,
94
95
  args: [{
95
96
  selector: 'the-toolbar-group',
@@ -112,4 +113,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImpo
112
113
  type: HostListener,
113
114
  args: ['click', ['$event']]
114
115
  }] } });
115
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGJhci1ncm91cC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zcmMvY29tcG9uZW50cy90b29sYmFyLWdyb3VwL3Rvb2xiYXItZ3JvdXAuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvc3JjL2NvbXBvbmVudHMvdG9vbGJhci1ncm91cC90b29sYmFyLWdyb3VwLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQXNCLEtBQUssRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUErQixZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7OztBQVl4SSxNQUFNLE9BQU8sd0JBQXdCO0lBc0NqQyxZQUFtQixVQUFzQixFQUFVLFVBQXNCLEVBQVUsZ0JBQWtDO1FBQWxHLGVBQVUsR0FBVixVQUFVLENBQVk7UUFBVSxlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQVUscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQWxCckgsV0FBTSxHQUFHLEtBQUssQ0FBQztJQWtCeUcsQ0FBQztJQWpDekgsSUFDSSxJQUFJLENBQUMsQ0FBcUI7UUFDMUIsSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUM7UUFDZixJQUFJLENBQUMsVUFBVSxHQUFHLENBQUMsQ0FBQztJQUN4QixDQUFDO0lBRUQsSUFBSSxJQUFJO1FBQ0osT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3RCLENBQUM7SUFFRCxJQUFJLFFBQVE7UUFDUixPQUFPLElBQUksQ0FBQyxlQUFlLElBQUksSUFBSSxDQUFDLGVBQWUsQ0FBQyxhQUFhLEVBQUUsSUFBSSxJQUFJLENBQUMsZUFBZSxDQUFDLGFBQWEsRUFBRSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQzlILENBQUM7SUFXRCxnQkFBZ0IsQ0FBQyxLQUFLO1FBQ2xCLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztR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QUFFLG1CQUFtQjtvQkFDN0IsV0FBVyxFQUFFLGdDQUFnQztvQkFDN0MsSUFBSSxFQUFFO3dCQUNGLEtBQUssRUFBRSxtQkFBbUI7cUJBQzdCO2lCQUNKO3lKQUlZLEtBQUs7c0JBQWIsS0FBSztnQkFHRixJQUFJO3NCQURQLEtBQUs7Z0JBb0JOLGFBQWE7c0JBRFosU0FBUzt1QkFBQyxlQUFlLEVBQUUsRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBSS9ELGdCQUFnQjtzQkFEZixZQUFZO3VCQUFDLFdBQVcsRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkFPckMsV0FBVztzQkFEVixZQUFZO3VCQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBFbGVtZW50UmVmLCBJbnB1dCwgVmlld0NoaWxkLCBUZW1wbGF0ZVJlZiwgVmlld0NvbnRhaW5lclJlZiwgT25EZXN0cm95LCBIb3N0TGlzdGVuZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRoeVBvcG92ZXIsIFRoeVBvcG92ZXJSZWYgfSBmcm9tICduZ3gtdGV0aHlzL3BvcG92ZXInO1xuaW1wb3J0IHsgRWRpdG9yIH0gZnJvbSAnc2xhdGUnO1xuaW1wb3J0IHsgRGVmYXVsdFRvb2xiYXJJdGVtIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndGhlLXRvb2xiYXItZ3JvdXAnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi90b29sYmFyLWdyb3VwLmNvbXBvbmVudC5odG1sJyxcbiAgICBob3N0OiB7XG4gICAgICAgIGNsYXNzOiAndGhlLXRvb2xiYXItZ3JvdXAnXG4gICAgfVxufSlcbmV4cG9ydCBjbGFzcyBUaGVUb29sYmFyR3JvdXBDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gICAgcHJpdmF0ZSBfaXRlbTogRGVmYXVsdFRvb2xiYXJJdGVtO1xuXG4gICAgQElucHV0KCkgbWVudXM6IERlZmF1bHRUb29sYmFySXRlbVtdO1xuXG4gICAgQElucHV0KClcbiAgICBzZXQgaXRlbShpOiBEZWZhdWx0VG9vbGJhckl0ZW0pIHtcbiAgICAgICAgdGhpcy5faXRlbSA9IGk7XG4gICAgICAgIHRoaXMuYWN0aXZlTWVudSA9IGk7XG4gICAgfVxuXG4gICAgZ2V0IGl0ZW0oKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9pdGVtO1xuICAgIH1cblxuICAgIGdldCBpc09wZW5lZCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ3JvdXBQb3BvdmVyUmVmICYmIHRoaXMuZ3JvdXBQb3BvdmVyUmVmLmdldE92ZXJsYXlSZWYoKSAmJiB0aGlzLmdyb3VwUG9wb3ZlclJlZi5nZXRPdmVybGF5UmVmKCkuaGFzQXR0YWNoZWQoKTtcbiAgICB9XG5cbiAgICBlZGl0b3I6IEVkaXRvcjtcbiAgICBhY3RpdmUgPSBmYWxzZTtcbiAgICBhY3RpdmVNZW51OiBEZWZhdWx0VG9vbGJhckl0ZW07XG4gICAgZ3JvdXBQb3BvdmVyUmVmOiBUaHlQb3BvdmVyUmVmPGFueT47XG5cbiAgICBAVmlld0NoaWxkKCdncm91cFRlbXBsYXRlJywgeyByZWFkOiBUZW1wbGF0ZVJlZiwgc3RhdGljOiB0cnVlIH0pXG4gICAgZ3JvdXBUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcblxuICAgIEBIb3N0TGlzdGVuZXIoJ21vdXNlZG93bicsIFsnJGV2ZW50J10pXG4gICAgbW91c2Vkb3duSGFuZGxlcihldmVudCkge1xuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICB0aGlzLnRvZ2dsZUdyb3VwTWVudXMoZXZlbnQpO1xuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJywgWyckZXZlbnQnXSlcbiAgICBjbGlja0hhbmRsZShldmVudCkge1xuICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3RvcihwdWJsaWMgZWxlbWVudFJlZjogRWxlbWVudFJlZiwgcHJpdmF0ZSB0aHlQb3BvdmVyOiBUaHlQb3BvdmVyLCBwcml2YXRlIHZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYpIHt9XG5cbiAgICBuZ09uSW5pdCgpIHt9XG5cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jb2xzZUdyb3VwKCk7XG4gICAgfVxuXG4gICAgdG9nZ2xlR3JvdXBNZW51cyhldmVudDogTW91c2VFdmVudCkge1xuICAgICAgICBpZiAodGhpcy5lZGl0b3I/LmRpc2FibGVkKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMuaXNPcGVuZWQpIHtcbiAgICAgICAgICAgIHRoaXMuY29sc2VHcm91cCgpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5vcGVuR3JvdXAoZXZlbnQpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXR1c0NoYW5nZShlZGl0b3I6IEVkaXRvcikge1xuICAgICAgICBjb25zdCBhY3RpdmVJdGVtID0gdGhpcy5tZW51c0FjdGl2ZShlZGl0b3IpO1xuICAgICAgICB0aGlzLmFjdGl2ZU1lbnUgPSBhY3RpdmVJdGVtID8gYWN0aXZlSXRlbSA6IG51bGw7XG4gICAgICAgIHRoaXMuYWN0aXZlQ2hhbmdlKCk7XG4gICAgICAgIHRoaXMuY29sc2VHcm91cCgpO1xuICAgIH1cblxuICAgIG1lbnVzQWN0aXZlKGVkaXRvcjogRWRpdG9yKSB7XG4gICAgICAgIHJldHVybiB0aGlzLm1lbnVzLmZpbmQoaSA9PiB7XG4gICAgICAgICAgICBpZiAodGhpcy5lZGl0b3I/LnNlbGVjdGlvbiAmJiBpPy5hY3RpdmUpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gaT8uYWN0aXZlKGVkaXRvcik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGFjdGl2ZUNoYW5nZSgpIHtcbiAgICAgICAgY29uc3QgYWN0aXZlSXRlbSA9IHRoaXMubWVudXNBY3RpdmUodGhpcy5lZGl0b3IpO1xuICAgICAgICBpZiAodGhpcy5pc09wZW5lZCAmJiAhYWN0aXZlSXRlbSkge1xuICAgICAgICAgICAgdGhpcy5hY3RpdmUgPSBmYWxzZTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmFjdGl2ZSA9IGFjdGl2ZUl0ZW0gPyB0cnVlIDogZmFsc2U7XG4gICAgfVxuXG4gICAgb3Blbkdyb3VwKGV2ZW50OiBNb3VzZUV2ZW50KSB7XG4gICAgICAgIHRoaXMuYWN0aXZlID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5ncm91cFBvcG92ZXJSZWYgPSB0aGlzLnRoeVBvcG92ZXIub3Blbih0aGlzLmdyb3VwVGVtcGxhdGUsIHtcbiAgICAgICAgICAgIHBhbmVsQ2xhc3M6ICd0aGUtdG9vbGJhci1ncm91cC1jb250YWluZXInLFxuICAgICAgICAgICAgb2Zmc2V0OiAxMCxcbiAgICAgICAgICAgIHBsYWNlbWVudDogJ2JvdHRvbVJpZ2h0JyxcbiAgICAgICAgICAgIG9yaWdpbjogZXZlbnQuY3VycmVudFRhcmdldCBhcyBIVE1MRWxlbWVudCxcbiAgICAgICAgICAgIHZpZXdDb250YWluZXJSZWY6IHRoaXMudmlld0NvbnRhaW5lclJlZixcbiAgICAgICAgICAgIGhhc0JhY2tkcm9wOiBmYWxzZSxcbiAgICAgICAgICAgIG91dHNpZGVDbG9zYWJsZTogdHJ1ZVxuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5ncm91cFBvcG92ZXJSZWYuYWZ0ZXJDbG9zZWQoKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5hY3RpdmVDaGFuZ2UoKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgY29sc2VHcm91cCgpIHtcbiAgICAgICAgaWYgKHRoaXMuaXNPcGVuZWQpIHtcbiAgICAgICAgICAgIHRoaXMuZ3JvdXBQb3BvdmVyUmVmLmNsb3NlKCk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCI8YSB0aHlJY29uTmF2TGluayBbdGh5SWNvbk5hdkxpbmtJY29uXT1cIml0ZW0uaWNvblwiIFt0aHlUb29sdGlwXT1cIml0ZW0/Lm5hbWVcIiB0aHlUb29sdGlwUGxhY2VtZW50PVwidG9wXCIgW3RoeUljb25OYXZMaW5rQWN0aXZlXT1cImFjdGl2ZVwiPjwvYT5cblxuPG5nLXRlbXBsYXRlICNncm91cFRlbXBsYXRlPlxuICAgIDx0aGUtdG9vbGJhciBjbGFzcz1cImdyb3VwXCIgW2VkaXRvcl09XCJlZGl0b3JcIiBbdG9vbGJhckl0ZW1zXT1cIm1lbnVzXCIgW2lzTW9yZV09XCJmYWxzZVwiPjwvdGhlLXRvb2xiYXI+XG48L25nLXRlbXBsYXRlPlxuIl19
116
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGJhci1ncm91cC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9zcmMvY29tcG9uZW50cy90b29sYmFyLWdyb3VwL3Rvb2xiYXItZ3JvdXAuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvc3JjL2NvbXBvbmVudHMvdG9vbGJhci1ncm91cC90b29sYmFyLWdyb3VwLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQXNCLEtBQUssRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUErQixZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7OztBQVl4SSxNQUFNLE9BQU8sd0JBQXdCO0lBc0NqQyxZQUFtQixVQUFzQixFQUFVLFVBQXNCLEVBQVUsZ0JBQWtDO1FBQWxHLGVBQVUsR0FBVixVQUFVLENBQVk7UUFBVSxlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQVUscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQWxCckgsV0FBTSxHQUFHLEtBQUssQ0FBQztJQWtCeUcsQ0FBQztJQWpDekgsSUFDSSxJQUFJLENBQUMsQ0FBcUI7UUFDMUIsSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUM7UUFDZixJQUFJLENBQUMsVUFBVSxHQUFHLENBQUMsQ0FBQztJQUN4QixDQUFDO0lBRUQsSUFBSSxJQUFJO1FBQ0osT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3RCLENBQUM7SUFFRCxJQUFJLFFBQVE7UUFDUixPQUFPLElBQUksQ0FBQyxlQUFlLElBQUksSUFBSSxDQUFDLGVBQWUsQ0FBQyxhQUFhLEVBQUUsSUFBSSxJQUFJLENBQUMsZUFBZSxDQUFDLGFBQWEsRUFBRSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQzlILENBQUM7SUFXRCxnQkFBZ0IsQ0FBQyxLQUFLO1FBQ2xCLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztR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UzttQkFBQztvQkFDUCxRQUFRLEVBQUUsbUJBQW1CO29CQUM3QixXQUFXLEVBQUUsZ0NBQWdDO29CQUM3QyxJQUFJLEVBQUU7d0JBQ0YsS0FBSyxFQUFFLG1CQUFtQjtxQkFDN0I7aUJBQ0o7eUpBSVksS0FBSztzQkFBYixLQUFLO2dCQUdGLElBQUk7c0JBRFAsS0FBSztnQkFvQk4sYUFBYTtzQkFEWixTQUFTO3VCQUFDLGVBQWUsRUFBRSxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFJL0QsZ0JBQWdCO3NCQURmLFlBQVk7dUJBQUMsV0FBVyxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQU9yQyxXQUFXO3NCQURWLFlBQVk7dUJBQUMsT0FBTyxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIEVsZW1lbnRSZWYsIElucHV0LCBWaWV3Q2hpbGQsIFRlbXBsYXRlUmVmLCBWaWV3Q29udGFpbmVyUmVmLCBPbkRlc3Ryb3ksIEhvc3RMaXN0ZW5lciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVGh5UG9wb3ZlciwgVGh5UG9wb3ZlclJlZiB9IGZyb20gJ25neC10ZXRoeXMvcG9wb3Zlcic7XG5pbXBvcnQgeyBFZGl0b3IgfSBmcm9tICdzbGF0ZSc7XG5pbXBvcnQgeyBEZWZhdWx0VG9vbGJhckl0ZW0gfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd0aGUtdG9vbGJhci1ncm91cCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3Rvb2xiYXItZ3JvdXAuY29tcG9uZW50Lmh0bWwnLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgY2xhc3M6ICd0aGUtdG9vbGJhci1ncm91cCdcbiAgICB9XG59KVxuZXhwb3J0IGNsYXNzIFRoZVRvb2xiYXJHcm91cENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgICBwcml2YXRlIF9pdGVtOiBEZWZhdWx0VG9vbGJhckl0ZW07XG5cbiAgICBASW5wdXQoKSBtZW51czogRGVmYXVsdFRvb2xiYXJJdGVtW107XG5cbiAgICBASW5wdXQoKVxuICAgIHNldCBpdGVtKGk6IERlZmF1bHRUb29sYmFySXRlbSkge1xuICAgICAgICB0aGlzLl9pdGVtID0gaTtcbiAgICAgICAgdGhpcy5hY3RpdmVNZW51ID0gaTtcbiAgICB9XG5cbiAgICBnZXQgaXRlbSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2l0ZW07XG4gICAgfVxuXG4gICAgZ2V0IGlzT3BlbmVkKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5ncm91cFBvcG92ZXJSZWYgJiYgdGhpcy5ncm91cFBvcG92ZXJSZWYuZ2V0T3ZlcmxheVJlZigpICYmIHRoaXMuZ3JvdXBQb3BvdmVyUmVmLmdldE92ZXJsYXlSZWYoKS5oYXNBdHRhY2hlZCgpO1xuICAgIH1cblxuICAgIGVkaXRvcjogRWRpdG9yO1xuICAgIGFjdGl2ZSA9IGZhbHNlO1xuICAgIGFjdGl2ZU1lbnU6IERlZmF1bHRUb29sYmFySXRlbTtcbiAgICBncm91cFBvcG92ZXJSZWY6IFRoeVBvcG92ZXJSZWY8YW55PjtcblxuICAgIEBWaWV3Q2hpbGQoJ2dyb3VwVGVtcGxhdGUnLCB7IHJlYWQ6IFRlbXBsYXRlUmVmLCBzdGF0aWM6IHRydWUgfSlcbiAgICBncm91cFRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gICAgQEhvc3RMaXN0ZW5lcignbW91c2Vkb3duJywgWyckZXZlbnQnXSlcbiAgICBtb3VzZWRvd25IYW5kbGVyKGV2ZW50KSB7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIHRoaXMudG9nZ2xlR3JvdXBNZW51cyhldmVudCk7XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcignY2xpY2snLCBbJyRldmVudCddKVxuICAgIGNsaWNrSGFuZGxlKGV2ZW50KSB7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKHB1YmxpYyBlbGVtZW50UmVmOiBFbGVtZW50UmVmLCBwcml2YXRlIHRoeVBvcG92ZXI6IFRoeVBvcG92ZXIsIHByaXZhdGUgdmlld0NvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZikge31cblxuICAgIG5nT25Jbml0KCkge31cblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNvbHNlR3JvdXAoKTtcbiAgICB9XG5cbiAgICB0b2dnbGVHcm91cE1lbnVzKGV2ZW50OiBNb3VzZUV2ZW50KSB7XG4gICAgICAgIGlmICh0aGlzLmVkaXRvcj8uZGlzYWJsZWQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5pc09wZW5lZCkge1xuICAgICAgICAgICAgdGhpcy5jb2xzZUdyb3VwKCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLm9wZW5Hcm91cChldmVudCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdHVzQ2hhbmdlKGVkaXRvcjogRWRpdG9yKSB7XG4gICAgICAgIGNvbnN0IGFjdGl2ZUl0ZW0gPSB0aGlzLm1lbnVzQWN0aXZlKGVkaXRvcik7XG4gICAgICAgIHRoaXMuYWN0aXZlTWVudSA9IGFjdGl2ZUl0ZW0gPyBhY3RpdmVJdGVtIDogbnVsbDtcbiAgICAgICAgdGhpcy5hY3RpdmVDaGFuZ2UoKTtcbiAgICAgICAgdGhpcy5jb2xzZUdyb3VwKCk7XG4gICAgfVxuXG4gICAgbWVudXNBY3RpdmUoZWRpdG9yOiBFZGl0b3IpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMubWVudXMuZmluZChpID0+IHtcbiAgICAgICAgICAgIGlmICh0aGlzLmVkaXRvcj8uc2VsZWN0aW9uICYmIGk/LmFjdGl2ZSkge1xuICAgICAgICAgICAgICAgIHJldHVybiBpPy5hY3RpdmUoZWRpdG9yKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgYWN0aXZlQ2hhbmdlKCkge1xuICAgICAgICBjb25zdCBhY3RpdmVJdGVtID0gdGhpcy5tZW51c0FjdGl2ZSh0aGlzLmVkaXRvcik7XG4gICAgICAgIGlmICh0aGlzLmlzT3BlbmVkICYmICFhY3RpdmVJdGVtKSB7XG4gICAgICAgICAgICB0aGlzLmFjdGl2ZSA9IGZhbHNlO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuYWN0aXZlID0gYWN0aXZlSXRlbSA/IHRydWUgOiBmYWxzZTtcbiAgICB9XG5cbiAgICBvcGVuR3JvdXAoZXZlbnQ6IE1vdXNlRXZlbnQpIHtcbiAgICAgICAgdGhpcy5hY3RpdmUgPSB0cnVlO1xuICAgICAgICB0aGlzLmdyb3VwUG9wb3ZlclJlZiA9IHRoaXMudGh5UG9wb3Zlci5vcGVuKHRoaXMuZ3JvdXBUZW1wbGF0ZSwge1xuICAgICAgICAgICAgcGFuZWxDbGFzczogJ3RoZS10b29sYmFyLWdyb3VwLWNvbnRhaW5lcicsXG4gICAgICAgICAgICBvZmZzZXQ6IDEwLFxuICAgICAgICAgICAgbWluV2lkdGg6IDAsXG4gICAgICAgICAgICBwbGFjZW1lbnQ6ICdib3R0b21SaWdodCcsXG4gICAgICAgICAgICBvcmlnaW46IGV2ZW50LmN1cnJlbnRUYXJnZXQgYXMgSFRNTEVsZW1lbnQsXG4gICAgICAgICAgICB2aWV3Q29udGFpbmVyUmVmOiB0aGlzLnZpZXdDb250YWluZXJSZWYsXG4gICAgICAgICAgICBoYXNCYWNrZHJvcDogZmFsc2UsXG4gICAgICAgICAgICBvdXRzaWRlQ2xvc2FibGU6IHRydWVcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuZ3JvdXBQb3BvdmVyUmVmLmFmdGVyQ2xvc2VkKCkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuYWN0aXZlQ2hhbmdlKCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGNvbHNlR3JvdXAoKSB7XG4gICAgICAgIGlmICh0aGlzLmlzT3BlbmVkKSB7XG4gICAgICAgICAgICB0aGlzLmdyb3VwUG9wb3ZlclJlZi5jbG9zZSgpO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiPGEgdGh5SWNvbk5hdkxpbmsgW3RoeUljb25OYXZMaW5rSWNvbl09XCJpdGVtLmljb25cIiBbdGh5VG9vbHRpcF09XCJpdGVtPy5uYW1lXCIgdGh5VG9vbHRpcFBsYWNlbWVudD1cInRvcFwiIFt0aHlJY29uTmF2TGlua0FjdGl2ZV09XCJhY3RpdmVcIj48L2E+XG5cbjxuZy10ZW1wbGF0ZSAjZ3JvdXBUZW1wbGF0ZT5cbiAgICA8dGhlLXRvb2xiYXIgY2xhc3M9XCJncm91cFwiIFtlZGl0b3JdPVwiZWRpdG9yXCIgW3Rvb2xiYXJJdGVtc109XCJtZW51c1wiIFtpc01vcmVdPVwiZmFsc2VcIj48L3RoZS10b29sYmFyPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
@@ -52,8 +52,8 @@ export class TheToolbarItemComponent extends TheToolbarBaseItemComponent {
52
52
  });
53
53
  }
54
54
  }
55
- TheToolbarItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: TheToolbarItemComponent, deps: [{ token: i0.NgZone }, { token: i0.ComponentFactoryResolver }], target: i0.ɵɵFactoryTarget.Component });
56
- TheToolbarItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: TheToolbarItemComponent, selector: "the-toolbar-item", inputs: { item: "item", editor: "editor", itemMode: "itemMode" }, host: { listeners: { "mousedown": "toggleDropdown($event)" }, properties: { "class.disabled": "this.disabledState" }, classAttribute: "the-toolbar-item" }, viewQueries: [{ propertyName: "toolbarContainer", first: true, predicate: ["toolbarContainer"], descendants: true, read: ViewContainerRef, static: true }], usesInheritance: true, ngImport: i0, template: `
55
+ TheToolbarItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TheToolbarItemComponent, deps: [{ token: i0.NgZone }, { token: i0.ComponentFactoryResolver }], target: i0.ɵɵFactoryTarget.Component });
56
+ TheToolbarItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: TheToolbarItemComponent, selector: "the-toolbar-item", inputs: { editor: "editor", item: "item", itemMode: "itemMode" }, host: { listeners: { "mousedown": "toggleDropdown($event)" }, properties: { "class.disabled": "this.disabledState" }, classAttribute: "the-toolbar-item" }, viewQueries: [{ propertyName: "toolbarContainer", first: true, predicate: ["toolbarContainer"], descendants: true, read: ViewContainerRef, static: true }], usesInheritance: true, ngImport: i0, template: `
57
57
  <ng-container *ngIf="itemMode === ToolbarItemMode.horizontal; else selectionItem">
58
58
  <a
59
59
  thyIconNavLink
@@ -74,7 +74,7 @@ TheToolbarItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0"
74
74
  <ng-template #tooltip let-data> {{ data.name }} {{ data.shortcutKey }} </ng-template>
75
75
  <ng-container #toolbarContainer></ng-container>
76
76
  `, isInline: true, components: [{ type: i1.ThyIconNavLinkComponent, selector: "[thyIconNavLink]", inputs: ["thyIconNavLinkIcon", "thyIconNavLinkActive"] }, { type: i2.ThyIconComponent, selector: "thy-icon", inputs: ["thyIconType", "thyTwotoneColor", "thyIconName", "thyIconRotate", "thyIconSet", "thyIconLegging", "thyIconLinearGradient"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.ThyTooltipDirective, selector: "[thyTooltip],[thy-tooltip]", inputs: ["thyTooltip", "thyTooltipPlacement", "thyTooltipClass", "thyTooltipShowDelay", "thyTooltipHideDelay", "thyTooltipTrigger", "thyTooltipDisabled", "thyTooltipTemplateContext", "thyTooltipOffset", "thyTooltipPin"], exportAs: ["thyTooltip"] }] });
77
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: TheToolbarItemComponent, decorators: [{
77
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TheToolbarItemComponent, decorators: [{
78
78
  type: Component,
79
79
  args: [{
80
80
  selector: 'the-toolbar-item',
@@ -103,9 +103,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImpo
103
103
  class: 'the-toolbar-item'
104
104
  }
105
105
  }]
106
- }], ctorParameters: function () { return [{ type: i0.NgZone }, { type: i0.ComponentFactoryResolver }]; }, propDecorators: { item: [{
106
+ }], ctorParameters: function () { return [{ type: i0.NgZone }, { type: i0.ComponentFactoryResolver }]; }, propDecorators: { editor: [{
107
107
  type: Input
108
- }], editor: [{
108
+ }], item: [{
109
109
  type: Input
110
110
  }], itemMode: [{
111
111
  type: Input
@@ -119,4 +119,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImpo
119
119
  type: HostBinding,
120
120
  args: ['class.disabled']
121
121
  }] } });
122
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGJhci1pdGVtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3NyYy9jb21wb25lbnRzL3Rvb2xiYXItaXRlbS90b29sYmFyLWl0ZW0uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCxTQUFTLEVBRVQsV0FBVyxFQUNYLFlBQVksRUFDWixLQUFLLEVBR0wsU0FBUyxFQUNULGdCQUFnQixFQUNuQixNQUFNLGVBQWUsQ0FBQztBQUl2QixPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUMvRixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7O0FBNkJoRCxNQUFNLE9BQU8sdUJBQXdCLFNBQVEsMkJBQTJCO0lBeUJwRSxZQUFvQixNQUFjLEVBQVUsR0FBNkI7UUFDckUsS0FBSyxFQUFFLENBQUM7UUFEUSxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQVUsUUFBRyxHQUFILEdBQUcsQ0FBMEI7UUFwQmhFLGFBQVEsR0FBb0IsZUFBZSxDQUFDLFVBQVUsQ0FBQztRQUVoRSxvQkFBZSxHQUFHLGVBQWUsQ0FBQztRQUVsQyxXQUFNLEdBQXFCLEtBQUssQ0FBQztRQUVqQyxhQUFRLEdBQUcsS0FBSyxDQUFDO0lBZ0JqQixDQUFDO0lBVkQsY0FBYyxDQUFDLEtBQWlCO1FBQzVCLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDekIsQ0FBQztJQUVELElBQW1DLGFBQWE7UUFDNUMsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3pCLENBQUM7SUFNRCxRQUFROztRQUNKLElBQUksQ0FBQSxNQUFBLElBQUksQ0FBQyxJQUFJLDBDQUFFLGtCQUFrQixLQUFJLGVBQWUsQ0FBQyxNQUFBLElBQUksQ0FBQyxJQUFJLDBDQUFFLGtCQUFrQixDQUFDLEVBQUU7WUFDakYsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7U0FDNUI7SUFDTCxDQUFDO0lBRU0sWUFBWSxDQUFDLE1BQWM7O1FBQzlCLElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQSxNQUFBLElBQUksQ0FBQyxJQUFJLDBDQUFFLE9BQU8sRUFBQyxDQUFDLENBQUMsTUFBQSxJQUFJLENBQUMsSUFBSSwwQ0FBRSxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztRQUN4RSxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUEsTUFBQSxJQUFJLENBQUMsSUFBSSwwQ0FBRSxNQUFNLEVBQUMsQ0FBQyxDQUFDLE1BQUEsSUFBSSxDQUFDLElBQUksMENBQUUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7SUFDeEUsQ0FBQztJQUVELE9BQU8sQ0FBQyxLQUFpQjs7UUFDckIsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUVyQixJQUFJLENBQUEsTUFBQSxJQUFJLENBQUMsTUFBTSwwQ0FBRSxRQUFRLEtBQUksSUFBSSxDQUFDLFFBQVEsSUFBSSxDQUFDLENBQUEsTUFBQSxJQUFJLENBQUMsSUFBSSwwQ0FBRSxPQUFPLENBQUEsRUFBRTtZQUMvRCxPQUFPO1NBQ1Y7UUFFRCxNQUFBLElBQUksQ0FBQyxJQUFJLDBDQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVELGlCQUFpQjtRQUNiLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRTtZQUNqQixNQUFNLGtCQUFrQixHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1lBQzFGLE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxlQUFlLENBQUMsa0JBQWtCLENBQUMsQ0FBQztZQUNqRixjQUFjLENBQUMsUUFBUSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDO1lBQzdDLGNBQWMsQ0FBQyxRQUFRLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7WUFDekMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxRQUFRLEdBQUcsZUFBZSxDQUFDLFFBQVEsQ0FBQztRQUNoRSxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7O3FIQTFEUSx1QkFBdUI7eUdBQXZCLHVCQUF1Qix1WEFhTyxnQkFBZ0Isa0VBdEM3Qzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7S0FvQlQ7NEZBS1EsdUJBQXVCO2tCQTNCbkMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsa0JBQWtCO29CQUM1QixRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0tBb0JUO29CQUNELElBQUksRUFBRTt3QkFDRixLQUFLLEVBQUUsa0JBQWtCO3FCQUM1QjtpQkFDSjtvSUFFWSxJQUFJO3NCQUFaLEtBQUs7Z0JBRUcsTUFBTTtzQkFBZCxLQUFLO2dCQUVHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBU04sZ0JBQWdCO3NCQURmLFNBQVM7dUJBQUMsa0JBQWtCLEVBQUUsRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFJdkUsY0FBYztzQkFEYixZQUFZO3VCQUFDLFdBQVcsRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkFLRixhQUFhO3NCQUEvQyxXQUFXO3VCQUFDLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ29tcG9uZW50LFxuICAgIENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcixcbiAgICBIb3N0QmluZGluZyxcbiAgICBIb3N0TGlzdGVuZXIsXG4gICAgSW5wdXQsXG4gICAgTmdab25lLFxuICAgIE9uSW5pdCxcbiAgICBWaWV3Q2hpbGQsXG4gICAgVmlld0NvbnRhaW5lclJlZlxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEVkaXRvciB9IGZyb20gJ3NsYXRlJztcbmltcG9ydCB7IFRvb2xiYXJJdGVtIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBDdXN0b21FZGl0b3IgfSBmcm9tICcuLi8uLi9jdXN0b20tdHlwZXMnO1xuaW1wb3J0IHsgVGhlVG9vbGJhckJhc2VJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi4vdG9vbGJhci1iYXNlLWl0ZW0vdG9vbGJhci1iYXNlLWl0ZW0uY29tcG9uZW50JztcbmltcG9ydCB7IFRvb2xiYXJJdGVtTW9kZSB9IGZyb20gJy4uLy4uL2NvbnN0YW50cy90b29sYmFyJztcbmltcG9ydCB7IGlzQ29tcG9uZW50VHlwZSB9IGZyb20gJ3NsYXRlLWFuZ3VsYXInO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3RoZS10b29sYmFyLWl0ZW0nLFxuICAgIHRlbXBsYXRlOiBgXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJpdGVtTW9kZSA9PT0gVG9vbGJhckl0ZW1Nb2RlLmhvcml6b250YWw7IGVsc2Ugc2VsZWN0aW9uSXRlbVwiPlxuICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICB0aHlJY29uTmF2TGlua1xuICAgICAgICAgICAgICAgIFt0aHlJY29uTmF2TGlua0ljb25dPVwiaXRlbS5pY29uXCJcbiAgICAgICAgICAgICAgICBbdGh5VG9vbHRpcF09XCJ0b29sdGlwXCJcbiAgICAgICAgICAgICAgICBbdGh5VG9vbHRpcFRlbXBsYXRlQ29udGV4dF09XCJ7IG5hbWU6IGl0ZW0ubmFtZSwgc2hvcnRjdXRLZXk6IGl0ZW0uc2hvcnRjdXRLZXkgfVwiXG4gICAgICAgICAgICAgICAgdGh5VG9vbHRpcFBsYWNlbWVudD1cInRvcFwiXG4gICAgICAgICAgICAgICAgW3RoeUljb25OYXZMaW5rQWN0aXZlXT1cImFjdGl2ZVwiXG4gICAgICAgICAgICAgICAgKG1vdXNlZG93bik9XCJleGVjdXRlKCRldmVudClcIlxuICAgICAgICAgICAgPjwvYT5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDxuZy10ZW1wbGF0ZSAjc2VsZWN0aW9uSXRlbT5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhaXRlbT8ucXVpY2tJdGVtQ29tcG9uZW50XCI+XG4gICAgICAgICAgICAgICAgPHRoeS1pY29uIFt0aHlJY29uTmFtZV09XCJpdGVtPy5pY29uXCIgW3RoeUljb25Sb3RhdGVdPVwiMFwiIGNsYXNzPVwicXVpY2stdG9vbGJhci1pY29uXCI+PC90aHktaWNvbj5cbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInF1aWNrLXRvb2xiYXItbmFtZVwiPnt7IGl0ZW0/Lm5hbWUgfX08L3NwYW4+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPG5nLXRlbXBsYXRlICN0b29sdGlwIGxldC1kYXRhPiB7eyBkYXRhLm5hbWUgfX0ge3sgZGF0YS5zaG9ydGN1dEtleSB9fSA8L25nLXRlbXBsYXRlPlxuICAgICAgICA8bmctY29udGFpbmVyICN0b29sYmFyQ29udGFpbmVyPjwvbmctY29udGFpbmVyPlxuICAgIGAsXG4gICAgaG9zdDoge1xuICAgICAgICBjbGFzczogJ3RoZS10b29sYmFyLWl0ZW0nXG4gICAgfVxufSlcbmV4cG9ydCBjbGFzcyBUaGVUb29sYmFySXRlbUNvbXBvbmVudCBleHRlbmRzIFRoZVRvb2xiYXJCYXNlSXRlbUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgQElucHV0KCkgaXRlbTogVG9vbGJhckl0ZW07XG5cbiAgICBASW5wdXQoKSBlZGl0b3I6IEN1c3RvbUVkaXRvcjtcblxuICAgIEBJbnB1dCgpIGl0ZW1Nb2RlOiBUb29sYmFySXRlbU1vZGUgPSBUb29sYmFySXRlbU1vZGUuaG9yaXpvbnRhbDtcblxuICAgIFRvb2xiYXJJdGVtTW9kZSA9IFRvb2xiYXJJdGVtTW9kZTtcblxuICAgIGFjdGl2ZTogc3RyaW5nIHwgYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgZGlzYWJsZWQgPSBmYWxzZTtcblxuICAgIEBWaWV3Q2hpbGQoJ3Rvb2xiYXJDb250YWluZXInLCB7IHJlYWQ6IFZpZXdDb250YWluZXJSZWYsIHN0YXRpYzogdHJ1ZSB9KVxuICAgIHRvb2xiYXJDb250YWluZXI6IFZpZXdDb250YWluZXJSZWY7XG5cbiAgICBASG9zdExpc3RlbmVyKCdtb3VzZWRvd24nLCBbJyRldmVudCddKVxuICAgIHRvZ2dsZURyb3Bkb3duKGV2ZW50OiBNb3VzZUV2ZW50KSB7XG4gICAgICAgIHN1cGVyLmV4ZWN1dGUoZXZlbnQpO1xuICAgIH1cblxuICAgIEBIb3N0QmluZGluZygnY2xhc3MuZGlzYWJsZWQnKSBnZXQgZGlzYWJsZWRTdGF0ZSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBuZ1pvbmU6IE5nWm9uZSwgcHJpdmF0ZSBjZnI6IENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcikge1xuICAgICAgICBzdXBlcigpO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCkge1xuICAgICAgICBpZiAodGhpcy5pdGVtPy5xdWlja0l0ZW1Db21wb25lbnQgJiYgaXNDb21wb25lbnRUeXBlKHRoaXMuaXRlbT8ucXVpY2tJdGVtQ29tcG9uZW50KSkge1xuICAgICAgICAgICAgdGhpcy5yZW5kZXJUb29sYmFySXRlbSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXR1c0NoYW5nZShlZGl0b3I6IEVkaXRvcikge1xuICAgICAgICB0aGlzLmRpc2FibGVkID0gdGhpcy5pdGVtPy5kaXNhYmxlID8gdGhpcy5pdGVtPy5kaXNhYmxlKGVkaXRvcikgOiBmYWxzZTtcbiAgICAgICAgdGhpcy5hY3RpdmUgPSB0aGlzLml0ZW0/LmFjdGl2ZSA/IHRoaXMuaXRlbT8uYWN0aXZlKGVkaXRvcikgOiBmYWxzZTtcbiAgICB9XG5cbiAgICBleGVjdXRlKGV2ZW50OiBNb3VzZUV2ZW50KSB7XG4gICAgICAgIHN1cGVyLmV4ZWN1dGUoZXZlbnQpO1xuXG4gICAgICAgIGlmICh0aGlzLmVkaXRvcj8uZGlzYWJsZWQgfHwgdGhpcy5kaXNhYmxlZCB8fCAhdGhpcy5pdGVtPy5leGVjdXRlKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLml0ZW0/LmV4ZWN1dGUodGhpcy5lZGl0b3IpO1xuICAgIH1cblxuICAgIHJlbmRlclRvb2xiYXJJdGVtKCkge1xuICAgICAgICB0aGlzLm5nWm9uZS5ydW4oKCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgdG9vbGJhckl0ZW1GYWN0b3J5ID0gdGhpcy5jZnIucmVzb2x2ZUNvbXBvbmVudEZhY3RvcnkodGhpcy5pdGVtLnF1aWNrSXRlbUNvbXBvbmVudCk7XG4gICAgICAgICAgICBjb25zdCB0b2xsYmFySXRlbVJlZiA9IHRoaXMudG9vbGJhckNvbnRhaW5lci5jcmVhdGVDb21wb25lbnQodG9vbGJhckl0ZW1GYWN0b3J5KTtcbiAgICAgICAgICAgIHRvbGxiYXJJdGVtUmVmLmluc3RhbmNlLmVkaXRvciA9IHRoaXMuZWRpdG9yO1xuICAgICAgICAgICAgdG9sbGJhckl0ZW1SZWYuaW5zdGFuY2UuaXRlbSA9IHRoaXMuaXRlbTtcbiAgICAgICAgICAgIHRvbGxiYXJJdGVtUmVmLmluc3RhbmNlLml0ZW1Nb2RlID0gVG9vbGJhckl0ZW1Nb2RlLnZlcnRpY2FsO1xuICAgICAgICB9KTtcbiAgICB9XG59XG4iXX0=
122
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGJhci1pdGVtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3NyYy9jb21wb25lbnRzL3Rvb2xiYXItaXRlbS90b29sYmFyLWl0ZW0uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCxTQUFTLEVBRVQsV0FBVyxFQUNYLFlBQVksRUFDWixLQUFLLEVBR0wsU0FBUyxFQUNULGdCQUFnQixFQUNuQixNQUFNLGVBQWUsQ0FBQztBQUl2QixPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUMvRixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7O0FBNkJoRCxNQUFNLE9BQU8sdUJBQXdCLFNBQVEsMkJBQTJCO0lBeUJwRSxZQUFvQixNQUFjLEVBQVUsR0FBNkI7UUFDckUsS0FBSyxFQUFFLENBQUM7UUFEUSxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQVUsUUFBRyxHQUFILEdBQUcsQ0FBMEI7UUFwQmhFLGFBQVEsR0FBb0IsZUFBZSxDQUFDLFVBQVUsQ0FBQztRQUVoRSxvQkFBZSxHQUFHLGVBQWUsQ0FBQztRQUVsQyxXQUFNLEdBQXFCLEtBQUssQ0FBQztRQUVqQyxhQUFRLEdBQUcsS0FBSyxDQUFDO0lBZ0JqQixDQUFDO0lBVkQsY0FBYyxDQUFDLEtBQWlCO1FBQzVCLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDekIsQ0FBQztJQUVELElBQW1DLGFBQWE7UUFDNUMsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3pCLENBQUM7SUFNRCxRQUFROztRQUNKLElBQUksQ0FBQSxNQUFBLElBQUksQ0FBQyxJQUFJLDBDQUFFLGtCQUFrQixLQUFJLGVBQWUsQ0FBQyxNQUFBLElBQUksQ0FBQyxJQUFJLDBDQUFFLGtCQUFrQixDQUFDLEVBQUU7WUFDakYsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7U0FDNUI7SUFDTCxDQUFDO0lBRU0sWUFBWSxDQUFDLE1BQWM7O1FBQzlCLElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQSxNQUFBLElBQUksQ0FBQyxJQUFJLDBDQUFFLE9BQU8sRUFBQyxDQUFDLENBQUMsTUFBQSxJQUFJLENBQUMsSUFBSSwwQ0FBRSxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztRQUN4RSxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUEsTUFBQSxJQUFJLENBQUMsSUFBSSwwQ0FBRSxNQUFNLEVBQUMsQ0FBQyxDQUFDLE1BQUEsSUFBSSxDQUFDLElBQUksMENBQUUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7SUFDeEUsQ0FBQztJQUVELE9BQU8sQ0FBQyxLQUFpQjs7UUFDckIsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUVyQixJQUFJLENBQUEsTUFBQSxJQUFJLENBQUMsTUFBTSwwQ0FBRSxRQUFRLEtBQUksSUFBSSxDQUFDLFFBQVEsSUFBSSxDQUFDLENBQUEsTUFBQSxJQUFJLENBQUMsSUFBSSwwQ0FBRSxPQUFPLENBQUEsRUFBRTtZQUMvRCxPQUFPO1NBQ1Y7UUFFRCxNQUFBLElBQUksQ0FBQyxJQUFJLDBDQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVELGlCQUFpQjtRQUNiLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRTtZQUNqQixNQUFNLGtCQUFrQixHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1lBQzFGLE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxlQUFlLENBQUMsa0JBQWtCLENBQUMsQ0FBQztZQUNqRixjQUFjLENBQUMsUUFBUSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDO1lBQzdDLGNBQWMsQ0FBQyxRQUFRLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7WUFDekMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxRQUFRLEdBQUcsZUFBZSxDQUFDLFFBQVEsQ0FBQztRQUNoRSxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7O3FIQTFEUSx1QkFBdUI7eUdBQXZCLHVCQUF1Qix1WEFhTyxnQkFBZ0Isa0VBdEM3Qzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7S0FvQlQ7NEZBS1EsdUJBQXVCO2tCQTNCbkMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsa0JBQWtCO29CQUM1QixRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0tBb0JUO29CQUNELElBQUksRUFBRTt3QkFDRixLQUFLLEVBQUUsa0JBQWtCO3FCQUM1QjtpQkFDSjtvSUFFWSxNQUFNO3NCQUFkLEtBQUs7Z0JBRUcsSUFBSTtzQkFBWixLQUFLO2dCQUVHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBU04sZ0JBQWdCO3NCQURmLFNBQVM7dUJBQUMsa0JBQWtCLEVBQUUsRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFJdkUsY0FBYztzQkFEYixZQUFZO3VCQUFDLFdBQVcsRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkFLRixhQUFhO3NCQUEvQyxXQUFXO3VCQUFDLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ29tcG9uZW50LFxuICAgIENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcixcbiAgICBIb3N0QmluZGluZyxcbiAgICBIb3N0TGlzdGVuZXIsXG4gICAgSW5wdXQsXG4gICAgTmdab25lLFxuICAgIE9uSW5pdCxcbiAgICBWaWV3Q2hpbGQsXG4gICAgVmlld0NvbnRhaW5lclJlZlxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEVkaXRvciB9IGZyb20gJ3NsYXRlJztcbmltcG9ydCB7IFRoZUVkaXRvciwgVG9vbGJhckl0ZW0gfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7IEN1c3RvbUVkaXRvciB9IGZyb20gJy4uLy4uL2N1c3RvbS10eXBlcyc7XG5pbXBvcnQgeyBUaGVUb29sYmFyQmFzZUl0ZW1Db21wb25lbnQgfSBmcm9tICcuLi90b29sYmFyLWJhc2UtaXRlbS90b29sYmFyLWJhc2UtaXRlbS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVG9vbGJhckl0ZW1Nb2RlIH0gZnJvbSAnLi4vLi4vY29uc3RhbnRzL3Rvb2xiYXInO1xuaW1wb3J0IHsgaXNDb21wb25lbnRUeXBlIH0gZnJvbSAnc2xhdGUtYW5ndWxhcic7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndGhlLXRvb2xiYXItaXRlbScsXG4gICAgdGVtcGxhdGU6IGBcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIml0ZW1Nb2RlID09PSBUb29sYmFySXRlbU1vZGUuaG9yaXpvbnRhbDsgZWxzZSBzZWxlY3Rpb25JdGVtXCI+XG4gICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgIHRoeUljb25OYXZMaW5rXG4gICAgICAgICAgICAgICAgW3RoeUljb25OYXZMaW5rSWNvbl09XCJpdGVtLmljb25cIlxuICAgICAgICAgICAgICAgIFt0aHlUb29sdGlwXT1cInRvb2x0aXBcIlxuICAgICAgICAgICAgICAgIFt0aHlUb29sdGlwVGVtcGxhdGVDb250ZXh0XT1cInsgbmFtZTogaXRlbS5uYW1lLCBzaG9ydGN1dEtleTogaXRlbS5zaG9ydGN1dEtleSB9XCJcbiAgICAgICAgICAgICAgICB0aHlUb29sdGlwUGxhY2VtZW50PVwidG9wXCJcbiAgICAgICAgICAgICAgICBbdGh5SWNvbk5hdkxpbmtBY3RpdmVdPVwiYWN0aXZlXCJcbiAgICAgICAgICAgICAgICAobW91c2Vkb3duKT1cImV4ZWN1dGUoJGV2ZW50KVwiXG4gICAgICAgICAgICA+PC9hPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPG5nLXRlbXBsYXRlICNzZWxlY3Rpb25JdGVtPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFpdGVtPy5xdWlja0l0ZW1Db21wb25lbnRcIj5cbiAgICAgICAgICAgICAgICA8dGh5LWljb24gW3RoeUljb25OYW1lXT1cIml0ZW0/Lmljb25cIiBbdGh5SWNvblJvdGF0ZV09XCIwXCIgY2xhc3M9XCJxdWljay10b29sYmFyLWljb25cIj48L3RoeS1pY29uPlxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwicXVpY2stdG9vbGJhci1uYW1lXCI+e3sgaXRlbT8ubmFtZSB9fTwvc3Bhbj5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICA8bmctdGVtcGxhdGUgI3Rvb2x0aXAgbGV0LWRhdGE+IHt7IGRhdGEubmFtZSB9fSB7eyBkYXRhLnNob3J0Y3V0S2V5IH19IDwvbmctdGVtcGxhdGU+XG4gICAgICAgIDxuZy1jb250YWluZXIgI3Rvb2xiYXJDb250YWluZXI+PC9uZy1jb250YWluZXI+XG4gICAgYCxcbiAgICBob3N0OiB7XG4gICAgICAgIGNsYXNzOiAndGhlLXRvb2xiYXItaXRlbSdcbiAgICB9XG59KVxuZXhwb3J0IGNsYXNzIFRoZVRvb2xiYXJJdGVtQ29tcG9uZW50IGV4dGVuZHMgVGhlVG9vbGJhckJhc2VJdGVtQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBASW5wdXQoKSBlZGl0b3I6IFRoZUVkaXRvcjtcblxuICAgIEBJbnB1dCgpIGl0ZW06IFRvb2xiYXJJdGVtO1xuXG4gICAgQElucHV0KCkgaXRlbU1vZGU6IFRvb2xiYXJJdGVtTW9kZSA9IFRvb2xiYXJJdGVtTW9kZS5ob3Jpem9udGFsO1xuXG4gICAgVG9vbGJhckl0ZW1Nb2RlID0gVG9vbGJhckl0ZW1Nb2RlO1xuXG4gICAgYWN0aXZlOiBzdHJpbmcgfCBib29sZWFuID0gZmFsc2U7XG5cbiAgICBkaXNhYmxlZCA9IGZhbHNlO1xuXG4gICAgQFZpZXdDaGlsZCgndG9vbGJhckNvbnRhaW5lcicsIHsgcmVhZDogVmlld0NvbnRhaW5lclJlZiwgc3RhdGljOiB0cnVlIH0pXG4gICAgdG9vbGJhckNvbnRhaW5lcjogVmlld0NvbnRhaW5lclJlZjtcblxuICAgIEBIb3N0TGlzdGVuZXIoJ21vdXNlZG93bicsIFsnJGV2ZW50J10pXG4gICAgdG9nZ2xlRHJvcGRvd24oZXZlbnQ6IE1vdXNlRXZlbnQpIHtcbiAgICAgICAgc3VwZXIuZXhlY3V0ZShldmVudCk7XG4gICAgfVxuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5kaXNhYmxlZCcpIGdldCBkaXNhYmxlZFN0YXRlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5kaXNhYmxlZDtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIG5nWm9uZTogTmdab25lLCBwcml2YXRlIGNmcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKSB7XG4gICAgICAgIGlmICh0aGlzLml0ZW0/LnF1aWNrSXRlbUNvbXBvbmVudCAmJiBpc0NvbXBvbmVudFR5cGUodGhpcy5pdGVtPy5xdWlja0l0ZW1Db21wb25lbnQpKSB7XG4gICAgICAgICAgICB0aGlzLnJlbmRlclRvb2xiYXJJdGVtKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdHVzQ2hhbmdlKGVkaXRvcjogRWRpdG9yKSB7XG4gICAgICAgIHRoaXMuZGlzYWJsZWQgPSB0aGlzLml0ZW0/LmRpc2FibGUgPyB0aGlzLml0ZW0/LmRpc2FibGUoZWRpdG9yKSA6IGZhbHNlO1xuICAgICAgICB0aGlzLmFjdGl2ZSA9IHRoaXMuaXRlbT8uYWN0aXZlID8gdGhpcy5pdGVtPy5hY3RpdmUoZWRpdG9yKSA6IGZhbHNlO1xuICAgIH1cblxuICAgIGV4ZWN1dGUoZXZlbnQ6IE1vdXNlRXZlbnQpIHtcbiAgICAgICAgc3VwZXIuZXhlY3V0ZShldmVudCk7XG5cbiAgICAgICAgaWYgKHRoaXMuZWRpdG9yPy5kaXNhYmxlZCB8fCB0aGlzLmRpc2FibGVkIHx8ICF0aGlzLml0ZW0/LmV4ZWN1dGUpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuaXRlbT8uZXhlY3V0ZSh0aGlzLmVkaXRvcik7XG4gICAgfVxuXG4gICAgcmVuZGVyVG9vbGJhckl0ZW0oKSB7XG4gICAgICAgIHRoaXMubmdab25lLnJ1bigoKSA9PiB7XG4gICAgICAgICAgICBjb25zdCB0b29sYmFySXRlbUZhY3RvcnkgPSB0aGlzLmNmci5yZXNvbHZlQ29tcG9uZW50RmFjdG9yeSh0aGlzLml0ZW0ucXVpY2tJdGVtQ29tcG9uZW50KTtcbiAgICAgICAgICAgIGNvbnN0IHRvbGxiYXJJdGVtUmVmID0gdGhpcy50b29sYmFyQ29udGFpbmVyLmNyZWF0ZUNvbXBvbmVudCh0b29sYmFySXRlbUZhY3RvcnkpO1xuICAgICAgICAgICAgdG9sbGJhckl0ZW1SZWYuaW5zdGFuY2UuZWRpdG9yID0gdGhpcy5lZGl0b3I7XG4gICAgICAgICAgICB0b2xsYmFySXRlbVJlZi5pbnN0YW5jZS5pdGVtID0gdGhpcy5pdGVtO1xuICAgICAgICAgICAgdG9sbGJhckl0ZW1SZWYuaW5zdGFuY2UuaXRlbU1vZGUgPSBUb29sYmFySXRlbU1vZGUudmVydGljYWw7XG4gICAgICAgIH0pO1xuICAgIH1cbn1cbiJdfQ==
@@ -374,8 +374,8 @@ export class TheEditorComponent extends mixinUnsubscribe(MixinBase) {
374
374
  };
375
375
  }
376
376
  }
377
- TheEditorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: TheEditorComponent, deps: [{ token: i1.TheToolbarService }, { token: i2.TheContextService }, { token: i0.ViewContainerRef }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
378
- TheEditorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: TheEditorComponent, selector: "the-editor, theEditor", inputs: { theOptions: "theOptions", thePlugins: "thePlugins", theGlobalToolbar: "theGlobalToolbar", theDecorate: "theDecorate", theOnError: "theOnError" }, outputs: { theOnSave: "theOnSave", theOnDOMEvent: "theOnDOMEvent", theEditorCreated: "theEditorCreated" }, host: { properties: { "class.the-editor-readonly": "theOptions?.readonly" }, classAttribute: "the-editor" }, providers: [
377
+ TheEditorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TheEditorComponent, deps: [{ token: i1.TheToolbarService }, { token: i2.TheContextService }, { token: i0.ViewContainerRef }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
378
+ TheEditorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: TheEditorComponent, selector: "the-editor, theEditor", inputs: { theOptions: "theOptions", thePlugins: "thePlugins", theGlobalToolbar: "theGlobalToolbar", theDecorate: "theDecorate", theOnError: "theOnError" }, outputs: { theOnSave: "theOnSave", theOnDOMEvent: "theOnDOMEvent", theEditorCreated: "theEditorCreated" }, host: { properties: { "class.the-editor-readonly": "theOptions?.readonly" }, classAttribute: "the-editor" }, providers: [
379
379
  TheToolbarService,
380
380
  TheContextService,
381
381
  TheColorSelectService,
@@ -385,7 +385,7 @@ TheEditorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", ver
385
385
  multi: true
386
386
  }
387
387
  ], viewQueries: [{ propertyName: "templateInstance", first: true, predicate: ["templateInstance"], descendants: true, static: true }, { propertyName: "globalToolbarInstance", first: true, predicate: ["globalToolbar"], descendants: true }, { propertyName: "quickInsertInstance", first: true, predicate: ["quickInsert"], descendants: true, static: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<the-toolbar\n *ngIf=\"!theOptions?.readonly && !theGlobalToolbar\"\n [ngClass]=\"{\n 'the-toolbar-disabled': theOptions?.disabled\n }\"\n #globalToolbar\n [editor]=\"editor\"\n [toolbarItems]=\"toolbarEntity.global\"\n [containerClass]=\"globalToolbarClass\"\n [align]=\"theOptions?.toolbar?.align\"\n></the-toolbar>\n\n<div\n class=\"the-editable-container\"\n [ngClass]=\"{\n 'the-editor-disabled': theOptions?.disabled,\n 'max-height': maxHeight\n }\"\n [ngStyle]=\"{ 'max-height': maxHeight }\"\n>\n <slate-editable\n class=\"the-editor-typo\"\n [editor]=\"editor\"\n [ngModel]=\"editorValue\"\n (ngModelChange)=\"valueChange($event)\"\n [decorate]=\"decorate\"\n [placeholder]=\"theOptions?.placeholder\"\n [placeholderDecorate]=\"theOptions?.placeholderDecorate ? theOptions?.placeholderDecorate : null\"\n [renderElement]=\"renderElement\"\n [renderText]=\"renderText\"\n [renderLeaf]=\"renderLeaf\"\n [readonly]=\"theOptions?.readonly || theOptions?.disabled\"\n [keydown]=\"onKeyDown\"\n [click]=\"onClick\"\n [paste]=\"onSlaPaste\"\n [beforeInput]=\"onSlaBeforeInput\"\n [blur]=\"onSlaBlur\"\n [focus]=\"onSlaFocus\"\n [copy]=\"onSlaCopy\"\n [cut]=\"onSlaCut\"\n [isStrictDecorate]=\"false\"\n [compositionStart]=\"onSlaCompositionStart\"\n [compositionEnd]=\"onSlaCompositionEnd\"\n [dragStart]=\"onSlaDragStart\"\n [dragOver]=\"onSlaDragOver\"\n [drop]=\"onDrop\"\n (mousedown)=\"mousedown($event)\"\n ></slate-editable>\n <the-inline-toolbar\n *ngIf=\"!theOptions?.readonly && theOptions?.inlineToobarVisible\"\n [editor]=\"editor\"\n [toolbarItems]=\"toolbarEntity.inline\"\n ></the-inline-toolbar>\n <div\n #quickInsert\n theQuickInsert\n [editor]=\"editor\"\n [quickToolbarItems]=\"quickToolbarItems\"\n [isVisible]=\"theOptions?.quickInsertVisible\"\n ></div>\n <the-template #templateInstance></the-template>\n</div>\n", components: [{ type: i3.TheToolbarComponent, selector: "the-toolbar", inputs: ["editor", "toolbarItems", "align", "containerClass", "isMore", "afterTemplate"] }, { type: i4.SlateEditableComponent, selector: "slate-editable", inputs: ["editor", "renderElement", "renderLeaf", "renderText", "decorate", "placeholderDecorate", "isStrictDecorate", "trackBy", "readonly", "placeholder", "beforeInput", "blur", "click", "compositionEnd", "compositionStart", "copy", "cut", "dragOver", "dragStart", "dragEnd", "drop", "focus", "keydown", "paste", "spellCheck", "autoCorrect", "autoCapitalize"] }, { type: i5.TheInlineToolbarComponent, selector: "the-inline-toolbar", inputs: ["editor", "toolbarItems"] }, { type: i6.TheQuickInsertComponent, selector: "[theQuickInsert]", inputs: ["editor", "quickToolbarItems", "isVisible"] }, { type: i7.TheTemplateComponent, selector: "the-template,[theTemplate]" }], directives: [{ type: i8.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i8.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i8.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i9.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i9.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
388
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: TheEditorComponent, decorators: [{
388
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TheEditorComponent, decorators: [{
389
389
  type: Component,
390
390
  args: [{
391
391
  selector: 'the-editor, theEditor',
@@ -123,8 +123,8 @@ export const PLUGIN_COMPONENTS = [
123
123
  const PIPES = [ElementStylePipe, ElementClassPipe];
124
124
  export class TheEditorModule {
125
125
  }
126
- TheEditorModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: TheEditorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
127
- TheEditorModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: TheEditorModule, declarations: [TheEditorComponent, ElementStylePipe, ElementClassPipe, TheToolbarComponent,
126
+ TheEditorModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TheEditorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
127
+ TheEditorModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TheEditorModule, declarations: [TheEditorComponent, ElementStylePipe, ElementClassPipe, TheToolbarComponent,
128
128
  TheToolbarDropdownComponent,
129
129
  TheToolbarGroupComponent,
130
130
  TheToolbarItemComponent,
@@ -175,14 +175,14 @@ TheEditorModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version
175
175
  ThyAlertModule,
176
176
  ThyResizableModule,
177
177
  ThySwitchModule, CodemirrorModule, TheColumnSizeModule], exports: [TheEditorComponent, TheToolbarComponent, TheToolbarDropdownComponent, TheToolbarItemComponent, TheDefaultElementComponent] });
178
- TheEditorModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: TheEditorModule, providers: [
178
+ TheEditorModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TheEditorModule, providers: [
179
179
  {
180
180
  provide: TheToolbarGroupToken,
181
181
  useValue: TheToolbarGroupComponent
182
182
  },
183
183
  THE_CODE_MODE_PROVIDER
184
184
  ], imports: [[CommonModule, SlateModule, FormsModule, ...TETHYS, CodemirrorModule, TheColumnSizeModule]] });
185
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: TheEditorModule, decorators: [{
185
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TheEditorModule, decorators: [{
186
186
  type: NgModule,
187
187
  args: [{
188
188
  declarations: [TheEditorComponent, ...PIPES, ...COMPONENTS, ...PLUGIN_COMPONENTS],
@@ -9,9 +9,9 @@ export class TheBaseElementComponent extends BaseElementComponent {
9
9
  this.nativeElement.classList.add(`slate-element-${this.element.type}`, blockClass);
10
10
  }
11
11
  }
12
- TheBaseElementComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: TheBaseElementComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
13
- TheBaseElementComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: TheBaseElementComponent, selector: "TheBaseElementComponent", usesInheritance: true, ngImport: i0, template: '', isInline: true });
14
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: TheBaseElementComponent, decorators: [{
12
+ TheBaseElementComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TheBaseElementComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
13
+ TheBaseElementComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: TheBaseElementComponent, selector: "TheBaseElementComponent", usesInheritance: true, ngImport: i0, template: '', isInline: true });
14
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TheBaseElementComponent, decorators: [{
15
15
  type: Component,
16
16
  args: [{
17
17
  selector: 'TheBaseElementComponent',
package/esm2015/pipes.js CHANGED
@@ -13,9 +13,9 @@ export class ElementStylePipe {
13
13
  return style;
14
14
  }
15
15
  }
16
- ElementStylePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ElementStylePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
17
- ElementStylePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ElementStylePipe, name: "elementStyle" });
18
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ElementStylePipe, decorators: [{
16
+ ElementStylePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ElementStylePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
17
+ ElementStylePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ElementStylePipe, name: "elementStyle" });
18
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ElementStylePipe, decorators: [{
19
19
  type: Pipe,
20
20
  args: [{
21
21
  name: 'elementStyle'
@@ -31,9 +31,9 @@ export class ElementClassPipe {
31
31
  return classStr;
32
32
  }
33
33
  }
34
- ElementClassPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ElementClassPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
35
- ElementClassPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ElementClassPipe, name: "elementClass" });
36
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ElementClassPipe, decorators: [{
34
+ ElementClassPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ElementClassPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
35
+ ElementClassPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ElementClassPipe, name: "elementClass" });
36
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ElementClassPipe, decorators: [{
37
37
  type: Pipe,
38
38
  args: [{
39
39
  name: 'elementClass'
@@ -9,9 +9,9 @@ export class TheBlockquoteComponent extends TheBaseElementComponent {
9
9
  this.cdr = cdr;
10
10
  }
11
11
  }
12
- TheBlockquoteComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: TheBlockquoteComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
13
- TheBlockquoteComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: TheBlockquoteComponent, selector: "blockquote[theBlockquote]", usesInheritance: true, ngImport: i0, template: `<slate-children [children]="children" [context]="childrenContext" [viewContext]="viewContext"></slate-children>`, isInline: true, components: [{ type: i1.SlateChildrenComponent, selector: "slate-children", inputs: ["children", "context", "viewContext"] }] });
14
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: TheBlockquoteComponent, decorators: [{
12
+ TheBlockquoteComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TheBlockquoteComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
13
+ TheBlockquoteComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: TheBlockquoteComponent, selector: "blockquote[theBlockquote]", usesInheritance: true, ngImport: i0, template: `<slate-children [children]="children" [context]="childrenContext" [viewContext]="viewContext"></slate-children>`, isInline: true, components: [{ type: i1.SlateChildrenComponent, selector: "slate-children", inputs: ["children", "context", "viewContext"] }] });
14
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TheBlockquoteComponent, decorators: [{
15
15
  type: Component,
16
16
  args: [{
17
17
  selector: 'blockquote[theBlockquote]',