zek 16.1.15 → 16.1.17

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.
@@ -8,6 +8,8 @@ import * as i1 from "@angular/common";
8
8
  import * as i2 from "@ngx-translate/core";
9
9
  export class ZekEditToolbar {
10
10
  constructor() {
11
+ this._showSave = true;
12
+ this._showCancel = true;
11
13
  this.printType = PrintType;
12
14
  this._showExport = false;
13
15
  this._showPrint = false;
@@ -25,6 +27,18 @@ export class ZekEditToolbar {
25
27
  this.onPrint = new EventEmitter();
26
28
  this.onExport = new EventEmitter();
27
29
  }
30
+ get showSave() {
31
+ return this._showSave;
32
+ }
33
+ set showSave(v) {
34
+ this._showSave = Convert.toBooleanProperty(v);
35
+ }
36
+ get showCancel() {
37
+ return this._showCancel;
38
+ }
39
+ set showCancel(v) {
40
+ this._showCancel = Convert.toBooleanProperty(v);
41
+ }
28
42
  get showExport() {
29
43
  return this._showExport;
30
44
  }
@@ -53,12 +67,16 @@ export class ZekEditToolbar {
53
67
  this.onExport.emit(1);
54
68
  }
55
69
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: ZekEditToolbar, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
56
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: ZekEditToolbar, isStandalone: true, selector: "zek-edit-toolbar", inputs: { showExport: "showExport", showPrint: "showPrint", readOnly: "readOnly" }, outputs: { onSave: "onSave", onCancel: "onCancel", onPrint: "onPrint", onExport: "onExport" }, ngImport: i0, template: "<div class=\"btn-toolbar\" role=\"toolbar\" aria-label=\"Action toolbar\">\r\n <div class=\"btn-group me-2\" role=\"group\" aria-label=\"Save group\">\r\n <button type=\"submit\" class=\"btn btn-primary\" [disabled]=\"readOnly\"><i class=\"fa-solid fa-floppy-disk\"></i> {{ 'Action.Save' | translate }}</button>\r\n </div>\r\n <div class=\"btn-group me-2\" role=\"group\" aria-label=\"Cancel group\">\r\n <button type=\"button\" class=\"btn btn-secondary\" (click)=\"cancel()\"><i class=\"fa-solid fa-ban\"></i> {{ 'Action.Close' | translate }}</button>\r\n </div>\r\n <div *ngIf=\"showPrint\" class=\"btn-group me-2\" role=\"group\" aria-label=\"Print group\">\r\n <button type=\"button\" class=\"btn btn-secondary\" (click)=\"print(printType.Pdf)\"><i class=\"fa-solid fa-print\"></i> {{ 'Action.Print' | translate }}</button>\r\n <div class=\"btn-group\" role=\"group\">\r\n <button type=\"button\" class=\"btn btn-secondary dropdown-toggle dropdown-toggle-split\" data-bs-toggle=\"dropdown\" aria-expanded=\"false\">\r\n <span class=\"visually-hidden\">Toggle Dropdown</span>\r\n </button>\r\n <ul class=\"dropdown-menu\">\r\n <li><button type=\"button\" class=\"dropdown-item\" (click)=\"print(printType.Show)\"><i class=\"fa-solid fa-print\"></i> {{ 'Action.Print' | translate }}</button></li>\r\n <li><button type=\"button\" class=\"dropdown-item\" (click)=\"print(printType.Pdf)\"><i class=\"fa-solid fa-file-pdf\"></i> {{ 'Action.Print' | translate }} PDF</button></li>\r\n </ul>\r\n </div>\r\n </div>\r\n <div *ngIf=\"showExport\" class=\"btn-group\" role=\"group\" aria-label=\"Filter / Export group\">\r\n <div class=\"btn-group\" role=\"group\">\r\n <button id=\"btnGroupExport\" type=\"button\" class=\"btn btn-secondary dropdown-toggle\" data-bs-toggle=\"dropdown\" aria-expanded=\"false\"><i class=\"fa-solid fa-download\"></i> {{ 'Action.Export' | translate }}</button>\r\n <ul class=\"dropdown-menu\" aria-labelledby=\"btnGroupExport\">\r\n <li><a class=\"dropdown-item\" href=\"javascript:void(0)\" (click)=\"exportExcel()\"><i class=\"fa-solid fa-file-excel\"></i> Excel</a></li>\r\n </ul>\r\n </div>\r\n </div>\r\n <ng-content></ng-content>\r\n</div>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }] }); }
70
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: ZekEditToolbar, isStandalone: true, selector: "zek-edit-toolbar", inputs: { showSave: "showSave", showCancel: "showCancel", showExport: "showExport", showPrint: "showPrint", readOnly: "readOnly" }, outputs: { onSave: "onSave", onCancel: "onCancel", onPrint: "onPrint", onExport: "onExport" }, ngImport: i0, template: "<div class=\"btn-toolbar\" role=\"toolbar\" aria-label=\"Action toolbar\">\r\n <div *ngIf=\"showSave\" class=\"btn-group me-2\" role=\"group\" aria-label=\"Save group\">\r\n <button type=\"submit\" class=\"btn btn-primary\" [disabled]=\"readOnly\"><i class=\"fa-solid fa-floppy-disk\"></i> {{ 'Action.Save' | translate }}</button>\r\n </div>\r\n <div *ngIf=\"showCancel\" class=\"btn-group me-2\" role=\"group\" aria-label=\"Cancel group\">\r\n <button type=\"button\" class=\"btn btn-secondary\" (click)=\"cancel()\"><i class=\"fa-solid fa-ban\"></i> {{ 'Action.Close' | translate }}</button>\r\n </div>\r\n <div *ngIf=\"showPrint\" class=\"btn-group me-2\" role=\"group\" aria-label=\"Print group\">\r\n <button type=\"button\" class=\"btn btn-secondary\" (click)=\"print(printType.Pdf)\"><i class=\"fa-solid fa-print\"></i> {{ 'Action.Print' | translate }}</button>\r\n <div class=\"btn-group\" role=\"group\">\r\n <button type=\"button\" class=\"btn btn-secondary dropdown-toggle dropdown-toggle-split\" data-bs-toggle=\"dropdown\" aria-expanded=\"false\">\r\n <span class=\"visually-hidden\">Toggle Dropdown</span>\r\n </button>\r\n <ul class=\"dropdown-menu\">\r\n <li><button type=\"button\" class=\"dropdown-item\" (click)=\"print(printType.Show)\"><i class=\"fa-solid fa-print\"></i> {{ 'Action.Print' | translate }}</button></li>\r\n <li><button type=\"button\" class=\"dropdown-item\" (click)=\"print(printType.Pdf)\"><i class=\"fa-solid fa-file-pdf\"></i> {{ 'Action.Print' | translate }} PDF</button></li>\r\n </ul>\r\n </div>\r\n </div>\r\n <div *ngIf=\"showExport\" class=\"btn-group\" role=\"group\" aria-label=\"Filter / Export group\">\r\n <div class=\"btn-group\" role=\"group\">\r\n <button id=\"btnGroupExport\" type=\"button\" class=\"btn btn-secondary dropdown-toggle\" data-bs-toggle=\"dropdown\" aria-expanded=\"false\"><i class=\"fa-solid fa-download\"></i> {{ 'Action.Export' | translate }}</button>\r\n <ul class=\"dropdown-menu\" aria-labelledby=\"btnGroupExport\">\r\n <li><a class=\"dropdown-item\" href=\"javascript:void(0)\" (click)=\"exportExcel()\"><i class=\"fa-solid fa-file-excel\"></i> Excel</a></li>\r\n </ul>\r\n </div>\r\n </div>\r\n <ng-content></ng-content>\r\n</div>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }] }); }
57
71
  }
58
72
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: ZekEditToolbar, decorators: [{
59
73
  type: Component,
60
- args: [{ standalone: true, selector: 'zek-edit-toolbar', imports: [CommonModule, TranslateModule], template: "<div class=\"btn-toolbar\" role=\"toolbar\" aria-label=\"Action toolbar\">\r\n <div class=\"btn-group me-2\" role=\"group\" aria-label=\"Save group\">\r\n <button type=\"submit\" class=\"btn btn-primary\" [disabled]=\"readOnly\"><i class=\"fa-solid fa-floppy-disk\"></i> {{ 'Action.Save' | translate }}</button>\r\n </div>\r\n <div class=\"btn-group me-2\" role=\"group\" aria-label=\"Cancel group\">\r\n <button type=\"button\" class=\"btn btn-secondary\" (click)=\"cancel()\"><i class=\"fa-solid fa-ban\"></i> {{ 'Action.Close' | translate }}</button>\r\n </div>\r\n <div *ngIf=\"showPrint\" class=\"btn-group me-2\" role=\"group\" aria-label=\"Print group\">\r\n <button type=\"button\" class=\"btn btn-secondary\" (click)=\"print(printType.Pdf)\"><i class=\"fa-solid fa-print\"></i> {{ 'Action.Print' | translate }}</button>\r\n <div class=\"btn-group\" role=\"group\">\r\n <button type=\"button\" class=\"btn btn-secondary dropdown-toggle dropdown-toggle-split\" data-bs-toggle=\"dropdown\" aria-expanded=\"false\">\r\n <span class=\"visually-hidden\">Toggle Dropdown</span>\r\n </button>\r\n <ul class=\"dropdown-menu\">\r\n <li><button type=\"button\" class=\"dropdown-item\" (click)=\"print(printType.Show)\"><i class=\"fa-solid fa-print\"></i> {{ 'Action.Print' | translate }}</button></li>\r\n <li><button type=\"button\" class=\"dropdown-item\" (click)=\"print(printType.Pdf)\"><i class=\"fa-solid fa-file-pdf\"></i> {{ 'Action.Print' | translate }} PDF</button></li>\r\n </ul>\r\n </div>\r\n </div>\r\n <div *ngIf=\"showExport\" class=\"btn-group\" role=\"group\" aria-label=\"Filter / Export group\">\r\n <div class=\"btn-group\" role=\"group\">\r\n <button id=\"btnGroupExport\" type=\"button\" class=\"btn btn-secondary dropdown-toggle\" data-bs-toggle=\"dropdown\" aria-expanded=\"false\"><i class=\"fa-solid fa-download\"></i> {{ 'Action.Export' | translate }}</button>\r\n <ul class=\"dropdown-menu\" aria-labelledby=\"btnGroupExport\">\r\n <li><a class=\"dropdown-item\" href=\"javascript:void(0)\" (click)=\"exportExcel()\"><i class=\"fa-solid fa-file-excel\"></i> Excel</a></li>\r\n </ul>\r\n </div>\r\n </div>\r\n <ng-content></ng-content>\r\n</div>" }]
61
- }], propDecorators: { showExport: [{
74
+ args: [{ standalone: true, selector: 'zek-edit-toolbar', imports: [CommonModule, TranslateModule], template: "<div class=\"btn-toolbar\" role=\"toolbar\" aria-label=\"Action toolbar\">\r\n <div *ngIf=\"showSave\" class=\"btn-group me-2\" role=\"group\" aria-label=\"Save group\">\r\n <button type=\"submit\" class=\"btn btn-primary\" [disabled]=\"readOnly\"><i class=\"fa-solid fa-floppy-disk\"></i> {{ 'Action.Save' | translate }}</button>\r\n </div>\r\n <div *ngIf=\"showCancel\" class=\"btn-group me-2\" role=\"group\" aria-label=\"Cancel group\">\r\n <button type=\"button\" class=\"btn btn-secondary\" (click)=\"cancel()\"><i class=\"fa-solid fa-ban\"></i> {{ 'Action.Close' | translate }}</button>\r\n </div>\r\n <div *ngIf=\"showPrint\" class=\"btn-group me-2\" role=\"group\" aria-label=\"Print group\">\r\n <button type=\"button\" class=\"btn btn-secondary\" (click)=\"print(printType.Pdf)\"><i class=\"fa-solid fa-print\"></i> {{ 'Action.Print' | translate }}</button>\r\n <div class=\"btn-group\" role=\"group\">\r\n <button type=\"button\" class=\"btn btn-secondary dropdown-toggle dropdown-toggle-split\" data-bs-toggle=\"dropdown\" aria-expanded=\"false\">\r\n <span class=\"visually-hidden\">Toggle Dropdown</span>\r\n </button>\r\n <ul class=\"dropdown-menu\">\r\n <li><button type=\"button\" class=\"dropdown-item\" (click)=\"print(printType.Show)\"><i class=\"fa-solid fa-print\"></i> {{ 'Action.Print' | translate }}</button></li>\r\n <li><button type=\"button\" class=\"dropdown-item\" (click)=\"print(printType.Pdf)\"><i class=\"fa-solid fa-file-pdf\"></i> {{ 'Action.Print' | translate }} PDF</button></li>\r\n </ul>\r\n </div>\r\n </div>\r\n <div *ngIf=\"showExport\" class=\"btn-group\" role=\"group\" aria-label=\"Filter / Export group\">\r\n <div class=\"btn-group\" role=\"group\">\r\n <button id=\"btnGroupExport\" type=\"button\" class=\"btn btn-secondary dropdown-toggle\" data-bs-toggle=\"dropdown\" aria-expanded=\"false\"><i class=\"fa-solid fa-download\"></i> {{ 'Action.Export' | translate }}</button>\r\n <ul class=\"dropdown-menu\" aria-labelledby=\"btnGroupExport\">\r\n <li><a class=\"dropdown-item\" href=\"javascript:void(0)\" (click)=\"exportExcel()\"><i class=\"fa-solid fa-file-excel\"></i> Excel</a></li>\r\n </ul>\r\n </div>\r\n </div>\r\n <ng-content></ng-content>\r\n</div>" }]
75
+ }], propDecorators: { showSave: [{
76
+ type: Input
77
+ }], showCancel: [{
78
+ type: Input
79
+ }], showExport: [{
62
80
  type: Input
63
81
  }], showPrint: [{
64
82
  type: Input
@@ -73,4 +91,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImpor
73
91
  }], onExport: [{
74
92
  type: Output
75
93
  }] } });
