asp-lib 1.1.8 → 1.1.10

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.
@@ -55,6 +55,7 @@ import { TranslatePipe } from './pipes/translate.pipe';
55
55
  import { ChangePasswordComponent } from './change-password/change-password.component';
56
56
  import { MatSelectModule } from '@angular/material/select';
57
57
  import { RoleMenuOptionsComponent } from './role-menu-options/role-menu-options.component';
58
+ import { DialogAlertComponent } from './dialog-alert/dialog-alert.component';
58
59
  import * as i0 from "@angular/core";
59
60
  export class AspLibModule {
60
61
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AspLibModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
@@ -96,7 +97,8 @@ export class AspLibModule {
96
97
  NestedItemsSelectorComponent,
97
98
  TranslatePipe,
98
99
  ChangePasswordComponent,
99
- RoleMenuOptionsComponent], imports: [CommonModule,
100
+ RoleMenuOptionsComponent,
101
+ DialogAlertComponent], imports: [CommonModule,
100
102
  //BrowserAnimationsModule,
101
103
  MatRadioModule,
102
104
  FormsModule,
@@ -198,6 +200,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
198
200
  TranslatePipe,
199
201
  ChangePasswordComponent,
200
202
  RoleMenuOptionsComponent,
203
+ DialogAlertComponent
201
204
  ],
202
205
  imports: [
203
206
  CommonModule,
@@ -247,4 +250,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
247
250
  ]
248
251
  }]
249
252
  }] });
