ecabs-components 1.0.77 → 1.0.79

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.
package/README.md CHANGED
@@ -23,8 +23,9 @@ Run `ng test ecabs-components` to execute the unit tests via [Karma](https://kar
23
23
 
24
24
  To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI Overview and Command Reference](https://angular.io/cli) page.
25
25
 
26
- v1.0.13 - Fixed emitEvent bahavior of checkbox
26
+ v1.0.13 - Fixed emitEvent behaviour of checkbox
27
27
  v1.0.18 - - Fixed width of date time picker
28
28
  v1.0.75 - Upgrade `EcabsButtons` module to `MDC` styling.
29
29
  v1.0.76 - Upgrade `EcabsInput` module to `MDC` styling.
30
30
  v1.0.77 - Upgrade `MatChips` to `MDC`.
31
+ v1.0.78 - Upgrade `MatSelect` to `MDC`.
@@ -9,12 +9,13 @@ import { EcabsLoadingModule } from '../../ecabs-loading/ecabs-loading.module';
9
9
  import { MAT_FORM_FIELD_DEFAULT_OPTIONS, MatFormFieldModule, } from '@angular/material/form-field';
10
10
  import { MatLegacyTooltipModule as MatTooltipModule } from '@angular/material/legacy-tooltip';
11
11
  import { Overlay } from '@angular/cdk/overlay';
12
- import { MAT_LEGACY_SELECT_SCROLL_STRATEGY as MAT_SELECT_SCROLL_STRATEGY } from '@angular/material/legacy-select';
12
+ import { MAT_SELECT_SCROLL_STRATEGY } from '@angular/material/select';
13
13
  import * as i0 from "@angular/core";
14
14
  const appearance = {
15
15
  appearance: 'outline',
16
16
  floatLabel: 'always',
17
17
  hideRequiredMarker: true,
18
+ subscriptSizing: 'dynamic',
18
19
  };
19
20
  export function scrollFactory(overlay) {
20
21
  return () => overlay.scrollStrategies.block();
@@ -76,4 +77,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
76
77
  exports: [ElementWrapperComponent],
77
78
  }]
78
79
  }] });
79
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxlbWVudC13cmFwcGVyLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VjYWJzLWNvbXBvbmVudHMvc3JjL2xpYi9iYXNlL2VsZW1lbnQtd3JhcHBlci9lbGVtZW50LXdyYXBwZXIubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU3QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDakQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDeEUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDdEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQzlFLE9BQU8sRUFDTCw4QkFBOEIsRUFFOUIsa0JBQWtCLEdBQ25CLE1BQU0sOEJBQThCLENBQUM7QUFDdEMsT0FBTyxFQUFFLHNCQUFzQixJQUFJLGdCQUFnQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDOUYsT0FBTyxFQUF1QixPQUFPLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNwRSxPQUFPLEVBQUUsaUNBQWlDLElBQUksMEJBQTBCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQzs7QUFFbEgsTUFBTSxVQUFVLEdBQStCO0lBQzdDLFVBQVUsRUFBRSxTQUFTO0lBQ3JCLFVBQVUsRUFBRSxRQUFRO0lBQ3BCLGtCQUFrQixFQUFFLElBQUk7Q0FDekIsQ0FBQztBQUVGLE1BQU0sVUFBVSxhQUFhLENBQUMsT0FBZ0I7SUFDNUMsT0FBTyxHQUFHLEVBQUUsQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxFQUFFLENBQUM7QUFDaEQsQ0FBQztBQTJCRCxNQUFNLE9BQU8sb0JBQW9CO3dHQUFwQixvQkFBb0I7eUdBQXBCLG9CQUFvQixpQkF4QmhCLHVCQUF1QixhQUVwQyxZQUFZO1lBQ1osV0FBVztZQUNYLGtCQUFrQjtZQUNsQixxQkFBcUI7WUFDckIsa0JBQWtCO1lBQ2xCLGFBQWE7WUFDYixnQkFBZ0I7WUFDaEIsVUFBVSxhQWFGLHVCQUF1Qjt5R0FFdEIsb0JBQW9CLGFBYnBCO1lBQ1Q7Z0JBQ0UsT0FBTyxFQUFFLDhCQUE4QjtnQkFDdkMsUUFBUSxFQUFFLFVBQVU7YUFDckI7WUFDRDtnQkFDRSxPQUFPLEVBQUUsMEJBQTBCO2dCQUNuQyxVQUFVLEVBQUUsYUFBYTtnQkFDekIsSUFBSSxFQUFFLENBQUMsT0FBTyxDQUFDO2FBQ2hCO1NBQ0YsWUFuQkMsWUFBWTtZQUNaLFdBQVc7WUFDWCxrQkFBa0I7WUFDbEIscUJBQXFCO1lBQ3JCLGtCQUFrQjtZQUNsQixhQUFhO1lBQ2IsZ0JBQWdCO1lBQ2hCLFVBQVU7OzRGQWVELG9CQUFvQjtrQkF6QmhDLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLENBQUMsdUJBQXVCLENBQUM7b0JBQ3ZDLE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLFdBQVc7d0JBQ1gsa0JBQWtCO3dCQUNsQixxQkFBcUI7d0JBQ3JCLGtCQUFrQjt3QkFDbEIsYUFBYTt3QkFDYixnQkFBZ0I7d0JBQ2hCLFVBQVU7cUJBQ1g7b0JBQ0QsU0FBUyxFQUFFO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSw4QkFBOEI7NEJBQ3ZDLFFBQVEsRUFBRSxVQUFVO3lCQUNyQjt3QkFDRDs0QkFDRSxPQUFPLEVBQUUsMEJBQTBCOzRCQUNuQyxVQUFVLEVBQUUsYUFBYTs0QkFDekIsSUFBSSxFQUFFLENBQUMsT0FBTyxDQUFDO3lCQUNoQjtxQkFDRjtvQkFDRCxPQUFPLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQztpQkFDbkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuXHJcbmltcG9ydCB7IEhpbnRNb2R1bGUgfSBmcm9tICcuLi9oaW50L2hpbnQubW9kdWxlJztcclxuaW1wb3J0IHsgRWNhYnNWYWxpZGF0aW9uTW9kdWxlIH0gZnJvbSAnLi4vdmFsaWRhdGlvbi92YWxpZGF0aW9uLm1vZHVsZSc7XHJcbmltcG9ydCB7IEVsZW1lbnRXcmFwcGVyQ29tcG9uZW50IH0gZnJvbSAnLi9lbGVtZW50LXdyYXBwZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xyXG5pbXBvcnQgeyBFY2Fic0xvYWRpbmdNb2R1bGUgfSBmcm9tICcuLi8uLi9lY2Ficy1sb2FkaW5nL2VjYWJzLWxvYWRpbmcubW9kdWxlJztcclxuaW1wb3J0IHtcclxuICBNQVRfRk9STV9GSUVMRF9ERUZBVUxUX09QVElPTlMsXHJcbiAgTWF0Rm9ybUZpZWxkRGVmYXVsdE9wdGlvbnMsXHJcbiAgTWF0Rm9ybUZpZWxkTW9kdWxlLFxyXG59IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGQnO1xyXG5pbXBvcnQgeyBNYXRMZWdhY3lUb29sdGlwTW9kdWxlIGFzIE1hdFRvb2x0aXBNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9sZWdhY3ktdG9vbHRpcCc7XHJcbmltcG9ydCB7IEJsb2NrU2Nyb2xsU3RyYXRlZ3ksIE92ZXJsYXkgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XHJcbmltcG9ydCB7IE1BVF9MRUdBQ1lfU0VMRUNUX1NDUk9MTF9TVFJBVEVHWSBhcyBNQVRfU0VMRUNUX1NDUk9MTF9TVFJBVEVHWSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2xlZ2FjeS1zZWxlY3QnO1xyXG5cclxuY29uc3QgYXBwZWFyYW5jZTogTWF0Rm9ybUZpZWxkRGVmYXVsdE9wdGlvbnMgPSB7XHJcbiAgYXBwZWFyYW5jZTogJ291dGxpbmUnLFxyXG4gIGZsb2F0TGFiZWw6ICdhbHdheXMnLFxyXG4gIGhpZGVSZXF1aXJlZE1hcmtlcjogdHJ1ZSxcclxufTtcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBzY3JvbGxGYWN0b3J5KG92ZXJsYXk6IE92ZXJsYXkpOiAoKSA9PiBCbG9ja1Njcm9sbFN0cmF0ZWd5IHtcclxuICByZXR1cm4gKCkgPT4gb3ZlcmxheS5zY3JvbGxTdHJhdGVnaWVzLmJsb2NrKCk7XHJcbn1cclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgZGVjbGFyYXRpb25zOiBbRWxlbWVudFdyYXBwZXJDb21wb25lbnRdLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIENvbW1vbk1vZHVsZSxcclxuICAgIEZvcm1zTW9kdWxlLFxyXG4gICAgRWNhYnNMb2FkaW5nTW9kdWxlLFxyXG4gICAgRWNhYnNWYWxpZGF0aW9uTW9kdWxlLFxyXG4gICAgTWF0Rm9ybUZpZWxkTW9kdWxlLFxyXG4gICAgTWF0SWNvbk1vZHVsZSxcclxuICAgIE1hdFRvb2x0aXBNb2R1bGUsXHJcbiAgICBIaW50TW9kdWxlLFxyXG4gIF0sXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IE1BVF9GT1JNX0ZJRUxEX0RFRkFVTFRfT1BUSU9OUyxcclxuICAgICAgdXNlVmFsdWU6IGFwcGVhcmFuY2UsXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBNQVRfU0VMRUNUX1NDUk9MTF9TVFJBVEVHWSxcclxuICAgICAgdXNlRmFjdG9yeTogc2Nyb2xsRmFjdG9yeSxcclxuICAgICAgZGVwczogW092ZXJsYXldLFxyXG4gICAgfSxcclxuICBdLFxyXG4gIGV4cG9ydHM6IFtFbGVtZW50V3JhcHBlckNvbXBvbmVudF0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBFbGVtZW50V3JhcHBlck1vZHVsZSB7fVxyXG4iXX0=
80
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxlbWVudC13cmFwcGVyLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VjYWJzLWNvbXBvbmVudHMvc3JjL2xpYi9iYXNlL2VsZW1lbnQtd3JhcHBlci9lbGVtZW50LXdyYXBwZXIubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU3QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDakQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDeEUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDdEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQzlFLE9BQU8sRUFDTCw4QkFBOEIsRUFFOUIsa0JBQWtCLEdBQ25CLE1BQU0sOEJBQThCLENBQUM7QUFDdEMsT0FBTyxFQUFFLHNCQUFzQixJQUFJLGdCQUFnQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDOUYsT0FBTyxFQUF1QixPQUFPLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNwRSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7QUFFdEUsTUFBTSxVQUFVLEdBQStCO0lBQzdDLFVBQVUsRUFBRSxTQUFTO0lBQ3JCLFVBQVUsRUFBRSxRQUFRO0lBQ3BCLGtCQUFrQixFQUFFLElBQUk7SUFDeEIsZUFBZSxFQUFFLFNBQVM7Q0FDM0IsQ0FBQztBQUVGLE1BQU0sVUFBVSxhQUFhLENBQUMsT0FBZ0I7SUFDNUMsT0FBTyxHQUFHLEVBQUUsQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxFQUFFLENBQUM7QUFDaEQsQ0FBQztBQTJCRCxNQUFNLE9BQU8sb0JBQW9CO3dHQUFwQixvQkFBb0I7eUdBQXBCLG9CQUFvQixpQkF4QmhCLHVCQUF1QixhQUVwQyxZQUFZO1lBQ1osV0FBVztZQUNYLGtCQUFrQjtZQUNsQixxQkFBcUI7WUFDckIsa0JBQWtCO1lBQ2xCLGFBQWE7WUFDYixnQkFBZ0I7WUFDaEIsVUFBVSxhQWFGLHVCQUF1Qjt5R0FFdEIsb0JBQW9CLGFBYnBCO1lBQ1Q7Z0JBQ0UsT0FBTyxFQUFFLDhCQUE4QjtnQkFDdkMsUUFBUSxFQUFFLFVBQVU7YUFDckI7WUFDRDtnQkFDRSxPQUFPLEVBQUUsMEJBQTBCO2dCQUNuQyxVQUFVLEVBQUUsYUFBYTtnQkFDekIsSUFBSSxFQUFFLENBQUMsT0FBTyxDQUFDO2FBQ2hCO1NBQ0YsWUFuQkMsWUFBWTtZQUNaLFdBQVc7WUFDWCxrQkFBa0I7WUFDbEIscUJBQXFCO1lBQ3JCLGtCQUFrQjtZQUNsQixhQUFhO1lBQ2IsZ0JBQWdCO1lBQ2hCLFVBQVU7OzRGQWVELG9CQUFvQjtrQkF6QmhDLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLENBQUMsdUJBQXVCLENBQUM7b0JBQ3ZDLE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLFdBQVc7d0JBQ1gsa0JBQWtCO3dCQUNsQixxQkFBcUI7d0JBQ3JCLGtCQUFrQjt3QkFDbEIsYUFBYTt3QkFDYixnQkFBZ0I7d0JBQ2hCLFVBQVU7cUJBQ1g7b0JBQ0QsU0FBUyxFQUFFO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSw4QkFBOEI7NEJBQ3ZDLFFBQVEsRUFBRSxVQUFVO3lCQUNyQjt3QkFDRDs0QkFDRSxPQUFPLEVBQUUsMEJBQTBCOzRCQUNuQyxVQUFVLEVBQUUsYUFBYTs0QkFDekIsSUFBSSxFQUFFLENBQUMsT0FBTyxDQUFDO3lCQUNoQjtxQkFDRjtvQkFDRCxPQUFPLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQztpQkFDbkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuXHJcbmltcG9ydCB7IEhpbnRNb2R1bGUgfSBmcm9tICcuLi9oaW50L2hpbnQubW9kdWxlJztcclxuaW1wb3J0IHsgRWNhYnNWYWxpZGF0aW9uTW9kdWxlIH0gZnJvbSAnLi4vdmFsaWRhdGlvbi92YWxpZGF0aW9uLm1vZHVsZSc7XHJcbmltcG9ydCB7IEVsZW1lbnRXcmFwcGVyQ29tcG9uZW50IH0gZnJvbSAnLi9lbGVtZW50LXdyYXBwZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xyXG5pbXBvcnQgeyBFY2Fic0xvYWRpbmdNb2R1bGUgfSBmcm9tICcuLi8uLi9lY2Ficy1sb2FkaW5nL2VjYWJzLWxvYWRpbmcubW9kdWxlJztcclxuaW1wb3J0IHtcclxuICBNQVRfRk9STV9GSUVMRF9ERUZBVUxUX09QVElPTlMsXHJcbiAgTWF0Rm9ybUZpZWxkRGVmYXVsdE9wdGlvbnMsXHJcbiAgTWF0Rm9ybUZpZWxkTW9kdWxlLFxyXG59IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGQnO1xyXG5pbXBvcnQgeyBNYXRMZWdhY3lUb29sdGlwTW9kdWxlIGFzIE1hdFRvb2x0aXBNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9sZWdhY3ktdG9vbHRpcCc7XHJcbmltcG9ydCB7IEJsb2NrU2Nyb2xsU3RyYXRlZ3ksIE92ZXJsYXkgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XHJcbmltcG9ydCB7IE1BVF9TRUxFQ1RfU0NST0xMX1NUUkFURUdZIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2VsZWN0JztcclxuXHJcbmNvbnN0IGFwcGVhcmFuY2U6IE1hdEZvcm1GaWVsZERlZmF1bHRPcHRpb25zID0ge1xyXG4gIGFwcGVhcmFuY2U6ICdvdXRsaW5lJyxcclxuICBmbG9hdExhYmVsOiAnYWx3YXlzJyxcclxuICBoaWRlUmVxdWlyZWRNYXJrZXI6IHRydWUsXHJcbiAgc3Vic2NyaXB0U2l6aW5nOiAnZHluYW1pYycsXHJcbn07XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gc2Nyb2xsRmFjdG9yeShvdmVybGF5OiBPdmVybGF5KTogKCkgPT4gQmxvY2tTY3JvbGxTdHJhdGVneSB7XHJcbiAgcmV0dXJuICgpID0+IG92ZXJsYXkuc2Nyb2xsU3RyYXRlZ2llcy5ibG9jaygpO1xyXG59XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGRlY2xhcmF0aW9uczogW0VsZW1lbnRXcmFwcGVyQ29tcG9uZW50XSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBGb3Jtc01vZHVsZSxcclxuICAgIEVjYWJzTG9hZGluZ01vZHVsZSxcclxuICAgIEVjYWJzVmFsaWRhdGlvbk1vZHVsZSxcclxuICAgIE1hdEZvcm1GaWVsZE1vZHVsZSxcclxuICAgIE1hdEljb25Nb2R1bGUsXHJcbiAgICBNYXRUb29sdGlwTW9kdWxlLFxyXG4gICAgSGludE1vZHVsZSxcclxuICBdLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBNQVRfRk9STV9GSUVMRF9ERUZBVUxUX09QVElPTlMsXHJcbiAgICAgIHVzZVZhbHVlOiBhcHBlYXJhbmNlLFxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgcHJvdmlkZTogTUFUX1NFTEVDVF9TQ1JPTExfU1RSQVRFR1ksXHJcbiAgICAgIHVzZUZhY3Rvcnk6IHNjcm9sbEZhY3RvcnksXHJcbiAgICAgIGRlcHM6IFtPdmVybGF5XSxcclxuICAgIH0sXHJcbiAgXSxcclxuICBleHBvcnRzOiBbRWxlbWVudFdyYXBwZXJDb21wb25lbnRdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRWxlbWVudFdyYXBwZXJNb2R1bGUge31cclxuIl19
@@ -1,9 +1,9 @@
1
1
  import { Component, EventEmitter, Input, Output, } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
3
  import * as i1 from "@angular/common";
4
- import * as i2 from "@angular/material/legacy-form-field";
5
- import * as i3 from "@angular/material/legacy-select";
6
- import * as i4 from "@angular/material/legacy-core";
4
+ import * as i2 from "@angular/material/form-field";
5
+ import * as i3 from "@angular/material/select";
6
+ import * as i4 from "@angular/material/core";
7
7
  import * as i5 from "@angular/forms";
8
8
  import * as i6 from "@angular/material/legacy-tooltip";