76
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdC10b29sYmFyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvemVrL3NyYy9saWIvbW9kdWxlcy9lZGl0LXRvb2xiYXIvZWRpdC10b29sYmFyLnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvemVrL3NyYy9saWIvbW9kdWxlcy9lZGl0LXRvb2xiYXIvZWRpdC10b29sYmFyLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV2RSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDckQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUN0QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7O0FBUS9DLE1BQU0sT0FBTyxjQUFjO0lBTjNCO1FBUUksY0FBUyxHQUFHLFNBQVMsQ0FBQztRQUVkLGdCQUFXLEdBQUcsS0FBSyxDQUFDO1FBVXBCLGVBQVUsR0FBRyxLQUFLLENBQUM7UUFTbkIsY0FBUyxHQUFZLEtBQUssQ0FBQztRQVN6QixXQUFNLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUN0Qyx1Q0FBdUM7UUFDdkMsNkNBQTZDO1FBQzdDLElBQUk7UUFFTSxhQUFRLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUt4QyxZQUFZO1FBQ1osZ0NBQWdDO1FBQ2hDLFlBQVk7UUFDWiwyQkFBMkI7UUFDM0IsSUFBSTtRQUVNLFlBQU8sR0FBRyxJQUFJLFlBQVksRUFBYSxDQUFDO1FBTXhDLGFBQVEsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO0tBSW5EO0lBckRHLElBQ0ksVUFBVTtRQUNWLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQztJQUM1QixDQUFDO0lBQ0QsSUFBSSxVQUFVLENBQUMsQ0FBZTtRQUMxQixJQUFJLENBQUMsV0FBVyxHQUFHLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNwRCxDQUFDO0lBSUQsSUFDSSxTQUFTO1FBQ1QsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDO0lBQzNCLENBQUM7SUFDRCxJQUFJLFNBQVMsQ0FBQyxDQUFlO1FBQ3pCLElBQUksQ0FBQyxVQUFVLEdBQUcsT0FBTyxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFHRCxJQUNJLFFBQVE7UUFDUixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDMUIsQ0FBQztJQUNELElBQUksUUFBUSxDQUFDLENBQWU7UUFDeEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxPQUFPLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDbEQsQ0FBQztJQVFELE1BQU07UUFDRixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFTRCxLQUFLLENBQUMsU0FBcUI7UUFDdkIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUlELFdBQVc7UUFDUCxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMxQixDQUFDOzhHQXpEUSxjQUFjO2tHQUFkLGNBQWMsK1BDYjNCLGsxRUE0Qk0sMkNEakJRLFlBQVksa0lBQUUsZUFBZTs7MkZBRTlCLGNBQWM7a0JBTjFCLFNBQVM7aUNBQ00sSUFBSSxZQUNOLGtCQUFrQixXQUVuQixDQUFDLFlBQVksRUFBRSxlQUFlLENBQUM7OEJBUXBDLFVBQVU7c0JBRGIsS0FBSztnQkFXRixTQUFTO3NCQURaLEtBQUs7Z0JBVUYsUUFBUTtzQkFEWCxLQUFLO2dCQVFJLE1BQU07c0JBQWYsTUFBTTtnQkFLRyxRQUFRO3NCQUFqQixNQUFNO2dCQVdHLE9BQU87c0JBQWhCLE1BQU07Z0JBTUcsUUFBUTtzQkFBakIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEJvb2xlYW5JbnB1dCB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMnO1xyXG5pbXBvcnQgeyBQcmludFR5cGUgfSBmcm9tICcuLi8uLi9tb2RlbHMvcHJpbnQubW9kZWwnO1xyXG5pbXBvcnQgeyBDb252ZXJ0IH0gZnJvbSAnLi4vLi4vdXRpbHMnO1xyXG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICAgIHNlbGVjdG9yOiAnemVrLWVkaXQtdG9vbGJhcicsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vZWRpdC10b29sYmFyLmh0bWwnLFxyXG4gICAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgVHJhbnNsYXRlTW9kdWxlXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgWmVrRWRpdFRvb2xiYXIge1xyXG5cclxuICAgIHByaW50VHlwZSA9IFByaW50VHlwZTtcclxuXHJcbiAgICBwcml2YXRlIF9zaG93RXhwb3J0ID0gZmFsc2U7XHJcbiAgICBASW5wdXQoKVxyXG4gICAgZ2V0IHNob3dFeHBvcnQoKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Nob3dFeHBvcnQ7XHJcbiAgICB9XHJcbiAgICBzZXQgc2hvd0V4cG9ydCh2OiBCb29sZWFuSW5wdXQpIHtcclxuICAgICAgICB0aGlzLl9zaG93RXhwb3J0ID0gQ29udmVydC50b0Jvb2xlYW5Qcm9wZXJ0eSh2KTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgcHJpdmF0ZSBfc2hvd1ByaW50ID0gZmFsc2U7XHJcbiAgICBASW5wdXQoKVxyXG4gICAgZ2V0IHNob3dQcmludCgpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fc2hvd1ByaW50O1xyXG4gICAgfVxyXG4gICAgc2V0IHNob3dQcmludCh2OiBCb29sZWFuSW5wdXQpIHtcclxuICAgICAgICB0aGlzLl9zaG93UHJpbnQgPSBDb252ZXJ0LnRvQm9vbGVhblByb3BlcnR5KHYpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgX3JlYWRPbmx5OiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBASW5wdXQoKVxyXG4gICAgZ2V0IHJlYWRPbmx5KCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9yZWFkT25seTtcclxuICAgIH1cclxuICAgIHNldCByZWFkT25seSh2OiBCb29sZWFuSW5wdXQpIHtcclxuICAgICAgICB0aGlzLl9yZWFkT25seSA9IENvbnZlcnQudG9Cb29sZWFuUHJvcGVydHkodik7XHJcbiAgICB9XHJcblxyXG4gICAgQE91dHB1dCgpIG9uU2F2ZSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICAgIC8vIHNhdmUobmF2aWdhdGVUb1JldHVyblVybDogYm9vbGVhbikge1xyXG4gICAgLy8gICAgIHRoaXMub25TYXZlLmVtaXQobmF2aWdhdGVUb1JldHVyblVybCk7XHJcbiAgICAvLyB9XHJcblxyXG4gICAgQE91dHB1dCgpIG9uQ2FuY2VsID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gICAgY2FuY2VsKCkge1xyXG4gICAgICAgIHRoaXMub25DYW5jZWwuZW1pdCgpO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIEBPdXRwdXQoKVxyXG4gICAgLy8gb25SZXNldCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICAgIC8vIHJlc2V0KCkge1xyXG4gICAgLy8gICAgIHRoaXMub25SZXNldC5lbWl0KCk7XHJcbiAgICAvLyB9XHJcblxyXG4gICAgQE91dHB1dCgpIG9uUHJpbnQgPSBuZXcgRXZlbnRFbWl0dGVyPFByaW50VHlwZT4oKTtcclxuICAgIHByaW50KHByaW50VHlwZT86IFByaW50VHlwZSkge1xyXG4gICAgICAgIHRoaXMub25QcmludC5lbWl0KHByaW50VHlwZSk7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIEBPdXRwdXQoKSBvbkV4cG9ydCA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xyXG4gICAgZXhwb3J0RXhjZWwoKSB7XHJcbiAgICAgICAgdGhpcy5vbkV4cG9ydC5lbWl0KDEpO1xyXG4gICAgfVxyXG59IiwiPGRpdiBjbGFzcz1cImJ0bi10b29sYmFyXCIgcm9sZT1cInRvb2xiYXJcIiBhcmlhLWxhYmVsPVwiQWN0aW9uIHRvb2xiYXJcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJidG4tZ3JvdXAgbWUtMlwiIHJvbGU9XCJncm91cFwiIGFyaWEtbGFiZWw9XCJTYXZlIGdyb3VwXCI+XHJcbiAgICAgICAgPGJ1dHRvbiB0eXBlPVwic3VibWl0XCIgY2xhc3M9XCJidG4gYnRuLXByaW1hcnlcIiBbZGlzYWJsZWRdPVwicmVhZE9ubHlcIj48aSBjbGFzcz1cImZhLXNvbGlkIGZhLWZsb3BweS1kaXNrXCI+PC9pPiB7eyAnQWN0aW9uLlNhdmUnIHwgdHJhbnNsYXRlIH19PC9idXR0b24+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJidG4tZ3JvdXAgbWUtMlwiIHJvbGU9XCJncm91cFwiIGFyaWEtbGFiZWw9XCJDYW5jZWwgZ3JvdXBcIj5cclxuICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImJ0biBidG4tc2Vjb25kYXJ5XCIgKGNsaWNrKT1cImNhbmNlbCgpXCI+PGkgY2xhc3M9XCJmYS1zb2xpZCBmYS1iYW5cIj48L2k+IHt7ICdBY3Rpb24uQ2xvc2UnIHwgdHJhbnNsYXRlIH19PC9idXR0b24+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgKm5nSWY9XCJzaG93UHJpbnRcIiBjbGFzcz1cImJ0bi1ncm91cCBtZS0yXCIgcm9sZT1cImdyb3VwXCIgYXJpYS1sYWJlbD1cIlByaW50IGdyb3VwXCI+XHJcbiAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJidG4gYnRuLXNlY29uZGFyeVwiIChjbGljayk9XCJwcmludChwcmludFR5cGUuUGRmKVwiPjxpIGNsYXNzPVwiZmEtc29saWQgZmEtcHJpbnRcIj48L2k+IHt7ICdBY3Rpb24uUHJpbnQnIHwgdHJhbnNsYXRlIH19PC9idXR0b24+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImJ0bi1ncm91cFwiIHJvbGU9XCJncm91cFwiPlxyXG4gICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImJ0biBidG4tc2Vjb25kYXJ5IGRyb3Bkb3duLXRvZ2dsZSBkcm9wZG93bi10b2dnbGUtc3BsaXRcIiBkYXRhLWJzLXRvZ2dsZT1cImRyb3Bkb3duXCIgYXJpYS1leHBhbmRlZD1cImZhbHNlXCI+XHJcbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInZpc3VhbGx5LWhpZGRlblwiPlRvZ2dsZSBEcm9wZG93bjwvc3Bhbj5cclxuICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICAgIDx1bCBjbGFzcz1cImRyb3Bkb3duLW1lbnVcIj5cclxuICAgICAgICAgICAgICAgIDxsaT48YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImRyb3Bkb3duLWl0ZW1cIiAoY2xpY2spPVwicHJpbnQocHJpbnRUeXBlLlNob3cpXCI+PGkgY2xhc3M9XCJmYS1zb2xpZCBmYS1wcmludFwiPjwvaT4ge3sgJ0FjdGlvbi5QcmludCcgfCB0cmFuc2xhdGUgfX08L2J1dHRvbj48L2xpPlxyXG4gICAgICAgICAgICAgICAgPGxpPjxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiZHJvcGRvd24taXRlbVwiIChjbGljayk9XCJwcmludChwcmludFR5cGUuUGRmKVwiPjxpIGNsYXNzPVwiZmEtc29saWQgZmEtZmlsZS1wZGZcIj48L2k+IHt7ICdBY3Rpb24uUHJpbnQnIHwgdHJhbnNsYXRlIH19IFBERjwvYnV0dG9uPjwvbGk+XHJcbiAgICAgICAgICAgIDwvdWw+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgKm5nSWY9XCJzaG93RXhwb3J0XCIgY2xhc3M9XCJidG4tZ3JvdXBcIiByb2xlPVwiZ3JvdXBcIiBhcmlhLWxhYmVsPVwiRmlsdGVyIC8gRXhwb3J0IGdyb3VwXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImJ0bi1ncm91cFwiIHJvbGU9XCJncm91cFwiPlxyXG4gICAgICAgICAgICA8YnV0dG9uIGlkPVwiYnRuR3JvdXBFeHBvcnRcIiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJidG4gYnRuLXNlY29uZGFyeSBkcm9wZG93bi10b2dnbGVcIiBkYXRhLWJzLXRvZ2dsZT1cImRyb3Bkb3duXCIgYXJpYS1leHBhbmRlZD1cImZhbHNlXCI+PGkgY2xhc3M9XCJmYS1zb2xpZCBmYS1kb3dubG9hZFwiPjwvaT4ge3sgJ0FjdGlvbi5FeHBvcnQnIHwgdHJhbnNsYXRlIH19PC9idXR0b24+XHJcbiAgICAgICAgICAgIDx1bCBjbGFzcz1cImRyb3Bkb3duLW1lbnVcIiBhcmlhLWxhYmVsbGVkYnk9XCJidG5Hcm91cEV4cG9ydFwiPlxyXG4gICAgICAgICAgICAgICAgPGxpPjxhIGNsYXNzPVwiZHJvcGRvd24taXRlbVwiIGhyZWY9XCJqYXZhc2NyaXB0OnZvaWQoMClcIiAoY2xpY2spPVwiZXhwb3J0RXhjZWwoKVwiPjxpIGNsYXNzPVwiZmEtc29saWQgZmEtZmlsZS1leGNlbFwiPjwvaT4gRXhjZWw8L2E+PC9saT5cclxuICAgICAgICAgICAgPC91bD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxyXG48L2Rpdj4iXX0=
94
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdC10b29sYmFyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvemVrL3NyYy9saWIvbW9kdWxlcy9lZGl0LXRvb2xiYXIvZWRpdC10b29sYmFyLnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvemVrL3NyYy9saWIvbW9kdWxlcy9lZGl0LXRvb2xiYXIvZWRpdC10b29sYmFyLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV2RSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDckQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUN0QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7O0FBUS9DLE1BQU0sT0FBTyxjQUFjO0lBTjNCO1FBUVksY0FBUyxHQUFHLElBQUksQ0FBQztRQVNqQixnQkFBVyxHQUFHLElBQUksQ0FBQztRQVUzQixjQUFTLEdBQUcsU0FBUyxDQUFDO1FBRWQsZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFVcEIsZUFBVSxHQUFHLEtBQUssQ0FBQztRQVNuQixjQUFTLEdBQUcsS0FBSyxDQUFDO1FBU2hCLFdBQU0sR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ3RDLHVDQUF1QztRQUN2Qyw2Q0FBNkM7UUFDN0MsSUFBSTtRQUVNLGFBQVEsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBS3hDLFlBQVk7UUFDWixnQ0FBZ0M7UUFDaEMsWUFBWTtRQUNaLDJCQUEyQjtRQUMzQixJQUFJO1FBRU0sWUFBTyxHQUFHLElBQUksWUFBWSxFQUFhLENBQUM7UUFNeEMsYUFBUSxHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7S0FJbkQ7SUExRUcsSUFDSSxRQUFRO1FBQ1IsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQzFCLENBQUM7SUFDRCxJQUFJLFFBQVEsQ0FBQyxDQUFlO1FBQ3hCLElBQUksQ0FBQyxTQUFTLEdBQUcsT0FBTyxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFHRCxJQUNJLFVBQVU7UUFDVixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDNUIsQ0FBQztJQUNELElBQUksVUFBVSxDQUFDLENBQWU7UUFDMUIsSUFBSSxDQUFDLFdBQVcsR0FBRyxPQUFPLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDcEQsQ0FBQztJQU1ELElBQ0ksVUFBVTtRQUNWLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQztJQUM1QixDQUFDO0lBQ0QsSUFBSSxVQUFVLENBQUMsQ0FBZTtRQUMxQixJQUFJLENBQUMsV0FBVyxHQUFHLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNwRCxDQUFDO0lBSUQsSUFDSSxTQUFTO1FBQ1QsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDO0lBQzNCLENBQUM7SUFDRCxJQUFJLFNBQVMsQ0FBQyxDQUFlO1FBQ3pCLElBQUksQ0FBQyxVQUFVLEdBQUcsT0FBTyxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFHRCxJQUNJLFFBQVE7UUFDUixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDMUIsQ0FBQztJQUNELElBQUksUUFBUSxDQUFDLENBQWU7UUFDeEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxPQUFPLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDbEQsQ0FBQztJQVFELE1BQU07UUFDRixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFTRCxLQUFLLENBQUMsU0FBcUI7UUFDdkIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUlELFdBQVc7UUFDUCxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMxQixDQUFDOzhHQTVFUSxjQUFjO2tHQUFkLGNBQWMsK1NDYjNCLDIzRUE0Qk0sMkNEakJRLFlBQVksa0lBQUUsZUFBZTs7MkZBRTlCLGNBQWM7a0JBTjFCLFNBQVM7aUNBQ00sSUFBSSxZQUNOLGtCQUFrQixXQUVuQixDQUFDLFlBQVksRUFBRSxlQUFlLENBQUM7OEJBTXBDLFFBQVE7c0JBRFgsS0FBSztnQkFVRixVQUFVO3NCQURiLEtBQUs7Z0JBYUYsVUFBVTtzQkFEYixLQUFLO2dCQVdGLFNBQVM7c0JBRFosS0FBSztnQkFVRixRQUFRO3NCQURYLEtBQUs7Z0JBUUksTUFBTTtzQkFBZixNQUFNO2dCQUtHLFFBQVE7c0JBQWpCLE1BQU07Z0JBV0csT0FBTztzQkFBaEIsTUFBTTtnQkFNRyxRQUFRO3NCQUFqQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPdXRwdXQsIEV2ZW50RW1pdHRlciwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQm9vbGVhbklucHV0IH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cyc7XHJcbmltcG9ydCB7IFByaW50VHlwZSB9IGZyb20gJy4uLy4uL21vZGVscy9wcmludC5tb2RlbCc7XHJcbmltcG9ydCB7IENvbnZlcnQgfSBmcm9tICcuLi8uLi91dGlscyc7XHJcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gICAgc2VsZWN0b3I6ICd6ZWstZWRpdC10b29sYmFyJyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi9lZGl0LXRvb2xiYXIuaHRtbCcsXHJcbiAgICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBUcmFuc2xhdGVNb2R1bGVdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBaZWtFZGl0VG9vbGJhciB7XHJcblxyXG4gICAgcHJpdmF0ZSBfc2hvd1NhdmUgPSB0cnVlO1xyXG4gICAgQElucHV0KClcclxuICAgIGdldCBzaG93U2F2ZSgpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fc2hvd1NhdmU7XHJcbiAgICB9XHJcbiAgICBzZXQgc2hvd1NhdmUodjogQm9vbGVhbklucHV0KSB7XHJcbiAgICAgICAgdGhpcy5fc2hvd1NhdmUgPSBDb252ZXJ0LnRvQm9vbGVhblByb3BlcnR5KHYpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgX3Nob3dDYW5jZWwgPSB0cnVlO1xyXG4gICAgQElucHV0KClcclxuICAgIGdldCBzaG93Q2FuY2VsKCkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9zaG93Q2FuY2VsO1xyXG4gICAgfVxyXG4gICAgc2V0IHNob3dDYW5jZWwodjogQm9vbGVhbklucHV0KSB7XHJcbiAgICAgICAgdGhpcy5fc2hvd0NhbmNlbCA9IENvbnZlcnQudG9Cb29sZWFuUHJvcGVydHkodik7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIHByaW50VHlwZSA9IFByaW50VHlwZTtcclxuXHJcbiAgICBwcml2YXRlIF9zaG93RXhwb3J0ID0gZmFsc2U7XHJcbiAgICBASW5wdXQoKVxyXG4gICAgZ2V0IHNob3dFeHBvcnQoKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Nob3dFeHBvcnQ7XHJcbiAgICB9XHJcbiAgICBzZXQgc2hvd0V4cG9ydCh2OiBCb29sZWFuSW5wdXQpIHtcclxuICAgICAgICB0aGlzLl9zaG93RXhwb3J0ID0gQ29udmVydC50b0Jvb2xlYW5Qcm9wZXJ0eSh2KTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgcHJpdmF0ZSBfc2hvd1ByaW50ID0gZmFsc2U7XHJcbiAgICBASW5wdXQoKVxyXG4gICAgZ2V0IHNob3dQcmludCgpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fc2hvd1ByaW50O1xyXG4gICAgfVxyXG4gICAgc2V0IHNob3dQcmludCh2OiBCb29sZWFuSW5wdXQpIHtcclxuICAgICAgICB0aGlzLl9zaG93UHJpbnQgPSBDb252ZXJ0LnRvQm9vbGVhblByb3BlcnR5KHYpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgX3JlYWRPbmx5ID0gZmFsc2U7XHJcbiAgICBASW5wdXQoKVxyXG4gICAgZ2V0IHJlYWRPbmx5KCkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9yZWFkT25seTtcclxuICAgIH1cclxuICAgIHNldCByZWFkT25seSh2OiBCb29sZWFuSW5wdXQpIHtcclxuICAgICAgICB0aGlzLl9yZWFkT25seSA9IENvbnZlcnQudG9Cb29sZWFuUHJvcGVydHkodik7XHJcbiAgICB9XHJcblxyXG4gICAgQE91dHB1dCgpIG9uU2F2ZSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICAgIC8vIHNhdmUobmF2aWdhdGVUb1JldHVyblVybDogYm9vbGVhbikge1xyXG4gICAgLy8gICAgIHRoaXMub25TYXZlLmVtaXQobmF2aWdhdGVUb1JldHVyblVybCk7XHJcbiAgICAvLyB9XHJcblxyXG4gICAgQE91dHB1dCgpIG9uQ2FuY2VsID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gICAgY2FuY2VsKCkge1xyXG4gICAgICAgIHRoaXMub25DYW5jZWwuZW1pdCgpO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIEBPdXRwdXQoKVxyXG4gICAgLy8gb25SZXNldCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICAgIC8vIHJlc2V0KCkge1xyXG4gICAgLy8gICAgIHRoaXMub25SZXNldC5lbWl0KCk7XHJcbiAgICAvLyB9XHJcblxyXG4gICAgQE91dHB1dCgpIG9uUHJpbnQgPSBuZXcgRXZlbnRFbWl0dGVyPFByaW50VHlwZT4oKTtcclxuICAgIHByaW50KHByaW50VHlwZT86IFByaW50VHlwZSkge1xyXG4gICAgICAgIHRoaXMub25QcmludC5lbWl0KHByaW50VHlwZSk7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIEBPdXRwdXQoKSBvbkV4cG9ydCA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xyXG4gICAgZXhwb3J0RXhjZWwoKSB7XHJcbiAgICAgICAgdGhpcy5vbkV4cG9ydC5lbWl0KDEpO1xyXG4gICAgfVxyXG59IiwiPGRpdiBjbGFzcz1cImJ0bi10b29sYmFyXCIgcm9sZT1cInRvb2xiYXJcIiBhcmlhLWxhYmVsPVwiQWN0aW9uIHRvb2xiYXJcIj5cclxuICAgIDxkaXYgKm5nSWY9XCJzaG93U2F2ZVwiIGNsYXNzPVwiYnRuLWdyb3VwIG1lLTJcIiByb2xlPVwiZ3JvdXBcIiBhcmlhLWxhYmVsPVwiU2F2ZSBncm91cFwiPlxyXG4gICAgICAgIDxidXR0b24gdHlwZT1cInN1Ym1pdFwiIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5XCIgW2Rpc2FibGVkXT1cInJlYWRPbmx5XCI+PGkgY2xhc3M9XCJmYS1zb2xpZCBmYS1mbG9wcHktZGlza1wiPjwvaT4ge3sgJ0FjdGlvbi5TYXZlJyB8IHRyYW5zbGF0ZSB9fTwvYnV0dG9uPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2ICAqbmdJZj1cInNob3dDYW5jZWxcIiBjbGFzcz1cImJ0bi1ncm91cCBtZS0yXCIgcm9sZT1cImdyb3VwXCIgYXJpYS1sYWJlbD1cIkNhbmNlbCBncm91cFwiPlxyXG4gICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiYnRuIGJ0bi1zZWNvbmRhcnlcIiAoY2xpY2spPVwiY2FuY2VsKClcIj48aSBjbGFzcz1cImZhLXNvbGlkIGZhLWJhblwiPjwvaT4ge3sgJ0FjdGlvbi5DbG9zZScgfCB0cmFuc2xhdGUgfX08L2J1dHRvbj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiAqbmdJZj1cInNob3dQcmludFwiIGNsYXNzPVwiYnRuLWdyb3VwIG1lLTJcIiByb2xlPVwiZ3JvdXBcIiBhcmlhLWxhYmVsPVwiUHJpbnQgZ3JvdXBcIj5cclxuICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImJ0biBidG4tc2Vjb25kYXJ5XCIgKGNsaWNrKT1cInByaW50KHByaW50VHlwZS5QZGYpXCI+PGkgY2xhc3M9XCJmYS1zb2xpZCBmYS1wcmludFwiPjwvaT4ge3sgJ0FjdGlvbi5QcmludCcgfCB0cmFuc2xhdGUgfX08L2J1dHRvbj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiYnRuLWdyb3VwXCIgcm9sZT1cImdyb3VwXCI+XHJcbiAgICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiYnRuIGJ0bi1zZWNvbmRhcnkgZHJvcGRvd24tdG9nZ2xlIGRyb3Bkb3duLXRvZ2dsZS1zcGxpdFwiIGRhdGEtYnMtdG9nZ2xlPVwiZHJvcGRvd25cIiBhcmlhLWV4cGFuZGVkPVwiZmFsc2VcIj5cclxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidmlzdWFsbHktaGlkZGVuXCI+VG9nZ2xlIERyb3Bkb3duPC9zcGFuPlxyXG4gICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgPHVsIGNsYXNzPVwiZHJvcGRvd24tbWVudVwiPlxyXG4gICAgICAgICAgICAgICAgPGxpPjxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiZHJvcGRvd24taXRlbVwiIChjbGljayk9XCJwcmludChwcmludFR5cGUuU2hvdylcIj48aSBjbGFzcz1cImZhLXNvbGlkIGZhLXByaW50XCI+PC9pPiB7eyAnQWN0aW9uLlByaW50JyB8IHRyYW5zbGF0ZSB9fTwvYnV0dG9uPjwvbGk+XHJcbiAgICAgICAgICAgICAgICA8bGk+PGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJkcm9wZG93bi1pdGVtXCIgKGNsaWNrKT1cInByaW50KHByaW50VHlwZS5QZGYpXCI+PGkgY2xhc3M9XCJmYS1zb2xpZCBmYS1maWxlLXBkZlwiPjwvaT4ge3sgJ0FjdGlvbi5QcmludCcgfCB0cmFuc2xhdGUgfX0gUERGPC9idXR0b24+PC9saT5cclxuICAgICAgICAgICAgPC91bD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiAqbmdJZj1cInNob3dFeHBvcnRcIiBjbGFzcz1cImJ0bi1ncm91cFwiIHJvbGU9XCJncm91cFwiIGFyaWEtbGFiZWw9XCJGaWx0ZXIgLyBFeHBvcnQgZ3JvdXBcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiYnRuLWdyb3VwXCIgcm9sZT1cImdyb3VwXCI+XHJcbiAgICAgICAgICAgIDxidXR0b24gaWQ9XCJidG5Hcm91cEV4cG9ydFwiIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImJ0biBidG4tc2Vjb25kYXJ5IGRyb3Bkb3duLXRvZ2dsZVwiIGRhdGEtYnMtdG9nZ2xlPVwiZHJvcGRvd25cIiBhcmlhLWV4cGFuZGVkPVwiZmFsc2VcIj48aSBjbGFzcz1cImZhLXNvbGlkIGZhLWRvd25sb2FkXCI+PC9pPiB7eyAnQWN0aW9uLkV4cG9ydCcgfCB0cmFuc2xhdGUgfX08L2J1dHRvbj5cclxuICAgICAgICAgICAgPHVsIGNsYXNzPVwiZHJvcGRvd24tbWVudVwiIGFyaWEtbGFiZWxsZWRieT1cImJ0bkdyb3VwRXhwb3J0XCI+XHJcbiAgICAgICAgICAgICAgICA8bGk+PGEgY2xhc3M9XCJkcm9wZG93bi1pdGVtXCIgaHJlZj1cImphdmFzY3JpcHQ6dm9pZCgwKVwiIChjbGljayk9XCJleHBvcnRFeGNlbCgpXCI+PGkgY2xhc3M9XCJmYS1zb2xpZCBmYS1maWxlLWV4Y2VsXCI+PC9pPiBFeGNlbDwvYT48L2xpPlxyXG4gICAgICAgICAgICA8L3VsPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XHJcbjwvZGl2PiJdfQ==
@@ -4,16 +4,18 @@ import { GOOGLE_CLIENT_ID } from "../../tokens";
4
4
  import { CoreComponent } from "../../components";