250
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNwLWxpYi5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hc3AtbGliL3NyYy9saWIvYXNwLWxpYi5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFjLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNyRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3RELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQztBQUN6RixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRSxpRkFBaUY7QUFDakYsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDbkYsT0FBTyxFQUFpQyxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN4RixPQUFPLEVBQUUsV0FBVyxFQUFxQixtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzdFLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2xHLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDakUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDL0QsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDN0UsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzVELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ2pGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ25GLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ25GLE9BQU8sRUFBMEMsY0FBYyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDaEcsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3RELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUM3RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNwRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUN2RSxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sd0JBQXdCLENBQUE7QUFDcEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzVELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzdFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBQ2hHLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxxREFBcUQsQ0FBQztBQUNqRyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQztBQUN4RixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDdEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDN0QsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDaEYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzNELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzdELE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHlEQUF5RCxDQUFDO0FBQ3ZHLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUN0RixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0saURBQWlELENBQUM7O0FBMkYzRixNQUFNLE9BQU8sWUFBWTsrR0FBWixZQUFZO2dIQUFaLFlBQVksaUJBdkZyQixlQUFlO1lBQ2YsYUFBYTtZQUNiLHdCQUF3QjtZQUN4QixpQkFBaUI7WUFDakIsc0JBQXNCO1lBQ3RCLG9CQUFvQjtZQUNwQixjQUFjO1lBQ2QsZUFBZTtZQUNmLG9CQUFvQjtZQUNwQixlQUFlO1lBQ2Ysd0JBQXdCO1lBQ3hCLHNCQUFzQjtZQUN0Qix3QkFBd0I7WUFDeEIscUJBQXFCO1lBQ3JCLG1CQUFtQjtZQUNuQixrQkFBa0I7WUFDbEIsaUJBQWlCO1lBQ2pCLHNCQUFzQjtZQUN0QixpQkFBaUI7WUFDakIsc0JBQXNCO1lBQ3RCLGFBQWE7WUFDYix3QkFBd0I7WUFDeEIsb0JBQW9CO1lBQ3BCLGlCQUFpQjtZQUNqQixrQkFBa0I7WUFDbEIsZUFBZTtZQUNmLGlCQUFpQjtZQUNqQixvQkFBb0I7WUFDcEIsd0JBQXdCO1lBQ3hCLGFBQWE7WUFDYiwwQkFBMEI7WUFDMUIsdUJBQXVCO1lBQ3ZCLGFBQWE7WUFDYixxQkFBcUI7WUFDckIsY0FBYztZQUNkLDRCQUE0QjtZQUM1QixhQUFhO1lBQ2IsdUJBQXVCO1lBQ3ZCLHdCQUF3QixhQUd4QixZQUFZO1lBQ1osMEJBQTBCO1lBQzFCLGNBQWM7WUFDZCxXQUFXO1lBQ1gsbUJBQW1CO1lBQ25CLGtCQUFrQjtZQUNsQixjQUFjO1lBQ2Qsa0JBQWtCO1lBQ2xCLGFBQWE7WUFDYixhQUFhO1lBQ2IsaUJBQWlCO1lBQ2pCLGNBQWM7WUFDaEIsbUJBQW1CO1lBQ2pCLGVBQWU7WUFDZixhQUFhO1lBQ2IsZ0JBQWdCO1lBQ2xCLGdCQUFnQjtZQUNkLGVBQWUsYUFHZixlQUFlO1lBQ2YsYUFBYTtZQUNiLHdCQUF3QjtZQUN4QixpQkFBaUI7WUFDakIsc0JBQXNCO1lBQ3RCLG9CQUFvQjtZQUNwQixjQUFjO1lBQ2QsZUFBZTtZQUNmLG9CQUFvQjtZQUNwQixlQUFlO1lBQ2Ysd0JBQXdCO1lBQ3hCLHNCQUFzQjtZQUN0Qix3QkFBd0I7WUFDeEIscUJBQXFCO1lBQ3JCLG1CQUFtQjtZQUNuQixrQkFBa0I7WUFDbEIsaUJBQWlCO1lBQ2pCLHNCQUFzQjtZQUN0QixzQkFBc0I7WUFDdEIsaUJBQWlCO1lBQ2pCLHdCQUF3QjtnSEFNZixZQUFZLGFBSlo7WUFDVCxFQUFFLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxRQUFRLEVBQUUsRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLEVBQUU7U0FDakYsWUE1Q0MsWUFBWTtZQUNaLDBCQUEwQjtZQUMxQixjQUFjO1lBQ2QsV0FBVztZQUNYLG1CQUFtQjtZQUNuQixrQkFBa0I7WUFDbEIsY0FBYztZQUNkLGtCQUFrQjtZQUNsQixhQUFhO1lBQ2IsYUFBYTtZQUNiLGlCQUFpQjtZQUNqQixjQUFjO1lBQ2hCLG1CQUFtQjtZQUNqQixlQUFlO1lBQ2YsYUFBYTtZQUNiLGdCQUFnQjtZQUNsQixnQkFBZ0I7WUFDZCxlQUFlOzs0RkE2Qk4sWUFBWTtrQkF6RnhCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFO3dCQUNaLGVBQWU7d0JBQ2YsYUFBYTt3QkFDYix3QkFBd0I7d0JBQ3hCLGlCQUFpQjt3QkFDakIsc0JBQXNCO3dCQUN0QixvQkFBb0I7d0JBQ3BCLGNBQWM7d0JBQ2QsZUFBZTt3QkFDZixvQkFBb0I7d0JBQ3BCLGVBQWU7d0JBQ2Ysd0JBQXdCO3dCQUN4QixzQkFBc0I7d0JBQ3RCLHdCQUF3Qjt3QkFDeEIscUJBQXFCO3dCQUNyQixtQkFBbUI7d0JBQ25CLGtCQUFrQjt3QkFDbEIsaUJBQWlCO3dCQUNqQixzQkFBc0I7d0JBQ3RCLGlCQUFpQjt3QkFDakIsc0JBQXNCO3dCQUN0QixhQUFhO3dCQUNiLHdCQUF3Qjt3QkFDeEIsb0JBQW9CO3dCQUNwQixpQkFBaUI7d0JBQ2pCLGtCQUFrQjt3QkFDbEIsZUFBZTt3QkFDZixpQkFBaUI7d0JBQ2pCLG9CQUFvQjt3QkFDcEIsd0JBQXdCO3dCQUN4QixhQUFhO3dCQUNiLDBCQUEwQjt3QkFDMUIsdUJBQXVCO3dCQUN2QixhQUFhO3dCQUNiLHFCQUFxQjt3QkFDckIsY0FBYzt3QkFDZCw0QkFBNEI7d0JBQzVCLGFBQWE7d0JBQ2IsdUJBQXVCO3dCQUN2Qix3QkFBd0I7cUJBQ3pCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLDBCQUEwQjt3QkFDMUIsY0FBYzt3QkFDZCxXQUFXO3dCQUNYLG1CQUFtQjt3QkFDbkIsa0JBQWtCO3dCQUNsQixjQUFjO3dCQUNkLGtCQUFrQjt3QkFDbEIsYUFBYTt3QkFDYixhQUFhO3dCQUNiLGlCQUFpQjt3QkFDakIsY0FBYzt3QkFDaEIsbUJBQW1CO3dCQUNqQixlQUFlO3dCQUNmLGFBQWE7d0JBQ2IsZ0JBQWdCO3dCQUNsQixnQkFBZ0I7d0JBQ2QsZUFBZTtxQkFDaEI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLGVBQWU7d0JBQ2YsYUFBYTt3QkFDYix3QkFBd0I7d0JBQ3hCLGlCQUFpQjt3QkFDakIsc0JBQXNCO3dCQUN0QixvQkFBb0I7d0JBQ3BCLGNBQWM7d0JBQ2QsZUFBZTt3QkFDZixvQkFBb0I7d0JBQ3BCLGVBQWU7d0JBQ2Ysd0JBQXdCO3dCQUN4QixzQkFBc0I7d0JBQ3RCLHdCQUF3Qjt3QkFDeEIscUJBQXFCO3dCQUNyQixtQkFBbUI7d0JBQ25CLGtCQUFrQjt3QkFDbEIsaUJBQWlCO3dCQUNqQixzQkFBc0I7d0JBQ3RCLHNCQUFzQjt3QkFDdEIsaUJBQWlCO3dCQUNqQix3QkFBd0I7cUJBQ3pCO29CQUNELFNBQVMsRUFBRTt3QkFDVCxFQUFFLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxRQUFRLEVBQUUsRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLEVBQUU7cUJBQ2pGO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZm9yd2FyZFJlZiwgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQXNwTGliQ29tcG9uZW50IH0gZnJvbSAnLi9hc3AtbGliLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE1lbnVDb21wb25lbnQgfSBmcm9tICcuL21lbnUvbWVudS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBBcHBsaWNhdGlvbk1lbnVDb21wb25lbnQgfSBmcm9tICcuL2FwcGxpY2F0aW9uLW1lbnUvYXBwbGljYXRpb24tbWVudS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBEcm9wZG93bkNvbXBvbmVudCB9IGZyb20gJy4vZHJvcGRvd24vZHJvcGRvd24uY29tcG9uZW50JztcclxuLy9pbXBvcnQgeyBCcm93c2VyQW5pbWF0aW9uc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXIvYW5pbWF0aW9ucyc7XHJcbmltcG9ydCB7IFNlY3VyaXR5QWRtaW5Db21wb25lbnQgfSBmcm9tICcuL3NlY3VyaXR5LWFkbWluL3NlY3VyaXR5LWFkbWluLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE1hdFJhZGlvQnV0dG9uLCBNYXRSYWRpb0dyb3VwLCBNYXRSYWRpb01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3JhZGlvJztcclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIE5HX1ZBTFVFX0FDQ0VTU09SLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBJdGVtc1ZpZXdlckNvbXBvbmVudCB9IGZyb20gJy4vaXRlbXMtdmlld2VyL2l0ZW1zLXZpZXdlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBNQVRfRk9STV9GSUVMRF9ERUZBVUxUX09QVElPTlMsIE1hdEZvcm1GaWVsZE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGQnO1xyXG5pbXBvcnQgeyBNYXRJbnB1dE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2lucHV0JztcclxuaW1wb3J0IHsgSW5wdXRDb21wb25lbnQgfSBmcm9tICcuL2lucHV0L2lucHV0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE1hdFBhZ2luYXRvck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3BhZ2luYXRvcic7XHJcbmltcG9ydCB7IE1hdFRhYnNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90YWJzJztcclxuaW1wb3J0IHsgU2VsZWN0Q29tcG9uZW50IH0gZnJvbSAnLi9zZWxlY3Qvc2VsZWN0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE1hdE1lbnVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9tZW51JztcclxuaW1wb3J0IHsgTWF0Q2hlY2tib3hNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jaGVja2JveCc7XHJcbmltcG9ydCB7IEVudGl0eUFkbWluQ29tcG9uZW50IH0gZnJvbSAnLi9lbnRpdHktYWRtaW4vZW50aXR5LWFkbWluLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEhlYWRlckNvbXBvbmVudCB9IGZyb20gJy4vaGVhZGVyL2hlYWRlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBSZWNlbnRzRHJvcGRvd25Db21wb25lbnQgfSBmcm9tICcuL3JlY2VudHMtZHJvcGRvd24vcmVjZW50cy1kcm9wZG93bi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBOb3RpZmljYXRpb25zQ29tcG9uZW50IH0gZnJvbSAnLi9ub3RpZmljYXRpb25zL25vdGlmaWNhdGlvbnMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ29tcGFueURyb3Bkb3duQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wYW55LWRyb3Bkb3duL2NvbXBhbnktZHJvcGRvd24uY29tcG9uZW50JztcclxuaW1wb3J0IHsgVXNlckRyb3Bkb3duQ29tcG9uZW50IH0gZnJvbSAnLi91c2VyLWRyb3Bkb3duL3VzZXItZHJvcGRvd24uY29tcG9uZW50JztcclxuaW1wb3J0IHsgUmFkaW9Hcm91cENvbXBvbmVudCB9IGZyb20gJy4vcmFkaW8tZ3JvdXAvcmFkaW8tZ3JvdXAuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQmFzaWNJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9iYXNpYy1pdGVtL2Jhc2ljLWl0ZW0uY29tcG9uZW50JztcclxuaW1wb3J0IHsgUm9sZUNhcmRDb21wb25lbnQgfSBmcm9tICcuL3JvbGUtY2FyZC9yb2xlLWNhcmQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgSXRlbXNTZWxlY3RvckNvbXBvbmVudCB9IGZyb20gJy4vaXRlbXMtc2VsZWN0b3IvaXRlbXMtc2VsZWN0b3IuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ2hlY2tib3hDb21wb25lbnQgfSBmcm9tICcuL2NoZWNrYm94L2NoZWNrYm94LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENoZWNrYm94RmllbGRDb21wb25lbnQgfSBmcm9tICcuL2NoZWNrYm94LWZpZWxkL2NoZWNrYm94LWZpZWxkLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENka0RyYWcsIENka0Ryb3BMaXN0R3JvdXAsIENka0Ryb3BMaXN0LCBEcmFnRHJvcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9kcmFnLWRyb3AnO1xyXG5pbXBvcnQgeyBGb3JtQ29tcG9uZW50IH0gZnJvbSAnLi9mb3JtL2Zvcm0uY29tcG9uZW50JztcclxuaW1wb3J0IHsgUmVzb3VyY2VBY3Rpb25zQ29tcG9uZW50IH0gZnJvbSAnLi9yZXNvdXJjZS1hY3Rpb25zL3Jlc291cmNlLWFjdGlvbnMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTWF0RGlhbG9nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcclxuaW1wb3J0IHsgQXNzaWduUm9sZXNDb21wb25lbnQgfSBmcm9tICcuL2Fzc2lnbi1yb2xlcy9hc3NpZ24tcm9sZXMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgUm9sZUluZm9Db21wb25lbnQgfSBmcm9tICcuL3JvbGUtaW5mby9yb2xlLWluZm8uY29tcG9uZW50JztcclxuaW1wb3J0IHsgTWVudUFkbWluQ29tcG9uZW50IH0gZnJvbSAnLi9tZW51LWFkbWluL21lbnUtYWRtaW4uY29tcG9uZW50JztcclxuaW1wb3J0IHtNYXRUcmVlTW9kdWxlfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90cmVlJ1xyXG5pbXBvcnQgeyBIdHRwQ2xpZW50TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBMb2FkZXJDb21wb25lbnQgfSBmcm9tICcuL2xvYWRlci9sb2FkZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU25hY2tiYXJDb21wb25lbnQgfSBmcm9tICcuL3NuYWNrYmFyL3NuYWNrYmFyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFJhZGlvQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi9yYWRpby1idXR0b24vcmFkaW8tYnV0dG9uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE1lbnVDaGlsZFJlcG9ydENvbXBvbmVudCB9IGZyb20gJy4vbWVudS9tZW51LWNoaWxkLXJlcG9ydC9tZW51LWNoaWxkLXJlcG9ydC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBUcmVlQ29tcG9uZW50IH0gZnJvbSAnLi90cmVlL3RyZWUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTXVsdGlPcHRpb25EaWFsb2dDb21wb25lbnQgfSBmcm9tICcuL211bHRpLW9wdGlvbi1kaWFsb2cvbXVsdGktb3B0aW9uLWRpYWxvZy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBNb3ZlTWVudU9wdGlvbkNvbXBvbmVudCB9IGZyb20gJy4vbW92ZS1tZW51LW9wdGlvbi9tb3ZlLW1lbnUtb3B0aW9uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IExpc3RDb21wb25lbnQgfSBmcm9tICcuL2xpc3QvbGlzdC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBNYXRUb29sdGlwTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbHRpcCc7XHJcbmltcG9ydCB7IE1vZHVsZXNBZG1pbkNvbXBvbmVudCB9IGZyb20gJy4vbW9kdWxlcy1hZG1pbi9tb2R1bGVzLWFkbWluLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEZvcm0yQ29tcG9uZW50IH0gZnJvbSAnLi9mb3JtLTIvZm9ybS0yLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEFuZ3VsYXJFZGl0b3JNb2R1bGUgfSBmcm9tICdAa29sa292L2FuZ3VsYXItZWRpdG9yJztcclxuaW1wb3J0IHsgTmVzdGVkSXRlbXNTZWxlY3RvckNvbXBvbmVudCB9IGZyb20gJy4vbmVzdGVkLWl0ZW1zLXNlbGVjdG9yL25lc3RlZC1pdGVtcy1zZWxlY3Rvci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBUcmFuc2xhdGVQaXBlIH0gZnJvbSAnLi9waXBlcy90cmFuc2xhdGUucGlwZSc7XHJcbmltcG9ydCB7IENoYW5nZVBhc3N3b3JkQ29tcG9uZW50IH0gZnJvbSAnLi9jaGFuZ2UtcGFzc3dvcmQvY2hhbmdlLXBhc3N3b3JkLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE1hdFNlbGVjdE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NlbGVjdCc7XG5pbXBvcnQgeyBSb2xlTWVudU9wdGlvbnNDb21wb25lbnQgfSBmcm9tICcuL3JvbGUtbWVudS1vcHRpb25zL3JvbGUtbWVudS1vcHRpb25zLmNvbXBvbmVudCc7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGRlY2xhcmF0aW9uczogW1xyXG4gICAgQXNwTGliQ29tcG9uZW50LFxyXG4gICAgTWVudUNvbXBvbmVudCxcclxuICAgIEFwcGxpY2F0aW9uTWVudUNvbXBvbmVudCxcclxuICAgIERyb3Bkb3duQ29tcG9uZW50LFxyXG4gICAgU2VjdXJpdHlBZG1pbkNvbXBvbmVudCxcclxuICAgIEl0ZW1zVmlld2VyQ29tcG9uZW50LFxyXG4gICAgSW5wdXRDb21wb25lbnQsXHJcbiAgICBTZWxlY3RDb21wb25lbnQsXHJcbiAgICBFbnRpdHlBZG1pbkNvbXBvbmVudCxcclxuICAgIEhlYWRlckNvbXBvbmVudCxcclxuICAgIFJlY2VudHNEcm9wZG93bkNvbXBvbmVudCxcclxuICAgIE5vdGlmaWNhdGlvbnNDb21wb25lbnQsXHJcbiAgICBDb21wYW55RHJvcGRvd25Db21wb25lbnQsXHJcbiAgICBVc2VyRHJvcGRvd25Db21wb25lbnQsXHJcbiAgICBSYWRpb0dyb3VwQ29tcG9uZW50LFxyXG4gICAgQmFzaWNJdGVtQ29tcG9uZW50LFxyXG4gICAgUm9sZUNhcmRDb21wb25lbnQsXHJcbiAgICBJdGVtc1NlbGVjdG9yQ29tcG9uZW50LFxyXG4gICAgQ2hlY2tib3hDb21wb25lbnQsXHJcbiAgICBDaGVja2JveEZpZWxkQ29tcG9uZW50LFxyXG4gICAgRm9ybUNvbXBvbmVudCxcclxuICAgIFJlc291cmNlQWN0aW9uc0NvbXBvbmVudCxcclxuICAgIEFzc2lnblJvbGVzQ29tcG9uZW50LFxyXG4gICAgUm9sZUluZm9Db21wb25lbnQsXHJcbiAgICBNZW51QWRtaW5Db21wb25lbnQsXHJcbiAgICBMb2FkZXJDb21wb25lbnQsXHJcbiAgICBTbmFja2JhckNvbXBvbmVudCxcclxuICAgIFJhZGlvQnV0dG9uQ29tcG9uZW50LFxyXG4gICAgTWVudUNoaWxkUmVwb3J0Q29tcG9uZW50LFxyXG4gICAgVHJlZUNvbXBvbmVudCxcclxuICAgIE11bHRpT3B0aW9uRGlhbG9nQ29tcG9uZW50LFxyXG4gICAgTW92ZU1lbnVPcHRpb25Db21wb25lbnQsXHJcbiAgICBMaXN0Q29tcG9uZW50LFxyXG4gICAgTW9kdWxlc0FkbWluQ29tcG9uZW50LFxyXG4gICAgRm9ybTJDb21wb25lbnQsXHJcbiAgICBOZXN0ZWRJdGVtc1NlbGVjdG9yQ29tcG9uZW50LFxyXG4gICAgVHJhbnNsYXRlUGlwZSxcclxuICAgIENoYW5nZVBhc3N3b3JkQ29tcG9uZW50LFxyXG4gICAgUm9sZU1lbnVPcHRpb25zQ29tcG9uZW50LFxyXG4gIF0sXHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgLy9Ccm93c2VyQW5pbWF0aW9uc01vZHVsZSxcclxuICAgIE1hdFJhZGlvTW9kdWxlLFxyXG4gICAgRm9ybXNNb2R1bGUsXHJcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxyXG4gICAgTWF0Rm9ybUZpZWxkTW9kdWxlLFxyXG4gICAgTWF0SW5wdXRNb2R1bGUsXHJcbiAgICBNYXRQYWdpbmF0b3JNb2R1bGUsXHJcbiAgICBNYXRUYWJzTW9kdWxlLFxyXG4gICAgTWF0TWVudU1vZHVsZSxcclxuICAgIE1hdENoZWNrYm94TW9kdWxlLFxyXG4gICAgRHJhZ0Ryb3BNb2R1bGUsXHJcblx0XHRBbmd1bGFyRWRpdG9yTW9kdWxlLFxyXG4gICAgTWF0RGlhbG9nTW9kdWxlLFxyXG4gICAgTWF0VHJlZU1vZHVsZSxcclxuICAgIEh0dHBDbGllbnRNb2R1bGUsXHJcblx0XHRNYXRUb29sdGlwTW9kdWxlLFxyXG4gICAgTWF0U2VsZWN0TW9kdWxlXHJcbiAgXSxcclxuICBleHBvcnRzOiBbXHJcbiAgICBBc3BMaWJDb21wb25lbnQsXHJcbiAgICBNZW51Q29tcG9uZW50LFxyXG4gICAgQXBwbGljYXRpb25NZW51Q29tcG9uZW50LFxyXG4gICAgRHJvcGRvd25Db21wb25lbnQsXHJcbiAgICBTZWN1cml0eUFkbWluQ29tcG9uZW50LFxyXG4gICAgSXRlbXNWaWV3ZXJDb21wb25lbnQsXHJcbiAgICBJbnB1dENvbXBvbmVudCxcclxuICAgIFNlbGVjdENvbXBvbmVudCxcclxuICAgIEVudGl0eUFkbWluQ29tcG9uZW50LFxyXG4gICAgSGVhZGVyQ29tcG9uZW50LFxyXG4gICAgUmVjZW50c0Ryb3Bkb3duQ29tcG9uZW50LFxyXG4gICAgTm90aWZpY2F0aW9uc0NvbXBvbmVudCxcclxuICAgIENvbXBhbnlEcm9wZG93bkNvbXBvbmVudCxcclxuICAgIFVzZXJEcm9wZG93bkNvbXBvbmVudCxcclxuICAgIFJhZGlvR3JvdXBDb21wb25lbnQsXHJcbiAgICBCYXNpY0l0ZW1Db21wb25lbnQsXHJcbiAgICBSb2xlQ2FyZENvbXBvbmVudCxcclxuICAgIEl0ZW1zU2VsZWN0b3JDb21wb25lbnQsXHJcbiAgICBDaGVja2JveEZpZWxkQ29tcG9uZW50LFxyXG4gICAgQ2hlY2tib3hDb21wb25lbnQsXHJcbiAgICBNZW51Q2hpbGRSZXBvcnRDb21wb25lbnRcclxuICBdLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAgeyBwcm92aWRlOiBNQVRfRk9STV9GSUVMRF9ERUZBVUxUX09QVElPTlMsIHVzZVZhbHVlOiB7IGFwcGVyZWFuY2U6ICdvdXRsaW5lJyB9IH1cclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBc3BMaWJNb2R1bGUgeyB9Il19
253
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNwLWxpYi5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hc3AtbGliL3NyYy9saWIvYXNwLWxpYi5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFjLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNyRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3RELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQztBQUN6RixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRSxpRkFBaUY7QUFDakYsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDbkYsT0FBTyxFQUFpQyxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN4RixPQUFPLEVBQUUsV0FBVyxFQUFxQixtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzdFLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2xHLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDakUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM1RCxPQUFPLEVBQUUs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Q3JCLGNBQWM7d0JBQ2QsNEJBQTRCO3dCQUM1QixhQUFhO3dCQUNiLHVCQUF1Qjt3QkFDdkIsd0JBQXdCO3dCQUN4QixvQkFBb0I7cUJBQ3JCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLDBCQUEwQjt3QkFDMUIsY0FBYzt3QkFDZCxXQUFXO3dCQUNYLG1CQUFtQjt3QkFDbkIsa0JBQWtCO3dCQUNsQixjQUFjO3dCQUNkLGtCQUFrQjt3QkFDbEIsYUFBYTt3QkFDYixhQUFhO3dCQUNiLGlCQUFpQjt3QkFDakIsY0FBYzt3QkFDaEIsbUJBQW1CO3dCQUNqQixlQUFlO3dCQUNmLGFBQWE7d0JBQ2IsZ0JBQWdCO3dCQUNsQixnQkFBZ0I7d0JBQ2QsZUFBZTtxQkFDaEI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLGVBQWU7d0JBQ2YsYUFBYTt3QkFDYix3QkFBd0I7d0JBQ3hCLGlCQUFpQjt3QkFDakIsc0JBQXNCO3dCQUN0QixvQkFBb0I7d0JBQ3BCLGNBQWM7d0JBQ2QsZUFBZTt3QkFDZixvQkFBb0I7d0JBQ3BCLGVBQWU7d0JBQ2Ysd0JBQXdCO3dCQUN4QixzQkFBc0I7d0JBQ3RCLHdCQUF3Qjt3QkFDeEIscUJBQXFCO3dCQUNyQixtQkFBbUI7d0JBQ25CLGtCQUFrQjt3QkFDbEIsaUJBQWlCO3dCQUNqQixzQkFBc0I7d0JBQ3RCLHNCQUFzQjt3QkFDdEIsaUJBQWlCO3dCQUNqQix3QkFBd0I7cUJBQ3pCO29CQUNELFNBQVMsRUFBRTt3QkFDVCxFQUFFLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxRQUFRLEVBQUUsRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLEVBQUU7cUJBQ2pGO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZm9yd2FyZFJlZiwgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQXNwTGliQ29tcG9uZW50IH0gZnJvbSAnLi9hc3AtbGliLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE1lbnVDb21wb25lbnQgfSBmcm9tICcuL21lbnUvbWVudS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBBcHBsaWNhdGlvbk1lbnVDb21wb25lbnQgfSBmcm9tICcuL2FwcGxpY2F0aW9uLW1lbnUvYXBwbGljYXRpb24tbWVudS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBEcm9wZG93bkNvbXBvbmVudCB9IGZyb20gJy4vZHJvcGRvd24vZHJvcGRvd24uY29tcG9uZW50JztcclxuLy9pbXBvcnQgeyBCcm93c2VyQW5pbWF0aW9uc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXIvYW5pbWF0aW9ucyc7XHJcbmltcG9ydCB7IFNlY3VyaXR5QWRtaW5Db21wb25lbnQgfSBmcm9tICcuL3NlY3VyaXR5LWFkbWluL3NlY3VyaXR5LWFkbWluLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE1hdFJhZGlvQnV0dG9uLCBNYXRSYWRpb0dyb3VwLCBNYXRSYWRpb01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3JhZGlvJztcclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIE5HX1ZBTFVFX0FDQ0VTU09SLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBJdGVtc1ZpZXdlckNvbXBvbmVudCB9IGZyb20gJy4vaXRlbXMtdmlld2VyL2l0ZW1zLXZpZXdlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBNQVRfRk9STV9GSUVMRF9ERUZBVUxUX09QVElPTlMsIE1hdEZvcm1GaWVsZE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGQnO1xyXG5pbXBvcnQgeyBNYXRJbnB1dE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2lucHV0JztcclxuaW1wb3J0IHsgSW5wdXRDb21wb25lbnQgfSBmcm9tICcuL2lucHV0L2lucHV0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE1hdFBhZ2luYXRvck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3BhZ2luYXRvcic7XHJcbmltcG9ydCB7IE1hdFRhYnNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90YWJzJztcclxuaW1wb3J0IHsgU2VsZWN0Q29tcG9uZW50IH0gZnJvbSAnLi9zZWxlY3Qvc2VsZWN0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE1hdE1lbnVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9tZW51JztcclxuaW1wb3J0IHsgTWF0Q2hlY2tib3hNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jaGVja2JveCc7XHJcbmltcG9ydCB7IEVudGl0eUFkbWluQ29tcG9uZW50IH0gZnJvbSAnLi9lbnRpdHktYWRtaW4vZW50aXR5LWFkbWluLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEhlYWRlckNvbXBvbmVudCB9IGZyb20gJy4vaGVhZGVyL2hlYWRlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBSZWNlbnRzRHJvcGRvd25Db21wb25lbnQgfSBmcm9tICcuL3JlY2VudHMtZHJvcGRvd24vcmVjZW50cy1kcm9wZG93bi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBOb3RpZmljYXRpb25zQ29tcG9uZW50IH0gZnJvbSAnLi9ub3RpZmljYXRpb25zL25vdGlmaWNhdGlvbnMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ29tcGFueURyb3Bkb3duQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wYW55LWRyb3Bkb3duL2NvbXBhbnktZHJvcGRvd24uY29tcG9uZW50JztcclxuaW1wb3J0IHsgVXNlckRyb3Bkb3duQ29tcG9uZW50IH0gZnJvbSAnLi91c2VyLWRyb3Bkb3duL3VzZXItZHJvcGRvd24uY29tcG9uZW50JztcclxuaW1wb3J0IHsgUmFkaW9Hcm91cENvbXBvbmVudCB9IGZyb20gJy4vcmFkaW8tZ3JvdXAvcmFkaW8tZ3JvdXAuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQmFzaWNJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9iYXNpYy1pdGVtL2Jhc2ljLWl0ZW0uY29tcG9uZW50JztcclxuaW1wb3J0IHsgUm9sZUNhcmRDb21wb25lbnQgfSBmcm9tICcuL3JvbGUtY2FyZC9yb2xlLWNhcmQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgSXRlbXNTZWxlY3RvckNvbXBvbmVudCB9IGZyb20gJy4vaXRlbXMtc2VsZWN0b3IvaXRlbXMtc2VsZWN0b3IuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ2hlY2tib3hDb21wb25lbnQgfSBmcm9tICcuL2NoZWNrYm94L2NoZWNrYm94LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENoZWNrYm94RmllbGRDb21wb25lbnQgfSBmcm9tICcuL2NoZWNrYm94LWZpZWxkL2NoZWNrYm94LWZpZWxkLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENka0RyYWcsIENka0Ryb3BMaXN0R3JvdXAsIENka0Ryb3BMaXN0LCBEcmFnRHJvcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9kcmFnLWRyb3AnO1xyXG5pbXBvcnQgeyBGb3JtQ29tcG9uZW50IH0gZnJvbSAnLi9mb3JtL2Zvcm0uY29tcG9uZW50JztcclxuaW1wb3J0IHsgUmVzb3VyY2VBY3Rpb25zQ29tcG9uZW50IH0gZnJvbSAnLi9yZXNvdXJjZS1hY3Rpb25zL3Jlc291cmNlLWFjdGlvbnMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTWF0RGlhbG9nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcclxuaW1wb3J0IHsgQXNzaWduUm9sZXNDb21wb25lbnQgfSBmcm9tICcuL2Fzc2lnbi1yb2xlcy9hc3NpZ24tcm9sZXMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgUm9sZUluZm9Db21wb25lbnQgfSBmcm9tICcuL3JvbGUtaW5mby9yb2xlLWluZm8uY29tcG9uZW50JztcclxuaW1wb3J0IHsgTWVudUFkbWluQ29tcG9uZW50IH0gZnJvbSAnLi9tZW51LWFkbWluL21lbnUtYWRtaW4uY29tcG9uZW50JztcclxuaW1wb3J0IHtNYXRUcmVlTW9kdWxlfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90cmVlJ1xyXG5pbXBvcnQgeyBIdHRwQ2xpZW50TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBMb2FkZXJDb21wb25lbnQgfSBmcm9tICcuL2xvYWRlci9sb2FkZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU25hY2tiYXJDb21wb25lbnQgfSBmcm9tICcuL3NuYWNrYmFyL3NuYWNrYmFyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFJhZGlvQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi9yYWRpby1idXR0b24vcmFkaW8tYnV0dG9uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE1lbnVDaGlsZFJlcG9ydENvbXBvbmVudCB9IGZyb20gJy4vbWVudS9tZW51LWNoaWxkLXJlcG9ydC9tZW51LWNoaWxkLXJlcG9ydC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBUcmVlQ29tcG9uZW50IH0gZnJvbSAnLi90cmVlL3RyZWUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTXVsdGlPcHRpb25EaWFsb2dDb21wb25lbnQgfSBmcm9tICcuL211bHRpLW9wdGlvbi1kaWFsb2cvbXVsdGktb3B0aW9uLWRpYWxvZy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBNb3ZlTWVudU9wdGlvbkNvbXBvbmVudCB9IGZyb20gJy4vbW92ZS1tZW51LW9wdGlvbi9tb3ZlLW1lbnUtb3B0aW9uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IExpc3RDb21wb25lbnQgfSBmcm9tICcuL2xpc3QvbGlzdC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBNYXRUb29sdGlwTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbHRpcCc7XHJcbmltcG9ydCB7IE1vZHVsZXNBZG1pbkNvbXBvbmVudCB9IGZyb20gJy4vbW9kdWxlcy1hZG1pbi9tb2R1bGVzLWFkbWluLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEZvcm0yQ29tcG9uZW50IH0gZnJvbSAnLi9mb3JtLTIvZm9ybS0yLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEFuZ3VsYXJFZGl0b3JNb2R1bGUgfSBmcm9tICdAa29sa292L2FuZ3VsYXItZWRpdG9yJztcclxuaW1wb3J0IHsgTmVzdGVkSXRlbXNTZWxlY3RvckNvbXBvbmVudCB9IGZyb20gJy4vbmVzdGVkLWl0ZW1zLXNlbGVjdG9yL25lc3RlZC1pdGVtcy1zZWxlY3Rvci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBUcmFuc2xhdGVQaXBlIH0gZnJvbSAnLi9waXBlcy90cmFuc2xhdGUucGlwZSc7XHJcbmltcG9ydCB7IENoYW5nZVBhc3N3b3JkQ29tcG9uZW50IH0gZnJvbSAnLi9jaGFuZ2UtcGFzc3dvcmQvY2hhbmdlLXBhc3N3b3JkLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE1hdFNlbGVjdE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NlbGVjdCc7XHJcbmltcG9ydCB7IFJvbGVNZW51T3B0aW9uc0NvbXBvbmVudCB9IGZyb20gJy4vcm9sZS1tZW51LW9wdGlvbnMvcm9sZS1tZW51LW9wdGlvbnMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRGlhbG9nQWxlcnRDb21wb25lbnQgfSBmcm9tICcuL2RpYWxvZy1hbGVydC9kaWFsb2ctYWxlcnQuY29tcG9uZW50JztcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgZGVjbGFyYXRpb25zOiBbXHJcbiAgICBBc3BMaWJDb21wb25lbnQsXHJcbiAgICBNZW51Q29tcG9uZW50LFxyXG4gICAgQXBwbGljYXRpb25NZW51Q29tcG9uZW50LFxyXG4gICAgRHJvcGRvd25Db21wb25lbnQsXHJcbiAgICBTZWN1cml0eUFkbWluQ29tcG9uZW50LFxyXG4gICAgSXRlbXNWaWV3ZXJDb21wb25lbnQsXHJcbiAgICBJbnB1dENvbXBvbmVudCxcclxuICAgIFNlbGVjdENvbXBvbmVudCxcclxuICAgIEVudGl0eUFkbWluQ29tcG9uZW50LFxyXG4gICAgSGVhZGVyQ29tcG9uZW50LFxyXG4gICAgUmVjZW50c0Ryb3Bkb3duQ29tcG9uZW50LFxyXG4gICAgTm90aWZpY2F0aW9uc0NvbXBvbmVudCxcclxuICAgIENvbXBhbnlEcm9wZG93bkNvbXBvbmVudCxcclxuICAgIFVzZXJEcm9wZG93bkNvbXBvbmVudCxcclxuICAgIFJhZGlvR3JvdXBDb21wb25lbnQsXHJcbiAgICBCYXNpY0l0ZW1Db21wb25lbnQsXHJcbiAgICBSb2xlQ2FyZENvbXBvbmVudCxcclxuICAgIEl0ZW1zU2VsZWN0b3JDb21wb25lbnQsXHJcbiAgICBDaGVja2JveENvbXBvbmVudCxcclxuICAgIENoZWNrYm94RmllbGRDb21wb25lbnQsXHJcbiAgICBGb3JtQ29tcG9uZW50LFxyXG4gICAgUmVzb3VyY2VBY3Rpb25zQ29tcG9uZW50LFxyXG4gICAgQXNzaWduUm9sZXNDb21wb25lbnQsXHJcbiAgICBSb2xlSW5mb0NvbXBvbmVudCxcclxuICAgIE1lbnVBZG1pbkNvbXBvbmVudCxcclxuICAgIExvYWRlckNvbXBvbmVudCxcclxuICAgIFNuYWNrYmFyQ29tcG9uZW50LFxyXG4gICAgUmFkaW9CdXR0b25Db21wb25lbnQsXHJcbiAgICBNZW51Q2hpbGRSZXBvcnRDb21wb25lbnQsXHJcbiAgICBUcmVlQ29tcG9uZW50LFxyXG4gICAgTXVsdGlPcHRpb25EaWFsb2dDb21wb25lbnQsXHJcbiAgICBNb3ZlTWVudU9wdGlvbkNvbXBvbmVudCxcclxuICAgIExpc3RDb21wb25lbnQsXHJcbiAgICBNb2R1bGVzQWRtaW5Db21wb25lbnQsXHJcbiAgICBGb3JtMkNvbXBvbmVudCxcclxuICAgIE5lc3RlZEl0ZW1zU2VsZWN0b3JDb21wb25lbnQsXHJcbiAgICBUcmFuc2xhdGVQaXBlLFxyXG4gICAgQ2hhbmdlUGFzc3dvcmRDb21wb25lbnQsXHJcbiAgICBSb2xlTWVudU9wdGlvbnNDb21wb25lbnQsXHJcbiAgICBEaWFsb2dBbGVydENvbXBvbmVudFxyXG4gIF0sXHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgLy9Ccm93c2VyQW5pbWF0aW9uc01vZHVsZSxcclxuICAgIE1hdFJhZGlvTW9kdWxlLFxyXG4gICAgRm9ybXNNb2R1bGUsXHJcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxyXG4gICAgTWF0Rm9ybUZpZWxkTW9kdWxlLFxyXG4gICAgTWF0SW5wdXRNb2R1bGUsXHJcbiAgICBNYXRQYWdpbmF0b3JNb2R1bGUsXHJcbiAgICBNYXRUYWJzTW9kdWxlLFxyXG4gICAgTWF0TWVudU1vZHVsZSxcclxuICAgIE1hdENoZWNrYm94TW9kdWxlLFxyXG4gICAgRHJhZ0Ryb3BNb2R1bGUsXHJcblx0XHRBbmd1bGFyRWRpdG9yTW9kdWxlLFxyXG4gICAgTWF0RGlhbG9nTW9kdWxlLFxyXG4gICAgTWF0VHJlZU1vZHVsZSxcclxuICAgIEh0dHBDbGllbnRNb2R1bGUsXHJcblx0XHRNYXRUb29sdGlwTW9kdWxlLFxyXG4gICAgTWF0U2VsZWN0TW9kdWxlXHJcbiAgXSxcclxuICBleHBvcnRzOiBbXHJcbiAgICBBc3BMaWJDb21wb25lbnQsXHJcbiAgICBNZW51Q29tcG9uZW50LFxyXG4gICAgQXBwbGljYXRpb25NZW51Q29tcG9uZW50LFxyXG4gICAgRHJvcGRvd25Db21wb25lbnQsXHJcbiAgICBTZWN1cml0eUFkbWluQ29tcG9uZW50LFxyXG4gICAgSXRlbXNWaWV3ZXJDb21wb25lbnQsXHJcbiAgICBJbnB1dENvbXBvbmVudCxcclxuICAgIFNlbGVjdENvbXBvbmVudCxcclxuICAgIEVudGl0eUFkbWluQ29tcG9uZW50LFxyXG4gICAgSGVhZGVyQ29tcG9uZW50LFxyXG4gICAgUmVjZW50c0Ryb3Bkb3duQ29tcG9uZW50LFxyXG4gICAgTm90aWZpY2F0aW9uc0NvbXBvbmVudCxcclxuICAgIENvbXBhbnlEcm9wZG93bkNvbXBvbmVudCxcclxuICAgIFVzZXJEcm9wZG93bkNvbXBvbmVudCxcclxuICAgIFJhZGlvR3JvdXBDb21wb25lbnQsXHJcbiAgICBCYXNpY0l0ZW1Db21wb25lbnQsXHJcbiAgICBSb2xlQ2FyZENvbXBvbmVudCxcclxuICAgIEl0ZW1zU2VsZWN0b3JDb21wb25lbnQsXHJcbiAgICBDaGVja2JveEZpZWxkQ29tcG9uZW50LFxyXG4gICAgQ2hlY2tib3hDb21wb25lbnQsXHJcbiAgICBNZW51Q2hpbGRSZXBvcnRDb21wb25lbnRcclxuICBdLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAgeyBwcm92aWRlOiBNQVRfRk9STV9GSUVMRF9ERUZBVUxUX09QVElPTlMsIHVzZVZhbHVlOiB7IGFwcGVyZWFuY2U6ICdvdXRsaW5lJyB9IH1cclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBc3BMaWJNb2R1bGUgeyB9XHJcbiJdfQ==
@@ -1,109 +1,148 @@
1
1
  import { Component, Inject } from '@angular/core';