9
9
  export class EcabsLanguageSelectorComponent {
@@ -43,11 +43,11 @@ export class EcabsLanguageSelectorComponent {
43
43
  return lang.of(code);
44
44
  }
45
45
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsLanguageSelectorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
46
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: EcabsLanguageSelectorComponent, selector: "ecabs-language-selector", inputs: { languages: "languages", currentLanguage: "currentLanguage", showLabelTitle: "showLabelTitle", flagOnly: "flagOnly", tooltip: "tooltip" }, outputs: { languageChanged: "languageChanged" }, usesOnChanges: true, ngImport: i0, template: "<mat-form-field [ngClass]=\"{'flag-only': flagOnly}\">\r\n <mat-select class=\"capitalize\" [(ngModel)]=\"selectedLang\" name=\"language\" (ngModelChange)=\"toggleLang()\"\r\n panelClass=\"wide-select\">\r\n <mat-select-trigger>\r\n <div class=\"flex items-center\" [matTooltip]=\"tooltip\" [matTooltipDisabled]=\"!flagOnly || !tooltip\">\r\n <span [ngClass]=\"flagClass(matchSelected())\"></span>\r\n <div *ngIf=\"!flagOnly\" class=\"ml-2\">{{standardLang(matchSelected())}}</div>\r\n </div>\r\n </mat-select-trigger>\r\n <mat-option class=\"capitalize\" *ngFor=\"let lang of languages\" [value]=\"lang\">\r\n <div class=\"flex items-center\">\r\n <span [ngClass]=\"flagClass(lang)\"></span>\r\n <div class=\"ml-2\">{{standardLang(lang)}}</div>\r\n </div>\r\n </mat-option>\r\n </mat-select>\r\n</mat-form-field>\r\n", styles: [":host::ng-deep .mat-mdc-select,:host::ng-deep .mat-select{padding:0;border:0}:host::ng-deep .mat-mdc-select .mat-mdc-select-arrow-wrapper,:host::ng-deep .mat-mdc-select .mat-select-arrow-wrapper,:host::ng-deep .mat-select .mat-mdc-select-arrow-wrapper,:host::ng-deep .mat-select .mat-select-arrow-wrapper{display:none}:host::ng-deep .mat-mdc-select,:host::ng-deep .mat-mdc-select .mdc-list-item,:host::ng-deep .mat-select,:host::ng-deep .mat-select .mdc-list-item{font-size:12px}:host::ng-deep .mat-select-panel-wrap .mat-option{font-size:12px}:host::ng-deep .mat-form-field-infix{width:auto}:host::ng-deep .flag-only .mat-select .mat-select-arrow-wrapper{width:0}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatLegacyFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "component", type: i3.MatLegacySelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { kind: "directive", type: i3.MatLegacySelectTrigger, selector: "mat-select-trigger" }, { kind: "component", type: i4.MatLegacyOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i6.MatLegacyTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }] });
46
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: EcabsLanguageSelectorComponent, selector: "ecabs-language-selector", inputs: { languages: "languages", currentLanguage: "currentLanguage", showLabelTitle: "showLabelTitle", flagOnly: "flagOnly", tooltip: "tooltip" }, outputs: { languageChanged: "languageChanged" }, usesOnChanges: true, ngImport: i0, template: "<mat-form-field appearance=\"outline\"\r\n [ngClass]=\"{'flag-only': flagOnly}\">\r\n <mat-label></mat-label>\r\n <mat-select class=\"capitalize\"\r\n [(ngModel)]=\"selectedLang\"\r\n name=\"language\"\r\n (ngModelChange)=\"toggleLang()\"\r\n panelClass=\"wide-select\">\r\n <mat-select-trigger>\r\n <div class=\"flex items-center\" [matTooltip]=\"tooltip\" [matTooltipDisabled]=\"!flagOnly || !tooltip\">\r\n <span [ngClass]=\"flagClass(matchSelected())\"></span>\r\n <div *ngIf=\"!flagOnly\" class=\"ml-2\">{{ standardLang(matchSelected()) }}</div>\r\n </div>\r\n </mat-select-trigger>\r\n <mat-option class=\"capitalize\" *ngFor=\"let lang of languages\" [value]=\"lang\">\r\n <div class=\"flex items-center\">\r\n <span [ngClass]=\"flagClass(lang)\"></span>\r\n <div class=\"ml-2\">{{ standardLang(lang) }}</div>\r\n </div>\r\n </mat-option>\r\n </mat-select>\r\n</mat-form-field>\r\n", styles: [":root{--color-black: #07080d;--color-white: #ffffff;--color-white-opacity-05: rgba(0, 0, 0, .05);--color-gray-100: #f5f6f9;--color-gray-200: #f8f9f9;--color-gray-300: #d9d9d9;--color-gray-400: #a6a6a6;--color-gray-500: #6b6d73;--color-brand-dark: #193273;--color-brand-dark-rgb: 25, 50, 115;--color-brand-light: #325FDA;--color-brand-light2: #e7efff;--color-brand-light-rgb: 50, 95, 218;--color-brand-300: #e7efff;--color-brand-300-rgb: 231, 239, 255;--color-error: #df3838;--color-error-opacity: #fbe4e4;--color-error-rgb: 223, 56, 56;--color-notification: #f4d04f;--color-notification-rgb: 244, 208, 79;--color-warn: #f2994a;--color-warn-rgb: 242, 153, 74;--color-info: #325fda;--color-info-rgb: 50, 95, 218;--color-warning: #f2994a;--color-warning-opacity: #fdf0e4;--color-success: #25bd3d;--color-success--opacity: #e8f8e5;--color-success-rgb: 37, 189, 61;--color-allocation-started: #E8F8E5;--color-allocation-scheduled: #FDF0E4;--color-allocation-ended: #FBE4E4;--color-allocation-sick: #E7EFFF;--color-allocation-no-show: #EAE5FF;--color-allocation-unavailable: #F2F2F2;--cropper-outline-color: rgba(0, 0, 0, .5)}:host::ng-deep .mat-mdc-select{padding:0;border:0}:host::ng-deep .mat-mdc-select .mat-mdc-select-arrow-wrapper{display:none}:host::ng-deep .mat-mdc-select,:host::ng-deep .mat-mdc-select .mdc-list-item{font-size:12px;font-size:.75rem}:host::ng-deep .mat-mdc-select-panel .mat-mdc-option.mdc-list-item{font-size:12px;font-size:.75rem}:host::ng-deep .mat-mdc-form-field{width:auto}:host::ng-deep .flag-only .mat-mdc-select .mat-mdc-select-arrow-wrapper{width:0}:host::ng-deep .mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-notched-outline .mdc-notched-outline__leading,:host::ng-deep .mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-notched-outline .mdc-notched-outline__notch,:host::ng-deep .mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-notched-outline .mdc-notched-outline__trailing{border:0}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2.MatLabel, selector: "mat-label" }, { kind: "component", type: i3.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex", "panelWidth", "hideSingleSelectionIndicator"], exportAs: ["matSelect"] }, { kind: "directive", type: i3.MatSelectTrigger, selector: "mat-select-trigger" }, { kind: "component", type: i4.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i6.MatLegacyTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }] });
47
47
  }
48
48
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsLanguageSelectorComponent, decorators: [{
49
49
  type: Component,
50
- args: [{ selector: 'ecabs-language-selector', template: "<mat-form-field [ngClass]=\"{'flag-only': flagOnly}\">\r\n <mat-select class=\"capitalize\" [(ngModel)]=\"selectedLang\" name=\"language\" (ngModelChange)=\"toggleLang()\"\r\n panelClass=\"wide-select\">\r\n <mat-select-trigger>\r\n <div class=\"flex items-center\" [matTooltip]=\"tooltip\" [matTooltipDisabled]=\"!flagOnly || !tooltip\">\r\n <span [ngClass]=\"flagClass(matchSelected())\"></span>\r\n <div *ngIf=\"!flagOnly\" class=\"ml-2\">{{standardLang(matchSelected())}}</div>\r\n </div>\r\n </mat-select-trigger>\r\n <mat-option class=\"capitalize\" *ngFor=\"let lang of languages\" [value]=\"lang\">\r\n <div class=\"flex items-center\">\r\n <span [ngClass]=\"flagClass(lang)\"></span>\r\n <div class=\"ml-2\">{{standardLang(lang)}}</div>\r\n </div>\r\n </mat-option>\r\n </mat-select>\r\n</mat-form-field>\r\n", styles: [":host::ng-deep .mat-mdc-select,:host::ng-deep .mat-select{padding:0;border:0}:host::ng-deep .mat-mdc-select .mat-mdc-select-arrow-wrapper,:host::ng-deep .mat-mdc-select .mat-select-arrow-wrapper,:host::ng-deep .mat-select .mat-mdc-select-arrow-wrapper,:host::ng-deep .mat-select .mat-select-arrow-wrapper{display:none}:host::ng-deep .mat-mdc-select,:host::ng-deep .mat-mdc-select .mdc-list-item,:host::ng-deep .mat-select,:host::ng-deep .mat-select .mdc-list-item{font-size:12px}:host::ng-deep .mat-select-panel-wrap .mat-option{font-size:12px}:host::ng-deep .mat-form-field-infix{width:auto}:host::ng-deep .flag-only .mat-select .mat-select-arrow-wrapper{width:0}\n"] }]
50
+ args: [{ selector: 'ecabs-language-selector', template: "<mat-form-field appearance=\"outline\"\r\n [ngClass]=\"{'flag-only': flagOnly}\">\r\n <mat-label></mat-label>\r\n <mat-select class=\"capitalize\"\r\n [(ngModel)]=\"selectedLang\"\r\n name=\"language\"\r\n (ngModelChange)=\"toggleLang()\"\r\n panelClass=\"wide-select\">\r\n <mat-select-trigger>\r\n <div class=\"flex items-center\" [matTooltip]=\"tooltip\" [matTooltipDisabled]=\"!flagOnly || !tooltip\">\r\n <span [ngClass]=\"flagClass(matchSelected())\"></span>\r\n <div *ngIf=\"!flagOnly\" class=\"ml-2\">{{ standardLang(matchSelected()) }}</div>\r\n </div>\r\n </mat-select-trigger>\r\n <mat-option class=\"capitalize\" *ngFor=\"let lang of languages\" [value]=\"lang\">\r\n <div class=\"flex items-center\">\r\n <span [ngClass]=\"flagClass(lang)\"></span>\r\n <div class=\"ml-2\">{{ standardLang(lang) }}</div>\r\n </div>\r\n </mat-option>\r\n </mat-select>\r\n</mat-form-field>\r\n", styles: [":root{--color-black: #07080d;--color-white: #ffffff;--color-white-opacity-05: rgba(0, 0, 0, .05);--color-gray-100: #f5f6f9;--color-gray-200: #f8f9f9;--color-gray-300: #d9d9d9;--color-gray-400: #a6a6a6;--color-gray-500: #6b6d73;--color-brand-dark: #193273;--color-brand-dark-rgb: 25, 50, 115;--color-brand-light: #325FDA;--color-brand-light2: #e7efff;--color-brand-light-rgb: 50, 95, 218;--color-brand-300: #e7efff;--color-brand-300-rgb: 231, 239, 255;--color-error: #df3838;--color-error-opacity: #fbe4e4;--color-error-rgb: 223, 56, 56;--color-notification: #f4d04f;--color-notification-rgb: 244, 208, 79;--color-warn: #f2994a;--color-warn-rgb: 242, 153, 74;--color-info: #325fda;--color-info-rgb: 50, 95, 218;--color-warning: #f2994a;--color-warning-opacity: #fdf0e4;--color-success: #25bd3d;--color-success--opacity: #e8f8e5;--color-success-rgb: 37, 189, 61;--color-allocation-started: #E8F8E5;--color-allocation-scheduled: #FDF0E4;--color-allocation-ended: #FBE4E4;--color-allocation-sick: #E7EFFF;--color-allocation-no-show: #EAE5FF;--color-allocation-unavailable: #F2F2F2;--cropper-outline-color: rgba(0, 0, 0, .5)}:host::ng-deep .mat-mdc-select{padding:0;border:0}:host::ng-deep .mat-mdc-select .mat-mdc-select-arrow-wrapper{display:none}:host::ng-deep .mat-mdc-select,:host::ng-deep .mat-mdc-select .mdc-list-item{font-size:12px;font-size:.75rem}:host::ng-deep .mat-mdc-select-panel .mat-mdc-option.mdc-list-item{font-size:12px;font-size:.75rem}:host::ng-deep .mat-mdc-form-field{width:auto}:host::ng-deep .flag-only .mat-mdc-select .mat-mdc-select-arrow-wrapper{width:0}:host::ng-deep .mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-notched-outline .mdc-notched-outline__leading,:host::ng-deep .mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-notched-outline .mdc-notched-outline__notch,:host::ng-deep .mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-notched-outline .mdc-notched-outline__trailing{border:0}\n"] }]
51
51
  }], propDecorators: { languages: [{
52
52
  type: Input
53
53
  }], currentLanguage: [{
@@ -61,4 +61,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
61
61
  }], languageChanged: [{
62
62
  type: Output
63
63
  }] } });
