@elderbyte/ngx-starter 15.0.13 → 15.0.15

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.
@@ -64,11 +64,11 @@ export class ElderThemeToggleComponent {
64
64
  }
65
65
  }
66
66
  ElderThemeToggleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: ElderThemeToggleComponent, deps: [{ token: i1.ElderThemeService }, { token: i2.ElderThemePreferenceService }], target: i0.ɵɵFactoryTarget.Component });
67
- ElderThemeToggleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.0", type: ElderThemeToggleComponent, selector: "elder-theme-toggle", inputs: { color: "color" }, ngImport: i0, template: "<mat-slide-toggle *ngIf=\"activeToggleTheme$ | async as activeToggleTheme\"\n [ngModel]=\"activeToggleTheme !== 'default'\"\n (ngModelChange)=\"onToggle($event)\"\n [color]=\"color\"\n>\n <mat-icon [color]=\"color\">\n {{activeToggleTheme === 'default' ? 'light_mode' : 'brightness_2'}}\n </mat-icon>\n</mat-slide-toggle>\n", styles: [""], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.MatSlideToggle, selector: "mat-slide-toggle", inputs: ["disabled", "disableRipple", "color", "tabIndex"], exportAs: ["matSlideToggle"] }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
67
+ ElderThemeToggleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.0", type: ElderThemeToggleComponent, selector: "elder-theme-toggle", inputs: { color: "color" }, ngImport: i0, template: "<div class=\"layout-row place-start-center\" *ngIf=\"activeToggleTheme$ | async as activeToggleTheme\">\n <mat-slide-toggle [ngModel]=\"activeToggleTheme !== 'default'\"\n (ngModelChange)=\"onToggle($event)\"\n [color]=\"color\"\n >\n </mat-slide-toggle>\n <mat-icon [color]=\"color\">\n {{activeToggleTheme === 'default' ? 'light_mode' : 'brightness_2'}}\n </mat-icon>\n</div>\n\n", styles: [""], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.MatSlideToggle, selector: "mat-slide-toggle", inputs: ["disabled", "disableRipple", "color", "tabIndex"], exportAs: ["matSlideToggle"] }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
68
68
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: ElderThemeToggleComponent, decorators: [{
69
69
  type: Component,
70
- args: [{ selector: 'elder-theme-toggle', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-slide-toggle *ngIf=\"activeToggleTheme$ | async as activeToggleTheme\"\n [ngModel]=\"activeToggleTheme !== 'default'\"\n (ngModelChange)=\"onToggle($event)\"\n [color]=\"color\"\n>\n <mat-icon [color]=\"color\">\n {{activeToggleTheme === 'default' ? 'light_mode' : 'brightness_2'}}\n </mat-icon>\n</mat-slide-toggle>\n" }]
70
+ args: [{ selector: 'elder-theme-toggle', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"layout-row place-start-center\" *ngIf=\"activeToggleTheme$ | async as activeToggleTheme\">\n <mat-slide-toggle [ngModel]=\"activeToggleTheme !== 'default'\"\n (ngModelChange)=\"onToggle($event)\"\n [color]=\"color\"\n >\n </mat-slide-toggle>\n <mat-icon [color]=\"color\">\n {{activeToggleTheme === 'default' ? 'light_mode' : 'brightness_2'}}\n </mat-icon>\n</div>\n\n" }]
71
71
  }], ctorParameters: function () { return [{ type: i1.ElderThemeService }, { type: i2.ElderThemePreferenceService }]; }, propDecorators: { color: [{
72
72
  type: Input
73
73
  }] } });