2
2
  import { MAT_DIALOG_DATA } from '@angular/material/dialog';
3
- import { FormControl } from '@angular/forms';
3
+ import { FormControl, Validators } from '@angular/forms';
4
4
  import { FormGroup } from '@angular/forms';
5
+ import { PasswordValidator } from '../helpers/password-validator';
6
+ import { MustMatch } from '../helpers/must-match';
5
7
  import * as i0 from "@angular/core";
6
8
  import * as i1 from "@angular/material/dialog";
7
9
  import * as i2 from "../utils/services/SecurityServicesDefault";
8
- import * as i3 from "@angular/common";
9
- import * as i4 from "../form/form.component";
10
- import * as i5 from "../loader/loader.component";
10
+ import * as i3 from "../services/dialog.service";
11
+ import * as i4 from "@angular/common";
12
+ import * as i5 from "@angular/forms";
13
+ import * as i6 from "../loader/loader.component";
11
14
  export class ChangePasswordComponent {
12
- constructor(dialogRef, data, services) {
15
+ constructor(dialogRef, data, securityServices, dialogServices) {
13
16
  this.dialogRef = dialogRef;
14
17
  this.data = data;
15
- this.services = services;
18
+ this.securityServices = securityServices;
19
+ this.dialogServices = dialogServices;
16
20
  this.theme = 'brasilia';
17
- this.changePasswordForm = [
18
- { label: 'Contraseña', name: 'password', type: 'text', style: { "grid-column": "span 4" }, inputType: 'password' },
19
- { label: 'Nueva Contraseña', name: 'newpassword', type: 'text', style: { "grid-column": "span 4" }, inputType: 'password' },
20
- { label: 'Confirmar Contraseña', name: 'newpassword2', type: 'text', style: { "grid-column": "span 4" }, inputType: 'password' }
21
- ];
22
- this.formControls = {};
23
- this.formErrors = {};
24
- this.formTitle = 'Nueva Contraseña';
21
+ this.changePasswordFormGroup = new FormGroup({
22
+ oldPassword: new FormControl('', [Validators.required]),
23
+ newPassword: new FormControl('', [Validators.required, Validators.minLength(8), PasswordValidator()]),
24
+ confirmNewPassword: new FormControl('', [Validators.required])
25
+ }, {
26
+ validators: MustMatch('newPassword', 'confirmNewPassword')
27
+ });
28
+ this.oldPasswordVisibility = "password";
29
+ this.newPasswordVisibility = "password";
30
+ this.confirmNewPasswordVisibility = "password";
31
+ this.oldPasswordInvalid = false;
32
+ this.newPasswordValid = false;
33
+ this.confirmNewPasswordValid = false;
25
34
  this.baseUrl = '';
26
35
  this.loading = false;
27
36
  this.errorMessage = null;
28
37
  this.successMessage = null;
29
- this.formControls = this.changePasswordForm.reduce((object, field) => ({ ...object, [field.name]: new FormControl(field.defaultValue ?? null) }), {});
30
- this.formGroup = new FormGroup(this.formControls, { validators: changePasswordValidator });
31
- this.formGroup.valueChanges.subscribe(() => {
32
- this.formErrors = this.formGroup.errors;
33
- this.errorMessage = null;
34
- });
35
38
  this.baseUrl = data.baseUrl;
36
39
  }
37
40
  onClose() {
38
41
  this.dialogRef.close();
39
42
  }
40
- saveItem() {
41
- this.formErrors = this.formGroup.errors;
42
- this.errorMessage = null;
43
- this.successMessage = null;
44
- if (this.formGroup.valid) {
45
- const password = this.formGroup.get('password')?.value;
46
- const newPassword = this.formGroup.get('newpassword')?.value;
47
- let cp = {
48
- password: password,
49
- newPassword: newPassword
50
- };
51
- this.loading = true;
52
- this.services.changePassword(this.baseUrl, cp).subscribe((data) => {
53
- if (data) {
54
- if (data.responseCode == 200) {
55
- if (data.load) {
56
- this.errorMessage = null;
57
- this.successMessage = 'Contraseña Actualizada';
58
- }
59
- }
60
- else if (data.responseCode == 206) {
61
- this.errorMessage = 'Contraseña Incorrecta';
62
- this.successMessage = null;
63
- }
64
- else {
65
- this.errorMessage = 'Ha Ocurrido un Error';
66
- this.successMessage = null;
67
- }
68
- }
69
- else {
70
- this.errorMessage = 'Ha Ocurrido un Error';
71
- this.successMessage = null;
72
- }
73
- this.loading = false;
74
- }, (err) => {
75
- console.log(err);
76
- this.loading = false;
77
- });
43
+ hasNewPasswordError() {
44
+ let passwordForm = this.changePasswordFormGroup.get("newPassword");
45
+ if (passwordForm == null)
46
+ return false;
47
+ if (!passwordForm.touched)
48
+ return false;
49
+ if (!passwordForm.value) {
50
+ this.newPasswordValid = false;
51
+ return true;
52
+ }
53
+ if (passwordForm.hasError("minlength") && passwordForm.hasError("passwordValidator")) {
54
+ this.newPasswordValid = false;
55
+ return true;
56
+ }
57
+ if (passwordForm.hasError("minlength")) {
58
+ this.newPasswordValid = false;
59
+ return true;
60
+ }
61
+ if (passwordForm.hasError("passwordValidator")) {
62
+ this.newPasswordValid = false;
63
+ return true;
64
+ }
65
+ this.newPasswordValid = true;
66
+ return false;
67
+ }
68
+ hasConfirmNewPasswordError() {
69
+ let newPasswordForm = this.changePasswordFormGroup.get("newPassword");
70
+ let confirmNewPasswordForm = this.changePasswordFormGroup.get("confirmNewPassword");
71
+ if (newPasswordForm == null || confirmNewPasswordForm == null)
72
+ return false;
73
+ if (!confirmNewPasswordForm.dirty)
74
+ return false;
75
+ if (!confirmNewPasswordForm.value) {
76
+ if (newPasswordForm.value && newPasswordForm.value.length) {
77
+ this.confirmNewPasswordValid = false;
78
+ return true;
79
+ }
80
+ return false;
78
81
  }
79
- else {
82
+ if (confirmNewPasswordForm.hasError("mustMatch")) {
83
+ this.confirmNewPasswordValid = false;
84
+ return true;
80
85
  }
86
+ this.confirmNewPasswordValid = true;
87
+ return false;
81
88
  }
82
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ChangePasswordComponent, deps: [{ token: i1.MatDialogRef }, { token: MAT_DIALOG_DATA }, { token: i2.SecurityServices }], target: i0.ɵɵFactoryTarget.Component }); }
83
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ChangePasswordComponent, selector: "lib-change-password", ngImport: i0, template: "<div [attr.data-theme]=\"theme\" class=\"dialog-header\">\n\t<div class=\"title-container\">\n\t\t<i class=\"menu-gear\"></i>\n\t\t<div class=\"title\">\n\t\t\t<span class=\"title-label\">Cambio de Contrase\u00F1a</span>\n\t\t</div>\n\t</div>\n\t<div class=\"buttons-container\">\n\t\t<button class=\"ghost\" (click)=\"onClose()\"><i class=\"menu-close\"></i></button>\n\t</div>\n</div>\n<div [attr.data-theme]=\"theme\" class=\"dialog-content\">\n <lib-form [form]=\"changePasswordForm\" [formControls]=\"formControls\"\n\t\t\t\t\t[theme]=\"theme\" [title]=\"formTitle\" icon=\"menu-edit\" (saveClick)=\"saveItem()\"\n\t\t\t\t\t></lib-form>\n\t<div class=\"messagesContainer\">\n\t\t<div *ngIf=\"successMessage\" class=\"success\">{{successMessage}}</div>\n\t\t<div *ngIf=\"errorMessage\" class=\"error\">{{errorMessage}}</div>\n\t\t<div *ngIf=\"formErrors?.required\" class=\"error\">\n\t\t\t{{ formErrors.required }}\n\t\t</div>\t\t \n\t\t<div *ngIf=\"formErrors?.minLength\" class=\"error\">\n\t\t\t{{ formErrors.minLength }}\n\t\t</div>\t\t \n\t\t<div *ngIf=\"formErrors?.passwordMismatch\" class=\"error\">\n\t\t\t{{ formErrors.passwordMismatch }}\n\t\t</div>\n\t</div>\n\t\n</div>\n\n<lib-loader [theme]=\"theme\" type=\"bar\" [loading]=\"loading\"></lib-loader>", styles: [":host{max-height:calc(100vh - 160px);min-width:25%;height:480px;padding:20px;display:flex;flex-direction:column;gap:8px;font-size:14px;background-color:var(--white-background)}:host button{padding:0 20px;height:36px;border-radius:4px;background-color:transparent;border:solid 1px var(--secondary-btn);color:var(--secondary-btn);font-weight:700;cursor:pointer;outline:none}:host button.primary{background-color:var(--primary-btn-background);color:var(--primary-btn-color);border:none}:host button.ghost{background-color:transparent;border:none;padding:0}.assigned-area-label{color:var(--inactive-input);font-weight:500;min-height:40px;display:flex;align-items:center;padding:0 12px}.assigned-area{display:flex;flex-direction:column;overflow:auto;min-width:390px;max-width:390px}.dropped-items-area{display:flex;flex-direction:column;width:100%;gap:8px;border-radius:8px;background-color:var(--gray-background);padding:12px;height:100%;overflow:auto}.drop-area-container{display:flex;width:100%;padding:0}.drop-area{position:relative;display:flex;align-items:center;justify-content:center;color:var(--inactive-input);width:100%;height:44px;border:dashed 2px var(--inactive-input);border-radius:0}.drop-area.drop-area-hover{border-color:var(--selection-color)}.drop-area.drop-area-hover .drop-area-label{color:var(--selection-color)}.drop-items{display:flex;flex-direction:column;gap:8px;overflow:auto}.drop-list{position:absolute;top:0;left:0;display:flex;align-items:center;width:100%;height:100%;padding:0 12px}.available{display:flex;flex-direction:column;gap:4px;width:100%;min-width:390px;max-width:390px;overflow:auto;padding-top:8px}.title{display:flex;flex-direction:column}.title-label{font-size:14px}.title-name{font-size:16px;font-weight:700}.drag-items{display:flex;flex-direction:column;gap:8px;padding:0 4px;overflow:auto}.dialog-content{display:grid;grid-template-columns:1fr;gap:12px;overflow:auto;height:100%}.buttons-container{display:flex;align-items:center;gap:12px}.dialog-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.title-container{display:flex;align-items:center;font-size:18px;font-weight:500;color:var(--inactive-input);gap:12px;padding:0 12px}.messagesContainer{padding:0 36px;display:flex;flex-direction:column;align-items:center}.messagesContainer .success{color:green}.messagesContainer .error{color:red}.cdk-drag-preview{box-sizing:border-box;box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f;cursor:grabbing}.cdk-drag-placeholder{width:100%;opacity:0}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.FormComponent, selector: "lib-form", inputs: ["form", "formControls", "formActions", "theme", "title", "icon", "entityObject", "formType"], outputs: ["saveClick"] }, { kind: "component", type: i5.LoaderComponent, selector: "lib-loader", inputs: ["theme", "loading", "type"] }] }); }
89
+ saveItem() {
90
+ if (!this.changePasswordFormGroup.valid)
91
+ return;
92
+ this.loading = true;
93
+ const oldPassword = this.changePasswordFormGroup.get("oldPassword")?.value;
94
+ const newPassword = this.changePasswordFormGroup.get("newPassword")?.value;
95
+ let cp = {
96
+ password: oldPassword,
97
+ newPassword: newPassword
98
+ };
99
+ this.securityServices.changePassword(this.baseUrl, cp).subscribe((data) => {
100
+ this.loading = false;
101
+ if (data) {
102
+ switch (data.responseCode) {
103
+ case 200:
104
+ this.dialogServices.alert("", "¡Has cambiado la contraseña satisfactoriamente!", "success");
105
+ this.onClose();
106
+ break;
107
+ case 206:
108
+ this.oldPasswordInvalid = true;
109
+ break;
110
+ case 213:
111
+ this.dialogServices.alert("¡Upss!", "Esta contraseña fue usada previamente. Escriba una contraseña diferente.", "error");
112
+ break;
113
+ default:
114
+ this.dialogServices.alert("¡Upss!", "Ha ocurrido un error", "error");
115
+ }
116
+ }
117
+ else
118
+ this.dialogServices.alert("¡Upss!", "Ha ocurrido un error", "error");
119
+ }, (error) => {
120
+ this.dialogServices.alert("¡Upss!", error.message, "error");
121
+ this.loading = false;
122
+ });
123
+ }
124
+ clearInvalidPasswordError() {
125
+ this.oldPasswordInvalid = false;
126
+ }
127
+ toggleOldPasswordVisibility(value) {
128
+ this.oldPasswordVisibility = value ? "text" : "password";
129
+ }
130
+ toggleNewPasswordVisibility(value) {
131
+ this.newPasswordVisibility = value ? "text" : "password";
132
+ }
133
+ toggleConfirmNewPasswordVisibility(value) {
134
+ this.confirmNewPasswordVisibility = value ? "text" : "password";
135
+ }
136
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ChangePasswordComponent, deps: [{ token: i1.MatDialogRef }, { token: MAT_DIALOG_DATA }, { token: i2.SecurityServices }, { token: i3.DialogService }], target: i0.ɵɵFactoryTarget.Component }); }
137
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ChangePasswordComponent, selector: "lib-change-password", host: { attributes: { "id": "change-password" } }, ngImport: i0, template: "<div [attr.data-theme]=\"theme\" class=\"dialog-header\">\r\n\t<div class=\"buttons-container\">\r\n\t\t<button class=\"ghost\" (click)=\"onClose()\"><i class=\"menu-close\"></i></button>\r\n\t</div>\r\n\t<div class=\"title-container\">\r\n\t\t<div class=\"title\">\r\n\t\t\t<span class=\"title-label\">Cambio de Contrase&ntilde;a</span>\r\n\t\t\t<span class=\"title-description\">\r\n\t\t\t\tPor seguridad debe cambiar la contrase&ntilde;a peri&oacute;dicamente<br />\r\n\t\t\t\t(Cada 3 meses el sistema le solicitar&aacute; el cambio)\r\n\t\t\t</span>\r\n\t\t</div>\r\n\t</div>\r\n</div>\r\n<div [attr.data-theme]=\"theme\" class=\"dialog-content\">\r\n\t<form [formGroup]=\"changePasswordFormGroup\"\r\n\t\t\t\t(ngSubmit)=\"saveItem()\"\r\n\t\t\t\tclass=\"change-password-input-container\">\r\n\t\t<div class=\"change-password-input\">\r\n\t\t\t<input formControlName=\"oldPassword\"\r\n\t\t\t\t\t\t [type]=\"oldPasswordVisibility\"\r\n\t\t\t\t\t\t (input)=\"clearInvalidPasswordError()\"\r\n\t\t\t\t\t\t placeholder=\"Contrase\u00F1a actual\" />\r\n\t\t\t<div class=\"change-password-input-icon\">\r\n\t\t\t\t<ng-container *ngIf=\"oldPasswordVisibility === 'password'\">\r\n\t\t\t\t\t<img src=\"../assets/icons/show_password_visibility_icon.svg\" alt=\"show\" (click)=\"toggleOldPasswordVisibility(true)\" />\r\n\t\t\t\t</ng-container>\r\n\t\t\t\t<ng-container *ngIf=\"oldPasswordVisibility === 'text'\">\r\n\t\t\t\t\t<img class=\"hide-password-visibility-button\" src=\"../assets/icons/hide_password_visibility_icon.svg\" alt=\"hide\" (click)=\"toggleOldPasswordVisibility(false)\" />\r\n\t\t\t\t</ng-container>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t\t<div class=\"password-description password-error\" *ngIf=\"oldPasswordInvalid\">\r\n\t\t\tContrase&ntilde;a incorrecta, por favor intente de nuevo.\r\n\t\t</div>\r\n\t\t<div class=\"change-password-input\">\r\n\t\t\t<input formControlName=\"newPassword\"\r\n\t\t\t\t\t\t [type]=\"newPasswordVisibility\"\r\n\t\t\t\t\t\t placeholder=\"Nueva Contrase\u00F1a\" />\r\n\t\t\t<div class=\"change-password-input-icon\">\r\n\t\t\t\t<ng-container *ngIf=\"newPasswordVisibility === 'password'\">\r\n\t\t\t\t\t<div *ngIf=\"hasNewPasswordError()\" class=\"change-password-wrong\" (click)=\"toggleNewPasswordVisibility(true)\">x</div>\r\n\t\t\t\t\t<ng-container *ngIf=\"!hasNewPasswordError()\">\r\n\t\t\t\t\t\t<div *ngIf=\"newPasswordValid\" class=\"change-password-correct\" (click)=\"toggleNewPasswordVisibility(true)\">&#10003;</div>\r\n\t\t\t\t\t\t<img *ngIf=\"!newPasswordValid\" src=\"../assets/icons/show_password_visibility_icon.svg\" alt=\"show\" (click)=\"toggleNewPasswordVisibility(true)\" />\r\n\t\t\t\t\t</ng-container>\r\n\t\t\t\t</ng-container>\r\n\t\t\t\t<ng-container *ngIf=\"newPasswordVisibility === 'text'\">\r\n\t\t\t\t\t<img class=\"hide-password-visibility-button\" src=\"../assets/icons/hide_password_visibility_icon.svg\" alt=\"hide\" (click)=\"toggleNewPasswordVisibility(false)\" />\r\n\t\t\t\t</ng-container>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t\t<div class=\"password-description\" [class.password-error]=\"hasNewPasswordError()\">\r\n\t\t\t* M&iacute;nimo 8 caracteres, may&uacute;sculas, min&uacute;sculas, n&uacute;meros, use caracteres especiales. Ej: @#$& (Obligatorio)\r\n\t\t</div>\r\n\t\t<div class=\"change-password-input\">\r\n\t\t\t<input formControlName=\"confirmNewPassword\"\r\n\t\t\t\t\t\t [type]=\"confirmNewPasswordVisibility\"\r\n\t\t\t\t\t\t placeholder=\"Confirmar Contrase\u00F1a\" />\r\n\t\t\t<div class=\"change-password-input-icon\">\r\n\t\t\t\t<ng-container *ngIf=\"confirmNewPasswordVisibility === 'password'\">\r\n\t\t\t\t\t<div *ngIf=\"hasConfirmNewPasswordError()\" class=\"change-password-wrong\" (click)=\"toggleConfirmNewPasswordVisibility(true)\">x</div>\r\n\t\t\t\t\t<ng-container *ngIf=\"!hasConfirmNewPasswordError()\">\r\n\t\t\t\t\t\t<div *ngIf=\"confirmNewPasswordValid\" class=\"change-password-correct\" (click)=\"toggleConfirmNewPasswordVisibility(true)\">&#10003;</div>\r\n\t\t\t\t\t\t<img *ngIf=\"!confirmNewPasswordValid\" src=\"../assets/icons/show_password_visibility_icon.svg\" alt=\"show\" (click)=\"toggleConfirmNewPasswordVisibility(true)\" />\r\n\t\t\t\t\t</ng-container>\r\n\t\t\t\t</ng-container>\r\n\t\t\t\t<ng-container *ngIf=\"confirmNewPasswordVisibility === 'text'\">\r\n\t\t\t\t\t<img class=\"hide-password-visibility-button\" src=\"../assets/icons/hide_password_visibility_icon.svg\" alt=\"hide\" (click)=\"toggleConfirmNewPasswordVisibility(false)\" />\r\n\t\t\t\t</ng-container>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t\t<div class=\"password-description password-error\" *ngIf=\"hasConfirmNewPasswordError()\">\r\n\t\t\tLas contrase&ntilde;a no coinciden, por favor corrija.\r\n\t\t</div>\r\n\t</form>\r\n\t<button class=\"change-password-btn\" [disabled]=\"!changePasswordFormGroup.valid || loading\" (click)=\"saveItem()\">Cambiar Contrase&ntilde;a</button>\r\n</div>\r\n\r\n<lib-loader [theme]=\"theme\" type=\"bar\" [loading]=\"loading\"></lib-loader>\r\n", styles: [":host{max-height:calc(100vh - 160px);min-width:25%;padding:20px;display:flex;flex-direction:column;gap:8px;font-size:14px;background-color:var(--white-background)}:host button{padding:0 20px;height:36px;border-radius:4px;background-color:transparent;border:solid 1px var(--secondary-btn);color:var(--secondary-btn);font-weight:500;cursor:pointer;outline:none}:host button.primary{background-color:var(--primary-btn-background);color:var(--primary-btn-color);border:none}:host button.ghost{background-color:transparent;border:none;padding:0}.assigned-area-label{color:var(--inactive-input);font-weight:500;min-height:40px;display:flex;align-items:center;padding:0 12px}.assigned-area{display:flex;flex-direction:column;overflow:auto;min-width:390px;max-width:390px}.dropped-items-area{display:flex;flex-direction:column;width:100%;gap:8px;border-radius:8px;background-color:var(--gray-background);padding:12px;height:100%;overflow:auto}.drop-area-container{display:flex;width:100%;padding:0}.drop-area{position:relative;display:flex;align-items:center;justify-content:center;color:var(--inactive-input);width:100%;height:44px;border:dashed 2px var(--inactive-input);border-radius:0}.drop-area.drop-area-hover{border-color:var(--selection-color)}.drop-area.drop-area-hover .drop-area-label{color:var(--selection-color)}.drop-items{display:flex;flex-direction:column;gap:8px;overflow:auto}.drop-list{position:absolute;top:0;left:0;display:flex;align-items:center;width:100%;height:100%;padding:0 12px}.available{display:flex;flex-direction:column;gap:4px;width:100%;min-width:390px;max-width:390px;overflow:auto;padding-top:8px}.title{display:flex;flex-direction:column}.title-label{font-size:1.8rem!important;color:#024496;font-weight:700;text-align:center}.title-name{font-size:16px;font-weight:700}.title-description{color:#005bcc;font-size:13px;white-space:nowrap;text-align:center;margin-bottom:10px}.drag-items{display:flex;flex-direction:column;gap:8px;padding:0 4px;overflow:auto}.dialog-content{display:grid;grid-template-columns:1fr;gap:12px;overflow:auto;height:100%}.buttons-container{display:flex;width:100%;justify-content:flex-end;align-items:center;gap:12px}.buttons-container .menu-close{font-size:16px}.dialog-header{display:flex;flex-direction:column;align-items:center;justify-content:space-between}.title-container{display:flex;align-items:center;font-size:18px;font-weight:500;color:var(--inactive-input);gap:12px;padding:0 12px}.messagesContainer{padding:0 36px;display:flex;flex-direction:column;align-items:center}.messagesContainer .success{color:green}.messagesContainer .error{color:red}.cdk-drag-preview{box-sizing:border-box;box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f;cursor:grabbing}.cdk-drag-placeholder{width:100%;opacity:0}.change-password-input-container{display:flex;flex-direction:column;padding:0 30px}.change-password-input{display:flex!important;flex-direction:row!important;width:100%;background-color:#fafafa;color:#494949;height:2.813rem;border-radius:.722rem;padding-right:10px;margin:10px 0}.change-password-input input{border-radius:.722rem;background-color:#fafafa;color:#494949;align-self:flex-start;width:calc(100% - 30px);height:100%;border:unset;margin:0 10px}.change-password-input input:focus{outline:none}.change-password-input .change-password-input-icon{display:flex;flex-direction:column;align-items:center;justify-content:center}.change-password-input .change-password-input-icon img{cursor:pointer;width:85%}.change-password-input .change-password-input-icon .change-password-wrong,.change-password-input .change-password-input-icon .change-password-correct{border:2px solid #ff7979;color:#ff7979;border-radius:15px;min-width:17px;min-height:17px;width:17px;height:17px;line-height:11px;font-size:11px;font-weight:700;margin-right:2.5px;padding-left:1px;cursor:pointer;text-align:center}.change-password-input .change-password-input-icon .change-password-correct{border:2px solid #00ae2e!important;color:#00ae2e!important;line-height:13px!important;font-size:10px!important}.password-description{font-size:14px;margin-top:-5px;margin-left:2.5px;align-items:start!important;text-align:start;color:#bdb9b9;width:100%}.password-error{color:#ff7979}.change-password-btn{background-color:#024496!important;height:3.4rem!important;border-radius:.722rem!important;color:#fff!important;font-size:1rem;margin:0 30px}.change-password-btn:disabled{cursor:default!important;opacity:.5}\n"], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i5.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i5.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i6.LoaderComponent, selector: "lib-loader", inputs: ["theme", "loading", "type"] }] }); }
84
138
  }