64
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNhYnMtbGFuZ3VhZ2Utc2VsZWN0b3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWNhYnMtY29tcG9uZW50cy9zcmMvbGliL2VjYWJzLWxhbmd1YWdlLXNlbGVjdG9yL2VjYWJzLWxhbmd1YWdlLXNlbGVjdG9yLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VjYWJzLWNvbXBvbmVudHMvc3JjL2xpYi9lY2Ficy1sYW5ndWFnZS1zZWxlY3Rvci9lY2Ficy1sYW5ndWFnZS1zZWxlY3Rvci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBRUwsTUFBTSxHQUVQLE1BQU0sZUFBZSxDQUFDOzs7Ozs7OztBQU92QixNQUFNLE9BQU8sOEJBQThCO0lBRXpDLFNBQVMsR0FBYSxFQUFFLENBQUM7SUFHekIsZUFBZSxDQUFTO0lBR3hCLGNBQWMsR0FBRyxJQUFJLENBQUM7SUFHdEIsUUFBUSxDQUFVO0lBR2xCLE9BQU8sQ0FBUztJQUdoQixlQUFlLEdBQXlCLElBQUksWUFBWSxFQUFVLENBQUM7SUFFbkUsWUFBWSxDQUFTO0lBRXJCLDBCQUEwQjtJQUMxQixXQUFXLENBQUMsT0FBc0I7UUFDaEMsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsZUFBZSxJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNsRSxDQUFDO0lBRUQsVUFBVTtRQUNSLE9BQU8sSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUN6QixDQUFDLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQ2pELENBQUMsQ0FBQyxTQUFTLENBQUM7SUFDaEIsQ0FBQztJQUVELGFBQWE7UUFDWCxPQUFPLElBQUksQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ3BFLENBQUM7SUFFRCxZQUFZLENBQUMsSUFBWTtRQUN2QixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVELFNBQVMsQ0FBQyxJQUFZO1FBQ3BCLE9BQU8sU0FBUyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLEVBQUUsQ0FBQztJQUNsRCxDQUFDO0lBRU8sV0FBVyxDQUFDLElBQVk7UUFDOUIsSUFBSSxDQUFDLElBQUksRUFBRTtZQUNULE9BQU8sU0FBUyxDQUFDO1NBQ2xCO1FBQ0QsTUFBTSxJQUFJLEdBQUcsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDekMsSUFBSSxFQUFFLFVBQVU7WUFDaEIsZUFBZSxFQUFFLFVBQVU7U0FDNUIsQ0FBQyxDQUFDO1FBRUgsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3ZCLENBQUM7d0dBdERVLDhCQUE4Qjs0RkFBOUIsOEJBQThCLHlSQ2QzQyw4M0JBaUJBOzs0RkRIYSw4QkFBOEI7a0JBTDFDLFNBQVM7K0JBQ0UseUJBQXlCOzhCQU1uQyxTQUFTO3NCQURSLEtBQUs7Z0JBSU4sZUFBZTtzQkFEZCxLQUFLO2dCQUlOLGNBQWM7c0JBRGIsS0FBSztnQkFJTixRQUFRO3NCQURQLEtBQUs7Z0JBSU4sT0FBTztzQkFETixLQUFLO2dCQUlOLGVBQWU7c0JBRGQsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBJbnB1dCxcclxuICBPbkNoYW5nZXMsXHJcbiAgT3V0cHV0LFxyXG4gIFNpbXBsZUNoYW5nZXMsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2VjYWJzLWxhbmd1YWdlLXNlbGVjdG9yJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vZWNhYnMtbGFuZ3VhZ2Utc2VsZWN0b3IuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2VjYWJzLWxhbmd1YWdlLXNlbGVjdG9yLmNvbXBvbmVudC5zY3NzJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBFY2Fic0xhbmd1YWdlU2VsZWN0b3JDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xyXG4gIEBJbnB1dCgpXHJcbiAgbGFuZ3VhZ2VzOiBzdHJpbmdbXSA9IFtdO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIGN1cnJlbnRMYW5ndWFnZTogc3RyaW5nO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHNob3dMYWJlbFRpdGxlID0gdHJ1ZTtcclxuXHJcbiAgQElucHV0KClcclxuICBmbGFnT25seTogYm9vbGVhbjtcclxuXHJcbiAgQElucHV0KClcclxuICB0b29sdGlwOiBzdHJpbmc7XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIGxhbmd1YWdlQ2hhbmdlZDogRXZlbnRFbWl0dGVyPHN0cmluZz4gPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcclxuXHJcbiAgc2VsZWN0ZWRMYW5nOiBzdHJpbmc7XHJcblxyXG4gIC8vZXNsaW50LWRpc2FibGUtbmV4dC1saW5lXHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xyXG4gICAgdGhpcy5zZWxlY3RlZExhbmcgPSB0aGlzLmN1cnJlbnRMYW5ndWFnZSB8fCB0aGlzLmxhbmd1YWdlcz8uWzBdO1xyXG4gIH1cclxuXHJcbiAgdG9nZ2xlTGFuZygpOiB2b2lkIHtcclxuICAgIHJldHVybiB0aGlzLm1hdGNoU2VsZWN0ZWQoKVxyXG4gICAgICA/IHRoaXMubGFuZ3VhZ2VDaGFuZ2VkLmVtaXQodGhpcy5tYXRjaFNlbGVjdGVkKCkpXHJcbiAgICAgIDogdW5kZWZpbmVkO1xyXG4gIH1cclxuXHJcbiAgbWF0Y2hTZWxlY3RlZCgpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMubGFuZ3VhZ2VzPy5maW5kKChsYW5nKSA9PiBsYW5nID09PSB0aGlzLnNlbGVjdGVkTGFuZyk7XHJcbiAgfVxyXG5cclxuICBzdGFuZGFyZExhbmcoY29kZTogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLnN0YW5kYXJkaXNlKGNvZGUpO1xyXG4gIH1cclxuXHJcbiAgZmxhZ0NsYXNzKGxhbmc6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gYGZpIGZpLSR7bGFuZz8uc2xpY2UoLTIpLnRvTG93ZXJDYXNlKCl9YDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgc3RhbmRhcmRpc2UoY29kZTogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIGlmICghY29kZSkge1xyXG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xyXG4gICAgfVxyXG4gICAgY29uc3QgbGFuZyA9IG5ldyBJbnRsLkRpc3BsYXlOYW1lcyhbY29kZV0sIHtcclxuICAgICAgdHlwZTogJ2xhbmd1YWdlJyxcclxuICAgICAgbGFuZ3VhZ2VEaXNwbGF5OiAnc3RhbmRhcmQnLFxyXG4gICAgfSk7XHJcblxyXG4gICAgcmV0dXJuIGxhbmcub2YoY29kZSk7XHJcbiAgfVxyXG59XHJcbiIsIjxtYXQtZm9ybS1maWVsZCBbbmdDbGFzc109XCJ7J2ZsYWctb25seSc6IGZsYWdPbmx5fVwiPlxyXG4gIDxtYXQtc2VsZWN0IGNsYXNzPVwiY2FwaXRhbGl6ZVwiIFsobmdNb2RlbCldPVwic2VsZWN0ZWRMYW5nXCIgbmFtZT1cImxhbmd1YWdlXCIgKG5nTW9kZWxDaGFuZ2UpPVwidG9nZ2xlTGFuZygpXCJcclxuICAgICAgICAgICAgICBwYW5lbENsYXNzPVwid2lkZS1zZWxlY3RcIj5cclxuICAgIDxtYXQtc2VsZWN0LXRyaWdnZXI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGl0ZW1zLWNlbnRlclwiIFttYXRUb29sdGlwXT1cInRvb2x0aXBcIiBbbWF0VG9vbHRpcERpc2FibGVkXT1cIiFmbGFnT25seSB8fCAhdG9vbHRpcFwiPlxyXG4gICAgICAgIDxzcGFuIFtuZ0NsYXNzXT1cImZsYWdDbGFzcyhtYXRjaFNlbGVjdGVkKCkpXCI+PC9zcGFuPlxyXG4gICAgICAgIDxkaXYgKm5nSWY9XCIhZmxhZ09ubHlcIiBjbGFzcz1cIm1sLTJcIj57e3N0YW5kYXJkTGFuZyhtYXRjaFNlbGVjdGVkKCkpfX08L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L21hdC1zZWxlY3QtdHJpZ2dlcj5cclxuICAgIDxtYXQtb3B0aW9uIGNsYXNzPVwiY2FwaXRhbGl6ZVwiICpuZ0Zvcj1cImxldCBsYW5nIG9mIGxhbmd1YWdlc1wiIFt2YWx1ZV09XCJsYW5nXCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgIDxzcGFuIFtuZ0NsYXNzXT1cImZsYWdDbGFzcyhsYW5nKVwiPjwvc3Bhbj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwibWwtMlwiPnt7c3RhbmRhcmRMYW5nKGxhbmcpfX08L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L21hdC1vcHRpb24+XHJcbiAgPC9tYXQtc2VsZWN0PlxyXG48L21hdC1mb3JtLWZpZWxkPlxyXG4iXX0=
64
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNhYnMtbGFuZ3VhZ2Utc2VsZWN0b3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWNhYnMtY29tcG9uZW50cy9zcmMvbGliL2VjYWJzLWxhbmd1YWdlLXNlbGVjdG9yL2VjYWJzLWxhbmd1YWdlLXNlbGVjdG9yLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VjYWJzLWNvbXBvbmVudHMvc3JjL2xpYi9lY2Ficy1sYW5ndWFnZS1zZWxlY3Rvci9lY2Ficy1sYW5ndWFnZS1zZWxlY3Rvci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBRUwsTUFBTSxHQUVQLE1BQU0sZUFBZSxDQUFDOzs7Ozs7OztBQU92QixNQUFNLE9BQU8sOEJBQThCO0lBRXpDLFNBQVMsR0FBYSxFQUFFLENBQUM7SUFHekIsZUFBZSxDQUFTO0lBR3hCLGNBQWMsR0FBRyxJQUFJLENBQUM7SUFHdEIsUUFBUSxDQUFVO0lBR2xCLE9BQU8sQ0FBUztJQUdoQixlQUFlLEdBQXlCLElBQUksWUFBWSxFQUFVLENBQUM7SUFFbkUsWUFBWSxDQUFTO0lBRXJCLDBCQUEwQjtJQUMxQixXQUFXLENBQUMsT0FBc0I7UUFDaEMsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsZUFBZSxJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNsRSxDQUFDO0lBRUQsVUFBVTtRQUNSLE9BQU8sSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUN6QixDQUFDLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQ2pELENBQUMsQ0FBQyxTQUFTLENBQUM7SUFDaEIsQ0FBQztJQUVELGFBQWE7UUFDWCxPQUFPLElBQUksQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ3BFLENBQUM7SUFFRCxZQUFZLENBQUMsSUFBWTtRQUN2QixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVELFNBQVMsQ0FBQyxJQUFZO1FBQ3BCLE9BQU8sU0FBUyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLEVBQUUsQ0FBQztJQUNsRCxDQUFDO0lBRU8sV0FBVyxDQUFDLElBQVk7UUFDOUIsSUFBSSxDQUFDLElBQUksRUFBRTtZQUNULE9BQU8sU0FBUyxDQUFDO1NBQ2xCO1FBQ0QsTUFBTSxJQUFJLEdBQUcsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDekMsSUFBSSxFQUFFLFVBQVU7WUFDaEIsZUFBZSxFQUFFLFVBQVU7U0FDNUIsQ0FBQyxDQUFDO1FBRUgsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3ZCLENBQUM7d0dBdERVLDhCQUE4Qjs0RkFBOUIsOEJBQThCLHlSQ2QzQyw0L0JBc0JBOzs0RkRSYSw4QkFBOEI7a0JBTDFDLFNBQVM7K0JBQ0UseUJBQXlCOzhCQU1uQyxTQUFTO3NCQURSLEtBQUs7Z0JBSU4sZUFBZTtzQkFEZCxLQUFLO2dCQUlOLGNBQWM7c0JBRGIsS0FBSztnQkFJTixRQUFRO3NCQURQLEtBQUs7Z0JBSU4sT0FBTztzQkFETixLQUFLO2dCQUlOLGVBQWU7c0JBRGQsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBJbnB1dCxcclxuICBPbkNoYW5nZXMsXHJcbiAgT3V0cHV0LFxyXG4gIFNpbXBsZUNoYW5nZXMsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2VjYWJzLWxhbmd1YWdlLXNlbGVjdG9yJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vZWNhYnMtbGFuZ3VhZ2Utc2VsZWN0b3IuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2VjYWJzLWxhbmd1YWdlLXNlbGVjdG9yLmNvbXBvbmVudC5zY3NzJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBFY2Fic0xhbmd1YWdlU2VsZWN0b3JDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xyXG4gIEBJbnB1dCgpXHJcbiAgbGFuZ3VhZ2VzOiBzdHJpbmdbXSA9IFtdO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIGN1cnJlbnRMYW5ndWFnZTogc3RyaW5nO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHNob3dMYWJlbFRpdGxlID0gdHJ1ZTtcclxuXHJcbiAgQElucHV0KClcclxuICBmbGFnT25seTogYm9vbGVhbjtcclxuXHJcbiAgQElucHV0KClcclxuICB0b29sdGlwOiBzdHJpbmc7XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIGxhbmd1YWdlQ2hhbmdlZDogRXZlbnRFbWl0dGVyPHN0cmluZz4gPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcclxuXHJcbiAgc2VsZWN0ZWRMYW5nOiBzdHJpbmc7XHJcblxyXG4gIC8vZXNsaW50LWRpc2FibGUtbmV4dC1saW5lXHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xyXG4gICAgdGhpcy5zZWxlY3RlZExhbmcgPSB0aGlzLmN1cnJlbnRMYW5ndWFnZSB8fCB0aGlzLmxhbmd1YWdlcz8uWzBdO1xyXG4gIH1cclxuXHJcbiAgdG9nZ2xlTGFuZygpOiB2b2lkIHtcclxuICAgIHJldHVybiB0aGlzLm1hdGNoU2VsZWN0ZWQoKVxyXG4gICAgICA/IHRoaXMubGFuZ3VhZ2VDaGFuZ2VkLmVtaXQodGhpcy5tYXRjaFNlbGVjdGVkKCkpXHJcbiAgICAgIDogdW5kZWZpbmVkO1xyXG4gIH1cclxuXHJcbiAgbWF0Y2hTZWxlY3RlZCgpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMubGFuZ3VhZ2VzPy5maW5kKChsYW5nKSA9PiBsYW5nID09PSB0aGlzLnNlbGVjdGVkTGFuZyk7XHJcbiAgfVxyXG5cclxuICBzdGFuZGFyZExhbmcoY29kZTogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLnN0YW5kYXJkaXNlKGNvZGUpO1xyXG4gIH1cclxuXHJcbiAgZmxhZ0NsYXNzKGxhbmc6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gYGZpIGZpLSR7bGFuZz8uc2xpY2UoLTIpLnRvTG93ZXJDYXNlKCl9YDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgc3RhbmRhcmRpc2UoY29kZTogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIGlmICghY29kZSkge1xyXG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xyXG4gICAgfVxyXG4gICAgY29uc3QgbGFuZyA9IG5ldyBJbnRsLkRpc3BsYXlOYW1lcyhbY29kZV0sIHtcclxuICAgICAgdHlwZTogJ2xhbmd1YWdlJyxcclxuICAgICAgbGFuZ3VhZ2VEaXNwbGF5OiAnc3RhbmRhcmQnLFxyXG4gICAgfSk7XHJcblxyXG4gICAgcmV0dXJuIGxhbmcub2YoY29kZSk7XHJcbiAgfVxyXG59XHJcbiIsIjxtYXQtZm9ybS1maWVsZCBhcHBlYXJhbmNlPVwib3V0bGluZVwiXHJcbiAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7J2ZsYWctb25seSc6IGZsYWdPbmx5fVwiPlxyXG4gIDxtYXQtbGFiZWw+PC9tYXQtbGFiZWw+XHJcbiAgPG1hdC1zZWxlY3QgY2xhc3M9XCJjYXBpdGFsaXplXCJcclxuICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cInNlbGVjdGVkTGFuZ1wiXHJcbiAgICAgICAgICAgICAgbmFtZT1cImxhbmd1YWdlXCJcclxuICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJ0b2dnbGVMYW5nKClcIlxyXG4gICAgICAgICAgICAgIHBhbmVsQ2xhc3M9XCJ3aWRlLXNlbGVjdFwiPlxyXG4gICAgPG1hdC1zZWxlY3QtdHJpZ2dlcj5cclxuICAgICAgPGRpdiBjbGFzcz1cImZsZXggaXRlbXMtY2VudGVyXCIgW21hdFRvb2x0aXBdPVwidG9vbHRpcFwiIFttYXRUb29sdGlwRGlzYWJsZWRdPVwiIWZsYWdPbmx5IHx8ICF0b29sdGlwXCI+XHJcbiAgICAgICAgPHNwYW4gW25nQ2xhc3NdPVwiZmxhZ0NsYXNzKG1hdGNoU2VsZWN0ZWQoKSlcIj48L3NwYW4+XHJcbiAgICAgICAgPGRpdiAqbmdJZj1cIiFmbGFnT25seVwiIGNsYXNzPVwibWwtMlwiPnt7IHN0YW5kYXJkTGFuZyhtYXRjaFNlbGVjdGVkKCkpIH19PC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9tYXQtc2VsZWN0LXRyaWdnZXI+XHJcbiAgICA8bWF0LW9wdGlvbiBjbGFzcz1cImNhcGl0YWxpemVcIiAqbmdGb3I9XCJsZXQgbGFuZyBvZiBsYW5ndWFnZXNcIiBbdmFsdWVdPVwibGFuZ1wiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZmxleCBpdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICA8c3BhbiBbbmdDbGFzc109XCJmbGFnQ2xhc3MobGFuZylcIj48L3NwYW4+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cIm1sLTJcIj57eyBzdGFuZGFyZExhbmcobGFuZykgfX08L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L21hdC1vcHRpb24+XHJcbiAgPC9tYXQtc2VsZWN0PlxyXG48L21hdC1mb3JtLWZpZWxkPlxyXG4iXX0=
@@ -2,7 +2,7 @@ import { NgModule } from '@angular/core';
2
2
  import { CommonModule } from '@angular/common';
3
3
  import { EcabsLanguageSelectorComponent } from './ecabs-language-selector.component';
4
4
  import { FormsModule, ReactiveFormsModule } from '@angular/forms';
5
- import { MatLegacySelectModule as MatSelectModule } from '@angular/material/legacy-select';
5
+ import { MatSelectModule } from '@angular/material/select';
6
6
  import { MatLegacyTooltipModule as MatTooltipModule } from '@angular/material/legacy-tooltip';
7
7
  import * as i0 from "@angular/core";
8
8
  export class EcabsLanguageSelectorModule {
@@ -32,4 +32,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
32
32
  exports: [EcabsLanguageSelectorComponent],
33
33
  }]
34
34
  }] });
35
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNhYnMtbGFuZ3VhZ2Utc2VsZWN0b3IubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWNhYnMtY29tcG9uZW50cy9zcmMvbGliL2VjYWJzLWxhbmd1YWdlLXNlbGVjdG9yL2VjYWJzLWxhbmd1YWdlLXNlbGVjdG9yLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUNyRixPQUFPLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEUsT0FBTyxFQUFFLHFCQUFxQixJQUFJLGVBQWUsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQzNGLE9BQU8sRUFBRSxzQkFBc0IsSUFBSSxnQkFBZ0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOztBQWE5RixNQUFNLE9BQU8sMkJBQTJCO3dHQUEzQiwyQkFBMkI7eUdBQTNCLDJCQUEyQixpQkFWdkIsOEJBQThCLGFBRTNDLFlBQVk7WUFDWixlQUFlO1lBQ2YsV0FBVztZQUNYLG1CQUFtQjtZQUNuQixnQkFBZ0IsYUFFUiw4QkFBOEI7eUdBRTdCLDJCQUEyQixZQVJwQyxZQUFZO1lBQ1osZUFBZTtZQUNmLFdBQVc7WUFDWCxtQkFBbUI7WUFDbkIsZ0JBQWdCOzs0RkFJUCwyQkFBMkI7a0JBWHZDLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLENBQUMsOEJBQThCLENBQUM7b0JBQzlDLE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLGVBQWU7d0JBQ2YsV0FBVzt3QkFDWCxtQkFBbUI7d0JBQ25CLGdCQUFnQjtxQkFDakI7b0JBQ0QsT0FBTyxFQUFFLENBQUMsOEJBQThCLENBQUM7aUJBQzFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgRWNhYnNMYW5ndWFnZVNlbGVjdG9yQ29tcG9uZW50IH0gZnJvbSAnLi9lY2Ficy1sYW5ndWFnZS1zZWxlY3Rvci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgTWF0TGVnYWN5U2VsZWN0TW9kdWxlIGFzIE1hdFNlbGVjdE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2xlZ2FjeS1zZWxlY3QnO1xyXG5pbXBvcnQgeyBNYXRMZWdhY3lUb29sdGlwTW9kdWxlIGFzIE1hdFRvb2x0aXBNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9sZWdhY3ktdG9vbHRpcCc7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGRlY2xhcmF0aW9uczogW0VjYWJzTGFuZ3VhZ2VTZWxlY3RvckNvbXBvbmVudF0sXHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgTWF0U2VsZWN0TW9kdWxlLFxyXG4gICAgRm9ybXNNb2R1bGUsXHJcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxyXG4gICAgTWF0VG9vbHRpcE1vZHVsZSxcclxuICBdLFxyXG4gIGV4cG9ydHM6IFtFY2Fic0xhbmd1YWdlU2VsZWN0b3JDb21wb25lbnRdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRWNhYnNMYW5ndWFnZVNlbGVjdG9yTW9kdWxlIHt9XHJcbiJdfQ==
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNhYnMtbGFuZ3VhZ2Utc2VsZWN0b3IubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWNhYnMtY29tcG9uZW50cy9zcmMvbGliL2VjYWJzLWxhbmd1YWdlLXNlbGVjdG9yL2VjYWJzLWxhbmd1YWdlLXNlbGVjdG9yLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUNyRixPQUFPLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxzQkFBc0IsSUFBSSxnQkFBZ0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOztBQWE5RixNQUFNLE9BQU8sMkJBQTJCO3dHQUEzQiwyQkFBMkI7eUdBQTNCLDJCQUEyQixpQkFWdkIsOEJBQThCLGFBRTNDLFlBQVk7WUFDWixlQUFlO1lBQ2YsV0FBVztZQUNYLG1CQUFtQjtZQUNuQixnQkFBZ0IsYUFFUiw4QkFBOEI7eUdBRTdCLDJCQUEyQixZQVJwQyxZQUFZO1lBQ1osZUFBZTtZQUNmLFdBQVc7WUFDWCxtQkFBbUI7WUFDbkIsZ0JBQWdCOzs0RkFJUCwyQkFBMkI7a0JBWHZDLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLENBQUMsOEJBQThCLENBQUM7b0JBQzlDLE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLGVBQWU7d0JBQ2YsV0FBVzt3QkFDWCxtQkFBbUI7d0JBQ25CLGdCQUFnQjtxQkFDakI7b0JBQ0QsT0FBTyxFQUFFLENBQUMsOEJBQThCLENBQUM7aUJBQzFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgRWNhYnNMYW5ndWFnZVNlbGVjdG9yQ29tcG9uZW50IH0gZnJvbSAnLi9lY2Ficy1sYW5ndWFnZS1zZWxlY3Rvci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgTWF0U2VsZWN0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2VsZWN0JztcclxuaW1wb3J0IHsgTWF0TGVnYWN5VG9vbHRpcE1vZHVsZSBhcyBNYXRUb29sdGlwTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvbGVnYWN5LXRvb2x0aXAnO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICBkZWNsYXJhdGlvbnM6IFtFY2Fic0xhbmd1YWdlU2VsZWN0b3JDb21wb25lbnRdLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIENvbW1vbk1vZHVsZSxcclxuICAgIE1hdFNlbGVjdE1vZHVsZSxcclxuICAgIEZvcm1zTW9kdWxlLFxyXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcclxuICAgIE1hdFRvb2x0aXBNb2R1bGUsXHJcbiAgXSxcclxuICBleHBvcnRzOiBbRWNhYnNMYW5ndWFnZVNlbGVjdG9yQ29tcG9uZW50XSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEVjYWJzTGFuZ3VhZ2VTZWxlY3Rvck1vZHVsZSB7fVxyXG4iXX0=
@@ -7,9 +7,9 @@ import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
7
7
  import * as i0 from "@angular/core";
8
8
  import * as i1 from "@angular/common";
9
9
  import * as i2 from "../base/element-wrapper/element-wrapper.component";
10
- import * as i3 from "@angular/material/legacy-form-field";
11
- import * as i4 from "@angular/material/legacy-select";
12
- import * as i5 from "@angular/material/legacy-core";
10
+ import * as i3 from "@angular/material/form-field";
11
+ import * as i4 from "@angular/material/select";
12
+ import * as i5 from "@angular/material/core";
13
13
  import * as i6 from "@angular/material/tooltip";
14
14
  import * as i7 from "@angular/forms";
15
15
  import * as i8 from "ngx-mat-select-search";
@@ -302,7 +302,7 @@ export class EcabsSelectComponent extends ElementBaseComponent {
302
302
  useExisting: EcabsSelectComponent,
303
303
  multi: true,
304
304
  },