5
5
  import { Convert } from "../../utils";
6
6
  import * as i0 from "@angular/core";
7
+ let uniqueId = 0;
7
8
  export class ZekGoogleLoginButton extends CoreComponent {
8
9
  constructor(client_id) {
9
10
  super();
10
11
  this.client_id = client_id;
12
+ this._uniqueId = `zek-google-button-container-${++uniqueId}`;
13
+ this.id = this._uniqueId;
11
14
  this._prompt = true;
12
15
  this._autoSelect = false;
13
16
  this._cancelOnTapOutside = true;
14
17
  this.onLoginResponse = new EventEmitter();
15
18
  this.onLogin = new EventEmitter();
16
- this._buttonContainer = 'google-login-container';
17
19
  this.onLoadComplete = (google) => {
18
20
  this.google = google;
19
21
  this.initialize();
@@ -49,14 +51,6 @@ export class ZekGoogleLoginButton extends CoreComponent {
49
51
  set text(v) {
50
52
  this._text = v;
51
53
  }
52
- get buttonContainer() {
53
- return this._buttonContainer;
54
- }
55
- set buttonContainer(v) {
56
- if (!v)
57
- throw new Error('buttonContainer is required');
58
- this._buttonContainer = v;
59
- }
60
54
  async init() {
61
55
  super.init();
62
56
  // await GoogleLoginButton.loadScript();
@@ -77,8 +71,10 @@ export class ZekGoogleLoginButton extends CoreComponent {
77
71
  auto_select: this._autoSelect,
78
72
  cancel_on_tap_outside: this._cancelOnTapOutside,
79
73
  });
80
- this.renderButton();
81
- this.autoPrompt();
74
+ setTimeout(() => {
75
+ this.renderButton();
76
+ this.autoPrompt();
77
+ });
82
78
  }
83
79
  renderButton() {
84
80
  let options = { theme: "outline", size: "large" };
@@ -86,7 +82,7 @@ export class ZekGoogleLoginButton extends CoreComponent {
86
82
  options.width = this._width;
87
83
  if (this._text)
88
84
  options.text = this._text;
89
- this.google.accounts.id.renderButton(document.getElementById(this._buttonContainer),
85
+ this.google.accounts.id.renderButton(document.getElementById(this.id),
90
86
  // this._elementRef.nativeElement.parentElement,
91
87
  options // customization attributes
92
88
  );
@@ -107,17 +103,22 @@ export class ZekGoogleLoginButton extends CoreComponent {
107
103
  // console.log("Email: " + payload.email);
108
104
  }
109
105
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: ZekGoogleLoginButton, deps: [{ token: GOOGLE_CLIENT_ID }], target: i0.ɵɵFactoryTarget.Directive }); }
110
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.7", type: ZekGoogleLoginButton, selector: "zek-google-login", inputs: { prompt: "prompt", autoSelect: "autoSelect", cancelOnTapOutside: "cancelOnTapOutside", width: "width", text: "text", buttonContainer: "buttonContainer" }, outputs: { onLoginResponse: "onLoginResponse", onLogin: "onLogin" }, usesInheritance: true, ngImport: i0 }); }
106
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.7", type: ZekGoogleLoginButton, selector: "zek-google-login", inputs: { id: "id", prompt: "prompt", autoSelect: "autoSelect", cancelOnTapOutside: "cancelOnTapOutside", width: "width", text: "text" }, outputs: { onLoginResponse: "onLoginResponse", onLogin: "onLogin" }, host: { properties: { "attr.id": "id" } }, usesInheritance: true, ngImport: i0 }); }
111
107
  }
112
108
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: ZekGoogleLoginButton, decorators: [{
113
109
  type: Directive,
114
110
  args: [{
115
111
  selector: 'zek-google-login',
112
+ host: {
113
+ '[attr.id]': 'id',
114
+ }
116
115
  }]
117
116
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
118
117
  type: Inject,
119
118
  args: [GOOGLE_CLIENT_ID]
120
- }] }]; }, propDecorators: { prompt: [{
119
+ }] }]; }, propDecorators: { id: [{
120
+ type: Input
121
+ }], prompt: [{
121
122
  type: Input
122
123
  }], autoSelect: [{
123
124
  type: Input
@@ -131,7 +132,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImpor
131
132
  type: Output
132
133
  }], onLogin: [{
133
134
  type: Output
134
- }], buttonContainer: [{
135
- type: Input
136
135
  }] } });
137
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ29vZ2xlLWxvZ2luLWJ1dHRvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3play9zcmMvbGliL21vZHVsZXMvZ29vZ2xlLWxvZ2luLWJ1dHRvbi9nb29nbGUtbG9naW4tYnV0dG9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9FLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDbEMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ2hELE9BQU8sRUFBRSxhQUFhLEVBQTBDLE1BQU0sa0JBQWtCLENBQUM7QUFDekYsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGFBQWEsQ0FBQzs7QUFldEMsTUFBTSxPQUFPLG9CQUFxQixTQUFRLGFBQWE7SUFDbkQsWUFBdUQsU0FBaUI7UUFDcEUsS0FBSyxFQUFFLENBQUM7UUFEMkMsY0FBUyxHQUFULFNBQVMsQ0FBUTtRQUloRSxZQUFPLEdBQVksSUFBSSxDQUFDO1FBUXhCLGdCQUFXLEdBQVksS0FBSyxDQUFDO1FBUzNCLHdCQUFtQixHQUFZLElBQUksQ0FBQztRQTRCcEMsb0JBQWUsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ3JDLFlBQU8sR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBRS9CLHFCQUFnQixHQUFHLHdCQUF3QixDQUFDO1FBeUM1QyxtQkFBYyxHQUFHLENBQUMsTUFBVyxFQUFFLEVBQUU7WUFDckMsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7WUFDckIsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ3RCLENBQUMsQ0FBQTtJQTlGRCxDQUFDO0lBR0QsSUFBYSxNQUFNO1FBQ2YsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDO0lB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QUFPLENBQUUsMkJBQTJCO1NBQ3ZDLENBQUM7SUFDTixDQUFDO0lBQ0QsVUFBVTtRQUNOLElBQUksSUFBSSxDQUFDLE9BQU87WUFDWixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxrQ0FBa0M7SUFDNUUsQ0FBQztJQUdELHdCQUF3QixDQUFDLFFBQWE7UUFDbEMsSUFBSSxDQUFDLGVBQWUsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDckMsSUFBSSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBRXhDLHVEQUF1RDtRQUN2RCxxQ0FBcUM7UUFDckMsNkNBQTZDO1FBQzdDLG9EQUFvRDtRQUNwRCxzREFBc0Q7UUFDdEQsZ0RBQWdEO1FBQ2hELDBDQUEwQztJQUM5QyxDQUFDOzhHQTlJUSxvQkFBb0Isa0JBQ1QsZ0JBQWdCO2tHQUQzQixvQkFBb0I7OzJGQUFwQixvQkFBb0I7a0JBSGhDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLGtCQUFrQjtpQkFDL0I7OzBCQUVnQixNQUFNOzJCQUFDLGdCQUFnQjs0Q0FLdkIsTUFBTTtzQkFBbEIsS0FBSztnQkFRTyxVQUFVO3NCQUF0QixLQUFLO2dCQVNPLGtCQUFrQjtzQkFBOUIsS0FBSztnQkFTTyxLQUFLO3NCQUFqQixLQUFLO2dCQVNPLElBQUk7c0JBQWhCLEtBQUs7Z0JBU0ksZUFBZTtzQkFBeEIsTUFBTTtnQkFDRyxPQUFPO3NCQUFoQixNQUFNO2dCQUdNLGVBQWU7c0JBQTNCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEV2ZW50RW1pdHRlciwgSW5qZWN0LCBJbnB1dCwgT3V0cHV0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgbG9hZGVyIH0gZnJvbSAnLi9sb2FkZXInO1xyXG5pbXBvcnQgeyBHT09HTEVfQ0xJRU5UX0lEIH0gZnJvbSBcIi4uLy4uL3Rva2Vuc1wiO1xyXG5pbXBvcnQgeyBDb3JlQ29tcG9uZW50LCBCb29sZWFuSW5wdXQsIFN0cmluZ0lucHV0LCBOdW1iZXJJbnB1dCB9IGZyb20gXCIuLi8uLi9jb21wb25lbnRzXCI7XHJcbmltcG9ydCB7IENvbnZlcnQgfSBmcm9tIFwiLi4vLi4vdXRpbHNcIjtcclxuXHJcbmRlY2xhcmUgbGV0IGdvb2dsZTogYW55O1xyXG5cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgR29vZ2xlTG9naW5Db25maWcge1xyXG4gICAgY2xpZW50X2lkOiBzdHJpbmc7XHJcbn1cclxuZXhwb3J0IHR5cGUgR29vZ2xlTG9naW5CdXR0b25UZXh0SW5wdXQgPVxyXG4gICAgJ3NpZ25pbl93aXRoJyB8ICdzaWdudXBfd2l0aCcgfCAnY29udGludWVfd2l0aCcgfCAnc2lnbmluJyB8IG51bGwgfCB1bmRlZmluZWQ7XHJcblxyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgICBzZWxlY3RvcjogJ3play1nb29nbGUtbG9naW4nLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgWmVrR29vZ2xlTG9naW5CdXR0b24gZXh0ZW5kcyBDb3JlQ29tcG9uZW50IHtcclxuICAgIGNvbnN0cnVjdG9yKEBJbmplY3QoR09PR0xFX0NMSUVOVF9JRCkgcHJpdmF0ZSByZWFkb25seSBjbGllbnRfaWQ6IHN0cmluZykge1xyXG4gICAgICAgIHN1cGVyKCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBfcHJvbXB0OiBib29sZWFuID0gdHJ1ZTtcclxuICAgIEBJbnB1dCgpIGdldCBwcm9tcHQoKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Byb21wdDtcclxuICAgIH1cclxuICAgIHNldCBwcm9tcHQodjogQm9vbGVhbklucHV0KSB7XHJcbiAgICAgICAgdGhpcy5fcHJvbXB0ID0gQ29udmVydC50b0Jvb2xlYW5Qcm9wZXJ0eSh2KTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIF9hdXRvU2VsZWN0OiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBASW5wdXQoKSBnZXQgYXV0b1NlbGVjdCgpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fYXV0b1NlbGVjdDtcclxuICAgIH1cclxuICAgIHNldCBhdXRvU2VsZWN0KHY6IEJvb2xlYW5JbnB1dCkge1xyXG4gICAgICAgIHRoaXMuX2F1dG9TZWxlY3QgPSBDb252ZXJ0LnRvQm9vbGVhblByb3BlcnR5KHYpO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICAgIHByaXZhdGUgX2NhbmNlbE9uVGFwT3V0c2lkZTogYm9vbGVhbiA9IHRydWU7XHJcbiAgICBASW5wdXQoKSBnZXQgY2FuY2VsT25UYXBPdXRzaWRlKCkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9jYW5jZWxPblRhcE91dHNpZGU7XHJcbiAgICB9XHJcbiAgICBzZXQgY2FuY2VsT25UYXBPdXRzaWRlKHY6IEJvb2xlYW5JbnB1dCkge1xyXG4gICAgICAgIHRoaXMuX2NhbmNlbE9uVGFwT3V0c2lkZSA9IENvbnZlcnQudG9Cb29sZWFuUHJvcGVydHkodik7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIHByaXZhdGUgX3dpZHRoOiBOdW1iZXJJbnB1dDtcclxuICAgIEBJbnB1dCgpIGdldCB3aWR0aCgpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fd2lkdGg7XHJcbiAgICB9XHJcbiAgICBzZXQgd2lkdGgodjogTnVtYmVySW5wdXQpIHtcclxuICAgICAgICB0aGlzLl93aWR0aCA9IHY7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIHByaXZhdGUgX3RleHQ6IEdvb2dsZUxvZ2luQnV0dG9uVGV4dElucHV0O1xyXG4gICAgQElucHV0KCkgZ2V0IHRleHQoKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX3RleHQ7XHJcbiAgICB9XHJcbiAgICBzZXQgdGV4dCh2OiBHb29nbGVMb2dpbkJ1dHRvblRleHRJbnB1dCkge1xyXG4gICAgICAgIHRoaXMuX3RleHQgPSB2O1xyXG4gICAgfVxyXG5cclxuXHJcblxyXG4gICAgQE91dHB1dCgpIG9uTG9naW5SZXNwb25zZSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICAgIEBPdXRwdXQoKSBvbkxvZ2luID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICAgIHByaXZhdGUgX2J1dHRvbkNvbnRhaW5lciA9ICdnb29nbGUtbG9naW4tY29udGFpbmVyJztcclxuICAgIEBJbnB1dCgpIGdldCBidXR0b25Db250YWluZXIoKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2J1dHRvbkNvbnRhaW5lcjtcclxuICAgIH1cclxuICAgIHNldCBidXR0b25Db250YWluZXIodjogU3RyaW5nSW5wdXQpIHtcclxuICAgICAgICBpZiAoIXYpXHJcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignYnV0dG9uQ29udGFpbmVyIGlzIHJlcXVpcmVkJyk7XHJcbiAgICAgICAgdGhpcy5fYnV0dG9uQ29udGFpbmVyID0gdjtcclxuICAgIH1cclxuXHJcbiAgICAvLyBwcml2YXRlIF90eXBlOiAnc3RhbmRhcmQnIHwgJ2ljb24nO1xyXG4gICAgLy8gcHVibGljIGdldCB0eXBlKCk6ICcnIHtcclxuICAgIC8vICAgICByZXR1cm4gdGhpcy5fdHlwZTtcclxuICAgIC8vIH1cclxuICAgIC8vIHB1YmxpYyBzZXQgdHlwZSh2OiAnc3RhbmRhcmQnIHwgJ2ljb24nKSB7XHJcbiAgICAvLyAgICAgdGhpcy5fdHlwZSA9IHY7XHJcbiAgICAvLyB9XHJcblxyXG5cclxuXHJcblxyXG4gICAgLy8gcHJpdmF0ZSBzdGF0aWMgX2xvYWRlZCA9IGZhbHNlO1xyXG4gICAgLy8gc3RhdGljIGFzeW5jIGxvYWRTY3JpcHQoKSB7XHJcbiAgICAvLyAgICAgaWYgKHRoaXMuX2xvYWRlZCkgcmV0dXJuO1xyXG4gICAgLy8gICAgIGF3YWl0IEh0bWxIZWxwZXIubG9hZFNjcmlwdHMoJ2h0dHBzOi8vYWNjb3VudHMuZ29vZ2xlLmNvbS9nc2kvY2xpZW50Jyk7XHJcbiAgICAvLyAgICAgdGhpcy5fbG9hZGVkID0gdHJ1ZTtcclxuICAgIC8vIH1cclxuXHJcblxyXG4gICAgcHJpdmF0ZSBnb29nbGU/OiBhbnk7XHJcbiAgICBvdmVycmlkZSBhc3luYyBpbml0KCkge1xyXG4gICAgICAgIHN1cGVyLmluaXQoKTtcclxuICAgICAgICAvLyBhd2FpdCBHb29nbGVMb2dpbkJ1dHRvbi5sb2FkU2NyaXB0KCk7XHJcblxyXG4gICAgICAgIGlmIChcImdvb2dsZVwiIGluIHdpbmRvdykge1xyXG4gICAgICAgICAgICB0aGlzLmdvb2dsZSA9IGdvb2dsZTtcclxuICAgICAgICAgICAgdGhpcy5pbml0aWFsaXplKCk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgbG9hZGVyLmxvYWRTY3JpcHQodGhpcy5vbkxvYWRDb21wbGV0ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgcHJpdmF0ZSBvbkxvYWRDb21wbGV0ZSA9IChnb29nbGU6IGFueSkgPT4ge1xyXG4gICAgICAgIHRoaXMuZ29vZ2xlID0gZ29vZ2xlO1xyXG4gICAgICAgIHRoaXMuaW5pdGlhbGl6ZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIGluaXRpYWxpemUoKSB7XHJcbiAgICAgICAgdGhpcy5nb29nbGUuYWNjb3VudHMuaWQuaW5pdGlhbGl6ZSh7XHJcbiAgICAgICAgICAgIGNsaWVudF9pZDogdGhpcy5jbGllbnRfaWQsXHJcbiAgICAgICAgICAgIGNhbGxiYWNrOiAocmVzcG9uc2U6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5oYW5kbGVDcmVkZW50aWFsUmVzcG9uc2UocmVzcG9uc2UpO1xyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICBhdXRvX3NlbGVjdDogdGhpcy5fYXV0b1NlbGVjdCxcclxuICAgICAgICAgICAgY2FuY2VsX29uX3RhcF9vdXRzaWRlOiB0aGlzLl9jYW5jZWxPblRhcE91dHNpZGUsXHJcbiAgICAgICAgfSk7XHJcblxyXG4gICAgICAgIHRoaXMucmVuZGVyQnV0dG9uKCk7XHJcbiAgICAgICAgdGhpcy5hdXRvUHJvbXB0KCk7XHJcbiAgICB9XHJcbiAgICByZW5kZXJCdXR0b24oKSB7XHJcbiAgICAgICAgbGV0IG9wdGlvbnM6IGFueSA9IHsgdGhlbWU6IFwib3V0bGluZVwiLCBzaXplOiBcImxhcmdlXCIgfTtcclxuICAgICAgICBpZiAodGhpcy5fd2lkdGgpXHJcbiAgICAgICAgICAgIG9wdGlvbnMud2lkdGggPSB0aGlzLl93aWR0aDtcclxuICAgICAgICBpZiAodGhpcy5fdGV4dClcclxuICAgICAgICAgICAgb3B0aW9ucy50ZXh0ID0gdGhpcy5fdGV4dFxyXG5cclxuICAgICAgICB0aGlzLmdvb2dsZS5hY2NvdW50cy5pZC5yZW5kZXJCdXR0b24oXHJcbiAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHRoaXMuX2J1dHRvbkNvbnRhaW5lciksXHJcbiAgICAgICAgICAgIC8vIHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5wYXJlbnRFbGVtZW50LFxyXG4gICAgICAgICAgICBvcHRpb25zICAvLyBjdXN0b21pemF0aW9uIGF0dHJpYnV0ZXNcclxuICAgICAgICApO1xyXG4gICAgfVxyXG4gICAgYXV0b1Byb21wdCgpIHtcclxuICAgICAgICBpZiAodGhpcy5fcHJvbXB0KVxyXG4gICAgICAgICAgICB0aGlzLmdvb2dsZS5hY2NvdW50cy5pZC5wcm9tcHQoKTsgLy8gYWxzbyBkaXNwbGF5IHRoZSBPbmUgVGFwIGRpYWxvZ1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICBoYW5kbGVDcmVkZW50aWFsUmVzcG9uc2UocmVzcG9uc2U6IGFueSkge1xyXG4gICAgICAgIHRoaXMub25Mb2dpblJlc3BvbnNlPy5lbWl0KHJlc3BvbnNlKTtcclxuICAgICAgICB0aGlzLm9uTG9naW4/LmVtaXQocmVzcG9uc2UuY3JlZGVudGlhbCk7XHJcblxyXG4gICAgICAgIC8vIGxldCBwYXlsb2FkID0gSnd0SGVscGVyLmRlY29kZShyZXNwb25zZS5jcmVkZW50aWFsKTtcclxuICAgICAgICAvLyBjb25zb2xlLmxvZyhcIklEOiBcIiArIHBheWxvYWQuc3ViKTtcclxuICAgICAgICAvLyBjb25zb2xlLmxvZygnRnVsbCBOYW1lOiAnICsgcGF5bG9hZC5uYW1lKTtcclxuICAgICAgICAvLyBjb25zb2xlLmxvZygnR2l2ZW4gTmFtZTogJyArIHBheWxvYWQuZ2l2ZW5fbmFtZSk7XHJcbiAgICAgICAgLy8gY29uc29sZS5sb2coJ0ZhbWlseSBOYW1lOiAnICsgcGF5bG9hZC5mYW1pbHlfbmFtZSk7XHJcbiAgICAgICAgLy8gY29uc29sZS5sb2coXCJJbWFnZSBVUkw6IFwiICsgcGF5bG9hZC5waWN0dXJlKTtcclxuICAgICAgICAvLyBjb25zb2xlLmxvZyhcIkVtYWlsOiBcIiArIHBheWxvYWQuZW1haWwpO1xyXG4gICAgfVxyXG59Il19
136
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ29vZ2xlLWxvZ2luLWJ1dHRvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3play9zcmMvbGliL21vZHVsZXMvZ29vZ2xlLWxvZ2luLWJ1dHRvbi9nb29nbGUtbG9naW4tYnV0dG9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBYSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFGLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDbEMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ2hELE9BQU8sRUFBRSxhQUFhLEVBQTZCLE1BQU0sa0JBQWtCLENBQUM7QUFDNUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGFBQWEsQ0FBQzs7QUFHdEMsSUFBSSxRQUFRLEdBQUcsQ0FBQyxDQUFDO0FBZWpCLE1BQU0sT0FBTyxvQkFBcUIsU0FBUSxhQUFhO0lBQ25ELFlBQXVELFNBQWlCO1FBQ3BFLEtBQUssRUFBRSxDQUFDO1FBRDJDLGNBQVMsR0FBVCxTQUFTLENBQVE7UUFJaEUsY0FBUyxHQUFXLCtCQUErQixFQUFFLFFBQVEsRUFBRSxDQUFDO1FBQy9ELE9BQUUsR0FBVyxJQUFJLENBQUMsU0FBUyxDQUFDO1FBRTdCLFlBQU8sR0FBWSxJQUFJLENBQUM7UUFReEIsZ0JBQVcsR0FBWSxLQUFLLENBQUM7UUFTN0Isd0JBQW1CLEdBQVksSUFBSSxDQUFDO1FBNEJsQyxvQkFBZSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDckMsWUFBTyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFpQy9CLG1CQUFjLEdBQUcsQ0FBQyxNQUFXLEVBQUUsRUFBRTtZQUNyQyxJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztZQUNyQixJQUFJLENBQUMsVUFBVSxFQUFF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QUNaLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLGtDQUFrQztJQUM1RSxDQUFDO0lBR0Qsd0JBQXdCLENBQUMsUUFBYTtRQUNsQyxJQUFJLENBQUMsZUFBZSxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNyQyxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLENBQUM7UUFFeEMsdURBQXVEO1FBQ3ZELHFDQUFxQztRQUNyQyw2Q0FBNkM7UUFDN0Msb0RBQW9EO1FBQ3BELHNEQUFzRDtRQUN0RCxnREFBZ0Q7UUFDaEQsMENBQTBDO0lBQzlDLENBQUM7OEdBeklRLG9CQUFvQixrQkFDVCxnQkFBZ0I7a0dBRDNCLG9CQUFvQjs7MkZBQXBCLG9CQUFvQjtrQkFOaEMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsa0JBQWtCO29CQUM1QixJQUFJLEVBQUU7d0JBQ0YsV0FBVyxFQUFFLElBQUk7cUJBQ3BCO2lCQUNKOzswQkFFZ0IsTUFBTTsyQkFBQyxnQkFBZ0I7NENBSzNCLEVBQUU7c0JBQVYsS0FBSztnQkFHTyxNQUFNO3NCQUFsQixLQUFLO2dCQVFPLFVBQVU7c0JBQXRCLEtBQUs7Z0JBU08sa0JBQWtCO3NCQUE5QixLQUFLO2dCQVNPLEtBQUs7c0JBQWpCLEtBQUs7Z0JBU08sSUFBSTtzQkFBaEIsS0FBSztnQkFTSSxlQUFlO3NCQUF4QixNQUFNO2dCQUNHLE9BQU87c0JBQWhCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIERpcmVjdGl2ZSwgRXZlbnRFbWl0dGVyLCBJbmplY3QsIElucHV0LCBPdXRwdXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBsb2FkZXIgfSBmcm9tICcuL2xvYWRlcic7XHJcbmltcG9ydCB7IEdPT0dMRV9DTElFTlRfSUQgfSBmcm9tIFwiLi4vLi4vdG9rZW5zXCI7XHJcbmltcG9ydCB7IENvcmVDb21wb25lbnQsIEJvb2xlYW5JbnB1dCwgTnVtYmVySW5wdXQgfSBmcm9tIFwiLi4vLi4vY29tcG9uZW50c1wiO1xyXG5pbXBvcnQgeyBDb252ZXJ0IH0gZnJvbSBcIi4uLy4uL3V0aWxzXCI7XHJcblxyXG5kZWNsYXJlIGxldCBnb29nbGU6IGFueTtcclxubGV0IHVuaXF1ZUlkID0gMDtcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgR29vZ2xlTG9naW5Db25maWcge1xyXG4gICAgY2xpZW50X2lkOiBzdHJpbmc7XHJcbn1cclxuZXhwb3J0IHR5cGUgR29vZ2xlTG9naW5CdXR0b25UZXh0SW5wdXQgPVxyXG4gICAgJ3NpZ25pbl93aXRoJyB8ICdzaWdudXBfd2l0aCcgfCAnY29udGludWVfd2l0aCcgfCAnc2lnbmluJyB8IG51bGwgfCB1bmRlZmluZWQ7XHJcblxyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgICBzZWxlY3RvcjogJ3play1nb29nbGUtbG9naW4nLFxyXG4gICAgaG9zdDoge1xyXG4gICAgICAgICdbYXR0ci5pZF0nOiAnaWQnLFxyXG4gICAgfVxyXG59KVxyXG5leHBvcnQgY2xhc3MgWmVrR29vZ2xlTG9naW5CdXR0b24gZXh0ZW5kcyBDb3JlQ29tcG9uZW50IHtcclxuICAgIGNvbnN0cnVjdG9yKEBJbmplY3QoR09PR0xFX0NMSUVOVF9JRCkgcHJpdmF0ZSByZWFkb25seSBjbGllbnRfaWQ6IHN0cmluZykge1xyXG4gICAgICAgIHN1cGVyKCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBfdW5pcXVlSWQ6IHN0cmluZyA9IGB6ZWstZ29vZ2xlLWJ1dHRvbi1jb250YWluZXItJHsrK3VuaXF1ZUlkfWA7XHJcbiAgICBASW5wdXQoKSBpZDogc3RyaW5nID0gdGhpcy5fdW5pcXVlSWQ7XHJcblxyXG4gICAgcHJpdmF0ZSBfcHJvbXB0OiBib29sZWFuID0gdHJ1ZTtcclxuICAgIEBJbnB1dCgpIGdldCBwcm9tcHQoKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Byb21wdDtcclxuICAgIH1cclxuICAgIHNldCBwcm9tcHQodjogQm9vbGVhbklucHV0KSB7XHJcbiAgICAgICAgdGhpcy5fcHJvbXB0ID0gQ29udmVydC50b0Jvb2xlYW5Qcm9wZXJ0eSh2KTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIF9hdXRvU2VsZWN0OiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBASW5wdXQoKSBnZXQgYXV0b1NlbGVjdCgpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fYXV0b1NlbGVjdDtcclxuICAgIH1cclxuICAgIHNldCBhdXRvU2VsZWN0KHY6IEJvb2xlYW5JbnB1dCkge1xyXG4gICAgICAgIHRoaXMuX2F1dG9TZWxlY3QgPSBDb252ZXJ0LnRvQm9vbGVhblByb3BlcnR5KHYpO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICBwcml2YXRlIF9jYW5jZWxPblRhcE91dHNpZGU6IGJvb2xlYW4gPSB0cnVlO1xyXG4gICAgQElucHV0KCkgZ2V0IGNhbmNlbE9uVGFwT3V0c2lkZSgpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fY2FuY2VsT25UYXBPdXRzaWRlO1xyXG4gICAgfVxyXG4gICAgc2V0IGNhbmNlbE9uVGFwT3V0c2lkZSh2OiBCb29sZWFuSW5wdXQpIHtcclxuICAgICAgICB0aGlzLl9jYW5jZWxPblRhcE91dHNpZGUgPSBDb252ZXJ0LnRvQm9vbGVhblByb3BlcnR5KHYpO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICBwcml2YXRlIF93aWR0aDogTnVtYmVySW5wdXQ7XHJcbiAgICBASW5wdXQoKSBnZXQgd2lkdGgoKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX3dpZHRoO1xyXG4gICAgfVxyXG4gICAgc2V0IHdpZHRoKHY6IE51bWJlcklucHV0KSB7XHJcbiAgICAgICAgdGhpcy5fd2lkdGggPSB2O1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICBwcml2YXRlIF90ZXh0OiBHb29nbGVMb2dpbkJ1dHRvblRleHRJbnB1dDtcclxuICAgIEBJbnB1dCgpIGdldCB0ZXh0KCkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl90ZXh0O1xyXG4gICAgfVxyXG4gICAgc2V0IHRleHQodjogR29vZ2xlTG9naW5CdXR0b25UZXh0SW5wdXQpIHtcclxuICAgICAgICB0aGlzLl90ZXh0ID0gdjtcclxuICAgIH1cclxuXHJcblxyXG5cclxuICAgIEBPdXRwdXQoKSBvbkxvZ2luUmVzcG9uc2UgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgICBAT3V0cHV0KCkgb25Mb2dpbiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgICAvLyBwcml2YXRlIF90eXBlOiAnc3RhbmRhcmQnIHwgJ2ljb24nO1xyXG4gICAgLy8gcHVibGljIGdldCB0eXBlKCk6ICcnIHtcclxuICAgIC8vICAgICByZXR1cm4gdGhpcy5fdHlwZTtcclxuICAgIC8vIH1cclxuICAgIC8vIHB1YmxpYyBzZXQgdHlwZSh2OiAnc3RhbmRhcmQnIHwgJ2ljb24nKSB7XHJcbiAgICAvLyAgICAgdGhpcy5fdHlwZSA9IHY7XHJcbiAgICAvLyB9XHJcblxyXG5cclxuXHJcblxyXG4gICAgLy8gcHJpdmF0ZSBzdGF0aWMgX2xvYWRlZCA9IGZhbHNlO1xyXG4gICAgLy8gc3RhdGljIGFzeW5jIGxvYWRTY3JpcHQoKSB7XHJcbiAgICAvLyAgICAgaWYgKHRoaXMuX2xvYWRlZCkgcmV0dXJuO1xyXG4gICAgLy8gICAgIGF3YWl0IEh0bWxIZWxwZXIubG9hZFNjcmlwdHMoJ2h0dHBzOi8vYWNjb3VudHMuZ29vZ2xlLmNvbS9nc2kvY2xpZW50Jyk7XHJcbiAgICAvLyAgICAgdGhpcy5fbG9hZGVkID0gdHJ1ZTtcclxuICAgIC8vIH1cclxuXHJcblxyXG4gICAgcHJpdmF0ZSBnb29nbGU/OiBhbnk7XHJcbiAgICBvdmVycmlkZSBhc3luYyBpbml0KCkge1xyXG4gICAgICAgIHN1cGVyLmluaXQoKTtcclxuICAgICAgICAvLyBhd2FpdCBHb29nbGVMb2dpbkJ1dHRvbi5sb2FkU2NyaXB0KCk7XHJcblxyXG4gICAgICAgIGlmIChcImdvb2dsZVwiIGluIHdpbmRvdykge1xyXG4gICAgICAgICAgICB0aGlzLmdvb2dsZSA9IGdvb2dsZTtcclxuICAgICAgICAgICAgdGhpcy5pbml0aWFsaXplKCk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgbG9hZGVyLmxvYWRTY3JpcHQodGhpcy5vbkxvYWRDb21wbGV0ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgcHJpdmF0ZSBvbkxvYWRDb21wbGV0ZSA9IChnb29nbGU6IGFueSkgPT4ge1xyXG4gICAgICAgIHRoaXMuZ29vZ2xlID0gZ29vZ2xlO1xyXG4gICAgICAgIHRoaXMuaW5pdGlhbGl6ZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIGluaXRpYWxpemUoKSB7XHJcbiAgICAgICAgdGhpcy5nb29nbGUuYWNjb3VudHMuaWQuaW5pdGlhbGl6ZSh7XHJcbiAgICAgICAgICAgIGNsaWVudF9pZDogdGhpcy5jbGllbnRfaWQsXHJcbiAgICAgICAgICAgIGNhbGxiYWNrOiAocmVzcG9uc2U6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5oYW5kbGVDcmVkZW50aWFsUmVzcG9uc2UocmVzcG9uc2UpO1xyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICBhdXRvX3NlbGVjdDogdGhpcy5fYXV0b1NlbGVjdCxcclxuICAgICAgICAgICAgY2FuY2VsX29uX3RhcF9vdXRzaWRlOiB0aGlzLl9jYW5jZWxPblRhcE91dHNpZGUsXHJcbiAgICAgICAgfSk7XHJcblxyXG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLnJlbmRlckJ1dHRvbigpO1xyXG4gICAgICAgICAgICB0aGlzLmF1dG9Qcm9tcHQoKTtcclxuICAgICAgICB9LCk7XHJcbiAgICB9XHJcbiAgICByZW5kZXJCdXR0b24oKSB7XHJcbiAgICAgICAgbGV0IG9wdGlvbnM6IGFueSA9IHsgdGhlbWU6IFwib3V0bGluZVwiLCBzaXplOiBcImxhcmdlXCIgfTtcclxuICAgICAgICBpZiAodGhpcy5fd2lkdGgpXHJcbiAgICAgICAgICAgIG9wdGlvbnMud2lkdGggPSB0aGlzLl93aWR0aDtcclxuICAgICAgICBpZiAodGhpcy5fdGV4dClcclxuICAgICAgICAgICAgb3B0aW9ucy50ZXh0ID0gdGhpcy5fdGV4dFxyXG5cclxuICAgICAgICB0aGlzLmdvb2dsZS5hY2NvdW50cy5pZC5yZW5kZXJCdXR0b24oXHJcbiAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHRoaXMuaWQpLFxyXG4gICAgICAgICAgICAvLyB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQucGFyZW50RWxlbWVudCxcclxuICAgICAgICAgICAgb3B0aW9ucyAgLy8gY3VzdG9taXphdGlvbiBhdHRyaWJ1dGVzXHJcbiAgICAgICAgKTtcclxuICAgIH1cclxuICAgIGF1dG9Qcm9tcHQoKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuX3Byb21wdClcclxuICAgICAgICAgICAgdGhpcy5nb29nbGUuYWNjb3VudHMuaWQucHJvbXB0KCk7IC8vIGFsc28gZGlzcGxheSB0aGUgT25lIFRhcCBkaWFsb2dcclxuICAgIH1cclxuXHJcblxyXG4gICAgaGFuZGxlQ3JlZGVudGlhbFJlc3BvbnNlKHJlc3BvbnNlOiBhbnkpIHtcclxuICAgICAgICB0aGlzLm9uTG9naW5SZXNwb25zZT8uZW1pdChyZXNwb25zZSk7XHJcbiAgICAgICAgdGhpcy5vbkxvZ2luPy5lbWl0KHJlc3BvbnNlLmNyZWRlbnRpYWwpO1xyXG5cclxuICAgICAgICAvLyBsZXQgcGF5bG9hZCA9IEp3dEhlbHBlci5kZWNvZGUocmVzcG9uc2UuY3JlZGVudGlhbCk7XHJcbiAgICAgICAgLy8gY29uc29sZS5sb2coXCJJRDogXCIgKyBwYXlsb2FkLnN1Yik7XHJcbiAgICAgICAgLy8gY29uc29sZS5sb2coJ0Z1bGwgTmFtZTogJyArIHBheWxvYWQubmFtZSk7XHJcbiAgICAgICAgLy8gY29uc29sZS5sb2coJ0dpdmVuIE5hbWU6ICcgKyBwYXlsb2FkLmdpdmVuX25hbWUpO1xyXG4gICAgICAgIC8vIGNvbnNvbGUubG9nKCdGYW1pbHkgTmFtZTogJyArIHBheWxvYWQuZmFtaWx5X25hbWUpO1xyXG4gICAgICAgIC8vIGNvbnNvbGUubG9nKFwiSW1hZ2UgVVJMOiBcIiArIHBheWxvYWQucGljdHVyZSk7XHJcbiAgICAgICAgLy8gY29uc29sZS5sb2coXCJFbWFpbDogXCIgKyBwYXlsb2FkLmVtYWlsKTtcclxuICAgIH1cclxufSJdfQ==
package/fesm2022/zek.mjs CHANGED
@@ -1926,7 +1926,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImpor
1926
1926
  type: Input
1927
1927
  }] } });
1928
1928
 
1929
- let uniqueId$3 = 0;
1929
+ let uniqueId$4 = 0;
1930
1930
  class CoreUiComponent extends CoreComponent {
1931
1931
  constructor(_renderer, _elementRef
1932
1932
  //private _changeDetector: ChangeDetectorRef
@@ -1943,7 +1943,7 @@ class CoreUiComponent extends CoreComponent {
1943
1943
  this._onTouched = () => { };
1944
1944
  this.change = new EventEmitter();
1945
1945
  this.changing = new EventEmitter();
1946
- this._name = `zek-${++uniqueId$3}`;
1946
+ this._name = `zek-${++uniqueId$4}`;
1947
1947
  this._isInitialized = false;
1948
1948
  this._value = null;
1949
1949
  this._readonly = false;
@@ -2971,7 +2971,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImpor
2971
2971
  }]
2972
2972
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.Router }]; } });
2973
2973
 
2974
- let uniqueId$2 = 0;
2974
+ let uniqueId$3 = 0;
2975
2975
  /**
2976
2976
  * Provider Expression that allows bb to register as a ControlValueAccessor. This
2977
2977
  * allows it to support [(ngModel)] and ngControl.
@@ -2985,7 +2985,7 @@ const ZEK_BB_CONTROL_VALUE_ACCESSOR = {
2985
2985
  class ZekButtonBrowse extends CoreUiComponent {
2986
2986
  constructor() {
2987
2987
  super(...arguments);
2988
- this._uniqueId = `zek-bb-${++uniqueId$2}`;
2988
+ this._uniqueId = `zek-bb-${++uniqueId$3}`;
2989
2989
  /** The unique ID for the bb. */