85
139
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ChangePasswordComponent, decorators: [{
86
140
  type: Component,
87
- args: [{ selector: 'lib-change-password', template: "<div [attr.data-theme]=\"theme\" class=\"dialog-header\">\n\t<div class=\"title-container\">\n\t\t<i class=\"menu-gear\"></i>\n\t\t<div class=\"title\">\n\t\t\t<span class=\"title-label\">Cambio de Contrase\u00F1a</span>\n\t\t</div>\n\t</div>\n\t<div class=\"buttons-container\">\n\t\t<button class=\"ghost\" (click)=\"onClose()\"><i class=\"menu-close\"></i></button>\n\t</div>\n</div>\n<div [attr.data-theme]=\"theme\" class=\"dialog-content\">\n <lib-form [form]=\"changePasswordForm\" [formControls]=\"formControls\"\n\t\t\t\t\t[theme]=\"theme\" [title]=\"formTitle\" icon=\"menu-edit\" (saveClick)=\"saveItem()\"\n\t\t\t\t\t></lib-form>\n\t<div class=\"messagesContainer\">\n\t\t<div *ngIf=\"successMessage\" class=\"success\">{{successMessage}}</div>\n\t\t<div *ngIf=\"errorMessage\" class=\"error\">{{errorMessage}}</div>\n\t\t<div *ngIf=\"formErrors?.required\" class=\"error\">\n\t\t\t{{ formErrors.required }}\n\t\t</div>\t\t \n\t\t<div *ngIf=\"formErrors?.minLength\" class=\"error\">\n\t\t\t{{ formErrors.minLength }}\n\t\t</div>\t\t \n\t\t<div *ngIf=\"formErrors?.passwordMismatch\" class=\"error\">\n\t\t\t{{ formErrors.passwordMismatch }}\n\t\t</div>\n\t</div>\n\t\n</div>\n\n<lib-loader [theme]=\"theme\" type=\"bar\" [loading]=\"loading\"></lib-loader>", styles: [":host{max-height:calc(100vh - 160px);min-width:25%;height:480px;padding:20px;display:flex;flex-direction:column;gap:8px;font-size:14px;background-color:var(--white-background)}:host button{padding:0 20px;height:36px;border-radius:4px;background-color:transparent;border:solid 1px var(--secondary-btn);color:var(--secondary-btn);font-weight:700;cursor:pointer;outline:none}:host button.primary{background-color:var(--primary-btn-background);color:var(--primary-btn-color);border:none}:host button.ghost{background-color:transparent;border:none;padding:0}.assigned-area-label{color:var(--inactive-input);font-weight:500;min-height:40px;display:flex;align-items:center;padding:0 12px}.assigned-area{display:flex;flex-direction:column;overflow:auto;min-width:390px;max-width:390px}.dropped-items-area{display:flex;flex-direction:column;width:100%;gap:8px;border-radius:8px;background-color:var(--gray-background);padding:12px;height:100%;overflow:auto}.drop-area-container{display:flex;width:100%;padding:0}.drop-area{position:relative;display:flex;align-items:center;justify-content:center;color:var(--inactive-input);width:100%;height:44px;border:dashed 2px var(--inactive-input);border-radius:0}.drop-area.drop-area-hover{border-color:var(--selection-color)}.drop-area.drop-area-hover .drop-area-label{color:var(--selection-color)}.drop-items{display:flex;flex-direction:column;gap:8px;overflow:auto}.drop-list{position:absolute;top:0;left:0;display:flex;align-items:center;width:100%;height:100%;padding:0 12px}.available{display:flex;flex-direction:column;gap:4px;width:100%;min-width:390px;max-width:390px;overflow:auto;padding-top:8px}.title{display:flex;flex-direction:column}.title-label{font-size:14px}.title-name{font-size:16px;font-weight:700}.drag-items{display:flex;flex-direction:column;gap:8px;padding:0 4px;overflow:auto}.dialog-content{display:grid;grid-template-columns:1fr;gap:12px;overflow:auto;height:100%}.buttons-container{display:flex;align-items:center;gap:12px}.dialog-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.title-container{display:flex;align-items:center;font-size:18px;font-weight:500;color:var(--inactive-input);gap:12px;padding:0 12px}.messagesContainer{padding:0 36px;display:flex;flex-direction:column;align-items:center}.messagesContainer .success{color:green}.messagesContainer .error{color:red}.cdk-drag-preview{box-sizing:border-box;box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f;cursor:grabbing}.cdk-drag-placeholder{width:100%;opacity:0}\n"] }]
141
+ args: [{ selector: 'lib-change-password', host: {
142
+ 'id': 'change-password'
143
+ }, template: "<div [attr.data-theme]=\"theme\" class=\"dialog-header\">\r\n\t<div class=\"buttons-container\">\r\n\t\t<button class=\"ghost\" (click)=\"onClose()\"><i class=\"menu-close\"></i></button>\r\n\t</div>\r\n\t<div class=\"title-container\">\r\n\t\t<div class=\"title\">\r\n\t\t\t<span class=\"title-label\">Cambio de Contrase&ntilde;a</span>\r\n\t\t\t<span class=\"title-description\">\r\n\t\t\t\tPor seguridad debe cambiar la contrase&ntilde;a peri&oacute;dicamente<br />\r\n\t\t\t\t(Cada 3 meses el sistema le solicitar&aacute; el cambio)\r\n\t\t\t</span>\r\n\t\t</div>\r\n\t</div>\r\n</div>\r\n<div [attr.data-theme]=\"theme\" class=\"dialog-content\">\r\n\t<form [formGroup]=\"changePasswordFormGroup\"\r\n\t\t\t\t(ngSubmit)=\"saveItem()\"\r\n\t\t\t\tclass=\"change-password-input-container\">\r\n\t\t<div class=\"change-password-input\">\r\n\t\t\t<input formControlName=\"oldPassword\"\r\n\t\t\t\t\t\t [type]=\"oldPasswordVisibility\"\r\n\t\t\t\t\t\t (input)=\"clearInvalidPasswordError()\"\r\n\t\t\t\t\t\t placeholder=\"Contrase\u00F1a actual\" />\r\n\t\t\t<div class=\"change-password-input-icon\">\r\n\t\t\t\t<ng-container *ngIf=\"oldPasswordVisibility === 'password'\">\r\n\t\t\t\t\t<img src=\"../assets/icons/show_password_visibility_icon.svg\" alt=\"show\" (click)=\"toggleOldPasswordVisibility(true)\" />\r\n\t\t\t\t</ng-container>\r\n\t\t\t\t<ng-container *ngIf=\"oldPasswordVisibility === 'text'\">\r\n\t\t\t\t\t<img class=\"hide-password-visibility-button\" src=\"../assets/icons/hide_password_visibility_icon.svg\" alt=\"hide\" (click)=\"toggleOldPasswordVisibility(false)\" />\r\n\t\t\t\t</ng-container>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t\t<div class=\"password-description password-error\" *ngIf=\"oldPasswordInvalid\">\r\n\t\t\tContrase&ntilde;a incorrecta, por favor intente de nuevo.\r\n\t\t</div>\r\n\t\t<div class=\"change-password-input\">\r\n\t\t\t<input formControlName=\"newPassword\"\r\n\t\t\t\t\t\t [type]=\"newPasswordVisibility\"\r\n\t\t\t\t\t\t placeholder=\"Nueva Contrase\u00F1a\" />\r\n\t\t\t<div class=\"change-password-input-icon\">\r\n\t\t\t\t<ng-container *ngIf=\"newPasswordVisibility === 'password'\">\r\n\t\t\t\t\t<div *ngIf=\"hasNewPasswordError()\" class=\"change-password-wrong\" (click)=\"toggleNewPasswordVisibility(true)\">x</div>\r\n\t\t\t\t\t<ng-container *ngIf=\"!hasNewPasswordError()\">\r\n\t\t\t\t\t\t<div *ngIf=\"newPasswordValid\" class=\"change-password-correct\" (click)=\"toggleNewPasswordVisibility(true)\">&#10003;</div>\r\n\t\t\t\t\t\t<img *ngIf=\"!newPasswordValid\" src=\"../assets/icons/show_password_visibility_icon.svg\" alt=\"show\" (click)=\"toggleNewPasswordVisibility(true)\" />\r\n\t\t\t\t\t</ng-container>\r\n\t\t\t\t</ng-container>\r\n\t\t\t\t<ng-container *ngIf=\"newPasswordVisibility === 'text'\">\r\n\t\t\t\t\t<img class=\"hide-password-visibility-button\" src=\"../assets/icons/hide_password_visibility_icon.svg\" alt=\"hide\" (click)=\"toggleNewPasswordVisibility(false)\" />\r\n\t\t\t\t</ng-container>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t\t<div class=\"password-description\" [class.password-error]=\"hasNewPasswordError()\">\r\n\t\t\t* M&iacute;nimo 8 caracteres, may&uacute;sculas, min&uacute;sculas, n&uacute;meros, use caracteres especiales. Ej: @#$& (Obligatorio)\r\n\t\t</div>\r\n\t\t<div class=\"change-password-input\">\r\n\t\t\t<input formControlName=\"confirmNewPassword\"\r\n\t\t\t\t\t\t [type]=\"confirmNewPasswordVisibility\"\r\n\t\t\t\t\t\t placeholder=\"Confirmar Contrase\u00F1a\" />\r\n\t\t\t<div class=\"change-password-input-icon\">\r\n\t\t\t\t<ng-container *ngIf=\"confirmNewPasswordVisibility === 'password'\">\r\n\t\t\t\t\t<div *ngIf=\"hasConfirmNewPasswordError()\" class=\"change-password-wrong\" (click)=\"toggleConfirmNewPasswordVisibility(true)\">x</div>\r\n\t\t\t\t\t<ng-container *ngIf=\"!hasConfirmNewPasswordError()\">\r\n\t\t\t\t\t\t<div *ngIf=\"confirmNewPasswordValid\" class=\"change-password-correct\" (click)=\"toggleConfirmNewPasswordVisibility(true)\">&#10003;</div>\r\n\t\t\t\t\t\t<img *ngIf=\"!confirmNewPasswordValid\" src=\"../assets/icons/show_password_visibility_icon.svg\" alt=\"show\" (click)=\"toggleConfirmNewPasswordVisibility(true)\" />\r\n\t\t\t\t\t</ng-container>\r\n\t\t\t\t</ng-container>\r\n\t\t\t\t<ng-container *ngIf=\"confirmNewPasswordVisibility === 'text'\">\r\n\t\t\t\t\t<img class=\"hide-password-visibility-button\" src=\"../assets/icons/hide_password_visibility_icon.svg\" alt=\"hide\" (click)=\"toggleConfirmNewPasswordVisibility(false)\" />\r\n\t\t\t\t</ng-container>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t\t<div class=\"password-description password-error\" *ngIf=\"hasConfirmNewPasswordError()\">\r\n\t\t\tLas contrase&ntilde;a no coinciden, por favor corrija.\r\n\t\t</div>\r\n\t</form>\r\n\t<button class=\"change-password-btn\" [disabled]=\"!changePasswordFormGroup.valid || loading\" (click)=\"saveItem()\">Cambiar Contrase&ntilde;a</button>\r\n</div>\r\n\r\n<lib-loader [theme]=\"theme\" type=\"bar\" [loading]=\"loading\"></lib-loader>\r\n", styles: [":host{max-height:calc(100vh - 160px);min-width:25%;padding:20px;display:flex;flex-direction:column;gap:8px;font-size:14px;background-color:var(--white-background)}:host button{padding:0 20px;height:36px;border-radius:4px;background-color:transparent;border:solid 1px var(--secondary-btn);color:var(--secondary-btn);font-weight:500;cursor:pointer;outline:none}:host button.primary{background-color:var(--primary-btn-background);color:var(--primary-btn-color);border:none}:host button.ghost{background-color:transparent;border:none;padding:0}.assigned-area-label{color:var(--inactive-input);font-weight:500;min-height:40px;display:flex;align-items:center;padding:0 12px}.assigned-area{display:flex;flex-direction:column;overflow:auto;min-width:390px;max-width:390px}.dropped-items-area{display:flex;flex-direction:column;width:100%;gap:8px;border-radius:8px;background-color:var(--gray-background);padding:12px;height:100%;overflow:auto}.drop-area-container{display:flex;width:100%;padding:0}.drop-area{position:relative;display:flex;align-items:center;justify-content:center;color:var(--inactive-input);width:100%;height:44px;border:dashed 2px var(--inactive-input);border-radius:0}.drop-area.drop-area-hover{border-color:var(--selection-color)}.drop-area.drop-area-hover .drop-area-label{color:var(--selection-color)}.drop-items{display:flex;flex-direction:column;gap:8px;overflow:auto}.drop-list{position:absolute;top:0;left:0;display:flex;align-items:center;width:100%;height:100%;padding:0 12px}.available{display:flex;flex-direction:column;gap:4px;width:100%;min-width:390px;max-width:390px;overflow:auto;padding-top:8px}.title{display:flex;flex-direction:column}.title-label{font-size:1.8rem!important;color:#024496;font-weight:700;text-align:center}.title-name{font-size:16px;font-weight:700}.title-description{color:#005bcc;font-size:13px;white-space:nowrap;text-align:center;margin-bottom:10px}.drag-items{display:flex;flex-direction:column;gap:8px;padding:0 4px;overflow:auto}.dialog-content{display:grid;grid-template-columns:1fr;gap:12px;overflow:auto;height:100%}.buttons-container{display:flex;width:100%;justify-content:flex-end;align-items:center;gap:12px}.buttons-container .menu-close{font-size:16px}.dialog-header{display:flex;flex-direction:column;align-items:center;justify-content:space-between}.title-container{display:flex;align-items:center;font-size:18px;font-weight:500;color:var(--inactive-input);gap:12px;padding:0 12px}.messagesContainer{padding:0 36px;display:flex;flex-direction:column;align-items:center}.messagesContainer .success{color:green}.messagesContainer .error{color:red}.cdk-drag-preview{box-sizing:border-box;box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f;cursor:grabbing}.cdk-drag-placeholder{width:100%;opacity:0}.change-password-input-container{display:flex;flex-direction:column;padding:0 30px}.change-password-input{display:flex!important;flex-direction:row!important;width:100%;background-color:#fafafa;color:#494949;height:2.813rem;border-radius:.722rem;padding-right:10px;margin:10px 0}.change-password-input input{border-radius:.722rem;background-color:#fafafa;color:#494949;align-self:flex-start;width:calc(100% - 30px);height:100%;border:unset;margin:0 10px}.change-password-input input:focus{outline:none}.change-password-input .change-password-input-icon{display:flex;flex-direction:column;align-items:center;justify-content:center}.change-password-input .change-password-input-icon img{cursor:pointer;width:85%}.change-password-input .change-password-input-icon .change-password-wrong,.change-password-input .change-password-input-icon .change-password-correct{border:2px solid #ff7979;color:#ff7979;border-radius:15px;min-width:17px;min-height:17px;width:17px;height:17px;line-height:11px;font-size:11px;font-weight:700;margin-right:2.5px;padding-left:1px;cursor:pointer;text-align:center}.change-password-input .change-password-input-icon .change-password-correct{border:2px solid #00ae2e!important;color:#00ae2e!important;line-height:13px!important;font-size:10px!important}.password-description{font-size:14px;margin-top:-5px;margin-left:2.5px;align-items:start!important;text-align:start;color:#bdb9b9;width:100%}.password-error{color:#ff7979}.change-password-btn{background-color:#024496!important;height:3.4rem!important;border-radius:.722rem!important;color:#fff!important;font-size:1rem;margin:0 30px}.change-password-btn:disabled{cursor:default!important;opacity:.5}\n"] }]
88
144
  }], ctorParameters: function () { return [{ type: i1.MatDialogRef }, { type: undefined, decorators: [{
89
145
  type: Inject,
90
146
  args: [MAT_DIALOG_DATA]
91
- }] }, { type: i2.SecurityServices }]; } });
92
- export const changePasswordValidator = (control) => {
93
- const formGroup = control; // Hacemos el casting a FormGroup
94
- const password = formGroup.get('password')?.value;
95
- const newPassword = formGroup.get('newpassword')?.value;
96
- const newPassword2 = formGroup.get('newpassword2')?.value;
97
- const errors = {};
98
- if (!password || !newPassword || !newPassword2) {
99
- errors['required'] = 'Todos los campos son obligatorios';
100
- }
101
- if (newPassword && newPassword.length < 5) {
102
- errors['minLength'] = 'La nueva contraseña debe tener al menos 5 caracteres';
103
- }
104
- if (newPassword && newPassword2 && newPassword !== newPassword2) {
105
- errors['passwordMismatch'] = 'Las contraseñas no coinciden';
106
- }
107
- return Object.keys(errors).length ? errors : null;
108
- };
109
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhbmdlLXBhc3N3b3JkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FzcC1saWIvc3JjL2xpYi9jaGFuZ2UtcGFzc3dvcmQvY2hhbmdlLXBhc3N3b3JkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FzcC1saWIvc3JjL2xpYi9jaGFuZ2UtcGFzc3dvcmQvY2hhbmdlLXBhc3N3b3JkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xELE9BQU8sRUFBRSxlQUFlLEVBQWdCLE1BQU0sMEJBQTBCLENBQUM7QUFFekUsT0FBTyxFQUFtQixXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM5RCxPQUFPLEVBQUUsU0FBUyxFQUFpQyxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7O0FBUTFFLE1BQU0sT0FBTyx1QkFBdUI7SUFpQmxDLFlBQW1CLFNBQWdELEVBQy9CLElBQXVDLEVBQy9ELFFBQXlCO1FBRmxCLGNBQVMsR0FBVCxTQUFTLENBQXVDO1FBQy9CLFNBQUksR0FBSixJQUFJLENBQW1DO1FBQy9ELGFBQVEsR0FBUixRQUFRLENBQWlCO1FBakJyQyxVQUFLLEdBQVcsVUFBVSxDQUFDO1FBQzNCLHVCQUFrQixHQUFnQjtZQUNsQyxFQUFFLEtBQUssRUFBRSxZQUFZLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxFQUFFLGFBQWEsRUFBRSxRQUFRLEVBQUUsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFO1lBQ2hILEVBQUUsS0FBSyxFQUFFLGtCQUFrQixFQUFFLElBQUksRUFBRSxhQUFhLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsRUFBRSxhQUFhLEVBQUUsUUFBUSxFQUFFLEVB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QUM5QyxNQUFNLENBQUMsVUFBVSxDQUFDLEdBQUcsbUNBQW1DLENBQUM7S0FDMUQ7SUFFRCxJQUFJLFdBQVcsSUFBSSxXQUFXLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtRQUN6QyxNQUFNLENBQUMsV0FBVyxDQUFDLEdBQUcsc0RBQXNELENBQUM7S0FDOUU7SUFFRCxJQUFJLFdBQVcsSUFBSSxZQUFZLElBQUksV0FBVyxLQUFLLFlBQVksRUFBRTtRQUMvRCxNQUFNLENBQUMsa0JBQWtCLENBQUMsR0FBRyw4QkFBOEIsQ0FBQztLQUM3RDtJQUVELE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0FBQ3BELENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNQVRfRElBTE9HX0RBVEEsIE1hdERpYWxvZ1JlZiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5pbXBvcnQgeyBGb3JtRmllbGQgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBGb3JtQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEZvcm1Hcm91cCwgVmFsaWRhdGlvbkVycm9ycywgVmFsaWRhdG9yRm4gfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBTZWN1cml0eVNlcnZpY2VzIH0gZnJvbSAnLi4vdXRpbHMvc2VydmljZXMvU2VjdXJpdHlTZXJ2aWNlc0RlZmF1bHQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdsaWItY2hhbmdlLXBhc3N3b3JkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NoYW5nZS1wYXNzd29yZC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NoYW5nZS1wYXNzd29yZC5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIENoYW5nZVBhc3N3b3JkQ29tcG9uZW50IHtcblxuICB0aGVtZTogc3RyaW5nID0gJ2JyYXNpbGlhJztcbiAgY2hhbmdlUGFzc3dvcmRGb3JtOiBGb3JtRmllbGRbXSA9IFtcblx0XHR7IGxhYmVsOiAnQ29udHJhc2XDsWEnLCBuYW1lOiAncGFzc3dvcmQnLCB0eXBlOiAndGV4dCcsIHN0eWxlOiB7IFwiZ3JpZC1jb2x1bW5cIjogXCJzcGFuIDRcIiB9LCBpbnB1dFR5cGU6ICdwYXNzd29yZCcgfSxcbiAgICB7IGxhYmVsOiAnTnVldmEgQ29udHJhc2XDsWEnLCBuYW1lOiAnbmV3cGFzc3dvcmQnLCB0eXBlOiAndGV4dCcsIHN0eWxlOiB7IFwiZ3JpZC1jb2x1bW5cIjogXCJzcGFuIDRcIiB9LCBpbnB1dFR5cGU6ICdwYXNzd29yZCcgfSxcbiAgICB7IGxhYmVsOiAnQ29uZmlybWFyIENvbnRyYXNlw7FhJywgbmFtZTogJ25ld3Bhc3N3b3JkMicsIHR5cGU6ICd0ZXh0Jywgc3R5bGU6IHsgXCJncmlkLWNvbHVtblwiOiBcInNwYW4gNFwiIH0sIGlucHV0VHlwZTogJ3Bhc3N3b3JkJyB9XG5cdF07XG4gIGZvcm1Db250cm9sczogeyBba2V5OiBzdHJpbmddOiBGb3JtQ29udHJvbCB9ID0ge307XG4gIGZvcm1Hcm91cCE6IEZvcm1Hcm91cDtcbiAgZm9ybUVycm9yczogYW55ID0ge307XG4gIGZvcm1UaXRsZTogc3RyaW5nID0gJ051ZXZhIENvbnRyYXNlw7FhJztcbiAgYmFzZVVybDogc3RyaW5nID0gJyc7XG4gIGxvYWRpbmc6IGJvb2xlYW4gPSBmYWxzZTtcbiAgZXJyb3JNZXNzYWdlOiBhbnkgPSBudWxsO1xuICBzdWNjZXNzTWVzc2FnZTogYW55ID0gbnVsbDtcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8Q2hhbmdlUGFzc3dvcmRDb21wb25lbnQ+LFxuICAgICAgQEluamVjdChNQVRfRElBTE9HX0RBVEEpIHB1YmxpYyBkYXRhOiB7IHRoZW1lOiBzdHJpbmcsIGJhc2VVcmw6IHN0cmluZ30sXG4gICAgICBwcml2YXRlIHNlcnZpY2VzOlNlY3VyaXR5U2VydmljZXMpe1xuICAgICAgICB0aGlzLmZvcm1Db250cm9scyA9IHRoaXMuY2hhbmdlUGFzc3dvcmRGb3JtLnJlZHVjZSgob2JqZWN0LCBmaWVsZCkgPT4gKHsgLi4ub2JqZWN0LCBbZmllbGQubmFtZV06IG5ldyBGb3JtQ29udHJvbDxhbnk+KGZpZWxkLmRlZmF1bHRWYWx1ZSA/PyBudWxsKSB9KSwge30pXG4gICAgICAgIHRoaXMuZm9ybUdyb3VwID0gbmV3IEZvcm1Hcm91cCh0aGlzLmZvcm1Db250cm9scywgeyB2YWxpZGF0b3JzOiBjaGFuZ2VQYXNzd29yZFZhbGlkYXRvciB9KTtcbiAgICAgICAgdGhpcy5mb3JtR3JvdXAudmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgdGhpcy5mb3JtRXJyb3JzID0gdGhpcy5mb3JtR3JvdXAuZXJyb3JzO1xuICAgICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gbnVsbDtcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuYmFzZVVybCA9IGRhdGEuYmFzZVVybDtcbiAgfVxuXG4gIG9uQ2xvc2UoKSB7XG5cdFx0dGhpcy5kaWFsb2dSZWYuY2xvc2UoKTtcblx0fVxuXG4gIHNhdmVJdGVtKCkge1xuICAgIHRoaXMuZm9ybUVycm9ycyA9IHRoaXMuZm9ybUdyb3VwLmVycm9ycztcbiAgICB0aGlzLmVycm9yTWVzc2FnZSA9IG51bGw7XG4gICAgdGhpcy5zdWNjZXNzTWVzc2FnZSA9IG51bGw7XG5cbiAgICBpZiAodGhpcy5mb3JtR3JvdXAudmFsaWQpIHtcblxuICAgICAgY29uc3QgcGFzc3dvcmQgPSB0aGlzLmZvcm1Hcm91cC5nZXQoJ3Bhc3N3b3JkJyk/LnZhbHVlO1xuICAgICAgY29uc3QgbmV3UGFzc3dvcmQgPSB0aGlzLmZvcm1Hcm91cC5nZXQoJ25ld3Bhc3N3b3JkJyk/LnZhbHVlO1xuICAgICAgbGV0IGNwID0ge1xuICAgICAgICBwYXNzd29yZDogcGFzc3dvcmQsXG4gICAgICAgIG5ld1Bhc3N3b3JkOiBuZXdQYXNzd29yZFxuICAgICAgfVxuICAgICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTtcbiAgICAgIHRoaXMuc2VydmljZXMuY2hhbmdlUGFzc3dvcmQodGhpcy5iYXNlVXJsLGNwKS5zdWJzY3JpYmUoXG4gICAgICAgIChkYXRhOiBhbnkpID0+IHtcbiAgICAgICAgICBpZiAoZGF0YSkge1xuICAgICAgICAgICAgaWYoZGF0YS5yZXNwb25zZUNvZGUgPT0gMjAwKXtcbiAgICAgICAgICAgICAgaWYoZGF0YS5sb2FkKXtcbiAgICAgICAgICAgICAgICB0aGlzLmVycm9yTWVzc2FnZSA9IG51bGw7XG4gICAgICAgICAgICAgICAgdGhpcy5zdWNjZXNzTWVzc2FnZSA9ICdDb250cmFzZcOxYSBBY3R1YWxpemFkYSc7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1lbHNlIGlmKGRhdGEucmVzcG9uc2VDb2RlID09IDIwNil7XG4gICAgICAgICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gJ0NvbnRyYXNlw7FhIEluY29ycmVjdGEnO1xuICAgICAgICAgICAgICB0aGlzLnN1Y2Nlc3NNZXNzYWdlID0gbnVsbDtcbiAgICAgICAgICAgIH1lbHNle1xuICAgICAgICAgICAgICB0aGlzLmVycm9yTWVzc2FnZSA9ICdIYSBPY3VycmlkbyB1biBFcnJvcic7XG4gICAgICAgICAgICAgIHRoaXMuc3VjY2Vzc01lc3NhZ2UgPSBudWxsO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gJ0hhIE9jdXJyaWRvIHVuIEVycm9yJztcbiAgICAgICAgICAgICAgdGhpcy5zdWNjZXNzTWVzc2FnZSA9IG51bGw7XG4gICAgICAgICAgfVxuICAgICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xuICAgICAgICB9LFxuICAgICAgICAoZXJyOiBhbnkpID0+IHtcbiAgICAgICAgICBjb25zb2xlLmxvZyhlcnIpO1xuICAgICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xuICAgICAgICB9XG4gICAgICApO1xuICAgIH0gZWxzZSB7XG4gICAgfVxuICB9XG5cbn1cblxuXG5leHBvcnQgY29uc3QgY2hhbmdlUGFzc3dvcmRWYWxpZGF0b3I6IFZhbGlkYXRvckZuID0gKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCk6IFZhbGlkYXRpb25FcnJvcnMgfCBudWxsID0+IHtcbiAgY29uc3QgZm9ybUdyb3VwID0gY29udHJvbCBhcyBGb3JtR3JvdXA7IC8vIEhhY2Vtb3MgZWwgY2FzdGluZyBhIEZvcm1Hcm91cFxuXG4gIGNvbnN0IHBhc3N3b3JkID0gZm9ybUdyb3VwLmdldCgncGFzc3dvcmQnKT8udmFsdWU7XG4gIGNvbnN0IG5ld1Bhc3N3b3JkID0gZm9ybUdyb3VwLmdldCgnbmV3cGFzc3dvcmQnKT8udmFsdWU7XG4gIGNvbnN0IG5ld1Bhc3N3b3JkMiA9IGZvcm1Hcm91cC5nZXQoJ25ld3Bhc3N3b3JkMicpPy52YWx1ZTtcblxuICBjb25zdCBlcnJvcnM6IFZhbGlkYXRpb25FcnJvcnMgPSB7fTtcblxuICBpZiAoIXBhc3N3b3JkIHx8ICFuZXdQYXNzd29yZCB8fCAhbmV3UGFzc3dvcmQyKSB7XG4gICAgZXJyb3JzWydyZXF1aXJlZCddID0gJ1RvZG9zIGxvcyBjYW1wb3Mgc29uIG9ibGlnYXRvcmlvcyc7XG4gIH1cblxuICBpZiAobmV3UGFzc3dvcmQgJiYgbmV3UGFzc3dvcmQubGVuZ3RoIDwgNSkge1xuICAgIGVycm9yc1snbWluTGVuZ3RoJ10gPSAnTGEgbnVldmEgY29udHJhc2XDsWEgZGViZSB0ZW5lciBhbCBtZW5vcyA1IGNhcmFjdGVyZXMnO1xuICB9XG5cbiAgaWYgKG5ld1Bhc3N3b3JkICYmIG5ld1Bhc3N3b3JkMiAmJiBuZXdQYXNzd29yZCAhPT0gbmV3UGFzc3dvcmQyKSB7XG4gICAgZXJyb3JzWydwYXNzd29yZE1pc21hdGNoJ10gPSAnTGFzIGNvbnRyYXNlw7FhcyBubyBjb2luY2lkZW4nO1xuICB9XG5cbiAgcmV0dXJuIE9iamVjdC5rZXlzKGVycm9ycykubGVuZ3RoID8gZXJyb3JzIDogbnVsbDtcbn07IiwiPGRpdiBbYXR0ci5kYXRhLXRoZW1lXT1cInRoZW1lXCIgY2xhc3M9XCJkaWFsb2ctaGVhZGVyXCI+XG5cdDxkaXYgY2xhc3M9XCJ0aXRsZS1jb250YWluZXJcIj5cblx0XHQ8aSBjbGFzcz1cIm1lbnUtZ2VhclwiPjwvaT5cblx0XHQ8ZGl2IGNsYXNzPVwidGl0bGVcIj5cblx0XHRcdDxzcGFuIGNsYXNzPVwidGl0bGUtbGFiZWxcIj5DYW1iaW8gZGUgQ29udHJhc2XDsWE8L3NwYW4+XG5cdFx0PC9kaXY+XG5cdDwvZGl2PlxuXHQ8ZGl2IGNsYXNzPVwiYnV0dG9ucy1jb250YWluZXJcIj5cblx0XHQ8YnV0dG9uIGNsYXNzPVwiZ2hvc3RcIiAoY2xpY2spPVwib25DbG9zZSgpXCI+PGkgY2xhc3M9XCJtZW51LWNsb3NlXCI+PC9pPjwvYnV0dG9uPlxuXHQ8L2Rpdj5cbjwvZGl2PlxuPGRpdiBbYXR0ci5kYXRhLXRoZW1lXT1cInRoZW1lXCIgY2xhc3M9XCJkaWFsb2ctY29udGVudFwiPlxuICAgIDxsaWItZm9ybSBbZm9ybV09XCJjaGFuZ2VQYXNzd29yZEZvcm1cIiBbZm9ybUNvbnRyb2xzXT1cImZvcm1Db250cm9sc1wiXG5cdFx0XHRcdFx0W3RoZW1lXT1cInRoZW1lXCIgW3RpdGxlXT1cImZvcm1UaXRsZVwiICBpY29uPVwibWVudS1lZGl0XCIgKHNhdmVDbGljayk9XCJzYXZlSXRlbSgpXCJcblx0XHRcdFx0XHQ+PC9saWItZm9ybT5cblx0PGRpdiBjbGFzcz1cIm1lc3NhZ2VzQ29udGFpbmVyXCI+XG5cdFx0PGRpdiAqbmdJZj1cInN1Y2Nlc3NNZXNzYWdlXCIgY2xhc3M9XCJzdWNjZXNzXCI+e3tzdWNjZXNzTWVzc2FnZX19PC9kaXY+XG5cdFx0PGRpdiAqbmdJZj1cImVycm9yTWVzc2FnZVwiIGNsYXNzPVwiZXJyb3JcIj57e2Vycm9yTWVzc2FnZX19PC9kaXY+XG5cdFx0PGRpdiAqbmdJZj1cImZvcm1FcnJvcnM/LnJlcXVpcmVkXCIgY2xhc3M9XCJlcnJvclwiPlxuXHRcdFx0e3sgZm9ybUVycm9ycy5yZXF1aXJlZCB9fVxuXHRcdDwvZGl2Plx0XHQgIFxuXHRcdDxkaXYgKm5nSWY9XCJmb3JtRXJyb3JzPy5taW5MZW5ndGhcIiBjbGFzcz1cImVycm9yXCI+XG5cdFx0XHR7eyBmb3JtRXJyb3JzLm1pbkxlbmd0aCB9fVxuXHRcdDwvZGl2Plx0XHQgIFxuXHRcdDxkaXYgKm5nSWY9XCJmb3JtRXJyb3JzPy5wYXNzd29yZE1pc21hdGNoXCIgY2xhc3M9XCJlcnJvclwiPlxuXHRcdFx0e3sgZm9ybUVycm9ycy5wYXNzd29yZE1pc21hdGNoIH19XG5cdFx0PC9kaXY+XG5cdDwvZGl2PlxuXHRcbjwvZGl2PlxuXG48bGliLWxvYWRlciBbdGhlbWVdPVwidGhlbWVcIiB0eXBlPVwiYmFyXCIgW2xvYWRpbmddPVwibG9hZGluZ1wiPjwvbGliLWxvYWRlcj4iXX0=
147
+ }] }, { type: i2.SecurityServices }, { type: i3.DialogService }]; } });
148
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhbmdlLXBhc3N3b3JkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FzcC1saWIvc3JjL2xpYi9jaGFuZ2UtcGFzc3dvcmQvY2hhbmdlLXBhc3N3b3JkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FzcC1saWIvc3JjL2xpYi9jaGFuZ2UtcGFzc3dvcmQvY2hhbmdlLXBhc3N3b3JkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xELE9BQU8sRUFBRSxlQUFlLEVBQWdCLE1BQU0sMEJBQTBCLENBQUM7QUFFekUsT0FBTyxFQUFtQixXQUFXLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDMUUsT0FBTyxFQUFFLFNBQVMsRUFBaUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUUxRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7Ozs7Ozs7O0FBV2xELE1BQU0sT0FBTyx1QkFBdUI7SUF5QmxDLFlBQW1CLFNBQWdELEVBQ2pDLElBQXdDLEVBQ2hFLGdCQUFpQyxFQUFVLGNBQTZCO1FBRi9ELGNBQVMsR0FBVCxTQUFTLENBQXVDO1FBQ2pDLFNBQUksR0FBSixJQUFJLENBQW9DO1FBQ2hFLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBaUI7UUFBVSxtQkFBYyxHQUFkLGNBQWMsQ0FBZTtRQXpCbEYsVUFBSyxHQUFXLFVBQVUsQ0FBQztRQUUzQiw0QkFBdUIsR0FBRyxJQUFJLFNBQVMsQ0FBQztZQUN4QyxXQUFXLEVBQUUsSUFBSSxXQUFXLENBQUMsRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ3ZELFdBQVcsRUFB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OEdDbEJwQyw4M0pBZ0ZBOzs0RkQ5RGEsdUJBQXVCO2tCQVJuQyxTQUFTOytCQUNFLHFCQUFxQixRQUd6Qjt3QkFDSixJQUFJLEVBQUUsaUJBQWlCO3FCQUN4Qjs7MEJBNEJFLE1BQU07MkJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE1BVF9ESUFMT0dfREFUQSwgTWF0RGlhbG9nUmVmIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcclxuaW1wb3J0IHsgRm9ybUZpZWxkIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9pbnRlcmZhY2VzJztcclxuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBGb3JtQ29udHJvbCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgRm9ybUdyb3VwLCBWYWxpZGF0aW9uRXJyb3JzLCBWYWxpZGF0b3JGbiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgU2VjdXJpdHlTZXJ2aWNlcyB9IGZyb20gJy4uL3V0aWxzL3NlcnZpY2VzL1NlY3VyaXR5U2VydmljZXNEZWZhdWx0JztcclxuaW1wb3J0IHsgUGFzc3dvcmRWYWxpZGF0b3IgfSBmcm9tICcuLi9oZWxwZXJzL3Bhc3N3b3JkLXZhbGlkYXRvcic7XHJcbmltcG9ydCB7IE11c3RNYXRjaCB9IGZyb20gJy4uL2hlbHBlcnMvbXVzdC1tYXRjaCc7XHJcbmltcG9ydCB7IERpYWxvZ1NlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9kaWFsb2cuc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi1jaGFuZ2UtcGFzc3dvcmQnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9jaGFuZ2UtcGFzc3dvcmQuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2NoYW5nZS1wYXNzd29yZC5jb21wb25lbnQuc2NzcyddLFxyXG4gIGhvc3Q6IHtcclxuICAgICdpZCc6ICdjaGFuZ2UtcGFzc3dvcmQnXHJcbiAgfVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ2hhbmdlUGFzc3dvcmRDb21wb25lbnQge1xyXG5cclxuICB0aGVtZTogc3RyaW5nID0gJ2JyYXNpbGlhJztcclxuXHJcbiAgY2hhbmdlUGFzc3dvcmRGb3JtR3JvdXAgPSBuZXcgRm9ybUdyb3VwKHtcclxuXHRcdG9sZFBhc3N3b3JkOiBuZXcgRm9ybUNvbnRyb2woJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXSksXHJcblx0XHRuZXdQYXNzd29yZDogbmV3IEZvcm1Db250cm9sKCcnLCBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgVmFsaWRhdG9ycy5taW5MZW5ndGgoOCksIFBhc3N3b3JkVmFsaWRhdG9yKCldKSxcclxuXHRcdGNvbmZpcm1OZXdQYXNzd29yZDogbmV3IEZvcm1Db250cm9sKCcnLCBbVmFsaWRhdG9ycy5yZXF1aXJlZF0pXHJcblx0fSwge1xyXG5cdFx0dmFsaWRhdG9yczogTXVzdE1hdGNoKCduZXdQYXNzd29yZCcsICdjb25maXJtTmV3UGFzc3dvcmQnKVxyXG5cdH0pO1xyXG5cclxuXHRvbGRQYXNzd29yZFZpc2liaWxpdHk6IHN0cmluZyA9IFwicGFzc3dvcmRcIjtcclxuXHRuZXdQYXNzd29yZFZpc2liaWxpdHk6IHN0cmluZyA9IFwicGFzc3dvcmRcIjtcclxuXHRjb25maXJtTmV3UGFzc3dvcmRWaXNpYmlsaXR5OiBzdHJpbmcgPSBcInBhc3N3b3JkXCI7XHJcblxyXG5cdG9sZFBhc3N3b3JkSW52YWxpZDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cdG5ld1Bhc3N3b3JkVmFsaWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHRjb25maXJtTmV3UGFzc3dvcmRWYWxpZDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBiYXNlVXJsOiBzdHJpbmcgPSAnJztcclxuICBsb2FkaW5nOiBib29sZWFuID0gZmFsc2U7XHJcbiAgZXJyb3JNZXNzYWdlOiBhbnkgPSBudWxsO1xyXG4gIHN1Y2Nlc3NNZXNzYWdlOiBhbnkgPSBudWxsO1xyXG5cclxuICBjb25zdHJ1Y3RvcihwdWJsaWMgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8Q2hhbmdlUGFzc3dvcmRDb21wb25lbnQ+LFxyXG4gICAgQEluamVjdChNQVRfRElBTE9HX0RBVEEpIHB1YmxpYyBkYXRhOiB7IHRoZW1lOiBzdHJpbmcsIGJhc2VVcmw6IHN0cmluZyB9LFxyXG4gICAgcHJpdmF0ZSBzZWN1cml0eVNlcnZpY2VzOlNlY3VyaXR5U2VydmljZXMsIHByaXZhdGUgZGlhbG9nU2VydmljZXM6IERpYWxvZ1NlcnZpY2UpIHtcclxuICAgIHRoaXMuYmFzZVVybCA9IGRhdGEuYmFzZVVybDtcclxuICB9XHJcblxyXG4gIG9uQ2xvc2UoKSB7XHJcblx0XHR0aGlzLmRpYWxvZ1JlZi5jbG9zZSgpO1xyXG5cdH1cclxuXHJcbiAgaGFzTmV3UGFzc3dvcmRFcnJvciAoKSA6IGJvb2xlYW5cclxuICB7XHJcbiAgICBsZXQgcGFzc3dvcmRGb3JtID0gdGhpcy5jaGFuZ2VQYXNzd29yZEZvcm1Hcm91cC5nZXQoXCJuZXdQYXNzd29yZFwiKTtcclxuXHJcbiAgICBpZiAocGFzc3dvcmRGb3JtID09IG51bGwpXHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuXHJcbiAgICBpZiAoIXBhc3N3b3JkRm9ybS50b3VjaGVkKVxyXG4gICAgICByZXR1cm4gZmFsc2U7XHJcblxyXG4gICAgaWYgKCFwYXNzd29yZEZvcm0udmFsdWUpXHJcbiAgICB7XHJcbiAgICAgIHRoaXMubmV3UGFzc3dvcmRWYWxpZCA9IGZhbHNlO1xyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAocGFzc3dvcmRGb3JtLmhhc0Vycm9yKFwibWlubGVuZ3RoXCIpICYmIHBhc3N3b3JkRm9ybS5oYXNFcnJvcihcInBhc3N3b3JkVmFsaWRhdG9yXCIpKVxyXG4gICAge1xyXG4gICAgICB0aGlzLm5ld1Bhc3N3b3JkVmFsaWQgPSBmYWxzZTtcclxuICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHBhc3N3b3JkRm9ybS5oYXNFcnJvcihcIm1pbmxlbmd0aFwiKSlcclxuICAgIHtcclxuICAgICAgdGhpcy5uZXdQYXNzd29yZFZhbGlkID0gZmFsc2U7XHJcbiAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChwYXNzd29yZEZvcm0uaGFzRXJyb3IoXCJwYXNzd29yZFZhbGlkYXRvclwiKSlcclxuICAgIHtcclxuICAgICAgdGhpcy5uZXdQYXNzd29yZFZhbGlkID0gZmFsc2U7XHJcbiAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMubmV3UGFzc3dvcmRWYWxpZCA9IHRydWU7XHJcbiAgICByZXR1cm4gZmFsc2U7XHJcbiAgfVxyXG5cclxuICBoYXNDb25maXJtTmV3UGFzc3dvcmRFcnJvciAoKSA6IGJvb2xlYW5cclxuICB7XHJcbiAgICBsZXQgbmV3UGFzc3dvcmRGb3JtID0gdGhpcy5jaGFuZ2VQYXNzd29yZEZvcm1Hcm91cC5nZXQoXCJuZXdQYXNzd29yZFwiKTtcclxuICAgIGxldCBjb25maXJtTmV3UGFzc3dvcmRGb3JtID0gdGhpcy5jaGFuZ2VQYXNzd29yZEZvcm1Hcm91cC5nZXQoXCJjb25maXJtTmV3UGFzc3dvcmRcIik7XHJcblxyXG4gICAgaWYgKG5ld1Bhc3N3b3JkRm9ybSA9PSBudWxsIHx8IGNvbmZpcm1OZXdQYXNzd29yZEZvcm0gPT0gbnVsbClcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG5cclxuICAgIGlmICghY29uZmlybU5ld1Bhc3N3b3JkRm9ybS5kaXJ0eSlcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG5cclxuICAgIGlmICghY29uZmlybU5ld1Bhc3N3b3JkRm9ybS52YWx1ZSlcclxuICAgIHtcclxuICAgICAgaWYgKG5ld1Bhc3N3b3JkRm9ybS52YWx1ZSAmJiBuZXdQYXNzd29yZEZvcm0udmFsdWUubGVuZ3RoKVxyXG4gICAgICB7XHJcbiAgICAgICAgdGhpcy5jb25maXJtTmV3UGFzc3dvcmRWYWxpZCA9IGZhbHNlO1xyXG4gICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGNvbmZpcm1OZXdQYXNzd29yZEZvcm0uaGFzRXJyb3IoXCJtdXN0TWF0Y2hcIikpXHJcbiAgICB7XHJcbiAgICAgIHRoaXMuY29uZmlybU5ld1Bhc3N3b3JkVmFsaWQgPSBmYWxzZTtcclxuICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5jb25maXJtTmV3UGFzc3dvcmRWYWxpZCA9IHRydWU7XHJcbiAgICByZXR1cm4gZmFsc2U7XHJcbiAgfVxyXG5cclxuICBzYXZlSXRlbSgpIHtcclxuICAgIGlmICghdGhpcy5jaGFuZ2VQYXNzd29yZEZvcm1Hcm91cC52YWxpZClcclxuICAgICAgcmV0dXJuO1xyXG5cclxuICAgIHRoaXMubG9hZGluZyA9IHRydWU7XHJcblxyXG4gICAgY29uc3Qgb2xkUGFzc3dvcmQgPSB0aGlzLmNoYW5nZVBhc3N3b3JkRm9ybUdyb3VwLmdldChcIm9sZFBhc3N3b3JkXCIpPy52YWx1ZTtcclxuICAgIGNvbnN0IG5ld1Bhc3N3b3JkID0gdGhpcy5jaGFuZ2VQYXNzd29yZEZvcm1Hcm91cC5nZXQoXCJuZXdQYXNzd29yZFwiKT8udmFsdWU7XHJcblxyXG4gICAgbGV0IGNwID0ge1xyXG4gICAgICBwYXNzd29yZDogb2xkUGFzc3dvcmQsXHJcbiAgICAgIG5ld1Bhc3N3b3JkOiBuZXdQYXNzd29yZFxyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuc2VjdXJpdHlTZXJ2aWNlcy5jaGFuZ2VQYXNzd29yZCh0aGlzLmJhc2VVcmwsIGNwKS5zdWJzY3JpYmUoXHJcbiAgICAgIChkYXRhIDogYW55KSA9PlxyXG4gICAgICB7XHJcbiAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XHJcblxyXG4gICAgICAgIGlmIChkYXRhKVxyXG4gICAgICAgIHtcclxuICAgICAgICAgIHN3aXRjaCAoZGF0YS5yZXNwb25zZUNvZGUpXHJcbiAgICAgICAgICB7XHJcbiAgICAgICAgICAgIGNhc2UgMjAwOlxyXG4gICAgICAgICAgICAgIHRoaXMuZGlhbG9nU2VydmljZXMuYWxlcnQoXCJcIiwgXCLCoUhhcyBjYW1iaWFkbyBsYSBjb250cmFzZcOxYSBzYXRpc2ZhY3RvcmlhbWVudGUhXCIsIFwic3VjY2Vzc1wiKTtcclxuICAgICAgICAgICAgICB0aGlzLm9uQ2xvc2UoKTtcclxuICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgY2FzZSAyMDY6XHJcbiAgICAgICAgICAgICAgdGhpcy5vbGRQYXNzd29yZEludmFsaWQgPSB0cnVlO1xyXG4gICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICBjYXNlIDIxMzpcclxuICAgICAgICAgICAgICB0aGlzLmRpYWxvZ1NlcnZpY2VzLmFsZXJ0KFwiwqFVcHNzIVwiLCBcIkVzdGEgY29udHJhc2XDsWEgZnVlIHVzYWRhIHByZXZpYW1lbnRlLiBFc2NyaWJhIHVuYSBjb250cmFzZcOxYSBkaWZlcmVudGUuXCIsIFwiZXJyb3JcIik7XHJcbiAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICAgICAgdGhpcy5kaWFsb2dTZXJ2aWNlcy5hbGVydChcIsKhVXBzcyFcIiwgXCJIYSBvY3VycmlkbyB1biBlcnJvclwiLCBcImVycm9yXCIpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlXHJcbiAgICAgICAgICB0aGlzLmRpYWxvZ1NlcnZpY2VzLmFsZXJ0KFwiwqFVcHNzIVwiLCBcIkhhIG9jdXJyaWRvIHVuIGVycm9yXCIsIFwiZXJyb3JcIik7XHJcbiAgICAgIH0sXHJcbiAgICAgIChlcnJvciA6IGFueSkgPT4ge1xyXG4gICAgICAgIHRoaXMuZGlhbG9nU2VydmljZXMuYWxlcnQoXCLCoVVwc3MhXCIsIGVycm9yLm1lc3NhZ2UsIFwiZXJyb3JcIik7XHJcbiAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgIH1cclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBjbGVhckludmFsaWRQYXNzd29yZEVycm9yKCk6IHZvaWQge1xyXG4gICAgdGhpcy5vbGRQYXNzd29yZEludmFsaWQgPSBmYWxzZTtcclxuICB9XHJcblxyXG5cdHRvZ2dsZU9sZFBhc3N3b3JkVmlzaWJpbGl0eSh2YWx1ZTogYm9vbGVhbik6IHZvaWQge1xyXG5cdFx0dGhpcy5vbGRQYXNzd29yZFZpc2liaWxpdHkgPSB2YWx1ZSA/IFwidGV4dFwiIDogXCJwYXNzd29yZFwiO1xyXG5cdH1cclxuICBcclxuXHR0b2dnbGVOZXdQYXNzd29yZFZpc2liaWxpdHkodmFsdWU6IGJvb2xlYW4pOiB2b2lkIHtcclxuXHRcdHRoaXMubmV3UGFzc3dvcmRWaXNpYmlsaXR5ID0gdmFsdWUgPyBcInRleHRcIiA6IFwicGFzc3dvcmRcIjtcclxuXHR9XHJcblxyXG5cdHRvZ2dsZUNvbmZpcm1OZXdQYXNzd29yZFZpc2liaWxpdHkodmFsdWU6IGJvb2xlYW4pOiB2b2lkIHtcclxuXHRcdHRoaXMuY29uZmlybU5ld1Bhc3N3b3JkVmlzaWJpbGl0eSA9IHZhbHVlID8gXCJ0ZXh0XCIgOiBcInBhc3N3b3JkXCI7XHJcblx0fVxyXG59XHJcbiIsIjxkaXYgW2F0dHIuZGF0YS10aGVtZV09XCJ0aGVtZVwiIGNsYXNzPVwiZGlhbG9nLWhlYWRlclwiPlxyXG5cdDxkaXYgY2xhc3M9XCJidXR0b25zLWNvbnRhaW5lclwiPlxyXG5cdFx0PGJ1dHRvbiBjbGFzcz1cImdob3N0XCIgKGNsaWNrKT1cIm9uQ2xvc2UoKVwiPjxpIGNsYXNzPVwibWVudS1jbG9zZVwiPjwvaT48L2J1dHRvbj5cclxuXHQ8L2Rpdj5cclxuXHQ8ZGl2IGNsYXNzPVwidGl0bGUtY29udGFpbmVyXCI+XHJcblx0XHQ8ZGl2IGNsYXNzPVwidGl0bGVcIj5cclxuXHRcdFx0PHNwYW4gY2xhc3M9XCJ0aXRsZS1sYWJlbFwiPkNhbWJpbyBkZSBDb250cmFzZSZudGlsZGU7YTwvc3Bhbj5cclxuXHRcdFx0PHNwYW4gY2xhc3M9XCJ0aXRsZS1kZXNjcmlwdGlvblwiPlxyXG5cdFx0XHRcdFBvciBzZWd1cmlkYWQgZGViZSBjYW1iaWFyIGxhIGNvbnRyYXNlJm50aWxkZTthIHBlcmkmb2FjdXRlO2RpY2FtZW50ZTxiciAvPlxyXG5cdFx0XHRcdChDYWRhIDMgbWVzZXMgZWwgc2lzdGVtYSBsZSBzb2xpY2l0YXImYWFjdXRlOyBlbCBjYW1iaW8pXHJcblx0XHRcdDwvc3Bhbj5cclxuXHRcdDwvZGl2PlxyXG5cdDwvZGl2PlxyXG48L2Rpdj5cclxuPGRpdiBbYXR0ci5kYXRhLXRoZW1lXT1cInRoZW1lXCIgY2xhc3M9XCJkaWFsb2ctY29udGVudFwiPlxyXG5cdDxmb3JtIFtmb3JtR3JvdXBdPVwiY2hhbmdlUGFzc3dvcmRGb3JtR3JvdXBcIlxyXG5cdFx0XHRcdChuZ1N1Ym1pdCk9XCJzYXZlSXRlbSgpXCJcclxuXHRcdFx0XHRjbGFzcz1cImNoYW5nZS1wYXNzd29yZC1pbnB1dC1jb250YWluZXJcIj5cclxuXHRcdDxkaXYgY2xhc3M9XCJjaGFuZ2UtcGFzc3dvcmQtaW5wdXRcIj5cclxuXHRcdFx0PGlucHV0IGZvcm1Db250cm9sTmFtZT1cIm9sZFBhc3N3b3JkXCJcclxuXHRcdFx0XHRcdFx0IFt0eXBlXT1cIm9sZFBhc3N3b3JkVmlzaWJpbGl0eVwiXHJcblx0XHRcdFx0XHRcdCAoaW5wdXQpPVwiY2xlYXJJbnZhbGlkUGFzc3dvcmRFcnJvcigpXCJcclxuXHRcdFx0XHRcdFx0IHBsYWNlaG9sZGVyPVwiQ29udHJhc2XDsWEgYWN0dWFsXCIgLz5cclxuXHRcdFx0PGRpdiBjbGFzcz1cImNoYW5nZS1wYXNzd29yZC1pbnB1dC1pY29uXCI+XHJcblx0XHRcdFx0PG5nLWNvbnRhaW5lciAqbmdJZj1cIm9sZFBhc3N3b3JkVmlzaWJpbGl0eSA9PT0gJ3Bhc3N3b3JkJ1wiPlxyXG5cdFx0XHRcdFx0PGltZyBzcmM9XCIuLi9hc3NldHMvaWNvbnMvc2hvd19wYXNzd29yZF92aXNpYmlsaXR5X2ljb24uc3ZnXCIgYWx0PVwic2hvd1wiIChjbGljayk9XCJ0b2dnbGVPbGRQYXNzd29yZFZpc2liaWxpdHkodHJ1ZSlcIiAvPlxyXG5cdFx0XHRcdDwvbmctY29udGFpbmVyPlxyXG5cdFx0XHRcdDxuZy1jb250YWluZXIgKm5nSWY9XCJvbGRQYXNzd29yZFZpc2liaWxpdHkgPT09ICd0ZXh0J1wiPlxyXG5cdFx0XHRcdFx0PGltZyBjbGFzcz1cImhpZGUtcGFzc3dvcmQtdmlzaWJpbGl0eS1idXR0b25cIiBzcmM9XCIuLi9hc3NldHMvaWNvbnMvaGlkZV9wYXNzd29yZF92aXNpYmlsaXR5X2ljb24uc3ZnXCIgYWx0PVwiaGlkZVwiIChjbGljayk9XCJ0b2dnbGVPbGRQYXNzd29yZFZpc2liaWxpdHkoZmFsc2UpXCIgLz5cclxuXHRcdFx0XHQ8L25nLWNvbnRhaW5lcj5cclxuXHRcdFx0PC9kaXY+XHJcblx0XHQ8L2Rpdj5cclxuXHRcdDxkaXYgY2xhc3M9XCJwYXNzd29yZC1kZXNjcmlwdGlvbiBwYXNzd29yZC1lcnJvclwiICpuZ0lmPVwib2xkUGFzc3dvcmRJbnZhbGlkXCI+XHJcblx0XHRcdENvbnRyYXNlJm50aWxkZTthIGluY29ycmVjdGEsIHBvciBmYXZvciBpbnRlbnRlIGRlIG51ZXZvLlxyXG5cdFx0PC9kaXY+XHJcblx0XHQ8ZGl2IGNsYXNzPVwiY2hhbmdlLXBhc3N3b3JkLWlucHV0XCI+XHJcblx0XHRcdDxpbnB1dCBmb3JtQ29udHJvbE5hbWU9XCJuZXdQYXNzd29yZFwiXHJcblx0XHRcdFx0XHRcdCBbdHlwZV09XCJuZXdQYXNzd29yZFZpc2liaWxpdHlcIlxyXG5cdFx0XHRcdFx0XHQgcGxhY2Vob2xkZXI9XCJOdWV2YSBDb250cmFzZcOxYVwiIC8+XHJcblx0XHRcdDxkaXYgY2xhc3M9XCJjaGFuZ2UtcGFzc3dvcmQtaW5wdXQtaWNvblwiPlxyXG5cdFx0XHRcdDxuZy1jb250YWluZXIgKm5nSWY9XCJuZXdQYXNzd29yZFZpc2liaWxpdHkgPT09ICdwYXNzd29yZCdcIj5cclxuXHRcdFx0XHRcdDxkaXYgKm5nSWY9XCJoYXNOZXdQYXNzd29yZEVycm9yKClcIiBjbGFzcz1cImNoYW5nZS1wYXNzd29yZC13cm9uZ1wiIChjbGljayk9XCJ0b2dnbGVOZXdQYXNzd29yZFZpc2liaWxpdHkodHJ1ZSlcIj54PC9kaXY+XHJcblx0XHRcdFx0XHQ8bmctY29udGFpbmVyICpuZ0lmPVwiIWhhc05ld1Bhc3N3b3JkRXJyb3IoKVwiPlxyXG5cdFx0XHRcdFx0XHQ8ZGl2ICpuZ0lmPVwibmV3UGFzc3dvcmRWYWxpZFwiIGNsYXNzPVwiY2hhbmdlLXBhc3N3b3JkLWNvcnJlY3RcIiAoY2xpY2spPVwidG9nZ2xlTmV3UGFzc3dvcmRWaXNpYmlsaXR5KHRydWUpXCI+JiMxMDAwMzs8L2Rpdj5cclxuXHRcdFx0XHRcdFx0PGltZyAqbmdJZj1cIiFuZXdQYXNzd29yZFZhbGlkXCIgc3JjPVwiLi4vYXNzZXRzL2ljb25zL3Nob3dfcGFzc3dvcmRfdmlzaWJpbGl0eV9pY29uLnN2Z1wiIGFsdD1cInNob3dcIiAoY2xpY2spPVwidG9nZ2xlTmV3UGFzc3dvcmRWaXNpYmlsaXR5KHRydWUpXCIgLz5cclxuXHRcdFx0XHRcdDwvbmctY29udGFpbmVyPlxyXG5cdFx0XHRcdDwvbmctY29udGFpbmVyPlxyXG5cdFx0XHRcdDxuZy1jb250YWluZXIgKm5nSWY9XCJuZXdQYXNzd29yZFZpc2liaWxpdHkgPT09ICd0ZXh0J1wiPlxyXG5cdFx0XHRcdFx0PGltZyBjbGFzcz1cImhpZGUtcGFzc3dvcmQtdmlzaWJpbGl0eS1idXR0b25cIiBzcmM9XCIuLi9hc3NldHMvaWNvbnMvaGlkZV9wYXNzd29yZF92aXNpYmlsaXR5X2ljb24uc3ZnXCIgYWx0PVwiaGlkZVwiIChjbGljayk9XCJ0b2dnbGVOZXdQYXNzd29yZFZpc2liaWxpdHkoZmFsc2UpXCIgLz5cclxuXHRcdFx0XHQ8L25nLWNvbnRhaW5lcj5cclxuXHRcdFx0PC9kaXY+XHJcblx0XHQ8L2Rpdj5cclxuXHRcdDxkaXYgY2xhc3M9XCJwYXNzd29yZC1kZXNjcmlwdGlvblwiIFtjbGFzcy5wYXNzd29yZC1lcnJvcl09XCJoYXNOZXdQYXNzd29yZEVycm9yKClcIj5cclxuXHRcdFx0KiBNJmlhY3V0ZTtuaW1vIDggY2FyYWN0ZXJlcywgbWF5JnVhY3V0ZTtzY3VsYXMsIG1pbiZ1YWN1dGU7c2N1bGFzLCBuJnVhY3V0ZTttZXJvcywgdXNlIGNhcmFjdGVyZXMgZXNwZWNpYWxlcy4gRWo6IEAjJCYgKE9ibGlnYXRvcmlvKVxyXG5cdFx0PC9kaXY+XHJcblx0XHQ8ZGl2IGNsYXNzPVwiY2hhbmdlLXBhc3N3b3JkLWlucHV0XCI+XHJcblx0XHRcdDxpbnB1dCBmb3JtQ29udHJvbE5hbWU9XCJjb25maXJtTmV3UGFzc3dvcmRcIlxyXG5cdFx0XHRcdFx0XHQgW3R5cGVdPVwiY29uZmlybU5ld1Bhc3N3b3JkVmlzaWJpbGl0eVwiXHJcblx0XHRcdFx0XHRcdCBwbGFjZWhvbGRlcj1cIkNvbmZpcm1hciBDb250cmFzZcOxYVwiIC8+XHJcblx0XHRcdDxkaXYgY2xhc3M9XCJjaGFuZ2UtcGFzc3dvcmQtaW5wdXQtaWNvblwiPlxyXG5cdFx0XHRcdDxuZy1jb250YWluZXIgKm5nSWY9XCJjb25maXJtTmV3UGFzc3dvcmRWaXNpYmlsaXR5ID09PSAncGFzc3dvcmQnXCI+XHJcblx0XHRcdFx0XHQ8ZGl2ICpuZ0lmPVwiaGFzQ29uZmlybU5ld1Bhc3N3b3JkRXJyb3IoKVwiIGNsYXNzPVwiY2hhbmdlLXBhc3N3b3JkLXdyb25nXCIgKGNsaWNrKT1cInRvZ2dsZUNvbmZpcm1OZXdQYXNzd29yZFZpc2liaWxpdHkodHJ1ZSlcIj54PC9kaXY+XHJcblx0XHRcdFx0XHQ8bmctY29udGFpbmVyICpuZ0lmPVwiIWhhc0NvbmZpcm1OZXdQYXNzd29yZEVycm9yKClcIj5cclxuXHRcdFx0XHRcdFx0PGRpdiAqbmdJZj1cImNvbmZpcm1OZXdQYXNzd29yZFZhbGlkXCIgY2xhc3M9XCJjaGFuZ2UtcGFzc3dvcmQtY29ycmVjdFwiIChjbGljayk9XCJ0b2dnbGVDb25maXJtTmV3UGFzc3dvcmRWaXNpYmlsaXR5KHRydWUpXCI+JiMxMDAwMzs8L2Rpdj5cclxuXHRcdFx0XHRcdFx0PGltZyAqbmdJZj1cIiFjb25maXJtTmV3UGFzc3dvcmRWYWxpZFwiIHNyYz1cIi4uL2Fzc2V0cy9pY29ucy9zaG93X3Bhc3N3b3JkX3Zpc2liaWxpdHlfaWNvbi5zdmdcIiBhbHQ9XCJzaG93XCIgKGNsaWNrKT1cInRvZ2dsZUNvbmZpcm1OZXdQYXNzd29yZFZpc2liaWxpdHkodHJ1ZSlcIiAvPlxyXG5cdFx0XHRcdFx0PC9uZy1jb250YWluZXI+XHJcblx0XHRcdFx0PC9uZy1jb250YWluZXI+XHJcblx0XHRcdFx0PG5nLWNvbnRhaW5lciAqbmdJZj1cImNvbmZpcm1OZXdQYXNzd29yZFZpc2liaWxpdHkgPT09ICd0ZXh0J1wiPlxyXG5cdFx0XHRcdFx0PGltZyBjbGFzcz1cImhpZGUtcGFzc3dvcmQtdmlzaWJpbGl0eS1idXR0b25cIiBzcmM9XCIuLi9hc3NldHMvaWNvbnMvaGlkZV9wYXNzd29yZF92aXNpYmlsaXR5X2ljb24uc3ZnXCIgYWx0PVwiaGlkZVwiIChjbGljayk9XCJ0b2dnbGVDb25maXJtTmV3UGFzc3dvcmRWaXNpYmlsaXR5KGZhbHNlKVwiIC8+XHJcblx0XHRcdFx0PC9uZy1jb250YWluZXI+XHJcblx0XHRcdDwvZGl2PlxyXG5cdFx0PC9kaXY+XHJcblx0XHQ8ZGl2IGNsYXNzPVwicGFzc3dvcmQtZGVzY3JpcHRpb24gcGFzc3dvcmQtZXJyb3JcIiAqbmdJZj1cImhhc0NvbmZpcm1OZXdQYXNzd29yZEVycm9yKClcIj5cclxuXHRcdFx0TGFzIGNvbnRyYXNlJm50aWxkZTthIG5vIGNvaW5jaWRlbiwgcG9yIGZhdm9yIGNvcnJpamEuXHJcblx0XHQ8L2Rpdj5cclxuXHQ8L2Zvcm0+XHJcblx0PGJ1dHRvbiBjbGFzcz1cImNoYW5nZS1wYXNzd29yZC1idG5cIiBbZGlzYWJsZWRdPVwiIWNoYW5nZVBhc3N3b3JkRm9ybUdyb3VwLnZhbGlkIHx8IGxvYWRpbmdcIiAoY2xpY2spPVwic2F2ZUl0ZW0oKVwiPkNhbWJpYXIgQ29udHJhc2UmbnRpbGRlO2E8L2J1dHRvbj5cclxuPC9kaXY+XHJcblxyXG48bGliLWxvYWRlciBbdGhlbWVdPVwidGhlbWVcIiB0eXBlPVwiYmFyXCIgW2xvYWRpbmddPVwibG9hZGluZ1wiPjwvbGliLWxvYWRlcj5cclxuIl19
@@ -0,0 +1,35 @@
1
+ import { Component, Inject } from "@angular/core";
2
+ import { MAT_DIALOG_DATA } from "@angular/material/dialog";
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/material/dialog";
5
+ import * as i2 from "@angular/common";
6
+ export class DialogAlertComponent {
7
+ constructor(dialogRef, data) {
8
+ this.dialogRef = dialogRef;
9
+ this.data = data;
10
+ this.type = "error";
11
+ this.title = null;
12
+ this.message = null;
13
+ if (data.title)
14
+ this.title = data.title;
15
+ if (data.message)
16
+ this.message = data.message;
17
+ if (data.type)
18
+ this.type = data.type;
19
+ }
20
+ close() {
21
+ this.dialogRef.close();
22
+ }
23
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DialogAlertComponent, deps: [{ token: i1.MatDialogRef }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component }); }
24
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DialogAlertComponent, selector: "lib-dialog-alert", host: { attributes: { "id": "dialog-alert-lib" } }, ngImport: i0, template: "<div class=\"dialog-container\">\r\n <div *ngIf=\"type === 'error'\" class=\"dialog-img-container-error\"></div>\r\n <div *ngIf=\"type === 'success'\" class=\"dialog-img-container-success\"></div>\r\n <span class=\"dialog-header\">{{ title }}</span>\r\n <span class=\"dialog-content\">{{ message }}</span>\r\n <div class=\"dialgo-btn-container\">\r\n <button (click)=\"close()\">Cerrar</button>\r\n </div>\r\n</div>\r\n", styles: ["button{display:flex;align-items:center;justify-content:center;border-radius:.5rem;border:none;height:3rem;cursor:pointer;width:80%}.dialog-container{display:flex;flex-direction:column;background-color:#fff;padding:20px;border-radius:8px;width:25rem}.dialog-header{display:flex;align-self:center;font-size:1.563rem;color:#0e2e55;font: 700 30px/38px IBM Plex Sans;padding-top:10px}.dialog-content{padding-top:10px;padding-bottom:20px;text-align:center;font: 500 22px/29px IBM Plex Sans;letter-spacing:0px;color:#0e2e55}.dialgo-btn-container{text-align:center;display:flex;bottom:2rem;width:100%;justify-content:center}.dialgo-btn-container button{background-color:#024496;color:#fff;font-size:1rem;font-weight:500}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
25
+ }
26
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DialogAlertComponent, decorators: [{
27
+ type: Component,
28
+ args: [{ selector: 'lib-dialog-alert', host: {
29
+ 'id': 'dialog-alert-lib'
30
+ }, template: "<div class=\"dialog-container\">\r\n <div *ngIf=\"type === 'error'\" class=\"dialog-img-container-error\"></div>\r\n <div *ngIf=\"type === 'success'\" class=\"dialog-img-container-success\"></div>\r\n <span class=\"dialog-header\">{{ title }}</span>\r\n <span class=\"dialog-content\">{{ message }}</span>\r\n <div class=\"dialgo-btn-container\">\r\n <button (click)=\"close()\">Cerrar</button>\r\n </div>\r\n</div>\r\n", styles: ["button{display:flex;align-items:center;justify-content:center;border-radius:.5rem;border:none;height:3rem;cursor:pointer;width:80%}.dialog-container{display:flex;flex-direction:column;background-color:#fff;padding:20px;border-radius:8px;width:25rem}.dialog-header{display:flex;align-self:center;font-size:1.563rem;color:#0e2e55;font: 700 30px/38px IBM Plex Sans;padding-top:10px}.dialog-content{padding-top:10px;padding-bottom:20px;text-align:center;font: 500 22px/29px IBM Plex Sans;letter-spacing:0px;color:#0e2e55}.dialgo-btn-container{text-align:center;display:flex;bottom:2rem;width:100%;justify-content:center}.dialgo-btn-container button{background-color:#024496;color:#fff;font-size:1rem;font-weight:500}\n"] }]
31
+ }], ctorParameters: function () { return [{ type: i1.MatDialogRef }, { type: undefined, decorators: [{
32
+ type: Inject,
33
+ args: [MAT_DIALOG_DATA]
34
+ }] }]; } });
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLWFsZXJ0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FzcC1saWIvc3JjL2xpYi9kaWFsb2ctYWxlcnQvZGlhbG9nLWFsZXJ0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FzcC1saWIvc3JjL2xpYi9kaWFsb2ctYWxlcnQvZGlhbG9nLWFsZXJ0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xELE9BQU8sRUFBRSxlQUFlLEVBQWdCLE1BQU0sMEJBQTBCLENBQUM7Ozs7QUFVekUsTUFBTSxPQUFPLG9CQUFvQjtJQU0vQixZQUFtQixTQUE2QyxFQUM5QixJQUF1RDtRQUR0RSxjQUFTLEdBQVQsU0FBUyxDQUFvQztRQUM5QixTQUFJLEdBQUosSUFBSSxDQUFtRDtRQUx6RixTQUFJLEdBQVcsT0FBTyxDQUFDO1FBQ3ZCLFVBQUssR0FBa0IsSUFBSSxDQUFDO1FBQzVCLFlBQU8sR0FBa0IsSUFBSSxDQUFDO1FBSTVCLElBQUksSUFBSSxDQUFDLEtBQUs7WUFDWixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUM7UUFFMUIsSUFBSSxJQUFJLENBQUMsT0FBTztZQUNkLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztRQUU5QixJQUFJLElBQUksQ0FBQyxJQUFJO1lBQ1gsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO0lBQzFCLENBQUM7SUFFRCxLQUFLO1FBQ0gsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUN6QixDQUFDOytHQXBCVSxvQkFBb0IsOENBT3JCLGVBQWU7bUdBUGQsb0JBQW9CLDRHQ1hqQyw4YUFTQTs7NEZERWEsb0JBQW9CO2tCQVJoQyxTQUFTOytCQUNFLGtCQUFrQixRQUd0Qjt3QkFDSixJQUFJLEVBQUUsa0JBQWtCO3FCQUN6Qjs7MEJBU0UsTUFBTTsyQkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbmplY3QgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBNQVRfRElBTE9HX0RBVEEsIE1hdERpYWxvZ1JlZiB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2dcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLWRpYWxvZy1hbGVydCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2RpYWxvZy1hbGVydC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vZGlhbG9nLWFsZXJ0LmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgaG9zdDoge1xyXG4gICAgJ2lkJzogJ2RpYWxvZy1hbGVydC1saWInXHJcbiAgfVxyXG59KVxyXG5leHBvcnQgY2xhc3MgRGlhbG9nQWxlcnRDb21wb25lbnRcclxue1xyXG4gIHR5cGU6IHN0cmluZyA9IFwiZXJyb3JcIjtcclxuICB0aXRsZTogc3RyaW5nIHwgbnVsbCA9IG51bGw7XHJcbiAgbWVzc2FnZTogc3RyaW5nIHwgbnVsbCA9IG51bGw7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBkaWFsb2dSZWY6IE1hdERpYWxvZ1JlZjxEaWFsb2dBbGVydENvbXBvbmVudD4sXHJcbiAgICBASW5qZWN0KE1BVF9ESUFMT0dfREFUQSkgcHVibGljIGRhdGEgOiB7IHRpdGxlOiBzdHJpbmcsIG1lc3NhZ2U6IHN0cmluZywgdHlwZTogc3RyaW5nIH0pIHtcclxuICAgIGlmIChkYXRhLnRpdGxlKVxyXG4gICAgICB0aGlzLnRpdGxlID0gZGF0YS50aXRsZTtcclxuXHJcbiAgICBpZiAoZGF0YS5tZXNzYWdlKVxyXG4gICAgICB0aGlzLm1lc3NhZ2UgPSBkYXRhLm1lc3NhZ2U7XHJcblxyXG4gICAgaWYgKGRhdGEudHlwZSlcclxuICAgICAgdGhpcy50eXBlID0gZGF0YS50eXBlO1xyXG4gIH1cclxuXHJcbiAgY2xvc2UoKTogdm9pZCB7XHJcbiAgICB0aGlzLmRpYWxvZ1JlZi5jbG9zZSgpO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwiZGlhbG9nLWNvbnRhaW5lclwiPlxyXG4gIDxkaXYgKm5nSWY9XCJ0eXBlID09PSAnZXJyb3InXCIgY2xhc3M9XCJkaWFsb2ctaW1nLWNvbnRhaW5lci1lcnJvclwiPjwvZGl2PlxyXG4gIDxkaXYgKm5nSWY9XCJ0eXBlID09PSAnc3VjY2VzcydcIiBjbGFzcz1cImRpYWxvZy1pbWctY29udGFpbmVyLXN1Y2Nlc3NcIj48L2Rpdj5cclxuICA8c3BhbiBjbGFzcz1cImRpYWxvZy1oZWFkZXJcIj57eyB0aXRsZSB9fTwvc3Bhbj5cclxuICA8c3BhbiBjbGFzcz1cImRpYWxvZy1jb250ZW50XCI+e3sgbWVzc2FnZSB9fTwvc3Bhbj5cclxuICA8ZGl2IGNsYXNzPVwiZGlhbGdvLWJ0bi1jb250YWluZXJcIj5cclxuICAgIDxidXR0b24gKGNsaWNrKT1cImNsb3NlKClcIj5DZXJyYXI8L2J1dHRvbj5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcbiJdfQ==