@ti-tecnologico-de-monterrey-oficial/ds-ng 1.5.1118-c → 1.5.1118-d

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.
@@ -1,31 +1,35 @@
1
- import { ChangeDetectionStrategy, Component, output, ViewEncapsulation, } from '@angular/core';
1
+ import { ChangeDetectionStrategy, Component, output, signal, ViewEncapsulation, } from '@angular/core';
2
2
  import { BmbLoginOnboardingStepperStepComponent } from './bmb-login-onboarding-stepper-step.component';
3
- import { BmbModalComponent } from '../../../bmb-modal/bmb-modal.component';
4
3
  import * as i0 from "@angular/core";
5
4
  import * as i1 from "../../bmb-login-onboarding.service";
6
- import * as i2 from "@angular/material/dialog";
5
+ import * as i2 from "../../../../services/native-modal.service";
7
6
  export class BmbLoginOnboardingStepperStepFourComponent {
8
- constructor(loginOnboardingService, matDialog) {
7
+ constructor(loginOnboardingService, modalService) {
9
8
  this.loginOnboardingService = loginOnboardingService;
10
- this.matDialog = matDialog;
9
+ this.modalService = modalService;
11
10
  this.handleRequest = output();
12
11
  this.handleContinuePage = output();
12
+ this.modalId = signal(null);
13
13
  this.credentialExample = '../assets/images/placeholders/credential.svg';
14
14
  this.data = {
15
15
  title: 'Entrada a campus',
16
16
  content: 'Podrás cambiar esta configuración en cualquier momento',
17
17
  size: 'large',
18
- type: 'action',
19
- alertStyle: 'success',
20
- primaryBtnLabel: 'Aceptar',
21
- hideSecondaryButton: true,
18
+ actions: [
19
+ {
20
+ buttonName: 'aceptar',
21
+ label: 'Aceptar',
22
+ appearance: 'primary',
23
+ action: () => {
24
+ this._handleContinueStep();
25
+ this.modalService.closeModal(this.modalId());
26
+ },
27
+ },
28
+ ],
22
29
  };
23
30
  }
24
31
  openModalComponent() {
25
- this.matDialog.open(BmbModalComponent, { data: this.data });
26
- this.matDialog.afterAllClosed.subscribe(() => {
27
- this._handleContinueStep();
28
- });
32
+ this.modalId.set(this.modalService.openModal(this.data));
29
33
  }
30
34
  handleContinue() {
31
35
  this.openModalComponent();
@@ -42,7 +46,7 @@ export class BmbLoginOnboardingStepperStepFourComponent {
42
46
  },
43
47
  });
44
48
  }