2990
2990
  this.id = this._uniqueId;
2991
2991
  this.filter = {};
@@ -3612,6 +3612,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImpor
3612
3612
 
3613
3613
  class ZekEditToolbar {
3614
3614
  constructor() {
3615
+ this._showSave = true;
3616
+ this._showCancel = true;
3615
3617
  this.printType = PrintType;
3616
3618
  this._showExport = false;
3617
3619
  this._showPrint = false;
@@ -3629,6 +3631,18 @@ class ZekEditToolbar {
3629
3631
  this.onPrint = new EventEmitter();
3630
3632
  this.onExport = new EventEmitter();
3631
3633
  }
3634
+ get showSave() {
3635
+ return this._showSave;
3636
+ }
3637
+ set showSave(v) {
3638
+ this._showSave = Convert.toBooleanProperty(v);
3639
+ }
3640
+ get showCancel() {
3641
+ return this._showCancel;
3642
+ }
3643
+ set showCancel(v) {
3644
+ this._showCancel = Convert.toBooleanProperty(v);
3645
+ }
3632
3646
  get showExport() {
3633
3647
  return this._showExport;
3634
3648
  }
@@ -3657,12 +3671,16 @@ class ZekEditToolbar {
3657
3671
  this.onExport.emit(1);
3658
3672
  }
3659
3673
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: ZekEditToolbar, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
3660
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: ZekEditToolbar, isStandalone: true, selector: "zek-edit-toolbar", inputs: { showExport: "showExport", showPrint: "showPrint", readOnly: "readOnly" }, outputs: { onSave: "onSave", onCancel: "onCancel", onPrint: "onPrint", onExport: "onExport" }, ngImport: i0, template: "<div class=\"btn-toolbar\" role=\"toolbar\" aria-label=\"Action toolbar\">\r\n <div class=\"btn-group me-2\" role=\"group\" aria-label=\"Save group\">\r\n <button type=\"submit\" class=\"btn btn-primary\" [disabled]=\"readOnly\"><i class=\"fa-solid fa-floppy-disk\"></i> {{ 'Action.Save' | translate }}</button>\r\n </div>\r\n <div class=\"btn-group me-2\" role=\"group\" aria-label=\"Cancel group\">\r\n <button type=\"button\" class=\"btn btn-secondary\" (click)=\"cancel()\"><i class=\"fa-solid fa-ban\"></i> {{ 'Action.Close' | translate }}</button>\r\n </div>\r\n <div *ngIf=\"showPrint\" class=\"btn-group me-2\" role=\"group\" aria-label=\"Print group\">\r\n <button type=\"button\" class=\"btn btn-secondary\" (click)=\"print(printType.Pdf)\"><i class=\"fa-solid fa-print\"></i> {{ 'Action.Print' | translate }}</button>\r\n <div class=\"btn-group\" role=\"group\">\r\n <button type=\"button\" class=\"btn btn-secondary dropdown-toggle dropdown-toggle-split\" data-bs-toggle=\"dropdown\" aria-expanded=\"false\">\r\n <span class=\"visually-hidden\">Toggle Dropdown</span>\r\n </button>\r\n <ul class=\"dropdown-menu\">\r\n <li><button type=\"button\" class=\"dropdown-item\" (click)=\"print(printType.Show)\"><i class=\"fa-solid fa-print\"></i> {{ 'Action.Print' | translate }}</button></li>\r\n <li><button type=\"button\" class=\"dropdown-item\" (click)=\"print(printType.Pdf)\"><i class=\"fa-solid fa-file-pdf\"></i> {{ 'Action.Print' | translate }} PDF</button></li>\r\n </ul>\r\n </div>\r\n </div>\r\n <div *ngIf=\"showExport\" class=\"btn-group\" role=\"group\" aria-label=\"Filter / Export group\">\r\n <div class=\"btn-group\" role=\"group\">\r\n <button id=\"btnGroupExport\" type=\"button\" class=\"btn btn-secondary dropdown-toggle\" data-bs-toggle=\"dropdown\" aria-expanded=\"false\"><i class=\"fa-solid fa-download\"></i> {{ 'Action.Export' | translate }}</button>\r\n <ul class=\"dropdown-menu\" aria-labelledby=\"btnGroupExport\">\r\n <li><a class=\"dropdown-item\" href=\"javascript:void(0)\" (click)=\"exportExcel()\"><i class=\"fa-solid fa-file-excel\"></i> Excel</a></li>\r\n </ul>\r\n </div>\r\n </div>\r\n <ng-content></ng-content>\r\n</div>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] }); }
3674
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: ZekEditToolbar, isStandalone: true, selector: "zek-edit-toolbar", inputs: { showSave: "showSave", showCancel: "showCancel", showExport: "showExport", showPrint: "showPrint", readOnly: "readOnly" }, outputs: { onSave: "onSave", onCancel: "onCancel", onPrint: "onPrint", onExport: "onExport" }, ngImport: i0, template: "<div class=\"btn-toolbar\" role=\"toolbar\" aria-label=\"Action toolbar\">\r\n <div *ngIf=\"showSave\" class=\"btn-group me-2\" role=\"group\" aria-label=\"Save group\">\r\n <button type=\"submit\" class=\"btn btn-primary\" [disabled]=\"readOnly\"><i class=\"fa-solid fa-floppy-disk\"></i> {{ 'Action.Save' | translate }}</button>\r\n </div>\r\n <div *ngIf=\"showCancel\" class=\"btn-group me-2\" role=\"group\" aria-label=\"Cancel group\">\r\n <button type=\"button\" class=\"btn btn-secondary\" (click)=\"cancel()\"><i class=\"fa-solid fa-ban\"></i> {{ 'Action.Close' | translate }}</button>\r\n </div>\r\n <div *ngIf=\"showPrint\" class=\"btn-group me-2\" role=\"group\" aria-label=\"Print group\">\r\n <button type=\"button\" class=\"btn btn-secondary\" (click)=\"print(printType.Pdf)\"><i class=\"fa-solid fa-print\"></i> {{ 'Action.Print' | translate }}</button>\r\n <div class=\"btn-group\" role=\"group\">\r\n <button type=\"button\" class=\"btn btn-secondary dropdown-toggle dropdown-toggle-split\" data-bs-toggle=\"dropdown\" aria-expanded=\"false\">\r\n <span class=\"visually-hidden\">Toggle Dropdown</span>\r\n </button>\r\n <ul class=\"dropdown-menu\">\r\n <li><button type=\"button\" class=\"dropdown-item\" (click)=\"print(printType.Show)\"><i class=\"fa-solid fa-print\"></i> {{ 'Action.Print' | translate }}</button></li>\r\n <li><button type=\"button\" class=\"dropdown-item\" (click)=\"print(printType.Pdf)\"><i class=\"fa-solid fa-file-pdf\"></i> {{ 'Action.Print' | translate }} PDF</button></li>\r\n </ul>\r\n </div>\r\n </div>\r\n <div *ngIf=\"showExport\" class=\"btn-group\" role=\"group\" aria-label=\"Filter / Export group\">\r\n <div class=\"btn-group\" role=\"group\">\r\n <button id=\"btnGroupExport\" type=\"button\" class=\"btn btn-secondary dropdown-toggle\" data-bs-toggle=\"dropdown\" aria-expanded=\"false\"><i class=\"fa-solid fa-download\"></i> {{ 'Action.Export' | translate }}</button>\r\n <ul class=\"dropdown-menu\" aria-labelledby=\"btnGroupExport\">\r\n <li><a class=\"dropdown-item\" href=\"javascript:void(0)\" (click)=\"exportExcel()\"><i class=\"fa-solid fa-file-excel\"></i> Excel</a></li>\r\n </ul>\r\n </div>\r\n </div>\r\n <ng-content></ng-content>\r\n</div>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] }); }
3661
3675
  }
3662
3676
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: ZekEditToolbar, decorators: [{
3663
3677
  type: Component,
3664
- args: [{ standalone: true, selector: 'zek-edit-toolbar', imports: [CommonModule, TranslateModule], template: "<div class=\"btn-toolbar\" role=\"toolbar\" aria-label=\"Action toolbar\">\r\n <div class=\"btn-group me-2\" role=\"group\" aria-label=\"Save group\">\r\n <button type=\"submit\" class=\"btn btn-primary\" [disabled]=\"readOnly\"><i class=\"fa-solid fa-floppy-disk\"></i> {{ 'Action.Save' | translate }}</button>\r\n </div>\r\n <div class=\"btn-group me-2\" role=\"group\" aria-label=\"Cancel group\">\r\n <button type=\"button\" class=\"btn btn-secondary\" (click)=\"cancel()\"><i class=\"fa-solid fa-ban\"></i> {{ 'Action.Close' | translate }}</button>\r\n </div>\r\n <div *ngIf=\"showPrint\" class=\"btn-group me-2\" role=\"group\" aria-label=\"Print group\">\r\n <button type=\"button\" class=\"btn btn-secondary\" (click)=\"print(printType.Pdf)\"><i class=\"fa-solid fa-print\"></i> {{ 'Action.Print' | translate }}</button>\r\n <div class=\"btn-group\" role=\"group\">\r\n <button type=\"button\" class=\"btn btn-secondary dropdown-toggle dropdown-toggle-split\" data-bs-toggle=\"dropdown\" aria-expanded=\"false\">\r\n <span class=\"visually-hidden\">Toggle Dropdown</span>\r\n </button>\r\n <ul class=\"dropdown-menu\">\r\n <li><button type=\"button\" class=\"dropdown-item\" (click)=\"print(printType.Show)\"><i class=\"fa-solid fa-print\"></i> {{ 'Action.Print' | translate }}</button></li>\r\n <li><button type=\"button\" class=\"dropdown-item\" (click)=\"print(printType.Pdf)\"><i class=\"fa-solid fa-file-pdf\"></i> {{ 'Action.Print' | translate }} PDF</button></li>\r\n </ul>\r\n </div>\r\n </div>\r\n <div *ngIf=\"showExport\" class=\"btn-group\" role=\"group\" aria-label=\"Filter / Export group\">\r\n <div class=\"btn-group\" role=\"group\">\r\n <button id=\"btnGroupExport\" type=\"button\" class=\"btn btn-secondary dropdown-toggle\" data-bs-toggle=\"dropdown\" aria-expanded=\"false\"><i class=\"fa-solid fa-download\"></i> {{ 'Action.Export' | translate }}</button>\r\n <ul class=\"dropdown-menu\" aria-labelledby=\"btnGroupExport\">\r\n <li><a class=\"dropdown-item\" href=\"javascript:void(0)\" (click)=\"exportExcel()\"><i class=\"fa-solid fa-file-excel\"></i> Excel</a></li>\r\n </ul>\r\n </div>\r\n </div>\r\n <ng-content></ng-content>\r\n</div>" }]
3665
- }], propDecorators: { showExport: [{
3678
+ args: [{ standalone: true, selector: 'zek-edit-toolbar', imports: [CommonModule, TranslateModule], template: "<div class=\"btn-toolbar\" role=\"toolbar\" aria-label=\"Action toolbar\">\r\n <div *ngIf=\"showSave\" class=\"btn-group me-2\" role=\"group\" aria-label=\"Save group\">\r\n <button type=\"submit\" class=\"btn btn-primary\" [disabled]=\"readOnly\"><i class=\"fa-solid fa-floppy-disk\"></i> {{ 'Action.Save' | translate }}</button>\r\n </div>\r\n <div *ngIf=\"showCancel\" class=\"btn-group me-2\" role=\"group\" aria-label=\"Cancel group\">\r\n <button type=\"button\" class=\"btn btn-secondary\" (click)=\"cancel()\"><i class=\"fa-solid fa-ban\"></i> {{ 'Action.Close' | translate }}</button>\r\n </div>\r\n <div *ngIf=\"showPrint\" class=\"btn-group me-2\" role=\"group\" aria-label=\"Print group\">\r\n <button type=\"button\" class=\"btn btn-secondary\" (click)=\"print(printType.Pdf)\"><i class=\"fa-solid fa-print\"></i> {{ 'Action.Print' | translate }}</button>\r\n <div class=\"btn-group\" role=\"group\">\r\n <button type=\"button\" class=\"btn btn-secondary dropdown-toggle dropdown-toggle-split\" data-bs-toggle=\"dropdown\" aria-expanded=\"false\">\r\n <span class=\"visually-hidden\">Toggle Dropdown</span>\r\n </button>\r\n <ul class=\"dropdown-menu\">\r\n <li><button type=\"button\" class=\"dropdown-item\" (click)=\"print(printType.Show)\"><i class=\"fa-solid fa-print\"></i> {{ 'Action.Print' | translate }}</button></li>\r\n <li><button type=\"button\" class=\"dropdown-item\" (click)=\"print(printType.Pdf)\"><i class=\"fa-solid fa-file-pdf\"></i> {{ 'Action.Print' | translate }} PDF</button></li>\r\n </ul>\r\n </div>\r\n </div>\r\n <div *ngIf=\"showExport\" class=\"btn-group\" role=\"group\" aria-label=\"Filter / Export group\">\r\n <div class=\"btn-group\" role=\"group\">\r\n <button id=\"btnGroupExport\" type=\"button\" class=\"btn btn-secondary dropdown-toggle\" data-bs-toggle=\"dropdown\" aria-expanded=\"false\"><i class=\"fa-solid fa-download\"></i> {{ 'Action.Export' | translate }}</button>\r\n <ul class=\"dropdown-menu\" aria-labelledby=\"btnGroupExport\">\r\n <li><a class=\"dropdown-item\" href=\"javascript:void(0)\" (click)=\"exportExcel()\"><i class=\"fa-solid fa-file-excel\"></i> Excel</a></li>\r\n </ul>\r\n </div>\r\n </div>\r\n <ng-content></ng-content>\r\n</div>" }]
3679
+ }], propDecorators: { showSave: [{
3680
+ type: Input
3681
+ }], showCancel: [{
3682
+ type: Input
3683
+ }], showExport: [{
3666
3684
  type: Input
3667
3685
  }], showPrint: [{
3668
3686
  type: Input
@@ -4213,16 +4231,18 @@ function loadScript$1(onLoaded, url, nonce) {
4213
4231
  }
4214
4232
  const loader$1 = { loadScript: loadScript$1 };
4215
4233
 
4234
+ let uniqueId$2 = 0;
4216
4235
  class ZekGoogleLoginButton extends CoreComponent {
4217
4236
  constructor(client_id) {
4218
4237
  super();
4219
4238
  this.client_id = client_id;
4239
+ this._uniqueId = `zek-google-button-container-${++uniqueId$2}`;
4240
+ this.id = this._uniqueId;
4220
4241
  this._prompt = true;
4221
4242
  this._autoSelect = false;
4222
4243
  this._cancelOnTapOutside = true;
4223
4244
  this.onLoginResponse = new EventEmitter();
4224
4245
  this.onLogin = new EventEmitter();
4225
- this._buttonContainer = 'google-login-container';
4226
4246
  this.onLoadComplete = (google) => {
4227
4247
  this.google = google;
4228
4248
  this.initialize();
@@ -4258,14 +4278,6 @@ class ZekGoogleLoginButton extends CoreComponent {
4258
4278
  set text(v) {
4259
4279
  this._text = v;
4260
4280
  }
4261
- get buttonContainer() {
4262
- return this._buttonContainer;
4263
- }
4264
- set buttonContainer(v) {
4265
- if (!v)
4266
- throw new Error('buttonContainer is required');
4267
- this._buttonContainer = v;
4268
- }
4269
4281
  async init() {
4270
4282
  super.init();
4271
4283
  // await GoogleLoginButton.loadScript();
@@ -4286,8 +4298,10 @@ class ZekGoogleLoginButton extends CoreComponent {
4286
4298
  auto_select: this._autoSelect,
4287
4299
  cancel_on_tap_outside: this._cancelOnTapOutside,
4288
4300
  });
4289
- this.renderButton();
4290
- this.autoPrompt();
4301
+ setTimeout(() => {
4302
+ this.renderButton();
4303
+ this.autoPrompt();
4304
+ });
4291
4305
  }
4292
4306
  renderButton() {
4293
4307
  let options = { theme: "outline", size: "large" };
@@ -4295,7 +4309,7 @@ class ZekGoogleLoginButton extends CoreComponent {
4295
4309
  options.width = this._width;
4296
4310
  if (this._text)
4297
4311
  options.text = this._text;
4298
- this.google.accounts.id.renderButton(document.getElementById(this._buttonContainer),
4312
+ this.google.accounts.id.renderButton(document.getElementById(this.id),
4299
4313
  // this._elementRef.nativeElement.parentElement,
4300
4314
  options // customization attributes
4301
4315
  );
@@ -4316,17 +4330,22 @@ class ZekGoogleLoginButton extends CoreComponent {
4316
4330
  // console.log("Email: " + payload.email);
4317
4331
  }
4318
4332
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: ZekGoogleLoginButton, deps: [{ token: GOOGLE_CLIENT_ID }], target: i0.ɵɵFactoryTarget.Directive }); }
4319
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.7", type: ZekGoogleLoginButton, selector: "zek-google-login", inputs: { prompt: "prompt", autoSelect: "autoSelect", cancelOnTapOutside: "cancelOnTapOutside", width: "width", text: "text", buttonContainer: "buttonContainer" }, outputs: { onLoginResponse: "onLoginResponse", onLogin: "onLogin" }, usesInheritance: true, ngImport: i0 }); }
4333
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.7", type: ZekGoogleLoginButton, selector: "zek-google-login", inputs: { id: "id", prompt: "prompt", autoSelect: "autoSelect", cancelOnTapOutside: "cancelOnTapOutside", width: "width", text: "text" }, outputs: { onLoginResponse: "onLoginResponse", onLogin: "onLogin" }, host: { properties: { "attr.id": "id" } }, usesInheritance: true, ngImport: i0 }); }
4320
4334
  }
4321
4335
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: ZekGoogleLoginButton, decorators: [{
4322
4336
  type: Directive,
4323
4337
  args: [{
4324
4338
  selector: 'zek-google-login',
4339
+ host: {
4340
+ '[attr.id]': 'id',
4341
+ }
4325
4342
  }]
4326
4343
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
4327
4344
  type: Inject,
4328
4345
  args: [GOOGLE_CLIENT_ID]
4329
- }] }]; }, propDecorators: { prompt: [{
4346
+ }] }]; }, propDecorators: { id: [{
4347
+ type: Input
4348
+ }], prompt: [{
4330
4349
  type: Input
4331
4350
  }], autoSelect: [{
4332
4351
  type: Input
@@ -4340,8 +4359,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImpor
4340
4359
  type: Output
4341
4360
  }], onLogin: [{
4342
4361
  type: Output
4343
- }], buttonContainer: [{
4344
- type: Input
4345
4362
  }] } });
4346
4363
 
4347
4364
  class ZekGoogleLoginModule {