74
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItdGhlbWUtdG9nZ2xlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvdGhlbWUvZWxkZXItdGhlbWUtdG9nZ2xlL2VsZGVyLXRoZW1lLXRvZ2dsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL3RoZW1lL2VsZGVyLXRoZW1lLXRvZ2dsZS9lbGRlci10aGVtZS10b2dnbGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDeEUsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBRW5ELE9BQU8sRUFBQyxhQUFhLEVBQWEsTUFBTSxNQUFNLENBQUM7QUFDL0MsT0FBTyxFQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7QUFheEMsTUFBTSxPQUFPLHlCQUF5QjtJQWVwQzs7OztnRkFJNEU7SUFFNUUsWUFDbUIsWUFBK0IsRUFDL0Isc0JBQW1EO1FBRG5ELGlCQUFZLEdBQVosWUFBWSxDQUFtQjtRQUMvQiwyQkFBc0IsR0FBdEIsc0JBQXNCLENBQTZCO1FBckJ0RTs7OztvRkFJNEU7UUFFM0QsV0FBTSxHQUFHLGFBQWEsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQWlCdkUsSUFBSSxDQUFDLGtCQUFrQixHQUFHLGFBQWEsQ0FDckM7WUFDRSxJQUFJLENBQUMsWUFBWSxDQUFDLGFBQWE7WUFDL0IsSUFBSSxDQUFDLFlBQVksQ0FBQyxZQUFZO1NBQy9CLENBQUMsQ0FBQyxJQUFJLENBQ1AsR0FBRyxDQUFDLENBQUMsQ0FBQyxZQUFZLEVBQUUsV0FBVyxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxZQUFZLEVBQUUsV0FBVyxDQUFDLENBQUMsRUFDdkYsR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsdUJBQXVCLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FDMUQsQ0FBQztJQUNKLENBQUM7SUFFRDs7OztnRkFJNEU7SUFFckUsUUFBUSxDQUFDLElBQWE7UUFDM0IsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxjQUFjLENBQUM7UUFDaEQsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxvQkFBb0IsQ0FBQTtRQUMzRCxJQUFJLEtBQWdCLENBQUM7UUFDckIsSUFBRyxJQUFJLEVBQUU7WUFDUCxLQUFLLEdBQUcsTUFBTTtpQkFDWCxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRSxLQUFLLFlBQVksRUFBRSxFQUFFLENBQUMsQ0FBQztTQUNqRDthQUFNO1lBQ0wsS0FBSyxHQUFHLFlBQVksQ0FBQztTQUN0QjtRQUNELElBQUksS0FBSyxFQUFFO1lBQ1QsSUFBSSxDQUFDLHNCQUFzQixDQUFDLG9CQUFvQixDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztTQUM1RDtJQUNILENBQUM7SUFFRDs7OztnRkFJNEU7SUFFcEUsaUJBQWlCLENBQ3ZCLFlBQXVCLEVBQ3ZCLFdBQXNCO1FBRXRCLElBQUcsWUFBWSxFQUFFLEVBQUUsS0FBSyxXQUFXLEVBQUUsRUFBRSxFQUFDO1lBQ3RDLE9BQU8sU0FBUyxDQUFDO1NBQ2xCO2FBQU87WUFDTixPQUFPLFdBQVcsQ0FBQztTQUNwQjtJQUNILENBQUM7O3NIQXZFVSx5QkFBeUI7MEdBQXpCLHlCQUF5QixzRkNqQnRDLDZWQVNBOzJGRFFhLHlCQUF5QjtrQkFOckMsU0FBUzsrQkFDRSxvQkFBb0IsbUJBR2IsdUJBQXVCLENBQUMsTUFBTTtrSkFleEMsS0FBSztzQkFEWCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0xvZ2dlckZhY3Rvcnl9IGZyb20gJ0BlbGRlcmJ5dGUvdHMtbG9nZ2VyJztcbmltcG9ydCB7RWxkZXJUaGVtZVNlcnZpY2V9IGZyb20gJy4uL2VsZGVyLXRoZW1lLnNlcnZpY2UnO1xuaW1wb3J0IHtjb21iaW5lTGF0ZXN0LCBPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7bWFwLCB0YXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7VGhlbWVTcGVjfSBmcm9tICcuLi90aGVtZS1zcGVjJztcbmltcG9ydCB7RWxkZXJUaGVtZVByZWZlcmVuY2VTZXJ2aWNlfSBmcm9tICcuLi9lbGRlci10aGVtZS1wcmVmZXJlbmNlLnNlcnZpY2UnO1xuaW1wb3J0IHtUaGVtZVBhbGV0dGV9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnO1xuXG50eXBlIFRvZ2dsZVRoZW1lID0gJ2RlZmF1bHQnIHwgJ3NlY29uZGFyeSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2VsZGVyLXRoZW1lLXRvZ2dsZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9lbGRlci10aGVtZS10b2dnbGUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9lbGRlci10aGVtZS10b2dnbGUuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgRWxkZXJUaGVtZVRvZ2dsZUNvbXBvbmVudCB7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEZpZWxkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSByZWFkb25seSBsb2dnZXIgPSBMb2dnZXJGYWN0b3J5LmdldExvZ2dlcih0aGlzLmNvbnN0cnVjdG9yLm5hbWUpO1xuXG4gIHB1YmxpYyByZWFkb25seSBhY3RpdmVUb2dnbGVUaGVtZSQ6IE9ic2VydmFibGU8VG9nZ2xlVGhlbWU+O1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBjb2xvcjogVGhlbWVQYWxldHRlO1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBDb25zdHJ1Y3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgdGhlbWVTZXJ2aWNlOiBFbGRlclRoZW1lU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHRoZW1lUHJlZmVyZW5jZVNlcnZpY2U6IEVsZGVyVGhlbWVQcmVmZXJlbmNlU2VydmljZVxuICApIHtcbiAgICB0aGlzLmFjdGl2ZVRvZ2dsZVRoZW1lJCA9IGNvbWJpbmVMYXRlc3QoXG4gICAgICBbXG4gICAgICAgIHRoaXMudGhlbWVTZXJ2aWNlLmRlZmF1bHRUaGVtZSQsXG4gICAgICAgIHRoaXMudGhlbWVTZXJ2aWNlLmFjdGl2ZVRoZW1lJFxuICAgICAgXSkucGlwZShcbiAgICAgIG1hcCgoW2RlZmF1bHRUaGVtZSwgYWN0aXZlVGhlbWVdKSA9PiB0aGlzLmRlY2lkZVRvZ2dsZVRoZW1lKGRlZmF1bHRUaGVtZSwgYWN0aXZlVGhlbWUpKSxcbiAgICAgIHRhcCh0dCA9PiB0aGlzLmxvZ2dlci5pbmZvKCdBY3RpdmUgdG9nZ2xlIHRoZW1lOiAnICsgdHQpKVxuICAgICk7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHVibGljIEFQSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgb25Ub2dnbGUodGdnbDogYm9vbGVhbik6IHZvaWQge1xuICAgIGNvbnN0IHRoZW1lcyA9IHRoaXMudGhlbWVTZXJ2aWNlLnRoZW1lc1NuYXBzaG90O1xuICAgIGNvbnN0IGRlZmF1bHRUaGVtZSA9IHRoaXMudGhlbWVTZXJ2aWNlLmRlZmF1bHRUaGVtZVNuYXBzaG90XG4gICAgbGV0IHRoZW1lOiBUaGVtZVNwZWM7XG4gICAgaWYodGdnbCkge1xuICAgICAgdGhlbWUgPSB0aGVtZXNcbiAgICAgICAgLmZpbmQodGhlbWUgPT4gdGhlbWUuaWQgIT09IGRlZmF1bHRUaGVtZT8uaWQpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGVtZSA9IGRlZmF1bHRUaGVtZTtcbiAgICB9XG4gICAgaWYgKHRoZW1lKSB7XG4gICAgICB0aGlzLnRoZW1lUHJlZmVyZW5jZVNlcnZpY2UuYWN0aXZhdGVUaGVtZUFuZFNhdmUodGhlbWUuaWQpO1xuICAgIH1cbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcml2YXRlIG1ldGhvZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgZGVjaWRlVG9nZ2xlVGhlbWUoXG4gICAgZGVmYXVsdFRoZW1lOiBUaGVtZVNwZWMsXG4gICAgYWN0aXZlVGhlbWU6IFRoZW1lU3BlY1xuICApOiBUb2dnbGVUaGVtZSB7XG4gICAgaWYoZGVmYXVsdFRoZW1lPy5pZCA9PT0gYWN0aXZlVGhlbWU/LmlkKXtcbiAgICAgIHJldHVybiAnZGVmYXVsdCc7XG4gICAgfSBlbHNlICB7XG4gICAgICByZXR1cm4gJ3NlY29uZGFyeSc7XG4gICAgfVxuICB9XG59XG4iLCI8bWF0LXNsaWRlLXRvZ2dsZSAqbmdJZj1cImFjdGl2ZVRvZ2dsZVRoZW1lJCB8IGFzeW5jIGFzIGFjdGl2ZVRvZ2dsZVRoZW1lXCJcbiAgW25nTW9kZWxdPVwiYWN0aXZlVG9nZ2xlVGhlbWUgIT09ICdkZWZhdWx0J1wiXG4gIChuZ01vZGVsQ2hhbmdlKT1cIm9uVG9nZ2xlKCRldmVudClcIlxuICAgICAgICAgICAgICAgICAgW2NvbG9yXT1cImNvbG9yXCJcbj5cbiAgPG1hdC1pY29uIFtjb2xvcl09XCJjb2xvclwiPlxuICAgIHt7YWN0aXZlVG9nZ2xlVGhlbWUgPT09ICdkZWZhdWx0JyA/ICdsaWdodF9tb2RlJyA6ICdicmlnaHRuZXNzXzInfX1cbiAgPC9tYXQtaWNvbj5cbjwvbWF0LXNsaWRlLXRvZ2dsZT5cbiJdfQ==
74
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItdGhlbWUtdG9nZ2xlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvdGhlbWUvZWxkZXItdGhlbWUtdG9nZ2xlL2VsZGVyLXRoZW1lLXRvZ2dsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL3RoZW1lL2VsZGVyLXRoZW1lLXRvZ2dsZS9lbGRlci10aGVtZS10b2dnbGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDeEUsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBRW5ELE9BQU8sRUFBQyxhQUFhLEVBQWEsTUFBTSxNQUFNLENBQUM7QUFDL0MsT0FBTyxFQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7QUFheEMsTUFBTSxPQUFPLHlCQUF5QjtJQWVwQzs7OztnRkFJNEU7SUFFNUUsWUFDbUIsWUFBK0IsRUFDL0Isc0JBQW1EO1FBRG5ELGlCQUFZLEdBQVosWUFBWSxDQUFtQjtRQUMvQiwyQkFBc0IsR0FBdEIsc0JBQXNCLENBQTZCO1FBckJ0RTs7OztvRkFJNEU7UUFFM0QsV0FBTSxHQUFHLGFBQWEsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQWlCdkUsSUFBSSxDQUFDLGtCQUFrQixHQUFHLGFBQWEsQ0FDckM7WUFDRSxJQUFJLENBQUMsWUFBWSxDQUFDLGFBQWE7WUFDL0IsSUFBSSxDQUFDLFlBQVksQ0FBQyxZQUFZO1NBQy9CLENBQUMsQ0FBQyxJQUFJLENBQ1AsR0FBRyxDQUFDLENBQUMsQ0FBQyxZQUFZLEVBQUUsV0FBVyxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxZQUFZLEVBQUUsV0FBVyxDQUFDLENBQUMsRUFDdkYsR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsdUJBQXVCLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FDMUQsQ0FBQztJQUNKLENBQUM7SUFFRDs7OztnRkFJNEU7SUFFckUsUUFBUSxDQUFDLElBQWE7UUFDM0IsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxjQUFjLENBQUM7UUFDaEQsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxvQkFBb0IsQ0FBQTtRQUMzRCxJQUFJLEtBQWdCLENBQUM7UUFDckIsSUFBRyxJQUFJLEVBQUU7WUFDUCxLQUFLLEdBQUcsTUFBTTtpQkFDWCxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRSxLQUFLLFlBQVksRUFBRSxFQUFFLENBQUMsQ0FBQztTQUNqRDthQUFNO1lBQ0wsS0FBSyxHQUFHLFlBQVksQ0FBQztTQUN0QjtRQUNELElBQUksS0FBSyxFQUFFO1lBQ1QsSUFBSSxDQUFDLHNCQUFzQixDQUFDLG9CQUFvQixDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztTQUM1RDtJQUNILENBQUM7SUFFRDs7OztnRkFJNEU7SUFFcEUsaUJBQWlCLENBQ3ZCLFlBQXVCLEVBQ3ZCLFdBQXNCO1FBRXRCLElBQUcsWUFBWSxFQUFFLEVBQUUsS0FBSyxXQUFXLEVBQUUsRUFBRSxFQUFDO1lBQ3RDLE9BQU8sU0FBUyxDQUFDO1NBQ2xCO2FBQU87WUFDTixPQUFPLFdBQVcsQ0FBQztTQUNwQjtJQUNILENBQUM7O3NIQXZFVSx5QkFBeUI7MEdBQXpCLHlCQUF5QixzRkNqQnRDLDZhQVdBOzJGRE1hLHlCQUF5QjtrQkFOckMsU0FBUzsrQkFDRSxvQkFBb0IsbUJBR2IsdUJBQXVCLENBQUMsTUFBTTtrSkFleEMsS0FBSztzQkFEWCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0xvZ2dlckZhY3Rvcnl9IGZyb20gJ0BlbGRlcmJ5dGUvdHMtbG9nZ2VyJztcbmltcG9ydCB7RWxkZXJUaGVtZVNlcnZpY2V9IGZyb20gJy4uL2VsZGVyLXRoZW1lLnNlcnZpY2UnO1xuaW1wb3J0IHtjb21iaW5lTGF0ZXN0LCBPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7bWFwLCB0YXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7VGhlbWVTcGVjfSBmcm9tICcuLi90aGVtZS1zcGVjJztcbmltcG9ydCB7RWxkZXJUaGVtZVByZWZlcmVuY2VTZXJ2aWNlfSBmcm9tICcuLi9lbGRlci10aGVtZS1wcmVmZXJlbmNlLnNlcnZpY2UnO1xuaW1wb3J0IHtUaGVtZVBhbGV0dGV9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnO1xuXG50eXBlIFRvZ2dsZVRoZW1lID0gJ2RlZmF1bHQnIHwgJ3NlY29uZGFyeSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2VsZGVyLXRoZW1lLXRvZ2dsZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9lbGRlci10aGVtZS10b2dnbGUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9lbGRlci10aGVtZS10b2dnbGUuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgRWxkZXJUaGVtZVRvZ2dsZUNvbXBvbmVudCB7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEZpZWxkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSByZWFkb25seSBsb2dnZXIgPSBMb2dnZXJGYWN0b3J5LmdldExvZ2dlcih0aGlzLmNvbnN0cnVjdG9yLm5hbWUpO1xuXG4gIHB1YmxpYyByZWFkb25seSBhY3RpdmVUb2dnbGVUaGVtZSQ6IE9ic2VydmFibGU8VG9nZ2xlVGhlbWU+O1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBjb2xvcjogVGhlbWVQYWxldHRlO1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBDb25zdHJ1Y3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgdGhlbWVTZXJ2aWNlOiBFbGRlclRoZW1lU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHRoZW1lUHJlZmVyZW5jZVNlcnZpY2U6IEVsZGVyVGhlbWVQcmVmZXJlbmNlU2VydmljZVxuICApIHtcbiAgICB0aGlzLmFjdGl2ZVRvZ2dsZVRoZW1lJCA9IGNvbWJpbmVMYXRlc3QoXG4gICAgICBbXG4gICAgICAgIHRoaXMudGhlbWVTZXJ2aWNlLmRlZmF1bHRUaGVtZSQsXG4gICAgICAgIHRoaXMudGhlbWVTZXJ2aWNlLmFjdGl2ZVRoZW1lJFxuICAgICAgXSkucGlwZShcbiAgICAgIG1hcCgoW2RlZmF1bHRUaGVtZSwgYWN0aXZlVGhlbWVdKSA9PiB0aGlzLmRlY2lkZVRvZ2dsZVRoZW1lKGRlZmF1bHRUaGVtZSwgYWN0aXZlVGhlbWUpKSxcbiAgICAgIHRhcCh0dCA9PiB0aGlzLmxvZ2dlci5pbmZvKCdBY3RpdmUgdG9nZ2xlIHRoZW1lOiAnICsgdHQpKVxuICAgICk7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHVibGljIEFQSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgb25Ub2dnbGUodGdnbDogYm9vbGVhbik6IHZvaWQge1xuICAgIGNvbnN0IHRoZW1lcyA9IHRoaXMudGhlbWVTZXJ2aWNlLnRoZW1lc1NuYXBzaG90O1xuICAgIGNvbnN0IGRlZmF1bHRUaGVtZSA9IHRoaXMudGhlbWVTZXJ2aWNlLmRlZmF1bHRUaGVtZVNuYXBzaG90XG4gICAgbGV0IHRoZW1lOiBUaGVtZVNwZWM7XG4gICAgaWYodGdnbCkge1xuICAgICAgdGhlbWUgPSB0aGVtZXNcbiAgICAgICAgLmZpbmQodGhlbWUgPT4gdGhlbWUuaWQgIT09IGRlZmF1bHRUaGVtZT8uaWQpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGVtZSA9IGRlZmF1bHRUaGVtZTtcbiAgICB9XG4gICAgaWYgKHRoZW1lKSB7XG4gICAgICB0aGlzLnRoZW1lUHJlZmVyZW5jZVNlcnZpY2UuYWN0aXZhdGVUaGVtZUFuZFNhdmUodGhlbWUuaWQpO1xuICAgIH1cbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcml2YXRlIG1ldGhvZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgZGVjaWRlVG9nZ2xlVGhlbWUoXG4gICAgZGVmYXVsdFRoZW1lOiBUaGVtZVNwZWMsXG4gICAgYWN0aXZlVGhlbWU6IFRoZW1lU3BlY1xuICApOiBUb2dnbGVUaGVtZSB7XG4gICAgaWYoZGVmYXVsdFRoZW1lPy5pZCA9PT0gYWN0aXZlVGhlbWU/LmlkKXtcbiAgICAgIHJldHVybiAnZGVmYXVsdCc7XG4gICAgfSBlbHNlICB7XG4gICAgICByZXR1cm4gJ3NlY29uZGFyeSc7XG4gICAgfVxuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwibGF5b3V0LXJvdyBwbGFjZS1zdGFydC1jZW50ZXJcIiAqbmdJZj1cImFjdGl2ZVRvZ2dsZVRoZW1lJCB8IGFzeW5jIGFzIGFjdGl2ZVRvZ2dsZVRoZW1lXCI+XG4gIDxtYXQtc2xpZGUtdG9nZ2xlIFtuZ01vZGVsXT1cImFjdGl2ZVRvZ2dsZVRoZW1lICE9PSAnZGVmYXVsdCdcIlxuICAgICAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJvblRvZ2dsZSgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgICAgW2NvbG9yXT1cImNvbG9yXCJcbiAgPlxuICA8L21hdC1zbGlkZS10b2dnbGU+XG4gIDxtYXQtaWNvbiBbY29sb3JdPVwiY29sb3JcIj5cbiAgICB7e2FjdGl2ZVRvZ2dsZVRoZW1lID09PSAnZGVmYXVsdCcgPyAnbGlnaHRfbW9kZScgOiAnYnJpZ2h0bmVzc18yJ319XG4gIDwvbWF0LWljb24+XG48L2Rpdj5cblxuIl19
@@ -68,10 +68,10 @@ export class ElderDateSwitcherComponent extends FormFieldBaseComponent {
68
68
  }
69
69
  }
70
70
  ElderDateSwitcherComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: ElderDateSwitcherComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