45
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BmbLoginOnboardingStepperStepFourComponent, deps: [{ token: i1.BmbLoginOnboardingService }, { token: i2.MatDialog }], target: i0.ɵɵFactoryTarget.Component }); }
49
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BmbLoginOnboardingStepperStepFourComponent, deps: [{ token: i1.BmbLoginOnboardingService }, { token: i2.BmbNativeModalService }], target: i0.ɵɵFactoryTarget.Component }); }
46
50
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: BmbLoginOnboardingStepperStepFourComponent, isStandalone: true, selector: "bmb-login-onboarding-stepper-step-four", outputs: { handleRequest: "handleRequest", handleContinuePage: "handleContinuePage" }, ngImport: i0, template: `
47
51
  <bmb-login-onboarding-stepper-step
48
52
  title="Paso 4"
@@ -83,5 +87,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
83
87
  encapsulation: ViewEncapsulation.None,
84
88
  changeDetection: ChangeDetectionStrategy.OnPush,
85
89
  }]
86
- }], ctorParameters: () => [{ type: i1.BmbLoginOnboardingService }, { type: i2.MatDialog }] });
87
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm1iLWxvZ2luLW9uYm9hcmRpbmctc3RlcHBlci1zdGVwLWZvdXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZHMtbmcvc3JjL2xpYi9jb21wb25lbnRzL2JtYi1sb2dpbi1vbmJvYXJkaW5nL2JtYi1sb2dpbi1vbmJvYXJkaW5nLXN0ZXBwZXIvYm1iLWxvZ2luLW9uYm9hcmRpbmctc3RlcHBlci1zdGVwcy9ibWItbG9naW4tb25ib2FyZGluZy1zdGVwcGVyLXN0ZXAtZm91ci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsTUFBTSxFQUNOLGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsc0NBQXNDLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQztBQUl2RyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQzs7OztBQXdCM0UsTUFBTSxPQUFPLDBDQUEwQztJQWVyRCxZQUNVLHNCQUFpRCxFQUNqRCxTQUFvQjtRQURwQiwyQkFBc0IsR0FBdEIsc0JBQXNCLENBQTJCO1FBQ2pELGNBQVMsR0FBVCxTQUFTLENBQVc7UUFoQjlCLGtCQUFhLEdBQUcsTUFBTSxFQUFPLENBQUM7UUFDOUIsdUJBQWtCLEdBQUcsTUFBTSxFQUFFLENBQUM7UUFFOUIsc0JBQWlCLEdBQVcsOENBQThDLENBQUM7UUFDM0UsU0FBSSxHQUFvQjtZQUN0QixLQUFLLEVBQUUsa0JBQWtCO1lBQ3pCLE9BQU8sRUFBRSx3REFBd0Q7WUFDakUsSUFBSSxFQUFFLE9BQU87WUFDYixJQUFJLEVBQUUsUUFBUTtZQUNkLFVBQVUsRUFBRSxTQUFTO1lBQ3JCLGVBQWUsRUFBRSxTQUFTO1lBQzFCLG1CQUFtQixFQUFFLElBQUk7U0FDMUIsQ0FBQztJQUtDLENBQUM7SUFFSixrQkFBa0I7UUFDaEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7UUFDNUQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUMzQyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztRQUM3QixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxjQUFjO1FBQ1osSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUVELG1CQUFtQjtRQUNqQixJQUFJLENBQUMsc0JBQXNCLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQy9DLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDO1lBQ3RCLE1BQU0sRUFBRSxVQUFVO1lBQ2xCLFFBQVEsRUFBRSxDQUFDLE1BQWUsRUFBRSxFQUFFO2dCQUM1QixJQUFJLE1BQU0sRUFBRSxDQUFDO29CQUNYLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUM7b0JBQ2hELElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLEVBQUUsQ0FBQztnQkFDakMsQ0FBQztZQUNILENBQUM7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDOytHQTFDVSwwQ0FBMEM7bUdBQTFDLDBDQUEwQyx5TEFsQjNDOzs7Ozs7Ozs7Ozs7OztHQWNULDREQWZTLHNDQUFzQzs7NEZBbUJyQywwQ0FBMEM7a0JBdEJ0RCxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSx3Q0FBd0M7b0JBQ2xELFVBQVUsRUFBRSxJQUFJO29CQUNoQixPQUFPLEVBQUUsQ0FBQyxzQ0FBc0MsQ0FBQztvQkFDakQsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7OztHQWNUO29CQUNELGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO29CQUNyQyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtpQkFDaEQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBvdXRwdXQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJtYkxvZ2luT25ib2FyZGluZ1N0ZXBwZXJTdGVwQ29tcG9uZW50IH0gZnJvbSAnLi9ibWItbG9naW4tb25ib2FyZGluZy1zdGVwcGVyLXN0ZXAuY29tcG9uZW50JztcbmltcG9ydCB7IEJtYkxvZ2luT25ib2FyZGluZ1NlcnZpY2UgfSBmcm9tICcuLi8uLi9ibWItbG9naW4tb25ib2FyZGluZy5zZXJ2aWNlJztcbmltcG9ydCB7IE1vZGFsRGF0YUNvbmZpZyB9IGZyb20gJy4uLy4uLy4uL2JtYi1tb2RhbC9ibWItbW9kYWwuaW50ZXJmYWNlJztcbmltcG9ydCB7IE1hdERpYWxvZyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5pbXBvcnQgeyBCbWJNb2RhbENvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2JtYi1tb2RhbC9ibWItbW9kYWwuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYm1iLWxvZ2luLW9uYm9hcmRpbmctc3RlcHBlci1zdGVwLWZvdXInLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQm1iTG9naW5PbmJvYXJkaW5nU3RlcHBlclN0ZXBDb21wb25lbnRdLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxibWItbG9naW4tb25ib2FyZGluZy1zdGVwcGVyLXN0ZXBcbiAgICAgIHRpdGxlPVwiUGFzbyA0XCJcbiAgICAgIHN1YnRpdGxlPVwiQWN0aXZhIHR1IGVudHJhZGEgYSBDYW1wdXNcIlxuICAgICAgbGFiZWw9XCJDb24gZXN0YSBmdW5jaW9uYWxpZGFkIHR1IElEIERpZ2l0YWwgdGUgcGVybWl0aXLDoSBpbmdyZXNhciBhbCBjYW1wdXMgYXV0b23DoXRpY2FtZW50ZS5cIlxuICAgICAgc3VibGFiZWw9XCIoU2llbXByZSBwb2Ryw6FzIHV0aWxpemFyIHR1IElEIERpZ2l0YWwgbWFudWFsbWVudGUgeSBwb2Ryw6FzIGNhbWJpYXIgZXN0YSBjb25maWd1cmFjacOzbilcIlxuICAgICAgY2FuY2VsQmFja0xhYmVsPVwiTm8sIGdyYWNpYXNcIlxuICAgICAgY29udGludWVMYWJlbD1cIkFjdGl2YXJcIlxuICAgICAgKGhhbmRsZUNvbnRpbnVlKT1cImhhbmRsZUNvbnRpbnVlKClcIlxuICAgID5cbiAgICAgIDxzZWN0aW9uPlxuICAgICAgICA8aW1nIGFsdD1cIkNyZWRlbnRpYWwgZXhhbXBsZVwiIFtzcmNdPVwiY3JlZGVudGlhbEV4YW1wbGVcIiAvPlxuICAgICAgPC9zZWN0aW9uPlxuICAgIDwvYm1iLWxvZ2luLW9uYm9hcmRpbmctc3RlcHBlci1zdGVwPlxuICBgLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgQm1iTG9naW5PbmJvYXJkaW5nU3RlcHBlclN0ZXBGb3VyQ29tcG9uZW50IHtcbiAgaGFuZGxlUmVxdWVzdCA9IG91dHB1dDxhbnk+KCk7XG4gIGhhbmRsZUNvbnRpbnVlUGFnZSA9IG91dHB1dCgpO1xuXG4gIGNyZWRlbnRpYWxFeGFtcGxlOiBzdHJpbmcgPSAnLi4vYXNzZXRzL2ltYWdlcy9wbGFjZWhvbGRlcnMvY3JlZGVudGlhbC5zdmcnO1xuICBkYXRhOiBNb2RhbERhdGFDb25maWcgPSB7XG4gICAgdGl0bGU6ICdFbnRyYWRhIGEgY2FtcHVzJyxcbiAgICBjb250ZW50OiAnUG9kcsOhcyBjYW1iaWFyIGVzdGEgY29uZmlndXJhY2nDs24gZW4gY3VhbHF1aWVyIG1vbWVudG8nLFxuICAgIHNpemU6ICdsYXJnZScsXG4gICAgdHlwZTogJ2FjdGlvbicsXG4gICAgYWxlcnRTdHlsZTogJ3N1Y2Nlc3MnLFxuICAgIHByaW1hcnlCdG5MYWJlbDogJ0FjZXB0YXInLFxuICAgIGhpZGVTZWNvbmRhcnlCdXR0b246IHRydWUsXG4gIH07XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBsb2dpbk9uYm9hcmRpbmdTZXJ2aWNlOiBCbWJMb2dpbk9uYm9hcmRpbmdTZXJ2aWNlLFxuICAgIHByaXZhdGUgbWF0RGlhbG9nOiBNYXREaWFsb2csXG4gICkge31cblxuICBvcGVuTW9kYWxDb21wb25lbnQoKTogdm9pZCB7XG4gICAgdGhpcy5tYXREaWFsb2cub3BlbihCbWJNb2RhbENvbXBvbmVudCwgeyBkYXRhOiB0aGlzLmRhdGEgfSk7XG4gICAgdGhpcy5tYXREaWFsb2cuYWZ0ZXJBbGxDbG9zZWQuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMuX2hhbmRsZUNvbnRpbnVlU3RlcCgpO1xuICAgIH0pO1xuICB9XG5cbiAgaGFuZGxlQ29udGludWUoKTogdm9pZCB7XG4gICAgdGhpcy5vcGVuTW9kYWxDb21wb25lbnQoKTtcbiAgfVxuXG4gIF9oYW5kbGVDb250aW51ZVN0ZXAoKTogdm9pZCB7XG4gICAgdGhpcy5sb2dpbk9uYm9hcmRpbmdTZXJ2aWNlLnNldElzTG9hZGluZyh0cnVlKTtcbiAgICB0aGlzLmhhbmRsZVJlcXVlc3QuZW1pdCh7XG4gICAgICBhY3Rpb246ICdhY3RpdmF0ZScsXG4gICAgICBjYWxsYmFjazogKHJlc3VsdDogYm9vbGVhbikgPT4ge1xuICAgICAgICBpZiAocmVzdWx0KSB7XG4gICAgICAgICAgdGhpcy5sb2dpbk9uYm9hcmRpbmdTZXJ2aWNlLnNldElzTG9hZGluZyhmYWxzZSk7XG4gICAgICAgICAgdGhpcy5oYW5kbGVDb250aW51ZVBhZ2UuZW1pdCgpO1xuICAgICAgICB9XG4gICAgICB9LFxuICAgIH0pO1xuICB9XG59XG4iXX0=
90
+ }], ctorParameters: () => [{ type: i1.BmbLoginOnboardingService }, { type: i2.BmbNativeModalService }] });
91
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm1iLWxvZ2luLW9uYm9hcmRpbmctc3RlcHBlci1zdGVwLWZvdXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZHMtbmcvc3JjL2xpYi9jb21wb25lbnRzL2JtYi1sb2dpbi1vbmJvYXJkaW5nL2JtYi1sb2dpbi1vbmJvYXJkaW5nLXN0ZXBwZXIvYm1iLWxvZ2luLW9uYm9hcmRpbmctc3RlcHBlci1zdGVwcy9ibWItbG9naW4tb25ib2FyZGluZy1zdGVwcGVyLXN0ZXAtZm91ci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsTUFBTSxFQUNOLE1BQU0sRUFDTixpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLHNDQUFzQyxFQUFFLE1BQU0sK0NBQStDLENBQUM7Ozs7QUEyQnZHLE1BQU0sT0FBTywwQ0FBMEM7SUF3QnJELFlBQ1Usc0JBQWlELEVBQ2pELFlBQW1DO1FBRG5DLDJCQUFzQixHQUF0QixzQkFBc0IsQ0FBMkI7UUFDakQsaUJBQVksR0FBWixZQUFZLENBQXVCO1FBekI3QyxrQkFBYSxHQUFHLE1BQU0sRUFBTyxDQUFDO1FBQzlCLHVCQUFrQixHQUFHLE1BQU0sRUFBRSxDQUFDO1FBRTlCLFlBQU8sR0FBRyxNQUFNLENBQWdCLElBQUksQ0FBQyxDQUFDO1FBRXRDLHNCQUFpQixHQUFXLDhDQUE4QyxDQUFDO1FBQzNFLFNBQUksR0FBb0I7WUFDdEIsS0FBSyxFQUFFLGtCQUFrQjtZQUN6QixPQUFPLEVBQUUsd0RBQXdEO1lBQ2pFLElBQUksRUFBRSxPQUFPO1lBQ2IsT0FBTyxFQUFFO2dCQUNQO29CQUNFLFVBQVUsRUFBRSxTQUFTO29CQUNyQixLQUFLLEVBQUUsU0FBUztvQkFDaEIsVUFBVSxFQUFFLFNBQVM7b0JBQ3JCLE1BQU0sRUFBRSxHQUFHLEVBQUU7d0JBQ1gsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7d0JBQzNCLElBQUksQ0FBQyxZQUFZLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQVksQ0FBQyxDQUFDO29CQUN6RCxDQUFDO2lCQUNGO2FBQ0Y7U0FDRixDQUFDO0lBS0MsQ0FBQztJQUVKLGtCQUFrQjtRQUNoQixJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBRUQsY0FBYztRQUNaLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFRCxtQkFBbUI7UUFDakIsSUFBSSxDQUFDLHNCQUFzQixDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMvQyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQztZQUN0QixNQUFNLEVBQUUsVUFBVTtZQUNsQixRQUFRLEVBQUUsQ0FBQyxNQUFlLEVBQUUsRUFBRTtnQkFDNUIsSUFBSSxNQUFNLEVBQUUsQ0FBQztvQkFDWCxJQUFJLENBQUMsc0JBQXNCLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDO29CQUNoRCxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxFQUFFLENBQUM7Z0JBQ2pDLENBQUM7WUFDSCxDQUFDO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzsrR0FoRFUsMENBQTBDO21HQUExQywwQ0FBMEMseUxBbEIzQzs7Ozs7Ozs7Ozs7Ozs7R0FjVCw0REFmUyxzQ0FBc0M7OzRGQW1CckMsMENBQTBDO2tCQXRCdEQsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsd0NBQXdDO29CQUNsRCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsT0FBTyxFQUFFLENBQUMsc0NBQXNDLENBQUM7b0JBQ2pELFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7R0FjVDtvQkFDRCxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTtvQkFDckMsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07aUJBQ2hEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgb3V0cHV0LFxuICBzaWduYWwsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJtYkxvZ2luT25ib2FyZGluZ1N0ZXBwZXJTdGVwQ29tcG9uZW50IH0gZnJvbSAnLi9ibWItbG9naW4tb25ib2FyZGluZy1zdGVwcGVyLXN0ZXAuY29tcG9uZW50JztcbmltcG9ydCB7IEJtYkxvZ2luT25ib2FyZGluZ1NlcnZpY2UgfSBmcm9tICcuLi8uLi9ibWItbG9naW4tb25ib2FyZGluZy5zZXJ2aWNlJztcbmltcG9ydCB7IEJtYk5hdGl2ZU1vZGFsU2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NlcnZpY2VzL25hdGl2ZS1tb2RhbC5zZXJ2aWNlJztcbmltcG9ydCB7IElCbWJOYXRpdmVNb2RhbCB9IGZyb20gJy4uLy4uLy4uL2JtYi1tb2RhbC9ibWItbW9kYWwuaW50ZXJmYWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYm1iLWxvZ2luLW9uYm9hcmRpbmctc3RlcHBlci1zdGVwLWZvdXInLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQm1iTG9naW5PbmJvYXJkaW5nU3RlcHBlclN0ZXBDb21wb25lbnRdLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxibWItbG9naW4tb25ib2FyZGluZy1zdGVwcGVyLXN0ZXBcbiAgICAgIHRpdGxlPVwiUGFzbyA0XCJcbiAgICAgIHN1YnRpdGxlPVwiQWN0aXZhIHR1IGVudHJhZGEgYSBDYW1wdXNcIlxuICAgICAgbGFiZWw9XCJDb24gZXN0YSBmdW5jaW9uYWxpZGFkIHR1IElEIERpZ2l0YWwgdGUgcGVybWl0aXLDoSBpbmdyZXNhciBhbCBjYW1wdXMgYXV0b23DoXRpY2FtZW50ZS5cIlxuICAgICAgc3VibGFiZWw9XCIoU2llbXByZSBwb2Ryw6FzIHV0aWxpemFyIHR1IElEIERpZ2l0YWwgbWFudWFsbWVudGUgeSBwb2Ryw6FzIGNhbWJpYXIgZXN0YSBjb25maWd1cmFjacOzbilcIlxuICAgICAgY2FuY2VsQmFja0xhYmVsPVwiTm8sIGdyYWNpYXNcIlxuICAgICAgY29udGludWVMYWJlbD1cIkFjdGl2YXJcIlxuICAgICAgKGhhbmRsZUNvbnRpbnVlKT1cImhhbmRsZUNvbnRpbnVlKClcIlxuICAgID5cbiAgICAgIDxzZWN0aW9uPlxuICAgICAgICA8aW1nIGFsdD1cIkNyZWRlbnRpYWwgZXhhbXBsZVwiIFtzcmNdPVwiY3JlZGVudGlhbEV4YW1wbGVcIiAvPlxuICAgICAgPC9zZWN0aW9uPlxuICAgIDwvYm1iLWxvZ2luLW9uYm9hcmRpbmctc3RlcHBlci1zdGVwPlxuICBgLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgQm1iTG9naW5PbmJvYXJkaW5nU3RlcHBlclN0ZXBGb3VyQ29tcG9uZW50IHtcbiAgaGFuZGxlUmVxdWVzdCA9IG91dHB1dDxhbnk+KCk7XG4gIGhhbmRsZUNvbnRpbnVlUGFnZSA9IG91dHB1dCgpO1xuXG4gIG1vZGFsSWQgPSBzaWduYWw8c3RyaW5nIHwgbnVsbD4obnVsbCk7XG5cbiAgY3JlZGVudGlhbEV4YW1wbGU6IHN0cmluZyA9ICcuLi9hc3NldHMvaW1hZ2VzL3BsYWNlaG9sZGVycy9jcmVkZW50aWFsLnN2Zyc7XG4gIGRhdGE6IElCbWJOYXRpdmVNb2RhbCA9IHtcbiAgICB0aXRsZTogJ0VudHJhZGEgYSBjYW1wdXMnLFxuICAgIGNvbnRlbnQ6ICdQb2Ryw6FzIGNhbWJpYXIgZXN0YSBjb25maWd1cmFjacOzbiBlbiBjdWFscXVpZXIgbW9tZW50bycsXG4gICAgc2l6ZTogJ2xhcmdlJyxcbiAgICBhY3Rpb25zOiBbXG4gICAgICB7XG4gICAgICAgIGJ1dHRvbk5hbWU6ICdhY2VwdGFyJyxcbiAgICAgICAgbGFiZWw6ICdBY2VwdGFyJyxcbiAgICAgICAgYXBwZWFyYW5jZTogJ3ByaW1hcnknLFxuICAgICAgICBhY3Rpb246ICgpID0+IHtcbiAgICAgICAgICB0aGlzLl9oYW5kbGVDb250aW51ZVN0ZXAoKTtcbiAgICAgICAgICB0aGlzLm1vZGFsU2VydmljZS5jbG9zZU1vZGFsKHRoaXMubW9kYWxJZCgpIGFzIHN0cmluZyk7XG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIF0sXG4gIH07XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBsb2dpbk9uYm9hcmRpbmdTZXJ2aWNlOiBCbWJMb2dpbk9uYm9hcmRpbmdTZXJ2aWNlLFxuICAgIHByaXZhdGUgbW9kYWxTZXJ2aWNlOiBCbWJOYXRpdmVNb2RhbFNlcnZpY2UsXG4gICkge31cblxuICBvcGVuTW9kYWxDb21wb25lbnQoKTogdm9pZCB7XG4gICAgdGhpcy5tb2RhbElkLnNldCh0aGlzLm1vZGFsU2VydmljZS5vcGVuTW9kYWwodGhpcy5kYXRhKSk7XG4gIH1cblxuICBoYW5kbGVDb250aW51ZSgpOiB2b2lkIHtcbiAgICB0aGlzLm9wZW5Nb2RhbENvbXBvbmVudCgpO1xuICB9XG5cbiAgX2hhbmRsZUNvbnRpbnVlU3RlcCgpOiB2b2lkIHtcbiAgICB0aGlzLmxvZ2luT25ib2FyZGluZ1NlcnZpY2Uuc2V0SXNMb2FkaW5nKHRydWUpO1xuICAgIHRoaXMuaGFuZGxlUmVxdWVzdC5lbWl0KHtcbiAgICAgIGFjdGlvbjogJ2FjdGl2YXRlJyxcbiAgICAgIGNhbGxiYWNrOiAocmVzdWx0OiBib29sZWFuKSA9PiB7XG4gICAgICAgIGlmIChyZXN1bHQpIHtcbiAgICAgICAgICB0aGlzLmxvZ2luT25ib2FyZGluZ1NlcnZpY2Uuc2V0SXNMb2FkaW5nKGZhbHNlKTtcbiAgICAgICAgICB0aGlzLmhhbmRsZUNvbnRpbnVlUGFnZS5lbWl0KCk7XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
@@ -68,7 +68,7 @@ export class BmbProjectedContentComponent {
68
68
  };
69
69
  }
70
70
  renderContent() {
71
- this.container.clear();
71
+ this.container?.clear();
72
72
  if (this.componentRef) {
73
73
  this.componentRef.destroy();
74
74
  this.componentRef = null;
@@ -104,16 +104,16 @@ export class BmbProjectedContentComponent {
104
104
  }
105
105
  }
106
106
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BmbProjectedContentComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
107
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: BmbProjectedContentComponent, isStandalone: true, selector: "bmb-projected-content", inputs: { content: { classPropertyName: "content", publicName: "content", isSignal: true, isRequired: false, transformFunction: null }, htmlRef: { classPropertyName: "htmlRef", publicName: "htmlRef", isSignal: true, isRequired: false, transformFunction: null }, mode: { classPropertyName: "mode", publicName: "mode", isSignal: true, isRequired: false, transformFunction: null }, fixSizeToRef: { classPropertyName: "fixSizeToRef", publicName: "fixSizeToRef", isSignal: true, isRequired: false, transformFunction: null }, inputContext: { classPropertyName: "inputContext", publicName: "inputContext", isSignal: true, isRequired: false, transformFunction: null }, showBackdrop: { classPropertyName: "showBackdrop", publicName: "showBackdrop", isSignal: true, isRequired: false, transformFunction: null }, outputContext: { classPropertyName: "outputContext", publicName: "outputContext", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { removeContent: "removeContent" }, viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true, read: ViewContainerRef }, { propertyName: "projectedContentDialogRef", first: true, predicate: ["projectedContentDialogRef"], descendants: true }], ngImport: i0, template: "@if (content() !== null && !showBackdrop()) {\n <div class=\"bmb_projected-backdrop\" (click)=\"removeContent.emit()\"></div>\n} @else {\n <bmb-overlay\n [active]=\"content() !== null && showBackdrop()\"\n (click)=\"removeContent.emit()\"\n />\n}\n<dialog\n class=\"bmb_projected-content\"\n [ngStyle]=\"getPosition()\"\n [open]=\"content() !== null\"\n #projectedContentDialogRef\n tabindex=\"0\"\n>\n @if (content() !== null) {\n <ng-container #container></ng-container>\n }\n</dialog>\n", styles: ["@font-face{font-family:Poppins-Light;font-style:normal;font-weight:300;src:url(/assets/fonts/Poppins/Poppins-ExtraLight.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Regular;font-style:normal;font-weight:400;src:url(/assets/fonts/Poppins/Poppins-Regular.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Bold;font-style:normal;font-weight:700;src:url(/assets/fonts/Poppins/Poppins-Bold.ttf) format(\"truetype\")}:root,:host{--font-display: \"Poppins-Regular\", sans-serif}.font-thin-1{font-family:Poppins-Thin,sans-serif;font-size:.625rem}.font-light-1{font-family:Poppins-Light,sans-serif;font-size:.625rem}.font-regular-1{font-family:Poppins-Regular,sans-serif;font-size:.625rem}.font-medium-1{font-family:Poppins-Medium,sans-serif;font-size:.625rem}.font-semibold-1{font-family:Poppins-Semibold,sans-serif;font-size:.625rem}.font-bold-1{font-family:Poppins-Bold,sans-serif;font-size:.625rem}.font-thin-2{font-family:Poppins-Thin,sans-serif;font-size:.6875rem}.font-light-2{font-family:Poppins-Light,sans-serif;font-size:.6875rem}.font-regular-2{font-family:Poppins-Regular,sans-serif;font-size:.6875rem}.font-medium-2{font-family:Poppins-Medium,sans-serif;font-size:.6875rem}.font-semibold-2{font-family:Poppins-Semibold,sans-serif;font-size:.6875rem}.font-bold-2{font-family:Poppins-Bold,sans-serif;font-size:.6875rem}.font-thin-3{font-family:Poppins-Thin,sans-serif;font-size:.75rem}.font-light-3{font-family:Poppins-Light,sans-serif;font-size:.75rem}.font-regular-3{font-family:Poppins-Regular,sans-serif;font-size:.75rem}.font-medium-3{font-family:Poppins-Medium,sans-serif;font-size:.75rem}.font-semibold-3{font-family:Poppins-Semibold,sans-serif;font-size:.75rem}.font-bold-3{font-family:Poppins-Bold,sans-serif;font-size:.75rem}.font-thin-4{font-family:Poppins-Thin,sans-serif;font-size:.875rem}.font-light-4{font-family:Poppins-Light,sans-serif;font-size:.875rem}.font-regular-4{font-family:Poppins-Regular,sans-serif;font-size:.875rem}.font-medium-4{font-family:Poppins-Medium,sans-serif;font-size:.875rem}.font-semibold-4{font-family:Poppins-Semibold,sans-serif;font-size:.875rem}.font-bold-4{font-family:Poppins-Bold,sans-serif;font-size:.875rem}.font-thin-4_5{font-family:Poppins-Thin,sans-serif;font-size:.9375rem}.font-light-4_5{font-family:Poppins-Light,sans-serif;font-size:.9375rem}.font-regular-4_5{font-family:Poppins-Regular,sans-serif;font-size:.9375rem}.font-medium-4_5{font-family:Poppins-Medium,sans-serif;font-size:.9375rem}.font-semibold-4_5{font-family:Poppins-Semibold,sans-serif;font-size:.9375rem}.font-bold-4_5{font-family:Poppins-Bold,sans-serif;font-size:.9375rem}.font-thin-5{font-family:Poppins-Thin,sans-serif;font-size:1rem}.font-light-5{font-family:Poppins-Light,sans-serif;font-size:1rem}.font-regular-5{font-family:Poppins-Regular,sans-serif;font-size:1rem}.font-medium-5{font-family:Poppins-Medium,sans-serif;font-size:1rem}.font-semibold-5{font-family:Poppins-Semibold,sans-serif;font-size:1rem}.font-bold-5{font-family:Poppins-Bold,sans-serif;font-size:1rem}.font-thin-6{font-family:Poppins-Thin,sans-serif;font-size:1.125rem}.font-light-6{font-family:Poppins-Light,sans-serif;font-size:1.125rem}.font-regular-6{font-family:Poppins-Regular,sans-serif;font-size:1.125rem}.font-medium-6{font-family:Poppins-Medium,sans-serif;font-size:1.125rem}.font-semibold-6{font-family:Poppins-Semibold,sans-serif;font-size:1.125rem}.font-bold-6{font-family:Poppins-Bold,sans-serif;font-size:1.125rem}.font-thin-7{font-family:Poppins-Thin,sans-serif;font-size:1.25rem}.font-light-7{font-family:Poppins-Light,sans-serif;font-size:1.25rem}.font-regular-7{font-family:Poppins-Regular,sans-serif;font-size:1.25rem}.font-medium-7{font-family:Poppins-Medium,sans-serif;font-size:1.25rem}.font-semibold-7{font-family:Poppins-Semibold,sans-serif;font-size:1.25rem}.font-bold-7{font-family:Poppins-Bold,sans-serif;font-size:1.25rem}.font-thin-8{font-family:Poppins-Thin,sans-serif;font-size:1.375rem}.font-light-8{font-family:Poppins-Light,sans-serif;font-size:1.375rem}.font-regular-8{font-family:Poppins-Regular,sans-serif;font-size:1.375rem}.font-medium-8{font-family:Poppins-Medium,sans-serif;font-size:1.375rem}.font-semibold-8{font-family:Poppins-Semibold,sans-serif;font-size:1.375rem}.font-bold-8{font-family:Poppins-Bold,sans-serif;font-size:1.375rem}.font-thin-9{font-family:Poppins-Thin,sans-serif;font-size:1.5rem}.font-light-9{font-family:Poppins-Light,sans-serif;font-size:1.5rem}.font-regular-9{font-family:Poppins-Regular,sans-serif;font-size:1.5rem}.font-medium-9{font-family:Poppins-Medium,sans-serif;font-size:1.5rem}.font-semibold-9{font-family:Poppins-Semibold,sans-serif;font-size:1.5rem}.font-bold-9{font-family:Poppins-Bold,sans-serif;font-size:1.5rem}.font-thin-10{font-family:Poppins-Thin,sans-serif;font-size:1.625rem}.font-light-10{font-family:Poppins-Light,sans-serif;font-size:1.625rem}.font-regular-10{font-family:Poppins-Regular,sans-serif;font-size:1.625rem}.font-medium-10{font-family:Poppins-Medium,sans-serif;font-size:1.625rem}.font-semibold-10{font-family:Poppins-Semibold,sans-serif;font-size:1.625rem}.font-bold-10{font-family:Poppins-Bold,sans-serif;font-size:1.625rem}.font-thin-11{font-family:Poppins-Thin,sans-serif;font-size:2.25rem}.font-light-11{font-family:Poppins-Light,sans-serif;font-size:2.25rem}.font-regular-11{font-family:Poppins-Regular,sans-serif;font-size:2.25rem}.font-medium-11{font-family:Poppins-Medium,sans-serif;font-size:2.25rem}.font-semibold-11{font-family:Poppins-Semibold,sans-serif;font-size:2.25rem}.font-bold-11{font-family:Poppins-Bold,sans-serif;font-size:2.25rem}.font-thin-12{font-family:Poppins-Thin,sans-serif;font-size:3rem}.font-light-12{font-family:Poppins-Light,sans-serif;font-size:3rem}.font-regular-12{font-family:Poppins-Regular,sans-serif;font-size:3rem}.font-medium-12{font-family:Poppins-Medium,sans-serif;font-size:3rem}.font-semibold-12{font-family:Poppins-Semibold,sans-serif;font-size:3rem}.font-bold-12{font-family:Poppins-Bold,sans-serif;font-size:3rem}.bmb_projected-content{position:fixed;border:0 none;z-index:99;padding:0;background-color:transparent;margin:0;color:var(--general_contrasts-100)}@media (max-width: 1000px){.bmb_projected-content{left:1rem!important;right:1rem!important}}.bmb_projected-content[open]{animation:fadein .3s ease-in forwards}.bmb_projected-backdrop{position:fixed;z-index:98;background-color:transparent;margin:0;width:100%;height:100%;top:0}@keyframes fadein{0%{opacity:0;transform:scale(.9)}50%{opacity:.5;transform:scale(1.05)}to{opacity:1;transform:scale(1)}}\n"], dependencies: [{ kind: "component", type: BmbOverlayComponent, selector: "bmb-overlay", inputs: ["active", "uid"], outputs: ["onClick"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
107
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: BmbProjectedContentComponent, isStandalone: true, selector: "bmb-projected-content", inputs: { content: { classPropertyName: "content", publicName: "content", isSignal: true, isRequired: false, transformFunction: null }, htmlRef: { classPropertyName: "htmlRef", publicName: "htmlRef", isSignal: true, isRequired: false, transformFunction: null }, mode: { classPropertyName: "mode", publicName: "mode", isSignal: true, isRequired: false, transformFunction: null }, fixSizeToRef: { classPropertyName: "fixSizeToRef", publicName: "fixSizeToRef", isSignal: true, isRequired: false, transformFunction: null }, inputContext: { classPropertyName: "inputContext", publicName: "inputContext", isSignal: true, isRequired: false, transformFunction: null }, showBackdrop: { classPropertyName: "showBackdrop", publicName: "showBackdrop", isSignal: true, isRequired: false, transformFunction: null }, outputContext: { classPropertyName: "outputContext", publicName: "outputContext", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { removeContent: "removeContent" }, viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true, read: ViewContainerRef, static: true }, { propertyName: "projectedContentDialogRef", first: true, predicate: ["projectedContentDialogRef"], descendants: true }], ngImport: i0, template: "@if (content() !== null && !showBackdrop()) {\n <div class=\"bmb_projected-backdrop\" (click)=\"removeContent.emit()\"></div>\n} @else {\n <bmb-overlay\n [active]=\"content() !== null && showBackdrop()\"\n (click)=\"removeContent.emit()\"\n />\n}\n<dialog\n class=\"bmb_projected-content\"\n [ngStyle]=\"getPosition()\"\n [open]=\"content() !== null\"\n #projectedContentDialogRef\n tabindex=\"0\"\n>\n <ng-container #container></ng-container>\n</dialog>\n", styles: ["@font-face{font-family:Poppins-Light;font-style:normal;font-weight:300;src:url(/assets/fonts/Poppins/Poppins-ExtraLight.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Regular;font-style:normal;font-weight:400;src:url(/assets/fonts/Poppins/Poppins-Regular.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Bold;font-style:normal;font-weight:700;src:url(/assets/fonts/Poppins/Poppins-Bold.ttf) format(\"truetype\")}:root,:host{--font-display: \"Poppins-Regular\", sans-serif}.font-thin-1{font-family:Poppins-Thin,sans-serif;font-size:.625rem}.font-light-1{font-family:Poppins-Light,sans-serif;font-size:.625rem}.font-regular-1{font-family:Poppins-Regular,sans-serif;font-size:.625rem}.font-medium-1{font-family:Poppins-Medium,sans-serif;font-size:.625rem}.font-semibold-1{font-family:Poppins-Semibold,sans-serif;font-size:.625rem}.font-bold-1{font-family:Poppins-Bold,sans-serif;font-size:.625rem}.font-thin-2{font-family:Poppins-Thin,sans-serif;font-size:.6875rem}.font-light-2{font-family:Poppins-Light,sans-serif;font-size:.6875rem}.font-regular-2{font-family:Poppins-Regular,sans-serif;font-size:.6875rem}.font-medium-2{font-family:Poppins-Medium,sans-serif;font-size:.6875rem}.font-semibold-2{font-family:Poppins-Semibold,sans-serif;font-size:.6875rem}.font-bold-2{font-family:Poppins-Bold,sans-serif;font-size:.6875rem}.font-thin-3{font-family:Poppins-Thin,sans-serif;font-size:.75rem}.font-light-3{font-family:Poppins-Light,sans-serif;font-size:.75rem}.font-regular-3{font-family:Poppins-Regular,sans-serif;font-size:.75rem}.font-medium-3{font-family:Poppins-Medium,sans-serif;font-size:.75rem}.font-semibold-3{font-family:Poppins-Semibold,sans-serif;font-size:.75rem}.font-bold-3{font-family:Poppins-Bold,sans-serif;font-size:.75rem}.font-thin-4{font-family:Poppins-Thin,sans-serif;font-size:.875rem}.font-light-4{font-family:Poppins-Light,sans-serif;font-size:.875rem}.font-regular-4{font-family:Poppins-Regular,sans-serif;font-size:.875rem}.font-medium-4{font-family:Poppins-Medium,sans-serif;font-size:.875rem}.font-semibold-4{font-family:Poppins-Semibold,sans-serif;font-size:.875rem}.font-bold-4{font-family:Poppins-Bold,sans-serif;font-size:.875rem}.font-thin-4_5{font-family:Poppins-Thin,sans-serif;font-size:.9375rem}.font-light-4_5{font-family:Poppins-Light,sans-serif;font-size:.9375rem}.font-regular-4_5{font-family:Poppins-Regular,sans-serif;font-size:.9375rem}.font-medium-4_5{font-family:Poppins-Medium,sans-serif;font-size:.9375rem}.font-semibold-4_5{font-family:Poppins-Semibold,sans-serif;font-size:.9375rem}.font-bold-4_5{font-family:Poppins-Bold,sans-serif;font-size:.9375rem}.font-thin-5{font-family:Poppins-Thin,sans-serif;font-size:1rem}.font-light-5{font-family:Poppins-Light,sans-serif;font-size:1rem}.font-regular-5{font-family:Poppins-Regular,sans-serif;font-size:1rem}.font-medium-5{font-family:Poppins-Medium,sans-serif;font-size:1rem}.font-semibold-5{font-family:Poppins-Semibold,sans-serif;font-size:1rem}.font-bold-5{font-family:Poppins-Bold,sans-serif;font-size:1rem}.font-thin-6{font-family:Poppins-Thin,sans-serif;font-size:1.125rem}.font-light-6{font-family:Poppins-Light,sans-serif;font-size:1.125rem}.font-regular-6{font-family:Poppins-Regular,sans-serif;font-size:1.125rem}.font-medium-6{font-family:Poppins-Medium,sans-serif;font-size:1.125rem}.font-semibold-6{font-family:Poppins-Semibold,sans-serif;font-size:1.125rem}.font-bold-6{font-family:Poppins-Bold,sans-serif;font-size:1.125rem}.font-thin-7{font-family:Poppins-Thin,sans-serif;font-size:1.25rem}.font-light-7{font-family:Poppins-Light,sans-serif;font-size:1.25rem}.font-regular-7{font-family:Poppins-Regular,sans-serif;font-size:1.25rem}.font-medium-7{font-family:Poppins-Medium,sans-serif;font-size:1.25rem}.font-semibold-7{font-family:Poppins-Semibold,sans-serif;font-size:1.25rem}.font-bold-7{font-family:Poppins-Bold,sans-serif;font-size:1.25rem}.font-thin-8{font-family:Poppins-Thin,sans-serif;font-size:1.375rem}.font-light-8{font-family:Poppins-Light,sans-serif;font-size:1.375rem}.font-regular-8{font-family:Poppins-Regular,sans-serif;font-size:1.375rem}.font-medium-8{font-family:Poppins-Medium,sans-serif;font-size:1.375rem}.font-semibold-8{font-family:Poppins-Semibold,sans-serif;font-size:1.375rem}.font-bold-8{font-family:Poppins-Bold,sans-serif;font-size:1.375rem}.font-thin-9{font-family:Poppins-Thin,sans-serif;font-size:1.5rem}.font-light-9{font-family:Poppins-Light,sans-serif;font-size:1.5rem}.font-regular-9{font-family:Poppins-Regular,sans-serif;font-size:1.5rem}.font-medium-9{font-family:Poppins-Medium,sans-serif;font-size:1.5rem}.font-semibold-9{font-family:Poppins-Semibold,sans-serif;font-size:1.5rem}.font-bold-9{font-family:Poppins-Bold,sans-serif;font-size:1.5rem}.font-thin-10{font-family:Poppins-Thin,sans-serif;font-size:1.625rem}.font-light-10{font-family:Poppins-Light,sans-serif;font-size:1.625rem}.font-regular-10{font-family:Poppins-Regular,sans-serif;font-size:1.625rem}.font-medium-10{font-family:Poppins-Medium,sans-serif;font-size:1.625rem}.font-semibold-10{font-family:Poppins-Semibold,sans-serif;font-size:1.625rem}.font-bold-10{font-family:Poppins-Bold,sans-serif;font-size:1.625rem}.font-thin-11{font-family:Poppins-Thin,sans-serif;font-size:2.25rem}.font-light-11{font-family:Poppins-Light,sans-serif;font-size:2.25rem}.font-regular-11{font-family:Poppins-Regular,sans-serif;font-size:2.25rem}.font-medium-11{font-family:Poppins-Medium,sans-serif;font-size:2.25rem}.font-semibold-11{font-family:Poppins-Semibold,sans-serif;font-size:2.25rem}.font-bold-11{font-family:Poppins-Bold,sans-serif;font-size:2.25rem}.font-thin-12{font-family:Poppins-Thin,sans-serif;font-size:3rem}.font-light-12{font-family:Poppins-Light,sans-serif;font-size:3rem}.font-regular-12{font-family:Poppins-Regular,sans-serif;font-size:3rem}.font-medium-12{font-family:Poppins-Medium,sans-serif;font-size:3rem}.font-semibold-12{font-family:Poppins-Semibold,sans-serif;font-size:3rem}.font-bold-12{font-family:Poppins-Bold,sans-serif;font-size:3rem}.bmb_projected-content{position:fixed;border:0 none;z-index:99;padding:0;background-color:transparent;margin:0;color:var(--general_contrasts-100)}@media (max-width: 1000px){.bmb_projected-content{left:1rem!important;right:1rem!important}}.bmb_projected-content[open]{animation:fadein .3s ease-in forwards}.bmb_projected-backdrop{position:fixed;z-index:98;background-color:transparent;margin:0;width:100%;height:100%;top:0}@keyframes fadein{0%{opacity:0;transform:scale(.9)}50%{opacity:.5;transform:scale(1.05)}to{opacity:1;transform:scale(1)}}\n"], dependencies: [{ kind: "component", type: BmbOverlayComponent, selector: "bmb-overlay", inputs: ["active", "uid"], outputs: ["onClick"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
108
108
  }
109
109
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BmbProjectedContentComponent, decorators: [{
110
110
  type: Component,
111
- args: [{ selector: 'bmb-projected-content', imports: [BmbOverlayComponent, CommonModule], standalone: true, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "@if (content() !== null && !showBackdrop()) {\n <div class=\"bmb_projected-backdrop\" (click)=\"removeContent.emit()\"></div>\n} @else {\n <bmb-overlay\n [active]=\"content() !== null && showBackdrop()\"\n (click)=\"removeContent.emit()\"\n />\n}\n<dialog\n class=\"bmb_projected-content\"\n [ngStyle]=\"getPosition()\"\n [open]=\"content() !== null\"\n #projectedContentDialogRef\n tabindex=\"0\"\n>\n @if (content() !== null) {\n <ng-container #container></ng-container>\n }\n</dialog>\n", styles: ["@font-face{font-family:Poppins-Light;font-style:normal;font-weight:300;src:url(/assets/fonts/Poppins/Poppins-ExtraLight.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Regular;font-style:normal;font-weight:400;src:url(/assets/fonts/Poppins/Poppins-Regular.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Bold;font-style:normal;font-weight:700;src:url(/assets/fonts/Poppins/Poppins-Bold.ttf) format(\"truetype\")}:root,:host{--font-display: \"Poppins-Regular\", sans-serif}.font-thin-1{font-family:Poppins-Thin,sans-serif;font-size:.625rem}.font-light-1{font-family:Poppins-Light,sans-serif;font-size:.625rem}.font-regular-1{font-family:Poppins-Regular,sans-serif;font-size:.625rem}.font-medium-1{font-family:Poppins-Medium,sans-serif;font-size:.625rem}.font-semibold-1{font-family:Poppins-Semibold,sans-serif;font-size:.625rem}.font-bold-1{font-family:Poppins-Bold,sans-serif;font-size:.625rem}.font-thin-2{font-family:Poppins-Thin,sans-serif;font-size:.6875rem}.font-light-2{font-family:Poppins-Light,sans-serif;font-size:.6875rem}.font-regular-2{font-family:Poppins-Regular,sans-serif;font-size:.6875rem}.font-medium-2{font-family:Poppins-Medium,sans-serif;font-size:.6875rem}.font-semibold-2{font-family:Poppins-Semibold,sans-serif;font-size:.6875rem}.font-bold-2{font-family:Poppins-Bold,sans-serif;font-size:.6875rem}.font-thin-3{font-family:Poppins-Thin,sans-serif;font-size:.75rem}.font-light-3{font-family:Poppins-Light,sans-serif;font-size:.75rem}.font-regular-3{font-family:Poppins-Regular,sans-serif;font-size:.75rem}.font-medium-3{font-family:Poppins-Medium,sans-serif;font-size:.75rem}.font-semibold-3{font-family:Poppins-Semibold,sans-serif;font-size:.75rem}.font-bold-3{font-family:Poppins-Bold,sans-serif;font-size:.75rem}.font-thin-4{font-family:Poppins-Thin,sans-serif;font-size:.875rem}.font-light-4{font-family:Poppins-Light,sans-serif;font-size:.875rem}.font-regular-4{font-family:Poppins-Regular,sans-serif;font-size:.875rem}.font-medium-4{font-family:Poppins-Medium,sans-serif;font-size:.875rem}.font-semibold-4{font-family:Poppins-Semibold,sans-serif;font-size:.875rem}.font-bold-4{font-family:Poppins-Bold,sans-serif;font-size:.875rem}.font-thin-4_5{font-family:Poppins-Thin,sans-serif;font-size:.9375rem}.font-light-4_5{font-family:Poppins-Light,sans-serif;font-size:.9375rem}.font-regular-4_5{font-family:Poppins-Regular,sans-serif;font-size:.9375rem}.font-medium-4_5{font-family:Poppins-Medium,sans-serif;font-size:.9375rem}.font-semibold-4_5{font-family:Poppins-Semibold,sans-serif;font-size:.9375rem}.font-bold-4_5{font-family:Poppins-Bold,sans-serif;font-size:.9375rem}.font-thin-5{font-family:Poppins-Thin,sans-serif;font-size:1rem}.font-light-5{font-family:Poppins-Light,sans-serif;font-size:1rem}.font-regular-5{font-family:Poppins-Regular,sans-serif;font-size:1rem}.font-medium-5{font-family:Poppins-Medium,sans-serif;font-size:1rem}.font-semibold-5{font-family:Poppins-Semibold,sans-serif;font-size:1rem}.font-bold-5{font-family:Poppins-Bold,sans-serif;font-size:1rem}.font-thin-6{font-family:Poppins-Thin,sans-serif;font-size:1.125rem}.font-light-6{font-family:Poppins-Light,sans-serif;font-size:1.125rem}.font-regular-6{font-family:Poppins-Regular,sans-serif;font-size:1.125rem}.font-medium-6{font-family:Poppins-Medium,sans-serif;font-size:1.125rem}.font-semibold-6{font-family:Poppins-Semibold,sans-serif;font-size:1.125rem}.font-bold-6{font-family:Poppins-Bold,sans-serif;font-size:1.125rem}.font-thin-7{font-family:Poppins-Thin,sans-serif;font-size:1.25rem}.font-light-7{font-family:Poppins-Light,sans-serif;font-size:1.25rem}.font-regular-7{font-family:Poppins-Regular,sans-serif;font-size:1.25rem}.font-medium-7{font-family:Poppins-Medium,sans-serif;font-size:1.25rem}.font-semibold-7{font-family:Poppins-Semibold,sans-serif;font-size:1.25rem}.font-bold-7{font-family:Poppins-Bold,sans-serif;font-size:1.25rem}.font-thin-8{font-family:Poppins-Thin,sans-serif;font-size:1.375rem}.font-light-8{font-family:Poppins-Light,sans-serif;font-size:1.375rem}.font-regular-8{font-family:Poppins-Regular,sans-serif;font-size:1.375rem}.font-medium-8{font-family:Poppins-Medium,sans-serif;font-size:1.375rem}.font-semibold-8{font-family:Poppins-Semibold,sans-serif;font-size:1.375rem}.font-bold-8{font-family:Poppins-Bold,sans-serif;font-size:1.375rem}.font-thin-9{font-family:Poppins-Thin,sans-serif;font-size:1.5rem}.font-light-9{font-family:Poppins-Light,sans-serif;font-size:1.5rem}.font-regular-9{font-family:Poppins-Regular,sans-serif;font-size:1.5rem}.font-medium-9{font-family:Poppins-Medium,sans-serif;font-size:1.5rem}.font-semibold-9{font-family:Poppins-Semibold,sans-serif;font-size:1.5rem}.font-bold-9{font-family:Poppins-Bold,sans-serif;font-size:1.5rem}.font-thin-10{font-family:Poppins-Thin,sans-serif;font-size:1.625rem}.font-light-10{font-family:Poppins-Light,sans-serif;font-size:1.625rem}.font-regular-10{font-family:Poppins-Regular,sans-serif;font-size:1.625rem}.font-medium-10{font-family:Poppins-Medium,sans-serif;font-size:1.625rem}.font-semibold-10{font-family:Poppins-Semibold,sans-serif;font-size:1.625rem}.font-bold-10{font-family:Poppins-Bold,sans-serif;font-size:1.625rem}.font-thin-11{font-family:Poppins-Thin,sans-serif;font-size:2.25rem}.font-light-11{font-family:Poppins-Light,sans-serif;font-size:2.25rem}.font-regular-11{font-family:Poppins-Regular,sans-serif;font-size:2.25rem}.font-medium-11{font-family:Poppins-Medium,sans-serif;font-size:2.25rem}.font-semibold-11{font-family:Poppins-Semibold,sans-serif;font-size:2.25rem}.font-bold-11{font-family:Poppins-Bold,sans-serif;font-size:2.25rem}.font-thin-12{font-family:Poppins-Thin,sans-serif;font-size:3rem}.font-light-12{font-family:Poppins-Light,sans-serif;font-size:3rem}.font-regular-12{font-family:Poppins-Regular,sans-serif;font-size:3rem}.font-medium-12{font-family:Poppins-Medium,sans-serif;font-size:3rem}.font-semibold-12{font-family:Poppins-Semibold,sans-serif;font-size:3rem}.font-bold-12{font-family:Poppins-Bold,sans-serif;font-size:3rem}.bmb_projected-content{position:fixed;border:0 none;z-index:99;padding:0;background-color:transparent;margin:0;color:var(--general_contrasts-100)}@media (max-width: 1000px){.bmb_projected-content{left:1rem!important;right:1rem!important}}.bmb_projected-content[open]{animation:fadein .3s ease-in forwards}.bmb_projected-backdrop{position:fixed;z-index:98;background-color:transparent;margin:0;width:100%;height:100%;top:0}@keyframes fadein{0%{opacity:0;transform:scale(.9)}50%{opacity:.5;transform:scale(1.05)}to{opacity:1;transform:scale(1)}}\n"] }]
111
+ args: [{ selector: 'bmb-projected-content', imports: [BmbOverlayComponent, CommonModule], standalone: true, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "@if (content() !== null && !showBackdrop()) {\n <div class=\"bmb_projected-backdrop\" (click)=\"removeContent.emit()\"></div>\n} @else {\n <bmb-overlay\n [active]=\"content() !== null && showBackdrop()\"\n (click)=\"removeContent.emit()\"\n />\n}\n<dialog\n class=\"bmb_projected-content\"\n [ngStyle]=\"getPosition()\"\n [open]=\"content() !== null\"\n #projectedContentDialogRef\n tabindex=\"0\"\n>\n <ng-container #container></ng-container>\n</dialog>\n", styles: ["@font-face{font-family:Poppins-Light;font-style:normal;font-weight:300;src:url(/assets/fonts/Poppins/Poppins-ExtraLight.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Regular;font-style:normal;font-weight:400;src:url(/assets/fonts/Poppins/Poppins-Regular.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Bold;font-style:normal;font-weight:700;src:url(/assets/fonts/Poppins/Poppins-Bold.ttf) format(\"truetype\")}:root,:host{--font-display: \"Poppins-Regular\", sans-serif}.font-thin-1{font-family:Poppins-Thin,sans-serif;font-size:.625rem}.font-light-1{font-family:Poppins-Light,sans-serif;font-size:.625rem}.font-regular-1{font-family:Poppins-Regular,sans-serif;font-size:.625rem}.font-medium-1{font-family:Poppins-Medium,sans-serif;font-size:.625rem}.font-semibold-1{font-family:Poppins-Semibold,sans-serif;font-size:.625rem}.font-bold-1{font-family:Poppins-Bold,sans-serif;font-size:.625rem}.font-thin-2{font-family:Poppins-Thin,sans-serif;font-size:.6875rem}.font-light-2{font-family:Poppins-Light,sans-serif;font-size:.6875rem}.font-regular-2{font-family:Poppins-Regular,sans-serif;font-size:.6875rem}.font-medium-2{font-family:Poppins-Medium,sans-serif;font-size:.6875rem}.font-semibold-2{font-family:Poppins-Semibold,sans-serif;font-size:.6875rem}.font-bold-2{font-family:Poppins-Bold,sans-serif;font-size:.6875rem}.font-thin-3{font-family:Poppins-Thin,sans-serif;font-size:.75rem}.font-light-3{font-family:Poppins-Light,sans-serif;font-size:.75rem}.font-regular-3{font-family:Poppins-Regular,sans-serif;font-size:.75rem}.font-medium-3{font-family:Poppins-Medium,sans-serif;font-size:.75rem}.font-semibold-3{font-family:Poppins-Semibold,sans-serif;font-size:.75rem}.font-bold-3{font-family:Poppins-Bold,sans-serif;font-size:.75rem}.font-thin-4{font-family:Poppins-Thin,sans-serif;font-size:.875rem}.font-light-4{font-family:Poppins-Light,sans-serif;font-size:.875rem}.font-regular-4{font-family:Poppins-Regular,sans-serif;font-size:.875rem}.font-medium-4{font-family:Poppins-Medium,sans-serif;font-size:.875rem}.font-semibold-4{font-family:Poppins-Semibold,sans-serif;font-size:.875rem}.font-bold-4{font-family:Poppins-Bold,sans-serif;font-size:.875rem}.font-thin-4_5{font-family:Poppins-Thin,sans-serif;font-size:.9375rem}.font-light-4_5{font-family:Poppins-Light,sans-serif;font-size:.9375rem}.font-regular-4_5{font-family:Poppins-Regular,sans-serif;font-size:.9375rem}.font-medium-4_5{font-family:Poppins-Medium,sans-serif;font-size:.9375rem}.font-semibold-4_5{font-family:Poppins-Semibold,sans-serif;font-size:.9375rem}.font-bold-4_5{font-family:Poppins-Bold,sans-serif;font-size:.9375rem}.font-thin-5{font-family:Poppins-Thin,sans-serif;font-size:1rem}.font-light-5{font-family:Poppins-Light,sans-serif;font-size:1rem}.font-regular-5{font-family:Poppins-Regular,sans-serif;font-size:1rem}.font-medium-5{font-family:Poppins-Medium,sans-serif;font-size:1rem}.font-semibold-5{font-family:Poppins-Semibold,sans-serif;font-size:1rem}.font-bold-5{font-family:Poppins-Bold,sans-serif;font-size:1rem}.font-thin-6{font-family:Poppins-Thin,sans-serif;font-size:1.125rem}.font-light-6{font-family:Poppins-Light,sans-serif;font-size:1.125rem}.font-regular-6{font-family:Poppins-Regular,sans-serif;font-size:1.125rem}.font-medium-6{font-family:Poppins-Medium,sans-serif;font-size:1.125rem}.font-semibold-6{font-family:Poppins-Semibold,sans-serif;font-size:1.125rem}.font-bold-6{font-family:Poppins-Bold,sans-serif;font-size:1.125rem}.font-thin-7{font-family:Poppins-Thin,sans-serif;font-size:1.25rem}.font-light-7{font-family:Poppins-Light,sans-serif;font-size:1.25rem}.font-regular-7{font-family:Poppins-Regular,sans-serif;font-size:1.25rem}.font-medium-7{font-family:Poppins-Medium,sans-serif;font-size:1.25rem}.font-semibold-7{font-family:Poppins-Semibold,sans-serif;font-size:1.25rem}.font-bold-7{font-family:Poppins-Bold,sans-serif;font-size:1.25rem}.font-thin-8{font-family:Poppins-Thin,sans-serif;font-size:1.375rem}.font-light-8{font-family:Poppins-Light,sans-serif;font-size:1.375rem}.font-regular-8{font-family:Poppins-Regular,sans-serif;font-size:1.375rem}.font-medium-8{font-family:Poppins-Medium,sans-serif;font-size:1.375rem}.font-semibold-8{font-family:Poppins-Semibold,sans-serif;font-size:1.375rem}.font-bold-8{font-family:Poppins-Bold,sans-serif;font-size:1.375rem}.font-thin-9{font-family:Poppins-Thin,sans-serif;font-size:1.5rem}.font-light-9{font-family:Poppins-Light,sans-serif;font-size:1.5rem}.font-regular-9{font-family:Poppins-Regular,sans-serif;font-size:1.5rem}.font-medium-9{font-family:Poppins-Medium,sans-serif;font-size:1.5rem}.font-semibold-9{font-family:Poppins-Semibold,sans-serif;font-size:1.5rem}.font-bold-9{font-family:Poppins-Bold,sans-serif;font-size:1.5rem}.font-thin-10{font-family:Poppins-Thin,sans-serif;font-size:1.625rem}.font-light-10{font-family:Poppins-Light,sans-serif;font-size:1.625rem}.font-regular-10{font-family:Poppins-Regular,sans-serif;font-size:1.625rem}.font-medium-10{font-family:Poppins-Medium,sans-serif;font-size:1.625rem}.font-semibold-10{font-family:Poppins-Semibold,sans-serif;font-size:1.625rem}.font-bold-10{font-family:Poppins-Bold,sans-serif;font-size:1.625rem}.font-thin-11{font-family:Poppins-Thin,sans-serif;font-size:2.25rem}.font-light-11{font-family:Poppins-Light,sans-serif;font-size:2.25rem}.font-regular-11{font-family:Poppins-Regular,sans-serif;font-size:2.25rem}.font-medium-11{font-family:Poppins-Medium,sans-serif;font-size:2.25rem}.font-semibold-11{font-family:Poppins-Semibold,sans-serif;font-size:2.25rem}.font-bold-11{font-family:Poppins-Bold,sans-serif;font-size:2.25rem}.font-thin-12{font-family:Poppins-Thin,sans-serif;font-size:3rem}.font-light-12{font-family:Poppins-Light,sans-serif;font-size:3rem}.font-regular-12{font-family:Poppins-Regular,sans-serif;font-size:3rem}.font-medium-12{font-family:Poppins-Medium,sans-serif;font-size:3rem}.font-semibold-12{font-family:Poppins-Semibold,sans-serif;font-size:3rem}.font-bold-12{font-family:Poppins-Bold,sans-serif;font-size:3rem}.bmb_projected-content{position:fixed;border:0 none;z-index:99;padding:0;background-color:transparent;margin:0;color:var(--general_contrasts-100)}@media (max-width: 1000px){.bmb_projected-content{left:1rem!important;right:1rem!important}}.bmb_projected-content[open]{animation:fadein .3s ease-in forwards}.bmb_projected-backdrop{position:fixed;z-index:98;background-color:transparent;margin:0;width:100%;height:100%;top:0}@keyframes fadein{0%{opacity:0;transform:scale(.9)}50%{opacity:.5;transform:scale(1.05)}to{opacity:1;transform:scale(1)}}\n"] }]
112
112
  }], ctorParameters: () => [], propDecorators: { container: [{
113
113
  type: ViewChild,
114
- args: ['container', { read: ViewContainerRef }]
114
+ args: ['container', { read: ViewContainerRef, static: true }]
115
115
  }], projectedContentDialogRef: [{
116
116
  type: ViewChild,
117
117
  args: ['projectedContentDialogRef']
118
118
  }] } });
119
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm1iLXByb2plY3RlZC1jb250ZW50LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RzLW5nL3NyYy9saWIvY29tcG9uZW50cy9ibWItcG9ydGFsL2JtYi1wcm9qZWN0ZWQtY29udGVudC9ibWItcHJvamVjdGVkLWNvbnRlbnQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZHMtbmcvc3JjL2xpYi9jb21wb25lbnRzL2JtYi1wb3J0YWwvYm1iLXByb2plY3RlZC1jb250ZW50L2JtYi1wcm9qZWN0ZWQtY29udGVudC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFFVCxNQUFNLEVBQ04sS0FBSyxFQUNMLE1BQU0sRUFHTixTQUFTLEVBQ1QsZ0JBQWdCLEVBQ2hCLGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUM5RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7OztBQVkvQyxNQUFNLE9BQU8sNEJBQTRCO0lBa0J2QztRQWpCQSxZQUFPLEdBQUcsS0FBSyxDQUFzQyxJQUFJLENBQUMsQ0FBQztRQUMzRCxZQUFPLEdBQUcsS0FBSyxDQUFxQixJQUFJLENBQUMsQ0FBQztRQUMxQyxTQUFJLEdBQUcsS0FBSyxDQUEyQixTQUFTLENBQUMsQ0FBQztRQUNsRCxpQkFBWSxHQUFHLEtBQUssQ0FBVSxLQUFLLENBQUMsQ0FBQztRQUNyQyxpQkFBWSxHQUFHLEtBQUssQ0FBeUIsRUFBRSxDQUFDLENBQUM7UUFDakQsaUJBQVksR0FBRyxLQUFLLENBQVUsSUFBSSxDQUFDLENBQUM7UUFDcEMsa0JBQWEsR0FBRyxLQUFLLENBQTBDLEVBQUUsQ0FBQyxDQUFDO1FBRW5F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QyxDQUFDLEdBQUcsRUFBRSxFQUFFO29CQUNoRCxJQUFJLFFBQVEsQ0FBQyxHQUFHLENBQUMsSUFBSSxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsU0FBUyxFQUFFLENBQUM7d0JBQzdDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFOzRCQUMzQixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUM7d0JBQ25DLENBQUMsQ0FBQyxDQUFDO29CQUNMLENBQUM7Z0JBQ0gsQ0FBQyxDQUFDLENBQUM7WUFDTCxDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7SUFFTyxhQUFhLENBQUMsR0FBUTtRQUM1QixPQUFPLEdBQUcsSUFBSSxHQUFHLENBQUMsa0JBQWtCLENBQUM7SUFDdkMsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUN0QixJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQzlCLENBQUM7SUFDSCxDQUFDOytHQTlIVSw0QkFBNEI7bUdBQTVCLDRCQUE0Qixxb0NBV1AsZ0JBQWdCLHNKQ3RDbEQsOGZBbUJBLCs3TURHWSxtQkFBbUIsd0dBQUUsWUFBWTs7NEZBS2hDLDRCQUE0QjtrQkFUeEMsU0FBUzsrQkFDRSx1QkFBdUIsV0FHeEIsQ0FBQyxtQkFBbUIsRUFBRSxZQUFZLENBQUMsY0FDaEMsSUFBSSxpQkFDRCxpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNO3dEQWMvQyxTQUFTO3NCQURSLFNBQVM7dUJBQUMsV0FBVyxFQUFFLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixFQUFFO2dCQUdsRCx5QkFBeUI7c0JBRHhCLFNBQVM7dUJBQUMsMkJBQTJCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgQ29tcG9uZW50UmVmLFxuICBlZmZlY3QsXG4gIGlucHV0LFxuICBvdXRwdXQsXG4gIFRlbXBsYXRlUmVmLFxuICBUeXBlLFxuICBWaWV3Q2hpbGQsXG4gIFZpZXdDb250YWluZXJSZWYsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJtYk92ZXJsYXlDb21wb25lbnQgfSBmcm9tICcuLi8uLi9ibWItb3ZlcmxheS9ibWItb3ZlcmxheS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IElCbWJQcm9qZWN0ZWRDb250ZW50TW9kZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3Byb2plY3Rpb24uc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JtYi1wcm9qZWN0ZWQtY29udGVudCcsXG4gIHN0eWxlVXJsOiAnLi9ibWItcHJvamVjdGVkLWNvbnRlbnQuY29tcG9uZW50LnNjc3MnLFxuICB0ZW1wbGF0ZVVybDogJy4vYm1iLXByb2plY3RlZC1jb250ZW50LmNvbXBvbmVudC5odG1sJyxcbiAgaW1wb3J0czogW0JtYk92ZXJsYXlDb21wb25lbnQsIENvbW1vbk1vZHVsZV0sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBCbWJQcm9qZWN0ZWRDb250ZW50Q29tcG9uZW50IHtcbiAgY29udGVudCA9IGlucHV0PFRlbXBsYXRlUmVmPGFueT4gfCBudWxsIHwgVHlwZTxhbnk+PihudWxsKTtcbiAgaHRtbFJlZiA9IGlucHV0PEhUTUxFbGVtZW50IHwgbnVsbD4obnVsbCk7XG4gIG1vZGUgPSBpbnB1dDxJQm1iUHJvamVjdGVkQ29udGVudE1vZGU+KCdvdXRzaWRlJyk7XG4gIGZpeFNpemVUb1JlZiA9IGlucHV0PGJvb2xlYW4+KGZhbHNlKTtcbiAgaW5wdXRDb250ZXh0ID0gaW5wdXQ8eyBba2V5OiBzdHJpbmddOiBhbnkgfT4oe30pO1xuICBzaG93QmFja2Ryb3AgPSBpbnB1dDxib29sZWFuPih0cnVlKTtcbiAgb3V0cHV0Q29udGV4dCA9IGlucHV0PHsgW2tleTogc3RyaW5nXTogKHZhbHVlOiBhbnkpID0+IHZvaWQgfT4oe30pO1xuXG4gIHJlbW92ZUNvbnRlbnQgPSBvdXRwdXQ8dm9pZD4oKTtcblxuICBAVmlld0NoaWxkKCdjb250YWluZXInLCB7IHJlYWQ6IFZpZXdDb250YWluZXJSZWYgfSlcbiAgY29udGFpbmVyITogVmlld0NvbnRhaW5lclJlZjtcbiAgQFZpZXdDaGlsZCgncHJvamVjdGVkQ29udGVudERpYWxvZ1JlZicpXG4gIHByb2plY3RlZENvbnRlbnREaWFsb2dSZWYhOiBIVE1MRWxlbWVudDtcblxuICBwcml2YXRlIGNvbXBvbmVudFJlZjogQ29tcG9uZW50UmVmPGFueT4gfCBudWxsID0gbnVsbDtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBlZmZlY3QoKCkgPT4ge1xuICAgICAgaWYgKHRoaXMuY29udGVudCgpICE9PSBudWxsKSB7XG4gICAgICAgIHRoaXMucmVuZGVyQ29udGVudCgpO1xuICAgICAgICAvLyB0aGlzLnByb2plY3RlZENvbnRlbnREaWFsb2dSZWYuZm9jdXMoKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuY29tcG9uZW50UmVmPy5kZXN0cm95KCk7XG4gICAgICAgIHRoaXMuY29tcG9uZW50UmVmID0gbnVsbDtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIGdldFBvc2l0aW9uKCkge1xuICAgIGNvbnN0IHdpZHRoID0gd2luZG93LmlubmVyV2lkdGg7XG4gICAgY29uc3QgaGVpZ2h0ID0gd2luZG93LmlubmVySGVpZ2h0O1xuXG4gICAgaWYgKHRoaXMuaHRtbFJlZigpID09PSBudWxsKSB7XG4gICAgICByZXR1cm4ge307XG4gICAgfVxuXG4gICAgY29uc3QgdGFyZ2V0UG9zaXRpb24gPSB0aGlzLmh0bWxSZWYoKT8uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkgPz8ge1xuICAgICAgYm90dG9tOiAwLFxuICAgICAgaGVpZ2h0OiAwLFxuICAgICAgbGVmdDogMCxcbiAgICAgIHJpZ2h0OiAwLFxuICAgICAgdG9wOiAwLFxuICAgICAgd2lkdGg6IDAsXG4gICAgICB4OiAwLFxuICAgICAgeTogMCxcbiAgICB9O1xuXG4gICAgbGV0IG1vZGUgPSAwO1xuXG4gICAgaWYgKHRoaXMubW9kZSgpID09PSAncGFydGlhbCcpIHtcbiAgICAgIG1vZGUgPSB0YXJnZXRQb3NpdGlvbi5oZWlnaHQgLyAyO1xuICAgIH1cblxuICAgIGlmICh0aGlzLm1vZGUoKSA9PT0gJ291dHNpZGUnKSB7XG4gICAgICBtb2RlID0gdGFyZ2V0UG9zaXRpb24uaGVpZ2h0ICsgODtcbiAgICB9XG5cbiAgICBjb25zdCBsZWZ0ID1cbiAgICAgIHRhcmdldFBvc2l0aW9uLmxlZnQgPD0gd2lkdGggLyAyXG4gICAgICAgID8gdGFyZ2V0UG9zaXRpb24ubGVmdC50b0ZpeGVkKDApICsgJ3B4J1xuICAgICAgICA6ICdhdXRvJztcbiAgICBjb25zdCByaWdodCA9XG4gICAgICB0YXJnZXRQb3NpdGlvbi5sZWZ0ID4gd2lkdGggLyAyXG4gICAgICAgID8gKHdpZHRoIC0gdGFyZ2V0UG9zaXRpb24ucmlnaHQpLnRvRml4ZWQoMCkgKyAncHgnXG4gICAgICAgIDogJ2F1dG8nO1xuICAgIGNvbnN0IHRvcCA9XG4gICAgICB0YXJnZXRQb3NpdGlvbi50b3AgPD0gaGVpZ2h0IC8gMlxuICAgICAgICA/ICh0YXJnZXRQb3NpdGlvbi50b3AgKyBtb2RlKS50b0ZpeGVkKDApICsgJ3B4J1xuICAgICAgICA6ICdhdXRvJztcbiAgICBjb25zdCBib3R0b20gPVxuICAgICAgdGFyZ2V0UG9zaXRpb24udG9wID4gaGVpZ2h0IC8gMlxuICAgICAgICA/IChoZWlnaHQgLSAodGFyZ2V0UG9zaXRpb24uYm90dG9tIC0gbW9kZSkpLnRvRml4ZWQoMCkgKyAncHgnXG4gICAgICAgIDogJ2F1dG8nO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIGluc2V0OiBgJHt0b3B9ICR7cmlnaHR9ICR7Ym90dG9tfSAke2xlZnR9YCxcbiAgICAgIHdpZHRoOiB0aGlzLmZpeFNpemVUb1JlZigpXG4gICAgICAgID8gdGFyZ2V0UG9zaXRpb24ud2lkdGgudG9GaXhlZCgwKSArICdweCdcbiAgICAgICAgOiAnYXV0bycsXG4gICAgfTtcbiAgfVxuXG4gIHJlbmRlckNvbnRlbnQoKSB7XG4gICAgdGhpcy5jb250YWluZXIuY2xlYXIoKTtcbiAgICBpZiAodGhpcy5jb21wb25lbnRSZWYpIHtcbiAgICAgIHRoaXMuY29tcG9uZW50UmVmLmRlc3Ryb3koKTtcbiAgICAgIHRoaXMuY29tcG9uZW50UmVmID0gbnVsbDtcbiAgICB9XG5cbiAgICBpZiAoIXRoaXMuY29udGVudCgpIHx8ICF0aGlzLmNvbnRhaW5lcikgcmV0dXJuO1xuXG4gICAgaWYgKHRoaXMuaXNUZW1wbGF0ZVJlZih0aGlzLmNvbnRlbnQoKSkpIHtcbiAgICAgIHRoaXMuY29udGFpbmVyLmNyZWF0ZUVtYmVkZGVkVmlldyh0aGlzLmNvbnRlbnQoKSBhcyBUZW1wbGF0ZVJlZjxhbnk+KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5jb21wb25lbnRSZWYgPSB0aGlzLmNvbnRhaW5lci5jcmVhdGVDb21wb25lbnQoXG4gICAgICAgIHRoaXMuY29udGVudCgpIGFzIFR5cGU8YW55PixcbiAgICAgICk7XG5cbiAgICAgIGlmICh0aGlzLmNvbXBvbmVudFJlZi5pbnN0YW5jZSkge1xuICAgICAgICBjb25zdCBpbnN0YW5jZSA9IHRoaXMuY29tcG9uZW50UmVmLmluc3RhbmNlIGFzIGFueTtcblxuICAgICAgICBPYmplY3Qua2V5cyh0aGlzLmlucHV0Q29udGV4dCgpKS5mb3JFYWNoKChrZXkpID0+IHtcbiAgICAgICAgICB0aGlzLmNvbXBvbmVudFJlZj8uc2V0SW5wdXQoa2V5LCB0aGlzLmlucHV0Q29udGV4dCgpW2tleV0pO1xuICAgICAgICB9KTtcblxuICAgICAgICBPYmplY3Qua2V5cyh0aGlzLm91dHB1dENvbnRleHQoKSkuZm9yRWFjaCgoa2V5KSA9PiB7XG4gICAgICAgICAgaWYgKGluc3RhbmNlW2tleV0gJiYgaW5zdGFuY2Vba2V5XS5zdWJzY3JpYmUpIHtcbiAgICAgICAgICAgIGluc3RhbmNlW2tleV0uc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgICAgdGhpcy5vdXRwdXRDb250ZXh0KClba2V5XShldmVudCk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgaXNUZW1wbGF0ZVJlZihvYmo6IGFueSk6IG9iaiBpcyBUZW1wbGF0ZVJlZjxhbnk+IHtcbiAgICByZXR1cm4gb2JqICYmIG9iai5jcmVhdGVFbWJlZGRlZFZpZXc7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICBpZiAodGhpcy5jb21wb25lbnRSZWYpIHtcbiAgICAgIHRoaXMuY29tcG9uZW50UmVmLmRlc3Ryb3koKTtcbiAgICB9XG4gIH1cbn1cbiIsIkBpZiAoY29udGVudCgpICE9PSBudWxsICYmICFzaG93QmFja2Ryb3AoKSkge1xuICA8ZGl2IGNsYXNzPVwiYm1iX3Byb2plY3RlZC1iYWNrZHJvcFwiIChjbGljayk9XCJyZW1vdmVDb250ZW50LmVtaXQoKVwiPjwvZGl2PlxufSBAZWxzZSB7XG4gIDxibWItb3ZlcmxheVxuICAgIFthY3RpdmVdPVwiY29udGVudCgpICE9PSBudWxsICYmIHNob3dCYWNrZHJvcCgpXCJcbiAgICAoY2xpY2spPVwicmVtb3ZlQ29udGVudC5lbWl0KClcIlxuICAvPlxufVxuPGRpYWxvZ1xuICBjbGFzcz1cImJtYl9wcm9qZWN0ZWQtY29udGVudFwiXG4gIFtuZ1N0eWxlXT1cImdldFBvc2l0aW9uKClcIlxuICBbb3Blbl09XCJjb250ZW50KCkgIT09IG51bGxcIlxuICAjcHJvamVjdGVkQ29udGVudERpYWxvZ1JlZlxuICB0YWJpbmRleD1cIjBcIlxuPlxuICBAaWYgKGNvbnRlbnQoKSAhPT0gbnVsbCkge1xuICAgIDxuZy1jb250YWluZXIgI2NvbnRhaW5lcj48L25nLWNvbnRhaW5lcj5cbiAgfVxuPC9kaWFsb2c+XG4iXX0=
119
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm1iLXByb2plY3RlZC1jb250ZW50LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RzLW5nL3NyYy9saWIvY29tcG9uZW50cy9ibWItcG9ydGFsL2JtYi1wcm9qZWN0ZWQtY29udGVudC9ibWItcHJvamVjdGVkLWNvbnRlbnQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZHMtbmcvc3JjL2xpYi9jb21wb25lbnRzL2JtYi1wb3J0YWwvYm1iLXByb2plY3RlZC1jb250ZW50L2JtYi1wcm9qZWN0ZWQtY29udGVudC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFFVCxNQUFNLEVBQ04sS0FBSyxFQUNMLE1BQU0sRUFHTixTQUFTLEVBQ1QsZ0JBQWdCLEVBQ2hCLGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUM5RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7OztBQVkvQyxNQUFNLE9BQU8sNEJBQTRCO0lBa0J2QztRQWpCQSxZQUFPLEdBQUcsS0FBSyxDQUFzQyxJQUFJLENBQUMsQ0FBQztRQUMzRCxZQUFPLEdBQUcsS0FBSyxDQUFxQixJQUFJLENBQUMsQ0FBQztRQUMxQyxTQUFJLEdBQUcsS0FBSyxDQUEyQixTQUFTLENBQUMsQ0FBQztRQUNsRCxpQkFBWSxHQUFHLEtBQUssQ0FBVSxLQUFLLENBQUMsQ0FBQztRQUNyQyxpQkFBWSxHQUFHLEtBQUssQ0FBeUIsRUFBRSxDQUFDLENBQUM7UUFDakQsaUJBQVksR0FBRyxLQUFLLENBQVUsSUFBSSxDQUFDLENBQUM7UUFDcEMsa0JBQWEsR0FBRyxLQUFLLENBQTBDLEVBQUUsQ0FBQyxDQUFDO1FBRW5F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QyxDQUFDLEdBQUcsRUFBRSxFQUFFO29CQUNoRCxJQUFJLFFBQVEsQ0FBQyxHQUFHLENBQUMsSUFBSSxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsU0FBUyxFQUFFLENBQUM7d0JBQzdDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFOzRCQUMzQixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUM7d0JBQ25DLENBQUMsQ0FBQyxDQUFDO29CQUNMLENBQUM7Z0JBQ0gsQ0FBQyxDQUFDLENBQUM7WUFDTCxDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7SUFFTyxhQUFhLENBQUMsR0FBUTtRQUM1QixPQUFPLEdBQUcsSUFBSSxHQUFHLENBQUMsa0JBQWtCLENBQUM7SUFDdkMsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUN0QixJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQzlCLENBQUM7SUFDSCxDQUFDOytHQTlIVSw0QkFBNEI7bUdBQTVCLDRCQUE0Qixxb0NBV1AsZ0JBQWdCLG9LQ3RDbEQseWRBaUJBLCs3TURLWSxtQkFBbUIsd0dBQUUsWUFBWTs7NEZBS2hDLDRCQUE0QjtrQkFUeEMsU0FBUzsrQkFDRSx1QkFBdUIsV0FHeEIsQ0FBQyxtQkFBbUIsRUFBRSxZQUFZLENBQUMsY0FDaEMsSUFBSSxpQkFDRCxpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNO3dEQWMvQyxTQUFTO3NCQURSLFNBQVM7dUJBQUMsV0FBVyxFQUFFLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBR2hFLHlCQUF5QjtzQkFEeEIsU0FBUzt1QkFBQywyQkFBMkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBDb21wb25lbnRSZWYsXG4gIGVmZmVjdCxcbiAgaW5wdXQsXG4gIG91dHB1dCxcbiAgVGVtcGxhdGVSZWYsXG4gIFR5cGUsXG4gIFZpZXdDaGlsZCxcbiAgVmlld0NvbnRhaW5lclJlZixcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQm1iT3ZlcmxheUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2JtYi1vdmVybGF5L2JtYi1vdmVybGF5LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgSUJtYlByb2plY3RlZENvbnRlbnRNb2RlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvcHJvamVjdGlvbi5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYm1iLXByb2plY3RlZC1jb250ZW50JyxcbiAgc3R5bGVVcmw6ICcuL2JtYi1wcm9qZWN0ZWQtY29udGVudC5jb21wb25lbnQuc2NzcycsXG4gIHRlbXBsYXRlVXJsOiAnLi9ibWItcHJvamVjdGVkLWNvbnRlbnQuY29tcG9uZW50Lmh0bWwnLFxuICBpbXBvcnRzOiBbQm1iT3ZlcmxheUNvbXBvbmVudCwgQ29tbW9uTW9kdWxlXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIEJtYlByb2plY3RlZENvbnRlbnRDb21wb25lbnQge1xuICBjb250ZW50ID0gaW5wdXQ8VGVtcGxhdGVSZWY8YW55PiB8IG51bGwgfCBUeXBlPGFueT4+KG51bGwpO1xuICBodG1sUmVmID0gaW5wdXQ8SFRNTEVsZW1lbnQgfCBudWxsPihudWxsKTtcbiAgbW9kZSA9IGlucHV0PElCbWJQcm9qZWN0ZWRDb250ZW50TW9kZT4oJ291dHNpZGUnKTtcbiAgZml4U2l6ZVRvUmVmID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xuICBpbnB1dENvbnRleHQgPSBpbnB1dDx7IFtrZXk6IHN0cmluZ106IGFueSB9Pih7fSk7XG4gIHNob3dCYWNrZHJvcCA9IGlucHV0PGJvb2xlYW4+KHRydWUpO1xuICBvdXRwdXRDb250ZXh0ID0gaW5wdXQ8eyBba2V5OiBzdHJpbmddOiAodmFsdWU6IGFueSkgPT4gdm9pZCB9Pih7fSk7XG5cbiAgcmVtb3ZlQ29udGVudCA9IG91dHB1dDx2b2lkPigpO1xuXG4gIEBWaWV3Q2hpbGQoJ2NvbnRhaW5lcicsIHsgcmVhZDogVmlld0NvbnRhaW5lclJlZiwgc3RhdGljOiB0cnVlIH0pXG4gIGNvbnRhaW5lciE6IFZpZXdDb250YWluZXJSZWY7XG4gIEBWaWV3Q2hpbGQoJ3Byb2plY3RlZENvbnRlbnREaWFsb2dSZWYnKVxuICBwcm9qZWN0ZWRDb250ZW50RGlhbG9nUmVmITogSFRNTEVsZW1lbnQ7XG5cbiAgcHJpdmF0ZSBjb21wb25lbnRSZWY6IENvbXBvbmVudFJlZjxhbnk+IHwgbnVsbCA9IG51bGw7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgZWZmZWN0KCgpID0+IHtcbiAgICAgIGlmICh0aGlzLmNvbnRlbnQoKSAhPT0gbnVsbCkge1xuICAgICAgICB0aGlzLnJlbmRlckNvbnRlbnQoKTtcbiAgICAgICAgLy8gdGhpcy5wcm9qZWN0ZWRDb250ZW50RGlhbG9nUmVmLmZvY3VzKCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmNvbXBvbmVudFJlZj8uZGVzdHJveSgpO1xuICAgICAgICB0aGlzLmNvbXBvbmVudFJlZiA9IG51bGw7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBnZXRQb3NpdGlvbigpIHtcbiAgICBjb25zdCB3aWR0aCA9IHdpbmRvdy5pbm5lcldpZHRoO1xuICAgIGNvbnN0IGhlaWdodCA9IHdpbmRvdy5pbm5lckhlaWdodDtcblxuICAgIGlmICh0aGlzLmh0bWxSZWYoKSA9PT0gbnVsbCkge1xuICAgICAgcmV0dXJuIHt9O1xuICAgIH1cblxuICAgIGNvbnN0IHRhcmdldFBvc2l0aW9uID0gdGhpcy5odG1sUmVmKCk/LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpID8/IHtcbiAgICAgIGJvdHRvbTogMCxcbiAgICAgIGhlaWdodDogMCxcbiAgICAgIGxlZnQ6IDAsXG4gICAgICByaWdodDogMCxcbiAgICAgIHRvcDogMCxcbiAgICAgIHdpZHRoOiAwLFxuICAgICAgeDogMCxcbiAgICAgIHk6IDAsXG4gICAgfTtcblxuICAgIGxldCBtb2RlID0gMDtcblxuICAgIGlmICh0aGlzLm1vZGUoKSA9PT0gJ3BhcnRpYWwnKSB7XG4gICAgICBtb2RlID0gdGFyZ2V0UG9zaXRpb24uaGVpZ2h0IC8gMjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5tb2RlKCkgPT09ICdvdXRzaWRlJykge1xuICAgICAgbW9kZSA9IHRhcmdldFBvc2l0aW9uLmhlaWdodCArIDg7XG4gICAgfVxuXG4gICAgY29uc3QgbGVmdCA9XG4gICAgICB0YXJnZXRQb3NpdGlvbi5sZWZ0IDw9IHdpZHRoIC8gMlxuICAgICAgICA/IHRhcmdldFBvc2l0aW9uLmxlZnQudG9GaXhlZCgwKSArICdweCdcbiAgICAgICAgOiAnYXV0byc7XG4gICAgY29uc3QgcmlnaHQgPVxuICAgICAgdGFyZ2V0UG9zaXRpb24ubGVmdCA+IHdpZHRoIC8gMlxuICAgICAgICA/ICh3aWR0aCAtIHRhcmdldFBvc2l0aW9uLnJpZ2h0KS50b0ZpeGVkKDApICsgJ3B4J1xuICAgICAgICA6ICdhdXRvJztcbiAgICBjb25zdCB0b3AgPVxuICAgICAgdGFyZ2V0UG9zaXRpb24udG9wIDw9IGhlaWdodCAvIDJcbiAgICAgICAgPyAodGFyZ2V0UG9zaXRpb24udG9wICsgbW9kZSkudG9GaXhlZCgwKSArICdweCdcbiAgICAgICAgOiAnYXV0byc7XG4gICAgY29uc3QgYm90dG9tID1cbiAgICAgIHRhcmdldFBvc2l0aW9uLnRvcCA+IGhlaWdodCAvIDJcbiAgICAgICAgPyAoaGVpZ2h0IC0gKHRhcmdldFBvc2l0aW9uLmJvdHRvbSAtIG1vZGUpKS50b0ZpeGVkKDApICsgJ3B4J1xuICAgICAgICA6ICdhdXRvJztcblxuICAgIHJldHVybiB7XG4gICAgICBpbnNldDogYCR7dG9wfSAke3JpZ2h0fSAke2JvdHRvbX0gJHtsZWZ0fWAsXG4gICAgICB3aWR0aDogdGhpcy5maXhTaXplVG9SZWYoKVxuICAgICAgICA/IHRhcmdldFBvc2l0aW9uLndpZHRoLnRvRml4ZWQoMCkgKyAncHgnXG4gICAgICAgIDogJ2F1dG8nLFxuICAgIH07XG4gIH1cblxuICByZW5kZXJDb250ZW50KCkge1xuICAgIHRoaXMuY29udGFpbmVyPy5jbGVhcigpO1xuICAgIGlmICh0aGlzLmNvbXBvbmVudFJlZikge1xuICAgICAgdGhpcy5jb21wb25lbnRSZWYuZGVzdHJveSgpO1xuICAgICAgdGhpcy5jb21wb25lbnRSZWYgPSBudWxsO1xuICAgIH1cblxuICAgIGlmICghdGhpcy5jb250ZW50KCkgfHwgIXRoaXMuY29udGFpbmVyKSByZXR1cm47XG5cbiAgICBpZiAodGhpcy5pc1RlbXBsYXRlUmVmKHRoaXMuY29udGVudCgpKSkge1xuICAgICAgdGhpcy5jb250YWluZXIuY3JlYXRlRW1iZWRkZWRWaWV3KHRoaXMuY29udGVudCgpIGFzIFRlbXBsYXRlUmVmPGFueT4pO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmNvbXBvbmVudFJlZiA9IHRoaXMuY29udGFpbmVyLmNyZWF0ZUNvbXBvbmVudChcbiAgICAgICAgdGhpcy5jb250ZW50KCkgYXMgVHlwZTxhbnk+LFxuICAgICAgKTtcblxuICAgICAgaWYgKHRoaXMuY29tcG9uZW50UmVmLmluc3RhbmNlKSB7XG4gICAgICAgIGNvbnN0IGluc3RhbmNlID0gdGhpcy5jb21wb25lbnRSZWYuaW5zdGFuY2UgYXMgYW55O1xuXG4gICAgICAgIE9iamVjdC5rZXlzKHRoaXMuaW5wdXRDb250ZXh0KCkpLmZvckVhY2goKGtleSkgPT4ge1xuICAgICAgICAgIHRoaXMuY29tcG9uZW50UmVmPy5zZXRJbnB1dChrZXksIHRoaXMuaW5wdXRDb250ZXh0KClba2V5XSk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIE9iamVjdC5rZXlzKHRoaXMub3V0cHV0Q29udGV4dCgpKS5mb3JFYWNoKChrZXkpID0+IHtcbiAgICAgICAgICBpZiAoaW5zdGFuY2Vba2V5XSAmJiBpbnN0YW5jZVtrZXldLnN1YnNjcmliZSkge1xuICAgICAgICAgICAgaW5zdGFuY2Vba2V5XS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICB0aGlzLm91dHB1dENvbnRleHQoKVtrZXldKGV2ZW50KTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBpc1RlbXBsYXRlUmVmKG9iajogYW55KTogb2JqIGlzIFRlbXBsYXRlUmVmPGFueT4ge1xuICAgIHJldHVybiBvYmogJiYgb2JqLmNyZWF0ZUVtYmVkZGVkVmlldztcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIGlmICh0aGlzLmNvbXBvbmVudFJlZikge1xuICAgICAgdGhpcy5jb21wb25lbnRSZWYuZGVzdHJveSgpO1xuICAgIH1cbiAgfVxufVxuIiwiQGlmIChjb250ZW50KCkgIT09IG51bGwgJiYgIXNob3dCYWNrZHJvcCgpKSB7XG4gIDxkaXYgY2xhc3M9XCJibWJfcHJvamVjdGVkLWJhY2tkcm9wXCIgKGNsaWNrKT1cInJlbW92ZUNvbnRlbnQuZW1pdCgpXCI+PC9kaXY+XG59IEBlbHNlIHtcbiAgPGJtYi1vdmVybGF5XG4gICAgW2FjdGl2ZV09XCJjb250ZW50KCkgIT09IG51bGwgJiYgc2hvd0JhY2tkcm9wKClcIlxuICAgIChjbGljayk9XCJyZW1vdmVDb250ZW50LmVtaXQoKVwiXG4gIC8+XG59XG48ZGlhbG9nXG4gIGNsYXNzPVwiYm1iX3Byb2plY3RlZC1jb250ZW50XCJcbiAgW25nU3R5bGVdPVwiZ2V0UG9zaXRpb24oKVwiXG4gIFtvcGVuXT1cImNvbnRlbnQoKSAhPT0gbnVsbFwiXG4gICNwcm9qZWN0ZWRDb250ZW50RGlhbG9nUmVmXG4gIHRhYmluZGV4PVwiMFwiXG4+XG4gIDxuZy1jb250YWluZXIgI2NvbnRhaW5lcj48L25nLWNvbnRhaW5lcj5cbjwvZGlhbG9nPlxuIl19
@@ -4,7 +4,6 @@ import { BmbTimestreamErrorComponent } from './bmb-timestream-error/bmb-timestre
4
4
  import { BmbHitoListComponent } from '../bmb-hito-list/bmb-hito-list.component';
5
5
  import { BmbTimestreamDetailsComponent } from './bmb-timestream-detail/bmb-timestream-detail.component';
6
6
  import { CommonModule } from '@angular/common';
7
- import { BmbModalComponent } from '../bmb-modal/bmb-modal.component';
8
7
  import { BmbUserImageComponent } from '../bmb-user-image/bmb-user-image.component';
9
8
  import { BmbTabsComponent } from '../bmb-tabs/bmb-tabs.component';
10
9
  import { BmbButtonDirective } from '../../directives/bmb-button/button.directive';
@@ -12,11 +11,11 @@ import { BmbDividerComponent } from '../bmb-divider/bmb-divider.component';
12
11
  import { BmbHitoCardComponent } from '../bmb-hito-card/bmb-hito-card.component';
13
12
  import { BmbBadgeComponent } from '../bmb-badge/bmb-badge.component';
14
13
  import * as i0 from "@angular/core";
15
- import * as i1 from "@angular/material/dialog";
14
+ import * as i1 from "../../services/native-modal.service";
16
15
  import * as i2 from "@angular/common";
17
16
  export class BmbTimestreamComponent {
18
- constructor(matDialog) {
19
- this.matDialog = matDialog;
17
+ constructor(modalService) {
18
+ this.modalService = modalService;
20
19
  this.isMicro = input(false);
21
20
  this.lang = input('es');
22
21
  this.dateFormat = input('dd/MM/yyyy');
@@ -171,9 +170,8 @@ export class BmbTimestreamComponent {
171
170
  title: event.title,
172
171
  content: this.newModal,
173
172
  size: 'large',
174
- hidePrimaryButton: true,
175
173
  };
176
- this.matDialog.open(BmbModalComponent, { data });
174
+ this.modalService.openModal(data);
177
175
  }
178
176
  getMonthTitle(date) {
179
177
  return date.setLocale(this.lang()).toFormat('cccc dd LLLL yyyy');
@@ -214,7 +212,7 @@ export class BmbTimestreamComponent {
214
212
  return eventType;
215
213
  return eventType.text || '';
216
214
  }
217
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BmbTimestreamComponent, deps: [{ token: i1.MatDialog }], target: i0.ɵɵFactoryTarget.Component }); }
215
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BmbTimestreamComponent, deps: [{ token: i1.BmbNativeModalService }], target: i0.ɵɵFactoryTarget.Component }); }
218
216
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: BmbTimestreamComponent, isStandalone: true, selector: "bmb-timestream", inputs: { isMicro: { classPropertyName: "isMicro", publicName: "isMicro", isSignal: true, isRequired: false, transformFunction: null }, lang: { classPropertyName: "lang", publicName: "lang", isSignal: true, isRequired: false, transformFunction: null }, dateFormat: { classPropertyName: "dateFormat", publicName: "dateFormat", isSignal: true, isRequired: false, transformFunction: null }, events: { classPropertyName: "events", publicName: "events", isSignal: true, isRequired: false, transformFunction: null }, clamp: { classPropertyName: "clamp", publicName: "clamp", isSignal: true, isRequired: false, transformFunction: null } }, viewQueries: [{ propertyName: "modalTemplate", first: true, predicate: ["modalTemplate"], descendants: true, read: TemplateRef }], usesOnChanges: true, ngImport: i0, template: "<section\n class=\"bmb_timestream\"\n [ngClass]=\"{ 'bmb_timestream-micro': isMicro() }\"\n>\n @if (error) {\n <div class=\"bmb_timestream-error\">\n <bmb-timestream-error />\n </div>\n } @else {\n @if (!isMicro()) {\n <aside class=\"bmb_timestream-aside\">\n <bmb-hito-list\n [dateFormat]=\"dateFormat()\"\n [lang]=\"lang()\"\n [now]=\"now\"\n [events]=\"parsedEvents\"\n [selectedDate]=\"selectedDate\"\n [orderedMonths]=\"orderedMonths\"\n (changeSelectedDate)=\"handleSelectedDateChange($event)\"\n />\n </aside>\n }\n <section class=\"bmb_timestream-main\">\n <bmb-timestream-detail\n [lang]=\"lang()\"\n [now]=\"now\"\n [selectedDate]=\"selectedDate\"\n (changeSelectedEvent)=\"handleSelectedEventChange($event)\"\n [orderedEvents]=\"orderedEvents()\"\n [isMicro]=\"isMicro()\"\n />\n </section>\n }\n</section>\n\n<ng-template #modalTemplate>\n @if (selectedEvent) {\n <section class=\"bmb_timestream-dialog\">\n <figure class=\"bmb_timestream-dialog-hero\">\n <img\n [src]=\"selectedEvent.image\"\n [alt]=\"selectedEvent.title\"\n class=\"bmb_timestream-dialog-hero-image\"\n />\n </figure>\n <div class=\"bmb_timestream-dialog-user\">\n <bmb-user-image\n size=\"mobile-small\"\n [image]=\"selectedEvent.picture_profile || ''\"\n [altImage]=\"selectedEvent.user_first_name || ''\"\n [bordered]=\"false\"\n />\n <span class=\"bmb_timestream-dialog-user-name\"\n >{{ selectedEvent.user_first_name }}\n {{ selectedEvent.user_last_name }}</span\n >\n <span class=\"bmb_timestream-dialog-user-date\">{{\n selectedEvent.startEvent?.toFormat('dd/MM/yyyy')\n }}</span>\n </div>\n <bmb-tabs\n [tabs]=\"eventTabs\"\n (selected)=\"handleTabSelected($event)\"\n style=\"flex: 1\"\n >\n @switch (tabSelected) {\n @case (1) {\n <div class=\"bmb_timestream-dialog-tab\">\n <dl class=\"bmb_timestream-dialog-dual\">\n <dt class=\"bmb_timestream-dialog-dual-title\">Estado:</dt>\n <dd class=\"bmb_timestream-dialog-dual-data\">\n <bmb-badge\n [appearance]=\"appearanceBadge(selectedEvent.type)\"\n [text]=\"getBadgeText(selectedEvent.type)\"\n [container]=\"false\"\n />\n </dd>\n <dt class=\"bmb_timestream-dialog-dual-title\">\n Duraci\u00F3n total:\n </dt>\n <dd class=\"bmb_timestream-dialog-dual-data\">\n {{ getDiffString(selectedEvent.diff) }}\n </dd>\n </dl>\n <p>{{ selectedEvent.description }}</p>\n </div>\n }\n @case (2) {\n <div class=\"bmb_timestream-dialog-tab\">\n <h3 class=\"bmb_timestream-dialog-tab-title\">Instancias</h3>\n <bmb-divider type=\"simple\" />\n <section class=\"bmb_timestream-dialog-tab-hito-list\">\n @for (date of getInstances(selectedEvent); track $index) {\n <bmb-hito-card\n [icon]=\"selectedEvent.icon || 'app_badging'\"\n [title]=\"selectedEvent.title\"\n [type]=\"selectedEvent.type\"\n [id]=\"$index\"\n [enable_bullet]=\"false\"\n [alternative_appearance]=\"true\"\n [isCompact]=\"true\"\n />\n }\n @if (selectedEvent.diff) {\n <p class=\"bmb_timestream-dialog-tab-duration\">\n {{ getDurationString(selectedEvent) }}\n </p>\n }\n @if (selectedEvent.related_to) {\n <h3 class=\"bmb_timestream-dialog-container-tab-title\">\n Relacionado a\n </h3>\n @for (related of selectedEvent.related_to; track $index) {\n <bmb-hito-card\n [icon]=\"selectedEvent.icon || 'app_badging'\"\n [title]=\"related\"\n [type]=\"selectedEvent.type\"\n [id]=\"related\"\n [enable_bullet]=\"false\"\n [alternative_appearance]=\"true\"\n [isCompact]=\"true\"\n />\n }\n }\n </section>\n </div>\n }\n }\n </bmb-tabs>\n <section class=\"bmb_timestream-dialog-button-container\">\n <button bmbButton appearance=\"primary\" icon=\"fit_screen\">\n Ir a decisi\u00F3n\n </button>\n </section>\n </section>\n }\n</ng-template>\n", styles: ["@font-face{font-family:Poppins-Light;font-style:normal;font-weight:300;src:url(/assets/fonts/Poppins/Poppins-ExtraLight.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Regular;font-style:normal;font-weight:400;src:url(/assets/fonts/Poppins/Poppins-Regular.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Bold;font-style:normal;font-weight:700;src:url(/assets/fonts/Poppins/Poppins-Bold.ttf) format(\"truetype\")}:root,:host{--font-display: \"Poppins-Regular\", sans-serif}.font-thin-1{font-family:Poppins-Thin,sans-serif;font-size:.625rem}.font-light-1{font-family:Poppins-Light,sans-serif;font-size:.625rem}.font-regular-1{font-family:Poppins-Regular,sans-serif;font-size:.625rem}.font-medium-1{font-family:Poppins-Medium,sans-serif;font-size:.625rem}.font-semibold-1{font-family:Poppins-Semibold,sans-serif;font-size:.625rem}.font-bold-1{font-family:Poppins-Bold,sans-serif;font-size:.625rem}.font-thin-2{font-family:Poppins-Thin,sans-serif;font-size:.6875rem}.font-light-2{font-family:Poppins-Light,sans-serif;font-size:.6875rem}.font-regular-2{font-family:Poppins-Regular,sans-serif;font-size:.6875rem}.font-medium-2{font-family:Poppins-Medium,sans-serif;font-size:.6875rem}.font-semibold-2{font-family:Poppins-Semibold,sans-serif;font-size:.6875rem}.font-bold-2{font-family:Poppins-Bold,sans-serif;font-size:.6875rem}.font-thin-3{font-family:Poppins-Thin,sans-serif;font-size:.75rem}.font-light-3{font-family:Poppins-Light,sans-serif;font-size:.75rem}.font-regular-3{font-family:Poppins-Regular,sans-serif;font-size:.75rem}.font-medium-3{font-family:Poppins-Medium,sans-serif;font-size:.75rem}.font-semibold-3{font-family:Poppins-Semibold,sans-serif;font-size:.75rem}.font-bold-3{font-family:Poppins-Bold,sans-serif;font-size:.75rem}.font-thin-4{font-family:Poppins-Thin,sans-serif;font-size:.875rem}.font-light-4{font-family:Poppins-Light,sans-serif;font-size:.875rem}.font-regular-4{font-family:Poppins-Regular,sans-serif;font-size:.875rem}.font-medium-4{font-family:Poppins-Medium,sans-serif;font-size:.875rem}.font-semibold-4{font-family:Poppins-Semibold,sans-serif;font-size:.875rem}.font-bold-4{font-family:Poppins-Bold,sans-serif;font-size:.875rem}.font-thin-4_5{font-family:Poppins-Thin,sans-serif;font-size:.9375rem}.font-light-4_5{font-family:Poppins-Light,sans-serif;font-size:.9375rem}.font-regular-4_5{font-family:Poppins-Regular,sans-serif;font-size:.9375rem}.font-medium-4_5{font-family:Poppins-Medium,sans-serif;font-size:.9375rem}.font-semibold-4_5{font-family:Poppins-Semibold,sans-serif;font-size:.9375rem}.font-bold-4_5{font-family:Poppins-Bold,sans-serif;font-size:.9375rem}.font-thin-5{font-family:Poppins-Thin,sans-serif;font-size:1rem}.font-light-5{font-family:Poppins-Light,sans-serif;font-size:1rem}.font-regular-5{font-family:Poppins-Regular,sans-serif;font-size:1rem}.font-medium-5{font-family:Poppins-Medium,sans-serif;font-size:1rem}.font-semibold-5{font-family:Poppins-Semibold,sans-serif;font-size:1rem}.font-bold-5{font-family:Poppins-Bold,sans-serif;font-size:1rem}.font-thin-6{font-family:Poppins-Thin,sans-serif;font-size:1.125rem}.font-light-6{font-family:Poppins-Light,sans-serif;font-size:1.125rem}.font-regular-6{font-family:Poppins-Regular,sans-serif;font-size:1.125rem}.font-medium-6{font-family:Poppins-Medium,sans-serif;font-size:1.125rem}.font-semibold-6{font-family:Poppins-Semibold,sans-serif;font-size:1.125rem}.font-bold-6{font-family:Poppins-Bold,sans-serif;font-size:1.125rem}.font-thin-7{font-family:Poppins-Thin,sans-serif;font-size:1.25rem}.font-light-7{font-family:Poppins-Light,sans-serif;font-size:1.25rem}.font-regular-7{font-family:Poppins-Regular,sans-serif;font-size:1.25rem}.font-medium-7{font-family:Poppins-Medium,sans-serif;font-size:1.25rem}.font-semibold-7{font-family:Poppins-Semibold,sans-serif;font-size:1.25rem}.font-bold-7{font-family:Poppins-Bold,sans-serif;font-size:1.25rem}.font-thin-8{font-family:Poppins-Thin,sans-serif;font-size:1.375rem}.font-light-8{font-family:Poppins-Light,sans-serif;font-size:1.375rem}.font-regular-8{font-family:Poppins-Regular,sans-serif;font-size:1.375rem}.font-medium-8{font-family:Poppins-Medium,sans-serif;font-size:1.375rem}.font-semibold-8{font-family:Poppins-Semibold,sans-serif;font-size:1.375rem}.font-bold-8{font-family:Poppins-Bold,sans-serif;font-size:1.375rem}.font-thin-9{font-family:Poppins-Thin,sans-serif;font-size:1.5rem}.font-light-9{font-family:Poppins-Light,sans-serif;font-size:1.5rem}.font-regular-9{font-family:Poppins-Regular,sans-serif;font-size:1.5rem}.font-medium-9{font-family:Poppins-Medium,sans-serif;font-size:1.5rem}.font-semibold-9{font-family:Poppins-Semibold,sans-serif;font-size:1.5rem}.font-bold-9{font-family:Poppins-Bold,sans-serif;font-size:1.5rem}.font-thin-10{font-family:Poppins-Thin,sans-serif;font-size:1.625rem}.font-light-10{font-family:Poppins-Light,sans-serif;font-size:1.625rem}.font-regular-10{font-family:Poppins-Regular,sans-serif;font-size:1.625rem}.font-medium-10{font-family:Poppins-Medium,sans-serif;font-size:1.625rem}.font-semibold-10{font-family:Poppins-Semibold,sans-serif;font-size:1.625rem}.font-bold-10{font-family:Poppins-Bold,sans-serif;font-size:1.625rem}.font-thin-11{font-family:Poppins-Thin,sans-serif;font-size:2.25rem}.font-light-11{font-family:Poppins-Light,sans-serif;font-size:2.25rem}.font-regular-11{font-family:Poppins-Regular,sans-serif;font-size:2.25rem}.font-medium-11{font-family:Poppins-Medium,sans-serif;font-size:2.25rem}.font-semibold-11{font-family:Poppins-Semibold,sans-serif;font-size:2.25rem}.font-bold-11{font-family:Poppins-Bold,sans-serif;font-size:2.25rem}.font-thin-12{font-family:Poppins-Thin,sans-serif;font-size:3rem}.font-light-12{font-family:Poppins-Light,sans-serif;font-size:3rem}.font-regular-12{font-family:Poppins-Regular,sans-serif;font-size:3rem}.font-medium-12{font-family:Poppins-Medium,sans-serif;font-size:3rem}.font-semibold-12{font-family:Poppins-Semibold,sans-serif;font-size:3rem}.font-bold-12{font-family:Poppins-Bold,sans-serif;font-size:3rem}.bmb_timestream{display:flex;container-type:inline-size;height:100%;background-color:var(--containers-background-fade);font-family:Poppins-Regular,sans-serif;font-size:.75rem;position:relative}.bmb_timestream-aside{display:none;background-color:var(--containers-main)}@container (min-width: 560px){.bmb_timestream-aside{width:50%;max-width:250px;display:block}}.bmb_timestream-main{width:100%}@container (min-width: 560px){.bmb_timestream-main{flex:1}}.bmb_timestream-error{flex:1}.bmb_timestream-dialog{display:flex;gap:var(--bmb-spacing-m);flex-direction:column;font-family:Poppins-Regular,sans-serif;font-size:.75rem}.bmb_timestream-dialog-hero{margin:0;line-height:0;overflow:hidden;border-radius:var(--bmb-radius-l)}.bmb_timestream-dialog-hero-image{width:100%;max-height:14.375rem;object-fit:cover}.bmb_timestream-dialog-user{display:flex;gap:var(--bmb-spacing-s);align-items:center}.bmb_timestream-dialog-user-name{color:var(--general_contrasts-75)}.bmb_timestream-dialog-user-date{color:RGBA(var(--color-charade-500))}.bmb_timestream-dialog-tab{padding:var(--bmb-spacing-m);color:var(--general_contrasts-75)}.bmb_timestream-dialog-tab-title{color:var(--general_contrasts-75);font-family:Poppins-Regular,sans-serif;font-size:.75rem;font-weight:400}.bmb_timestream-dialog-tab-hito-list{display:flex;gap:var(--bmb-spacing-s);flex-flow:column;padding:var(--bmb-spacing-m)}.bmb_timestream-dialog-tab-duration{text-align:right;margin:var(--bmb-spacing-s) 0}.bmb_timestream-dialog .bmb_tabs-item{width:calc(50% - 2rem)}.bmb_timestream-dialog-button-container{padding:var(--bmb-spacing-m)}.bmb_timestream-dialog-button-container button{width:100%}.bmb_timestream-dialog-dual{margin:0 0 var(--bmb-spacing-m);display:flex;flex-wrap:wrap;gap:var(--bmb-spacing-m)}.bmb_timestream-dialog-dual-title,.bmb_timestream-dialog-dual-data{width:calc(50% - var(--bmb-spacing-s))}.bmb_timestream-dialog-dual-data{text-align:right;margin:0}.bmb_timestream-micro{background-color:transparent;height:auto}.bmb_timestream-micro .bmb_hito-card-active:after{background-color:var(--general_contrasts-50)}\n"], dependencies: [{ kind: "component", type: BmbTimestreamErrorComponent, selector: "bmb-timestream-error" }, { kind: "component", type: BmbHitoListComponent, selector: "bmb-hito-list", inputs: ["dateFormat", "lang", "now", "events", "selectedDate", "orderedMonths"], outputs: ["changeSelectedDate"] }, { kind: "component", type: BmbTimestreamDetailsComponent, selector: "bmb-timestream-detail", inputs: ["lang", "now", "selectedDate", "orderedEvents", "isMicro"], outputs: ["changeSelectedEvent"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: BmbUserImageComponent, selector: "bmb-user-image", inputs: ["size", "image", "altImage", "link", "target", "bordered"], outputs: ["buttonPress", "buttonClick", "buttonKeyPress"] }, { kind: "component", type: BmbTabsComponent, selector: "bmb-tabs", inputs: ["appearanceContrast", "format", "tabs", "selectedTabId"], outputs: ["selectedTabIdChange", "selected"] }, { kind: "directive", type: BmbButtonDirective, selector: "[bmbButton]", inputs: ["icon", "iconSize", "position", "case", "appearance", "size", "isToggleActive", "enableButtonToggle", "isRounded", "isMobile", "iconAlt"] }, { kind: "component", type: BmbDividerComponent, selector: "bmb-divider", inputs: ["type"] }, { kind: "component", type: BmbHitoCardComponent, selector: "bmb-hito-card", inputs: ["icon", "title", "id", "short_description", "type", "sub_content", "enable_bullet", "is_active", "isCompact", "alternative_appearance"], outputs: ["handleClick"] }, { kind: "component", type: BmbBadgeComponent, selector: "bmb-badge", inputs: ["appearance", "text", "container"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
219
217
  }
220
218
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BmbTimestreamComponent, decorators: [{
@@ -231,8 +229,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
231
229
  BmbHitoCardComponent,
232
230
  BmbBadgeComponent,
233
231
  ], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<section\n class=\"bmb_timestream\"\n [ngClass]=\"{ 'bmb_timestream-micro': isMicro() }\"\n>\n @if (error) {\n <div class=\"bmb_timestream-error\">\n <bmb-timestream-error />\n </div>\n } @else {\n @if (!isMicro()) {\n <aside class=\"bmb_timestream-aside\">\n <bmb-hito-list\n [dateFormat]=\"dateFormat()\"\n [lang]=\"lang()\"\n [now]=\"now\"\n [events]=\"parsedEvents\"\n [selectedDate]=\"selectedDate\"\n [orderedMonths]=\"orderedMonths\"\n (changeSelectedDate)=\"handleSelectedDateChange($event)\"\n />\n </aside>\n }\n <section class=\"bmb_timestream-main\">\n <bmb-timestream-detail\n [lang]=\"lang()\"\n [now]=\"now\"\n [selectedDate]=\"selectedDate\"\n (changeSelectedEvent)=\"handleSelectedEventChange($event)\"\n [orderedEvents]=\"orderedEvents()\"\n [isMicro]=\"isMicro()\"\n />\n </section>\n }\n</section>\n\n<ng-template #modalTemplate>\n @if (selectedEvent) {\n <section class=\"bmb_timestream-dialog\">\n <figure class=\"bmb_timestream-dialog-hero\">\n <img\n [src]=\"selectedEvent.image\"\n [alt]=\"selectedEvent.title\"\n class=\"bmb_timestream-dialog-hero-image\"\n />\n </figure>\n <div class=\"bmb_timestream-dialog-user\">\n <bmb-user-image\n size=\"mobile-small\"\n [image]=\"selectedEvent.picture_profile || ''\"\n [altImage]=\"selectedEvent.user_first_name || ''\"\n [bordered]=\"false\"\n />\n <span class=\"bmb_timestream-dialog-user-name\"\n >{{ selectedEvent.user_first_name }}\n {{ selectedEvent.user_last_name }}</span\n >\n <span class=\"bmb_timestream-dialog-user-date\">{{\n selectedEvent.startEvent?.toFormat('dd/MM/yyyy')\n }}</span>\n </div>\n <bmb-tabs\n [tabs]=\"eventTabs\"\n (selected)=\"handleTabSelected($event)\"\n style=\"flex: 1\"\n >\n @switch (tabSelected) {\n @case (1) {\n <div class=\"bmb_timestream-dialog-tab\">\n <dl class=\"bmb_timestream-dialog-dual\">\n <dt class=\"bmb_timestream-dialog-dual-title\">Estado:</dt>\n <dd class=\"bmb_timestream-dialog-dual-data\">\n <bmb-badge\n [appearance]=\"appearanceBadge(selectedEvent.type)\"\n [text]=\"getBadgeText(selectedEvent.type)\"\n [container]=\"false\"\n />\n </dd>\n <dt class=\"bmb_timestream-dialog-dual-title\">\n Duraci\u00F3n total:\n </dt>\n <dd class=\"bmb_timestream-dialog-dual-data\">\n {{ getDiffString(selectedEvent.diff) }}\n </dd>\n </dl>\n <p>{{ selectedEvent.description }}</p>\n </div>\n }\n @case (2) {\n <div class=\"bmb_timestream-dialog-tab\">\n <h3 class=\"bmb_timestream-dialog-tab-title\">Instancias</h3>\n <bmb-divider type=\"simple\" />\n <section class=\"bmb_timestream-dialog-tab-hito-list\">\n @for (date of getInstances(selectedEvent); track $index) {\n <bmb-hito-card\n [icon]=\"selectedEvent.icon || 'app_badging'\"\n [title]=\"selectedEvent.title\"\n [type]=\"selectedEvent.type\"\n [id]=\"$index\"\n [enable_bullet]=\"false\"\n [alternative_appearance]=\"true\"\n [isCompact]=\"true\"\n />\n }\n @if (selectedEvent.diff) {\n <p class=\"bmb_timestream-dialog-tab-duration\">\n {{ getDurationString(selectedEvent) }}\n </p>\n }\n @if (selectedEvent.related_to) {\n <h3 class=\"bmb_timestream-dialog-container-tab-title\">\n Relacionado a\n </h3>\n @for (related of selectedEvent.related_to; track $index) {\n <bmb-hito-card\n [icon]=\"selectedEvent.icon || 'app_badging'\"\n [title]=\"related\"\n [type]=\"selectedEvent.type\"\n [id]=\"related\"\n [enable_bullet]=\"false\"\n [alternative_appearance]=\"true\"\n [isCompact]=\"true\"\n />\n }\n }\n </section>\n </div>\n }\n }\n </bmb-tabs>\n <section class=\"bmb_timestream-dialog-button-container\">\n <button bmbButton appearance=\"primary\" icon=\"fit_screen\">\n Ir a decisi\u00F3n\n </button>\n </section>\n </section>\n }\n</ng-template>\n", styles: ["@font-face{font-family:Poppins-Light;font-style:normal;font-weight:300;src:url(/assets/fonts/Poppins/Poppins-ExtraLight.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Regular;font-style:normal;font-weight:400;src:url(/assets/fonts/Poppins/Poppins-Regular.ttf) format(\"truetype\")}@font-face{font-family:Poppins-Bold;font-style:normal;font-weight:700;src:url(/assets/fonts/Poppins/Poppins-Bold.ttf) format(\"truetype\")}:root,:host{--font-display: \"Poppins-Regular\", sans-serif}.font-thin-1{font-family:Poppins-Thin,sans-serif;font-size:.625rem}.font-light-1{font-family:Poppins-Light,sans-serif;font-size:.625rem}.font-regular-1{font-family:Poppins-Regular,sans-serif;font-size:.625rem}.font-medium-1{font-family:Poppins-Medium,sans-serif;font-size:.625rem}.font-semibold-1{font-family:Poppins-Semibold,sans-serif;font-size:.625rem}.font-bold-1{font-family:Poppins-Bold,sans-serif;font-size:.625rem}.font-thin-2{font-family:Poppins-Thin,sans-serif;font-size:.6875rem}.font-light-2{font-family:Poppins-Light,sans-serif;font-size:.6875rem}.font-regular-2{font-family:Poppins-Regular,sans-serif;font-size:.6875rem}.font-medium-2{font-family:Poppins-Medium,sans-serif;font-size:.6875rem}.font-semibold-2{font-family:Poppins-Semibold,sans-serif;font-size:.6875rem}.font-bold-2{font-family:Poppins-Bold,sans-serif;font-size:.6875rem}.font-thin-3{font-family:Poppins-Thin,sans-serif;font-size:.75rem}.font-light-3{font-family:Poppins-Light,sans-serif;font-size:.75rem}.font-regular-3{font-family:Poppins-Regular,sans-serif;font-size:.75rem}.font-medium-3{font-family:Poppins-Medium,sans-serif;font-size:.75rem}.font-semibold-3{font-family:Poppins-Semibold,sans-serif;font-size:.75rem}.font-bold-3{font-family:Poppins-Bold,sans-serif;font-size:.75rem}.font-thin-4{font-family:Poppins-Thin,sans-serif;font-size:.875rem}.font-light-4{font-family:Poppins-Light,sans-serif;font-size:.875rem}.font-regular-4{font-family:Poppins-Regular,sans-serif;font-size:.875rem}.font-medium-4{font-family:Poppins-Medium,sans-serif;font-size:.875rem}.font-semibold-4{font-family:Poppins-Semibold,sans-serif;font-size:.875rem}.font-bold-4{font-family:Poppins-Bold,sans-serif;font-size:.875rem}.font-thin-4_5{font-family:Poppins-Thin,sans-serif;font-size:.9375rem}.font-light-4_5{font-family:Poppins-Light,sans-serif;font-size:.9375rem}.font-regular-4_5{font-family:Poppins-Regular,sans-serif;font-size:.9375rem}.font-medium-4_5{font-family:Poppins-Medium,sans-serif;font-size:.9375rem}.font-semibold-4_5{font-family:Poppins-Semibold,sans-serif;font-size:.9375rem}.font-bold-4_5{font-family:Poppins-Bold,sans-serif;font-size:.9375rem}.font-thin-5{font-family:Poppins-Thin,sans-serif;font-size:1rem}.font-light-5{font-family:Poppins-Light,sans-serif;font-size:1rem}.font-regular-5{font-family:Poppins-Regular,sans-serif;font-size:1rem}.font-medium-5{font-family:Poppins-Medium,sans-serif;font-size:1rem}.font-semibold-5{font-family:Poppins-Semibold,sans-serif;font-size:1rem}.font-bold-5{font-family:Poppins-Bold,sans-serif;font-size:1rem}.font-thin-6{font-family:Poppins-Thin,sans-serif;font-size:1.125rem}.font-light-6{font-family:Poppins-Light,sans-serif;font-size:1.125rem}.font-regular-6{font-family:Poppins-Regular,sans-serif;font-size:1.125rem}.font-medium-6{font-family:Poppins-Medium,sans-serif;font-size:1.125rem}.font-semibold-6{font-family:Poppins-Semibold,sans-serif;font-size:1.125rem}.font-bold-6{font-family:Poppins-Bold,sans-serif;font-size:1.125rem}.font-thin-7{font-family:Poppins-Thin,sans-serif;font-size:1.25rem}.font-light-7{font-family:Poppins-Light,sans-serif;font-size:1.25rem}.font-regular-7{font-family:Poppins-Regular,sans-serif;font-size:1.25rem}.font-medium-7{font-family:Poppins-Medium,sans-serif;font-size:1.25rem}.font-semibold-7{font-family:Poppins-Semibold,sans-serif;font-size:1.25rem}.font-bold-7{font-family:Poppins-Bold,sans-serif;font-size:1.25rem}.font-thin-8{font-family:Poppins-Thin,sans-serif;font-size:1.375rem}.font-light-8{font-family:Poppins-Light,sans-serif;font-size:1.375rem}.font-regular-8{font-family:Poppins-Regular,sans-serif;font-size:1.375rem}.font-medium-8{font-family:Poppins-Medium,sans-serif;font-size:1.375rem}.font-semibold-8{font-family:Poppins-Semibold,sans-serif;font-size:1.375rem}.font-bold-8{font-family:Poppins-Bold,sans-serif;font-size:1.375rem}.font-thin-9{font-family:Poppins-Thin,sans-serif;font-size:1.5rem}.font-light-9{font-family:Poppins-Light,sans-serif;font-size:1.5rem}.font-regular-9{font-family:Poppins-Regular,sans-serif;font-size:1.5rem}.font-medium-9{font-family:Poppins-Medium,sans-serif;font-size:1.5rem}.font-semibold-9{font-family:Poppins-Semibold,sans-serif;font-size:1.5rem}.font-bold-9{font-family:Poppins-Bold,sans-serif;font-size:1.5rem}.font-thin-10{font-family:Poppins-Thin,sans-serif;font-size:1.625rem}.font-light-10{font-family:Poppins-Light,sans-serif;font-size:1.625rem}.font-regular-10{font-family:Poppins-Regular,sans-serif;font-size:1.625rem}.font-medium-10{font-family:Poppins-Medium,sans-serif;font-size:1.625rem}.font-semibold-10{font-family:Poppins-Semibold,sans-serif;font-size:1.625rem}.font-bold-10{font-family:Poppins-Bold,sans-serif;font-size:1.625rem}.font-thin-11{font-family:Poppins-Thin,sans-serif;font-size:2.25rem}.font-light-11{font-family:Poppins-Light,sans-serif;font-size:2.25rem}.font-regular-11{font-family:Poppins-Regular,sans-serif;font-size:2.25rem}.font-medium-11{font-family:Poppins-Medium,sans-serif;font-size:2.25rem}.font-semibold-11{font-family:Poppins-Semibold,sans-serif;font-size:2.25rem}.font-bold-11{font-family:Poppins-Bold,sans-serif;font-size:2.25rem}.font-thin-12{font-family:Poppins-Thin,sans-serif;font-size:3rem}.font-light-12{font-family:Poppins-Light,sans-serif;font-size:3rem}.font-regular-12{font-family:Poppins-Regular,sans-serif;font-size:3rem}.font-medium-12{font-family:Poppins-Medium,sans-serif;font-size:3rem}.font-semibold-12{font-family:Poppins-Semibold,sans-serif;font-size:3rem}.font-bold-12{font-family:Poppins-Bold,sans-serif;font-size:3rem}.bmb_timestream{display:flex;container-type:inline-size;height:100%;background-color:var(--containers-background-fade);font-family:Poppins-Regular,sans-serif;font-size:.75rem;position:relative}.bmb_timestream-aside{display:none;background-color:var(--containers-main)}@container (min-width: 560px){.bmb_timestream-aside{width:50%;max-width:250px;display:block}}.bmb_timestream-main{width:100%}@container (min-width: 560px){.bmb_timestream-main{flex:1}}.bmb_timestream-error{flex:1}.bmb_timestream-dialog{display:flex;gap:var(--bmb-spacing-m);flex-direction:column;font-family:Poppins-Regular,sans-serif;font-size:.75rem}.bmb_timestream-dialog-hero{margin:0;line-height:0;overflow:hidden;border-radius:var(--bmb-radius-l)}.bmb_timestream-dialog-hero-image{width:100%;max-height:14.375rem;object-fit:cover}.bmb_timestream-dialog-user{display:flex;gap:var(--bmb-spacing-s);align-items:center}.bmb_timestream-dialog-user-name{color:var(--general_contrasts-75)}.bmb_timestream-dialog-user-date{color:RGBA(var(--color-charade-500))}.bmb_timestream-dialog-tab{padding:var(--bmb-spacing-m);color:var(--general_contrasts-75)}.bmb_timestream-dialog-tab-title{color:var(--general_contrasts-75);font-family:Poppins-Regular,sans-serif;font-size:.75rem;font-weight:400}.bmb_timestream-dialog-tab-hito-list{display:flex;gap:var(--bmb-spacing-s);flex-flow:column;padding:var(--bmb-spacing-m)}.bmb_timestream-dialog-tab-duration{text-align:right;margin:var(--bmb-spacing-s) 0}.bmb_timestream-dialog .bmb_tabs-item{width:calc(50% - 2rem)}.bmb_timestream-dialog-button-container{padding:var(--bmb-spacing-m)}.bmb_timestream-dialog-button-container button{width:100%}.bmb_timestream-dialog-dual{margin:0 0 var(--bmb-spacing-m);display:flex;flex-wrap:wrap;gap:var(--bmb-spacing-m)}.bmb_timestream-dialog-dual-title,.bmb_timestream-dialog-dual-data{width:calc(50% - var(--bmb-spacing-s))}.bmb_timestream-dialog-dual-data{text-align:right;margin:0}.bmb_timestream-micro{background-color:transparent;height:auto}.bmb_timestream-micro .bmb_hito-card-active:after{background-color:var(--general_contrasts-50)}\n"] }]
234
- }], ctorParameters: () => [{ type: i1.MatDialog }], propDecorators: { modalTemplate: [{
232
+ }], ctorParameters: () => [{ type: i1.BmbNativeModalService }], propDecorators: { modalTemplate: [{
235
233
  type: ViewChild,
236
234
  args: ['modalTemplate', { read: TemplateRef }]
237
235
  }] } });
238
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm1iLXRpbWVzdHJlYW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZHMtbmcvc3JjL2xpYi9jb21wb25lbnRzL2JtYi10aW1lc3RyZWFtL2JtYi10aW1lc3RyZWFtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RzLW5nL3NyYy9saWIvY29tcG9uZW50cy9ibWItdGltZXN0cmVhbS9ibWItdGltZXN0cmVhbS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxLQUFLLEVBQ0wsTUFBTSxFQUVOLFdBQVcsRUFDWCxTQUFTLEVBQ1QsaUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLE1BQU0sT0FBTyxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHVEQUF1RCxDQUFDO0FBQ3BHLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLHlEQUF5RCxDQUFDO0FBT3hHLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUVyRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUNuRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNsRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUNsRixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUMzRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQ0FBMEMsQ0FB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TUFBTTs4RUFVL0MsYUFBYTtzQkFEWixTQUFTO3VCQUFDLGVBQWUsRUFBRSxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBpbnB1dCxcbiAgc2lnbmFsLFxuICBTaW1wbGVDaGFuZ2VzLFxuICBUZW1wbGF0ZVJlZixcbiAgVmlld0NoaWxkLFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEYXRlVGltZSwgSW5mbyB9IGZyb20gJ2x1eG9uJztcbmltcG9ydCB7IEJtYlRpbWVzdHJlYW1FcnJvckNvbXBvbmVudCB9IGZyb20gJy4vYm1iLXRpbWVzdHJlYW0tZXJyb3IvYm1iLXRpbWVzdHJlYW0tZXJyb3IuY29tcG9uZW50JztcbmltcG9ydCB7IEJtYkhpdG9MaXN0Q29tcG9uZW50IH0gZnJvbSAnLi4vYm1iLWhpdG8tbGlzdC9ibWItaGl0by1saXN0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCbWJUaW1lc3RyZWFtRGV0YWlsc0NvbXBvbmVudCB9IGZyb20gJy4vYm1iLXRpbWVzdHJlYW0tZGV0YWlsL2JtYi10aW1lc3RyZWFtLWRldGFpbC5jb21wb25lbnQnO1xuaW1wb3J0IHtcbiAgSVRpbWVsaW5lRXZlbnQsXG4gIElTZWxlY3RlZERhdGUsXG4gIElUaW1lbGluZUV2ZW50UGFyc2VkLFxuICBJQm1iVGltZWxpbmVDdXN0b21FdmVudCxcbn0gZnJvbSAnLi90eXBlcyc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTW9kYWxEYXRhQ29uZmlnIH0gZnJvbSAnLi4vYm1iLW1vZGFsL2JtYi1tb2RhbC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgQm1iTW9kYWxDb21wb25lbnQgfSBmcm9tICcuLi9ibWItbW9kYWwvYm1iLW1vZGFsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNYXREaWFsb2cgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuaW1wb3J0IHsgQm1iVXNlckltYWdlQ29tcG9uZW50IH0gZnJvbSAnLi4vYm1iLXVzZXItaW1hZ2UvYm1iLXVzZXItaW1hZ2UuY29tcG9uZW50JztcbmltcG9ydCB7IEJtYlRhYnNDb21wb25lbnQgfSBmcm9tICcuLi9ibWItdGFicy9ibWItdGFicy5jb21wb25lbnQnO1xuaW1wb3J0IHsgQm1iQnV0dG9uRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcy9ibWItYnV0dG9uL2J1dHRvbi5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQm1iRGl2aWRlckNvbXBvbmVudCB9IGZyb20gJy4uL2JtYi1kaXZpZGVyL2JtYi1kaXZpZGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCbWJIaXRvQ2FyZENvbXBvbmVudCB9IGZyb20gJy4uL2JtYi1oaXRvLWNhcmQvYm1iLWhpdG8tY2FyZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQm1iQmFkZ2VDb21wb25lbnQgfSBmcm9tICcuLi9ibWItYmFkZ2UvYm1iLWJhZGdlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJQmJtQmdBcHBlYXJhbmNlIH0gZnJvbSAnLi4vYm1iLWFkdmVydGlzZW1lbnQtY2FyZC90eXBlcyc7XG5cbmludGVyZmFjZSBJUGxhY2Vob2xkZXJPYmplY3Qge1xuICBba2V5OiBzdHJpbmddOiBhbnkgfCBhbnlbXTtcbn1cblxuaW50ZXJmYWNlIFRhYiB7XG4gIGlkOiBudW1iZXI7XG4gIHRpdGxlOiBzdHJpbmc7XG4gIGlzQWN0aXZlPzogYm9vbGVhbjtcbiAgYmFkZ2U/OiBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUJtYkNsYW1wIHtcbiAgbWluOiBudW1iZXIgfCBzdHJpbmc7XG4gIG1heDogbnVtYmVyIHwgc3RyaW5nO1xuICBzaXplOiBudW1iZXIgfCBzdHJpbmc7XG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JtYi10aW1lc3RyZWFtJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIEJtYlRpbWVzdHJlYW1FcnJvckNvbXBvbmVudCxcbiAgICBCbWJIaXRvTGlzdENvbXBvbmVudCxcbiAgICBCbWJUaW1lc3RyZWFtRGV0YWlsc0NvbXBvbmVudCxcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgQm1iVXNlckltYWdlQ29tcG9uZW50LFxuICAgIEJtYlRhYnNDb21wb25lbnQsXG4gICAgQm1iQnV0dG9uRGlyZWN0aXZlLFxuICAgIEJtYkRpdmlkZXJDb21wb25lbnQsXG4gICAgQm1iSGl0b0NhcmRDb21wb25lbnQsXG4gICAgQm1iQmFkZ2VDb21wb25lbnQsXG4gIF0sXG4gIHRlbXBsYXRlVXJsOiAnLi9ibWItdGltZXN0cmVhbS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi9ibWItdGltZXN0cmVhbS5jb21wb25lbnQuc2NzcycsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBCbWJUaW1lc3RyZWFtQ29tcG9uZW50IHtcbiAgaXNNaWNybyA9IGlucHV0PGJvb2xlYW4+KGZhbHNlKTtcbiAgbGFuZyA9IGlucHV0PHN0cmluZz4oJ2VzJyk7XG4gIGRhdGVGb3JtYXQgPSBpbnB1dDxzdHJpbmc+KCdkZC9NTS95eXl5Jyk7XG4gIGV2ZW50cyA9IGlucHV0PElUaW1lbGluZUV2ZW50W10+KFtdKTtcbiAgY2xhbXAgPSBpbnB1dDxJQm1iQ2xhbXA+KHsgbWluOiAxMDAsIG1heDogJzEwMGR2aCcsIHNpemU6ICcxMDAlJyB9KTtcblxuICBAVmlld0NoaWxkKCdtb2RhbFRlbXBsYXRlJywgeyByZWFkOiBUZW1wbGF0ZVJlZiB9KVxuICBtb2RhbFRlbXBsYXRlPzogVGVtcGxhdGVSZWY8YW55PjtcblxuICAvLyBpbnRlcm5hbCBzdGF0ZVxuICBlcnJvciA9IGZhbHNlO1xuICBub3cgPSBEYXRlVGltZS5ub3coKTtcbiAgc3RhcnQ6IERhdGVUaW1lIHwgbnVsbCA9IG51bGw7XG4gIHBhcnNlZEV2ZW50cz86IGFueTtcbiAgbW9udGhzTmFtZXMgPSBJbmZvLm1vbnRocygnbG9uZycsIHsgbG9jYWxlOiB0aGlzLmxhbmcoKSB9KTtcbiAgb3JkZXJlZEV2ZW50cyA9IHNpZ25hbDxJVGltZWxpbmVFdmVudFBhcnNlZFtdPihbXSk7XG4gIHNlbGVjdGVkRGF0ZTogSVNlbGVjdGVkRGF0ZSA9IHtcbiAgICBkYXk6ICcnLFxuICAgIG1vbnRoOiAnJyxcbiAgICBkYXRlOiB0aGlzLm5vdyxcbiAgfTtcbiAgb3JkZXJlZE1vbnRoczogc3RyaW5nW10gPSBbXTtcbiAgbmV3TW9kYWwhOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICBzZWxlY3RlZEV2ZW50OiBJVGltZWxpbmVFdmVudCB8IG51bGwgPSBudWxsO1xuICBldmVudFRhYnM6IFRhYltdID0gW1xuICAgIHsgaWQ6IDEsIHRpdGxlOiAnRGVzY3JpcGNpw7NuJywgaXNBY3RpdmU6IHRydWUgfSxcbiAgICB7IGlkOiAyLCB0aXRsZTogJ0luc3RhbmNpYXMnIH0sXG4gIF07XG4gIHRhYlNlbGVjdGVkID0gMTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIG1hdERpYWxvZzogTWF0RGlhbG9nKSB7fVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICB0aGlzLnBhcnNlZEV2ZW50cyA9IHRoaXMucHJlcGFyZUV2ZW50cyhjaGFuZ2VzWydldmVudHMnXS5jdXJyZW50VmFsdWUpO1xuICAgIHRoaXMub3JkZXJlZE1vbnRocyA9IHRoaXMub3JkZXJEYXRlcyh0aGlzLnBhcnNlZEV2ZW50cywgJ3l5eXkvTU0nKTtcbiAgICB0aGlzLnNlbGVjdGVkRGF0ZSA9IHRoaXMuc2VsZWN0QVZhbGlkRGF0ZSgpO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5wYXJzZWRFdmVudHMgPSB0aGlzLnByZXBhcmVFdmVudHModGhpcy5ldmVudHMoKSk7XG4gICAgdGhpcy5vcmRlcmVkTW9udGhzID0gdGhpcy5vcmRlckRhdGVzKHRoaXMucGFyc2VkRXZlbnRzLCAneXl5eS9NTScpO1xuICAgIHRoaXMuc2VsZWN0ZWREYXRlID0gdGhpcy5zZWxlY3RBVmFsaWREYXRlKCk7XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMubW9kYWxUZW1wbGF0ZSkge1xuICAgICAgdGhpcy5uZXdNb2RhbCA9IHRoaXMubW9kYWxUZW1wbGF0ZTtcbiAgICB9XG4gIH1cblxuICBoYW5kbGVUYWJTZWxlY3RlZCh0YWI6IFRhYikge1xuICAgIHRoaXMudGFiU2VsZWN0ZWQgPSB0YWIuaWQ7XG4gIH1cblxuICBwcmVwYXJlRXZlbnRzKGV2ZW50cz86IElUaW1lbGluZUV2ZW50W10pIHtcbiAgICBpZiAoIWV2ZW50cz8ubGVuZ3RoKSB7XG4gICAgICB0aGlzLm9yZGVyZWRFdmVudHMuc2V0KFtdKTtcbiAgICAgIHJldHVybiB7fTtcbiAgICB9XG5cbiAgICBjb25zdCBvYmplY3RFdmVudDogSVBsYWNlaG9sZGVyT2JqZWN0ID0ge307XG4gICAgZXZlbnRzLmZvckVhY2goKGV2ZW50KSA9PiB7XG4gICAgICBjb25zdCBzdGFydERhdGUgPSBEYXRlVGltZS5mcm9tRm9ybWF0KGV2ZW50LnN0YXJ0LCB0aGlzLmRhdGVGb3JtYXQoKSk7XG4gICAgICBjb25zdCBlbmREYXRlID0gRGF0ZVRpbWUuZnJvbUZvcm1hdChldmVudC5lbmQsIHRoaXMuZGF0ZUZvcm1hdCgpKTtcbiAgICAgIGNvbnN0IGRpZmYgPSBlbmREYXRlLmRpZmYoc3RhcnREYXRlLCAnZGF5cycpLmRheXMgKyAxO1xuXG4gICAgICBmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwgZGlmZjsgaW5kZXgrKykge1xuICAgICAgICBjb25zdCBjdXJyZW50RGF0ZSA9IHN0YXJ0RGF0ZS5wbHVzKHsgZGF5czogaW5kZXggfSk7XG4gICAgICAgIGNvbnN0IHN0cmluZ0RhdGUgPSBjdXJyZW50RGF0ZS50b0Zvcm1hdCgneXl5eS9NTS9kZCcpO1xuICAgICAgICBjb25zdCBtb250aCA9IGN1cnJlbnREYXRlLnRvRm9ybWF0KCd5eXl5L01NJyk7XG5cbiAgICAgICAgb2JqZWN0RXZlbnRbbW9udGhdID8/PSB7XG4gICAgICAgICAgZXZlbnRzOiB7fSxcbiAgICAgICAgICBuYW1lOiB0aGlzLm1vbnRoc05hbWVzW2N1cnJlbnREYXRlLm1vbnRoIC0gMV0sXG4gICAgICAgICAgc3RyaW5nRGF0ZTogbW9udGgsXG4gICAgICAgICAgeWVhcjogY3VycmVudERhdGUueWVhcixcbiAgICAgICAgICBkYXRlOiBjdXJyZW50RGF0ZSxcbiAgICAgICAgfTtcblxuICAgICAgICBvYmplY3RFdmVudFttb250aF0uZXZlbnRzW3N0cmluZ0RhdGVdID8/PSB7XG4gICAgICAgICAgZXZlbnRzOiBbXSxcbiAgICAgICAgICBkYXRlOiBjdXJyZW50RGF0ZSxcbiAgICAgICAgICBzdHJpbmdEYXRlLFxuICAgICAgICAgIHNlbGVjdGVkOiBmYWxzZSxcbiAgICAgICAgfTtcblxuICAgICAgICBvYmplY3RFdmVudFttb250aF0uZXZlbnRzW3N0cmluZ0RhdGVdLmV2ZW50cy5wdXNoKHtcbiAgICAgICAgICAuLi5ldmVudCxcbiAgICAgICAgICBzdGFydDogc3RyaW5nRGF0ZSxcbiAgICAgICAgICBzdGFydEV2ZW50OiBjdXJyZW50RGF0ZSxcbiAgICAgICAgICBlbmRFdmVudDogZW5kRGF0ZSxcbiAgICAgICAgICBzZWxlY3RlZDogZmFsc2UsXG4gICAgICAgICAgZGlmZjogZGlmZiAtIDEsXG4gICAgICAgICAgb3JpZ2luYWxTdGFydDogc3RhcnREYXRlLFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIGNvbnN0IG9yZGVyZWRFdmVudHMgPSB0aGlzLm9yZGVyRGF0ZXMob2JqZWN0RXZlbnQsICd5eXl5L01NJyk7XG5cbiAgICBpZiAob3JkZXJlZEV2ZW50cy5sZW5ndGgpIHtcbiAgICAgIG9iamVjdEV2ZW50WydvcmRlcmVkRXZlbnRzJ10gPSBvcmRlcmVkRXZlbnRzO1xuXG4gICAgICBvYmplY3RFdmVudFsnb3JkZXJlZEV2ZW50cyddLmZvckVhY2goKGRhdGU6IHN0cmluZykgPT4ge1xuICAgICAgICBvYmplY3RFdmVudFtkYXRlXVsnb3JkZXJlZEV2ZW50cyddID0gdGhpcy5vcmRlckRhdGVzKFxuICAgICAgICAgIG9iamVjdEV2ZW50W2RhdGVdLmV2ZW50cyxcbiAgICAgICAgICAneXl5eS9NTS9kZCcsXG4gICAgICAgICk7XG4gICAgICB9KTtcblxuICAgICAgdGhpcy5vcmRlcmVkRXZlbnRzLnNldChcbiAgICAgICAgb2JqZWN0RXZlbnRbJ29yZGVyZWRFdmVudHMnXVxuICAgICAgICAgIC5tYXAoKG1vbnRoOiBzdHJpbmcpID0+IHtcbiAgICAgICAgICAgIHJldHVybiBvYmplY3RFdmVudFttb250aF1bJ29yZGVyZWRFdmVudHMnXS5tYXAoXG4gICAgICAgICAgICAgIChkYXk6IHN0cmluZykgPT4gb2JqZWN0RXZlbnRbbW9udGhdLmV2ZW50c1tkYXldLFxuICAgICAgICAgICAgKTtcbiAgICAgICAgICB9KVxuICAgICAgICAgIC5mbGF0KCksXG4gICAgICApO1xuICAgIH1cblxuICAgIHJldHVybiBvYmplY3RFdmVudDtcbiAgfVxuXG4gIG9yZGVyRGF0ZXMoZXZlbnRzOiBhbnksIGZvcm1hdDogc3RyaW5nKTogc3RyaW5nW10ge1xuICAgIGNvbnN0IG1vbnRoc0xpc3QgPSBPYmplY3Qua2V5cyhldmVudHMpO1xuICAgIGNvbnN0IG1vbnRoc09yZGVyZWQgPSBtb250aHNMaXN0LnNvcnQoKGRhdGVBOiBzdHJpbmcsIGRhdGVCOiBzdHJpbmcpID0+IHtcbiAgICAgIGNvbnN0IHBhcnNlZERhdGVBID0gRGF0ZVRpbWUuZnJvbUZvcm1hdChkYXRlQSwgZm9ybWF0KTtcbiAgICAgIGNvbnN0IHBhcnNlZERhdGVCID0gRGF0ZVRpbWUuZnJvbUZvcm1hdChkYXRlQiwgZm9ybWF0KTtcbiAgICAgIHJldHVybiBwYXJzZWREYXRlQS50b01pbGxpcygpIC0gcGFyc2VkRGF0ZUIudG9NaWxsaXMoKTtcbiAgICB9KTtcblxuICAgIHJldHVybiBtb250aHNPcmRlcmVkO1xuICB9XG5cbiAgc2VsZWN0QVZhbGlkRGF0ZSgpOiB7IG1vbnRoOiBzdHJpbmc7IGRheTogc3RyaW5nOyBkYXRlOiBEYXRlVGltZSB9IHtcbiAgICBpZiAoIXRoaXMub3JkZXJlZE1vbnRocylcbiAgICAgIHJldHVybiB7XG4gICAgICAgIG1vbnRoOiB0aGlzLm5vdy5tb250aCArICcnLFxuICAgICAgICBkYXk6IHRoaXMubm93LmRheSArICcnLFxuICAgICAgICBkYXRlOiB0aGlzLm5vdyxcbiAgICAgIH07XG5cbiAgICBjb25zdCBtb250aCA9XG4gICAgICB0aGlzLm9yZGVyZWRNb250aHMuZmluZCgoZGF0ZSkgPT4ge1xuICAgICAgICBpZiAoZGF0ZSA9PT0gJ29yZGVyZWRFdmVudHMnKSByZXR1cm4gZmFsc2U7XG4gICAgICAgIGNvbnN0IHBhcnNlZERhdGUgPSB0aGlzLnBhcnNlZEV2ZW50c1tkYXRlXS5kYXRlO1xuXG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgdGhpcy5ub3cueWVhciA8PSBwYXJzZWREYXRlLnllYXIgJiYgdGhpcy5ub3cubW9udGggPD0gcGFyc2VkRGF0ZS5tb250aFxuICAgICAgICApO1xuICAgICAgfSkgfHxcbiAgICAgIHRoaXMub3JkZXJlZE1vbnRocy5hdCgtMSkgfHxcbiAgICAgICcnO1xuICAgIGNvbnN0IG9yZGVyZWRFdmVudHMgPSB0aGlzLnBhcnNlZEV2ZW50cz8uW21vbnRoXT8ub3JkZXJlZEV2ZW50cztcblxuICAgIGNvbnN0IGRheSA9XG4gICAgICBvcmRlcmVkRXZlbnRzPy5maW5kKChkYXRlOiBzdHJpbmcpID0+IHtcbiAgICAgICAgY29uc3QgcGFyc2VkRGF0ZSA9IHRoaXMucGFyc2VkRXZlbnRzW21vbnRoXS5ldmVudHNbZGF0ZV0uZGF0ZTtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICB0aGlzLm5vdy55ZWFyIDw9IHBhcnNlZERhdGUueWVhciAmJlxuICAgICAgICAgIHRoaXMubm93Lm1vbnRoIDw9IHBhcnNlZERhdGUubW9udGggJiZcbiAgICAgICAgICB0aGlzLm5vdy5kYXkgPD0gcGFyc2VkRGF0ZS5kYXlcbiAgICAgICAgKTtcbiAgICAgIH0pIHx8XG4gICAgICBvcmRlcmVkRXZlbnRzPy5hdCgtMSkgfHxcbiAgICAgICcnO1xuXG4gICAgaWYgKHRoaXMucGFyc2VkRXZlbnRzW21vbnRoXSAmJiBtb250aCAhPT0gJ29yZGVyZWRFdmVudHMnKSB7XG4gICAgICB0aGlzLnBhcnNlZEV2ZW50c1ttb250aF0uc2VsZWN0ZWQgPSB0cnVlO1xuICAgICAgdGhpcy5wYXJzZWRFdmVudHNbbW9udGhdLmV2ZW50c1tkYXldLnNlbGVjdGVkID0gdHJ1ZTtcbiAgICB9XG4gICAgcmV0dXJuIHtcbiAgICAgIG1vbnRoLFxuICAgICAgZGF5LFxuICAgICAgZGF0ZTogdGhpcy5wYXJzZWRFdmVudHM/Llttb250aF0/LmV2ZW50cz8uW2RheV0/LmRhdGUsXG4gICAgfTtcbiAgfVxuXG4gIGhhbmRsZVNlbGVjdGVkRGF0ZUNoYW5nZSh7IG1vbnRoLCBkYXkgfTogeyBtb250aDogc3RyaW5nOyBkYXk6IHN0cmluZyB9KSB7XG4gICAgdGhpcy5wYXJzZWRFdmVudHNbdGhpcy5zZWxlY3RlZERhdGUubW9udGhdLnNlbGVjdGVkID0gZmFsc2U7XG4gICAgdGhpcy5wYXJzZWRFdmVudHNbdGhpcy5zZWxlY3RlZERhdGUubW9udGhdLmV2ZW50c1tcbiAgICAgIHRoaXMuc2VsZWN0ZWREYXRlLmRheVxuICAgIF0uc2VsZWN0ZWQgPSBmYWxzZTtcblxuICAgIHRoaXMucGFyc2VkRXZlbnRzW21vbnRoXS5zZWxlY3RlZCA9IHRydWU7XG4gICAgdGhpcy5wYXJzZWRFdmVudHNbbW9udGhdLmV2ZW50c1tkYXldLnNlbGVjdGVkID0gdHJ1ZTtcblxuICAgIHRoaXMuc2VsZWN0ZWREYXRlID0ge1xuICAgICAgbW9udGgsXG4gICAgICBkYXksXG4gICAgICBkYXRlOiB0aGlzLnBhcnNlZEV2ZW50c1ttb250aF0uZXZlbnRzW2RheV0uZGF0ZSxcbiAgICB9O1xuICB9XG5cbiAgaGFuZGxlU2VsZWN0ZWRFdmVudENoYW5nZShldmVudDogSVRpbWVsaW5lRXZlbnQpIHtcbiAgICB0aGlzLnNlbGVjdGVkRXZlbnQgPSBldmVudDtcblxuICAgIGNvbnN0IGRhdGE6IE1vZGFsRGF0YUNvbmZpZyA9IHtcbiAgICAgIHRpdGxlOiBldmVudC50aXRsZSxcbiAgICAgIGNvbnRlbnQ6IHRoaXMubmV3TW9kYWwsXG4gICAgICBzaXplOiAnbGFyZ2UnLFxuICAgICAgaGlkZVByaW1hcnlCdXR0b246IHRydWUsXG4gICAgfTtcblxuICAgIHRoaXMubWF0RGlhbG9nLm9wZW4oQm1iTW9kYWxDb21wb25lbnQsIHsgZGF0YSB9KTtcbiAgfVxuXG4gIGdldE1vbnRoVGl0bGUoZGF0ZTogRGF0ZVRpbWUpIHtcbiAgICByZXR1cm4gZGF0ZS5zZXRMb2NhbGUodGhpcy5sYW5nKCkpLnRvRm9ybWF0KCdjY2NjIGRkIExMTEwgeXl5eScpO1xuICB9XG5cbiAgZ2V0SW5zdGFuY2VzKGV2ZW50OiBhbnkpOiBzdHJpbmdbXSB7XG4gICAgY29uc3QgaW5zdGFuY2VzID0gW107XG4gICAgZm9yIChsZXQgaW5kZXggPSAwOyBpbmRleCA8IChldmVudC5kaWZmIHx8IDApICsgMTsgaW5kZXgrKykge1xuICAgICAgY29uc3QgZGF0ZSA9IGV2ZW50Lm9yaWdpbmFsU3RhcnQucGx1cyh7IGRheXM6IGluZGV4IH0pO1xuICAgICAgaW5zdGFuY2VzLnB1c2godGhpcy5nZXRNb250aFRpdGxlKGRhdGUpKTtcbiAgICB9XG4gICAgcmV0dXJuIGluc3RhbmNlcztcbiAgfVxuXG4gIGdldER1cmF0aW9uU3RyaW5nKGV2ZW50OiBJVGltZWxpbmVFdmVudCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGBEdXJhY2nDs246ICR7ZXZlbnQub3JpZ2luYWxTdGFydD8uZGF5fSAtICR7ZXZlbnQuZW5kRXZlbnQ/LnNldExvY2FsZSh0aGlzLmxhbmcoKSkudG9Gb3JtYXQoJ2RkIExMTEwgeXl5eScpfSAoJHsoZXZlbnQuZGlmZiB8fCAwKSArIDF9IETDrWFzKWA7XG4gIH1cblxuICBnZXREaWZmU3RyaW5nKGRpZmY6IG51bWJlciA9IDApOiBzdHJpbmcge1xuICAgIHJldHVybiBkaWZmICsgMSA+IDEgPyBgJHtkaWZmICsgMX0gRMOtYXNgIDogYCR7ZGlmZiArIDF9IETDrWFgO1xuICB9XG5cbiAgYXBwZWFyYW5jZUJhZGdlKFxuICAgIGV2ZW50VHlwZTogc3RyaW5nIHwgSUJtYlRpbWVsaW5lQ3VzdG9tRXZlbnQsXG4gICk6IElCYm1CZ0FwcGVhcmFuY2Uge1xuICAgIGlmICh0eXBlb2YgZXZlbnRUeXBlID09PSAnc3RyaW5nJykge1xuICAgICAgc3dpdGNoIChldmVudFR5cGUpIHtcbiAgICAgICAgY2FzZSAnYWN0aXZlJzpcbiAgICAgICAgICByZXR1cm4gJ21pdGVjX2JsdWUnO1xuICAgICAgICBjYXNlICdkb25lJzpcbiAgICAgICAgICByZXR1cm4gJ3N1Y2Nlc3MnO1xuICAgICAgICBjYXNlICdwZW5kaW5nJzpcbiAgICAgICAgICByZXR1cm4gJ25vcm1hbCc7XG4gICAgICAgIGNhc2UgJ3VuZGVyX3Jldmlldyc6XG4gICAgICAgICAgcmV0dXJuICd3YXJuaW5nJztcbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICByZXR1cm4gJ21pdGVjX2JsdWUnO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gZXZlbnRUeXBlLnR5cGUgfHwgJ25vcm1hbCc7XG4gIH1cblxuICBnZXRCYWRnZVRleHQoZXZlbnRUeXBlOiBzdHJpbmcgfCBJQm1iVGltZWxpbmVDdXN0b21FdmVudCk6IHN0cmluZyB7XG4gICAgaWYgKHR5cGVvZiBldmVudFR5cGUgPT09ICdzdHJpbmcnKSByZXR1cm4gZXZlbnRUeXBlO1xuICAgIHJldHVybiBldmVudFR5cGUudGV4dCB8fCAnJztcbiAgfVxufVxuIiwiPHNlY3Rpb25cbiAgY2xhc3M9XCJibWJfdGltZXN0cmVhbVwiXG4gIFtuZ0NsYXNzXT1cInsgJ2JtYl90aW1lc3RyZWFtLW1pY3JvJzogaXNNaWNybygpIH1cIlxuPlxuICBAaWYgKGVycm9yKSB7XG4gICAgPGRpdiBjbGFzcz1cImJtYl90aW1lc3RyZWFtLWVycm9yXCI+XG4gICAgICA8Ym1iLXRpbWVzdHJlYW0tZXJyb3IgLz5cbiAgICA8L2Rpdj5cbiAgfSBAZWxzZSB7XG4gICAgQGlmICghaXNNaWNybygpKSB7XG4gICAgICA8YXNpZGUgY2xhc3M9XCJibWJfdGltZXN0cmVhbS1hc2lkZVwiPlxuICAgICAgICA8Ym1iLWhpdG8tbGlzdFxuICAgICAgICAgIFtkYXRlRm9ybWF0XT1cImRhdGVGb3JtYXQoKVwiXG4gICAgICAgICAgW2xhbmddPVwibGFuZygpXCJcbiAgICAgICAgICBbbm93XT1cIm5vd1wiXG4gICAgICAgICAgW2V2ZW50c109XCJwYXJzZWRFdmVudHNcIlxuICAgICAgICAgIFtzZWxlY3RlZERhdGVdPVwic2VsZWN0ZWREYXRlXCJcbiAgICAgICAgICBbb3JkZXJlZE1vbnRoc109XCJvcmRlcmVkTW9udGhzXCJcbiAgICAgICAgICAoY2hhbmdlU2VsZWN0ZWREYXRlKT1cImhhbmRsZVNlbGVjdGVkRGF0ZUNoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgLz5cbiAgICAgIDwvYXNpZGU+XG4gICAgfVxuICAgIDxzZWN0aW9uIGNsYXNzPVwiYm1iX3RpbWVzdHJlYW0tbWFpblwiPlxuICAgICAgPGJtYi10aW1lc3RyZWFtLWRldGFpbFxuICAgICAgICBbbGFuZ109XCJsYW5nKClcIlxuICAgICAgICBbbm93XT1cIm5vd1wiXG4gICAgICAgIFtzZWxlY3RlZERhdGVdPVwic2VsZWN0ZWREYXRlXCJcbiAgICAgICAgKGNoYW5nZVNlbGVjdGVkRXZlbnQpPVwiaGFuZGxlU2VsZWN0ZWRFdmVudENoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgW29yZGVyZWRFdmVudHNdPVwib3JkZXJlZEV2ZW50cygpXCJcbiAgICAgICAgW2lzTWljcm9dPVwiaXNNaWNybygpXCJcbiAgICAgIC8+XG4gICAgPC9zZWN0aW9uPlxuICB9XG48L3NlY3Rpb24+XG5cbjxuZy10ZW1wbGF0ZSAjbW9kYWxUZW1wbGF0ZT5cbiAgQGlmIChzZWxlY3RlZEV2ZW50KSB7XG4gICAgPHNlY3Rpb24gY2xhc3M9XCJibWJfdGltZXN0cmVhbS1kaWFsb2dcIj5cbiAgICAgIDxmaWd1cmUgY2xhc3M9XCJibWJfdGltZXN0cmVhbS1kaWFsb2ctaGVyb1wiPlxuICAgICAgICA8aW1nXG4gICAgICAgICAgW3NyY109XCJzZWxlY3RlZEV2ZW50LmltYWdlXCJcbiAgICAgICAgICBbYWx0XT1cInNlbGVjdGVkRXZlbnQudGl0bGVcIlxuICAgICAgICAgIGNsYXNzPVwiYm1iX3RpbWVzdHJlYW0tZGlhbG9nLWhlcm8taW1hZ2VcIlxuICAgICAgICAvPlxuICAgICAgPC9maWd1cmU+XG4gICAgICA8ZGl2IGNsYXNzPVwiYm1iX3RpbWVzdHJlYW0tZGlhbG9nLXVzZXJcIj5cbiAgICAgICAgPGJtYi11c2VyLWltYWdlXG4gICAgICAgICAgc2l6ZT1cIm1vYmlsZS1zbWFsbFwiXG4gICAgICAgICAgW2ltYWdlXT1cInNlbGVjdGVkRXZlbnQucGljdHVyZV9wcm9maWxlIHx8ICcnXCJcbiAgICAgICAgICBbYWx0SW1hZ2VdPVwic2VsZWN0ZWRFdmVudC51c2VyX2ZpcnN0X25hbWUgfHwgJydcIlxuICAgICAgICAgIFtib3JkZXJlZF09XCJmYWxzZVwiXG4gICAgICAgIC8+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwiYm1iX3RpbWVzdHJlYW0tZGlhbG9nLXVzZXItbmFtZVwiXG4gICAgICAgICAgPnt7IHNlbGVjdGVkRXZlbnQudXNlcl9maXJzdF9uYW1lIH19XG4gICAgICAgICAge3sgc2VsZWN0ZWRFdmVudC51c2VyX2xhc3RfbmFtZSB9fTwvc3BhblxuICAgICAgICA+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwiYm1iX3RpbWVzdHJlYW0tZGlhbG9nLXVzZXItZGF0ZVwiPnt7XG4gICAgICAgICAgc2VsZWN0ZWRFdmVudC5zdGFydEV2ZW50Py50b0Zvcm1hdCgnZGQvTU0veXl5eScpXG4gICAgICAgIH19PC9zcGFuPlxuICAgICAgPC9kaXY+XG4gICAgICA8Ym1iLXRhYnNcbiAgICAgICAgW3RhYnNdPVwiZXZlbnRUYWJzXCJcbiAgICAgICAgKHNlbGVjdGVkKT1cImhhbmRsZVRhYlNlbGVjdGVkKCRldmVudClcIlxuICAgICAgICBzdHlsZT1cImZsZXg6IDFcIlxuICAgICAgPlxuICAgICAgICBAc3dpdGNoICh0YWJTZWxlY3RlZCkge1xuICAgICAgICAgIEBjYXNlICgxKSB7XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYm1iX3RpbWVzdHJlYW0tZGlhbG9nLXRhYlwiPlxuICAgICAgICAgICAgICA8ZGwgY2xhc3M9XCJibWJfdGltZXN0cmVhbS1kaWFsb2ctZHVhbFwiPlxuICAgICAgICAgICAgICAgIDxkdCBjbGFzcz1cImJtYl90aW1lc3RyZWFtLWRpYWxvZy1kdWFsLXRpdGxlXCI+RXN0YWRvOjwvZHQ+XG4gICAgICAgICAgICAgICAgPGRkIGNsYXNzPVwiYm1iX3RpbWVzdHJlYW0tZGlhbG9nLWR1YWwtZGF0YVwiPlxuICAgICAgICAgICAgICAgICAgPGJtYi1iYWRnZVxuICAgICAgICAgICAgICAgICAgICBbYXBwZWFyYW5jZV09XCJhcHBlYXJhbmNlQmFkZ2Uoc2VsZWN0ZWRFdmVudC50eXBlKVwiXG4gICAgICAgICAgICAgICAgICAgIFt0ZXh0XT1cImdldEJhZGdlVGV4dChzZWxlY3RlZEV2ZW50LnR5cGUpXCJcbiAgICAgICAgICAgICAgICAgICAgW2NvbnRhaW5lcl09XCJmYWxzZVwiXG4gICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgIDwvZGQ+XG4gICAgICAgICAgICAgICAgPGR0IGNsYXNzPVwiYm1iX3RpbWVzdHJlYW0tZGlhbG9nLWR1YWwtdGl0bGVcIj5cbiAgICAgICAgICAgICAgICAgIER1cmFjacOzbiB0b3RhbDpcbiAgICAgICAgICAgICAgICA8L2R0PlxuICAgICAgICAgICAgICAgIDxkZCBjbGFzcz1cImJtYl90aW1lc3RyZWFtLWRpYWxvZy1kdWFsLWRhdGFcIj5cbiAgICAgICAgICAgICAgICAgIHt7IGdldERpZmZTdHJpbmcoc2VsZWN0ZWRFdmVudC5kaWZmKSB9fVxuICAgICAgICAgICAgICAgIDwvZGQ+XG4gICAgICAgICAgICAgIDwvZGw+XG4gICAgICAgICAgICAgIDxwPnt7IHNlbGVjdGVkRXZlbnQuZGVzY3JpcHRpb24gfX08L3A+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICB9XG4gICAgICAgICAgQGNhc2UgKDIpIHtcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJibWJfdGltZXN0cmVhbS1kaWFsb2ctdGFiXCI+XG4gICAgICAgICAgICAgIDxoMyBjbGFzcz1cImJtYl90aW1lc3RyZWFtLWRpYWxvZy10YWItdGl0bGVcIj5JbnN0YW5jaWFzPC9oMz5cbiAgICAgICAgICAgICAgPGJtYi1kaXZpZGVyIHR5cGU9XCJzaW1wbGVcIiAvPlxuICAgICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz1cImJtYl90aW1lc3RyZWFtLWRpYWxvZy10YWItaGl0by1saXN0XCI+XG4gICAgICAgICAgICAgICAgQGZvciAoZGF0ZSBvZiBnZXRJbnN0YW5jZXMoc2VsZWN0ZWRFdmVudCk7IHRyYWNrICRpbmRleCkge1xuICAgICAgICAgICAgICAgICAgPGJtYi1oaXRvLWNhcmRcbiAgICAgICAgICAgICAgICAgICAgW2ljb25dPVwic2VsZWN0ZWRFdmVudC5pY29uIHx8ICdhcHBfYmFkZ2luZydcIlxuICAgICAgICAgICAgICAgICAgICBbdGl0bGVdPVwic2VsZWN0ZWRFdmVudC50aXRsZVwiXG4gICAgICAgICAgICAgICAgICAgIFt0eXBlXT1cInNlbGVjdGVkRXZlbnQudHlwZVwiXG4gICAgICAgICAgICAgICAgICAgIFtpZF09XCIkaW5kZXhcIlxuICAgICAgICAgICAgICAgICAgICBbZW5hYmxlX2J1bGxldF09XCJmYWxzZVwiXG4gICAgICAgICAgICAgICAgICAgIFthbHRlcm5hdGl2ZV9hcHBlYXJhbmNlXT1cInRydWVcIlxuICAgICAgICAgICAgICAgICAgICBbaXNDb21wYWN0XT1cInRydWVcIlxuICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQGlmIChzZWxlY3RlZEV2ZW50LmRpZmYpIHtcbiAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYm1iX3RpbWVzdHJlYW0tZGlhbG9nLXRhYi1kdXJhdGlvblwiPlxuICAgICAgICAgICAgICAgICAgICB7eyBnZXREdXJhdGlvblN0cmluZyhzZWxlY3RlZEV2ZW50KSB9fVxuICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAaWYgKHNlbGVjdGVkRXZlbnQucmVsYXRlZF90bykge1xuICAgICAgICAgICAgICAgICAgPGgzIGNsYXNzPVwiYm1iX3RpbWVzdHJlYW0tZGlhbG9nLWNvbnRhaW5lci10YWItdGl0bGVcIj5cbiAgICAgICAgICAgICAgICAgICAgUmVsYWNpb25hZG8gYVxuICAgICAgICAgICAgICAgICAgPC9oMz5cbiAgICAgICAgICAgICAgICAgIEBmb3IgKHJlbGF0ZWQgb2Ygc2VsZWN0ZWRFdmVudC5yZWxhdGVkX3RvOyB0cmFjayAkaW5kZXgpIHtcbiAgICAgICAgICAgICAgICAgICAgPGJtYi1oaXRvLWNhcmRcbiAgICAgICAgICAgICAgICAgICAgICBbaWNvbl09XCJzZWxlY3RlZEV2ZW50Lmljb24gfHwgJ2FwcF9iYWRnaW5nJ1wiXG4gICAgICAgICAgICAgICAgICAgICAgW3RpdGxlXT1cInJlbGF0ZWRcIlxuICAgICAgICAgICAgICAgICAgICAgIFt0eXBlXT1cInNlbGVjdGVkRXZlbnQudHlwZVwiXG4gICAgICAgICAgICAgICAgICAgICAgW2lkXT1cInJlbGF0ZWRcIlxuICAgICAgICAgICAgICAgICAgICAgIFtlbmFibGVfYnVsbGV0XT1cImZhbHNlXCJcbiAgICAgICAgICAgICAgICAgICAgICBbYWx0ZXJuYXRpdmVfYXBwZWFyYW5jZV09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICAgICAgICBbaXNDb21wYWN0XT1cInRydWVcIlxuICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgPC9zZWN0aW9uPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICA8L2JtYi10YWJzPlxuICAgICAgPHNlY3Rpb24gY2xhc3M9XCJibWJfdGltZXN0cmVhbS1kaWFsb2ctYnV0dG9uLWNvbnRhaW5lclwiPlxuICAgICAgICA8YnV0dG9uIGJtYkJ1dHRvbiBhcHBlYXJhbmNlPVwicHJpbWFyeVwiIGljb249XCJmaXRfc2NyZWVuXCI+XG4gICAgICAgICAgSXIgYSBkZWNpc2nDs25cbiAgICAgICAgPC9idXR0b24+XG4gICAgICA8L3NlY3Rpb24+XG4gICAgPC9zZWN0aW9uPlxuICB9XG48L25nLXRlbXBsYXRlPlxuIl19
236
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm1iLXRpbWVzdHJlYW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZHMtbmcvc3JjL2xpYi9jb21wb25lbnRzL2JtYi10aW1lc3RyZWFtL2JtYi10aW1lc3RyZWFtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RzLW5nL3NyYy9saWIvY29tcG9uZW50cy9ibWItdGltZXN0cmVhbS9ibWItdGltZXN0cmVhbS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxLQUFLLEVBQ0wsTUFBTSxFQUVOLFdBQVcsRUFDWCxTQUFTLEVBQ1QsaUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLE1BQU0sT0FBTyxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHVEQUF1RCxDQUFDO0FBQ3BHLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLHlEQUF5RCxDQUFDO0FBT3hHLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUcvQyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUNuRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNsRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUNsRixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUMzRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUNoRixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FB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ImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIGlucHV0LFxuICBzaWduYWwsXG4gIFNpbXBsZUNoYW5nZXMsXG4gIFRlbXBsYXRlUmVmLFxuICBWaWV3Q2hpbGQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERhdGVUaW1lLCBJbmZvIH0gZnJvbSAnbHV4b24nO1xuaW1wb3J0IHsgQm1iVGltZXN0cmVhbUVycm9yQ29tcG9uZW50IH0gZnJvbSAnLi9ibWItdGltZXN0cmVhbS1lcnJvci9ibWItdGltZXN0cmVhbS1lcnJvci5jb21wb25lbnQnO1xuaW1wb3J0IHsgQm1iSGl0b0xpc3RDb21wb25lbnQgfSBmcm9tICcuLi9ibWItaGl0by1saXN0L2JtYi1oaXRvLWxpc3QuY29tcG9uZW50JztcbmltcG9ydCB7IEJtYlRpbWVzdHJlYW1EZXRhaWxzQ29tcG9uZW50IH0gZnJvbSAnLi9ibWItdGltZXN0cmVhbS1kZXRhaWwvYm1iLXRpbWVzdHJlYW0tZGV0YWlsLmNvbXBvbmVudCc7XG5pbXBvcnQge1xuICBJVGltZWxpbmVFdmVudCxcbiAgSVNlbGVjdGVkRGF0ZSxcbiAgSVRpbWVsaW5lRXZlbnRQYXJzZWQsXG4gIElCbWJUaW1lbGluZUN1c3RvbUV2ZW50LFxufSBmcm9tICcuL3R5cGVzJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBCbWJOYXRpdmVNb2RhbFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9uYXRpdmUtbW9kYWwuc2VydmljZSc7XG5pbXBvcnQgeyBJQm1iTmF0aXZlTW9kYWwgfSBmcm9tICcuLi9ibWItbW9kYWwvYm1iLW1vZGFsLmludGVyZmFjZSc7XG5pbXBvcnQgeyBCbWJVc2VySW1hZ2VDb21wb25lbnQgfSBmcm9tICcuLi9ibWItdXNlci1pbWFnZS9ibWItdXNlci1pbWFnZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQm1iVGFic0NvbXBvbmVudCB9IGZyb20gJy4uL2JtYi10YWJzL2JtYi10YWJzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCbWJCdXR0b25EaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL2JtYi1idXR0b24vYnV0dG9uLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBCbWJEaXZpZGVyQ29tcG9uZW50IH0gZnJvbSAnLi4vYm1iLWRpdmlkZXIvYm1iLWRpdmlkZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEJtYkhpdG9DYXJkQ29tcG9uZW50IH0gZnJvbSAnLi4vYm1iLWhpdG8tY2FyZC9ibWItaGl0by1jYXJkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCbWJCYWRnZUNvbXBvbmVudCB9IGZyb20gJy4uL2JtYi1iYWRnZS9ibWItYmFkZ2UuY29tcG9uZW50JztcbmltcG9ydCB7IElCYm1CZ0FwcGVhcmFuY2UgfSBmcm9tICcuLi9ibWItYWR2ZXJ0aXNlbWVudC1jYXJkL3R5cGVzJztcblxuaW50ZXJmYWNlIElQbGFjZWhvbGRlck9iamVjdCB7XG4gIFtrZXk6IHN0cmluZ106IGFueSB8IGFueVtdO1xufVxuXG5pbnRlcmZhY2UgVGFiIHtcbiAgaWQ6IG51bWJlcjtcbiAgdGl0bGU6IHN0cmluZztcbiAgaXNBY3RpdmU/OiBib29sZWFuO1xuICBiYWRnZT86IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJQm1iQ2xhbXAge1xuICBtaW46IG51bWJlciB8IHN0cmluZztcbiAgbWF4OiBudW1iZXIgfCBzdHJpbmc7XG4gIHNpemU6IG51bWJlciB8IHN0cmluZztcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYm1iLXRpbWVzdHJlYW0nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgQm1iVGltZXN0cmVhbUVycm9yQ29tcG9uZW50LFxuICAgIEJtYkhpdG9MaXN0Q29tcG9uZW50LFxuICAgIEJtYlRpbWVzdHJlYW1EZXRhaWxzQ29tcG9uZW50LFxuICAgIENvbW1vbk1vZHVsZSxcbiAgICBCbWJVc2VySW1hZ2VDb21wb25lbnQsXG4gICAgQm1iVGFic0NvbXBvbmVudCxcbiAgICBCbWJCdXR0b25EaXJlY3RpdmUsXG4gICAgQm1iRGl2aWRlckNvbXBvbmVudCxcbiAgICBCbWJIaXRvQ2FyZENvbXBvbmVudCxcbiAgICBCbWJCYWRnZUNvbXBvbmVudCxcbiAgXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2JtYi10aW1lc3RyZWFtLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2JtYi10aW1lc3RyZWFtLmNvbXBvbmVudC5zY3NzJyxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIEJtYlRpbWVzdHJlYW1Db21wb25lbnQge1xuICBpc01pY3JvID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xuICBsYW5nID0gaW5wdXQ8c3RyaW5nPignZXMnKTtcbiAgZGF0ZUZvcm1hdCA9IGlucHV0PHN0cmluZz4oJ2RkL01NL3l5eXknKTtcbiAgZXZlbnRzID0gaW5wdXQ8SVRpbWVsaW5lRXZlbnRbXT4oW10pO1xuICBjbGFtcCA9IGlucHV0PElCbWJDbGFtcD4oeyBtaW46IDEwMCwgbWF4OiAnMTAwZHZoJywgc2l6ZTogJzEwMCUnIH0pO1xuXG4gIEBWaWV3Q2hpbGQoJ21vZGFsVGVtcGxhdGUnLCB7IHJlYWQ6IFRlbXBsYXRlUmVmIH0pXG4gIG1vZGFsVGVtcGxhdGU/OiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gIC8vIGludGVybmFsIHN0YXRlXG4gIGVycm9yID0gZmFsc2U7XG4gIG5vdyA9IERhdGVUaW1lLm5vdygpO1xuICBzdGFydDogRGF0ZVRpbWUgfCBudWxsID0gbnVsbDtcbiAgcGFyc2VkRXZlbnRzPzogYW55O1xuICBtb250aHNOYW1lcyA9IEluZm8ubW9udGhzKCdsb25nJywgeyBsb2NhbGU6IHRoaXMubGFuZygpIH0pO1xuICBvcmRlcmVkRXZlbnRzID0gc2lnbmFsPElUaW1lbGluZUV2ZW50UGFyc2VkW10+KFtdKTtcbiAgc2VsZWN0ZWREYXRlOiBJU2VsZWN0ZWREYXRlID0ge1xuICAgIGRheTogJycsXG4gICAgbW9udGg6ICcnLFxuICAgIGRhdGU6IHRoaXMubm93LFxuICB9O1xuICBvcmRlcmVkTW9udGhzOiBzdHJpbmdbXSA9IFtdO1xuICBuZXdNb2RhbCE6IFRlbXBsYXRlUmVmPGFueT47XG4gIHNlbGVjdGVkRXZlbnQ6IElUaW1lbGluZUV2ZW50IHwgbnVsbCA9IG51bGw7XG4gIGV2ZW50VGFiczogVGFiW10gPSBbXG4gICAgeyBpZDogMSwgdGl0bGU6ICdEZXNjcmlwY2nDs24nLCBpc0FjdGl2ZTogdHJ1ZSB9LFxuICAgIHsgaWQ6IDIsIHRpdGxlOiAnSW5zdGFuY2lhcycgfSxcbiAgXTtcbiAgdGFiU2VsZWN0ZWQgPSAxO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgbW9kYWxTZXJ2aWNlOiBCbWJOYXRpdmVNb2RhbFNlcnZpY2UpIHt9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgIHRoaXMucGFyc2VkRXZlbnRzID0gdGhpcy5wcmVwYXJlRXZlbnRzKGNoYW5nZXNbJ2V2ZW50cyddLmN1cnJlbnRWYWx1ZSk7XG4gICAgdGhpcy5vcmRlcmVkTW9udGhzID0gdGhpcy5vcmRlckRhdGVzKHRoaXMucGFyc2VkRXZlbnRzLCAneXl5eS9NTScpO1xuICAgIHRoaXMuc2VsZWN0ZWREYXRlID0gdGhpcy5zZWxlY3RBVmFsaWREYXRlKCk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnBhcnNlZEV2ZW50cyA9IHRoaXMucHJlcGFyZUV2ZW50cyh0aGlzLmV2ZW50cygpKTtcbiAgICB0aGlzLm9yZGVyZWRNb250aHMgPSB0aGlzLm9yZGVyRGF0ZXModGhpcy5wYXJzZWRFdmVudHMsICd5eXl5L01NJyk7XG4gICAgdGhpcy5zZWxlY3RlZERhdGUgPSB0aGlzLnNlbGVjdEFWYWxpZERhdGUoKTtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5tb2RhbFRlbXBsYXRlKSB7XG4gICAgICB0aGlzLm5ld01vZGFsID0gdGhpcy5tb2RhbFRlbXBsYXRlO1xuICAgIH1cbiAgfVxuXG4gIGhhbmRsZVRhYlNlbGVjdGVkKHRhYjogVGFiKSB7XG4gICAgdGhpcy50YWJTZWxlY3RlZCA9IHRhYi5pZDtcbiAgfVxuXG4gIHByZXBhcmVFdmVudHMoZXZlbnRzPzogSVRpbWVsaW5lRXZlbnRbXSkge1xuICAgIGlmICghZXZlbnRzPy5sZW5ndGgpIHtcbiAgICAgIHRoaXMub3JkZXJlZEV2ZW50cy5zZXQoW10pO1xuICAgICAgcmV0dXJuIHt9O1xuICAgIH1cblxuICAgIGNvbnN0IG9iamVjdEV2ZW50OiBJUGxhY2Vob2xkZXJPYmplY3QgPSB7fTtcbiAgICBldmVudHMuZm9yRWFjaCgoZXZlbnQpID0+IHtcbiAgICAgIGNvbnN0IHN0YXJ0RGF0ZSA9IERhdGVUaW1lLmZyb21Gb3JtYXQoZXZlbnQuc3RhcnQsIHRoaXMuZGF0ZUZvcm1hdCgpKTtcbiAgICAgIGNvbnN0IGVuZERhdGUgPSBEYXRlVGltZS5mcm9tRm9ybWF0KGV2ZW50LmVuZCwgdGhpcy5kYXRlRm9ybWF0KCkpO1xuICAgICAgY29uc3QgZGlmZiA9IGVuZERhdGUuZGlmZihzdGFydERhdGUsICdkYXlzJykuZGF5cyArIDE7XG5cbiAgICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBkaWZmOyBpbmRleCsrKSB7XG4gICAgICAgIGNvbnN0IGN1cnJlbnREYXRlID0gc3RhcnREYXRlLnBsdXMoeyBkYXlzOiBpbmRleCB9KTtcbiAgICAgICAgY29uc3Qgc3RyaW5nRGF0ZSA9IGN1cnJlbnREYXRlLnRvRm9ybWF0KCd5eXl5L01NL2RkJyk7XG4gICAgICAgIGNvbnN0IG1vbnRoID0gY3VycmVudERhdGUudG9Gb3JtYXQoJ3l5eXkvTU0nKTtcblxuICAgICAgICBvYmplY3RFdmVudFttb250aF0gPz89IHtcbiAgICAgICAgICBldmVudHM6IHt9LFxuICAgICAgICAgIG5hbWU6IHRoaXMubW9udGhzTmFtZXNbY3VycmVudERhdGUubW9udGggLSAxXSxcbiAgICAgICAgICBzdHJpbmdEYXRlOiBtb250aCxcbiAgICAgICAgICB5ZWFyOiBjdXJyZW50RGF0ZS55ZWFyLFxuICAgICAgICAgIGRhdGU6IGN1cnJlbnREYXRlLFxuICAgICAgICB9O1xuXG4gICAgICAgIG9iamVjdEV2ZW50W21vbnRoXS5ldmVudHNbc3RyaW5nRGF0ZV0gPz89IHtcbiAgICAgICAgICBldmVudHM6IFtdLFxuICAgICAgICAgIGRhdGU6IGN1cnJlbnREYXRlLFxuICAgICAgICAgIHN0cmluZ0RhdGUsXG4gICAgICAgICAgc2VsZWN0ZWQ6IGZhbHNlLFxuICAgICAgICB9O1xuXG4gICAgICAgIG9iamVjdEV2ZW50W21vbnRoXS5ldmVudHNbc3RyaW5nRGF0ZV0uZXZlbnRzLnB1c2goe1xuICAgICAgICAgIC4uLmV2ZW50LFxuICAgICAgICAgIHN0YXJ0OiBzdHJpbmdEYXRlLFxuICAgICAgICAgIHN0YXJ0RXZlbnQ6IGN1cnJlbnREYXRlLFxuICAgICAgICAgIGVuZEV2ZW50OiBlbmREYXRlLFxuICAgICAgICAgIHNlbGVjdGVkOiBmYWxzZSxcbiAgICAgICAgICBkaWZmOiBkaWZmIC0gMSxcbiAgICAgICAgICBvcmlnaW5hbFN0YXJ0OiBzdGFydERhdGUsXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgY29uc3Qgb3JkZXJlZEV2ZW50cyA9IHRoaXMub3JkZXJEYXRlcyhvYmplY3RFdmVudCwgJ3l5eXkvTU0nKTtcblxuICAgIGlmIChvcmRlcmVkRXZlbnRzLmxlbmd0aCkge1xuICAgICAgb2JqZWN0RXZlbnRbJ29yZGVyZWRFdmVudHMnXSA9IG9yZGVyZWRFdmVudHM7XG5cbiAgICAgIG9iamVjdEV2ZW50WydvcmRlcmVkRXZlbnRzJ10uZm9yRWFjaCgoZGF0ZTogc3RyaW5nKSA9PiB7XG4gICAgICAgIG9iamVjdEV2ZW50W2RhdGVdWydvcmRlcmVkRXZlbnRzJ10gPSB0aGlzLm9yZGVyRGF0ZXMoXG4gICAgICAgICAgb2JqZWN0RXZlbnRbZGF0ZV0uZXZlbnRzLFxuICAgICAgICAgICd5eXl5L01NL2RkJyxcbiAgICAgICAgKTtcbiAgICAgIH0pO1xuXG4gICAgICB0aGlzLm9yZGVyZWRFdmVudHMuc2V0KFxuICAgICAgICBvYmplY3RFdmVudFsnb3JkZXJlZEV2ZW50cyddXG4gICAgICAgICAgLm1hcCgobW9udGg6IHN0cmluZykgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIG9iamVjdEV2ZW50W21vbnRoXVsnb3JkZXJlZEV2ZW50cyddLm1hcChcbiAgICAgICAgICAgICAgKGRheTogc3RyaW5nKSA9PiBvYmplY3RFdmVudFttb250aF0uZXZlbnRzW2RheV0sXG4gICAgICAgICAgICApO1xuICAgICAgICAgIH0pXG4gICAgICAgICAgLmZsYXQoKSxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgcmV0dXJuIG9iamVjdEV2ZW50O1xuICB9XG5cbiAgb3JkZXJEYXRlcyhldmVudHM6IGFueSwgZm9ybWF0OiBzdHJpbmcpOiBzdHJpbmdbXSB7XG4gICAgY29uc3QgbW9udGhzTGlzdCA9IE9iamVjdC5rZXlzKGV2ZW50cyk7XG4gICAgY29uc3QgbW9udGhzT3JkZXJlZCA9IG1vbnRoc0xpc3Quc29ydCgoZGF0ZUE6IHN0cmluZywgZGF0ZUI6IHN0cmluZykgPT4ge1xuICAgICAgY29uc3QgcGFyc2VkRGF0ZUEgPSBEYXRlVGltZS5mcm9tRm9ybWF0KGRhdGVBLCBmb3JtYXQpO1xuICAgICAgY29uc3QgcGFyc2VkRGF0ZUIgPSBEYXRlVGltZS5mcm9tRm9ybWF0KGRhdGVCLCBmb3JtYXQpO1xuICAgICAgcmV0dXJuIHBhcnNlZERhdGVBLnRvTWlsbGlzKCkgLSBwYXJzZWREYXRlQi50b01pbGxpcygpO1xuICAgIH0pO1xuXG4gICAgcmV0dXJuIG1vbnRoc09yZGVyZWQ7XG4gIH1cblxuICBzZWxlY3RBVmFsaWREYXRlKCk6IHsgbW9udGg6IHN0cmluZzsgZGF5OiBzdHJpbmc7IGRhdGU6IERhdGVUaW1lIH0ge1xuICAgIGlmICghdGhpcy5vcmRlcmVkTW9udGhzKVxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgbW9udGg6IHRoaXMubm93Lm1vbnRoICsgJycsXG4gICAgICAgIGRheTogdGhpcy5ub3cuZGF5ICsgJycsXG4gICAgICAgIGRhdGU6IHRoaXMubm93LFxuICAgICAgfTtcblxuICAgIGNvbnN0IG1vbnRoID1cbiAgICAgIHRoaXMub3JkZXJlZE1vbnRocy5maW5kKChkYXRlKSA9PiB7XG4gICAgICAgIGlmIChkYXRlID09PSAnb3JkZXJlZEV2ZW50cycpIHJldHVybiBmYWxzZTtcbiAgICAgICAgY29uc3QgcGFyc2VkRGF0ZSA9IHRoaXMucGFyc2VkRXZlbnRzW2RhdGVdLmRhdGU7XG5cbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICB0aGlzLm5vdy55ZWFyIDw9IHBhcnNlZERhdGUueWVhciAmJiB0aGlzLm5vdy5tb250aCA8PSBwYXJzZWREYXRlLm1vbnRoXG4gICAgICAgICk7XG4gICAgICB9KSB8fFxuICAgICAgdGhpcy5vcmRlcmVkTW9udGhzLmF0KC0xKSB8fFxuICAgICAgJyc7XG4gICAgY29uc3Qgb3JkZXJlZEV2ZW50cyA9IHRoaXMucGFyc2VkRXZlbnRzPy5bbW9udGhdPy5vcmRlcmVkRXZlbnRzO1xuXG4gICAgY29uc3QgZGF5ID1cbiAgICAgIG9yZGVyZWRFdmVudHM/LmZpbmQoKGRhdGU6IHN0cmluZykgPT4ge1xuICAgICAgICBjb25zdCBwYXJzZWREYXRlID0gdGhpcy5wYXJzZWRFdmVudHNbbW9udGhdLmV2ZW50c1tkYXRlXS5kYXRlO1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgIHRoaXMubm93LnllYXIgPD0gcGFyc2VkRGF0ZS55ZWFyICYmXG4gICAgICAgICAgdGhpcy5ub3cubW9udGggPD0gcGFyc2VkRGF0ZS5tb250aCAmJlxuICAgICAgICAgIHRoaXMubm93LmRheSA8PSBwYXJzZWREYXRlLmRheVxuICAgICAgICApO1xuICAgICAgfSkgfHxcbiAgICAgIG9yZGVyZWRFdmVudHM/LmF0KC0xKSB8fFxuICAgICAgJyc7XG5cbiAgICBpZiAodGhpcy5wYXJzZWRFdmVudHNbbW9udGhdICYmIG1vbnRoICE9PSAnb3JkZXJlZEV2ZW50cycpIHtcbiAgICAgIHRoaXMucGFyc2VkRXZlbnRzW21vbnRoXS5zZWxlY3RlZCA9IHRydWU7XG4gICAgICB0aGlzLnBhcnNlZEV2ZW50c1ttb250aF0uZXZlbnRzW2RheV0uc2VsZWN0ZWQgPSB0cnVlO1xuICAgIH1cbiAgICByZXR1cm4ge1xuICAgICAgbW9udGgsXG4gICAgICBkYXksXG4gICAgICBkYXRlOiB0aGlzLnBhcnNlZEV2ZW50cz8uW21vbnRoXT8uZXZlbnRzPy5bZGF5XT8uZGF0ZSxcbiAgICB9O1xuICB9XG5cbiAgaGFuZGxlU2VsZWN0ZWREYXRlQ2hhbmdlKHsgbW9udGgsIGRheSB9OiB7IG1vbnRoOiBzdHJpbmc7IGRheTogc3RyaW5nIH0pIHtcbiAgICB0aGlzLnBhcnNlZEV2ZW50c1t0aGlzLnNlbGVjdGVkRGF0ZS5tb250aF0uc2VsZWN0ZWQgPSBmYWxzZTtcbiAgICB0aGlzLnBhcnNlZEV2ZW50c1t0aGlzLnNlbGVjdGVkRGF0ZS5tb250aF0uZXZlbnRzW1xuICAgICAgdGhpcy5zZWxlY3RlZERhdGUuZGF5XG4gICAgXS5zZWxlY3RlZCA9IGZhbHNlO1xuXG4gICAgdGhpcy5wYXJzZWRFdmVudHNbbW9udGhdLnNlbGVjdGVkID0gdHJ1ZTtcbiAgICB0aGlzLnBhcnNlZEV2ZW50c1ttb250aF0uZXZlbnRzW2RheV0uc2VsZWN0ZWQgPSB0cnVlO1xuXG4gICAgdGhpcy5zZWxlY3RlZERhdGUgPSB7XG4gICAgICBtb250aCxcbiAgICAgIGRheSxcbiAgICAgIGRhdGU6IHRoaXMucGFyc2VkRXZlbnRzW21vbnRoXS5ldmVudHNbZGF5XS5kYXRlLFxuICAgIH07XG4gIH1cblxuICBoYW5kbGVTZWxlY3RlZEV2ZW50Q2hhbmdlKGV2ZW50OiBJVGltZWxpbmVFdmVudCkge1xuICAgIHRoaXMuc2VsZWN0ZWRFdmVudCA9IGV2ZW50O1xuXG4gICAgY29uc3QgZGF0YTogSUJtYk5hdGl2ZU1vZGFsID0ge1xuICAgICAgdGl0bGU6IGV2ZW50LnRpdGxlLFxuICAgICAgY29udGVudDogdGhpcy5uZXdNb2RhbCxcbiAgICAgIHNpemU6ICdsYXJnZScsXG4gICAgfTtcbiAgICB0aGlzLm1vZGFsU2VydmljZS5vcGVuTW9kYWwoZGF0YSk7XG4gIH1cblxuICBnZXRNb250aFRpdGxlKGRhdGU6IERhdGVUaW1lKSB7XG4gICAgcmV0dXJuIGRhdGUuc2V0TG9jYWxlKHRoaXMubGFuZygpKS50b0Zvcm1hdCgnY2NjYyBkZCBMTExMIHl5eXknKTtcbiAgfVxuXG4gIGdldEluc3RhbmNlcyhldmVudDogYW55KTogc3RyaW5nW10ge1xuICAgIGNvbnN0IGluc3RhbmNlcyA9IFtdO1xuICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCAoZXZlbnQuZGlmZiB8fCAwKSArIDE7IGluZGV4KyspIHtcbiAgICAgIGNvbnN0IGRhdGUgPSBldmVudC5vcmlnaW5hbFN0YXJ0LnBsdXMoeyBkYXlzOiBpbmRleCB9KTtcbiAgICAgIGluc3RhbmNlcy5wdXNoKHRoaXMuZ2V0TW9udGhUaXRsZShkYXRlKSk7XG4gICAgfVxuICAgIHJldHVybiBpbnN0YW5jZXM7XG4gIH1cblxuICBnZXREdXJhdGlvblN0cmluZyhldmVudDogSVRpbWVsaW5lRXZlbnQpOiBzdHJpbmcge1xuICAgIHJldHVybiBgRHVyYWNpw7NuOiAke2V2ZW50Lm9yaWdpbmFsU3RhcnQ/LmRheX0gLSAke2V2ZW50LmVuZEV2ZW50Py5zZXRMb2NhbGUodGhpcy5sYW5nKCkpLnRvRm9ybWF0KCdkZCBMTExMIHl5eXknKX0gKCR7KGV2ZW50LmRpZmYgfHwgMCkgKyAxfSBEw61hcylgO1xuICB9XG5cbiAgZ2V0RGlmZlN0cmluZyhkaWZmOiBudW1iZXIgPSAwKTogc3RyaW5nIHtcbiAgICByZXR1cm4gZGlmZiArIDEgPiAxID8gYCR7ZGlmZiArIDF9IETDrWFzYCA6IGAke2RpZmYgKyAxfSBEw61hYDtcbiAgfVxuXG4gIGFwcGVhcmFuY2VCYWRnZShcbiAgICBldmVudFR5cGU6IHN0cmluZyB8IElCbWJUaW1lbGluZUN1c3RvbUV2ZW50LFxuICApOiBJQmJtQmdBcHBlYXJhbmNlIHtcbiAgICBpZiAodHlwZW9mIGV2ZW50VHlwZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgIHN3aXRjaCAoZXZlbnRUeXBlKSB7XG4gICAgICAgIGNhc2UgJ2FjdGl2ZSc6XG4gICAgICAgICAgcmV0dXJuICdtaXRlY19ibHVlJztcbiAgICAgICAgY2FzZSAnZG9uZSc6XG4gICAgICAgICAgcmV0dXJuICdzdWNjZXNzJztcbiAgICAgICAgY2FzZSAncGVuZGluZyc6XG4gICAgICAgICAgcmV0dXJuICdub3JtYWwnO1xuICAgICAgICBjYXNlICd1bmRlcl9yZXZpZXcnOlxuICAgICAgICAgIHJldHVybiAnd2FybmluZyc7XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgcmV0dXJuICdtaXRlY19ibHVlJztcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGV2ZW50VHlwZS50eXBlIHx8ICdub3JtYWwnO1xuICB9XG5cbiAgZ2V0QmFkZ2VUZXh0KGV2ZW50VHlwZTogc3RyaW5nIHwgSUJtYlRpbWVsaW5lQ3VzdG9tRXZlbnQpOiBzdHJpbmcge1xuICAgIGlmICh0eXBlb2YgZXZlbnRUeXBlID09PSAnc3RyaW5nJykgcmV0dXJuIGV2ZW50VHlwZTtcbiAgICByZXR1cm4gZXZlbnRUeXBlLnRleHQgfHwgJyc7XG4gIH1cbn1cbiIsIjxzZWN0aW9uXG4gIGNsYXNzPVwiYm1iX3RpbWVzdHJlYW1cIlxuICBbbmdDbGFzc109XCJ7ICdibWJfdGltZXN0cmVhbS1taWNybyc6IGlzTWljcm8oKSB9XCJcbj5cbiAgQGlmIChlcnJvcikge1xuICAgIDxkaXYgY2xhc3M9XCJibWJfdGltZXN0cmVhbS1lcnJvclwiPlxuICAgICAgPGJtYi10aW1lc3RyZWFtLWVycm9yIC8+XG4gICAgPC9kaXY+XG4gIH0gQGVsc2Uge1xuICAgIEBpZiAoIWlzTWljcm8oKSkge1xuICAgICAgPGFzaWRlIGNsYXNzPVwiYm1iX3RpbWVzdHJlYW0tYXNpZGVcIj5cbiAgICAgICAgPGJtYi1oaXRvLWxpc3RcbiAgICAgICAgICBbZGF0ZUZvcm1hdF09XCJkYXRlRm9ybWF0KClcIlxuICAgICAgICAgIFtsYW5nXT1cImxhbmcoKVwiXG4gICAgICAgICAgW25vd109XCJub3dcIlxuICAgICAgICAgIFtldmVudHNdPVwicGFyc2VkRXZlbnRzXCJcbiAgICAgICAgICBbc2VsZWN0ZWREYXRlXT1cInNlbGVjdGVkRGF0ZVwiXG4gICAgICAgICAgW29yZGVyZWRNb250aHNdPVwib3JkZXJlZE1vbnRoc1wiXG4gICAgICAgICAgKGNoYW5nZVNlbGVjdGVkRGF0ZSk9XCJoYW5kbGVTZWxlY3RlZERhdGVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgIC8+XG4gICAgICA8L2FzaWRlPlxuICAgIH1cbiAgICA8c2VjdGlvbiBjbGFzcz1cImJtYl90aW1lc3RyZWFtLW1haW5cIj5cbiAgICAgIDxibWItdGltZXN0cmVhbS1kZXRhaWxcbiAgICAgICAgW2xhbmddPVwibGFuZygpXCJcbiAgICAgICAgW25vd109XCJub3dcIlxuICAgICAgICBbc2VsZWN0ZWREYXRlXT1cInNlbGVjdGVkRGF0ZVwiXG4gICAgICAgIChjaGFuZ2VTZWxlY3RlZEV2ZW50KT1cImhhbmRsZVNlbGVjdGVkRXZlbnRDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgIFtvcmRlcmVkRXZlbnRzXT1cIm9yZGVyZWRFdmVudHMoKVwiXG4gICAgICAgIFtpc01pY3JvXT1cImlzTWljcm8oKVwiXG4gICAgICAvPlxuICAgIDwvc2VjdGlvbj5cbiAgfVxuPC9zZWN0aW9uPlxuXG48bmctdGVtcGxhdGUgI21vZGFsVGVtcGxhdGU+XG4gIEBpZiAoc2VsZWN0ZWRFdmVudCkge1xuICAgIDxzZWN0aW9uIGNsYXNzPVwiYm1iX3RpbWVzdHJlYW0tZGlhbG9nXCI+XG4gICAgICA8ZmlndXJlIGNsYXNzPVwiYm1iX3RpbWVzdHJlYW0tZGlhbG9nLWhlcm9cIj5cbiAgICAgICAgPGltZ1xuICAgICAgICAgIFtzcmNdPVwic2VsZWN0ZWRFdmVudC5pbWFnZVwiXG4gICAgICAgICAgW2FsdF09XCJzZWxlY3RlZEV2ZW50LnRpdGxlXCJcbiAgICAgICAgICBjbGFzcz1cImJtYl90aW1lc3RyZWFtLWRpYWxvZy1oZXJvLWltYWdlXCJcbiAgICAgICAgLz5cbiAgICAgIDwvZmlndXJlPlxuICAgICAgPGRpdiBjbGFzcz1cImJtYl90aW1lc3RyZWFtLWRpYWxvZy11c2VyXCI+XG4gICAgICAgIDxibWItdXNlci1pbWFnZVxuICAgICAgICAgIHNpemU9XCJtb2JpbGUtc21hbGxcIlxuICAgICAgICAgIFtpbWFnZV09XCJzZWxlY3RlZEV2ZW50LnBpY3R1cmVfcHJvZmlsZSB8fCAnJ1wiXG4gICAgICAgICAgW2FsdEltYWdlXT1cInNlbGVjdGVkRXZlbnQudXNlcl9maXJzdF9uYW1lIHx8ICcnXCJcbiAgICAgICAgICBbYm9yZGVyZWRdPVwiZmFsc2VcIlxuICAgICAgICAvPlxuICAgICAgICA8c3BhbiBjbGFzcz1cImJtYl90aW1lc3RyZWFtLWRpYWxvZy11c2VyLW5hbWVcIlxuICAgICAgICAgID57eyBzZWxlY3RlZEV2ZW50LnVzZXJfZmlyc3RfbmFtZSB9fVxuICAgICAgICAgIHt7IHNlbGVjdGVkRXZlbnQudXNlcl9sYXN0X25hbWUgfX08L3NwYW5cbiAgICAgICAgPlxuICAgICAgICA8c3BhbiBjbGFzcz1cImJtYl90aW1lc3RyZWFtLWRpYWxvZy11c2VyLWRhdGVcIj57e1xuICAgICAgICAgIHNlbGVjdGVkRXZlbnQuc3RhcnRFdmVudD8udG9Gb3JtYXQoJ2RkL01NL3l5eXknKVxuICAgICAgICB9fTwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGJtYi10YWJzXG4gICAgICAgIFt0YWJzXT1cImV2ZW50VGFic1wiXG4gICAgICAgIChzZWxlY3RlZCk9XCJoYW5kbGVUYWJTZWxlY3RlZCgkZXZlbnQpXCJcbiAgICAgICAgc3R5bGU9XCJmbGV4OiAxXCJcbiAgICAgID5cbiAgICAgICAgQHN3aXRjaCAodGFiU2VsZWN0ZWQpIHtcbiAgICAgICAgICBAY2FzZSAoMSkge1xuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJtYl90aW1lc3RyZWFtLWRpYWxvZy10YWJcIj5cbiAgICAgICAgICAgICAgPGRsIGNsYXNzPVwiYm1iX3RpbWVzdHJlYW0tZGlhbG9nLWR1YWxcIj5cbiAgICAgICAgICAgICAgICA8ZHQgY2xhc3M9XCJibWJfdGltZXN0cmVhbS1kaWFsb2ctZHVhbC10aXRsZVwiPkVzdGFkbzo8L2R0PlxuICAgICAgICAgICAgICAgIDxkZCBjbGFzcz1cImJtYl90aW1lc3RyZWFtLWRpYWxvZy1kdWFsLWRhdGFcIj5cbiAgICAgICAgICAgICAgICAgIDxibWItYmFkZ2VcbiAgICAgICAgICAgICAgICAgICAgW2FwcGVhcmFuY2VdPVwiYXBwZWFyYW5jZUJhZGdlKHNlbGVjdGVkRXZlbnQudHlwZSlcIlxuICAgICAgICAgICAgICAgICAgICBbdGV4dF09XCJnZXRCYWRnZVRleHQoc2VsZWN0ZWRFdmVudC50eXBlKVwiXG4gICAgICAgICAgICAgICAgICAgIFtjb250YWluZXJdPVwiZmFsc2VcIlxuICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICA8L2RkPlxuICAgICAgICAgICAgICAgIDxkdCBjbGFzcz1cImJtYl90aW1lc3RyZWFtLWRpYWxvZy1kdWFsLXRpdGxlXCI+XG4gICAgICAgICAgICAgICAgICBEdXJhY2nDs24gdG90YWw6XG4gICAgICAgICAgICAgICAgPC9kdD5cbiAgICAgICAgICAgICAgICA8ZGQgY2xhc3M9XCJibWJfdGltZXN0cmVhbS1kaWFsb2ctZHVhbC1kYXRhXCI+XG4gICAgICAgICAgICAgICAgICB7eyBnZXREaWZmU3RyaW5nKHNlbGVjdGVkRXZlbnQuZGlmZikgfX1cbiAgICAgICAgICAgICAgICA8L2RkPlxuICAgICAgICAgICAgICA8L2RsPlxuICAgICAgICAgICAgICA8cD57eyBzZWxlY3RlZEV2ZW50LmRlc2NyaXB0aW9uIH19PC9wPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgfVxuICAgICAgICAgIEBjYXNlICgyKSB7XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYm1iX3RpbWVzdHJlYW0tZGlhbG9nLXRhYlwiPlxuICAgICAgICAgICAgICA8aDMgY2xhc3M9XCJibWJfdGltZXN0cmVhbS1kaWFsb2ctdGFiLXRpdGxlXCI+SW5zdGFuY2lhczwvaDM+XG4gICAgICAgICAgICAgIDxibWItZGl2aWRlciB0eXBlPVwic2ltcGxlXCIgLz5cbiAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9XCJibWJfdGltZXN0cmVhbS1kaWFsb2ctdGFiLWhpdG8tbGlzdFwiPlxuICAgICAgICAgICAgICAgIEBmb3IgKGRhdGUgb2YgZ2V0SW5zdGFuY2VzKHNlbGVjdGVkRXZlbnQpOyB0cmFjayAkaW5kZXgpIHtcbiAgICAgICAgICAgICAgICAgIDxibWItaGl0by1jYXJkXG4gICAgICAgICAgICAgICAgICAgIFtpY29uXT1cInNlbGVjdGVkRXZlbnQuaWNvbiB8fCAnYXBwX2JhZGdpbmcnXCJcbiAgICAgICAgICAgICAgICAgICAgW3RpdGxlXT1cInNlbGVjdGVkRXZlbnQudGl0bGVcIlxuICAgICAgICAgICAgICAgICAgICBbdHlwZV09XCJzZWxlY3RlZEV2ZW50LnR5cGVcIlxuICAgICAgICAgICAgICAgICAgICBbaWRdPVwiJGluZGV4XCJcbiAgICAgICAgICAgICAgICAgICAgW2VuYWJsZV9idWxsZXRdPVwiZmFsc2VcIlxuICAgICAgICAgICAgICAgICAgICBbYWx0ZXJuYXRpdmVfYXBwZWFyYW5jZV09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICAgICAgW2lzQ29tcGFjdF09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBpZiAoc2VsZWN0ZWRFdmVudC5kaWZmKSB7XG4gICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImJtYl90aW1lc3RyZWFtLWRpYWxvZy10YWItZHVyYXRpb25cIj5cbiAgICAgICAgICAgICAgICAgICAge3sgZ2V0RHVyYXRpb25TdHJpbmcoc2VsZWN0ZWRFdmVudCkgfX1cbiAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQGlmIChzZWxlY3RlZEV2ZW50LnJlbGF0ZWRfdG8pIHtcbiAgICAgICAgICAgICAgICAgIDxoMyBjbGFzcz1cImJtYl90aW1lc3RyZWFtLWRpYWxvZy1jb250YWluZXItdGFiLXRpdGxlXCI+XG4gICAgICAgICAgICAgICAgICAgIFJlbGFjaW9uYWRvIGFcbiAgICAgICAgICAgICAgICAgIDwvaDM+XG4gICAgICAgICAgICAgICAgICBAZm9yIChyZWxhdGVkIG9mIHNlbGVjdGVkRXZlbnQucmVsYXRlZF90bzsgdHJhY2sgJGluZGV4KSB7XG4gICAgICAgICAgICAgICAgICAgIDxibWItaGl0by1jYXJkXG4gICAgICAgICAgICAgICAgICAgICAgW2ljb25dPVwic2VsZWN0ZWRFdmVudC5pY29uIHx8ICdhcHBfYmFkZ2luZydcIlxuICAgICAgICAgICAgICAgICAgICAgIFt0aXRsZV09XCJyZWxhdGVkXCJcbiAgICAgICAgICAgICAgICAgICAgICBbdHlwZV09XCJzZWxlY3RlZEV2ZW50LnR5cGVcIlxuICAgICAgICAgICAgICAgICAgICAgIFtpZF09XCJyZWxhdGVkXCJcbiAgICAgICAgICAgICAgICAgICAgICBbZW5hYmxlX2J1bGxldF09XCJmYWxzZVwiXG4gICAgICAgICAgICAgICAgICAgICAgW2FsdGVybmF0aXZlX2FwcGVhcmFuY2VdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgW2lzQ29tcGFjdF09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIDwvc2VjdGlvbj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgPC9ibWItdGFicz5cbiAgICAgIDxzZWN0aW9uIGNsYXNzPVwiYm1iX3RpbWVzdHJlYW0tZGlhbG9nLWJ1dHRvbi1jb250YWluZXJcIj5cbiAgICAgICAgPGJ1dHRvbiBibWJCdXR0b24gYXBwZWFyYW5jZT1cInByaW1hcnlcIiBpY29uPVwiZml0X3NjcmVlblwiPlxuICAgICAgICAgIElyIGEgZGVjaXNpw7NuXG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgPC9zZWN0aW9uPlxuICAgIDwvc2VjdGlvbj5cbiAgfVxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==