305
- ], viewQueries: [{ propertyName: "allSelected", first: true, predicate: ["allSelected"], descendants: true }, { propertyName: "matSelectSearchComponent", first: true, predicate: MatSelectSearchComponent, descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<app-element-wrapper [data]=\"getData()\">\r\n <mat-form-field [ngClass]=\"{ disabled: useOnlyDisabledClass }\">\r\n <mat-select\r\n class=\"form-field__select\"\r\n [(ngModel)]=\"value\"\r\n (closed)=\"onTouch()\"\r\n [id]=\"name\"\r\n appearance=\"outline\"\r\n [multiple]=\"multiple\"\r\n [disabled]=\"disabled\"\r\n [placeholder]=\"placeholder\"\r\n [disableRipple]=\"true\"\r\n (selectionChange)=\"onSelectionChanged($event)\"\r\n [matTooltip]=\"trigger\"\r\n appTooltipIfTruncated\r\n [classNameTruncatedTooltip]=\"'mat-select-value'\"\r\n >\r\n <mat-select-trigger>\r\n <span>{{ trigger }}</span>\r\n </mat-select-trigger>\r\n <mat-option *ngIf=\"useSearchOption\">\r\n <ngx-mat-select-search\r\n [formControl]=\"itemFilterCtrl\"\r\n [placeholderLabel]=\"searchFieldPlaceholder\"\r\n [noEntriesFoundLabel]=\"noEntriesFoundLabel\"\r\n ></ngx-mat-select-search>\r\n </mat-option>\r\n <mat-option *ngIf=\"useNoneOption\" (click)=\"toggleNone()\">{{ noneLabel }}</mat-option>\r\n <mat-option\r\n #allSelected\r\n *ngIf=\"useSelectAllOption && showFilteredAllOption\"\r\n (click)=\"toggleAllSelection()\"\r\n [value]=\"selectAllValue\"\r\n >\r\n {{allLabel }}\r\n </mat-option>\r\n <mat-option\r\n *ngFor=\"let item of filteredItems$ | async\"\r\n [value]=\"item.value\"\r\n (click)=\"togglePerOne()\"\r\n [matTooltip]=\"item.label\"\r\n appTooltipIfTruncated\r\n [classNameTruncatedTooltip]=\"'mat-option-text'\"\r\n >\r\n {{ item.label }}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n</app-element-wrapper>\r\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.ElementWrapperComponent, selector: "app-element-wrapper", inputs: ["data", "showCloseIcon", "focusedFlag", "showPassword", "control"], outputs: ["showHidePassword", "clear", "increase", "decrease"] }, { kind: "component", type: i3.MatLegacyFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "component", type: i4.MatLegacySelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { kind: "directive", type: i4.MatLegacySelectTrigger, selector: "mat-select-trigger" }, { kind: "component", type: i5.MatLegacyOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "directive", type: i6.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "directive", type: i7.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i7.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i8.MatSelectSearchComponent, selector: "ngx-mat-select-search", inputs: ["placeholderLabel", "type", "closeIcon", "closeSvgIcon", "noEntriesFoundLabel", "clearSearchInput", "searching", "disableInitialFocus", "enableClearOnEscapePressed", "preventHomeEndKeyPropagation", "disableScrollToActiveOnOptionsChanged", "ariaLabel", "showToggleAllCheckbox", "toggleAllCheckboxChecked", "toggleAllCheckboxIndeterminate", "toggleAllCheckboxTooltipMessage", "toggleAllCheckboxTooltipPosition", "hideClearSearchButton", "alwaysRestoreSelectedOptionsMulti"], outputs: ["toggleAll"] }, { kind: "directive", type: i7.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i9.TooltipIfTruncatedDirective, selector: "[matTooltip][appTooltipIfTruncated]", inputs: ["classNameTruncatedTooltip"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }] });
305
+ ], viewQueries: [{ propertyName: "allSelected", first: true, predicate: ["allSelected"], descendants: true }, { propertyName: "matSelectSearchComponent", first: true, predicate: MatSelectSearchComponent, descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<app-element-wrapper [data]=\"getData()\">\r\n <mat-form-field [ngClass]=\"{ disabled: useOnlyDisabledClass }\">\r\n <mat-select class=\"form-field__select\"\r\n [(ngModel)]=\"value\"\r\n (closed)=\"onTouch()\"\r\n [id]=\"name\"\r\n [multiple]=\"multiple\"\r\n [disabled]=\"disabled\"\r\n [placeholder]=\"placeholder\"\r\n [disableRipple]=\"true\"\r\n (selectionChange)=\"onSelectionChanged($event)\"\r\n [matTooltip]=\"trigger\"\r\n appTooltipIfTruncated\r\n [classNameTruncatedTooltip]=\"'mat-select-value'\">\r\n <mat-select-trigger>\r\n <span>{{ trigger }}</span>\r\n </mat-select-trigger>\r\n\r\n <mat-option *ngIf=\"useSearchOption\">\r\n <ngx-mat-select-search [formControl]=\"itemFilterCtrl\"\r\n [placeholderLabel]=\"searchFieldPlaceholder\"\r\n [noEntriesFoundLabel]=\"noEntriesFoundLabel\">\r\n </ngx-mat-select-search>\r\n </mat-option>\r\n\r\n <mat-option *ngIf=\"useNoneOption\"\r\n (click)=\"toggleNone()\"\r\n (keydown.enter)=\"toggleNone()\">\r\n {{ noneLabel }}\r\n </mat-option>\r\n\r\n <mat-option #allSelected\r\n *ngIf=\"useSelectAllOption && showFilteredAllOption\"\r\n (click)=\"toggleAllSelection()\"\r\n (keydown.enter)=\"toggleAllSelection()\"\r\n [value]=\"selectAllValue\">\r\n {{ allLabel }}\r\n </mat-option>\r\n\r\n <mat-option *ngFor=\"let item of filteredItems$ | async\"\r\n [value]=\"item.value\"\r\n (click)=\"togglePerOne()\"\r\n (keydown.enter)=\"togglePerOne()\"\r\n [matTooltip]=\"item.label\"\r\n appTooltipIfTruncated\r\n [classNameTruncatedTooltip]=\"'mdc-list-item__primary-text'\">\r\n {{ item.label }}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n</app-element-wrapper>\r\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.ElementWrapperComponent, selector: "app-element-wrapper", inputs: ["data", "showCloseIcon", "focusedFlag", "showPassword", "control"], outputs: ["showHidePassword", "clear", "increase", "decrease"] }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "component", type: i4.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex", "panelWidth", "hideSingleSelectionIndicator"], exportAs: ["matSelect"] }, { kind: "directive", type: i4.MatSelectTrigger, selector: "mat-select-trigger" }, { kind: "component", type: i5.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "directive", type: i6.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "directive", type: i7.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i7.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i8.MatSelectSearchComponent, selector: "ngx-mat-select-search", inputs: ["placeholderLabel", "type", "closeIcon", "closeSvgIcon", "noEntriesFoundLabel", "clearSearchInput", "searching", "disableInitialFocus", "enableClearOnEscapePressed", "preventHomeEndKeyPropagation", "disableScrollToActiveOnOptionsChanged", "ariaLabel", "showToggleAllCheckbox", "toggleAllCheckboxChecked", "toggleAllCheckboxIndeterminate", "toggleAllCheckboxTooltipMessage", "toggleAllCheckboxTooltipPosition", "hideClearSearchButton", "alwaysRestoreSelectedOptionsMulti"], outputs: ["toggleAll"] }, { kind: "directive", type: i7.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i9.TooltipIfTruncatedDirective, selector: "[matTooltip][appTooltipIfTruncated]", inputs: ["classNameTruncatedTooltip"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }] });
306
306
  }
307
307
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsSelectComponent, decorators: [{
308
308
  type: Component,
@@ -312,7 +312,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
312
312
  useExisting: EcabsSelectComponent,
313
313
  multi: true,
314
314
  },
315
- ], template: "<app-element-wrapper [data]=\"getData()\">\r\n <mat-form-field [ngClass]=\"{ disabled: useOnlyDisabledClass }\">\r\n <mat-select\r\n class=\"form-field__select\"\r\n [(ngModel)]=\"value\"\r\n (closed)=\"onTouch()\"\r\n [id]=\"name\"\r\n appearance=\"outline\"\r\n [multiple]=\"multiple\"\r\n [disabled]=\"disabled\"\r\n [placeholder]=\"placeholder\"\r\n [disableRipple]=\"true\"\r\n (selectionChange)=\"onSelectionChanged($event)\"\r\n [matTooltip]=\"trigger\"\r\n appTooltipIfTruncated\r\n [classNameTruncatedTooltip]=\"'mat-select-value'\"\r\n >\r\n <mat-select-trigger>\r\n <span>{{ trigger }}</span>\r\n </mat-select-trigger>\r\n <mat-option *ngIf=\"useSearchOption\">\r\n <ngx-mat-select-search\r\n [formControl]=\"itemFilterCtrl\"\r\n [placeholderLabel]=\"searchFieldPlaceholder\"\r\n [noEntriesFoundLabel]=\"noEntriesFoundLabel\"\r\n ></ngx-mat-select-search>\r\n </mat-option>\r\n <mat-option *ngIf=\"useNoneOption\" (click)=\"toggleNone()\">{{ noneLabel }}</mat-option>\r\n <mat-option\r\n #allSelected\r\n *ngIf=\"useSelectAllOption && showFilteredAllOption\"\r\n (click)=\"toggleAllSelection()\"\r\n [value]=\"selectAllValue\"\r\n >\r\n {{allLabel }}\r\n </mat-option>\r\n <mat-option\r\n *ngFor=\"let item of filteredItems$ | async\"\r\n [value]=\"item.value\"\r\n (click)=\"togglePerOne()\"\r\n [matTooltip]=\"item.label\"\r\n appTooltipIfTruncated\r\n [classNameTruncatedTooltip]=\"'mat-option-text'\"\r\n >\r\n {{ item.label }}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n</app-element-wrapper>\r\n" }]
315
+ ], template: "<app-element-wrapper [data]=\"getData()\">\r\n <mat-form-field [ngClass]=\"{ disabled: useOnlyDisabledClass }\">\r\n <mat-select class=\"form-field__select\"\r\n [(ngModel)]=\"value\"\r\n (closed)=\"onTouch()\"\r\n [id]=\"name\"\r\n [multiple]=\"multiple\"\r\n [disabled]=\"disabled\"\r\n [placeholder]=\"placeholder\"\r\n [disableRipple]=\"true\"\r\n (selectionChange)=\"onSelectionChanged($event)\"\r\n [matTooltip]=\"trigger\"\r\n appTooltipIfTruncated\r\n [classNameTruncatedTooltip]=\"'mat-select-value'\">\r\n <mat-select-trigger>\r\n <span>{{ trigger }}</span>\r\n </mat-select-trigger>\r\n\r\n <mat-option *ngIf=\"useSearchOption\">\r\n <ngx-mat-select-search [formControl]=\"itemFilterCtrl\"\r\n [placeholderLabel]=\"searchFieldPlaceholder\"\r\n [noEntriesFoundLabel]=\"noEntriesFoundLabel\">\r\n </ngx-mat-select-search>\r\n </mat-option>\r\n\r\n <mat-option *ngIf=\"useNoneOption\"\r\n (click)=\"toggleNone()\"\r\n (keydown.enter)=\"toggleNone()\">\r\n {{ noneLabel }}\r\n </mat-option>\r\n\r\n <mat-option #allSelected\r\n *ngIf=\"useSelectAllOption && showFilteredAllOption\"\r\n (click)=\"toggleAllSelection()\"\r\n (keydown.enter)=\"toggleAllSelection()\"\r\n [value]=\"selectAllValue\">\r\n {{ allLabel }}\r\n </mat-option>\r\n\r\n <mat-option *ngFor=\"let item of filteredItems$ | async\"\r\n [value]=\"item.value\"\r\n (click)=\"togglePerOne()\"\r\n (keydown.enter)=\"togglePerOne()\"\r\n [matTooltip]=\"item.label\"\r\n appTooltipIfTruncated\r\n [classNameTruncatedTooltip]=\"'mdc-list-item__primary-text'\">\r\n {{ item.label }}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n</app-element-wrapper>\r\n" }]
316
316
  }], ctorParameters: function () { return [{ type: i0.Injector }, { type: i0.ChangeDetectorRef }, { type: i0.DestroyRef }]; }, propDecorators: { items: [{
317
317
  type: Input
318
318
  }], multiple: [{
@@ -352,4 +352,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
352
352
  type: ViewChild,
353
353
  args: [MatSelectSearchComponent]
354
354
  }] } });
355
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNhYnMtc2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VjYWJzLWNvbXBvbmVudHMvc3JjL2xpYi9lY2Ficy1zZWxlY3QvZWNhYnMtc2VsZWN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VjYWJzLWNvbXBvbmVudHMvc3JjL2xpYi9lY2Ficy1zZWxlY3QvZWNhYnMtc2VsZWN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFHTCxTQUFTLEVBRVQsWUFBWSxFQUVaLEtBQUssRUFJTCxNQUFNLEVBRU4sU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDTCxrQkFBa0IsRUFDbEIsU0FBUyxFQUNULGlCQUFpQixHQUNsQixNQUFNLGdCQUFnQixDQUFDO0FBRXhCLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ2pFLE9BQU8sRUFDTCxlQUFlLEVBQ2YsYUFBYSxFQUNiLFlBQVksRUFDWixHQUFHLEVBQ0gsWUFBWSxHQUNiLE1BQU0sTUFBTSxDQUFDO0FBQ2QsT0FBTyxvQkFBb0IsTUFBTSxzQkFBc0IsQ0FBQztBQUV4RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7Ozs7Ozs7Ozs7QUFhaEUsTUFBTSxPQUFPLG9CQUNYLFNBQVEsb0JBQW9CO0lBb0VUO0lBQ0E7SUFDQTtJQW5FVixLQUFLLENBQWtCO0lBQ3ZCLFFBQVEsR0FBRyxLQUFLLENBQUM7SUFDakIsYUFBYSxHQUFHLEtBQUssQ0FBQztJQUN0QixvQkFBb0IsR0FBRyxLQUFLLENBQUM7SUFDN0Isc0JBQXNCLEdBQUcsUUFBUSxDQUFDO0lBQ2xDLGVBQWUsR0FBRyxLQUFLLENBQUM7SUFDeEIsa0JBQWtCLEdBQUcsS0FBSyxDQUFDO0lBQzNCLCtCQUErQixHQUFHLElBQUksQ0FB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QUFwQixvQkFBb0Isc25CQVJwQjtZQUNUO2dCQUNFLE9BQU8sRUFBRSxpQkFBaUI7Z0JBQzFCLFdBQVcsRUFBRSxvQkFBb0I7Z0JBQ2pDLEtBQUssRUFBRSxJQUFJO2FBQ1o7U0FDRixpTEF5QlUsd0JBQXdCLDRGQ25FckMsbXdEQWlEQTs7NEZETGEsb0JBQW9CO2tCQVhoQyxTQUFTOytCQUNFLGNBQWMsYUFFYjt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLHNCQUFzQjs0QkFDakMsS0FBSyxFQUFFLElBQUk7eUJBQ1o7cUJBQ0Y7d0pBTVEsS0FBSztzQkFBYixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFDRyxvQkFBb0I7c0JBQTVCLEtBQUs7Z0JBQ0csc0JBQXNCO3NCQUE5QixLQUFLO2dCQUNHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBQ0csa0JBQWtCO3NCQUExQixLQUFLO2dCQUNHLCtCQUErQjtzQkFBdkMsS0FBSztnQkFDRyxjQUFjO3NCQUF0QixLQUFLO2dCQUNHLG1CQUFtQjtzQkFBM0IsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNJLGlCQUFpQjtzQkFBMUIsTUFBTTtnQkFFRyxlQUFlO3NCQUF4QixNQUFNO2dCQUVtQixXQUFXO3NCQUFwQyxTQUFTO3VCQUFDLGFBQWE7Z0JBRXhCLHdCQUF3QjtzQkFEdkIsU0FBUzt1QkFBQyx3QkFBd0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIEFmdGVyVmlld0luaXQsXHJcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgQ29tcG9uZW50LFxyXG4gIERlc3Ryb3lSZWYsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIEluamVjdG9yLFxyXG4gIElucHV0LFxyXG4gIE9uQ2hhbmdlcyxcclxuICBPbkRlc3Ryb3ksXHJcbiAgT25Jbml0LFxyXG4gIE91dHB1dCxcclxuICBTaW1wbGVDaGFuZ2VzLFxyXG4gIFZpZXdDaGlsZCxcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtcclxuICBVbnR5cGVkRm9ybUNvbnRyb2wsXHJcbiAgTmdDb250cm9sLFxyXG4gIE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgTWF0T3B0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY29yZSc7XHJcbmltcG9ydCB7IE1hdFNlbGVjdFNlYXJjaENvbXBvbmVudCB9IGZyb20gJ25neC1tYXQtc2VsZWN0LXNlYXJjaCc7XHJcbmltcG9ydCB7XHJcbiAgQmVoYXZpb3JTdWJqZWN0LFxyXG4gIGNvbWJpbmVMYXRlc3QsXHJcbiAgZGVib3VuY2VUaW1lLFxyXG4gIG1hcCxcclxuICBTdWJzY3JpcHRpb24sXHJcbn0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCBFbGVtZW50QmFzZUNvbXBvbmVudCBmcm9tICcuLi9iYXNlL2VsZW1lbnQtYmFzZSc7XHJcbmltcG9ydCB7IFNlbGVjdE9wdGlvbiB9IGZyb20gJy4uL2Jhc2UvbW9kZWxzL3NlbGVjdC5tb2RlbHMnO1xyXG5pbXBvcnQgeyB0YWtlVW50aWxEZXN0cm95ZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2VjYWJzLXNlbGVjdCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2VjYWJzLXNlbGVjdC5jb21wb25lbnQuaHRtbCcsXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG4gICAgICB1c2VFeGlzdGluZzogRWNhYnNTZWxlY3RDb21wb25lbnQsXHJcbiAgICAgIG11bHRpOiB0cnVlLFxyXG4gICAgfSxcclxuICBdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRWNhYnNTZWxlY3RDb21wb25lbnRcclxuICBleHRlbmRzIEVsZW1lbnRCYXNlQ29tcG9uZW50XHJcbiAgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcywgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95XHJcbntcclxuICBASW5wdXQoKSBpdGVtcyE6IFNlbGVjdE9wdGlvbltdO1xyXG4gIEBJbnB1dCgpIG11bHRpcGxlID0gZmFsc2U7XHJcbiAgQElucHV0KCkgdXNlTm9uZU9wdGlvbiA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHVzZU9ubHlEaXNhYmxlZENsYXNzID0gZmFsc2U7XHJcbiAgQElucHV0KCkgc2VhcmNoRmllbGRQbGFjZWhvbGRlciA9ICdTZWFyY2gnO1xyXG4gIEBJbnB1dCgpIHVzZVNlYXJjaE9wdGlvbiA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHVzZVNlbGVjdEFsbE9wdGlvbiA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHNldEFsbE9wdGlvbkFmdGVyQ2hvc2VuQWxsSXRlbXMgPSB0cnVlO1xyXG4gIEBJbnB1dCgpIHNlbGVjdEFsbFZhbHVlOiBhbnkgPSAwO1xyXG4gIEBJbnB1dCgpIG5vRW50cmllc0ZvdW5kTGFiZWwgPSAnTm8gbWF0Y2hpbmcgZm91bmQnO1xyXG4gIEBJbnB1dCgpIG5vbmVMYWJlbCA9ICdOb25lJztcclxuICBASW5wdXQoKSBhbGxMYWJlbCA9ICdBbGwnO1xyXG4gIEBJbnB1dCgpIG90aGVyTGFiZWwgPSAnT3RoZXInO1xyXG4gIEBJbnB1dCgpIG90aGVyc0xhYmVsID0gJ090aGVycyc7XHJcbiAgQE91dHB1dCgpIHVwZGF0ZUZpbHRlckl0ZW1zOiBFdmVudEVtaXR0ZXI8c3RyaW5nPiA9XHJcbiAgICBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcclxuICBAT3V0cHV0KCkgc2VsZWN0aW9uQ2hhbmdlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG5cclxuICBAVmlld0NoaWxkKCdhbGxTZWxlY3RlZCcpIGFsbFNlbGVjdGVkITogTWF0T3B0aW9uO1xyXG4gIEBWaWV3Q2hpbGQoTWF0U2VsZWN0U2VhcmNoQ29tcG9uZW50KVxyXG4gIG1hdFNlbGVjdFNlYXJjaENvbXBvbmVudCE6IE1hdFNlbGVjdFNlYXJjaENvbXBvbmVudDtcclxuXHJcbiAgdmFsITogYW55O1xyXG4gIGZpbHRlcmVkSXRlbXMkOiBCZWhhdmlvclN1YmplY3Q8eyBsYWJlbDogc3RyaW5nOyB2YWx1ZTogYW55IH1bXT4gPVxyXG4gICAgbmV3IEJlaGF2aW9yU3ViamVjdDx7IGxhYmVsOiBzdHJpbmc7IHZhbHVlOiBhbnkgfVtdPihbXSk7XHJcbiAgaXRlbUZpbHRlckN0cmw6IFVudHlwZWRGb3JtQ29udHJvbCA9IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woKTtcclxuICBpc0NsZWFyQWxsID0gZmFsc2U7XHJcbiAgc2hvd0ZpbHRlcmVkQWxsT3B0aW9uID0gdHJ1ZTtcclxuICBzZWxlY3RlZEl0ZW1zOiB7IGxhYmVsOiBzdHJpbmc7IHZhbHVlOiBhbnkgfVtdID0gW107XHJcbiAgbm90U2VsZWN0ZWRJdGVtczogeyBsYWJlbDogc3RyaW5nOyB2YWx1ZTogYW55IH1bXSA9IFtdO1xyXG4gIHN1YnNjcmlwdGlvbnMgPSBuZXcgU3Vic2NyaXB0aW9uKCk7XHJcblxyXG4gIGdldCB2YWx1ZSgpOiBhbnkge1xyXG4gICAgcmV0dXJuIHRoaXMudmFsO1xyXG4gIH1cclxuXHJcbiAgZ2V0IHRyaWdnZXIoKTogc3RyaW5nIHtcclxuICAgIGlmICh0aGlzLmdldEFsbFNlbGVjdGVkQ2hlY2tlZCgpKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLmFsbExhYmVsO1xyXG4gICAgfVxyXG4gICAgY29uc3QgZmlyc3RDaG9zZW5WYWx1ZSA9XHJcbiAgICAgIHRoaXMudmFsICYmIHRoaXMubXVsdGlwbGVcclxuICAgICAgICA/IHRoaXMuZ2V0TGFiZWwodGhpcy52YWxbMF0pXHJcbiAgICAgICAgOiB0aGlzLmdldExhYmVsKHRoaXMudmFsKTtcclxuXHJcbiAgICByZXR1cm4gdGhpcy5tdWx0aXBsZSAmJiB0aGlzLnZhbHVlPy5sZW5ndGggPiAxXHJcbiAgICAgID8gYCR7Zmlyc3RDaG9zZW5WYWx1ZX0gKCske1xyXG4gICAgICAgICAgdGhpcy51c2VTZWxlY3RBbGxPcHRpb24gJiYgdGhpcy5hbGxTZWxlY3RlZD8uc2VsZWN0ZWRcclxuICAgICAgICAgICAgPyB0aGlzLnZhbHVlPy5sZW5ndGggLSAyXHJcbiAgICAgICAgICAgIDogdGhpcy52YWx1ZT8ubGVuZ3RoIC0gMVxyXG4gICAgICAgIH1cclxuICAgICAgICAgICR7dGhpcy52YWx1ZT8ubGVuZ3RoID09PSAyID8gdGhpcy5vdGhlckxhYmVsIDogdGhpcy5vdGhlcnNMYWJlbH0pYFxyXG4gICAgICA6IGZpcnN0Q2hvc2VuVmFsdWU7XHJcbiAgfVxyXG5cclxuICBzZXQgdmFsdWUodmFsKSB7XHJcbiAgICBpZiAodGhpcy52YWwgIT09IHZhbCkge1xyXG4gICAgICB0aGlzLnZhbCA9IHZhbDtcclxuICAgICAgdGhpcy5zZXRTZWxlY3RlZEl0ZW1zKCk7XHJcbiAgICAgIHRoaXMub25DaGFuZ2UodmFsKTtcclxuICAgICAgdGhpcy5vblRvdWNoKHZhbCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgaW5qZWN0b3I6IEluamVjdG9yLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGRlc3Ryb3lSZWY6IERlc3Ryb3lSZWYsXHJcbiAgKSB7XHJcbiAgICBzdXBlcigpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xyXG4gICAgY29uc3QgeyBpdGVtcyB9ID0gY2hhbmdlcztcclxuXHJcbiAgICBpZiAoaXRlbXMgJiYgaXRlbXMuY3VycmVudFZhbHVlKSB7XHJcbiAgICAgIHRoaXMuZmlsdGVySXRlbXMoKTtcclxuXHJcbiAgICAgIGlmIChcclxuICAgICAgICB0aGlzLm11bHRpcGxlICYmXHJcbiAgICAgICAgdGhpcy51c2VTZWxlY3RBbGxPcHRpb24gJiZcclxuICAgICAgICB0aGlzLmFsbFNlbGVjdGVkPy5zZWxlY3RlZFxyXG4gICAgICApIHtcclxuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgIHRoaXMuY29udHJvbC5wYXRjaFZhbHVlKFxyXG4gICAgICAgICAgICBbXHJcbiAgICAgICAgICAgICAgLi4udGhpcy5maWx0ZXJlZEl0ZW1zJC52YWx1ZS5tYXAoKGl0ZW0pID0+IGl0ZW0udmFsdWUpLFxyXG4gICAgICAgICAgICAgIHRoaXMuc2VsZWN0QWxsVmFsdWUsXHJcbiAgICAgICAgICAgIF0sXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICBlbWl0RXZlbnQ6IGZhbHNlLFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgKTtcclxuICAgICAgICB9LCAxMDApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XHJcbiAgICBjb25zdCBuZ0NvbnRyb2w6IE5nQ29udHJvbCA9IHRoaXMuaW5qZWN0b3IuZ2V0KE5nQ29udHJvbCwgbnVsbCk7XHJcblxyXG4gICAgaWYgKG5nQ29udHJvbCkge1xyXG4gICAgICB0aGlzLmNvbnRyb2wgPSBuZ0NvbnRyb2wuY29udHJvbCBhcyBVbnR5cGVkRm9ybUNvbnRyb2w7XHJcbiAgICAgIHRoaXMuY29udHJvbC5zdGF0dXNDaGFuZ2VzXHJcbiAgICAgICAgLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKHRoaXMuZGVzdHJveVJlZikpXHJcbiAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLnVwZGF0ZURpc2FibGVkU3RhdGUoKTtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy5tYXRTZWxlY3RTZWFyY2hDb21wb25lbnQpIHtcclxuICAgICAgdGhpcy5tYXRTZWxlY3RTZWFyY2hDb21wb25lbnQuX3Nob3dOb0VudHJpZXNGb3VuZCQgPSBjb21iaW5lTGF0ZXN0KFtcclxuICAgICAgICB0aGlzLml0ZW1GaWx0ZXJDdHJsLnZhbHVlQ2hhbmdlcyxcclxuICAgICAgICB0aGlzLmZpbHRlcmVkSXRlbXMkLFxyXG4gICAgICBdKS5waXBlKFxyXG4gICAgICAgIG1hcChcclxuICAgICAgICAgIChbdmFsdWUsIGl0ZW1zXSkgPT5cclxuICAgICAgICAgICAgdGhpcy5tYXRTZWxlY3RTZWFyY2hDb21wb25lbnQubm9FbnRyaWVzRm91bmRMYWJlbCAmJlxyXG4gICAgICAgICAgICB2YWx1ZSAmJlxyXG4gICAgICAgICAgICBpdGVtcy5sZW5ndGggPT09IDAsXHJcbiAgICAgICAgKSxcclxuICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLnVwZGF0ZURpc2FibGVkU3RhdGUoKTtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLmFkZChcclxuICAgICAgdGhpcy5pdGVtRmlsdGVyQ3RybC52YWx1ZUNoYW5nZXNcclxuICAgICAgICAucGlwZShkZWJvdW5jZVRpbWUoMjAwKSlcclxuICAgICAgICAuc3Vic2NyaWJlKCh2YWx1ZTogYW55KSA9PiB7XHJcbiAgICAgICAgICB0aGlzLmZpbHRlckl0ZW1zKCk7XHJcbiAgICAgICAgICB0aGlzLnVwZGF0ZUZpbHRlckl0ZW1zLmVtaXQodmFsdWUpO1xyXG5cclxuICAgICAgICAgIGlmICh0aGlzLmlzQ2xlYXJBbGwpIHtcclxuICAgICAgICAgICAgdGhpcy5jb250cm9sLnBhdGNoVmFsdWUoW10sIHsgZW1pdEV2ZW50OiBmYWxzZSB9KTtcclxuICAgICAgICAgICAgdGhpcy5pc0NsZWFyQWxsID0gZmFsc2U7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSksXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1mdW5jdGlvblxyXG4gIG9uQ2hhbmdlOiBhbnkgPSAoKSA9PiB7fTtcclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LWZ1bmN0aW9uXHJcbiAgb25Ub3VjaDogYW55ID0gKCkgPT4ge307XHJcblxyXG4gIHRvZ2dsZUFsbFNlbGVjdGlvbigpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLmFsbFNlbGVjdGVkLnNlbGVjdGVkKSB7XHJcbiAgICAgIGlmICh0aGlzLnVzZVNlYXJjaE9wdGlvbikge1xyXG4gICAgICAgIHRoaXMuY29udHJvbC5wYXRjaFZhbHVlKFtcclxuICAgICAgICAgIC4uLnRoaXMuZmlsdGVyZWRJdGVtcyQudmFsdWUubWFwKChpdGVtKSA9PiBpdGVtLnZhbHVlKSxcclxuICAgICAgICAgIHRoaXMuc2VsZWN0QWxsVmFsdWUsXHJcbiAgICAgICAgXSk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5jb250cm9sLnBhdGNoVmFsdWUoW1xyXG4gICAgICAgICAgLi4udGhpcy5pdGVtcy5tYXAoKGl0ZW0pID0+IGl0ZW0udmFsdWUpLFxyXG4gICAgICAgICAgdGhpcy5zZWxlY3RBbGxWYWx1ZSxcclxuICAgICAgICBdKTtcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5jb250cm9sLnBhdGNoVmFsdWUoW10pO1xyXG4gICAgICB0aGlzLmlzQ2xlYXJBbGwgPSB0cnVlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgdG9nZ2xlUGVyT25lKCk6IHZvaWQge1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIGlmICh0aGlzLmFsbFNlbGVjdGVkKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuYWxsU2VsZWN0ZWQuc2VsZWN0ZWQpIHtcclxuICAgICAgICAgIHRoaXMuYWxsU2VsZWN0ZWQuZGVzZWxlY3QoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKFxyXG4gICAgICAgICAgdGhpcy5zZXRBbGxPcHRpb25BZnRlckNob3NlbkFsbEl0ZW1zICYmXHJcbiAgICAgICAgICB0aGlzLmNvbnRyb2wudmFsdWUubGVuZ3RoID09PSB0aGlzLml0ZW1zLmxlbmd0aFxyXG4gICAgICAgICkge1xyXG4gICAgICAgICAgdGhpcy5hbGxTZWxlY3RlZC5zZWxlY3QoKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG5cclxuICAgIHRoaXMuaXNDbGVhckFsbCA9IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgdG9nZ2xlTm9uZSgpOiB2b2lkIHtcclxuICAgIHRoaXMuc2VsZWN0ZWRJdGVtcyA9IFtdO1xyXG4gIH1cclxuXHJcbiAgZ2V0QWxsU2VsZWN0ZWRDaGVja2VkKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuYWxsU2VsZWN0ZWQgIT09IHVuZGVmaW5lZCAmJiB0aGlzLmFsbFNlbGVjdGVkLnNlbGVjdGVkO1xyXG4gIH1cclxuXHJcbiAgZ2V0TGFiZWwodmFsOiBhbnkpOiBzdHJpbmcge1xyXG4gICAgaWYgKFxyXG4gICAgICB0aGlzLnVzZVNlbGVjdEFsbE9wdGlvbiAmJlxyXG4gICAgICB0aGlzLmFsbFNlbGVjdGVkPy5zZWxlY3RlZCAmJlxyXG4gICAgICB0aGlzLml0ZW1zICYmXHJcbiAgICAgIHRoaXMuaXRlbXMubGVuZ3RoID4gMFxyXG4gICAgKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLml0ZW1zWzBdLmxhYmVsO1xyXG4gICAgfVxyXG5cclxuICAgIGxldCBpdGVtOiB7IGxhYmVsOiBzdHJpbmc7IHZhbHVlOiBhbnkgfTtcclxuXHJcbiAgICBpZiAodmFsICE9PSB1bmRlZmluZWQpIHtcclxuICAgICAgaWYgKHRoaXMudXNlU2VhcmNoT3B0aW9uKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuc2VsZWN0ZWRJdGVtcyAmJiB0aGlzLnNlbGVjdGVkSXRlbXMubGVuZ3RoID4gMCkge1xyXG4gICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1zaGFkb3dcclxuICAgICAgICAgIGl0ZW0gPSB0aGlzLnNlbGVjdGVkSXRlbXMuZmluZCgoaXRlbSkgPT4gaXRlbS52YWx1ZSA9PT0gdmFsKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgaWYgKHRoaXMuaXRlbXMgJiYgdGhpcy5pdGVtcy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXNoYWRvd1xyXG4gICAgICAgICAgaXRlbSA9IHRoaXMuaXRlbXMuZmluZCgoaXRlbSkgPT4gaXRlbS52YWx1ZSA9PT0gdmFsKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHJldHVybiBpdGVtID8gaXRlbS5sYWJlbCA6ICcnO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiAnJztcclxuICB9XHJcblxyXG4gIHdyaXRlVmFsdWUodmFsdWU6IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xyXG4gIH1cclxuXHJcbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLm9uQ2hhbmdlID0gZm47XHJcbiAgfVxyXG5cclxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLm9uVG91Y2ggPSBmbjtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLnVuc3Vic2NyaWJlKCk7XHJcbiAgfVxyXG5cclxuICBvblNlbGVjdGlvbkNoYW5nZWQoJGV2ZW50OiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMuc2VsZWN0aW9uQ2hhbmdlLmVtaXQoJGV2ZW50KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZmlsdGVySXRlbXMoKTogdm9pZCB7XHJcbiAgICB0aGlzLnNldFNlbGVjdGVkSXRlbXMoKTtcclxuXHJcbiAgICBpZiAoIXRoaXMuaXRlbXMpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIGdldCB0aGUgc2VhcmNoIGtleXdvcmRcclxuICAgIGxldCBzZWFyY2g6IHN0cmluZyA9IHRoaXMuaXRlbUZpbHRlckN0cmwudmFsdWU7XHJcblxyXG4gICAgaWYgKCFzZWFyY2ggfHwgc2VhcmNoID09PSAnJykge1xyXG4gICAgICBpZiAodGhpcy51c2VTZWFyY2hPcHRpb24gJiYgIXRoaXMuaXRlbXM/Lmxlbmd0aCkge1xyXG4gICAgICAgIHRoaXMuZmlsdGVyZWRJdGVtcyQubmV4dChbLi4udGhpcy5zZWxlY3RlZEl0ZW1zXSk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5maWx0ZXJlZEl0ZW1zJC5uZXh0KHRoaXMuaXRlbXM/LnNsaWNlKCkpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0aGlzLnNob3dGaWx0ZXJlZEFsbE9wdGlvbiA9IHRydWU7XHJcblxyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgc2VhcmNoID0gc2VhcmNoLnRvTG93ZXJDYXNlKCk7XHJcblxyXG4gICAgdGhpcy5zaG93RmlsdGVyZWRBbGxPcHRpb24gPVxyXG4gICAgICB0aGlzLmFsbExhYmVsLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoc2VhcmNoLnRvTG93ZXJDYXNlKCkpIHx8XHJcbiAgICAgICh0aGlzLnZhbHVlIGluc3RhbmNlb2YgQXJyYXkgJiZcclxuICAgICAgICB0aGlzLnZhbHVlLmluY2x1ZGVzKHRoaXMuc2VsZWN0QWxsVmFsdWUpKSB8fFxyXG4gICAgICAoISh0aGlzLnZhbHVlIGluc3RhbmNlb2YgQXJyYXkpICYmIHRoaXMudmFsdWUgPT09IHRoaXMuc2VsZWN0QWxsVmFsdWUpO1xyXG4gICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XHJcblxyXG4gICAgaWYgKHRoaXMudXNlU2VhcmNoT3B0aW9uKSB7XHJcbiAgICAgIGNvbnN0IGZpbHRlcmVkSXRlbXMgPVxyXG4gICAgICAgIHRoaXMubm90U2VsZWN0ZWRJdGVtcz8ubGVuZ3RoID4gMFxyXG4gICAgICAgICAgPyB0aGlzLm5vdFNlbGVjdGVkSXRlbXMuZmlsdGVyKChpdGVtKSA9PlxyXG4gICAgICAgICAgICAgIGl0ZW0ubGFiZWwudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyhzZWFyY2gudG9Mb3dlckNhc2UoKSksXHJcbiAgICAgICAgICAgIClcclxuICAgICAgICAgIDogW107XHJcbiAgICAgIHRoaXMuZmlsdGVyZWRJdGVtcyQubmV4dChbLi4udGhpcy5zZWxlY3RlZEl0ZW1zLCAuLi5maWx0ZXJlZEl0ZW1zXSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmZpbHRlcmVkSXRlbXMkLm5leHQoXHJcbiAgICAgICAgdGhpcy5pdGVtcz8ubGVuZ3RoID4gMFxyXG4gICAgICAgICAgPyB0aGlzLml0ZW1zLmZpbHRlcigoaXRlbSkgPT5cclxuICAgICAgICAgICAgICBpdGVtLmxhYmVsLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoc2VhcmNoLnRvTG93ZXJDYXNlKCkpLFxyXG4gICAgICAgICAgICApXHJcbiAgICAgICAgICA6IFtdLFxyXG4gICAgICApO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzZXRTZWxlY3RlZEl0ZW1zKCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMudXNlU2VhcmNoT3B0aW9uKSB7XHJcbiAgICAgIGNvbnN0IHNlbGVjdGVkSXRlbXMgPSBbXTtcclxuXHJcbiAgICAgIGlmICh0aGlzLnZhbHVlKSB7XHJcbiAgICAgICAgaWYgKHRoaXMudmFsdWUgaW5zdGFuY2VvZiBBcnJheSkge1xyXG4gICAgICAgICAgY29uc3Qgc2tpcFN0ZXBzID0gdGhpcy52YWx1ZS5pbmNsdWRlcyh0aGlzLnNlbGVjdEFsbFZhbHVlKTtcclxuXHJcbiAgICAgICAgICBpZiAoIXNraXBTdGVwcykge1xyXG4gICAgICAgICAgICB0aGlzLnZhbHVlLmZvckVhY2goKHZhbHVlKSA9PiB7XHJcbiAgICAgICAgICAgICAgY29uc3QgaW5kZXggPSB0aGlzLnNlbGVjdGVkSXRlbXM/LmZpbmRJbmRleChcclxuICAgICAgICAgICAgICAgIChzZWxlY3RlZEl0ZW0pID0+IHNlbGVjdGVkSXRlbS52YWx1ZSA9PT0gdmFsdWUsXHJcbiAgICAgICAgICAgICAgKTtcclxuXHJcbiAgICAgICAgICAgICAgaWYgKGluZGV4ICE9PSAtMSkge1xyXG4gICAgICAgICAgICAgICAgc2VsZWN0ZWRJdGVtcy5wdXNoKHRoaXMuc2VsZWN0ZWRJdGVtc1tpbmRleF0pO1xyXG4gICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXNoYWRvd1xyXG4gICAgICAgICAgICAgICAgY29uc3QgaXRlbSA9IHRoaXMuaXRlbXM/LmZpbmQoKGl0ZW0pID0+IGl0ZW0udmFsdWUgPT09IHZhbHVlKTtcclxuXHJcbiAgICAgICAgICAgICAgICBpZiAoaXRlbSkge1xyXG4gICAgICAgICAgICAgICAgICBzZWxlY3RlZEl0ZW1zLnB1c2goaXRlbSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRJdGVtcy5mb3JFYWNoKChzZWxlY3RlZEl0ZW0pID0+IHtcclxuICAgICAgICAgICAgICBjb25zdCBpbmRleCA9IHRoaXMudmFsdWUuZmluZChcclxuICAgICAgICAgICAgICAgICh2YWx1ZSkgPT4gc2VsZWN0ZWRJdGVtLnZhbHVlID09PSB2YWx1ZSxcclxuICAgICAgICAgICAgICApO1xyXG5cclxuICAgICAgICAgICAgICBpZiAoaW5kZXggPT09IC0xKSB7XHJcbiAgICAgICAgICAgICAgICBzZWxlY3RlZEl0ZW1zLnNwbGljZShpbmRleCwgMSk7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgY29uc3QgaW5kZXggPSB0aGlzLnNlbGVjdGVkSXRlbXMuZmluZEluZGV4KFxyXG4gICAgICAgICAgICAoc2VsZWN0ZWRJdGVtKSA9PiBzZWxlY3RlZEl0ZW0udmFsdWUgPT09IHRoaXMudmFsdWUsXHJcbiAgICAgICAgICApO1xyXG5cclxuICAgICAgICAgIGlmIChpbmRleCAhPT0gLTEpIHtcclxuICAgICAgICAgICAgc2VsZWN0ZWRJdGVtcy5wdXNoKHRoaXMuc2VsZWN0ZWRJdGVtc1tpbmRleF0pO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1zaGFkb3dcclxuICAgICAgICAgICAgY29uc3QgaXRlbSA9IHRoaXMuaXRlbXMuZmluZCgoaXRlbSkgPT4gaXRlbS52YWx1ZSA9PT0gdGhpcy52YWx1ZSk7XHJcblxyXG4gICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbWF4LWRlcHRoXHJcbiAgICAgICAgICAgIGlmIChpdGVtKSB7XHJcbiAgICAgICAgICAgICAgc2VsZWN0ZWRJdGVtcy5wdXNoKGl0ZW0pO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aGlzLnNlbGVjdGVkSXRlbXMgPSBbLi4uc2VsZWN0ZWRJdGVtc107XHJcbiAgICAgICAgdGhpcy5ub3RTZWxlY3RlZEl0ZW1zID0gdGhpcy5pdGVtcz8uZmlsdGVyKFxyXG4gICAgICAgICAgKGl0ZW0pID0+XHJcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRJdGVtcy5maW5kSW5kZXgoXHJcbiAgICAgICAgICAgICAgKHNlbGVjdGVkSXRlbSkgPT4gc2VsZWN0ZWRJdGVtLnZhbHVlID09PSBpdGVtLnZhbHVlLFxyXG4gICAgICAgICAgICApID09PSAtMSxcclxuICAgICAgICApO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMubm90U2VsZWN0ZWRJdGVtcyA9IHRoaXMuaXRlbXM/LnNsaWNlKCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiPGFwcC1lbGVtZW50LXdyYXBwZXIgW2RhdGFdPVwiZ2V0RGF0YSgpXCI+XHJcbiAgPG1hdC1mb3JtLWZpZWxkIFtuZ0NsYXNzXT1cInsgZGlzYWJsZWQ6IHVzZU9ubHlEaXNhYmxlZENsYXNzIH1cIj5cclxuICAgIDxtYXQtc2VsZWN0XHJcbiAgICAgIGNsYXNzPVwiZm9ybS1maWVsZF9fc2VsZWN0XCJcclxuICAgICAgWyhuZ01vZGVsKV09XCJ2YWx1ZVwiXHJcbiAgICAgIChjbG9zZWQpPVwib25Ub3VjaCgpXCJcclxuICAgICAgW2lkXT1cIm5hbWVcIlxyXG4gICAgICBhcHBlYXJhbmNlPVwib3V0bGluZVwiXHJcbiAgICAgIFttdWx0aXBsZV09XCJtdWx0aXBsZVwiXHJcbiAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXHJcbiAgICAgIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXHJcbiAgICAgIFtkaXNhYmxlUmlwcGxlXT1cInRydWVcIlxyXG4gICAgICAoc2VsZWN0aW9uQ2hhbmdlKT1cIm9uU2VsZWN0aW9uQ2hhbmdlZCgkZXZlbnQpXCJcclxuICAgICAgW21hdFRvb2x0aXBdPVwidHJpZ2dlclwiXHJcbiAgICAgIGFwcFRvb2x0aXBJZlRydW5jYXRlZFxyXG4gICAgICBbY2xhc3NOYW1lVHJ1bmNhdGVkVG9vbHRpcF09XCInbWF0LXNlbGVjdC12YWx1ZSdcIlxyXG4gICAgPlxyXG4gICAgICA8bWF0LXNlbGVjdC10cmlnZ2VyPlxyXG4gICAgICAgIDxzcGFuPnt7IHRyaWdnZXIgfX08L3NwYW4+XHJcbiAgICAgIDwvbWF0LXNlbGVjdC10cmlnZ2VyPlxyXG4gICAgICA8bWF0LW9wdGlvbiAqbmdJZj1cInVzZVNlYXJjaE9wdGlvblwiPlxyXG4gICAgICAgIDxuZ3gtbWF0LXNlbGVjdC1zZWFyY2hcclxuICAgICAgICAgIFtmb3JtQ29udHJvbF09XCJpdGVtRmlsdGVyQ3RybFwiXHJcbiAgICAgICAgICBbcGxhY2Vob2xkZXJMYWJlbF09XCJzZWFyY2hGaWVsZFBsYWNlaG9sZGVyXCJcclxuICAgICAgICAgIFtub0VudHJpZXNGb3VuZExhYmVsXT1cIm5vRW50cmllc0ZvdW5kTGFiZWxcIlxyXG4gICAgICAgID48L25neC1tYXQtc2VsZWN0LXNlYXJjaD5cclxuICAgICAgPC9tYXQtb3B0aW9uPlxyXG4gICAgICA8bWF0LW9wdGlvbiAqbmdJZj1cInVzZU5vbmVPcHRpb25cIiAoY2xpY2spPVwidG9nZ2xlTm9uZSgpXCI+e3sgbm9uZUxhYmVsIH19PC9tYXQtb3B0aW9uPlxyXG4gICAgICA8bWF0LW9wdGlvblxyXG4gICAgICAgICNhbGxTZWxlY3RlZFxyXG4gICAgICAgICpuZ0lmPVwidXNlU2VsZWN0QWxsT3B0aW9uICYmIHNob3dGaWx0ZXJlZEFsbE9wdGlvblwiXHJcbiAgICAgICAgKGNsaWNrKT1cInRvZ2dsZUFsbFNlbGVjdGlvbigpXCJcclxuICAgICAgICBbdmFsdWVdPVwic2VsZWN0QWxsVmFsdWVcIlxyXG4gICAgICA+XHJcbiAgICAgICAge3thbGxMYWJlbCB9fVxyXG4gICAgICA8L21hdC1vcHRpb24+XHJcbiAgICAgIDxtYXQtb3B0aW9uXHJcbiAgICAgICAgKm5nRm9yPVwibGV0IGl0ZW0gb2YgZmlsdGVyZWRJdGVtcyQgfCBhc3luY1wiXHJcbiAgICAgICAgW3ZhbHVlXT1cIml0ZW0udmFsdWVcIlxyXG4gICAgICAgIChjbGljayk9XCJ0b2dnbGVQZXJPbmUoKVwiXHJcbiAgICAgICAgW21hdFRvb2x0aXBdPVwiaXRlbS5sYWJlbFwiXHJcbiAgICAgICAgYXBwVG9vbHRpcElmVHJ1bmNhdGVkXHJcbiAgICAgICAgW2NsYXNzTmFtZVRydW5jYXRlZFRvb2x0aXBdPVwiJ21hdC1vcHRpb24tdGV4dCdcIlxyXG4gICAgICA+XHJcbiAgICAgICAge3sgaXRlbS5sYWJlbCB9fVxyXG4gICAgICA8L21hdC1vcHRpb24+XHJcbiAgICA8L21hdC1zZWxlY3Q+XHJcbiAgPC9tYXQtZm9ybS1maWVsZD5cclxuPC9hcHAtZWxlbWVudC13cmFwcGVyPlxyXG4iXX0=
355
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNhYnMtc2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VjYWJzLWNvbXBvbmVudHMvc3JjL2xpYi9lY2Ficy1zZWxlY3QvZWNhYnMtc2VsZWN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VjYWJzLWNvbXBvbmVudHMvc3JjL2xpYi9lY2Ficy1zZWxlY3QvZWNhYnMtc2VsZWN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFHTCxTQUFTLEVBRVQsWUFBWSxFQUVaLEtBQUssRUFJTCxNQUFNLEVBRU4sU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDTCxrQkFBa0IsRUFDbEIsU0FBUyxFQUNULGlCQUFpQixHQUNsQixNQUFNLGdCQUFnQixDQUFDO0FBRXhCLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ2pFLE9BQU8sRUFDTCxlQUFlLEVBQ2YsYUFBYSxFQUNiLFlBQVksRUFDWixHQUFHLEVBQ0gsWUFBWSxHQUNiLE1BQU0sTUFBTSxDQUFDO0FBQ2QsT0FBTyxvQkFBb0IsTUFBTSxzQkFBc0IsQ0FBQztBQUV4RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7Ozs7Ozs7Ozs7QUFhaEUsTUFBTSxPQUFPLG9CQUNYLFNBQVEsb0JBQW9CO0lBb0VUO0lBQ0E7SUFDQTtJQW5FVixLQUFLLENBQWtCO0lBQ3ZCLFFBQVEsR0FBRyxLQUFLLENBQUM7SUFDakIsYUFBYSxHQUFHLEtBQUssQ0FBQztJQUN0QixvQkFBb0IsR0FBRyxLQUFLLENBQUM7SUFDN0Isc0JBQXNCLEdBQUcsUUFBUSxDQUFDO0lBQ2xDLGVBQWUsR0FBRyxLQUFLLENBQUM7SUFDeEIsa0JBQWtCLEdBQUcsS0FBSyxDQUFDO0lBQzNCLCtCQUErQixHQUFHLElBQUksQ0FB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QUFwQixvQkFBb0Isc25CQVJwQjtZQUNUO2dCQUNFLE9BQU8sRUFBRSxpQkFBaUI7Z0JBQzFCLFdBQVcsRUFBRSxvQkFBb0I7Z0JBQ2pDLEtBQUssRUFBRSxJQUFJO2FBQ1o7U0FDRixpTEF5QlUsd0JBQXdCLDRGQ25FckMsdW5FQW1EQTs7NEZEUGEsb0JBQW9CO2tCQVhoQyxTQUFTOytCQUNFLGNBQWMsYUFFYjt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLHNCQUFzQjs0QkFDakMsS0FBSyxFQUFFLElBQUk7eUJBQ1o7cUJBQ0Y7d0pBTVEsS0FBSztzQkFBYixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFDRyxvQkFBb0I7c0JBQTVCLEtBQUs7Z0JBQ0csc0JBQXNCO3NCQUE5QixLQUFLO2dCQUNHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBQ0csa0JBQWtCO3NCQUExQixLQUFLO2dCQUNHLCtCQUErQjtzQkFBdkMsS0FBSztnQkFDRyxjQUFjO3NCQUF0QixLQUFLO2dCQUNHLG1CQUFtQjtzQkFBM0IsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNJLGlCQUFpQjtzQkFBMUIsTUFBTTtnQkFFRyxlQUFlO3NCQUF4QixNQUFNO2dCQUVtQixXQUFXO3NCQUFwQyxTQUFTO3VCQUFDLGFBQWE7Z0JBRXhCLHdCQUF3QjtzQkFEdkIsU0FBUzt1QkFBQyx3QkFBd0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIEFmdGVyVmlld0luaXQsXHJcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgQ29tcG9uZW50LFxyXG4gIERlc3Ryb3lSZWYsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIEluamVjdG9yLFxyXG4gIElucHV0LFxyXG4gIE9uQ2hhbmdlcyxcclxuICBPbkRlc3Ryb3ksXHJcbiAgT25Jbml0LFxyXG4gIE91dHB1dCxcclxuICBTaW1wbGVDaGFuZ2VzLFxyXG4gIFZpZXdDaGlsZCxcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtcclxuICBVbnR5cGVkRm9ybUNvbnRyb2wsXHJcbiAgTmdDb250cm9sLFxyXG4gIE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgTWF0T3B0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY29yZSc7XHJcbmltcG9ydCB7IE1hdFNlbGVjdFNlYXJjaENvbXBvbmVudCB9IGZyb20gJ25neC1tYXQtc2VsZWN0LXNlYXJjaCc7XHJcbmltcG9ydCB7XHJcbiAgQmVoYXZpb3JTdWJqZWN0LFxyXG4gIGNvbWJpbmVMYXRlc3QsXHJcbiAgZGVib3VuY2VUaW1lLFxyXG4gIG1hcCxcclxuICBTdWJzY3JpcHRpb24sXHJcbn0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCBFbGVtZW50QmFzZUNvbXBvbmVudCBmcm9tICcuLi9iYXNlL2VsZW1lbnQtYmFzZSc7XHJcbmltcG9ydCB7IFNlbGVjdE9wdGlvbiB9IGZyb20gJy4uL2Jhc2UvbW9kZWxzL3NlbGVjdC5tb2RlbHMnO1xyXG5pbXBvcnQgeyB0YWtlVW50aWxEZXN0cm95ZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2VjYWJzLXNlbGVjdCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2VjYWJzLXNlbGVjdC5jb21wb25lbnQuaHRtbCcsXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG4gICAgICB1c2VFeGlzdGluZzogRWNhYnNTZWxlY3RDb21wb25lbnQsXHJcbiAgICAgIG11bHRpOiB0cnVlLFxyXG4gICAgfSxcclxuICBdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRWNhYnNTZWxlY3RDb21wb25lbnRcclxuICBleHRlbmRzIEVsZW1lbnRCYXNlQ29tcG9uZW50XHJcbiAgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcywgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95XHJcbntcclxuICBASW5wdXQoKSBpdGVtcyE6IFNlbGVjdE9wdGlvbltdO1xyXG4gIEBJbnB1dCgpIG11bHRpcGxlID0gZmFsc2U7XHJcbiAgQElucHV0KCkgdXNlTm9uZU9wdGlvbiA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHVzZU9ubHlEaXNhYmxlZENsYXNzID0gZmFsc2U7XHJcbiAgQElucHV0KCkgc2VhcmNoRmllbGRQbGFjZWhvbGRlciA9ICdTZWFyY2gnO1xyXG4gIEBJbnB1dCgpIHVzZVNlYXJjaE9wdGlvbiA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHVzZVNlbGVjdEFsbE9wdGlvbiA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHNldEFsbE9wdGlvbkFmdGVyQ2hvc2VuQWxsSXRlbXMgPSB0cnVlO1xyXG4gIEBJbnB1dCgpIHNlbGVjdEFsbFZhbHVlOiBhbnkgPSAwO1xyXG4gIEBJbnB1dCgpIG5vRW50cmllc0ZvdW5kTGFiZWwgPSAnTm8gbWF0Y2hpbmcgZm91bmQnO1xyXG4gIEBJbnB1dCgpIG5vbmVMYWJlbCA9ICdOb25lJztcclxuICBASW5wdXQoKSBhbGxMYWJlbCA9ICdBbGwnO1xyXG4gIEBJbnB1dCgpIG90aGVyTGFiZWwgPSAnT3RoZXInO1xyXG4gIEBJbnB1dCgpIG90aGVyc0xhYmVsID0gJ090aGVycyc7XHJcbiAgQE91dHB1dCgpIHVwZGF0ZUZpbHRlckl0ZW1zOiBFdmVudEVtaXR0ZXI8c3RyaW5nPiA9XHJcbiAgICBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcclxuICBAT3V0cHV0KCkgc2VsZWN0aW9uQ2hhbmdlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG5cclxuICBAVmlld0NoaWxkKCdhbGxTZWxlY3RlZCcpIGFsbFNlbGVjdGVkITogTWF0T3B0aW9uO1xyXG4gIEBWaWV3Q2hpbGQoTWF0U2VsZWN0U2VhcmNoQ29tcG9uZW50KVxyXG4gIG1hdFNlbGVjdFNlYXJjaENvbXBvbmVudCE6IE1hdFNlbGVjdFNlYXJjaENvbXBvbmVudDtcclxuXHJcbiAgdmFsITogYW55O1xyXG4gIGZpbHRlcmVkSXRlbXMkOiBCZWhhdmlvclN1YmplY3Q8eyBsYWJlbDogc3RyaW5nOyB2YWx1ZTogYW55IH1bXT4gPVxyXG4gICAgbmV3IEJlaGF2aW9yU3ViamVjdDx7IGxhYmVsOiBzdHJpbmc7IHZhbHVlOiBhbnkgfVtdPihbXSk7XHJcbiAgaXRlbUZpbHRlckN0cmw6IFVudHlwZWRGb3JtQ29udHJvbCA9IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woKTtcclxuICBpc0NsZWFyQWxsID0gZmFsc2U7XHJcbiAgc2hvd0ZpbHRlcmVkQWxsT3B0aW9uID0gdHJ1ZTtcclxuICBzZWxlY3RlZEl0ZW1zOiB7IGxhYmVsOiBzdHJpbmc7IHZhbHVlOiBhbnkgfVtdID0gW107XHJcbiAgbm90U2VsZWN0ZWRJdGVtczogeyBsYWJlbDogc3RyaW5nOyB2YWx1ZTogYW55IH1bXSA9IFtdO1xyXG4gIHN1YnNjcmlwdGlvbnMgPSBuZXcgU3Vic2NyaXB0aW9uKCk7XHJcblxyXG4gIGdldCB2YWx1ZSgpOiBhbnkge1xyXG4gICAgcmV0dXJuIHRoaXMudmFsO1xyXG4gIH1cclxuXHJcbiAgZ2V0IHRyaWdnZXIoKTogc3RyaW5nIHtcclxuICAgIGlmICh0aGlzLmdldEFsbFNlbGVjdGVkQ2hlY2tlZCgpKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLmFsbExhYmVsO1xyXG4gICAgfVxyXG4gICAgY29uc3QgZmlyc3RDaG9zZW5WYWx1ZSA9XHJcbiAgICAgIHRoaXMudmFsICYmIHRoaXMubXVsdGlwbGVcclxuICAgICAgICA/IHRoaXMuZ2V0TGFiZWwodGhpcy52YWxbMF0pXHJcbiAgICAgICAgOiB0aGlzLmdldExhYmVsKHRoaXMudmFsKTtcclxuXHJcbiAgICByZXR1cm4gdGhpcy5tdWx0aXBsZSAmJiB0aGlzLnZhbHVlPy5sZW5ndGggPiAxXHJcbiAgICAgID8gYCR7Zmlyc3RDaG9zZW5WYWx1ZX0gKCske1xyXG4gICAgICAgICAgdGhpcy51c2VTZWxlY3RBbGxPcHRpb24gJiYgdGhpcy5hbGxTZWxlY3RlZD8uc2VsZWN0ZWRcclxuICAgICAgICAgICAgPyB0aGlzLnZhbHVlPy5sZW5ndGggLSAyXHJcbiAgICAgICAgICAgIDogdGhpcy52YWx1ZT8ubGVuZ3RoIC0gMVxyXG4gICAgICAgIH1cclxuICAgICAgICAgICR7dGhpcy52YWx1ZT8ubGVuZ3RoID09PSAyID8gdGhpcy5vdGhlckxhYmVsIDogdGhpcy5vdGhlcnNMYWJlbH0pYFxyXG4gICAgICA6IGZpcnN0Q2hvc2VuVmFsdWU7XHJcbiAgfVxyXG5cclxuICBzZXQgdmFsdWUodmFsKSB7XHJcbiAgICBpZiAodGhpcy52YWwgIT09IHZhbCkge1xyXG4gICAgICB0aGlzLnZhbCA9IHZhbDtcclxuICAgICAgdGhpcy5zZXRTZWxlY3RlZEl0ZW1zKCk7XHJcbiAgICAgIHRoaXMub25DaGFuZ2UodmFsKTtcclxuICAgICAgdGhpcy5vblRvdWNoKHZhbCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgaW5qZWN0b3I6IEluamVjdG9yLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGRlc3Ryb3lSZWY6IERlc3Ryb3lSZWYsXHJcbiAgKSB7XHJcbiAgICBzdXBlcigpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xyXG4gICAgY29uc3QgeyBpdGVtcyB9ID0gY2hhbmdlcztcclxuXHJcbiAgICBpZiAoaXRlbXMgJiYgaXRlbXMuY3VycmVudFZhbHVlKSB7XHJcbiAgICAgIHRoaXMuZmlsdGVySXRlbXMoKTtcclxuXHJcbiAgICAgIGlmIChcclxuICAgICAgICB0aGlzLm11bHRpcGxlICYmXHJcbiAgICAgICAgdGhpcy51c2VTZWxlY3RBbGxPcHRpb24gJiZcclxuICAgICAgICB0aGlzLmFsbFNlbGVjdGVkPy5zZWxlY3RlZFxyXG4gICAgICApIHtcclxuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgIHRoaXMuY29udHJvbC5wYXRjaFZhbHVlKFxyXG4gICAgICAgICAgICBbXHJcbiAgICAgICAgICAgICAgLi4udGhpcy5maWx0ZXJlZEl0ZW1zJC52YWx1ZS5tYXAoKGl0ZW0pID0+IGl0ZW0udmFsdWUpLFxyXG4gICAgICAgICAgICAgIHRoaXMuc2VsZWN0QWxsVmFsdWUsXHJcbiAgICAgICAgICAgIF0sXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICBlbWl0RXZlbnQ6IGZhbHNlLFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgKTtcclxuICAgICAgICB9LCAxMDApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XHJcbiAgICBjb25zdCBuZ0NvbnRyb2w6IE5nQ29udHJvbCA9IHRoaXMuaW5qZWN0b3IuZ2V0KE5nQ29udHJvbCwgbnVsbCk7XHJcblxyXG4gICAgaWYgKG5nQ29udHJvbCkge1xyXG4gICAgICB0aGlzLmNvbnRyb2wgPSBuZ0NvbnRyb2wuY29udHJvbCBhcyBVbnR5cGVkRm9ybUNvbnRyb2w7XHJcbiAgICAgIHRoaXMuY29udHJvbC5zdGF0dXNDaGFuZ2VzXHJcbiAgICAgICAgLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKHRoaXMuZGVzdHJveVJlZikpXHJcbiAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLnVwZGF0ZURpc2FibGVkU3RhdGUoKTtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy5tYXRTZWxlY3RTZWFyY2hDb21wb25lbnQpIHtcclxuICAgICAgdGhpcy5tYXRTZWxlY3RTZWFyY2hDb21wb25lbnQuX3Nob3dOb0VudHJpZXNGb3VuZCQgPSBjb21iaW5lTGF0ZXN0KFtcclxuICAgICAgICB0aGlzLml0ZW1GaWx0ZXJDdHJsLnZhbHVlQ2hhbmdlcyxcclxuICAgICAgICB0aGlzLmZpbHRlcmVkSXRlbXMkLFxyXG4gICAgICBdKS5waXBlKFxyXG4gICAgICAgIG1hcChcclxuICAgICAgICAgIChbdmFsdWUsIGl0ZW1zXSkgPT5cclxuICAgICAgICAgICAgdGhpcy5tYXRTZWxlY3RTZWFyY2hDb21wb25lbnQubm9FbnRyaWVzRm91bmRMYWJlbCAmJlxyXG4gICAgICAgICAgICB2YWx1ZSAmJlxyXG4gICAgICAgICAgICBpdGVtcy5sZW5ndGggPT09IDAsXHJcbiAgICAgICAgKSxcclxuICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLnVwZGF0ZURpc2FibGVkU3RhdGUoKTtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLmFkZChcclxuICAgICAgdGhpcy5pdGVtRmlsdGVyQ3RybC52YWx1ZUNoYW5nZXNcclxuICAgICAgICAucGlwZShkZWJvdW5jZVRpbWUoMjAwKSlcclxuICAgICAgICAuc3Vic2NyaWJlKCh2YWx1ZTogYW55KSA9PiB7XHJcbiAgICAgICAgICB0aGlzLmZpbHRlckl0ZW1zKCk7XHJcbiAgICAgICAgICB0aGlzLnVwZGF0ZUZpbHRlckl0ZW1zLmVtaXQodmFsdWUpO1xyXG5cclxuICAgICAgICAgIGlmICh0aGlzLmlzQ2xlYXJBbGwpIHtcclxuICAgICAgICAgICAgdGhpcy5jb250cm9sLnBhdGNoVmFsdWUoW10sIHsgZW1pdEV2ZW50OiBmYWxzZSB9KTtcclxuICAgICAgICAgICAgdGhpcy5pc0NsZWFyQWxsID0gZmFsc2U7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSksXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1mdW5jdGlvblxyXG4gIG9uQ2hhbmdlOiBhbnkgPSAoKSA9PiB7fTtcclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LWZ1bmN0aW9uXHJcbiAgb25Ub3VjaDogYW55ID0gKCkgPT4ge307XHJcblxyXG4gIHRvZ2dsZUFsbFNlbGVjdGlvbigpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLmFsbFNlbGVjdGVkLnNlbGVjdGVkKSB7XHJcbiAgICAgIGlmICh0aGlzLnVzZVNlYXJjaE9wdGlvbikge1xyXG4gICAgICAgIHRoaXMuY29udHJvbC5wYXRjaFZhbHVlKFtcclxuICAgICAgICAgIC4uLnRoaXMuZmlsdGVyZWRJdGVtcyQudmFsdWUubWFwKChpdGVtKSA9PiBpdGVtLnZhbHVlKSxcclxuICAgICAgICAgIHRoaXMuc2VsZWN0QWxsVmFsdWUsXHJcbiAgICAgICAgXSk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5jb250cm9sLnBhdGNoVmFsdWUoW1xyXG4gICAgICAgICAgLi4udGhpcy5pdGVtcy5tYXAoKGl0ZW0pID0+IGl0ZW0udmFsdWUpLFxyXG4gICAgICAgICAgdGhpcy5zZWxlY3RBbGxWYWx1ZSxcclxuICAgICAgICBdKTtcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5jb250cm9sLnBhdGNoVmFsdWUoW10pO1xyXG4gICAgICB0aGlzLmlzQ2xlYXJBbGwgPSB0cnVlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgdG9nZ2xlUGVyT25lKCk6IHZvaWQge1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIGlmICh0aGlzLmFsbFNlbGVjdGVkKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuYWxsU2VsZWN0ZWQuc2VsZWN0ZWQpIHtcclxuICAgICAgICAgIHRoaXMuYWxsU2VsZWN0ZWQuZGVzZWxlY3QoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKFxyXG4gICAgICAgICAgdGhpcy5zZXRBbGxPcHRpb25BZnRlckNob3NlbkFsbEl0ZW1zICYmXHJcbiAgICAgICAgICB0aGlzLmNvbnRyb2wudmFsdWUubGVuZ3RoID09PSB0aGlzLml0ZW1zLmxlbmd0aFxyXG4gICAgICAgICkge1xyXG4gICAgICAgICAgdGhpcy5hbGxTZWxlY3RlZC5zZWxlY3QoKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG5cclxuICAgIHRoaXMuaXNDbGVhckFsbCA9IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgdG9nZ2xlTm9uZSgpOiB2b2lkIHtcclxuICAgIHRoaXMuc2VsZWN0ZWRJdGVtcyA9IFtdO1xyXG4gIH1cclxuXHJcbiAgZ2V0QWxsU2VsZWN0ZWRDaGVja2VkKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuYWxsU2VsZWN0ZWQgIT09IHVuZGVmaW5lZCAmJiB0aGlzLmFsbFNlbGVjdGVkLnNlbGVjdGVkO1xyXG4gIH1cclxuXHJcbiAgZ2V0TGFiZWwodmFsOiBhbnkpOiBzdHJpbmcge1xyXG4gICAgaWYgKFxyXG4gICAgICB0aGlzLnVzZVNlbGVjdEFsbE9wdGlvbiAmJlxyXG4gICAgICB0aGlzLmFsbFNlbGVjdGVkPy5zZWxlY3RlZCAmJlxyXG4gICAgICB0aGlzLml0ZW1zICYmXHJcbiAgICAgIHRoaXMuaXRlbXMubGVuZ3RoID4gMFxyXG4gICAgKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLml0ZW1zWzBdLmxhYmVsO1xyXG4gICAgfVxyXG5cclxuICAgIGxldCBpdGVtOiB7IGxhYmVsOiBzdHJpbmc7IHZhbHVlOiBhbnkgfTtcclxuXHJcbiAgICBpZiAodmFsICE9PSB1bmRlZmluZWQpIHtcclxuICAgICAgaWYgKHRoaXMudXNlU2VhcmNoT3B0aW9uKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuc2VsZWN0ZWRJdGVtcyAmJiB0aGlzLnNlbGVjdGVkSXRlbXMubGVuZ3RoID4gMCkge1xyXG4gICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1zaGFkb3dcclxuICAgICAgICAgIGl0ZW0gPSB0aGlzLnNlbGVjdGVkSXRlbXMuZmluZCgoaXRlbSkgPT4gaXRlbS52YWx1ZSA9PT0gdmFsKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgaWYgKHRoaXMuaXRlbXMgJiYgdGhpcy5pdGVtcy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXNoYWRvd1xyXG4gICAgICAgICAgaXRlbSA9IHRoaXMuaXRlbXMuZmluZCgoaXRlbSkgPT4gaXRlbS52YWx1ZSA9PT0gdmFsKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHJldHVybiBpdGVtID8gaXRlbS5sYWJlbCA6ICcnO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiAnJztcclxuICB9XHJcblxyXG4gIHdyaXRlVmFsdWUodmFsdWU6IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xyXG4gIH1cclxuXHJcbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLm9uQ2hhbmdlID0gZm47XHJcbiAgfVxyXG5cclxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLm9uVG91Y2ggPSBmbjtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLnVuc3Vic2NyaWJlKCk7XHJcbiAgfVxyXG5cclxuICBvblNlbGVjdGlvbkNoYW5nZWQoJGV2ZW50OiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMuc2VsZWN0aW9uQ2hhbmdlLmVtaXQoJGV2ZW50KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZmlsdGVySXRlbXMoKTogdm9pZCB7XHJcbiAgICB0aGlzLnNldFNlbGVjdGVkSXRlbXMoKTtcclxuXHJcbiAgICBpZiAoIXRoaXMuaXRlbXMpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIGdldCB0aGUgc2VhcmNoIGtleXdvcmRcclxuICAgIGxldCBzZWFyY2g6IHN0cmluZyA9IHRoaXMuaXRlbUZpbHRlckN0cmwudmFsdWU7XHJcblxyXG4gICAgaWYgKCFzZWFyY2ggfHwgc2VhcmNoID09PSAnJykge1xyXG4gICAgICBpZiAodGhpcy51c2VTZWFyY2hPcHRpb24gJiYgIXRoaXMuaXRlbXM/Lmxlbmd0aCkge1xyXG4gICAgICAgIHRoaXMuZmlsdGVyZWRJdGVtcyQubmV4dChbLi4udGhpcy5zZWxlY3RlZEl0ZW1zXSk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5maWx0ZXJlZEl0ZW1zJC5uZXh0KHRoaXMuaXRlbXM/LnNsaWNlKCkpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0aGlzLnNob3dGaWx0ZXJlZEFsbE9wdGlvbiA9IHRydWU7XHJcblxyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgc2VhcmNoID0gc2VhcmNoLnRvTG93ZXJDYXNlKCk7XHJcblxyXG4gICAgdGhpcy5zaG93RmlsdGVyZWRBbGxPcHRpb24gPVxyXG4gICAgICB0aGlzLmFsbExhYmVsLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoc2VhcmNoLnRvTG93ZXJDYXNlKCkpIHx8XHJcbiAgICAgICh0aGlzLnZhbHVlIGluc3RhbmNlb2YgQXJyYXkgJiZcclxuICAgICAgICB0aGlzLnZhbHVlLmluY2x1ZGVzKHRoaXMuc2VsZWN0QWxsVmFsdWUpKSB8fFxyXG4gICAgICAoISh0aGlzLnZhbHVlIGluc3RhbmNlb2YgQXJyYXkpICYmIHRoaXMudmFsdWUgPT09IHRoaXMuc2VsZWN0QWxsVmFsdWUpO1xyXG4gICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XHJcblxyXG4gICAgaWYgKHRoaXMudXNlU2VhcmNoT3B0aW9uKSB7XHJcbiAgICAgIGNvbnN0IGZpbHRlcmVkSXRlbXMgPVxyXG4gICAgICAgIHRoaXMubm90U2VsZWN0ZWRJdGVtcz8ubGVuZ3RoID4gMFxyXG4gICAgICAgICAgPyB0aGlzLm5vdFNlbGVjdGVkSXRlbXMuZmlsdGVyKChpdGVtKSA9PlxyXG4gICAgICAgICAgICAgIGl0ZW0ubGFiZWwudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyhzZWFyY2gudG9Mb3dlckNhc2UoKSksXHJcbiAgICAgICAgICAgIClcclxuICAgICAgICAgIDogW107XHJcbiAgICAgIHRoaXMuZmlsdGVyZWRJdGVtcyQubmV4dChbLi4udGhpcy5zZWxlY3RlZEl0ZW1zLCAuLi5maWx0ZXJlZEl0ZW1zXSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmZpbHRlcmVkSXRlbXMkLm5leHQoXHJcbiAgICAgICAgdGhpcy5pdGVtcz8ubGVuZ3RoID4gMFxyXG4gICAgICAgICAgPyB0aGlzLml0ZW1zLmZpbHRlcigoaXRlbSkgPT5cclxuICAgICAgICAgICAgICBpdGVtLmxhYmVsLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoc2VhcmNoLnRvTG93ZXJDYXNlKCkpLFxyXG4gICAgICAgICAgICApXHJcbiAgICAgICAgICA6IFtdLFxyXG4gICAgICApO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzZXRTZWxlY3RlZEl0ZW1zKCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMudXNlU2VhcmNoT3B0aW9uKSB7XHJcbiAgICAgIGNvbnN0IHNlbGVjdGVkSXRlbXMgPSBbXTtcclxuXHJcbiAgICAgIGlmICh0aGlzLnZhbHVlKSB7XHJcbiAgICAgICAgaWYgKHRoaXMudmFsdWUgaW5zdGFuY2VvZiBBcnJheSkge1xyXG4gICAgICAgICAgY29uc3Qgc2tpcFN0ZXBzID0gdGhpcy52YWx1ZS5pbmNsdWRlcyh0aGlzLnNlbGVjdEFsbFZhbHVlKTtcclxuXHJcbiAgICAgICAgICBpZiAoIXNraXBTdGVwcykge1xyXG4gICAgICAgICAgICB0aGlzLnZhbHVlLmZvckVhY2goKHZhbHVlKSA9PiB7XHJcbiAgICAgICAgICAgICAgY29uc3QgaW5kZXggPSB0aGlzLnNlbGVjdGVkSXRlbXM/LmZpbmRJbmRleChcclxuICAgICAgICAgICAgICAgIChzZWxlY3RlZEl0ZW0pID0+IHNlbGVjdGVkSXRlbS52YWx1ZSA9PT0gdmFsdWUsXHJcbiAgICAgICAgICAgICAgKTtcclxuXHJcbiAgICAgICAgICAgICAgaWYgKGluZGV4ICE9PSAtMSkge1xyXG4gICAgICAgICAgICAgICAgc2VsZWN0ZWRJdGVtcy5wdXNoKHRoaXMuc2VsZWN0ZWRJdGVtc1tpbmRleF0pO1xyXG4gICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXNoYWRvd1xyXG4gICAgICAgICAgICAgICAgY29uc3QgaXRlbSA9IHRoaXMuaXRlbXM/LmZpbmQoKGl0ZW0pID0+IGl0ZW0udmFsdWUgPT09IHZhbHVlKTtcclxuXHJcbiAgICAgICAgICAgICAgICBpZiAoaXRlbSkge1xyXG4gICAgICAgICAgICAgICAgICBzZWxlY3RlZEl0ZW1zLnB1c2goaXRlbSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRJdGVtcy5mb3JFYWNoKChzZWxlY3RlZEl0ZW0pID0+IHtcclxuICAgICAgICAgICAgICBjb25zdCBpbmRleCA9IHRoaXMudmFsdWUuZmluZChcclxuICAgICAgICAgICAgICAgICh2YWx1ZSkgPT4gc2VsZWN0ZWRJdGVtLnZhbHVlID09PSB2YWx1ZSxcclxuICAgICAgICAgICAgICApO1xyXG5cclxuICAgICAgICAgICAgICBpZiAoaW5kZXggPT09IC0xKSB7XHJcbiAgICAgICAgICAgICAgICBzZWxlY3RlZEl0ZW1zLnNwbGljZShpbmRleCwgMSk7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgY29uc3QgaW5kZXggPSB0aGlzLnNlbGVjdGVkSXRlbXMuZmluZEluZGV4KFxyXG4gICAgICAgICAgICAoc2VsZWN0ZWRJdGVtKSA9PiBzZWxlY3RlZEl0ZW0udmFsdWUgPT09IHRoaXMudmFsdWUsXHJcbiAgICAgICAgICApO1xyXG5cclxuICAgICAgICAgIGlmIChpbmRleCAhPT0gLTEpIHtcclxuICAgICAgICAgICAgc2VsZWN0ZWRJdGVtcy5wdXNoKHRoaXMuc2VsZWN0ZWRJdGVtc1tpbmRleF0pO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1zaGFkb3dcclxuICAgICAgICAgICAgY29uc3QgaXRlbSA9IHRoaXMuaXRlbXMuZmluZCgoaXRlbSkgPT4gaXRlbS52YWx1ZSA9PT0gdGhpcy52YWx1ZSk7XHJcblxyXG4gICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbWF4LWRlcHRoXHJcbiAgICAgICAgICAgIGlmIChpdGVtKSB7XHJcbiAgICAgICAgICAgICAgc2VsZWN0ZWRJdGVtcy5wdXNoKGl0ZW0pO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aGlzLnNlbGVjdGVkSXRlbXMgPSBbLi4uc2VsZWN0ZWRJdGVtc107XHJcbiAgICAgICAgdGhpcy5ub3RTZWxlY3RlZEl0ZW1zID0gdGhpcy5pdGVtcz8uZmlsdGVyKFxyXG4gICAgICAgICAgKGl0ZW0pID0+XHJcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRJdGVtcy5maW5kSW5kZXgoXHJcbiAgICAgICAgICAgICAgKHNlbGVjdGVkSXRlbSkgPT4gc2VsZWN0ZWRJdGVtLnZhbHVlID09PSBpdGVtLnZhbHVlLFxyXG4gICAgICAgICAgICApID09PSAtMSxcclxuICAgICAgICApO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMubm90U2VsZWN0ZWRJdGVtcyA9IHRoaXMuaXRlbXM/LnNsaWNlKCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiPGFwcC1lbGVtZW50LXdyYXBwZXIgW2RhdGFdPVwiZ2V0RGF0YSgpXCI+XHJcbiAgPG1hdC1mb3JtLWZpZWxkIFtuZ0NsYXNzXT1cInsgZGlzYWJsZWQ6IHVzZU9ubHlEaXNhYmxlZENsYXNzIH1cIj5cclxuICAgIDxtYXQtc2VsZWN0IGNsYXNzPVwiZm9ybS1maWVsZF9fc2VsZWN0XCJcclxuICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwidmFsdWVcIlxyXG4gICAgICAgICAgICAgICAgKGNsb3NlZCk9XCJvblRvdWNoKClcIlxyXG4gICAgICAgICAgICAgICAgW2lkXT1cIm5hbWVcIlxyXG4gICAgICAgICAgICAgICAgW211bHRpcGxlXT1cIm11bHRpcGxlXCJcclxuICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXHJcbiAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxyXG4gICAgICAgICAgICAgICAgW2Rpc2FibGVSaXBwbGVdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAoc2VsZWN0aW9uQ2hhbmdlKT1cIm9uU2VsZWN0aW9uQ2hhbmdlZCgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgIFttYXRUb29sdGlwXT1cInRyaWdnZXJcIlxyXG4gICAgICAgICAgICAgICAgYXBwVG9vbHRpcElmVHJ1bmNhdGVkXHJcbiAgICAgICAgICAgICAgICBbY2xhc3NOYW1lVHJ1bmNhdGVkVG9vbHRpcF09XCInbWF0LXNlbGVjdC12YWx1ZSdcIj5cclxuICAgICAgPG1hdC1zZWxlY3QtdHJpZ2dlcj5cclxuICAgICAgICA8c3Bhbj57eyB0cmlnZ2VyIH19PC9zcGFuPlxyXG4gICAgICA8L21hdC1zZWxlY3QtdHJpZ2dlcj5cclxuXHJcbiAgICAgIDxtYXQtb3B0aW9uICpuZ0lmPVwidXNlU2VhcmNoT3B0aW9uXCI+XHJcbiAgICAgICAgPG5neC1tYXQtc2VsZWN0LXNlYXJjaCBbZm9ybUNvbnRyb2xdPVwiaXRlbUZpbHRlckN0cmxcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyTGFiZWxdPVwic2VhcmNoRmllbGRQbGFjZWhvbGRlclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbm9FbnRyaWVzRm91bmRMYWJlbF09XCJub0VudHJpZXNGb3VuZExhYmVsXCI+XHJcbiAgICAgICAgPC9uZ3gtbWF0LXNlbGVjdC1zZWFyY2g+XHJcbiAgICAgIDwvbWF0LW9wdGlvbj5cclxuXHJcbiAgICAgIDxtYXQtb3B0aW9uICpuZ0lmPVwidXNlTm9uZU9wdGlvblwiXHJcbiAgICAgICAgICAgICAgICAgIChjbGljayk9XCJ0b2dnbGVOb25lKClcIlxyXG4gICAgICAgICAgICAgICAgICAoa2V5ZG93bi5lbnRlcik9XCJ0b2dnbGVOb25lKClcIj5cclxuICAgICAgICB7eyBub25lTGFiZWwgfX1cclxuICAgICAgPC9tYXQtb3B0aW9uPlxyXG5cclxuICAgICAgPG1hdC1vcHRpb24gI2FsbFNlbGVjdGVkXHJcbiAgICAgICAgICAgICAgICAgICpuZ0lmPVwidXNlU2VsZWN0QWxsT3B0aW9uICYmIHNob3dGaWx0ZXJlZEFsbE9wdGlvblwiXHJcbiAgICAgICAgICAgICAgICAgIChjbGljayk9XCJ0b2dnbGVBbGxTZWxlY3Rpb24oKVwiXHJcbiAgICAgICAgICAgICAgICAgIChrZXlkb3duLmVudGVyKT1cInRvZ2dsZUFsbFNlbGVjdGlvbigpXCJcclxuICAgICAgICAgICAgICAgICAgW3ZhbHVlXT1cInNlbGVjdEFsbFZhbHVlXCI+XHJcbiAgICAgICAge3sgYWxsTGFiZWwgfX1cclxuICAgICAgPC9tYXQtb3B0aW9uPlxyXG5cclxuICAgICAgPG1hdC1vcHRpb24gKm5nRm9yPVwibGV0IGl0ZW0gb2YgZmlsdGVyZWRJdGVtcyQgfCBhc3luY1wiXHJcbiAgICAgICAgICAgICAgICAgIFt2YWx1ZV09XCJpdGVtLnZhbHVlXCJcclxuICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInRvZ2dsZVBlck9uZSgpXCJcclxuICAgICAgICAgICAgICAgICAgKGtleWRvd24uZW50ZXIpPVwidG9nZ2xlUGVyT25lKClcIlxyXG4gICAgICAgICAgICAgICAgICBbbWF0VG9vbHRpcF09XCJpdGVtLmxhYmVsXCJcclxuICAgICAgICAgICAgICAgICAgYXBwVG9vbHRpcElmVHJ1bmNhdGVkXHJcbiAgICAgICAgICAgICAgICAgIFtjbGFzc05hbWVUcnVuY2F0ZWRUb29sdGlwXT1cIidtZGMtbGlzdC1pdGVtX19wcmltYXJ5LXRleHQnXCI+XHJcbiAgICAgICAge3sgaXRlbS5sYWJlbCB9fVxyXG4gICAgICA8L21hdC1vcHRpb24+XHJcbiAgICA8L21hdC1zZWxlY3Q+XHJcbiAgPC9tYXQtZm9ybS1maWVsZD5cclxuPC9hcHAtZWxlbWVudC13cmFwcGVyPlxyXG4iXX0=
@@ -1,5 +1,5 @@
1
1
  import { NgxMatSelectSearchModule } from 'ngx-mat-select-search';
2
- import { MAT_LEGACY_SELECT_SCROLL_STRATEGY as MAT_SELECT_SCROLL_STRATEGY, MatLegacySelectModule as MatSelectModule, } from '@angular/material/legacy-select';
2
+ import { MAT_SELECT_SCROLL_STRATEGY, MatSelectModule, } from '@angular/material/select';
3
3
  import { Overlay } from '@angular/cdk/overlay';
4
4
  import { CommonModule } from '@angular/common';
5
5
  import { NgModule } from '@angular/core';
@@ -61,4 +61,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
61
61
  export function scrollFactory(overlay) {
62
62
  return () => overlay.scrollStrategies.block();
63
63
  }
64
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNhYnMtc2VsZWN0Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VjYWJzLWNvbXBvbmVudHMvc3JjL2xpYi9lY2Ficy1zZWxlY3QvZWNhYnMtc2VsZWN0Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNqRSxPQUFPLEVBQ0wsaUNBQWlDLElBQUksMEJBQTBCLEVBQy9ELHFCQUFxQixJQUFJLGVBQWUsR0FDekMsTUFBTSxpQ0FBaUMsQ0FBQztBQUN6QyxPQUFPLEVBQXVCLE9BQU8sRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUU3RCxPQUFPLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSwwREFBMEQsQ0FBQztBQUM3RyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUN0RixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7QUF1QmhFLE1BQU0sT0FBTyxpQkFBaUI7d0dBQWpCLGlCQUFpQjt5R0FBakIsaUJBQWlCLGlCQXBCYixvQkFBb0IsYUFFakMsWUFBWTtZQUNaLG9CQUFvQjtZQUNwQixlQUFlO1lBQ2YsZ0JBQWdCO1lBQ2hCLFdBQVc7WUFDWCx3QkFBd0I7WUFDeEIsbUJBQW1CO1lBQ25CLGlDQUFpQyxhQUV6QixvQkFBb0I7eUdBU25CLGlCQUFpQixhQVJqQjtZQUNUO2dCQUNFLE9BQU8sRUFBRSwwQkFBMEI7Z0JBQ25DLFVBQVUsRUFBRSxhQUFhO2dCQUN6QixJQUFJLEVBQUUsQ0FBQyxPQUFPLENBQUM7YUFDaEI7U0FDRixZQWhCQyxZQUFZO1lBQ1osb0JBQW9CO1lBQ3BCLGVBQWU7WUFDZixnQkFBZ0I7WUFDaEIsV0FBVztZQUNYLHdCQUF3QjtZQUN4QixtQkFBbUI7WUFDbkIsaUNBQWlDOzs0RkFXeEIsaUJBQWlCO2tCQXJCN0IsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQztvQkFDcEMsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osb0JBQW9CO3dCQUNwQixlQUFlO3dCQUNmLGdCQUFnQjt3QkFDaEIsV0FBVzt3QkFDWCx3QkFBd0I7d0JBQ3hCLG1CQUFtQjt3QkFDbkIsaUNBQWlDO3FCQUNsQztvQkFDRCxPQUFPLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQztvQkFDL0IsU0FBUyxFQUFFO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSwwQkFBMEI7NEJBQ25DLFVBQVUsRUFBRSxhQUFhOzRCQUN6QixJQUFJLEVBQUUsQ0FBQyxPQUFPLENBQUM7eUJBQ2hCO3FCQUNGO2lCQUNGOztBQUdELE1BQU0sVUFBVSxhQUFhLENBQUMsT0FBZ0I7SUFDNUMsT0FBTyxHQUFHLEVBQUUsQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxFQUFFLENBQUM7QUFDaEQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5neE1hdFNlbGVjdFNlYXJjaE1vZHVsZSB9IGZyb20gJ25neC1tYXQtc2VsZWN0LXNlYXJjaCc7XHJcbmltcG9ydCB7XHJcbiAgTUFUX0xFR0FDWV9TRUxFQ1RfU0NST0xMX1NUUkFURUdZIGFzIE1BVF9TRUxFQ1RfU0NST0xMX1NUUkFURUdZLFxyXG4gIE1hdExlZ2FjeVNlbGVjdE1vZHVsZSBhcyBNYXRTZWxlY3RNb2R1bGUsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvbGVnYWN5LXNlbGVjdCc7XHJcbmltcG9ydCB7IEJsb2NrU2Nyb2xsU3RyYXRlZ3ksIE92ZXJsYXkgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBNYXRUb29sdGlwTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbHRpcCc7XHJcblxyXG5pbXBvcnQgeyBUb29sdGlwSWZUcnVuY2F0ZWREaXJlY3RpdmVNb2R1bGUgfSBmcm9tICcuLi9iYXNlL2RpcmVjdGl2ZXMvdG9vbHRpcC1pZi10cnVuY2F0ZWQuZGlyZWN0aXZlLm1vZHVsZSc7XHJcbmltcG9ydCB7IEVsZW1lbnRXcmFwcGVyTW9kdWxlIH0gZnJvbSAnLi4vYmFzZS9lbGVtZW50LXdyYXBwZXIvZWxlbWVudC13cmFwcGVyLm1vZHVsZSc7XHJcbmltcG9ydCB7IEVjYWJzU2VsZWN0Q29tcG9uZW50IH0gZnJvbSAnLi9lY2Ficy1zZWxlY3QuY29tcG9uZW50JztcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgZGVjbGFyYXRpb25zOiBbRWNhYnNTZWxlY3RDb21wb25lbnRdLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIENvbW1vbk1vZHVsZSxcclxuICAgIEVsZW1lbnRXcmFwcGVyTW9kdWxlLFxyXG4gICAgTWF0U2VsZWN0TW9kdWxlLFxyXG4gICAgTWF0VG9vbHRpcE1vZHVsZSxcclxuICAgIEZvcm1zTW9kdWxlLFxyXG4gICAgTmd4TWF0U2VsZWN0U2VhcmNoTW9kdWxlLFxyXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcclxuICAgIFRvb2x0aXBJZlRydW5jYXRlZERpcmVjdGl2ZU1vZHVsZSxcclxuICBdLFxyXG4gIGV4cG9ydHM6IFtFY2Fic1NlbGVjdENvbXBvbmVudF0sXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IE1BVF9TRUxFQ1RfU0NST0xMX1NUUkFURUdZLFxyXG4gICAgICB1c2VGYWN0b3J5OiBzY3JvbGxGYWN0b3J5LFxyXG4gICAgICBkZXBzOiBbT3ZlcmxheV0sXHJcbiAgICB9LFxyXG4gIF0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBFY2Fic1NlbGVjdE1vZHVsZSB7fVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHNjcm9sbEZhY3Rvcnkob3ZlcmxheTogT3ZlcmxheSk6ICgpID0+IEJsb2NrU2Nyb2xsU3RyYXRlZ3kge1xyXG4gIHJldHVybiAoKSA9PiBvdmVybGF5LnNjcm9sbFN0cmF0ZWdpZXMuYmxvY2soKTtcclxufVxyXG4iXX0=
64
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNhYnMtc2VsZWN0Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VjYWJzLWNvbXBvbmVudHMvc3JjL2xpYi9lY2Ficy1zZWxlY3QvZWNhYnMtc2VsZWN0Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNqRSxPQUFPLEVBQ0wsMEJBQTBCLEVBQzFCLGVBQWUsR0FDaEIsTUFBTSwwQkFBMEIsQ0FBQztBQUNsQyxPQUFPLEVBQXVCLE9BQU8sRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUU3RCxPQUFPLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSwwREFBMEQsQ0FBQztBQUM3RyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUN0RixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7QUF1QmhFLE1BQU0sT0FBTyxpQkFBaUI7d0dBQWpCLGlCQUFpQjt5R0FBakIsaUJBQWlCLGlCQXBCYixvQkFBb0IsYUFFakMsWUFBWTtZQUNaLG9CQUFvQjtZQUNwQixlQUFlO1lBQ2YsZ0JBQWdCO1lBQ2hCLFdBQVc7WUFDWCx3QkFBd0I7WUFDeEIsbUJBQW1CO1lBQ25CLGlDQUFpQyxhQUV6QixvQkFBb0I7eUdBU25CLGlCQUFpQixhQVJqQjtZQUNUO2dCQUNFLE9BQU8sRUFBRSwwQkFBMEI7Z0JBQ25DLFVBQVUsRUFBRSxhQUFhO2dCQUN6QixJQUFJLEVBQUUsQ0FBQyxPQUFPLENBQUM7YUFDaEI7U0FDRixZQWhCQyxZQUFZO1lBQ1osb0JBQW9CO1lBQ3BCLGVBQWU7WUFDZixnQkFBZ0I7WUFDaEIsV0FBVztZQUNYLHdCQUF3QjtZQUN4QixtQkFBbUI7WUFDbkIsaUNBQWlDOzs0RkFXeEIsaUJBQWlCO2tCQXJCN0IsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQztvQkFDcEMsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osb0JBQW9CO3dCQUNwQixlQUFlO3dCQUNmLGdCQUFnQjt3QkFDaEIsV0FBVzt3QkFDWCx3QkFBd0I7d0JBQ3hCLG1CQUFtQjt3QkFDbkIsaUNBQWlDO3FCQUNsQztvQkFDRCxPQUFPLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQztvQkFDL0IsU0FBUyxFQUFFO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSwwQkFBMEI7NEJBQ25DLFVBQVUsRUFBRSxhQUFhOzRCQUN6QixJQUFJLEVBQUUsQ0FBQyxPQUFPLENBQUM7eUJBQ2hCO3FCQUNGO2lCQUNGOztBQUdELE1BQU0sVUFBVSxhQUFhLENBQUMsT0FBZ0I7SUFDNUMsT0FBTyxHQUFHLEVBQUUsQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxFQUFFLENBQUM7QUFDaEQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5neE1hdFNlbGVjdFNlYXJjaE1vZHVsZSB9IGZyb20gJ25neC1tYXQtc2VsZWN0LXNlYXJjaCc7XHJcbmltcG9ydCB7XHJcbiAgTUFUX1NFTEVDVF9TQ1JPTExfU1RSQVRFR1ksXHJcbiAgTWF0U2VsZWN0TW9kdWxlLFxyXG59IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NlbGVjdCc7XHJcbmltcG9ydCB7IEJsb2NrU2Nyb2xsU3RyYXRlZ3ksIE92ZXJsYXkgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBNYXRUb29sdGlwTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbHRpcCc7XHJcblxyXG5pbXBvcnQgeyBUb29sdGlwSWZUcnVuY2F0ZWREaXJlY3RpdmVNb2R1bGUgfSBmcm9tICcuLi9iYXNlL2RpcmVjdGl2ZXMvdG9vbHRpcC1pZi10cnVuY2F0ZWQuZGlyZWN0aXZlLm1vZHVsZSc7XHJcbmltcG9ydCB7IEVsZW1lbnRXcmFwcGVyTW9kdWxlIH0gZnJvbSAnLi4vYmFzZS9lbGVtZW50LXdyYXBwZXIvZWxlbWVudC13cmFwcGVyLm1vZHVsZSc7XHJcbmltcG9ydCB7IEVjYWJzU2VsZWN0Q29tcG9uZW50IH0gZnJvbSAnLi9lY2Ficy1zZWxlY3QuY29tcG9uZW50JztcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgZGVjbGFyYXRpb25zOiBbRWNhYnNTZWxlY3RDb21wb25lbnRdLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIENvbW1vbk1vZHVsZSxcclxuICAgIEVsZW1lbnRXcmFwcGVyTW9kdWxlLFxyXG4gICAgTWF0U2VsZWN0TW9kdWxlLFxyXG4gICAgTWF0VG9vbHRpcE1vZHVsZSxcclxuICAgIEZvcm1zTW9kdWxlLFxyXG4gICAgTmd4TWF0U2VsZWN0U2VhcmNoTW9kdWxlLFxyXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcclxuICAgIFRvb2x0aXBJZlRydW5jYXRlZERpcmVjdGl2ZU1vZHVsZSxcclxuICBdLFxyXG4gIGV4cG9ydHM6IFtFY2Fic1NlbGVjdENvbXBvbmVudF0sXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IE1BVF9TRUxFQ1RfU0NST0xMX1NUUkFURUdZLFxyXG4gICAgICB1c2VGYWN0b3J5OiBzY3JvbGxGYWN0b3J5LFxyXG4gICAgICBkZXBzOiBbT3ZlcmxheV0sXHJcbiAgICB9LFxyXG4gIF0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBFY2Fic1NlbGVjdE1vZHVsZSB7fVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHNjcm9sbEZhY3Rvcnkob3ZlcmxheTogT3ZlcmxheSk6ICgpID0+IEJsb2NrU2Nyb2xsU3RyYXRlZ3kge1xyXG4gIHJldHVybiAoKSA9PiBvdmVybGF5LnNjcm9sbFN0cmF0ZWdpZXMuYmxvY2soKTtcclxufVxyXG4iXX0=