71
- ElderDateSwitcherComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.0", type: ElderDateSwitcherComponent, selector: "elder-date-switcher", inputs: { datePickerEnabled: "datePickerEnabled", datePickerTouchUi: "datePickerTouchUi", date: "date" }, outputs: { dateChange: "dateChange" }, providers: buildFormIntegrationProviders(ElderDateSwitcherComponent), usesInheritance: true, ngImport: i0, template: "<mat-form-field subscriptSizing=\"dynamic\" >\n\n <mat-label *ngIf=\"label\">{{label | translate}}</mat-label>\n <elder-local-date-input\n arrows today autoDatePicker datePickerTouchUi\n [datePickerEnabled]=\"false\"\n [datePickerTouchUi]=\"datePickerTouchUi\"\n [value]=\"value$ | async\"\n (valueUpdated)=\"updateValue($event)\"\n >\n </elder-local-date-input>\n</mat-form-field>\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2.MatLabel, selector: "mat-label" }, { kind: "component", type: i3.ElderLocalDateInputComponent, selector: "elder-local-date-input", inputs: ["zone", "autoDatePicker", "arrows", "today", "center", "datePickerTouchUi", "allowNull", "datePickerEnabled", "isoValue", "dateValue", "isoDateValue"], outputs: ["blurred", "valueUpdatedBlur", "isoValueChange", "dateValueChange", "isoDateValueChange"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i4.TranslatePipe, name: "translate" }], viewProviders: [ViewProviders.ParentControlContainer], changeDetection: i0.ChangeDetectionStrategy.OnPush });
71
+ ElderDateSwitcherComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.0", type: ElderDateSwitcherComponent, selector: "elder-date-switcher", inputs: { datePickerEnabled: "datePickerEnabled", datePickerTouchUi: "datePickerTouchUi", date: "date" }, outputs: { dateChange: "dateChange" }, host: { classAttribute: "elder-form-field-host" }, providers: buildFormIntegrationProviders(ElderDateSwitcherComponent), usesInheritance: true, ngImport: i0, template: "<mat-form-field subscriptSizing=\"dynamic\" class=\"flex full\">\n <mat-label *ngIf=\"label\">{{label | translate}}</mat-label>\n <elder-local-date-input\n arrows today autoDatePicker datePickerTouchUi\n [datePickerEnabled]=\"false\"\n [datePickerTouchUi]=\"datePickerTouchUi\"\n [value]=\"value$ | async\"\n (valueUpdated)=\"updateValue($event)\"\n >\n </elder-local-date-input>\n</mat-form-field>\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2.MatLabel, selector: "mat-label" }, { kind: "component", type: i3.ElderLocalDateInputComponent, selector: "elder-local-date-input", inputs: ["zone", "autoDatePicker", "arrows", "today", "center", "datePickerTouchUi", "allowNull", "datePickerEnabled", "isoValue", "dateValue", "isoDateValue"], outputs: ["blurred", "valueUpdatedBlur", "isoValueChange", "dateValueChange", "isoDateValueChange"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i4.TranslatePipe, name: "translate" }], viewProviders: [ViewProviders.ParentControlContainer], changeDetection: i0.ChangeDetectionStrategy.OnPush });
72
72
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: ElderDateSwitcherComponent, decorators: [{
73
73
  type: Component,
74
- args: [{ selector: 'elder-date-switcher', changeDetection: ChangeDetectionStrategy.OnPush, providers: buildFormIntegrationProviders(ElderDateSwitcherComponent), viewProviders: [ViewProviders.ParentControlContainer], template: "<mat-form-field subscriptSizing=\"dynamic\" >\n\n <mat-label *ngIf=\"label\">{{label | translate}}</mat-label>\n <elder-local-date-input\n arrows today autoDatePicker datePickerTouchUi\n [datePickerEnabled]=\"false\"\n [datePickerTouchUi]=\"datePickerTouchUi\"\n [value]=\"value$ | async\"\n (valueUpdated)=\"updateValue($event)\"\n >\n </elder-local-date-input>\n</mat-form-field>\n" }]
74
+ args: [{ selector: 'elder-date-switcher', changeDetection: ChangeDetectionStrategy.OnPush, host: { 'class': 'elder-form-field-host' }, providers: buildFormIntegrationProviders(ElderDateSwitcherComponent), viewProviders: [ViewProviders.ParentControlContainer], template: "<mat-form-field subscriptSizing=\"dynamic\" class=\"flex full\">\n <mat-label *ngIf=\"label\">{{label | translate}}</mat-label>\n <elder-local-date-input\n arrows today autoDatePicker datePickerTouchUi\n [datePickerEnabled]=\"false\"\n [datePickerTouchUi]=\"datePickerTouchUi\"\n [value]=\"value$ | async\"\n (valueUpdated)=\"updateValue($event)\"\n >\n </elder-local-date-input>\n</mat-form-field>\n" }]
75
75
  }], ctorParameters: function () { return []; }, propDecorators: { datePickerEnabled: [{
76
76
  type: Input
77
77
  }], datePickerTouchUi: [{
@@ -81,4 +81,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0", ngImpor
81
81
  }], date: [{
82
82
  type: Input
83
83
  }] } });
84
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItZGF0ZS1zd2l0Y2hlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL3RpbWUvZWxkZXItZGF0ZS1zd2l0Y2hlci9lbGRlci1kYXRlLXN3aXRjaGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvdGltZS9lbGRlci1kYXRlLXN3aXRjaGVyL2VsZGVyLWRhdGUtc3dpdGNoZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3hGLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUNuRCxPQUFPLEVBQUMsc0JBQXNCLEVBQUMsTUFBTSxpREFBaUQsQ0FBQztBQUN2RixPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3hDLE9BQU8sRUFBQyw2QkFBNkIsRUFBQyxNQUFNLGtEQUFrRCxDQUFDO0FBQy9GLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxzQ0FBc0MsQ0FBQztBQUVuRSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFDeEQsT0FBTyxFQUFDLEdBQUcsRUFBQyxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7QUFVbkMsTUFBTSxPQUFPLDBCQUEyQixTQUFRLHNCQUFpQztJQWtCL0U7Ozs7Z0ZBSTRFO0lBRTVFO1FBQ0UsS0FBSyxFQUFFLENBQUM7UUF2QlY7Ozs7b0ZBSTRFO1FBRTNELFdBQU0sR0FBRyxhQUFhLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFekUscURBQXFEO1FBRTlDLHNCQUFpQixHQUFHLElBQUksQ0FBQztRQUVoQywrREFBK0Q7UUFFeEQsc0JBQWlCLEdBQUcsS0FBSyxDQUFDO1FBVS9CLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVEOzs7O2dGQUk0RTtJQUVyRSxRQUFRLEtBQVUsQ0FBQztJQUUxQjs7OztnRkFJNEU7SUFFNUU7OztPQUdHO0lBQ0gsSUFDVyxVQUFVO1FBQ25CLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQzFCLEdBQUcsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQ3pFLENBQUM7SUFDSixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsSUFDVyxJQUFJLENBQUMsSUFBVTtRQUN4QixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0lBQzVELENBQUM7SUFFRDs7OztnRkFJNEU7SUFFbEUsWUFBWSxDQUFDLENBQVksRUFBRSxDQUFZO1FBQy9DLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ2IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO1lBQ2IsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDZCxDQUFDOzt1SEF6RVUsMEJBQTBCOzJHQUExQiwwQkFBMEIsK0xBSDFCLDZCQUE2QixDQUFDLDBCQUEwQixDQUFDLGlEQ2Z0RSxvWkFZQSx5M0JESWlCLENBQUMsYUFBYSxDQUFDLHNCQUFzQixDQUFDOzJGQUUxQywwQkFBMEI7a0JBUnRDLFNBQVM7K0JBQ0UscUJBQXFCLG1CQUdkLHVCQUF1QixDQUFDLE1BQU0sYUFDcEMsNkJBQTZCLDRCQUE0QixpQkFDckQsQ0FBQyxhQUFhLENBQUMsc0JBQXNCLENBQUM7MEVBYzlDLGlCQUFpQjtzQkFEdkIsS0FBSztnQkFLQyxpQkFBaUI7c0JBRHZCLEtBQUs7Z0JBaUNLLFVBQVU7c0JBRHBCLE1BQU07Z0JBWUksSUFBSTtzQkFEZCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0LCBPdXRwdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtMb2dnZXJGYWN0b3J5fSBmcm9tICdAZWxkZXJieXRlL3RzLWxvZ2dlcic7XG5pbXBvcnQge0Zvcm1GaWVsZEJhc2VDb21wb25lbnR9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi9mb3Jtcy9mb3JtLWZpZWxkLWJhc2UuY29tcG9uZW50JztcbmltcG9ydCB7TG9jYWxEYXRlfSBmcm9tICdAanMtam9kYS9jb3JlJztcbmltcG9ydCB7YnVpbGRGb3JtSW50ZWdyYXRpb25Qcm92aWRlcnN9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi9mb3Jtcy90ZW1wbGF0ZS1jb21wb3NpdGUtY29udHJvbCc7XG5pbXBvcnQge1ZpZXdQcm92aWRlcnN9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi9mb3Jtcy92aWV3LXByb3ZpZGVycyc7XG5pbXBvcnQge09ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtUaW1lVXRpbH0gZnJvbSAnLi4vLi4vLi4vY29tbW9uL3RpbWUvdGltZS11dGlsJztcbmltcG9ydCB7bWFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2VsZGVyLWRhdGUtc3dpdGNoZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vZWxkZXItZGF0ZS1zd2l0Y2hlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2VsZGVyLWRhdGUtc3dpdGNoZXIuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHByb3ZpZGVyczogYnVpbGRGb3JtSW50ZWdyYXRpb25Qcm92aWRlcnMoRWxkZXJEYXRlU3dpdGNoZXJDb21wb25lbnQpLFxuICB2aWV3UHJvdmlkZXJzOiBbVmlld1Byb3ZpZGVycy5QYXJlbnRDb250cm9sQ29udGFpbmVyXVxufSlcbmV4cG9ydCBjbGFzcyBFbGRlckRhdGVTd2l0Y2hlckNvbXBvbmVudCBleHRlbmRzIEZvcm1GaWVsZEJhc2VDb21wb25lbnQ8TG9jYWxEYXRlPiBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEZpZWxkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSByZWFkb25seSBsb2dnZXIgPSBMb2dnZXJGYWN0b3J5LmdldExvZ2dlcih0aGlzLmNvbnN0cnVjdG9yLm5hbWUpO1xuXG4gIC8qKiBJZiB0cnVlLCBkYXRlIHBpY2tlciBmdW5jdGlvbmFsaXR5IGlzIGVuYWJsZWQuICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBkYXRlUGlja2VyRW5hYmxlZCA9IHRydWU7XG5cbiAgLyoqIElmIHRydWUsIHRvdWNoIG9wdGltaXplZCBtb2RlIG9mIGRhdGUgcGlja2VyIGlzIGVuYWJsZWQuICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBkYXRlUGlja2VyVG91Y2hVaSA9IGZhbHNlO1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBDb25zdHJ1Y3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy51cGRhdGVWYWx1ZShMb2NhbERhdGUubm93KCkpO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIExpZmUgQ3ljbGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge31cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJvcGVydGllcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICAvKipcbiAgICogRW1pdHMgZGF0ZSB1cG9uIGludGVybmFsIGRhdGUgY2hhbmdlLlxuICAgKiBAZGVwcmVjYXRlZCBNaWdyYXRlIHlvdXIgY29kZSB0byB1c2UgTG9jYWxEYXRlXG4gICAqL1xuICBAT3V0cHV0KClcbiAgcHVibGljIGdldCBkYXRlQ2hhbmdlKCk6IE9ic2VydmFibGU8RGF0ZT4ge1xuICAgIHJldHVybiB0aGlzLnZhbHVlQ2hhbmdlLnBpcGUoXG4gICAgICBtYXAobG9jYWxEYXRlID0+IGxvY2FsRGF0ZSA/IFRpbWVVdGlsLmxvY2FsRGF0ZVRvRGF0ZShsb2NhbERhdGUpIDogbnVsbClcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSBkYXRlXG4gICAqIEBkZXByZWNhdGVkIE1pZ3JhdGUgeW91ciBjb2RlIHRvIHVzZSBMb2NhbERhdGVcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgZGF0ZShkYXRlOiBEYXRlKSB7XG4gICAgdGhpcy52YWx1ZSA9IGRhdGUgPyBUaW1lVXRpbC5kYXRlVG9Mb2NhbERhdGUoZGF0ZSkgOiBudWxsO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByaXZhdGUgTWV0aG9kcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJvdGVjdGVkIHZhbHVlc0VxdWFscyhhOiBMb2NhbERhdGUsIGI6IExvY2FsRGF0ZSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAoYSAmJiBiKVxuICAgICAgPyBhLmVxdWFscyhiKVxuICAgICAgOiBhID09PSBiO1xuICB9XG5cblxufVxuIiwiPG1hdC1mb3JtLWZpZWxkIHN1YnNjcmlwdFNpemluZz1cImR5bmFtaWNcIiA+XG5cbiAgPG1hdC1sYWJlbCAqbmdJZj1cImxhYmVsXCI+e3tsYWJlbCB8IHRyYW5zbGF0ZX19PC9tYXQtbGFiZWw+XG4gIDxlbGRlci1sb2NhbC1kYXRlLWlucHV0XG4gICAgYXJyb3dzIHRvZGF5IGF1dG9EYXRlUGlja2VyIGRhdGVQaWNrZXJUb3VjaFVpXG4gICAgW2RhdGVQaWNrZXJFbmFibGVkXT1cImZhbHNlXCJcbiAgICBbZGF0ZVBpY2tlclRvdWNoVWldPVwiZGF0ZVBpY2tlclRvdWNoVWlcIlxuICAgIFt2YWx1ZV09XCJ2YWx1ZSQgfCBhc3luY1wiXG4gICAgKHZhbHVlVXBkYXRlZCk9XCJ1cGRhdGVWYWx1ZSgkZXZlbnQpXCJcbiAgPlxuICA8L2VsZGVyLWxvY2FsLWRhdGUtaW5wdXQ+XG48L21hdC1mb3JtLWZpZWxkPlxuIl19
84
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItZGF0ZS1zd2l0Y2hlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL3RpbWUvZWxkZXItZGF0ZS1zd2l0Y2hlci9lbGRlci1kYXRlLXN3aXRjaGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvdGltZS9lbGRlci1kYXRlLXN3aXRjaGVyL2VsZGVyLWRhdGUtc3dpdGNoZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3hGLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUNuRCxPQUFPLEVBQUMsc0JBQXNCLEVBQUMsTUFBTSxpREFBaUQsQ0FBQztBQUN2RixPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3hDLE9BQU8sRUFBQyw2QkFBNkIsRUFBQyxNQUFNLGtEQUFrRCxDQUFDO0FBQy9GLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxzQ0FBc0MsQ0FBQztBQUVuRSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFDeEQsT0FBTyxFQUFDLEdBQUcsRUFBQyxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7QUFZbkMsTUFBTSxPQUFPLDBCQUEyQixTQUFRLHNCQUFpQztJQWtCL0U7Ozs7Z0ZBSTRFO0lBRTVFO1FBQ0UsS0FBSyxFQUFFLENBQUM7UUF2QlY7Ozs7b0ZBSTRFO1FBRTNELFdBQU0sR0FBRyxhQUFhLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFekUscURBQXFEO1FBRTlDLHNCQUFpQixHQUFHLElBQUksQ0FBQztRQUVoQywrREFBK0Q7UUFFeEQsc0JBQWlCLEdBQUcsS0FBSyxDQUFDO1FBVS9CLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVEOzs7O2dGQUk0RTtJQUVyRSxRQUFRLEtBQVUsQ0FBQztJQUUxQjs7OztnRkFJNEU7SUFFNUU7OztPQUdHO0lBQ0gsSUFDVyxVQUFVO1FBQ25CLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQzFCLEdBQUcsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQ3pFLENBQUM7SUFDSixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsSUFDVyxJQUFJLENBQUMsSUFBVTtRQUN4QixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0lBQzVELENBQUM7SUFFRDs7OztnRkFJNEU7SUFFbEUsWUFBWSxDQUFDLENBQVksRUFBRSxDQUFZO1FBQy9DLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ2IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO1lBQ2IsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDZCxDQUFDOzt1SEF6RVUsMEJBQTBCOzJHQUExQiwwQkFBMEIsa1BBSDFCLDZCQUE2QixDQUFDLDBCQUEwQixDQUFDLGlEQ2pCdEUscWFBV0EseTNCRE9pQixDQUFDLGFBQWEsQ0FBQyxzQkFBc0IsQ0FBQzsyRkFFMUMsMEJBQTBCO2tCQVZ0QyxTQUFTOytCQUNFLHFCQUFxQixtQkFHZCx1QkFBdUIsQ0FBQyxNQUFNLFFBRXpDLEVBQUMsT0FBTyxFQUFFLHVCQUF1QixFQUFDLGFBQzdCLDZCQUE2Qiw0QkFBNEIsaUJBQ3JELENBQUMsYUFBYSxDQUFDLHNCQUFzQixDQUFDOzBFQWM5QyxpQkFBaUI7c0JBRHZCLEtBQUs7Z0JBS0MsaUJBQWlCO3NCQUR2QixLQUFLO2dCQWlDSyxVQUFVO3NCQURwQixNQUFNO2dCQVlJLElBQUk7c0JBRGQsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TG9nZ2VyRmFjdG9yeX0gZnJvbSAnQGVsZGVyYnl0ZS90cy1sb2dnZXInO1xuaW1wb3J0IHtGb3JtRmllbGRCYXNlQ29tcG9uZW50fSBmcm9tICcuLi8uLi8uLi9jb21tb24vZm9ybXMvZm9ybS1maWVsZC1iYXNlLmNvbXBvbmVudCc7XG5pbXBvcnQge0xvY2FsRGF0ZX0gZnJvbSAnQGpzLWpvZGEvY29yZSc7XG5pbXBvcnQge2J1aWxkRm9ybUludGVncmF0aW9uUHJvdmlkZXJzfSBmcm9tICcuLi8uLi8uLi9jb21tb24vZm9ybXMvdGVtcGxhdGUtY29tcG9zaXRlLWNvbnRyb2wnO1xuaW1wb3J0IHtWaWV3UHJvdmlkZXJzfSBmcm9tICcuLi8uLi8uLi9jb21tb24vZm9ybXMvdmlldy1wcm92aWRlcnMnO1xuaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7VGltZVV0aWx9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi90aW1lL3RpbWUtdXRpbCc7XG5pbXBvcnQge21hcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdlbGRlci1kYXRlLXN3aXRjaGVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2VsZGVyLWRhdGUtc3dpdGNoZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9lbGRlci1kYXRlLXN3aXRjaGVyLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWhvc3QtbWV0YWRhdGEtcHJvcGVydHlcbiAgaG9zdDogeydjbGFzcyc6ICdlbGRlci1mb3JtLWZpZWxkLWhvc3QnfSxcbiAgcHJvdmlkZXJzOiBidWlsZEZvcm1JbnRlZ3JhdGlvblByb3ZpZGVycyhFbGRlckRhdGVTd2l0Y2hlckNvbXBvbmVudCksXG4gIHZpZXdQcm92aWRlcnM6IFtWaWV3UHJvdmlkZXJzLlBhcmVudENvbnRyb2xDb250YWluZXJdXG59KVxuZXhwb3J0IGNsYXNzIEVsZGVyRGF0ZVN3aXRjaGVyQ29tcG9uZW50IGV4dGVuZHMgRm9ybUZpZWxkQmFzZUNvbXBvbmVudDxMb2NhbERhdGU+IGltcGxlbWVudHMgT25Jbml0IHtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogRmllbGRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIHJlYWRvbmx5IGxvZ2dlciA9IExvZ2dlckZhY3RvcnkuZ2V0TG9nZ2VyKHRoaXMuY29uc3RydWN0b3IubmFtZSk7XG5cbiAgLyoqIElmIHRydWUsIGRhdGUgcGlja2VyIGZ1bmN0aW9uYWxpdHkgaXMgZW5hYmxlZC4gKi9cbiAgQElucHV0KClcbiAgcHVibGljIGRhdGVQaWNrZXJFbmFibGVkID0gdHJ1ZTtcblxuICAvKiogSWYgdHJ1ZSwgdG91Y2ggb3B0aW1pemVkIG1vZGUgb2YgZGF0ZSBwaWNrZXIgaXMgZW5hYmxlZC4gKi9cbiAgQElucHV0KClcbiAgcHVibGljIGRhdGVQaWNrZXJUb3VjaFVpID0gZmFsc2U7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIENvbnN0cnVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLnVwZGF0ZVZhbHVlKExvY2FsRGF0ZS5ub3coKSk7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogTGlmZSBDeWNsZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7fVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcm9wZXJ0aWVzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIC8qKlxuICAgKiBFbWl0cyBkYXRlIHVwb24gaW50ZXJuYWwgZGF0ZSBjaGFuZ2UuXG4gICAqIEBkZXByZWNhdGVkIE1pZ3JhdGUgeW91ciBjb2RlIHRvIHVzZSBMb2NhbERhdGVcbiAgICovXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgZ2V0IGRhdGVDaGFuZ2UoKTogT2JzZXJ2YWJsZTxEYXRlPiB7XG4gICAgcmV0dXJuIHRoaXMudmFsdWVDaGFuZ2UucGlwZShcbiAgICAgIG1hcChsb2NhbERhdGUgPT4gbG9jYWxEYXRlID8gVGltZVV0aWwubG9jYWxEYXRlVG9EYXRlKGxvY2FsRGF0ZSkgOiBudWxsKVxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogQHBhcmFtIGRhdGVcbiAgICogQGRlcHJlY2F0ZWQgTWlncmF0ZSB5b3VyIGNvZGUgdG8gdXNlIExvY2FsRGF0ZVxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBkYXRlKGRhdGU6IERhdGUpIHtcbiAgICB0aGlzLnZhbHVlID0gZGF0ZSA/IFRpbWVVdGlsLmRhdGVUb0xvY2FsRGF0ZShkYXRlKSA6IG51bGw7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJpdmF0ZSBNZXRob2RzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcm90ZWN0ZWQgdmFsdWVzRXF1YWxzKGE6IExvY2FsRGF0ZSwgYjogTG9jYWxEYXRlKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIChhICYmIGIpXG4gICAgICA/IGEuZXF1YWxzKGIpXG4gICAgICA6IGEgPT09IGI7XG4gIH1cblxuXG59XG4iLCI8bWF0LWZvcm0tZmllbGQgc3Vic2NyaXB0U2l6aW5nPVwiZHluYW1pY1wiIGNsYXNzPVwiZmxleCBmdWxsXCI+XG4gIDxtYXQtbGFiZWwgKm5nSWY9XCJsYWJlbFwiPnt7bGFiZWwgfCB0cmFuc2xhdGV9fTwvbWF0LWxhYmVsPlxuICA8ZWxkZXItbG9jYWwtZGF0ZS1pbnB1dFxuICAgIGFycm93cyB0b2RheSBhdXRvRGF0ZVBpY2tlciBkYXRlUGlja2VyVG91Y2hVaVxuICAgIFtkYXRlUGlja2VyRW5hYmxlZF09XCJmYWxzZVwiXG4gICAgW2RhdGVQaWNrZXJUb3VjaFVpXT1cImRhdGVQaWNrZXJUb3VjaFVpXCJcbiAgICBbdmFsdWVdPVwidmFsdWUkIHwgYXN5bmNcIlxuICAgICh2YWx1ZVVwZGF0ZWQpPVwidXBkYXRlVmFsdWUoJGV2ZW50KVwiXG4gID5cbiAgPC9lbGRlci1sb2NhbC1kYXRlLWlucHV0PlxuPC9tYXQtZm9ybS1maWVsZD5cbiJdfQ==
@@ -6,7 +6,7 @@ import * as i1 from '@angular/platform-browser';
6
6
  import { Duration, Period, TemporalQueries, LocalTime, Instant, LocalDate, nativeJs, ZoneId } from '@js-joda/core';
7
7
  import { LoggerFactory } from '@elderbyte/ts-logger';
8
8
  import { BehaviorSubject, Subject, EMPTY, combineLatest, merge, of, forkJoin, throwError, mergeWith, switchMap as switchMap$1, Observable, ReplaySubject, fromEvent, NEVER } from 'rxjs';
9
- import { distinctUntilChanged, map, filter, takeUntil, debounceTime, catchError, first, take, switchMap, mergeMap, takeWhile, tap, expand, reduce, startWith, skip, delay, share, throttleTime, combineLatestWith, flatMap, timeout, skipWhile } from 'rxjs/operators';
9
+ import { distinctUntilChanged, map, filter, takeUntil, debounceTime, catchError, first, take, switchMap, mergeMap, takeWhile, tap, expand, reduce, startWith, skip, delay, share, throttleTime, combineLatestWith, timeout, skipWhile } from 'rxjs/operators';
10
10
  import * as i1$2 from '@angular/common/http';
11
11
  import { HttpParams, HttpEventType, HttpRequest, HttpClient, HttpErrorResponse, HTTP_INTERCEPTORS } from '@angular/common/http';
12
12
  import { DataSource } from '@angular/cdk/collections';
@@ -7347,80 +7347,21 @@ class DataTransferProgressAggregate {
7347
7347
  **************************************************************************/
7348
7348
  DataTransferProgressAggregate.Empty = new DataTransferProgressAggregate(0, 0, 0, 0);
7349
7349
 
7350
- /**
7351
- * Represents a Http data transfer, either a download or upload.
7352
- */
7353
- class HttpDataTransfer {
7350
+ class DataTransferBase {
7354
7351
  /***************************************************************************
7355
7352
  * *
7356
7353
  * Constructor *
7357
7354
  * *
7358
7355
  **************************************************************************/
7359
- /**
7360
- * Creates a new HttpDataTransfer
7361
- * @param httpRequest The http request.
7362
- * @param name The name of this transfer (usually the file name)
7363
- * @param totalBytes The total bytes of the transfer. (If not set, will be auto discovered if possible)
7364
- */
7365
- constructor(httpRequest, name, totalBytes) {
7356
+ constructor(initialState, name) {
7366
7357
  /***************************************************************************
7367
7358
  * *
7368
7359
  * Fields *
7369
7360
  * *
7370
7361
  **************************************************************************/
7371
- this.logger = LoggerFactory.getLogger('HttpDataTransfer');
7372
7362
  this.abort$ = new Subject();
7373
- this._oldBytes = 0;
7374
7363
  this._name = name;
7375
- this._httpRequest = httpRequest;
7376
- this._state = new BehaviorSubject(DataTransferState.pending(totalBytes));
7377
- }
7378
- /***************************************************************************
7379
- * *
7380
- * Static Builder *
7381
- * *
7382
- **************************************************************************/
7383
- /**
7384
- * Creates a new HttpDataTransfer from a HttpClient HttpRequest.
7385
- * @param httpRequest
7386
- * @param name Name of this transfer
7387
- * @param totalBytes The total expected bytes
7388
- */
7389
- static fromRequest(httpRequest, name, totalBytes) {
7390
- return new HttpDataTransfer(httpRequest, name, totalBytes);
7391
- }
7392
- /***************************************************************************
7393
- * *
7394
- * Public API *
7395
- * *
7396
- **************************************************************************/
7397
- /**
7398
- * Starts the data transfer
7399
- */
7400
- start() {
7401
- return this._httpRequest.pipe(takeUntil(this.abort$), tap(event => {
7402
- switch (event.type) {
7403
- case HttpEventType.Sent:
7404
- this.onStart(event);
7405
- break;
7406
- case HttpEventType.UploadProgress:
7407
- case HttpEventType.DownloadProgress:
7408
- this.onProgress(event);
7409
- break;
7410
- case HttpEventType.Response:
7411
- this.onComplete(event);
7412
- break;
7413
- }
7414
- }, err => this.onError(err), () => this.finally()), catchError(err => {
7415
- return of(err);
7416
- }));
7417
- }
7418
- /**
7419
- * Aborts the data transfer
7420
- */
7421
- abort() {
7422
- this.abort$.next();
7423
- this.emitState(DataTransferState.aborted(this.stateSnapshot.progress));
7364
+ this._state = new BehaviorSubject(initialState);
7424
7365
  }
7425
7366
  /***************************************************************************
7426
7367
  * *
@@ -7463,6 +7404,93 @@ class HttpDataTransfer {
7463
7404
  get name() {
7464
7405
  return this._name;
7465
7406
  }
7407
+ /**
7408
+ * Aborts the data transfer
7409
+ */
7410
+ abort() {
7411
+ this.abort$.next();
7412
+ this.emitState(DataTransferState.aborted(this.stateSnapshot.progress));
7413
+ }
7414
+ /***************************************************************************
7415
+ * *
7416
+ * Private methods *
7417
+ * *
7418
+ **************************************************************************/
7419
+ emitState(newState) {
7420
+ this._state.next(newState);
7421
+ }
7422
+ }
7423
+
7424
+ /**
7425
+ * Represents a Http data transfer, either a download or upload.
7426
+ */
7427
+ class HttpDataTransfer extends DataTransferBase {
7428
+ /***************************************************************************
7429
+ * *
7430
+ * Constructor *
7431
+ * *
7432
+ **************************************************************************/
7433
+ /**
7434
+ * Creates a new HttpDataTransfer
7435
+ * @param httpRequest The http request.
7436
+ * @param name The name of this transfer (usually the file name)
7437
+ * @param totalBytes The total bytes of the transfer. (If not set, will be auto discovered if possible)
7438
+ */
7439
+ constructor(httpRequest, name, totalBytes) {
7440
+ super(DataTransferState.pending(totalBytes), name);
7441
+ /***************************************************************************
7442
+ * *
7443
+ * Fields *
7444
+ * *
7445
+ **************************************************************************/
7446
+ this.logger = LoggerFactory.getLogger(this.constructor.name);
7447
+ this._oldBytes = 0;
7448
+ this._httpRequest = httpRequest;
7449
+ }
7450
+ /***************************************************************************
7451
+ * *
7452
+ * Static Builder *
7453
+ * *
7454
+ **************************************************************************/
7455
+ /**
7456
+ * Creates a new HttpDataTransfer from a HttpClient HttpRequest.
7457
+ * @param httpRequest
7458
+ * @param name Name of this transfer
7459
+ * @param totalBytes The total expected bytes
7460
+ */
7461
+ static fromRequest(httpRequest, name, totalBytes) {
7462
+ return new HttpDataTransfer(httpRequest, name, totalBytes);
7463
+ }
7464
+ /***************************************************************************
7465
+ * *
7466
+ * Public API *
7467
+ * *
7468
+ **************************************************************************/
7469
+ /**
7470
+ * Starts the data transfer
7471
+ */
7472
+ start() {
7473
+ return this._httpRequest.pipe(takeUntil(this.abort$), tap({
7474
+ next: event => {
7475
+ switch (event.type) {
7476
+ case HttpEventType.Sent:
7477
+ this.onStart(event);
7478
+ break;
7479
+ case HttpEventType.UploadProgress:
7480
+ case HttpEventType.DownloadProgress:
7481
+ this.onProgress(event);
7482
+ break;
7483
+ case HttpEventType.Response:
7484
+ this.onComplete(event);
7485
+ break;
7486
+ }
7487
+ },
7488
+ error: err => this.onError(err),
7489
+ finalize: () => this.finally()
7490
+ }), catchError(err => {
7491
+ return of(err);
7492
+ }));
7493
+ }
7466
7494
  /***************************************************************************
7467
7495
  * *
7468
7496
  * Private methods *
@@ -7488,9 +7516,6 @@ class HttpDataTransfer {
7488
7516
  this.emitState(DataTransferState.completed(this.stateSnapshot.progress));
7489
7517
  }
7490
7518
  }
7491
- emitState(newState) {
7492
- this._state.next(newState);
7493
- }
7494
7519
  transferProgressFromResponse(event, previous) {
7495
7520
  return new DataTransferProgress(previous ? previous.totalBytes : 0, previous ? previous.bytesPerSec : 0, previous ? previous.avgBytesPerSec : 0, previous ? previous.totalBytes : 0, 100);
7496
7521
  }
@@ -8669,10 +8694,10 @@ class ElderThemeToggleComponent {
8669
8694
  }
8670
8695
  }
8671
8696
  ElderThemeToggleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: ElderThemeToggleComponent, deps: [{ token: ElderThemeService }, { token: ElderThemePreferenceService }], target: i0.ɵɵFactoryTarget.Component });
8672
- ElderThemeToggleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.0", type: ElderThemeToggleComponent, selector: "elder-theme-toggle", inputs: { color: "color" }, ngImport: i0, template: "<mat-slide-toggle *ngIf=\"activeToggleTheme$ | async as activeToggleTheme\"\n [ngModel]=\"activeToggleTheme !== 'default'\"\n (ngModelChange)=\"onToggle($event)\"\n [color]=\"color\"\n>\n <mat-icon [color]=\"color\">\n {{activeToggleTheme === 'default' ? 'light_mode' : 'brightness_2'}}\n </mat-icon>\n</mat-slide-toggle>\n", styles: [""], dependencies: [{ kind: "directive", type: i1$4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.MatSlideToggle, selector: "mat-slide-toggle", inputs: ["disabled", "disableRipple", "color", "tabIndex"], exportAs: ["matSlideToggle"] }, { kind: "component", type: i2$2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "pipe", type: i1$4.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
8697
+ ElderThemeToggleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.0", type: ElderThemeToggleComponent, selector: "elder-theme-toggle", inputs: { color: "color" }, ngImport: i0, template: "<div class=\"layout-row place-start-center\" *ngIf=\"activeToggleTheme$ | async as activeToggleTheme\">\n <mat-slide-toggle [ngModel]=\"activeToggleTheme !== 'default'\"\n (ngModelChange)=\"onToggle($event)\"\n [color]=\"color\"\n >\n </mat-slide-toggle>\n <mat-icon [color]=\"color\">\n {{activeToggleTheme === 'default' ? 'light_mode' : 'brightness_2'}}\n </mat-icon>\n</div>\n\n", styles: [""], dependencies: [{ kind: "directive", type: i1$4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.MatSlideToggle, selector: "mat-slide-toggle", inputs: ["disabled", "disableRipple", "color", "tabIndex"], exportAs: ["matSlideToggle"] }, { kind: "component", type: i2$2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "pipe", type: i1$4.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
8673
8698
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: ElderThemeToggleComponent, decorators: [{
8674
8699
  type: Component,
8675
- args: [{ selector: 'elder-theme-toggle', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-slide-toggle *ngIf=\"activeToggleTheme$ | async as activeToggleTheme\"\n [ngModel]=\"activeToggleTheme !== 'default'\"\n (ngModelChange)=\"onToggle($event)\"\n [color]=\"color\"\n>\n <mat-icon [color]=\"color\">\n {{activeToggleTheme === 'default' ? 'light_mode' : 'brightness_2'}}\n </mat-icon>\n</mat-slide-toggle>\n" }]
8700
+ args: [{ selector: 'elder-theme-toggle', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"layout-row place-start-center\" *ngIf=\"activeToggleTheme$ | async as activeToggleTheme\">\n <mat-slide-toggle [ngModel]=\"activeToggleTheme !== 'default'\"\n (ngModelChange)=\"onToggle($event)\"\n [color]=\"color\"\n >\n </mat-slide-toggle>\n <mat-icon [color]=\"color\">\n {{activeToggleTheme === 'default' ? 'light_mode' : 'brightness_2'}}\n </mat-icon>\n</div>\n\n" }]
8676
8701
  }], ctorParameters: function () { return [{ type: ElderThemeService }, { type: ElderThemePreferenceService }]; }, propDecorators: { color: [{
8677
8702
  type: Input
8678
8703
  }] } });
@@ -18604,10 +18629,10 @@ class ElderDateSwitcherComponent extends FormFieldBaseComponent {
18604
18629
  }
18605
18630
  }
18606
18631
  ElderDateSwitcherComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: ElderDateSwitcherComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
18607
- ElderDateSwitcherComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.0", type: ElderDateSwitcherComponent, selector: "elder-date-switcher", inputs: { datePickerEnabled: "datePickerEnabled", datePickerTouchUi: "datePickerTouchUi", date: "date" }, outputs: { dateChange: "dateChange" }, providers: buildFormIntegrationProviders(ElderDateSwitcherComponent), usesInheritance: true, ngImport: i0, template: "<mat-form-field subscriptSizing=\"dynamic\" >\n\n <mat-label *ngIf=\"label\">{{label | translate}}</mat-label>\n <elder-local-date-input\n arrows today autoDatePicker datePickerTouchUi\n [datePickerEnabled]=\"false\"\n [datePickerTouchUi]=\"datePickerTouchUi\"\n [value]=\"value$ | async\"\n (valueUpdated)=\"updateValue($event)\"\n >\n </elder-local-date-input>\n</mat-form-field>\n", styles: [""], dependencies: [{ kind: "directive", type: i1$4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i5$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i5$1.MatLabel, selector: "mat-label" }, { kind: "component", type: ElderLocalDateInputComponent, selector: "elder-local-date-input", inputs: ["zone", "autoDatePicker", "arrows", "today", "center", "datePickerTouchUi", "allowNull", "datePickerEnabled", "isoValue", "dateValue", "isoDateValue"], outputs: ["blurred", "valueUpdatedBlur", "isoValueChange", "dateValueChange", "isoDateValueChange"] }, { kind: "pipe", type: i1$4.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }], viewProviders: [ViewProviders.ParentControlContainer], changeDetection: i0.ChangeDetectionStrategy.OnPush });
18632
+ ElderDateSwitcherComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.0", type: ElderDateSwitcherComponent, selector: "elder-date-switcher", inputs: { datePickerEnabled: "datePickerEnabled", datePickerTouchUi: "datePickerTouchUi", date: "date" }, outputs: { dateChange: "dateChange" }, host: { classAttribute: "elder-form-field-host" }, providers: buildFormIntegrationProviders(ElderDateSwitcherComponent), usesInheritance: true, ngImport: i0, template: "<mat-form-field subscriptSizing=\"dynamic\" class=\"flex full\">\n <mat-label *ngIf=\"label\">{{label | translate}}</mat-label>\n <elder-local-date-input\n arrows today autoDatePicker datePickerTouchUi\n [datePickerEnabled]=\"false\"\n [datePickerTouchUi]=\"datePickerTouchUi\"\n [value]=\"value$ | async\"\n (valueUpdated)=\"updateValue($event)\"\n >\n </elder-local-date-input>\n</mat-form-field>\n", styles: [""], dependencies: [{ kind: "directive", type: i1$4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i5$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i5$1.MatLabel, selector: "mat-label" }, { kind: "component", type: ElderLocalDateInputComponent, selector: "elder-local-date-input", inputs: ["zone", "autoDatePicker", "arrows", "today", "center", "datePickerTouchUi", "allowNull", "datePickerEnabled", "isoValue", "dateValue", "isoDateValue"], outputs: ["blurred", "valueUpdatedBlur", "isoValueChange", "dateValueChange", "isoDateValueChange"] }, { kind: "pipe", type: i1$4.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }], viewProviders: [ViewProviders.ParentControlContainer], changeDetection: i0.ChangeDetectionStrategy.OnPush });
18608
18633
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: ElderDateSwitcherComponent, decorators: [{
18609
18634
  type: Component,
18610
- args: [{ selector: 'elder-date-switcher', changeDetection: ChangeDetectionStrategy.OnPush, providers: buildFormIntegrationProviders(ElderDateSwitcherComponent), viewProviders: [ViewProviders.ParentControlContainer], template: "<mat-form-field subscriptSizing=\"dynamic\" >\n\n <mat-label *ngIf=\"label\">{{label | translate}}</mat-label>\n <elder-local-date-input\n arrows today autoDatePicker datePickerTouchUi\n [datePickerEnabled]=\"false\"\n [datePickerTouchUi]=\"datePickerTouchUi\"\n [value]=\"value$ | async\"\n (valueUpdated)=\"updateValue($event)\"\n >\n </elder-local-date-input>\n</mat-form-field>\n" }]
18635
+ args: [{ selector: 'elder-date-switcher', changeDetection: ChangeDetectionStrategy.OnPush, host: { 'class': 'elder-form-field-host' }, providers: buildFormIntegrationProviders(ElderDateSwitcherComponent), viewProviders: [ViewProviders.ParentControlContainer], template: "<mat-form-field subscriptSizing=\"dynamic\" class=\"flex full\">\n <mat-label *ngIf=\"label\">{{label | translate}}</mat-label>\n <elder-local-date-input\n arrows today autoDatePicker datePickerTouchUi\n [datePickerEnabled]=\"false\"\n [datePickerTouchUi]=\"datePickerTouchUi\"\n [value]=\"value$ | async\"\n (valueUpdated)=\"updateValue($event)\"\n >\n </elder-local-date-input>\n</mat-form-field>\n" }]
18611
18636
  }], ctorParameters: function () { return []; }, propDecorators: { datePickerEnabled: [{
18612
18637
  type: Input
18613
18638
  }], datePickerTouchUi: [{
@@ -21081,13 +21106,15 @@ class ElderDataTransferService {
21081
21106
  * Fields *
21082
21107
  * *
21083
21108
  **************************************************************************/
21084
- this.logger = LoggerFactory.getLogger('ElderDataTransferService');
21109
+ this.logger = LoggerFactory.getLogger(this.constructor.name);
21085
21110
  this._transfers = new BehaviorSubject([]);
21086
21111
  this._uploadQueue = new Subject();
21087
21112
  this._parallelUploads = 1;
21088
21113
  this._completed = new Subject();
21089
21114
  this._uploadQueue.pipe(mergeMap(transfer => transfer.start().pipe(catchError(err => of(err)), // Avoid killing queue
21090
- tap(null, null, () => this._completed.next(transfer))), this._parallelUploads)).subscribe(completedJob => { }, err => this.logger.error('Data transfer failed', err));
21115
+ tap({ complete: () => this._completed.next(transfer) })), this._parallelUploads)).subscribe({
21116
+ error: err => this.logger.error('Data transfer failed', err)
21117
+ });
21091
21118
  }
21092
21119
  /***************************************************************************
21093
21120
  * *
@@ -21104,7 +21131,7 @@ class ElderDataTransferService {
21104
21131
  return this._completed.asObservable();
21105
21132
  }
21106
21133
  get transferAggregate() {
21107
- return this.transfers.pipe(flatMap(transfers => this.aggregateProgress(transfers)), startWith(DataTransferProgressAggregate.Empty));
21134
+ return this.transfers.pipe(switchMap$1(transfers => this.aggregateProgress(transfers)), startWith(DataTransferProgressAggregate.Empty));
21108
21135
  }
21109
21136
  /***************************************************************************
21110
21137
  * *
@@ -21199,10 +21226,10 @@ class HttpDataTransferOverviewComponent {
21199
21226
  }
21200
21227
  }
21201
21228
  HttpDataTransferOverviewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: HttpDataTransferOverviewComponent, deps: [{ token: ElderDataTransferService }], target: i0.ɵɵFactoryTarget.Component });
21202
- HttpDataTransferOverviewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.0", type: HttpDataTransferOverviewComponent, selector: "elder-data-transfer-overview", ngImport: i0, template: "<div class=\"layout-col full\">\n\n <div class=\"layout-col flex\" *ngIf=\"transfers$ | async as transfers\">\n\n <div *ngIf=\"transfers.length > 0 else noData\" class=\"layout-col flex scroll-list\">\n <elder-data-transfer class=\"flex-none\"\n *ngFor=\"let transfer of transfers\"\n [transfer]=\"transfer\">\n </elder-data-transfer>\n </div>\n\n <ng-template #noData>\n <div class=\"layout-col place-center-center flex\">\n <span class=\"mat-subtitle-2 noselect\" style=\"color: gray\">No data transfers.</span>\n </div>\n </ng-template>\n\n </div>\n\n\n <mat-toolbar class=\"flex-none mat-elevation-z5\">\n <elder-data-transfer-aggregate class=\"flex\" [hiddenWhenInactive]=\"false\"></elder-data-transfer-aggregate>\n </mat-toolbar>\n</div>\n", styles: [":host{min-width:0;min-height:0}.scroll-list{overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch}.scroll-fix{min-width:0;min-height:0}\n"], dependencies: [{ kind: "directive", type: i1$4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4$1.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { kind: "component", type: HttpDataTransferComponent, selector: "elder-data-transfer", inputs: ["transfer"] }, { kind: "component", type: HttpDataTransferAggregateComponent, selector: "elder-data-transfer-aggregate", inputs: ["hiddenWhenInactive"] }, { kind: "pipe", type: i1$4.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
21229
+ HttpDataTransferOverviewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.0", type: HttpDataTransferOverviewComponent, selector: "elder-data-transfer-overview", ngImport: i0, template: "<mat-card appearance=\"raised\" class=\"layout-col full\">\n\n <div class=\"layout-col flex\" *ngIf=\"transfers$ | async as transfers\">\n\n <div *ngIf=\"transfers.length > 0 else noData\" class=\"layout-col flex scroll-list\">\n <elder-data-transfer class=\"flex-none\"\n *ngFor=\"let transfer of transfers\"\n [transfer]=\"transfer\">\n </elder-data-transfer>\n </div>\n\n <ng-template #noData>\n <div class=\"layout-col place-center-center flex\">\n <span class=\"mat-subtitle-2 noselect\" style=\"color: gray\">No data transfers.</span>\n </div>\n </ng-template>\n\n </div>\n\n\n <mat-toolbar class=\"flex-none mat-elevation-z5\">\n <elder-data-transfer-aggregate class=\"flex\" [hiddenWhenInactive]=\"false\"></elder-data-transfer-aggregate>\n </mat-toolbar>\n</mat-card>\n", styles: [":host{min-width:0;min-height:0}.scroll-list{overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch}.scroll-fix{min-width:0;min-height:0}\n"], dependencies: [{ kind: "directive", type: i1$4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4$1.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { kind: "component", type: i17.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "component", type: HttpDataTransferComponent, selector: "elder-data-transfer", inputs: ["transfer"] }, { kind: "component", type: HttpDataTransferAggregateComponent, selector: "elder-data-transfer-aggregate", inputs: ["hiddenWhenInactive"] }, { kind: "pipe", type: i1$4.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
21203
21230
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: HttpDataTransferOverviewComponent, decorators: [{
21204
21231
  type: Component,
21205
- args: [{ selector: 'elder-data-transfer-overview', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"layout-col full\">\n\n <div class=\"layout-col flex\" *ngIf=\"transfers$ | async as transfers\">\n\n <div *ngIf=\"transfers.length > 0 else noData\" class=\"layout-col flex scroll-list\">\n <elder-data-transfer class=\"flex-none\"\n *ngFor=\"let transfer of transfers\"\n [transfer]=\"transfer\">\n </elder-data-transfer>\n </div>\n\n <ng-template #noData>\n <div class=\"layout-col place-center-center flex\">\n <span class=\"mat-subtitle-2 noselect\" style=\"color: gray\">No data transfers.</span>\n </div>\n </ng-template>\n\n </div>\n\n\n <mat-toolbar class=\"flex-none mat-elevation-z5\">\n <elder-data-transfer-aggregate class=\"flex\" [hiddenWhenInactive]=\"false\"></elder-data-transfer-aggregate>\n </mat-toolbar>\n</div>\n", styles: [":host{min-width:0;min-height:0}.scroll-list{overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch}.scroll-fix{min-width:0;min-height:0}\n"] }]
21232
+ args: [{ selector: 'elder-data-transfer-overview', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-card appearance=\"raised\" class=\"layout-col full\">\n\n <div class=\"layout-col flex\" *ngIf=\"transfers$ | async as transfers\">\n\n <div *ngIf=\"transfers.length > 0 else noData\" class=\"layout-col flex scroll-list\">\n <elder-data-transfer class=\"flex-none\"\n *ngFor=\"let transfer of transfers\"\n [transfer]=\"transfer\">\n </elder-data-transfer>\n </div>\n\n <ng-template #noData>\n <div class=\"layout-col place-center-center flex\">\n <span class=\"mat-subtitle-2 noselect\" style=\"color: gray\">No data transfers.</span>\n </div>\n </ng-template>\n\n </div>\n\n\n <mat-toolbar class=\"flex-none mat-elevation-z5\">\n <elder-data-transfer-aggregate class=\"flex\" [hiddenWhenInactive]=\"false\"></elder-data-transfer-aggregate>\n </mat-toolbar>\n</mat-card>\n", styles: [":host{min-width:0;min-height:0}.scroll-list{overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch}.scroll-fix{min-width:0;min-height:0}\n"] }]
21206
21233
  }], ctorParameters: function () { return [{ type: ElderDataTransferService }]; } });
21207
21234
 
21208
21235
  class HttpDataTransferIndicatorComponent {
@@ -21231,10 +21258,10 @@ class HttpDataTransferIndicatorComponent {
21231
21258
  }
21232
21259
  }
21233
21260
  HttpDataTransferIndicatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: HttpDataTransferIndicatorComponent, deps: [{ token: ElderDataTransferService }], target: i0.ɵɵFactoryTarget.Component });
21234
- HttpDataTransferIndicatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.0", type: HttpDataTransferIndicatorComponent, selector: "elder-data-transfer-indicator", inputs: { activeColor: "activeColor", inactiveColor: "inactiveColor" }, ngImport: i0, template: "\n<ng-container *ngIf=\"aggregate$ | async as aggregate\">\n\n <button mat-icon-button type=\"button\"\n class=\"layout-row place-center-center\"\n [elderOverlayTrigger]=\"overlay\">\n\n <mat-icon *ngIf=\"aggregate.inTransfer == 0\" [color]=\"inactiveColor\">cloud_upload</mat-icon>\n\n <mat-progress-spinner\n *ngIf=\"aggregate.inTransfer > 0\"\n [matBadge]=\"aggregate.inTransfer\"\n matBadgePosition=\"above after\"\n matBadgeSize=\"small\"\n [matBadgeColor]=\"activeColor\"\n [color]=\"activeColor\"\n [strokeWidth]=\"3\"\n [diameter]=\"38\"\n [value]=\"aggregate.percentDone\"\n mode=\"determinate\"\n >\n </mat-progress-spinner>\n\n </button>\n</ng-container>\n\n<elder-overlay #overlay=\"elderOverlay\" originX=\"center\" overlayX=\"center\">\n <elder-data-transfer-overview class=\"panel\">\n </elder-data-transfer-overview>\n</elder-overlay>\n\n", styles: [".panel{width:380px;height:350px;background-color:#fff;border-radius:5px;overflow:hidden;box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}\n"], dependencies: [{ kind: "directive", type: i1$4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2$2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i5.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i4$4.MatBadge, selector: "[matBadge]", inputs: ["matBadgeDisabled", "matBadgeColor", "matBadgeOverlap", "matBadgePosition", "matBadge", "matBadgeDescription", "matBadgeSize", "matBadgeHidden"] }, { kind: "component", type: i6$2.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "component", type: ElderOverlayComponent, selector: "elder-overlay", inputs: ["originX", "originY", "overlayX", "overlayY", "offsetY", "offsetX", "backdrop", "backdropVisible", "origin", "positionStrategy", "overlaySize"], outputs: ["keydownEvents", "attachedChange"], exportAs: ["elderOverlay"] }, { kind: "directive", type: ElderOverlayTriggerDirective, selector: "[elderOverlayTrigger]", inputs: ["elderOverlayTrigger", "elderOverlayTriggerType", "elderOverlayTriggerEnabled"] }, { kind: "component", type: HttpDataTransferOverviewComponent, selector: "elder-data-transfer-overview" }, { kind: "pipe", type: i1$4.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
21261
+ HttpDataTransferIndicatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.0", type: HttpDataTransferIndicatorComponent, selector: "elder-data-transfer-indicator", inputs: { activeColor: "activeColor", inactiveColor: "inactiveColor" }, ngImport: i0, template: "\n<ng-container *ngIf=\"aggregate$ | async as aggregate\">\n <button mat-icon-button type=\"button\"\n class=\"layout-row place-center-center\"\n [elderOverlayTrigger]=\"overlay\">\n <mat-icon *ngIf=\"aggregate.inTransfer == 0\" [color]=\"inactiveColor\">cloud_upload</mat-icon>\n <mat-progress-spinner\n *ngIf=\"aggregate.inTransfer > 0\"\n [matBadge]=\"aggregate.inTransfer\"\n matBadgePosition=\"above after\"\n matBadgeSize=\"small\"\n [matBadgeColor]=\"activeColor\"\n [color]=\"activeColor\"\n [strokeWidth]=\"3\"\n [diameter]=\"24\"\n [value]=\"aggregate.percentDone\"\n mode=\"determinate\"\n >\n </mat-progress-spinner>\n </button>\n</ng-container>\n\n<elder-overlay #overlay=\"elderOverlay\" originX=\"center\" overlayX=\"center\">\n <elder-data-transfer-overview class=\"panel\">\n </elder-data-transfer-overview>\n</elder-overlay>\n\n", styles: [".panel{width:380px;height:350px;border-radius:4px;overflow:hidden;box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}\n"], dependencies: [{ kind: "directive", type: i1$4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2$2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i5.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i4$4.MatBadge, selector: "[matBadge]", inputs: ["matBadgeDisabled", "matBadgeColor", "matBadgeOverlap", "matBadgePosition", "matBadge", "matBadgeDescription", "matBadgeSize", "matBadgeHidden"] }, { kind: "component", type: i6$2.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "component", type: ElderOverlayComponent, selector: "elder-overlay", inputs: ["originX", "originY", "overlayX", "overlayY", "offsetY", "offsetX", "backdrop", "backdropVisible", "origin", "positionStrategy", "overlaySize"], outputs: ["keydownEvents", "attachedChange"], exportAs: ["elderOverlay"] }, { kind: "directive", type: ElderOverlayTriggerDirective, selector: "[elderOverlayTrigger]", inputs: ["elderOverlayTrigger", "elderOverlayTriggerType", "elderOverlayTriggerEnabled"] }, { kind: "component", type: HttpDataTransferOverviewComponent, selector: "elder-data-transfer-overview" }, { kind: "pipe", type: i1$4.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
21235
21262
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: HttpDataTransferIndicatorComponent, decorators: [{
21236
21263
  type: Component,
21237
- args: [{ selector: 'elder-data-transfer-indicator', changeDetection: ChangeDetectionStrategy.OnPush, template: "\n<ng-container *ngIf=\"aggregate$ | async as aggregate\">\n\n <button mat-icon-button type=\"button\"\n class=\"layout-row place-center-center\"\n [elderOverlayTrigger]=\"overlay\">\n\n <mat-icon *ngIf=\"aggregate.inTransfer == 0\" [color]=\"inactiveColor\">cloud_upload</mat-icon>\n\n <mat-progress-spinner\n *ngIf=\"aggregate.inTransfer > 0\"\n [matBadge]=\"aggregate.inTransfer\"\n matBadgePosition=\"above after\"\n matBadgeSize=\"small\"\n [matBadgeColor]=\"activeColor\"\n [color]=\"activeColor\"\n [strokeWidth]=\"3\"\n [diameter]=\"38\"\n [value]=\"aggregate.percentDone\"\n mode=\"determinate\"\n >\n </mat-progress-spinner>\n\n </button>\n</ng-container>\n\n<elder-overlay #overlay=\"elderOverlay\" originX=\"center\" overlayX=\"center\">\n <elder-data-transfer-overview class=\"panel\">\n </elder-data-transfer-overview>\n</elder-overlay>\n\n", styles: [".panel{width:380px;height:350px;background-color:#fff;border-radius:5px;overflow:hidden;box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}\n"] }]
21264
+ args: [{ selector: 'elder-data-transfer-indicator', changeDetection: ChangeDetectionStrategy.OnPush, template: "\n<ng-container *ngIf=\"aggregate$ | async as aggregate\">\n <button mat-icon-button type=\"button\"\n class=\"layout-row place-center-center\"\n [elderOverlayTrigger]=\"overlay\">\n <mat-icon *ngIf=\"aggregate.inTransfer == 0\" [color]=\"inactiveColor\">cloud_upload</mat-icon>\n <mat-progress-spinner\n *ngIf=\"aggregate.inTransfer > 0\"\n [matBadge]=\"aggregate.inTransfer\"\n matBadgePosition=\"above after\"\n matBadgeSize=\"small\"\n [matBadgeColor]=\"activeColor\"\n [color]=\"activeColor\"\n [strokeWidth]=\"3\"\n [diameter]=\"24\"\n [value]=\"aggregate.percentDone\"\n mode=\"determinate\"\n >\n </mat-progress-spinner>\n </button>\n</ng-container>\n\n<elder-overlay #overlay=\"elderOverlay\" originX=\"center\" overlayX=\"center\">\n <elder-data-transfer-overview class=\"panel\">\n </elder-data-transfer-overview>\n</elder-overlay>\n\n", styles: [".panel{width:380px;height:350px;border-radius:4px;overflow:hidden;box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}\n"] }]
21238
21265
  }], ctorParameters: function () { return [{ type: ElderDataTransferService }]; }, propDecorators: { activeColor: [{
21239
21266
  type: Input
21240
21267
  }], inactiveColor: [{
@@ -21254,7 +21281,7 @@ ElderDataTransferModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0",
21254
21281
  MatProgressSpinnerModule,
21255
21282
  TranslateModule,
21256
21283
  ElderPipesModule,
21257
- ElderOverlayModule], exports: [HttpDataTransferComponent,
21284
+ ElderOverlayModule, MatCardModule], exports: [HttpDataTransferComponent,
21258
21285
  HttpDataTransferAggregateComponent,
21259
21286
  HttpDataTransferOverviewComponent,
21260
21287
  HttpDataTransferIndicatorComponent] });
@@ -21265,7 +21292,7 @@ ElderDataTransferModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0",
21265
21292
  MatProgressSpinnerModule,
21266
21293
  TranslateModule,
21267
21294
  ElderPipesModule,
21268
- ElderOverlayModule] });
21295
+ ElderOverlayModule, MatCardModule] });
21269
21296
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: ElderDataTransferModule, decorators: [{
21270
21297
  type: NgModule,
21271
21298
  args: [{
@@ -21277,7 +21304,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0", ngImpor
21277
21304
  MatProgressSpinnerModule,
21278
21305
  TranslateModule,
21279
21306
  ElderPipesModule,
21280
- ElderOverlayModule
21307
+ ElderOverlayModule, MatCardModule
21281
21308
  ],
21282
21309
  declarations: [
21283
21310
  HttpDataTransferComponent,
@@ -28315,4 +28342,3 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0", ngImpor
28315
28342
 
28316
28343
  export { AuditedEntity, AutoStartSpec, BlobUrl, BytesFormat, BytesPerSecondFormat, BytesPipe, CardDropEvent, CardOrganizerData, CardStack, CollectionUtil, ComparatorBuilder, ConfirmDialogConfig, ContinuableListing, CsvColumnSpec, CsvSerializer, CsvSpec, CsvStreamExporter, CsvStreamExporterBuilder, CsvStreamExporterBuilderService, Currency, CurrencyCode, CurrencyUnit, CurrencyUnitRegistry, CustomDateAdapter, DataContextActivePage, DataContextAutoStarter, DataContextBase, DataContextBuilder, DataContextContinuableBase, DataContextContinuablePaged, DataContextContinuableToken, DataContextLifeCycleBinding, DataContextSelectionDirective, DataContextSimple, DataContextSnapshot, DataContextSourceAutoReloader, DataContextStateIndicatorComponent, DataContextStatus, DataSourceAdapter, DataSourceProcessor, DataTransferFactory, DataTransferProgress, DataTransferProgressAggregate, DataTransferState, DataTransferStatus, DataViewIframeAdapterDirective, DataViewIframeComponent, DataViewMessage, DataViewOptionsProviderBinding, DataViewSelection, DataViewSelectionInit, DateUtil, DelegateContinuableDataSource, DelegateDataSource, DelegateListDataSource, DelegatePagedDataSource, Dimensions, DrawerOutletBinding, DurationBucket, DurationFormat, ELDER_DATA_VIEW, ELDER_SELECT_BASE, ElderAccessDeniedComponent, ElderAccessDeniedModule, ElderAppHeaderComponent, ElderAuditModule, ElderAuditedEntityComponent, ElderAutoSelectFirstDirective, ElderAutocompleteComponent, ElderAutocompleteDirective, ElderAutocompleteManyDirective, ElderAutocompleteModule, ElderBlobViewerComponent, ElderBreadCrumbsComponent, ElderBreadCrumbsModule, ElderButtonGroupComponent, ElderButtonGroupModule, ElderCardComponent, ElderCardContentDirective, ElderCardHeaderActionsDirective, ElderCardHeaderComponent, ElderCardModule, ElderCardOrganizerComponent, ElderCardOrganizerModule, ElderCardPanelComponent, ElderCardStackComponent, ElderCardSubtitleDirective, ElderCardTitleDirective, ElderCheckboxState, ElderChipListSelectComponent, ElderChipListSelectModule, ElderClearSelectDirective, ElderClipboardPutDirective, ElderClipboardService, ElderConfirmDialogComponent, ElderConnectivityModule, ElderConnectivityService, ElderContainersModule, ElderCsvExportBtnComponent, ElderCsvModule, ElderCurrencyModule, ElderCurrencyPipe, ElderDataCommonModule, ElderDataToolbarComponent, ElderDataTransferModule, ElderDataTransferService, ElderDataViewBaseComponent, ElderDataViewOptions, ElderDataViewOptionsProvider, ElderDateSwitcherComponent, ElderDateTimeInputComponent, ElderDatesModule, ElderDelayedFocusDirective, ElderDialogConfig, ElderDialogModule, ElderDialogPanelComponent, ElderDialogService, ElderDimensionsInputComponent, ElderDurationInputComponent, ElderEntityValueAccessorUtil, ElderEnumTranslationService, ElderErrorModule, ElderEventSourceService, ElderExceptionDetailComponent, ElderExpandToggleButtonComponent, ElderExpandToggleButtonModule, ElderFileDropZoneDirective, ElderFileModule, ElderFileSelectComponent, ElderFileSelectDirective, ElderFileUploadComponent, ElderFormFieldControlBase, ElderFormFieldDenseDirective, ElderFormFieldLabelDirective, ElderFormFieldNoHintDirective, ElderFormFieldNoSpinnerDirective, ElderFormsDirectivesModule, ElderFormsModule, ElderFromFieldBase, ElderFromFieldEntityBase, ElderFromFieldMultiEntityBase, ElderGlobalSearchComponent, ElderGlobalSearchModule, ElderGlobalSearchService, ElderGridComponent, ElderGridModule, ElderGridTileDirective, ElderGridToolbarDirective, ElderHeaderComponent, ElderHeaderModule, ElderHttpClient, ElderI18nEntitiesModule, ElderIFrameModule, ElderInfiniteAutocompleteDirective, ElderInfiniteScrollDirective, ElderInfiniteScrollLegacyDirective, ElderInfiniteScrollModule, ElderInputPatternDirective, ElderIntervalInputComponent, ElderKeyEventDirective, ElderLabelInputComponent, ElderLabelsModule, ElderLanguageConfig, ElderLanguageInterceptor, ElderLanguageModule, ElderLanguageService, ElderLanguageSwitcherComponent, ElderLocalDateInputComponent, ElderLocalTimeInputComponent, ElderLocalesDeChModule, ElderLocalizedInputComponent, ElderLocalizedInputDialogComponent, ElderLocalizedInputDialogService, ElderLocalizedInputTableComponent, ElderLocalizedTextColumnDirective, ElderLocalizedTextsDirective, ElderMaxValidator, ElderMeasuresModule, ElderMinValidator, ElderMultiEntityValueAccessorUtil, ElderMultiSelectBase, ElderMultiSelectChipsComponent, ElderMultiSelectFormField, ElderMultipleOfUtil, ElderMultipleOfValidator, ElderNavGroupComponent, ElderNavLinkComponent, ElderNavListComponent, ElderNavModule, ElderNextFocusableDirective, ElderNumberCellDirective, ElderOfflineIndicatorComponent, ElderOverlayComponent, ElderOverlayModule, ElderOverlayOriginDirective, ElderOverlayTriggerDirective, ElderPaddingDirective, ElderPanelComponent, ElderPanelModule, ElderPeriodInputComponent, ElderPipesModule, ElderPlugParentFormDirective, ElderProgressBarComponent, ElderProgressBarModule, ElderQuantityFormFieldComponent, ElderQuantityInputControlComponent, ElderQuantityModule, ElderQuantityPipe, ElderQuantityRangeValidator, ElderQuantityService, ElderQuantityTransformPipe, ElderQuestionDialogComponent, ElderRepeatPipe, ElderRepeatPipeLegacy, ElderRequiredDimensionsValidator, ElderRequiredIgnoreZeroValidator, ElderRequiredQuantityValidator, ElderRoundPipe, ElderRouteOutletDrawerService, ElderRouterOutletService, ElderRouterService, ElderSafeUrlPipe, ElderScrollContainerComponent, ElderSearchBoxComponent, ElderSearchContextDirective, ElderSearchInputDirective, ElderSearchModule, ElderSearchPanelComponent, ElderSelectBase, ElderSelectChipAvatarDirective, ElderSelectChipDirective, ElderSelectComponent, ElderSelectComponentState, ElderSelectCustomInputDirective, ElderSelectFormField, ElderSelectModule, ElderSelectOnTabDirective, ElderSelectValueDirective, ElderSelectionDialogComponent, ElderSelectionDialogDirective, ElderSelectionMasterCheckboxComponent, ElderSelectionPopupTriggerAdapterDirective, ElderShellCenterDirective, ElderShellComponent, ElderShellModule, ElderShellNavigationToggleComponent, ElderShellService, ElderShellSideLeftDirective, ElderShellSideRightDirective, ElderShellSlotDirective, ElderSimpleSelectionViewComponent, ElderSimpleSelectionViewModule, ElderSingleSortComponent, ElderStackCardDirective, ElderStopEventPropagationDirective, ElderSvgViewerComponent, ElderTabDirective, ElderTabFocusTrapDirective, ElderTabGroupRoutingDirective, ElderTabModule, ElderTableActivationDirective, ElderTableComponent, ElderTableExtensionDirective, ElderTableGroup, ElderTableModel, ElderTableModelCdkTableBinding, ElderTableModelQueryGroup, ElderTableModule, ElderTableProviders, ElderTableRootDirective, ElderTableSortDirective, ElderTableToolbarDirective, ElderThemeApplierDirective, ElderThemeDirective, ElderThemeModule, ElderThemePreferenceService, ElderThemeService, ElderThemeToggleComponent, ElderTimeModule, ElderToastModule, ElderToastService, ElderToolbarColumnDirective, ElderToolbarComponent, ElderToolbarContentDirective, ElderToolbarModule, ElderToolbarService, ElderToolbarTitleComponent, ElderToolbarTitleService, ElderTouchedDirective, ElderTrimPipe, ElderTripleStateCheckboxDirective, ElderTruncatePipe, ElderUnitSelectDirective, ElderUnitService, ElderUrlFragment, ElderUrlFragmentModule, ElderUrlFragmentParamsService, ElderUrlFragmentSwitcherComponent, ElderValidationErrorDirective, ElderViewersModule, EntitySetPatch, ErrorUtil, ExceptionDetailCtx, FileUploadClient, Filter, FilterContext, FilterUtil, FormFieldBaseComponent, HttpClientBuilder, HttpClientPristine, HttpDataTransfer, HttpDataTransferAggregateComponent, HttpDataTransferComponent, HttpDataTransferIndicatorComponent, HttpDataTransferOverviewComponent, HttpParamsBuilder, I18nBase, I18nPickAsyncPipe, I18nPickPipe, I18nText, IFrameState, IframeCloseDirective, IframeDialogComponent, IframeHostComponent, IframeService, IframeSideContentComponent, InternalRestClientConfig, Interval, IsoDurationPipe, IsoIntervalParsePipe, IsoIntervalPipe, JsonMapUtil, KafentConfig, KafentEvent, KafentEventService, KafentEventStream, KafentEventStreamDisabled, KafentEventStreamSse, KafentEventTransport, KafentModule, KafentSseEventChannel, KafentTokenProvider, KafentTokenProviderSessionStorage, KafentTopicSse, KnownElderThemes, KnownLocaleType, LocalListDataSource, LocalPagedDataSource, LocalisationPickerService, MasterSelectionState, MatTableDataContextBinding, MatTableDataContextBindingBuilder, MultiModelBaseComponent, NextNumberUtil, Objects, OnlineStatus, Page, PageRequest, Pageable, ParseUtil, Path, PathNode, PeriodBucket, PeriodDuration, PeriodFormat, ProcessIterationContext, ProcessState, PropertyPathUtil, Quantity, QueryListBinding, QuestionDialogConfig, ReactiveEventSource, ReactiveMap, RefreshingEntity, RestClient, RestClientConfig, RestClientContinuable, RestClientList, RestClientPaged, SearchQuery, SelectionModel, SelectionModelPopupDirective, Sets, SimpleLocalisationPicker, Sort, SortOption, SortUtil, SubBar, SuggestionProvider, TemplateCompositeControl, TemplatedSelectionDialogComponent, ThemeSpec, TimeAgoPipe, TimeDurationPipe, TimeUtil, ToastType, TokenChunkRequest, ToolbarHeader, TranslatedEnumValue, TypedEventMessage, Unit, UnitDimension, UnitDimensionInfo, UnitInfo, UnitRegistry, UrlBuilder, UrlQueryParams, UuidUtil, ValueAccessorBase, ValueWrapper, ViewProviders, WeightPipe, alphaNumStringComparator, buildFormIntegrationProviders, createDataOptionsProvider, createSelectionModel, existingOrNewElderTableModel, isActivePagedDataContext, isContinuableDataContext, isContinuableDataSource, isDataContext, isDataSource, isElderEntityValueAccessor, isElderMultiEntityValueAccessor, isListDataSource, isPagedDataSource, naturalValueComparator, newElderTableModel, proxyControlContainer, registerLocale, runInZone, themeInit };
28317
28344
  //# sourceMappingURL=elderbyte-ngx-starter.mjs.map
28318
- //# sourceMappingURL=elderbyte-ngx-starter.mjs.map