@cleavelandprice/ngx-lib 4.0.0 → 4.0.3

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.
Files changed (98) hide show
  1. package/active-directory/active-directory.api.d.ts +2 -1
  2. package/active-directory/model/active-directory-service-options-token.d.ts +3 -0
  3. package/active-directory/model/active-directory-service-options.d.ts +0 -2
  4. package/authentication/material/mat-authentication.api.d.ts +1 -0
  5. package/authentication/material/model/mat-authentication-service-options-token.d.ts +3 -0
  6. package/authentication/material/model/mat-authentication-service-options.d.ts +0 -2
  7. package/authentication/token/authentication-token.api.d.ts +1 -0
  8. package/authentication/token/model/authentication-token-service-options-token.d.ts +3 -0
  9. package/authentication/token/model/authentication-token-service-options.d.ts +0 -2
  10. package/esm2022/active-directory/active-directory.api.mjs +3 -4
  11. package/esm2022/active-directory/active-directory.module.mjs +6 -15
  12. package/esm2022/active-directory/material/components/user-chooser/user-chooser.component.mjs +3 -3
  13. package/esm2022/active-directory/material/components/user-form-field/user-form-field.component.mjs +5 -5
  14. package/esm2022/active-directory/material/mat-active-directory.module.mjs +5 -14
  15. package/esm2022/active-directory/model/active-directory-service-options-token.mjs +3 -0
  16. package/esm2022/active-directory/model/active-directory-service-options.mjs +2 -3
  17. package/esm2022/active-directory/services/active-directory.service.mjs +5 -5
  18. package/esm2022/authentication/authentication.base.module.mjs +4 -4
  19. package/esm2022/authentication/material/components/login/login.component.mjs +3 -3
  20. package/esm2022/authentication/material/components/login-form/login-form.component.mjs +3 -3
  21. package/esm2022/authentication/material/mat-authentication.api.mjs +2 -1
  22. package/esm2022/authentication/material/mat-authentication.module.mjs +6 -6
  23. package/esm2022/authentication/material/model/mat-authentication-service-options-token.mjs +3 -0
  24. package/esm2022/authentication/material/model/mat-authentication-service-options.mjs +2 -3
  25. package/esm2022/authentication/material/services/mat-authentication.service.mjs +5 -5
  26. package/esm2022/authentication/object/authentication-object.module.mjs +4 -4
  27. package/esm2022/authentication/object/services/authentication-object.service.mjs +5 -5
  28. package/esm2022/authentication/token/authentication-token.api.mjs +2 -1
  29. package/esm2022/authentication/token/authetiction-token.module.mjs +6 -6
  30. package/esm2022/authentication/token/model/authentication-token-service-options-token.mjs +3 -0
  31. package/esm2022/authentication/token/model/authentication-token-service-options.mjs +2 -3
  32. package/esm2022/authentication/token/services/authentication-token.service.mjs +5 -5
  33. package/esm2022/dialog/components/base/base.component.mjs +3 -3
  34. package/esm2022/dialog/components/choice/choice.component.mjs +3 -3
  35. package/esm2022/dialog/components/confirmation/confirmation.component.mjs +3 -3
  36. package/esm2022/dialog/components/input/input.component.mjs +3 -3
  37. package/esm2022/dialog/components/message/message.component.mjs +3 -3
  38. package/esm2022/dialog/dialog.module.mjs +4 -4
  39. package/esm2022/lib/model/service-options-token.mjs +3 -0
  40. package/esm2022/lib/model/service-options.mjs +2 -3
  41. package/esm2022/lib/ngx-lib.module.mjs +6 -15
  42. package/esm2022/lib/services/app-path-config.service.mjs +5 -5
  43. package/esm2022/lib/services/service-base.mjs +2 -2
  44. package/esm2022/msgraph/msgraph.module.mjs +4 -4
  45. package/esm2022/public_api.mjs +2 -1
  46. package/esm2022/quill/components/editor/editor.component.mjs +3 -3
  47. package/esm2022/quill/components/raw/raw.component.mjs +3 -3
  48. package/esm2022/quill/mention/components/editor/editor.component.mjs +3 -3
  49. package/esm2022/quill/mention/quill-mention.module.mjs +4 -4
  50. package/esm2022/quill/quill.module.mjs +5 -10
  51. package/esm2022/sharepoint/components/user-photo/user-photo.component.mjs +3 -3
  52. package/esm2022/sharepoint/pipes/user-photo-url.pipe.mjs +3 -3
  53. package/esm2022/sharepoint/services/sharepoint.service.mjs +3 -3
  54. package/esm2022/sharepoint/sharepoint.module.mjs +5 -14
  55. package/esm2022/table/components/table/table.component.mjs +3 -3
  56. package/esm2022/table/table.module.mjs +4 -4
  57. package/esm2022/upload/components/upload/upload.component.mjs +3 -3
  58. package/esm2022/upload/components/upload-dialog/upload-dialog.component.mjs +3 -3
  59. package/esm2022/upload/model/upload-service-options-token.mjs +3 -0
  60. package/esm2022/upload/model/upload-service-options.mjs +2 -3
  61. package/esm2022/upload/services/upload.service.mjs +5 -5
  62. package/esm2022/upload/upload.api.mjs +2 -1
  63. package/esm2022/upload/upload.module.mjs +6 -15
  64. package/esm2022/url-utilities/pipes/safe-resource-url.pipe.mjs +3 -3
  65. package/esm2022/url-utilities/pipes/safe-url.pipe.mjs +3 -3
  66. package/esm2022/url-utilities/pipes/uri-scheme.pipe.mjs +3 -3
  67. package/esm2022/url-utilities/url-utilities.module.mjs +4 -4
  68. package/fesm2022/cleavelandprice-ngx-lib-active-directory-material.mjs +11 -20
  69. package/fesm2022/cleavelandprice-ngx-lib-active-directory-material.mjs.map +1 -1
  70. package/fesm2022/cleavelandprice-ngx-lib-active-directory.mjs +7 -16
  71. package/fesm2022/cleavelandprice-ngx-lib-active-directory.mjs.map +1 -1
  72. package/fesm2022/cleavelandprice-ngx-lib-authentication-material.mjs +13 -13
  73. package/fesm2022/cleavelandprice-ngx-lib-authentication-material.mjs.map +1 -1
  74. package/fesm2022/cleavelandprice-ngx-lib-authentication-object.mjs +8 -8
  75. package/fesm2022/cleavelandprice-ngx-lib-authentication-object.mjs.map +1 -1
  76. package/fesm2022/cleavelandprice-ngx-lib-authentication-token.mjs +7 -7
  77. package/fesm2022/cleavelandprice-ngx-lib-authentication-token.mjs.map +1 -1
  78. package/fesm2022/cleavelandprice-ngx-lib-authentication.mjs +4 -4
  79. package/fesm2022/cleavelandprice-ngx-lib-dialog.mjs +19 -19
  80. package/fesm2022/cleavelandprice-ngx-lib-msgraph.mjs +4 -4
  81. package/fesm2022/cleavelandprice-ngx-lib-quill-mention.mjs +7 -7
  82. package/fesm2022/cleavelandprice-ngx-lib-quill.mjs +10 -15
  83. package/fesm2022/cleavelandprice-ngx-lib-quill.mjs.map +1 -1
  84. package/fesm2022/cleavelandprice-ngx-lib-sharepoint.mjs +13 -22
  85. package/fesm2022/cleavelandprice-ngx-lib-sharepoint.mjs.map +1 -1
  86. package/fesm2022/cleavelandprice-ngx-lib-table.mjs +7 -7
  87. package/fesm2022/cleavelandprice-ngx-lib-upload.mjs +14 -22
  88. package/fesm2022/cleavelandprice-ngx-lib-upload.mjs.map +1 -1
  89. package/fesm2022/cleavelandprice-ngx-lib-url-utilities.mjs +13 -13
  90. package/fesm2022/cleavelandprice-ngx-lib.mjs +7 -16
  91. package/fesm2022/cleavelandprice-ngx-lib.mjs.map +1 -1
  92. package/lib/model/service-options-token.d.ts +3 -0
  93. package/lib/model/service-options.d.ts +0 -2
  94. package/package.json +21 -21
  95. package/public_api.d.ts +1 -0
  96. package/upload/model/upload-service-options-token.d.ts +3 -0
  97. package/upload/model/upload-service-options.d.ts +0 -2
  98. package/upload/upload.api.d.ts +1 -0
@@ -1,8 +1,9 @@
1
+ export * from './model/active-directory-service-options';
2
+ export * from './model/active-directory-service-options-token';
1
3
  export * from './model/ad-object';
2
4
  export * from './model/ad-object-with-children';
3
5
  export * from './model/cleaveland-price-user';
4
6
  export * from './model/group';
5
- export * from './model/active-directory-service-options';
6
7
  export * from './model/user';
7
8
  export * from './model/user-or-group';
8
9
  export * from './services/active-directory.service';
@@ -0,0 +1,3 @@
1
+ import { InjectionToken } from "@angular/core";
2
+ import { ActiveDirectoryServiceOptions } from "./active-directory-service-options";
3
+ export declare const ActiveDirectoryServiceOptionsToken: InjectionToken<ActiveDirectoryServiceOptions>;
@@ -1,7 +1,5 @@
1
- import { InjectionToken } from "@angular/core";
2
1
  import { CachingConfig, LoggingConfig, NgxLibServiceOptions } from "@cleavelandprice/ngx-lib";
3
2
  export interface ActiveDirectoryServiceOptions extends NgxLibServiceOptions {
4
3
  caching?: CachingConfig;
5
4
  logging?: LoggingConfig;
6
5
  }
7
- export declare const ActiveDirectoryServiceOptionsToken: InjectionToken<ActiveDirectoryServiceOptions>;
@@ -1,5 +1,6 @@
1
1
  export * from './model/login-form-data';
2
2
  export * from './model/mat-authentication-service-options';
3
+ export * from './model/mat-authentication-service-options-token';
3
4
  export * from './services/mat-authentication.service';
4
5
  export * from './components/login-form/login-form.component';
5
6
  export * from './components/login/login.component';
@@ -0,0 +1,3 @@
1
+ import { InjectionToken } from "@angular/core";
2
+ import { MatAuthenticationServiceOptions } from "./mat-authentication-service-options";
3
+ export declare const MatAuthenticationServiceOptionsToken: InjectionToken<MatAuthenticationServiceOptions>;
@@ -1,6 +1,4 @@
1
- import { InjectionToken } from "@angular/core";
2
1
  import { AuthenticationTokenServiceOptions } from '@cleavelandprice/ngx-lib/authentication/token';
3
2
  export interface MatAuthenticationServiceOptions extends AuthenticationTokenServiceOptions {
4
3
  showRememberMeOption?: boolean;
5
4
  }
6
- export declare const MatAuthenticationServiceOptionsToken: InjectionToken<MatAuthenticationServiceOptions>;
@@ -1,4 +1,5 @@
1
1
  export * from './model/authentication-token';
2
2
  export * from './model/authentication-token-service-options';
3
+ export * from './model/authentication-token-service-options-token';
3
4
  export * from './services/authentication-token.service';
4
5
  export * from './authetiction-token.module';
@@ -0,0 +1,3 @@
1
+ import { InjectionToken } from "@angular/core";
2
+ import { AuthenticationTokenServiceOptions } from "./authentication-token-service-options";
3
+ export declare const AuthenticationTokenServiceOptionsToken: InjectionToken<AuthenticationTokenServiceOptions>;
@@ -1,6 +1,4 @@
1
- import { InjectionToken } from "@angular/core";
2
1
  import { AuthenticationBaseServiceOptions } from "@cleavelandprice/ngx-lib/authentication";
3
2
  export interface AuthenticationTokenServiceOptions extends AuthenticationBaseServiceOptions {
4
3
  deferTokenValidation?: boolean;
5
4
  }
6
- export declare const AuthenticationTokenServiceOptionsToken: InjectionToken<AuthenticationTokenServiceOptions>;
@@ -1,12 +1,11 @@
1
+ export * from './model/active-directory-service-options';
2
+ export * from './model/active-directory-service-options-token';
1
3
  export * from './model/ad-object';
2
4
  export * from './model/ad-object-with-children';
3
- //export * from './model/caching-config';
4
5
  export * from './model/cleaveland-price-user';
5
6
  export * from './model/group';
6
- //export * from './model/logging-config';
7
- export * from './model/active-directory-service-options';
8
7
  export * from './model/user';
9
8
  export * from './model/user-or-group';
10
9
  export * from './services/active-directory.service';
11
10
  export * from './active-directory.module';
12
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aXZlLWRpcmVjdG9yeS5hcGkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGVhdmVsYW5kcHJpY2Uvbmd4LWxpYi9hY3RpdmUtZGlyZWN0b3J5L3NyYy9hY3RpdmUtZGlyZWN0b3J5LmFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMsaUNBQWlDLENBQUM7QUFDaEQseUNBQXlDO0FBQ3pDLGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyxlQUFlLENBQUM7QUFDOUIseUNBQXlDO0FBQ3pDLGNBQWMsMENBQTBDLENBQUM7QUFDekQsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyx1QkFBdUIsQ0FBQztBQUV0QyxjQUFjLHFDQUFxQyxDQUFDO0FBRXBELGNBQWMsMkJBQTJCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL21vZGVsL2FkLW9iamVjdCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbW9kZWwvYWQtb2JqZWN0LXdpdGgtY2hpbGRyZW4nO1xyXG4vL2V4cG9ydCAqIGZyb20gJy4vbW9kZWwvY2FjaGluZy1jb25maWcnO1xyXG5leHBvcnQgKiBmcm9tICcuL21vZGVsL2NsZWF2ZWxhbmQtcHJpY2UtdXNlcic7XHJcbmV4cG9ydCAqIGZyb20gJy4vbW9kZWwvZ3JvdXAnO1xyXG4vL2V4cG9ydCAqIGZyb20gJy4vbW9kZWwvbG9nZ2luZy1jb25maWcnO1xyXG5leHBvcnQgKiBmcm9tICcuL21vZGVsL2FjdGl2ZS1kaXJlY3Rvcnktc2VydmljZS1vcHRpb25zJztcclxuZXhwb3J0ICogZnJvbSAnLi9tb2RlbC91c2VyJztcclxuZXhwb3J0ICogZnJvbSAnLi9tb2RlbC91c2VyLW9yLWdyb3VwJztcclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vc2VydmljZXMvYWN0aXZlLWRpcmVjdG9yeS5zZXJ2aWNlJztcclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vYWN0aXZlLWRpcmVjdG9yeS5tb2R1bGUnO1xyXG5cclxuIl19
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aXZlLWRpcmVjdG9yeS5hcGkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGVhdmVsYW5kcHJpY2Uvbmd4LWxpYi9hY3RpdmUtZGlyZWN0b3J5L3NyYy9hY3RpdmUtZGlyZWN0b3J5LmFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDBDQUEwQyxDQUFDO0FBQ3pELGNBQWMsZ0RBQWdELENBQUM7QUFDL0QsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyx1QkFBdUIsQ0FBQztBQUV0QyxjQUFjLHFDQUFxQyxDQUFDO0FBRXBELGNBQWMsMkJBQTJCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL21vZGVsL2FjdGl2ZS1kaXJlY3Rvcnktc2VydmljZS1vcHRpb25zJztcclxuZXhwb3J0ICogZnJvbSAnLi9tb2RlbC9hY3RpdmUtZGlyZWN0b3J5LXNlcnZpY2Utb3B0aW9ucy10b2tlbic7XHJcbmV4cG9ydCAqIGZyb20gJy4vbW9kZWwvYWQtb2JqZWN0JztcclxuZXhwb3J0ICogZnJvbSAnLi9tb2RlbC9hZC1vYmplY3Qtd2l0aC1jaGlsZHJlbic7XHJcbmV4cG9ydCAqIGZyb20gJy4vbW9kZWwvY2xlYXZlbGFuZC1wcmljZS11c2VyJztcclxuZXhwb3J0ICogZnJvbSAnLi9tb2RlbC9ncm91cCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbW9kZWwvdXNlcic7XHJcbmV4cG9ydCAqIGZyb20gJy4vbW9kZWwvdXNlci1vci1ncm91cCc7XHJcblxyXG5leHBvcnQgKiBmcm9tICcuL3NlcnZpY2VzL2FjdGl2ZS1kaXJlY3Rvcnkuc2VydmljZSc7XHJcblxyXG5leHBvcnQgKiBmcm9tICcuL2FjdGl2ZS1kaXJlY3RvcnkubW9kdWxlJztcclxuXHJcbiJdfQ==
@@ -1,17 +1,8 @@
1
1
  import { CommonModule } from '@angular/common';
2
2
  import { NgModule, Optional, SkipSelf } from '@angular/core';
3
- import { ActiveDirectoryServiceOptionsToken } from './model/active-directory-service-options';
3
+ import { ActiveDirectoryServiceOptionsToken } from './model/active-directory-service-options-token';
4
4
  import * as i0 from "@angular/core";
5
5
  export class ActiveDirectoryModule {
6
- /*static forRoot(config: ServiceConfig): ModuleWithProviders<ActiveDirectoryModule> {
7
- return {
8
- ngModule: ActiveDirectoryModule,
9
- providers: [
10
- ActiveDirectoryService,
11
- { provide: ServiceConfig, useValue: config }
12
- ]
13
- };
14
- }*/
15
6
  static forRoot(config) {
16
7
  return {
17
8
  ngModule: ActiveDirectoryModule,
@@ -28,11 +19,11 @@ export class ActiveDirectoryModule {
28
19
  throw new Error('ActiveDirectoryModule is already loaded. Import it in the AppModule only');
29
20
  }
30
21
  }
31
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: ActiveDirectoryModule, deps: [{ token: ActiveDirectoryModule, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.NgModule }); }
32
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.3", ngImport: i0, type: ActiveDirectoryModule, imports: [CommonModule] }); }
33
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: ActiveDirectoryModule, imports: [CommonModule] }); }
22
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: ActiveDirectoryModule, deps: [{ token: ActiveDirectoryModule, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.NgModule }); }
23
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.5", ngImport: i0, type: ActiveDirectoryModule, imports: [CommonModule] }); }
24
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: ActiveDirectoryModule, imports: [CommonModule] }); }
34
25
  }
35
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: ActiveDirectoryModule, decorators: [{
26
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: ActiveDirectoryModule, decorators: [{
36
27
  type: NgModule,
37
28
  args: [{
38
29
  declarations: [],
@@ -46,4 +37,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImpor
46
37
  }, {
47
38
  type: SkipSelf
48
39
  }] }] });
49
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aXZlLWRpcmVjdG9yeS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGVhdmVsYW5kcHJpY2Uvbmd4LWxpYi9hY3RpdmUtZGlyZWN0b3J5L3NyYy9hY3RpdmUtZGlyZWN0b3J5Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUF1QixRQUFRLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVsRixPQUFPLEVBQWlDLGtDQUFrQyxFQUFFLE1BQU0sMENBQTBDLENBQUM7O0FBUzdILE1BQU0sT0FBTyxxQkFBcUI7SUFDaEM7Ozs7Ozs7O09BUUc7SUFDSCxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQXFDO1FBQ2xELE9BQU87WUFDTCxRQUFRLEVBQUUscUJBQXFCO1lBQy9CLFNBQVMsRUFBRTtnQkFDVDtvQkFDRSxPQUFPLEVBQUUsa0NBQWtDO29CQUMzQyxRQUFRLEVBQUUsTUFBTTtpQkFDakI7YUFDRjtTQUNGLENBQUM7SUFDSixDQUFDO0lBRUQsWUFBb0MsWUFBbUM7UUFDckUsSUFBSSxZQUFZLEVBQUUsQ0FBQztZQUNqQixNQUFNLElBQUksS0FBSyxDQUNiLDBFQUEwRSxDQUFDLENBQUM7UUFDaEYsQ0FBQztJQUNILENBQUM7OEdBM0JVLHFCQUFxQjsrR0FBckIscUJBQXFCLFlBSjlCLFlBQVk7K0dBSUgscUJBQXFCLFlBSjlCLFlBQVk7OzJGQUlILHFCQUFxQjtrQkFQakMsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsRUFBRTtvQkFDaEIsT0FBTyxFQUFFO3dCQUNQLFlBQVk7cUJBQ2I7b0JBQ0QsT0FBTyxFQUFFLEVBQUU7aUJBQ1o7OzBCQXVCYyxRQUFROzswQkFBSSxRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUsIE9wdGlvbmFsLCBTa2lwU2VsZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgQWN0aXZlRGlyZWN0b3J5U2VydmljZU9wdGlvbnMsIEFjdGl2ZURpcmVjdG9yeVNlcnZpY2VPcHRpb25zVG9rZW4gfSBmcm9tICcuL21vZGVsL2FjdGl2ZS1kaXJlY3Rvcnktc2VydmljZS1vcHRpb25zJztcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgZGVjbGFyYXRpb25zOiBbXSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBDb21tb25Nb2R1bGVcclxuICBdLFxyXG4gIGV4cG9ydHM6IFtdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBY3RpdmVEaXJlY3RvcnlNb2R1bGUge1xyXG4gIC8qc3RhdGljIGZvclJvb3QoY29uZmlnOiBTZXJ2aWNlQ29uZmlnKTogTW9kdWxlV2l0aFByb3ZpZGVyczxBY3RpdmVEaXJlY3RvcnlNb2R1bGU+IHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgIG5nTW9kdWxlOiBBY3RpdmVEaXJlY3RvcnlNb2R1bGUsXHJcbiAgICAgIHByb3ZpZGVyczogW1xyXG4gICAgICAgIEFjdGl2ZURpcmVjdG9yeVNlcnZpY2UsXHJcbiAgICAgICAgeyBwcm92aWRlOiBTZXJ2aWNlQ29uZmlnLCB1c2VWYWx1ZTogY29uZmlnIH1cclxuICAgICAgXVxyXG4gICAgfTtcclxuICB9Ki9cclxuICBzdGF0aWMgZm9yUm9vdChjb25maWc6IEFjdGl2ZURpcmVjdG9yeVNlcnZpY2VPcHRpb25zKTogTW9kdWxlV2l0aFByb3ZpZGVyczxBY3RpdmVEaXJlY3RvcnlNb2R1bGU+IHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgIG5nTW9kdWxlOiBBY3RpdmVEaXJlY3RvcnlNb2R1bGUsXHJcbiAgICAgIHByb3ZpZGVyczogW1xyXG4gICAgICAgIHtcclxuICAgICAgICAgIHByb3ZpZGU6IEFjdGl2ZURpcmVjdG9yeVNlcnZpY2VPcHRpb25zVG9rZW4sXHJcbiAgICAgICAgICB1c2VWYWx1ZTogY29uZmlnXHJcbiAgICAgICAgfVxyXG4gICAgICBdXHJcbiAgICB9O1xyXG4gIH1cclxuXHJcbiAgY29uc3RydWN0b3IoQE9wdGlvbmFsKCkgQFNraXBTZWxmKCkgcGFyZW50TW9kdWxlOiBBY3RpdmVEaXJlY3RvcnlNb2R1bGUpIHtcclxuICAgIGlmIChwYXJlbnRNb2R1bGUpIHtcclxuICAgICAgdGhyb3cgbmV3IEVycm9yKFxyXG4gICAgICAgICdBY3RpdmVEaXJlY3RvcnlNb2R1bGUgaXMgYWxyZWFkeSBsb2FkZWQuIEltcG9ydCBpdCBpbiB0aGUgQXBwTW9kdWxlIG9ubHknKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aXZlLWRpcmVjdG9yeS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGVhdmVsYW5kcHJpY2Uvbmd4LWxpYi9hY3RpdmUtZGlyZWN0b3J5L3NyYy9hY3RpdmUtZGlyZWN0b3J5Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUF1QixRQUFRLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUdsRixPQUFPLEVBQUUsa0NBQWtDLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQzs7QUFTcEcsTUFBTSxPQUFPLHFCQUFxQjtJQUNoQyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQXFDO1FBQ2xELE9BQU87WUFDTCxRQUFRLEVBQUUscUJBQXFCO1lBQy9CLFNBQVMsRUFBRTtnQkFDVDtvQkFDRSxPQUFPLEVBQUUsa0NBQWtDO29CQUMzQyxRQUFRLEVBQUUsTUFBTTtpQkFDakI7YUFDRjtTQUNGLENBQUM7SUFDSixDQUFDO0lBRUQsWUFBb0MsWUFBbUM7UUFDckUsSUFBSSxZQUFZLEVBQUUsQ0FBQztZQUNqQixNQUFNLElBQUksS0FBSyxDQUNiLDBFQUEwRSxDQUFDLENBQUM7UUFDaEYsQ0FBQztJQUNILENBQUM7OEdBbEJVLHFCQUFxQjsrR0FBckIscUJBQXFCLFlBSjlCLFlBQVk7K0dBSUgscUJBQXFCLFlBSjlCLFlBQVk7OzJGQUlILHFCQUFxQjtrQkFQakMsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsRUFBRTtvQkFDaEIsT0FBTyxFQUFFO3dCQUNQLFlBQVk7cUJBQ2I7b0JBQ0QsT0FBTyxFQUFFLEVBQUU7aUJBQ1o7OzBCQWNjLFFBQVE7OzBCQUFJLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZSwgT3B0aW9uYWwsIFNraXBTZWxmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5pbXBvcnQgeyBBY3RpdmVEaXJlY3RvcnlTZXJ2aWNlT3B0aW9ucyB9IGZyb20gJy4vbW9kZWwvYWN0aXZlLWRpcmVjdG9yeS1zZXJ2aWNlLW9wdGlvbnMnO1xyXG5pbXBvcnQgeyBBY3RpdmVEaXJlY3RvcnlTZXJ2aWNlT3B0aW9uc1Rva2VuIH0gZnJvbSAnLi9tb2RlbC9hY3RpdmUtZGlyZWN0b3J5LXNlcnZpY2Utb3B0aW9ucy10b2tlbic7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGRlY2xhcmF0aW9uczogW10sXHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlXHJcbiAgXSxcclxuICBleHBvcnRzOiBbXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQWN0aXZlRGlyZWN0b3J5TW9kdWxlIHtcclxuICBzdGF0aWMgZm9yUm9vdChjb25maWc6IEFjdGl2ZURpcmVjdG9yeVNlcnZpY2VPcHRpb25zKTogTW9kdWxlV2l0aFByb3ZpZGVyczxBY3RpdmVEaXJlY3RvcnlNb2R1bGU+IHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgIG5nTW9kdWxlOiBBY3RpdmVEaXJlY3RvcnlNb2R1bGUsXHJcbiAgICAgIHByb3ZpZGVyczogW1xyXG4gICAgICAgIHtcclxuICAgICAgICAgIHByb3ZpZGU6IEFjdGl2ZURpcmVjdG9yeVNlcnZpY2VPcHRpb25zVG9rZW4sXHJcbiAgICAgICAgICB1c2VWYWx1ZTogY29uZmlnXHJcbiAgICAgICAgfVxyXG4gICAgICBdXHJcbiAgICB9O1xyXG4gIH1cclxuXHJcbiAgY29uc3RydWN0b3IoQE9wdGlvbmFsKCkgQFNraXBTZWxmKCkgcGFyZW50TW9kdWxlOiBBY3RpdmVEaXJlY3RvcnlNb2R1bGUpIHtcclxuICAgIGlmIChwYXJlbnRNb2R1bGUpIHtcclxuICAgICAgdGhyb3cgbmV3IEVycm9yKFxyXG4gICAgICAgICdBY3RpdmVEaXJlY3RvcnlNb2R1bGUgaXMgYWxyZWFkeSBsb2FkZWQuIEltcG9ydCBpdCBpbiB0aGUgQXBwTW9kdWxlIG9ubHknKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19
@@ -378,10 +378,10 @@ export class UserChooserComponent {
378
378
  .join('\n') :
379
379
  '';
380
380
  }
381
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: UserChooserComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
382
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.3", type: UserChooserComponent, isStandalone: true, selector: "ng-component", viewQueries: [{ propertyName: "selectionList", first: true, predicate: MatSelectionList, descendants: true, isSignal: true }, { propertyName: "filterInput", first: true, predicate: ["filterInput"], descendants: true }], ngImport: i0, template: "<div id=\"dialog-title\">\n <h2 mat-dialog-title>{{ _data.title }}</h2>\n\n <div id=\"num-selected\">\n {{ selectedOptions.length }} selected\n </div>\n</div>\n\n<mat-dialog-content>\n @if (dataSource && photos) {\n <form [formGroup]=\"filterForm\">\n @if (dataSource) {\n <mat-form-field>\n <input matInput placeholder=\"Search\" formControlName=\"filter\" #filterInput>\n @if (filterForm.value.filter) {\n <button matSuffix mat-icon-button aria-label=\"Clear\" (click)=\"filterForm.get('filter')?.setValue('')\">\n <mat-icon fontIcon=\"close\"/>\n </button>\n }\n </mat-form-field>\n }\n </form>\n <mat-selection-list [multiple]=\"isMultiMode\"\n (selectionChange)=\"listSelectionChanged($event.options)\">\n @for (user of dataSource?.filteredData; track user) {\n <mat-list-option [value]=\"user\" [selected]=\"user.selected\"\n (selectedChange)=\"optionSelectionChanged(option)\" #option>\n @if (getPhoto(user)) {\n <img matListItemAvatar alt=\"\" [src]=\"getPhoto(user)\">\n } @else {\n <mat-icon matListItemAvatar class=\"no-photo\"\n [fontIcon]=\"isUser(user) ? 'account_circle' : 'group'\"/>\n }\n <div class=\"user\">\n <div [matTooltip]=\"tooltip(user)\" class=\"user-name\">\n {{ user.displayName }}\n @if (isUser(user) && _data.showPhone && castUser(user).telephoneNumber) {\n <div>{{ castUser(user).telephoneNumber }}</div>\n }\n </div>\n @if (isUser(user)) {\n <div>{{ castUser(user).department }}</div>\n <div class=\"title\">{{ castUser(user).title }}</div>\n }\n </div>\n </mat-list-option>\n }\n </mat-selection-list>\n } @else {\n <div>\n <mat-spinner [diameter]=\"50\"/>\n <h2 id=\"spinner-message\">Getting users and photos...</h2>\n </div>\n }\n</mat-dialog-content>\n\n<mat-dialog-actions>\n @if (dataSource && photos) {\n @if (selectedOptions.length) {\n <mat-slide-toggle (change)=\"hideUnselectedChanged($event.checked)\">\n Hide Unselected\n </mat-slide-toggle>\n }\n @if (isMultiMode) {\n <button mat-raised-button color=\"primary\" (click)=\"selectAll()\"\n >\n <mat-icon fontIcon=\"select_all\"/>\n <span class=\"hide-mobile\">Select All</span>\n </button>\n }\n @if (isMultiMode && selectedOptions.length) {\n <button mat-raised-button color=\"primary\" (click)=\"deselectAll()\"\n >\n <mat-icon fontIcon=\"clear_all\"/>\n <span class=\"hide-mobile\">Clear All</span>\n </button>\n }\n @if (isMultiMode || !_data.closeWhenSelectionMade) {\n <button mat-raised-button color=\"primary\" (click)=\"close()\" matTooltip=\"Accept your selection\"\n [disabled]=\"!selectedOptions.length\">\n <mat-icon fontIcon=\"check\"/>\n <span class=\"hide-mobile\">Ok</span>\n </button>\n }\n }\n\n <button mat-raised-button color=\"warn\" mat-dialog-close matTooltip=\"Close this window\">\n <mat-icon fontIcon=\"close\"/>\n <span class=\"hide-mobile\">Cancel</span>\n </button>\n</mat-dialog-actions>", styles: ["::ng-deep .mat-tooltip{font-size:1em!important;white-space:pre-line}mat-dialog-content{min-width:50vw}#dialog-title{display:flex;justify-content:space-between}#num-selected{margin:1em 1em 0 0}mat-spinner{margin:0 auto}#spinner-message{text-align:center;padding:.5em}mat-form-field{width:100%}.title{font-style:italic;color:#757575}img,.no-photo{width:2rem;height:2rem;font-size:2.3rem!important;border-radius:100%}.hide-mobile{display:none}mat-dialog-actions{display:grid;grid-auto-flow:column;grid-gap:1em;justify-content:center}.user-name{display:flex;justify-content:space-between}.user-name>div:last-child{margin-right:10rem;font-weight:400;font-style:italic;color:#757575}@media (min-width: 801px){.user{display:grid;grid-template-columns:1fr 1fr 1fr}.user>div:first-child{font-weight:700}.hide-mobile{display:initial}}\n", ".material-icons{font-family:Material Icons;font-weight:400;font-style:normal;font-size:24px;display:inline-block;line-height:1;text-transform:none;letter-spacing:normal;word-wrap:normal;white-space:nowrap;direction:ltr;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;-moz-osx-font-smoothing:grayscale;font-feature-settings:\"liga\"}\n"], dependencies: [{ kind: "component", type: MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "directive", type: MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "directive", type: MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "component", type: MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "directive", type: MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: MatListOption, selector: "mat-list-option", inputs: ["togglePosition", "checkboxPosition", "color", "value", "selected"], outputs: ["selectedChange"], exportAs: ["matListOption"] }, { kind: "component", type: MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "component", type: MatSelectionList, selector: "mat-selection-list", inputs: ["color", "compareWith", "multiple", "hideSingleSelectionIndicator", "disabled"], outputs: ["selectionChange"], exportAs: ["matSelectionList"] }, { kind: "component", type: MatSlideToggle, selector: "mat-slide-toggle", inputs: ["name", "id", "labelPosition", "aria-label", "aria-labelledby", "aria-describedby", "required", "color", "disabled", "disableRipple", "tabIndex", "checked", "hideIcon"], outputs: ["change", "toggleChange"], exportAs: ["matSlideToggle"] }, { kind: "directive", type: MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }] }); }
381
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: UserChooserComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
382
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.5", type: UserChooserComponent, isStandalone: true, selector: "ng-component", viewQueries: [{ propertyName: "selectionList", first: true, predicate: MatSelectionList, descendants: true, isSignal: true }, { propertyName: "filterInput", first: true, predicate: ["filterInput"], descendants: true }], ngImport: i0, template: "<div id=\"dialog-title\">\n <h2 mat-dialog-title>{{ _data.title }}</h2>\n\n <div id=\"num-selected\">\n {{ selectedOptions.length }} selected\n </div>\n</div>\n\n<mat-dialog-content>\n @if (dataSource && photos) {\n <form [formGroup]=\"filterForm\">\n @if (dataSource) {\n <mat-form-field>\n <input matInput placeholder=\"Search\" formControlName=\"filter\" #filterInput>\n @if (filterForm.value.filter) {\n <button matSuffix mat-icon-button aria-label=\"Clear\" (click)=\"filterForm.get('filter')?.setValue('')\">\n <mat-icon fontIcon=\"close\"/>\n </button>\n }\n </mat-form-field>\n }\n </form>\n <mat-selection-list [multiple]=\"isMultiMode\"\n (selectionChange)=\"listSelectionChanged($event.options)\">\n @for (user of dataSource?.filteredData; track user) {\n <mat-list-option [value]=\"user\" [selected]=\"user.selected\"\n (selectedChange)=\"optionSelectionChanged(option)\" #option>\n @if (getPhoto(user)) {\n <img matListItemAvatar alt=\"\" [src]=\"getPhoto(user)\">\n } @else {\n <mat-icon matListItemAvatar class=\"no-photo\"\n [fontIcon]=\"isUser(user) ? 'account_circle' : 'group'\"/>\n }\n <div class=\"user\">\n <div [matTooltip]=\"tooltip(user)\" class=\"user-name\">\n {{ user.displayName }}\n @if (isUser(user) && _data.showPhone && castUser(user).telephoneNumber) {\n <div>{{ castUser(user).telephoneNumber }}</div>\n }\n </div>\n @if (isUser(user)) {\n <div>{{ castUser(user).department }}</div>\n <div class=\"title\">{{ castUser(user).title }}</div>\n }\n </div>\n </mat-list-option>\n }\n </mat-selection-list>\n } @else {\n <div>\n <mat-spinner [diameter]=\"50\"/>\n <h2 id=\"spinner-message\">Getting users and photos...</h2>\n </div>\n }\n</mat-dialog-content>\n\n<mat-dialog-actions>\n @if (dataSource && photos) {\n @if (selectedOptions.length) {\n <mat-slide-toggle (change)=\"hideUnselectedChanged($event.checked)\">\n Hide Unselected\n </mat-slide-toggle>\n }\n @if (isMultiMode) {\n <button mat-raised-button color=\"primary\" (click)=\"selectAll()\"\n >\n <mat-icon fontIcon=\"select_all\"/>\n <span class=\"hide-mobile\">Select All</span>\n </button>\n }\n @if (isMultiMode && selectedOptions.length) {\n <button mat-raised-button color=\"primary\" (click)=\"deselectAll()\"\n >\n <mat-icon fontIcon=\"clear_all\"/>\n <span class=\"hide-mobile\">Clear All</span>\n </button>\n }\n @if (isMultiMode || !_data.closeWhenSelectionMade) {\n <button mat-raised-button color=\"primary\" (click)=\"close()\" matTooltip=\"Accept your selection\"\n [disabled]=\"!selectedOptions.length\">\n <mat-icon fontIcon=\"check\"/>\n <span class=\"hide-mobile\">Ok</span>\n </button>\n }\n }\n\n <button mat-raised-button color=\"warn\" mat-dialog-close matTooltip=\"Close this window\">\n <mat-icon fontIcon=\"close\"/>\n <span class=\"hide-mobile\">Cancel</span>\n </button>\n</mat-dialog-actions>", styles: ["::ng-deep .mat-tooltip{font-size:1em!important;white-space:pre-line}mat-dialog-content{min-width:50vw}#dialog-title{display:flex;justify-content:space-between}#num-selected{margin:1em 1em 0 0}mat-spinner{margin:0 auto}#spinner-message{text-align:center;padding:.5em}mat-form-field{width:100%}.title{font-style:italic;color:#757575}img,.no-photo{width:2rem;height:2rem;font-size:2.3rem!important;border-radius:100%}.hide-mobile{display:none}mat-dialog-actions{display:grid;grid-auto-flow:column;grid-gap:1em;justify-content:center}.user-name{display:flex;justify-content:space-between}.user-name>div:last-child{margin-right:10rem;font-weight:400;font-style:italic;color:#757575}@media (min-width: 801px){.user{display:grid;grid-template-columns:1fr 1fr 1fr}.user>div:first-child{font-weight:700}.hide-mobile{display:initial}}\n", ".material-icons{font-family:Material Icons;font-weight:400;font-style:normal;font-size:24px;display:inline-block;line-height:1;text-transform:none;letter-spacing:normal;word-wrap:normal;white-space:nowrap;direction:ltr;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;-moz-osx-font-smoothing:grayscale;font-feature-settings:\"liga\"}\n"], dependencies: [{ kind: "component", type: MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "directive", type: MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "directive", type: MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "component", type: MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "directive", type: MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: MatListOption, selector: "mat-list-option", inputs: ["togglePosition", "checkboxPosition", "color", "value", "selected"], outputs: ["selectedChange"], exportAs: ["matListOption"] }, { kind: "component", type: MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "component", type: MatSelectionList, selector: "mat-selection-list", inputs: ["color", "compareWith", "multiple", "hideSingleSelectionIndicator", "disabled"], outputs: ["selectionChange"], exportAs: ["matSelectionList"] }, { kind: "component", type: MatSlideToggle, selector: "mat-slide-toggle", inputs: ["name", "id", "labelPosition", "aria-label", "aria-labelledby", "aria-describedby", "required", "color", "disabled", "disableRipple", "tabIndex", "checked", "hideIcon"], outputs: ["change", "toggleChange"], exportAs: ["matSlideToggle"] }, { kind: "directive", type: MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }] }); }
383
383
  }
384
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: UserChooserComponent, decorators: [{
384
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: UserChooserComponent, decorators: [{
385
385
  type: Component,
386
386
  args: [{ standalone: true, imports: [
387
387
  MatButton,
@@ -119,10 +119,10 @@ export class UserFormFieldComponent {
119
119
  p.displayName?.toLowerCase() === user.displayName.toLowerCase() ||
120
120
  p.title?.toLowerCase() === user.displayName.toLowerCase())?.encodedAbsUrl;
121
121
  }
122
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: UserFormFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
123
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.3", type: UserFormFieldComponent, isStandalone: true, selector: "cp-user-field", inputs: { placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, clickable: { classPropertyName: "clickable", publicName: "clickable", isSignal: true, isRequired: false, transformFunction: null }, userChooserData: { classPropertyName: "userChooserData", publicName: "userChooserData", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { usersSelected: "usersSelected", userUnSelected: "userUnSelected" }, ngImport: i0, template: "\n<!-- In Microsoft Edge, selectUser() never gets called if the input fields are disabled\nSo... I'm dynamically setting the disabled property based on whether or not the browser is Edge.\nIt's definitely a better experience if the field IS disabled.\nOtherwise, it's confusing - especially because Edge is SO SLOW to display the resulting dialog window.\n-->\n<!-- Update 8/24/2023:\nThe above problem also exists in Chrome now.\nSo instead of dynamically setting [disabled] based on browser type,\nI'm applying CSS to suppress mouse events on the input - thus making it bubble up to the parent control, which responds the way we want/\n-->\n\n@if (users && photos) {\n <div (click)=\"selectUser()\" [class.clickable]=\"clickable()\">\n @if (accountNames.length) {\n <div\n [class.grid]=\"accountNames.length > 1\"\n [class.three]=\"accountNames.length > 2\"\n [class.four]=\"accountNames.length > 3\"\n [class.five]=\"accountNames.length > 4\">\n @for (accountName of accountNames; track accountName; let i = $index) {\n <div class=\"user\">\n <!--<img *ngIf=\"accountName && empUtils.getEmployee(accountName)\" alt=\"\" [src]=\"empUtils.getEmployee(accountName) | employeePhotoUrl:cacheService.photos\">-->\n @if (getPhoto(accountName)) {\n <img matListItemAvatar alt=\"\" [src]=\"getPhoto(accountName)\">\n }\n @if (getGroup(accountName)) {\n <mat-icon>group</mat-icon>\n }\n <mat-form-field>\n <!-- [disabled]=\"!isEdge\" -->\n <input matInput disabled [placeholder]=\"i === 0 ? placeholder() : ''\"\n [value]=\"getUser(accountName) ? getUser(accountName)?.displayName : getGroup(accountName) ? getGroup(accountName)?.displayName : accountName\">\n <button matSuffix mat-icon-button aria-label=\"Clear\" (click)=\"$event.stopPropagation(); unSelectUser(accountName)\">\n <mat-icon fontIcon=\"close\"/>\n </button>\n </mat-form-field>\n </div>\n }\n </div>\n } @else {\n <mat-form-field>\n <input matInput disabled [placeholder]=\"placeholder()\"> <!-- [disabled]=\"!isEdge\" -->\n </mat-form-field>\n }\n </div>\n} @else {\n <mat-progress-bar mode=\"indeterminate\"/>\n}", styles: [".user{display:grid;grid-template-columns:auto 1fr;grid-gap:.5em;align-items:center}.clickable,.clickable input{cursor:pointer!important}img{width:2em;height:2em;border-radius:100%}@media (min-width:801px){.grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:1em}.three{grid-template-columns:repeat(3,1fr)}.four{grid-template-columns:repeat(4,1fr)}.five{grid-template-columns:repeat(5,1fr)}::ng-deep .grid mat-form-field{width:15vw}}input[disabled]{pointer-events:none}\n"], dependencies: [{ kind: "component", type: MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "directive", type: MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }] }); }
122
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: UserFormFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
123
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.5", type: UserFormFieldComponent, isStandalone: true, selector: "cp-user-field", inputs: { placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, clickable: { classPropertyName: "clickable", publicName: "clickable", isSignal: true, isRequired: false, transformFunction: null }, userChooserData: { classPropertyName: "userChooserData", publicName: "userChooserData", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { usersSelected: "usersSelected", userUnSelected: "userUnSelected" }, ngImport: i0, template: "\n<!-- In Microsoft Edge, selectUser() never gets called if the input fields are disabled\nSo... I'm dynamically setting the disabled property based on whether or not the browser is Edge.\nIt's definitely a better experience if the field IS disabled.\nOtherwise, it's confusing - especially because Edge is SO SLOW to display the resulting dialog window.\n-->\n<!-- Update 8/24/2023:\nThe above problem also exists in Chrome now.\nSo instead of dynamically setting [disabled] based on browser type,\nI'm applying CSS to suppress mouse events on the input - thus making it bubble up to the parent control, which responds the way we want/\n-->\n\n@if (users && photos) {\n <div (click)=\"selectUser()\" [class.clickable]=\"clickable()\">\n @if (accountNames.length) {\n <div\n [class.grid]=\"accountNames.length > 1\"\n [class.three]=\"accountNames.length > 2\"\n [class.four]=\"accountNames.length > 3\"\n [class.five]=\"accountNames.length > 4\">\n @for (accountName of accountNames; track accountName; let i = $index) {\n <div class=\"user\">\n <!--<img *ngIf=\"accountName && empUtils.getEmployee(accountName)\" alt=\"\" [src]=\"empUtils.getEmployee(accountName) | employeePhotoUrl:cacheService.photos\">-->\n @if (getPhoto(accountName)) {\n <img matListItemAvatar alt=\"\" [src]=\"getPhoto(accountName)\">\n }\n @if (getGroup(accountName)) {\n <mat-icon>group</mat-icon>\n }\n <mat-form-field>\n <!-- [disabled]=\"!isEdge\" -->\n <input matInput disabled [placeholder]=\"i === 0 ? placeholder() : ''\"\n [value]=\"getUser(accountName) ? getUser(accountName)?.displayName : getGroup(accountName) ? getGroup(accountName)?.displayName : accountName\">\n <button matSuffix mat-icon-button aria-label=\"Clear\" (click)=\"$event.stopPropagation(); unSelectUser(accountName)\">\n <mat-icon fontIcon=\"close\"/>\n </button>\n </mat-form-field>\n </div>\n }\n </div>\n } @else {\n <mat-form-field>\n <input matInput disabled [placeholder]=\"placeholder()\"> <!-- [disabled]=\"!isEdge\" -->\n </mat-form-field>\n }\n </div>\n} @else {\n <mat-progress-bar mode=\"indeterminate\"/>\n}", styles: [".user{display:grid;grid-template-columns:auto 1fr;grid-gap:.5em;align-items:center}.clickable,.clickable input{cursor:pointer!important}img{width:2em;height:2em;border-radius:100%}@media (min-width: 801px){.grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:1em}.three{grid-template-columns:repeat(3,1fr)}.four{grid-template-columns:repeat(4,1fr)}.five{grid-template-columns:repeat(5,1fr)}::ng-deep .grid mat-form-field{width:15vw}}input[disabled]{pointer-events:none}\n"], dependencies: [{ kind: "component", type: MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "directive", type: MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }] }); }
124
124
  }
125
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: UserFormFieldComponent, decorators: [{
125
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: UserFormFieldComponent, decorators: [{
126
126
  type: Component,
127
127
  args: [{ selector: 'cp-user-field', standalone: true, imports: [
128
128
  MatButton,
@@ -131,6 +131,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImpor
131
131
  MatIconButton,
132
132
  MatInput,
133
133
  MatProgressBar,
134
- ], template: "\n<!-- In Microsoft Edge, selectUser() never gets called if the input fields are disabled\nSo... I'm dynamically setting the disabled property based on whether or not the browser is Edge.\nIt's definitely a better experience if the field IS disabled.\nOtherwise, it's confusing - especially because Edge is SO SLOW to display the resulting dialog window.\n-->\n<!-- Update 8/24/2023:\nThe above problem also exists in Chrome now.\nSo instead of dynamically setting [disabled] based on browser type,\nI'm applying CSS to suppress mouse events on the input - thus making it bubble up to the parent control, which responds the way we want/\n-->\n\n@if (users && photos) {\n <div (click)=\"selectUser()\" [class.clickable]=\"clickable()\">\n @if (accountNames.length) {\n <div\n [class.grid]=\"accountNames.length > 1\"\n [class.three]=\"accountNames.length > 2\"\n [class.four]=\"accountNames.length > 3\"\n [class.five]=\"accountNames.length > 4\">\n @for (accountName of accountNames; track accountName; let i = $index) {\n <div class=\"user\">\n <!--<img *ngIf=\"accountName && empUtils.getEmployee(accountName)\" alt=\"\" [src]=\"empUtils.getEmployee(accountName) | employeePhotoUrl:cacheService.photos\">-->\n @if (getPhoto(accountName)) {\n <img matListItemAvatar alt=\"\" [src]=\"getPhoto(accountName)\">\n }\n @if (getGroup(accountName)) {\n <mat-icon>group</mat-icon>\n }\n <mat-form-field>\n <!-- [disabled]=\"!isEdge\" -->\n <input matInput disabled [placeholder]=\"i === 0 ? placeholder() : ''\"\n [value]=\"getUser(accountName) ? getUser(accountName)?.displayName : getGroup(accountName) ? getGroup(accountName)?.displayName : accountName\">\n <button matSuffix mat-icon-button aria-label=\"Clear\" (click)=\"$event.stopPropagation(); unSelectUser(accountName)\">\n <mat-icon fontIcon=\"close\"/>\n </button>\n </mat-form-field>\n </div>\n }\n </div>\n } @else {\n <mat-form-field>\n <input matInput disabled [placeholder]=\"placeholder()\"> <!-- [disabled]=\"!isEdge\" -->\n </mat-form-field>\n }\n </div>\n} @else {\n <mat-progress-bar mode=\"indeterminate\"/>\n}", styles: [".user{display:grid;grid-template-columns:auto 1fr;grid-gap:.5em;align-items:center}.clickable,.clickable input{cursor:pointer!important}img{width:2em;height:2em;border-radius:100%}@media (min-width:801px){.grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:1em}.three{grid-template-columns:repeat(3,1fr)}.four{grid-template-columns:repeat(4,1fr)}.five{grid-template-columns:repeat(5,1fr)}::ng-deep .grid mat-form-field{width:15vw}}input[disabled]{pointer-events:none}\n"] }]
134
+ ], template: "\n<!-- In Microsoft Edge, selectUser() never gets called if the input fields are disabled\nSo... I'm dynamically setting the disabled property based on whether or not the browser is Edge.\nIt's definitely a better experience if the field IS disabled.\nOtherwise, it's confusing - especially because Edge is SO SLOW to display the resulting dialog window.\n-->\n<!-- Update 8/24/2023:\nThe above problem also exists in Chrome now.\nSo instead of dynamically setting [disabled] based on browser type,\nI'm applying CSS to suppress mouse events on the input - thus making it bubble up to the parent control, which responds the way we want/\n-->\n\n@if (users && photos) {\n <div (click)=\"selectUser()\" [class.clickable]=\"clickable()\">\n @if (accountNames.length) {\n <div\n [class.grid]=\"accountNames.length > 1\"\n [class.three]=\"accountNames.length > 2\"\n [class.four]=\"accountNames.length > 3\"\n [class.five]=\"accountNames.length > 4\">\n @for (accountName of accountNames; track accountName; let i = $index) {\n <div class=\"user\">\n <!--<img *ngIf=\"accountName && empUtils.getEmployee(accountName)\" alt=\"\" [src]=\"empUtils.getEmployee(accountName) | employeePhotoUrl:cacheService.photos\">-->\n @if (getPhoto(accountName)) {\n <img matListItemAvatar alt=\"\" [src]=\"getPhoto(accountName)\">\n }\n @if (getGroup(accountName)) {\n <mat-icon>group</mat-icon>\n }\n <mat-form-field>\n <!-- [disabled]=\"!isEdge\" -->\n <input matInput disabled [placeholder]=\"i === 0 ? placeholder() : ''\"\n [value]=\"getUser(accountName) ? getUser(accountName)?.displayName : getGroup(accountName) ? getGroup(accountName)?.displayName : accountName\">\n <button matSuffix mat-icon-button aria-label=\"Clear\" (click)=\"$event.stopPropagation(); unSelectUser(accountName)\">\n <mat-icon fontIcon=\"close\"/>\n </button>\n </mat-form-field>\n </div>\n }\n </div>\n } @else {\n <mat-form-field>\n <input matInput disabled [placeholder]=\"placeholder()\"> <!-- [disabled]=\"!isEdge\" -->\n </mat-form-field>\n }\n </div>\n} @else {\n <mat-progress-bar mode=\"indeterminate\"/>\n}", styles: [".user{display:grid;grid-template-columns:auto 1fr;grid-gap:.5em;align-items:center}.clickable,.clickable input{cursor:pointer!important}img{width:2em;height:2em;border-radius:100%}@media (min-width: 801px){.grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:1em}.three{grid-template-columns:repeat(3,1fr)}.four{grid-template-columns:repeat(4,1fr)}.five{grid-template-columns:repeat(5,1fr)}::ng-deep .grid mat-form-field{width:15vw}}input[disabled]{pointer-events:none}\n"] }]
135
135
  }] });
136
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1mb3JtLWZpZWxkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsZWF2ZWxhbmRwcmljZS9uZ3gtbGliL2FjdGl2ZS1kaXJlY3RvcnkvbWF0ZXJpYWwvc3JjL2NvbXBvbmVudHMvdXNlci1mb3JtLWZpZWxkL3VzZXItZm9ybS1maWVsZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGVhdmVsYW5kcHJpY2Uvbmd4LWxpYi9hY3RpdmUtZGlyZWN0b3J5L21hdGVyaWFsL3NyYy9jb21wb25lbnRzL3VzZXItZm9ybS1maWVsZC91c2VyLWZvcm0tZmllbGQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6RSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDckQsT0FBTyxFQUFFLFFBQVEsRUFBRSxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFcEMsT0FBTyxFQUFFLHNCQUFzQixFQUFxQixNQUFNLDJDQUEyQyxDQUFDO0FBQ3RHLE9BQU8sRUFBYSxpQkFBaUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBRW5GLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUVoRSxPQUFPLEVBQUUsU0FBUyxFQUFFLGFBQWEsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDakQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ25ELE9BQU8sRUFBRSxjQUFjLEVBQUUs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LDJJQUNQLGFBQWEsNkZBQ2IsUUFBUSxpVUFDUixjQUFjOzsyRkFLTCxzQkFBc0I7a0JBZGxDLFNBQVM7K0JBQ0UsZUFBZSxjQUNiLElBQUksV0FDUDt3QkFDUCxTQUFTO3dCQUNULFlBQVk7d0JBQ1osT0FBTzt3QkFDUCxhQUFhO3dCQUNiLFFBQVE7d0JBQ1IsY0FBYztxQkFDZiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgaW5qZWN0LCBpbnB1dCwgT25Jbml0LCBvdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdERpYWxvZyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5pbXBvcnQgeyBmb3JrSm9pbiwgb2YgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgQWN0aXZlRGlyZWN0b3J5U2VydmljZSwgVXNlciwgVXNlck9yR3JvdXAgfSBmcm9tICdAY2xlYXZlbGFuZHByaWNlL25neC1saWIvYWN0aXZlLWRpcmVjdG9yeSc7XG5pbXBvcnQgeyBQaG90b0l0ZW0sIFNoYXJlUG9pbnRTZXJ2aWNlIH0gZnJvbSAnQGNsZWF2ZWxhbmRwcmljZS9uZ3gtbGliL3NoYXJlcG9pbnQnO1xuXG5pbXBvcnQgeyBVc2VyQ2hvb3NlckRhdGEgfSBmcm9tICcuLi8uLi9tb2RlbC91c2VyLWNob29zZXItZGF0YSc7XG5cbmltcG9ydCB7IE1hdEJ1dHRvbiwgTWF0SWNvbkJ1dHRvbiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XG5pbXBvcnQgeyBNYXRGb3JtRmllbGQgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkJztcbmltcG9ydCB7IE1hdEljb24gfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IE1hdElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xuaW1wb3J0IHsgTWF0UHJvZ3Jlc3NCYXIgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9wcm9ncmVzcy1iYXInO1xuaW1wb3J0IHsgVXNlckNob29zZXJDb21wb25lbnQgfSBmcm9tICcuLi91c2VyLWNob29zZXIvdXNlci1jaG9vc2VyLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2NwLXVzZXItZmllbGQnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgTWF0QnV0dG9uLFxuICAgIE1hdEZvcm1GaWVsZCxcbiAgICBNYXRJY29uLFxuICAgIE1hdEljb25CdXR0b24sXG4gICAgTWF0SW5wdXQsXG4gICAgTWF0UHJvZ3Jlc3NCYXIsXG4gIF0sXG4gIHRlbXBsYXRlVXJsOiAnLi91c2VyLWZvcm0tZmllbGQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vdXNlci1mb3JtLWZpZWxkLmNvbXBvbmVudC5zY3NzJ1xufSlcbmV4cG9ydCBjbGFzcyBVc2VyRm9ybUZpZWxkQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgLy8jcmVnaW9uIEZpZWxkc1xuICAjc2VydmljZXMgPSB7XG4gICAgZGlhbG9nOiBpbmplY3QoTWF0RGlhbG9nKSxcbiAgICBhY3RpdmVEaXJlY3Rvcnk6IGluamVjdChBY3RpdmVEaXJlY3RvcnlTZXJ2aWNlKSxcbiAgICBzaGFyZVBvaW50OiBpbmplY3QoU2hhcmVQb2ludFNlcnZpY2UpXG4gIH07XG4gIHVzZXJzU2VsZWN0ZWQgPSBvdXRwdXQ8c3RyaW5nIHwgc3RyaW5nW10+KCk7IC8vIHN0cmluZyBmb3IgU2luZ2xlIG1vZGUsIHN0cmluZ1tdIGZvciBtdWx0aVxuICB1c2VyVW5TZWxlY3RlZCA9IG91dHB1dDxzdHJpbmc+KCk7XG4gIHBsYWNlaG9sZGVyID0gaW5wdXQoJ1NlbGVjdCBVc2VyKHMpJyk7XG4gIGNsaWNrYWJsZSA9IGlucHV0KHRydWUpO1xuICB1c2VyQ2hvb3NlckRhdGEgPSBpbnB1dC5yZXF1aXJlZDxVc2VyQ2hvb3NlckRhdGE+KCk7XG4gIF91c2VyQ2hvb3NlckRhdGEhOiBVc2VyQ2hvb3NlckRhdGE7XG5cbiAgYWNjb3VudE5hbWVzOiBzdHJpbmdbXSA9IFtdO1xuXG4gIHVzZXJzPzogVXNlcltdO1xuICBncm91cHM/OiBVc2VyT3JHcm91cFtdO1xuICBwaG90b3M/OiBQaG90b0l0ZW1bXTtcbiAgLy8jZW5kcmVnaW9uXG5cbiAgLy8jcmVnaW9uIFByb3BlcnRpZXNcbiAgLypnZXQgaXNFZGdlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB3aW5kb3cubmF2aWdhdG9yLnVzZXJBZ2VudC5pbmRleE9mKCdFZGdlJykgPiAtMTtcbiAgfSovXG4gIC8vI2VuZHJlZ2lvblxuICBcbiAgLy8jcmVnaW9uIExpZmVjeWNsZVxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLl91c2VyQ2hvb3NlckRhdGEgPSB7XG4gICAgICAuLi5uZXcgVXNlckNob29zZXJEYXRhKCksXG4gICAgICAuLi50aGlzLnVzZXJDaG9vc2VyRGF0YSgpXG4gICAgfVxuXG4gICAgLy8gSWYgdXNlcnMgaGF2ZSBiZWVuIHByZS1zZWxlY3RlZCBpbiB0aGUgY29uZmlnLCBzdG9yZSB0aG9zZSBpbiBhY2NvdW50TmFtZXMsIHdoaWNoIGRyaXZlcyB0aGUgVUkgb2YgdGhpcyBjb21wb25lbnRcbiAgICB0aGlzLmFjY291bnROYW1lcyA9IHRoaXMuX3VzZXJDaG9vc2VyRGF0YS5wcmVTZWxlY3Rpb25zLmFjY291bnROYW1lcztcblxuICAgIHRoaXMuI2dldERhdGEoKTtcbiAgfVxuICAvLyNlbmRyZWdpb25cblxuICAvLyNyZWdpb24gRXZlbnRzXG4gIHNlbGVjdFVzZXIoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmNsaWNrYWJsZSgpKSB7IHJldHVybjsgfVxuXG4gICAgY29uc3QgZGF0YTogVXNlckNob29zZXJEYXRhID0ge1xuICAgICAgLi4udGhpcy5fdXNlckNob29zZXJEYXRhLFxuXG4gICAgICB1c2VyczogdGhpcy51c2VycyxcbiAgICAgIHBob3RvczogdGhpcy5waG90b3MsXG4gICAgfTtcblxuICAgIHRoaXMuI3NlcnZpY2VzLmRpYWxvZy5vcGVuKFVzZXJDaG9vc2VyQ29tcG9uZW50LCB7XG4gICAgICBkYXRhOiBkYXRhXG4gICAgfSlcbiAgICAuYWZ0ZXJDbG9zZWQoKVxuICAgIC5zdWJzY3JpYmUoKHNlbGVjdGVkOiBzdHJpbmcgfCBzdHJpbmdbXSkgPT4ge1xuICAgICAgaWYgKCFzZWxlY3RlZCkgeyByZXR1cm47IH1cbiAgICAgIFxuICAgICAgdGhpcy5hY2NvdW50TmFtZXMgPSBBcnJheS5pc0FycmF5KHNlbGVjdGVkKSA/XG4gICAgICAgIHNlbGVjdGVkIDpcbiAgICAgICAgWyBzZWxlY3RlZCBdO1xuXG4gICAgICAvLyBPdmVyd3JpdGUgd2hhdCBtYXkgaGF2ZSBiZWVuIHBhc3NlZCBpbiwgZm9yIHN1YnNlcXVlbnQgbGF1bmNoZXMgb2YgVXNlckNob29zZXJDb21wb25lbnQgLSBvdGhlcndpc2UgaXQganVzdCBrZWVwcyBnZXR0aW5nIGZlZCBzdGFsZSBkYXRhXG4gICAgICB0aGlzLl91c2VyQ2hvb3NlckRhdGEucHJlU2VsZWN0aW9ucy5hY2NvdW50TmFtZXMgPSB0aGlzLmFjY291bnROYW1lcztcblxuICAgICAgdGhpcy51c2Vyc1NlbGVjdGVkLmVtaXQoc2VsZWN0ZWQpO1xuICAgIH0pO1xuICB9XG5cbiAgdW5TZWxlY3RVc2VyKGFjY291bnROYW1lOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBjb25zdCBpbmRleCA9IHRoaXMuYWNjb3VudE5hbWVzLmZpbmRJbmRleChhID0+IGEgPT09IGFjY291bnROYW1lKTtcbiAgICB0aGlzLmFjY291bnROYW1lcy5zcGxpY2UoaW5kZXgsIDEpO1xuXG4gICAgdGhpcy5fdXNlckNob29zZXJEYXRhLnByZVNlbGVjdGlvbnMuYWNjb3VudE5hbWVzID0gdGhpcy5hY2NvdW50TmFtZXM7XG5cbiAgICB0aGlzLnVzZXJVblNlbGVjdGVkLmVtaXQoYWNjb3VudE5hbWUpO1xuICB9XG4gIC8vI2VuZHJlZ2lvblxuXG4gIC8vI3JlZ2lvbiBVdGlsaXRpZXNcbiAgI2dldERhdGEoKTogdm9pZCB7XG4gICAgZm9ya0pvaW4oW1xuICAgICAgdGhpcy5fdXNlckNob29zZXJEYXRhIS51c2VycyA/XG4gICAgICAgIC8vIFVzZXJzIHdlcmUgcGFzc2VkIGluXG4gICAgICAgIG9mKHRoaXMuX3VzZXJDaG9vc2VyRGF0YSEudXNlcnMpIDpcbiAgICAgICAgLy8gVXNlcnMgbmVlZCB0byBiZSByZXRyaWV2ZWRcbiAgICAgICAgdGhpcy4jc2VydmljZXMuYWN0aXZlRGlyZWN0b3J5LmdldFVzZXJzKGZhbHNlLCB0aGlzLl91c2VyQ2hvb3NlckRhdGEhLmluY2x1ZGVEaXNhYmxlZFVzZXJzLCB0aGlzLl91c2VyQ2hvb3NlckRhdGEhLnBhcmVudE91KSxcblxuICAgICAgdGhpcy5fdXNlckNob29zZXJEYXRhIS5ncm91cHMgP1xuICAgICAgICAvLyBHcm91cHMgd2VyZSBwYXNzZWQgaW5cbiAgICAgICAgb2YodGhpcy5fdXNlckNob29zZXJEYXRhIS5ncm91cHMpIDpcbiAgICAgICAgLy8gR3JvdXBzIG5lZWQgdG8gYmUgcmV0cmlldmVkXG4gICAgICAgIHRoaXMuI3NlcnZpY2VzLmFjdGl2ZURpcmVjdG9yeS5nZXRHcm91cHModGhpcy5fdXNlckNob29zZXJEYXRhIS5wYXJlbnRPdSksXG5cbiAgICAgIHRoaXMuX3VzZXJDaG9vc2VyRGF0YSEucGhvdG9zID9cbiAgICAgICAgLy8gUGhvdG9zIHdlcmUgcGFzc2VkIGluXG4gICAgICAgIG9mKHRoaXMuX3VzZXJDaG9vc2VyRGF0YSEucGhvdG9zKSA6XG4gICAgICAgIC8vIFBob3RvcyBuZWVkIHRvIGJlIHJldHJpZXZlZFxuICAgICAgICB0aGlzLiNzZXJ2aWNlcy5zaGFyZVBvaW50LmdldFBob3RvcygpXG4gICAgXSlcbiAgICAgIC5zdWJzY3JpYmUoKFt1c2VycywgZ3JvdXBzLCBwaG90b3NdKSA9PiB7XG4gICAgICAgIHRoaXMudXNlcnMgPSB1c2VycztcbiAgICAgICAgdGhpcy5ncm91cHMgPSBncm91cHM7XG4gICAgICAgIHRoaXMucGhvdG9zID0gcGhvdG9zO1xuICAgICAgfSk7XG4gIH1cblxuICBnZXRVc2VyKGFjY291bnROYW1lOiBzdHJpbmcpOiBVc2VyIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy51c2Vycz8uZmluZCh1ID0+IHUuc0FNQWNjb3VudE5hbWUudG9Mb3dlckNhc2UoKSA9PT0gYWNjb3VudE5hbWUudG9Mb3dlckNhc2UoKSk7XG4gIH1cblxuICBnZXRHcm91cChhY2NvdW50TmFtZTogc3RyaW5nKTogVXNlck9yR3JvdXAgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLmdyb3Vwcz8uZmluZChnID0+IGcuc0FNQWNjb3VudE5hbWUudG9Mb3dlckNhc2UoKSA9PT0gYWNjb3VudE5hbWUudG9Mb3dlckNhc2UoKSk7XG4gIH1cblxuICBnZXRQaG90byhhY2NvdW50TmFtZTogc3RyaW5nKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICBjb25zdCB1c2VyID0gdGhpcy5nZXRVc2VyKGFjY291bnROYW1lKTtcbiAgICBpZiAoIXVzZXIpIHsgcmV0dXJuIHVuZGVmaW5lZDsgfVxuXG4gICAgcmV0dXJuIHRoaXMucGhvdG9zPy5maW5kKHAgPT5cbiAgICAgIChwLmVtcGxveWVlTnVtYmVyICYmIHAuZW1wbG95ZWVOdW1iZXIudG9TdHJpbmcoKSA9PT0gdXNlci5lbXBsb3llZU51bWJlcikgfHxcbiAgICAgIHAuYWNjb3VudE5hbWU/LnRvTG93ZXJDYXNlKCkgPT09IHVzZXIuc0FNQWNjb3VudE5hbWUudG9Mb3dlckNhc2UoKSB8fFxuICAgICAgcC5kaXNwbGF5TmFtZT8udG9Mb3dlckNhc2UoKSA9PT0gdXNlci5kaXNwbGF5TmFtZS50b0xvd2VyQ2FzZSgpIHx8XG4gICAgICBwLnRpdGxlPy50b0xvd2VyQ2FzZSgpID09PSB1c2VyLmRpc3BsYXlOYW1lLnRvTG93ZXJDYXNlKClcbiAgICApPy5lbmNvZGVkQWJzVXJsO1xuICB9XG4gIC8vI2VuZHJlZ2lvblxufSIsIlxuPCEtLSBJbiBNaWNyb3NvZnQgRWRnZSwgc2VsZWN0VXNlcigpIG5ldmVyIGdldHMgY2FsbGVkIGlmIHRoZSBpbnB1dCBmaWVsZHMgYXJlIGRpc2FibGVkXG5Tby4uLiBJJ20gZHluYW1pY2FsbHkgc2V0dGluZyB0aGUgZGlzYWJsZWQgcHJvcGVydHkgYmFzZWQgb24gd2hldGhlciBvciBub3QgdGhlIGJyb3dzZXIgaXMgRWRnZS5cbkl0J3MgZGVmaW5pdGVseSBhIGJldHRlciBleHBlcmllbmNlIGlmIHRoZSBmaWVsZCBJUyBkaXNhYmxlZC5cbk90aGVyd2lzZSwgaXQncyBjb25mdXNpbmcgLSBlc3BlY2lhbGx5IGJlY2F1c2UgRWRnZSBpcyBTTyBTTE9XIHRvIGRpc3BsYXkgdGhlIHJlc3VsdGluZyBkaWFsb2cgd2luZG93LlxuLS0+XG48IS0tIFVwZGF0ZSA4LzI0LzIwMjM6XG5UaGUgYWJvdmUgcHJvYmxlbSBhbHNvIGV4aXN0cyBpbiBDaHJvbWUgbm93LlxuU28gaW5zdGVhZCBvZiBkeW5hbWljYWxseSBzZXR0aW5nIFtkaXNhYmxlZF0gYmFzZWQgb24gYnJvd3NlciB0eXBlLFxuSSdtIGFwcGx5aW5nIENTUyB0byBzdXBwcmVzcyBtb3VzZSBldmVudHMgb24gdGhlIGlucHV0IC0gdGh1cyBtYWtpbmcgaXQgYnViYmxlIHVwIHRvIHRoZSBwYXJlbnQgY29udHJvbCwgd2hpY2ggcmVzcG9uZHMgdGhlIHdheSB3ZSB3YW50L1xuLS0+XG5cbkBpZiAodXNlcnMgJiYgcGhvdG9zKSB7XG4gIDxkaXYgKGNsaWNrKT1cInNlbGVjdFVzZXIoKVwiIFtjbGFzcy5jbGlja2FibGVdPVwiY2xpY2thYmxlKClcIj5cbiAgICBAaWYgKGFjY291bnROYW1lcy5sZW5ndGgpIHtcbiAgICAgIDxkaXZcbiAgICAgICAgW2NsYXNzLmdyaWRdPVwiYWNjb3VudE5hbWVzLmxlbmd0aCA+IDFcIlxuICAgICAgICBbY2xhc3MudGhyZWVdPVwiYWNjb3VudE5hbWVzLmxlbmd0aCA+IDJcIlxuICAgICAgICBbY2xhc3MuZm91cl09XCJhY2NvdW50TmFtZXMubGVuZ3RoID4gM1wiXG4gICAgICAgIFtjbGFzcy5maXZlXT1cImFjY291bnROYW1lcy5sZW5ndGggPiA0XCI+XG4gICAgICAgIEBmb3IgKGFjY291bnROYW1lIG9mIGFjY291bnROYW1lczsgdHJhY2sgYWNjb3VudE5hbWU7IGxldCBpID0gJGluZGV4KSB7XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInVzZXJcIj5cbiAgICAgICAgICAgIDwhLS08aW1nICpuZ0lmPVwiYWNjb3VudE5hbWUgJiYgZW1wVXRpbHMuZ2V0RW1wbG95ZWUoYWNjb3VudE5hbWUpXCIgYWx0PVwiXCIgW3NyY109XCJlbXBVdGlscy5nZXRFbXBsb3llZShhY2NvdW50TmFtZSkgfCBlbXBsb3llZVBob3RvVXJsOmNhY2hlU2VydmljZS5waG90b3NcIj4tLT5cbiAgICAgICAgICAgIEBpZiAoZ2V0UGhvdG8oYWNjb3VudE5hbWUpKSB7XG4gICAgICAgICAgICAgIDxpbWcgbWF0TGlzdEl0ZW1BdmF0YXIgYWx0PVwiXCIgW3NyY109XCJnZXRQaG90byhhY2NvdW50TmFtZSlcIj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBpZiAoZ2V0R3JvdXAoYWNjb3VudE5hbWUpKSB7XG4gICAgICAgICAgICAgIDxtYXQtaWNvbj5ncm91cDwvbWF0LWljb24+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICA8bWF0LWZvcm0tZmllbGQ+XG4gICAgICAgICAgICAgIDwhLS0gW2Rpc2FibGVkXT1cIiFpc0VkZ2VcIiAtLT5cbiAgICAgICAgICAgICAgPGlucHV0IG1hdElucHV0IGRpc2FibGVkIFtwbGFjZWhvbGRlcl09XCJpID09PSAwID8gcGxhY2Vob2xkZXIoKSA6ICcnXCJcbiAgICAgICAgICAgICAgICBbdmFsdWVdPVwiZ2V0VXNlcihhY2NvdW50TmFtZSkgPyBnZXRVc2VyKGFjY291bnROYW1lKT8uZGlzcGxheU5hbWUgOiBnZXRHcm91cChhY2NvdW50TmFtZSkgPyBnZXRHcm91cChhY2NvdW50TmFtZSk/LmRpc3BsYXlOYW1lIDogYWNjb3VudE5hbWVcIj5cbiAgICAgICAgICAgICAgPGJ1dHRvbiBtYXRTdWZmaXggbWF0LWljb24tYnV0dG9uIGFyaWEtbGFiZWw9XCJDbGVhclwiIChjbGljayk9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7IHVuU2VsZWN0VXNlcihhY2NvdW50TmFtZSlcIj5cbiAgICAgICAgICAgICAgICA8bWF0LWljb24gZm9udEljb249XCJjbG9zZVwiLz5cbiAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICB9XG4gICAgICA8L2Rpdj5cbiAgICB9IEBlbHNlIHtcbiAgICAgIDxtYXQtZm9ybS1maWVsZD5cbiAgICAgICAgPGlucHV0IG1hdElucHV0IGRpc2FibGVkIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlcigpXCI+IDwhLS0gW2Rpc2FibGVkXT1cIiFpc0VkZ2VcIiAtLT5cbiAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgfVxuICA8L2Rpdj5cbn0gQGVsc2Uge1xuICA8bWF0LXByb2dyZXNzLWJhciBtb2RlPVwiaW5kZXRlcm1pbmF0ZVwiLz5cbn0iXX0=
136
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1mb3JtLWZpZWxkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsZWF2ZWxhbmRwcmljZS9uZ3gtbGliL2FjdGl2ZS1kaXJlY3RvcnkvbWF0ZXJpYWwvc3JjL2NvbXBvbmVudHMvdXNlci1mb3JtLWZpZWxkL3VzZXItZm9ybS1maWVsZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGVhdmVsYW5kcHJpY2Uvbmd4LWxpYi9hY3RpdmUtZGlyZWN0b3J5L21hdGVyaWFsL3NyYy9jb21wb25lbnRzL3VzZXItZm9ybS1maWVsZC91c2VyLWZvcm0tZmllbGQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6RSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDckQsT0FBTyxFQUFFLFFBQVEsRUFBRSxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFcEMsT0FBTyxFQUFFLHNCQUFzQixFQUFxQixNQUFNLDJDQUEyQyxDQUFDO0FBQ3RHLE9BQU8sRUFBYSxpQkFBaUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBRW5GLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUVoRSxPQUFPLEVBQUUsU0FBUyxFQUFFLGFBQWEsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDakQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ25ELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNoRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQzs7QUFnQjlFLE1BQU0sT0FBTyxzQkFBc0I7SUFkbkM7UUFlRSxnQkFBZ0I7UUFDaEIsY0FBUyxHQUFHO1lBQ1YsTUFBTSxFQUFFLE1BQU0sQ0FBQyxTQUFTLENBQUM7WUFDekIsZUFBZSxFQUFFLE1BQU0sQ0FBQyxzQkFBc0IsQ0FBQztZQUMvQyxVQUFVLEVBQUUsTUFBTSxDQUFDLGlCQUFpQixDQUFDO1NBQ3RDLENBQUM7UUFDRixrQkFBYSxHQUFHLE1BQU0sRUFBcUIsQ0FBQyxDQUFDLDZDQUE2QztRQUMxRixtQkFBYyxHQUFHLE1BQU0sRUFBVSxDQUFDO1FBQ2xDLGdCQUFXLEdBQUcsS0FBSyxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDdEMsY0FBUyxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN4QixvQkFBZSxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQW1CLENBQUM7UUFHcEQsaUJBQVksR0FBYSxFQUFFLENBQUM7S0FrSDdCO0lBL0hDLGdCQUFnQjtJQUNoQixTQUFTLENBSVA7SUFhRixZQUFZO0lBRVosb0JBQW9CO0lBQ3BCOztPQUVHO0lBQ0gsWUFBWTtJQUVaLG1CQUFtQjtJQUNuQixRQUFRO1FBQ04sSUFBSSxDQUFDLGdCQUFnQixHQUFHO1lBQ3RCLEdBQUcsSUFBSSxlQUFlLEVBQUU7WUFDeEIsR0FBRyxJQUFJLENBQUMsZUFBZSxFQUFFO1NBQzFCLENBQUE7UUFFRCxvSEFBb0g7UUFDcEgsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsYUFBYSxDQUFDLFlBQVksQ0FBQztRQUVyRSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDbEIsQ0FBQztJQUNELFlBQVk7SUFFWixnQkFBZ0I7SUFDaEIsVUFBVTtRQUNSLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLEVBQUUsQ0FBQztZQUFDLE9BQU87UUFBQyxDQUFDO1FBRWxDLE1BQU0sSUFBSSxHQUFvQjtZQUM1QixHQUFHLElBQUksQ0FBQyxnQkFBZ0I7WUFFeEIsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLO1lBQ2pCLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTTtTQUNwQixDQUFDO1FBRUYsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLG9CQUFvQixFQUFFO1lBQy9DLElBQUksRUFBRSxJQUFJO1NBQ1gsQ0FBQzthQUNELFdBQVcsRUFBRTthQUNiLFNBQVMsQ0FBQyxDQUFDLFFBQTJCLEVBQUUsRUFBRTtZQUN6QyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQUMsT0FBTztZQUFDLENBQUM7WUFFMUIsSUFBSSxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7Z0JBQzNDLFFBQVEsQ0FBQyxDQUFDO2dCQUNWLENBQUUsUUFBUSxDQUFFLENBQUM7WUFFZiwySUFBMkk7WUFDM0ksSUFBSSxDQUFDLGdCQUFnQixDQUFDLGFBQWEsQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQztZQUVyRSxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNwQyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxZQUFZLENBQUMsV0FBbUI7UUFDOUIsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssV0FBVyxDQUFDLENBQUM7UUFDbEUsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBRW5DLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUM7UUFFckUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDeEMsQ0FBQztJQUNELFlBQVk7SUFFWixtQkFBbUI7SUFDbkIsUUFBUTtRQUNOLFFBQVEsQ0FBQztZQUNQLElBQUksQ0FBQyxnQkFBaUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDNUIsdUJBQXVCO2dCQUN2QixFQUFFLENBQUMsSUFBSSxDQUFDLGdCQUFpQixDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7Z0JBQ2xDLDZCQUE2QjtnQkFDN0IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsZ0JBQWlCLENBQUMsb0JBQW9CLEVBQUUsSUFBSSxDQUFDLGdCQUFpQixDQUFDLFFBQVEsQ0FBQztZQUU5SCxJQUFJLENBQUMsZ0JBQWlCLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBQzdCLHdCQUF3QjtnQkFDeEIsRUFBRSxDQUFDLElBQUksQ0FBQyxnQkFBaUIsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO2dCQUNuQyw4QkFBOEI7Z0JBQzlCLElBQUksQ0FBQyxTQUFTLENBQUMsZUFBZSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsZ0JBQWlCLENBQUMsUUFBUSxDQUFDO1lBRTNFLElBQUksQ0FBQyxnQkFBaUIsQ0FBQyxNQUFNLENBQUMsQ0FBQztnQkFDN0Isd0JBQXdCO2dCQUN4QixFQUFFLENBQUMsSUFBSSxDQUFDLGdCQUFpQixDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7Z0JBQ25DLDhCQUE4QjtnQkFDOUIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsU0FBUyxFQUFFO1NBQ3hDLENBQUM7YUFDQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxDQUFDLEVBQUUsRUFBRTtZQUNyQyxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztZQUNuQixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztZQUNyQixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUN2QixDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxPQUFPLENBQUMsV0FBbUI7UUFDekIsT0FBTyxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUMsV0FBVyxFQUFFLEtBQUssV0FBVyxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7SUFDN0YsQ0FBQztJQUVELFFBQVEsQ0FBQyxXQUFtQjtRQUMxQixPQUFPLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxXQUFXLEVBQUUsS0FBSyxXQUFXLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztJQUM5RixDQUFDO0lBRUQsUUFBUSxDQUFDLFdBQW1CO1FBQzFCLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDdkMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1lBQUMsT0FBTyxTQUFTLENBQUM7UUFBQyxDQUFDO1FBRWhDLE9BQU8sSUFBSSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FDM0IsQ0FBQyxDQUFDLENBQUMsY0FBYyxJQUFJLENBQUMsQ0FBQyxjQUFjLENBQUMsUUFBUSxFQUFFLEtBQUssSUFBSSxDQUFDLGNBQWMsQ0FBQztZQUN6RSxDQUFDLENBQUMsV0FBVyxFQUFFLFdBQVcsRUFBRSxLQUFLLElBQUksQ0FBQyxjQUFjLENBQUMsV0FBVyxFQUFFO1lBQ2xFLENBQUMsQ0FBQyxXQUFXLEVBQUUsV0FBVyxFQUFFLEtBQUssSUFBSSxDQUFDLFdBQVcsQ0FBQyxXQUFXLEVBQUU7WUFDL0QsQ0FBQyxDQUFDLEtBQUssRUFBRSxXQUFXLEVBQUUsS0FBSyxJQUFJLENBQUMsV0FBVyxDQUFDLFdBQVcsRUFBRSxDQUMxRCxFQUFFLGFBQWEsQ0FBQztJQUNuQixDQUFDOzhHQTlIVSxzQkFBc0I7a0dBQXRCLHNCQUFzQix1a0JDOUJuQyx5ekVBZ0RDLDRoQkQzQkcsWUFBWSw0TEFDWixPQUFPLDJJQUNQLGFBQWEsNkZBQ2IsUUFBUSxpVUFDUixjQUFjOzsyRkFLTCxzQkFBc0I7a0JBZGxDLFNBQVM7K0JBQ0UsZUFBZSxjQUNiLElBQUksV0FDUDt3QkFDUCxTQUFTO3dCQUNULFlBQVk7d0JBQ1osT0FBTzt3QkFDUCxhQUFhO3dCQUNiLFFBQVE7d0JBQ1IsY0FBYztxQkFDZiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgaW5qZWN0LCBpbnB1dCwgT25Jbml0LCBvdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdERpYWxvZyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5pbXBvcnQgeyBmb3JrSm9pbiwgb2YgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgQWN0aXZlRGlyZWN0b3J5U2VydmljZSwgVXNlciwgVXNlck9yR3JvdXAgfSBmcm9tICdAY2xlYXZlbGFuZHByaWNlL25neC1saWIvYWN0aXZlLWRpcmVjdG9yeSc7XG5pbXBvcnQgeyBQaG90b0l0ZW0sIFNoYXJlUG9pbnRTZXJ2aWNlIH0gZnJvbSAnQGNsZWF2ZWxhbmRwcmljZS9uZ3gtbGliL3NoYXJlcG9pbnQnO1xuXG5pbXBvcnQgeyBVc2VyQ2hvb3NlckRhdGEgfSBmcm9tICcuLi8uLi9tb2RlbC91c2VyLWNob29zZXItZGF0YSc7XG5cbmltcG9ydCB7IE1hdEJ1dHRvbiwgTWF0SWNvbkJ1dHRvbiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XG5pbXBvcnQgeyBNYXRGb3JtRmllbGQgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkJztcbmltcG9ydCB7IE1hdEljb24gfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IE1hdElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xuaW1wb3J0IHsgTWF0UHJvZ3Jlc3NCYXIgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9wcm9ncmVzcy1iYXInO1xuaW1wb3J0IHsgVXNlckNob29zZXJDb21wb25lbnQgfSBmcm9tICcuLi91c2VyLWNob29zZXIvdXNlci1jaG9vc2VyLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2NwLXVzZXItZmllbGQnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgTWF0QnV0dG9uLFxuICAgIE1hdEZvcm1GaWVsZCxcbiAgICBNYXRJY29uLFxuICAgIE1hdEljb25CdXR0b24sXG4gICAgTWF0SW5wdXQsXG4gICAgTWF0UHJvZ3Jlc3NCYXIsXG4gIF0sXG4gIHRlbXBsYXRlVXJsOiAnLi91c2VyLWZvcm0tZmllbGQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vdXNlci1mb3JtLWZpZWxkLmNvbXBvbmVudC5zY3NzJ1xufSlcbmV4cG9ydCBjbGFzcyBVc2VyRm9ybUZpZWxkQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgLy8jcmVnaW9uIEZpZWxkc1xuICAjc2VydmljZXMgPSB7XG4gICAgZGlhbG9nOiBpbmplY3QoTWF0RGlhbG9nKSxcbiAgICBhY3RpdmVEaXJlY3Rvcnk6IGluamVjdChBY3RpdmVEaXJlY3RvcnlTZXJ2aWNlKSxcbiAgICBzaGFyZVBvaW50OiBpbmplY3QoU2hhcmVQb2ludFNlcnZpY2UpXG4gIH07XG4gIHVzZXJzU2VsZWN0ZWQgPSBvdXRwdXQ8c3RyaW5nIHwgc3RyaW5nW10+KCk7IC8vIHN0cmluZyBmb3IgU2luZ2xlIG1vZGUsIHN0cmluZ1tdIGZvciBtdWx0aVxuICB1c2VyVW5TZWxlY3RlZCA9IG91dHB1dDxzdHJpbmc+KCk7XG4gIHBsYWNlaG9sZGVyID0gaW5wdXQoJ1NlbGVjdCBVc2VyKHMpJyk7XG4gIGNsaWNrYWJsZSA9IGlucHV0KHRydWUpO1xuICB1c2VyQ2hvb3NlckRhdGEgPSBpbnB1dC5yZXF1aXJlZDxVc2VyQ2hvb3NlckRhdGE+KCk7XG4gIF91c2VyQ2hvb3NlckRhdGEhOiBVc2VyQ2hvb3NlckRhdGE7XG5cbiAgYWNjb3VudE5hbWVzOiBzdHJpbmdbXSA9IFtdO1xuXG4gIHVzZXJzPzogVXNlcltdO1xuICBncm91cHM/OiBVc2VyT3JHcm91cFtdO1xuICBwaG90b3M/OiBQaG90b0l0ZW1bXTtcbiAgLy8jZW5kcmVnaW9uXG5cbiAgLy8jcmVnaW9uIFByb3BlcnRpZXNcbiAgLypnZXQgaXNFZGdlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB3aW5kb3cubmF2aWdhdG9yLnVzZXJBZ2VudC5pbmRleE9mKCdFZGdlJykgPiAtMTtcbiAgfSovXG4gIC8vI2VuZHJlZ2lvblxuICBcbiAgLy8jcmVnaW9uIExpZmVjeWNsZVxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLl91c2VyQ2hvb3NlckRhdGEgPSB7XG4gICAgICAuLi5uZXcgVXNlckNob29zZXJEYXRhKCksXG4gICAgICAuLi50aGlzLnVzZXJDaG9vc2VyRGF0YSgpXG4gICAgfVxuXG4gICAgLy8gSWYgdXNlcnMgaGF2ZSBiZWVuIHByZS1zZWxlY3RlZCBpbiB0aGUgY29uZmlnLCBzdG9yZSB0aG9zZSBpbiBhY2NvdW50TmFtZXMsIHdoaWNoIGRyaXZlcyB0aGUgVUkgb2YgdGhpcyBjb21wb25lbnRcbiAgICB0aGlzLmFjY291bnROYW1lcyA9IHRoaXMuX3VzZXJDaG9vc2VyRGF0YS5wcmVTZWxlY3Rpb25zLmFjY291bnROYW1lcztcblxuICAgIHRoaXMuI2dldERhdGEoKTtcbiAgfVxuICAvLyNlbmRyZWdpb25cblxuICAvLyNyZWdpb24gRXZlbnRzXG4gIHNlbGVjdFVzZXIoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmNsaWNrYWJsZSgpKSB7IHJldHVybjsgfVxuXG4gICAgY29uc3QgZGF0YTogVXNlckNob29zZXJEYXRhID0ge1xuICAgICAgLi4udGhpcy5fdXNlckNob29zZXJEYXRhLFxuXG4gICAgICB1c2VyczogdGhpcy51c2VycyxcbiAgICAgIHBob3RvczogdGhpcy5waG90b3MsXG4gICAgfTtcblxuICAgIHRoaXMuI3NlcnZpY2VzLmRpYWxvZy5vcGVuKFVzZXJDaG9vc2VyQ29tcG9uZW50LCB7XG4gICAgICBkYXRhOiBkYXRhXG4gICAgfSlcbiAgICAuYWZ0ZXJDbG9zZWQoKVxuICAgIC5zdWJzY3JpYmUoKHNlbGVjdGVkOiBzdHJpbmcgfCBzdHJpbmdbXSkgPT4ge1xuICAgICAgaWYgKCFzZWxlY3RlZCkgeyByZXR1cm47IH1cbiAgICAgIFxuICAgICAgdGhpcy5hY2NvdW50TmFtZXMgPSBBcnJheS5pc0FycmF5KHNlbGVjdGVkKSA/XG4gICAgICAgIHNlbGVjdGVkIDpcbiAgICAgICAgWyBzZWxlY3RlZCBdO1xuXG4gICAgICAvLyBPdmVyd3JpdGUgd2hhdCBtYXkgaGF2ZSBiZWVuIHBhc3NlZCBpbiwgZm9yIHN1YnNlcXVlbnQgbGF1bmNoZXMgb2YgVXNlckNob29zZXJDb21wb25lbnQgLSBvdGhlcndpc2UgaXQganVzdCBrZWVwcyBnZXR0aW5nIGZlZCBzdGFsZSBkYXRhXG4gICAgICB0aGlzLl91c2VyQ2hvb3NlckRhdGEucHJlU2VsZWN0aW9ucy5hY2NvdW50TmFtZXMgPSB0aGlzLmFjY291bnROYW1lcztcblxuICAgICAgdGhpcy51c2Vyc1NlbGVjdGVkLmVtaXQoc2VsZWN0ZWQpO1xuICAgIH0pO1xuICB9XG5cbiAgdW5TZWxlY3RVc2VyKGFjY291bnROYW1lOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBjb25zdCBpbmRleCA9IHRoaXMuYWNjb3VudE5hbWVzLmZpbmRJbmRleChhID0+IGEgPT09IGFjY291bnROYW1lKTtcbiAgICB0aGlzLmFjY291bnROYW1lcy5zcGxpY2UoaW5kZXgsIDEpO1xuXG4gICAgdGhpcy5fdXNlckNob29zZXJEYXRhLnByZVNlbGVjdGlvbnMuYWNjb3VudE5hbWVzID0gdGhpcy5hY2NvdW50TmFtZXM7XG5cbiAgICB0aGlzLnVzZXJVblNlbGVjdGVkLmVtaXQoYWNjb3VudE5hbWUpO1xuICB9XG4gIC8vI2VuZHJlZ2lvblxuXG4gIC8vI3JlZ2lvbiBVdGlsaXRpZXNcbiAgI2dldERhdGEoKTogdm9pZCB7XG4gICAgZm9ya0pvaW4oW1xuICAgICAgdGhpcy5fdXNlckNob29zZXJEYXRhIS51c2VycyA/XG4gICAgICAgIC8vIFVzZXJzIHdlcmUgcGFzc2VkIGluXG4gICAgICAgIG9mKHRoaXMuX3VzZXJDaG9vc2VyRGF0YSEudXNlcnMpIDpcbiAgICAgICAgLy8gVXNlcnMgbmVlZCB0byBiZSByZXRyaWV2ZWRcbiAgICAgICAgdGhpcy4jc2VydmljZXMuYWN0aXZlRGlyZWN0b3J5LmdldFVzZXJzKGZhbHNlLCB0aGlzLl91c2VyQ2hvb3NlckRhdGEhLmluY2x1ZGVEaXNhYmxlZFVzZXJzLCB0aGlzLl91c2VyQ2hvb3NlckRhdGEhLnBhcmVudE91KSxcblxuICAgICAgdGhpcy5fdXNlckNob29zZXJEYXRhIS5ncm91cHMgP1xuICAgICAgICAvLyBHcm91cHMgd2VyZSBwYXNzZWQgaW5cbiAgICAgICAgb2YodGhpcy5fdXNlckNob29zZXJEYXRhIS5ncm91cHMpIDpcbiAgICAgICAgLy8gR3JvdXBzIG5lZWQgdG8gYmUgcmV0cmlldmVkXG4gICAgICAgIHRoaXMuI3NlcnZpY2VzLmFjdGl2ZURpcmVjdG9yeS5nZXRHcm91cHModGhpcy5fdXNlckNob29zZXJEYXRhIS5wYXJlbnRPdSksXG5cbiAgICAgIHRoaXMuX3VzZXJDaG9vc2VyRGF0YSEucGhvdG9zID9cbiAgICAgICAgLy8gUGhvdG9zIHdlcmUgcGFzc2VkIGluXG4gICAgICAgIG9mKHRoaXMuX3VzZXJDaG9vc2VyRGF0YSEucGhvdG9zKSA6XG4gICAgICAgIC8vIFBob3RvcyBuZWVkIHRvIGJlIHJldHJpZXZlZFxuICAgICAgICB0aGlzLiNzZXJ2aWNlcy5zaGFyZVBvaW50LmdldFBob3RvcygpXG4gICAgXSlcbiAgICAgIC5zdWJzY3JpYmUoKFt1c2VycywgZ3JvdXBzLCBwaG90b3NdKSA9PiB7XG4gICAgICAgIHRoaXMudXNlcnMgPSB1c2VycztcbiAgICAgICAgdGhpcy5ncm91cHMgPSBncm91cHM7XG4gICAgICAgIHRoaXMucGhvdG9zID0gcGhvdG9zO1xuICAgICAgfSk7XG4gIH1cblxuICBnZXRVc2VyKGFjY291bnROYW1lOiBzdHJpbmcpOiBVc2VyIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy51c2Vycz8uZmluZCh1ID0+IHUuc0FNQWNjb3VudE5hbWUudG9Mb3dlckNhc2UoKSA9PT0gYWNjb3VudE5hbWUudG9Mb3dlckNhc2UoKSk7XG4gIH1cblxuICBnZXRHcm91cChhY2NvdW50TmFtZTogc3RyaW5nKTogVXNlck9yR3JvdXAgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLmdyb3Vwcz8uZmluZChnID0+IGcuc0FNQWNjb3VudE5hbWUudG9Mb3dlckNhc2UoKSA9PT0gYWNjb3VudE5hbWUudG9Mb3dlckNhc2UoKSk7XG4gIH1cblxuICBnZXRQaG90byhhY2NvdW50TmFtZTogc3RyaW5nKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICBjb25zdCB1c2VyID0gdGhpcy5nZXRVc2VyKGFjY291bnROYW1lKTtcbiAgICBpZiAoIXVzZXIpIHsgcmV0dXJuIHVuZGVmaW5lZDsgfVxuXG4gICAgcmV0dXJuIHRoaXMucGhvdG9zPy5maW5kKHAgPT5cbiAgICAgIChwLmVtcGxveWVlTnVtYmVyICYmIHAuZW1wbG95ZWVOdW1iZXIudG9TdHJpbmcoKSA9PT0gdXNlci5lbXBsb3llZU51bWJlcikgfHxcbiAgICAgIHAuYWNjb3VudE5hbWU/LnRvTG93ZXJDYXNlKCkgPT09IHVzZXIuc0FNQWNjb3VudE5hbWUudG9Mb3dlckNhc2UoKSB8fFxuICAgICAgcC5kaXNwbGF5TmFtZT8udG9Mb3dlckNhc2UoKSA9PT0gdXNlci5kaXNwbGF5TmFtZS50b0xvd2VyQ2FzZSgpIHx8XG4gICAgICBwLnRpdGxlPy50b0xvd2VyQ2FzZSgpID09PSB1c2VyLmRpc3BsYXlOYW1lLnRvTG93ZXJDYXNlKClcbiAgICApPy5lbmNvZGVkQWJzVXJsO1xuICB9XG4gIC8vI2VuZHJlZ2lvblxufSIsIlxuPCEtLSBJbiBNaWNyb3NvZnQgRWRnZSwgc2VsZWN0VXNlcigpIG5ldmVyIGdldHMgY2FsbGVkIGlmIHRoZSBpbnB1dCBmaWVsZHMgYXJlIGRpc2FibGVkXG5Tby4uLiBJJ20gZHluYW1pY2FsbHkgc2V0dGluZyB0aGUgZGlzYWJsZWQgcHJvcGVydHkgYmFzZWQgb24gd2hldGhlciBvciBub3QgdGhlIGJyb3dzZXIgaXMgRWRnZS5cbkl0J3MgZGVmaW5pdGVseSBhIGJldHRlciBleHBlcmllbmNlIGlmIHRoZSBmaWVsZCBJUyBkaXNhYmxlZC5cbk90aGVyd2lzZSwgaXQncyBjb25mdXNpbmcgLSBlc3BlY2lhbGx5IGJlY2F1c2UgRWRnZSBpcyBTTyBTTE9XIHRvIGRpc3BsYXkgdGhlIHJlc3VsdGluZyBkaWFsb2cgd2luZG93LlxuLS0+XG48IS0tIFVwZGF0ZSA4LzI0LzIwMjM6XG5UaGUgYWJvdmUgcHJvYmxlbSBhbHNvIGV4aXN0cyBpbiBDaHJvbWUgbm93LlxuU28gaW5zdGVhZCBvZiBkeW5hbWljYWxseSBzZXR0aW5nIFtkaXNhYmxlZF0gYmFzZWQgb24gYnJvd3NlciB0eXBlLFxuSSdtIGFwcGx5aW5nIENTUyB0byBzdXBwcmVzcyBtb3VzZSBldmVudHMgb24gdGhlIGlucHV0IC0gdGh1cyBtYWtpbmcgaXQgYnViYmxlIHVwIHRvIHRoZSBwYXJlbnQgY29udHJvbCwgd2hpY2ggcmVzcG9uZHMgdGhlIHdheSB3ZSB3YW50L1xuLS0+XG5cbkBpZiAodXNlcnMgJiYgcGhvdG9zKSB7XG4gIDxkaXYgKGNsaWNrKT1cInNlbGVjdFVzZXIoKVwiIFtjbGFzcy5jbGlja2FibGVdPVwiY2xpY2thYmxlKClcIj5cbiAgICBAaWYgKGFjY291bnROYW1lcy5sZW5ndGgpIHtcbiAgICAgIDxkaXZcbiAgICAgICAgW2NsYXNzLmdyaWRdPVwiYWNjb3VudE5hbWVzLmxlbmd0aCA+IDFcIlxuICAgICAgICBbY2xhc3MudGhyZWVdPVwiYWNjb3VudE5hbWVzLmxlbmd0aCA+IDJcIlxuICAgICAgICBbY2xhc3MuZm91cl09XCJhY2NvdW50TmFtZXMubGVuZ3RoID4gM1wiXG4gICAgICAgIFtjbGFzcy5maXZlXT1cImFjY291bnROYW1lcy5sZW5ndGggPiA0XCI+XG4gICAgICAgIEBmb3IgKGFjY291bnROYW1lIG9mIGFjY291bnROYW1lczsgdHJhY2sgYWNjb3VudE5hbWU7IGxldCBpID0gJGluZGV4KSB7XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInVzZXJcIj5cbiAgICAgICAgICAgIDwhLS08aW1nICpuZ0lmPVwiYWNjb3VudE5hbWUgJiYgZW1wVXRpbHMuZ2V0RW1wbG95ZWUoYWNjb3VudE5hbWUpXCIgYWx0PVwiXCIgW3NyY109XCJlbXBVdGlscy5nZXRFbXBsb3llZShhY2NvdW50TmFtZSkgfCBlbXBsb3llZVBob3RvVXJsOmNhY2hlU2VydmljZS5waG90b3NcIj4tLT5cbiAgICAgICAgICAgIEBpZiAoZ2V0UGhvdG8oYWNjb3VudE5hbWUpKSB7XG4gICAgICAgICAgICAgIDxpbWcgbWF0TGlzdEl0ZW1BdmF0YXIgYWx0PVwiXCIgW3NyY109XCJnZXRQaG90byhhY2NvdW50TmFtZSlcIj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBpZiAoZ2V0R3JvdXAoYWNjb3VudE5hbWUpKSB7XG4gICAgICAgICAgICAgIDxtYXQtaWNvbj5ncm91cDwvbWF0LWljb24+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICA8bWF0LWZvcm0tZmllbGQ+XG4gICAgICAgICAgICAgIDwhLS0gW2Rpc2FibGVkXT1cIiFpc0VkZ2VcIiAtLT5cbiAgICAgICAgICAgICAgPGlucHV0IG1hdElucHV0IGRpc2FibGVkIFtwbGFjZWhvbGRlcl09XCJpID09PSAwID8gcGxhY2Vob2xkZXIoKSA6ICcnXCJcbiAgICAgICAgICAgICAgICBbdmFsdWVdPVwiZ2V0VXNlcihhY2NvdW50TmFtZSkgPyBnZXRVc2VyKGFjY291bnROYW1lKT8uZGlzcGxheU5hbWUgOiBnZXRHcm91cChhY2NvdW50TmFtZSkgPyBnZXRHcm91cChhY2NvdW50TmFtZSk/LmRpc3BsYXlOYW1lIDogYWNjb3VudE5hbWVcIj5cbiAgICAgICAgICAgICAgPGJ1dHRvbiBtYXRTdWZmaXggbWF0LWljb24tYnV0dG9uIGFyaWEtbGFiZWw9XCJDbGVhclwiIChjbGljayk9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7IHVuU2VsZWN0VXNlcihhY2NvdW50TmFtZSlcIj5cbiAgICAgICAgICAgICAgICA8bWF0LWljb24gZm9udEljb249XCJjbG9zZVwiLz5cbiAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICB9XG4gICAgICA8L2Rpdj5cbiAgICB9IEBlbHNlIHtcbiAgICAgIDxtYXQtZm9ybS1maWVsZD5cbiAgICAgICAgPGlucHV0IG1hdElucHV0IGRpc2FibGVkIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlcigpXCI+IDwhLS0gW2Rpc2FibGVkXT1cIiFpc0VkZ2VcIiAtLT5cbiAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgfVxuICA8L2Rpdj5cbn0gQGVsc2Uge1xuICA8bWF0LXByb2dyZXNzLWJhciBtb2RlPVwiaW5kZXRlcm1pbmF0ZVwiLz5cbn0iXX0=
@@ -17,15 +17,6 @@ import { UserChooserComponent } from './components/user-chooser/user-chooser.com
17
17
  import { UserFormFieldComponent } from './components/user-form-field/user-form-field.component';
18
18
  import * as i0 from "@angular/core";
19
19
  export class MatActiveDirectoryModule {
20
- /*static forRoot(config: ServiceConfig): ModuleWithProviders<GuiModule> {
21
- return {
22
- ngModule: GuiModule,
23
- providers: [
24
- ActiveDirectoryService,
25
- { provide: ServiceConfig, useValue: config }
26
- ]
27
- };
28
- }*/
29
20
  static forRoot(config) {
30
21
  return {
31
22
  ngModule: MatActiveDirectoryModule,
@@ -42,8 +33,8 @@ export class MatActiveDirectoryModule {
42
33
  throw new Error('MatActiveDirectoryModule is already loaded. Import it in the AppModule only');
43
34
  }
44
35
  }
45
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: MatActiveDirectoryModule, deps: [{ token: MatActiveDirectoryModule, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.NgModule }); }
46
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.3", ngImport: i0, type: MatActiveDirectoryModule, imports: [CommonModule,
36
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: MatActiveDirectoryModule, deps: [{ token: MatActiveDirectoryModule, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.NgModule }); }
37
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.5", ngImport: i0, type: MatActiveDirectoryModule, imports: [CommonModule,
47
38
  ReactiveFormsModule,
48
39
  MatButtonModule,
49
40
  MatDialogModule,
@@ -59,7 +50,7 @@ export class MatActiveDirectoryModule {
59
50
  UserChooserComponent,
60
51
  UserFormFieldComponent], exports: [UserChooserComponent,
61
52
  UserFormFieldComponent] }); }
62
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: MatActiveDirectoryModule, imports: [CommonModule,
53
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: MatActiveDirectoryModule, imports: [CommonModule,
63
54
  ReactiveFormsModule,
64
55
  MatButtonModule,
65
56
  MatDialogModule,
@@ -75,7 +66,7 @@ export class MatActiveDirectoryModule {
75
66
  UserChooserComponent,
76
67
  UserFormFieldComponent] }); }
77
68
  }
78
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: MatActiveDirectoryModule, decorators: [{
69
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: MatActiveDirectoryModule, decorators: [{
79
70
  type: NgModule,
80
71
  args: [{
81
72
  declarations: [],
@@ -106,4 +97,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImpor
106
97
  }, {
107
98
  type: SkipSelf
108
99
  }] }] });
109
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0LWFjdGl2ZS1kaXJlY3RvcnkubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xlYXZlbGFuZHByaWNlL25neC1saWIvYWN0aXZlLWRpcmVjdG9yeS9tYXRlcmlhbC9zcmMvbWF0LWFjdGl2ZS1kaXJlY3RvcnkubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQXVCLFFBQVEsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXJELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDdEUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDOUUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDdEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRTdELE9BQU8sRUFBaUMsa0NBQWtDLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUU5SCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUN4RixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSx3REFBd0QsQ0FBQzs7QUE0QmhHLE1BQU0sT0FBTyx3QkFBd0I7SUFDbkM7Ozs7Ozs7O09BUUc7SUFDSCxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQXFDO1FBQ2xELE9BQU87WUFDTCxRQUFRLEVBQUUsd0JBQXdCO1lBQ2xDLFNBQVMsRUFBRTtnQkFDVDtvQkFDRSxPQUFPLEVBQUUsa0NBQWtDO29CQUMzQyxRQUFRLEVBQUUsTUFBTTtpQkFDakI7YUFDRjtTQUNGLENBQUM7SUFDSixDQUFDO0lBRUQsWUFBb0MsWUFBc0M7UUFDeEUsSUFBSSxZQUFZLEVBQUUsQ0FBQztZQUNqQixNQUFNLElBQUksS0FBSyxDQUNiLDZFQUE2RSxDQUFDLENBQUM7UUFDbkYsQ0FBQztJQUNILENBQUM7OEdBM0JVLHdCQUF3QjsrR0FBeEIsd0JBQXdCLFlBdkJqQyxZQUFZO1lBQ1osbUJBQW1CO1lBRW5CLGVBQWU7WUFDZixlQUFlO1lBQ2Ysa0JBQWtCO1lBQ2xCLGFBQWE7WUFDYixjQUFjO1lBQ2QsYUFBYTtZQUNiLG9CQUFvQjtZQUNwQix3QkFBd0I7WUFDeEIsb0JBQW9CO1lBQ3BCLGNBQWM7WUFDZCxnQkFBZ0I7WUFFaEIsb0JBQW9CO1lBQ3BCLHNCQUFzQixhQUd0QixvQkFBb0I7WUFDcEIsc0JBQXNCOytHQUdiLHdCQUF3QixZQXZCakMsWUFBWTtZQUNaLG1CQUFtQjtZQUVuQixlQUFlO1lBQ2YsZUFBZTtZQUNmLGtCQUFrQjtZQUNsQixhQUFhO1lBQ2IsY0FBYztZQUNkLGFBQWE7WUFDYixvQkFBb0I7WUFDcEIsd0JBQXdCO1lBQ3hCLG9CQUFvQjtZQUNwQixjQUFjO1lBQ2QsZ0JBQWdCO1lBRWhCLG9CQUFvQjtZQUNwQixzQkFBc0I7OzJGQU9iLHdCQUF3QjtrQkExQnBDLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLEVBQUU7b0JBQ2hCLE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLG1CQUFtQjt3QkFFbkIsZUFBZTt3QkFDZixlQUFlO3dCQUNmLGtCQUFrQjt3QkFDbEIsYUFBYTt3QkFDYixjQUFjO3dCQUNkLGFBQWE7d0JBQ2Isb0JBQW9CO3dCQUNwQix3QkFBd0I7d0JBQ3hCLG9CQUFvQjt3QkFDcEIsY0FBYzt3QkFDZCxnQkFBZ0I7d0JBRWhCLG9CQUFvQjt3QkFDcEIsc0JBQXNCO3FCQUN2QjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1Asb0JBQW9CO3dCQUNwQixzQkFBc0I7cUJBQ3ZCO2lCQUNGOzswQkF1QmMsUUFBUTs7MEJBQUksUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZSwgT3B0aW9uYWwsIFNraXBTZWxmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHsgTWF0RGlhbG9nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7IE1hdEZvcm1GaWVsZE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGQnO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuaW1wb3J0IHsgTWF0SW5wdXRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pbnB1dCc7XG5pbXBvcnQgeyBNYXRMaXN0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvbGlzdCc7XG5pbXBvcnQgeyBNYXRQcm9ncmVzc0Jhck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Byb2dyZXNzLWJhcic7XG5pbXBvcnQgeyBNYXRQcm9ncmVzc1NwaW5uZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9wcm9ncmVzcy1zcGlubmVyJztcbmltcG9ydCB7IE1hdFNsaWRlVG9nZ2xlTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2xpZGUtdG9nZ2xlJztcbmltcG9ydCB7IE1hdFRhYmxlTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdGFibGUnO1xuaW1wb3J0IHsgTWF0VG9vbHRpcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2x0aXAnO1xuXG5pbXBvcnQgeyBBY3RpdmVEaXJlY3RvcnlTZXJ2aWNlT3B0aW9ucywgQWN0aXZlRGlyZWN0b3J5U2VydmljZU9wdGlvbnNUb2tlbiB9IGZyb20gJ0BjbGVhdmVsYW5kcHJpY2Uvbmd4LWxpYi9hY3RpdmUtZGlyZWN0b3J5JztcblxuaW1wb3J0IHsgVXNlckNob29zZXJDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvdXNlci1jaG9vc2VyL3VzZXItY2hvb3Nlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgVXNlckZvcm1GaWVsZENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy91c2VyLWZvcm0tZmllbGQvdXNlci1mb3JtLWZpZWxkLmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW10sXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcblxuICAgIE1hdEJ1dHRvbk1vZHVsZSxcbiAgICBNYXREaWFsb2dNb2R1bGUsXG4gICAgTWF0Rm9ybUZpZWxkTW9kdWxlLFxuICAgIE1hdEljb25Nb2R1bGUsXG4gICAgTWF0SW5wdXRNb2R1bGUsXG4gICAgTWF0TGlzdE1vZHVsZSxcbiAgICBNYXRQcm9ncmVzc0Jhck1vZHVsZSxcbiAgICBNYXRQcm9ncmVzc1NwaW5uZXJNb2R1bGUsXG4gICAgTWF0U2xpZGVUb2dnbGVNb2R1bGUsXG4gICAgTWF0VGFibGVNb2R1bGUsXG4gICAgTWF0VG9vbHRpcE1vZHVsZSxcblxuICAgIFVzZXJDaG9vc2VyQ29tcG9uZW50LFxuICAgIFVzZXJGb3JtRmllbGRDb21wb25lbnRcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIFVzZXJDaG9vc2VyQ29tcG9uZW50LFxuICAgIFVzZXJGb3JtRmllbGRDb21wb25lbnRcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBNYXRBY3RpdmVEaXJlY3RvcnlNb2R1bGUge1xuICAvKnN0YXRpYyBmb3JSb290KGNvbmZpZzogU2VydmljZUNvbmZpZyk6IE1vZHVsZVdpdGhQcm92aWRlcnM8R3VpTW9kdWxlPiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG5nTW9kdWxlOiBHdWlNb2R1bGUsXG4gICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgQWN0aXZlRGlyZWN0b3J5U2VydmljZSxcbiAgICAgICAgeyBwcm92aWRlOiBTZXJ2aWNlQ29uZmlnLCB1c2VWYWx1ZTogY29uZmlnIH1cbiAgICAgIF1cbiAgICB9O1xuICB9Ki9cbiAgc3RhdGljIGZvclJvb3QoY29uZmlnOiBBY3RpdmVEaXJlY3RvcnlTZXJ2aWNlT3B0aW9ucyk6IE1vZHVsZVdpdGhQcm92aWRlcnM8TWF0QWN0aXZlRGlyZWN0b3J5TW9kdWxlPiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG5nTW9kdWxlOiBNYXRBY3RpdmVEaXJlY3RvcnlNb2R1bGUsXG4gICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgIHByb3ZpZGU6IEFjdGl2ZURpcmVjdG9yeVNlcnZpY2VPcHRpb25zVG9rZW4sXG4gICAgICAgICAgdXNlVmFsdWU6IGNvbmZpZ1xuICAgICAgICB9XG4gICAgICBdXG4gICAgfTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKEBPcHRpb25hbCgpIEBTa2lwU2VsZigpIHBhcmVudE1vZHVsZTogTWF0QWN0aXZlRGlyZWN0b3J5TW9kdWxlKSB7XG4gICAgaWYgKHBhcmVudE1vZHVsZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAnTWF0QWN0aXZlRGlyZWN0b3J5TW9kdWxlIGlzIGFscmVhZHkgbG9hZGVkLiBJbXBvcnQgaXQgaW4gdGhlIEFwcE1vZHVsZSBvbmx5Jyk7XG4gICAgfVxuICB9XG59Il19
100
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0LWFjdGl2ZS1kaXJlY3RvcnkubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xlYXZlbGFuZHByaWNlL25neC1saWIvYWN0aXZlLWRpcmVjdG9yeS9tYXRlcmlhbC9zcmMvbWF0LWFjdGl2ZS1kaXJlY3RvcnkubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQXVCLFFBQVEsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXJELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDdEUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDOUUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDdEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRTdELE9BQU8sRUFBaUMsa0NBQWtDLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUU5SCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUN4RixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSx3REFBd0QsQ0FBQzs7QUE0QmhHLE1BQU0sT0FBTyx3QkFBd0I7SUFDbkMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFxQztRQUNsRCxPQUFPO1lBQ0wsUUFBUSxFQUFFLHdCQUF3QjtZQUNsQyxTQUFTLEVBQUU7Z0JBQ1Q7b0JBQ0UsT0FBTyxFQUFFLGtDQUFrQztvQkFDM0MsUUFBUSxFQUFFLE1BQU07aUJBQ2pCO2FBQ0Y7U0FDRixDQUFDO0lBQ0osQ0FBQztJQUVELFlBQW9DLFlBQXNDO1FBQ3hFLElBQUksWUFBWSxFQUFFLENBQUM7WUFDakIsTUFBTSxJQUFJLEtBQUssQ0FDYiw2RUFBNkUsQ0FBQyxDQUFDO1FBQ25GLENBQUM7SUFDSCxDQUFDOzhHQWxCVSx3QkFBd0I7K0dBQXhCLHdCQUF3QixZQXZCakMsWUFBWTtZQUNaLG1CQUFtQjtZQUVuQixlQUFlO1lBQ2YsZUFBZTtZQUNmLGtCQUFrQjtZQUNsQixhQUFhO1lBQ2IsY0FBYztZQUNkLGFBQWE7WUFDYixvQkFBb0I7WUFDcEIsd0JBQXdCO1lBQ3hCLG9CQUFvQjtZQUNwQixjQUFjO1lBQ2QsZ0JBQWdCO1lBRWhCLG9CQUFvQjtZQUNwQixzQkFBc0IsYUFHdEIsb0JBQW9CO1lBQ3BCLHNCQUFzQjsrR0FHYix3QkFBd0IsWUF2QmpDLFlBQVk7WUFDWixtQkFBbUI7WUFFbkIsZUFBZTtZQUNmLGVBQWU7WUFDZixrQkFBa0I7WUFDbEIsYUFBYTtZQUNiLGNBQWM7WUFDZCxhQUFhO1lBQ2Isb0JBQW9CO1lBQ3BCLHdCQUF3QjtZQUN4QixvQkFBb0I7WUFDcEIsY0FBYztZQUNkLGdCQUFnQjtZQUVoQixvQkFBb0I7WUFDcEIsc0JBQXNCOzsyRkFPYix3QkFBd0I7a0JBMUJwQyxRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxFQUFFO29CQUNoQixPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixtQkFBbUI7d0JBRW5CLGVBQWU7d0JBQ2YsZUFBZTt3QkFDZixrQkFBa0I7d0JBQ2xCLGFBQWE7d0JBQ2IsY0FBYzt3QkFDZCxhQUFhO3dCQUNiLG9CQUFvQjt3QkFDcEIsd0JBQXdCO3dCQUN4QixvQkFBb0I7d0JBQ3BCLGNBQWM7d0JBQ2QsZ0JBQWdCO3dCQUVoQixvQkFBb0I7d0JBQ3BCLHNCQUFzQjtxQkFDdkI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLG9CQUFvQjt3QkFDcEIsc0JBQXNCO3FCQUN2QjtpQkFDRjs7MEJBY2MsUUFBUTs7MEJBQUksUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZSwgT3B0aW9uYWwsIFNraXBTZWxmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHsgTWF0RGlhbG9nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7IE1hdEZvcm1GaWVsZE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGQnO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuaW1wb3J0IHsgTWF0SW5wdXRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pbnB1dCc7XG5pbXBvcnQgeyBNYXRMaXN0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvbGlzdCc7XG5pbXBvcnQgeyBNYXRQcm9ncmVzc0Jhck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Byb2dyZXNzLWJhcic7XG5pbXBvcnQgeyBNYXRQcm9ncmVzc1NwaW5uZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9wcm9ncmVzcy1zcGlubmVyJztcbmltcG9ydCB7IE1hdFNsaWRlVG9nZ2xlTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2xpZGUtdG9nZ2xlJztcbmltcG9ydCB7IE1hdFRhYmxlTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdGFibGUnO1xuaW1wb3J0IHsgTWF0VG9vbHRpcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2x0aXAnO1xuXG5pbXBvcnQgeyBBY3RpdmVEaXJlY3RvcnlTZXJ2aWNlT3B0aW9ucywgQWN0aXZlRGlyZWN0b3J5U2VydmljZU9wdGlvbnNUb2tlbiB9IGZyb20gJ0BjbGVhdmVsYW5kcHJpY2Uvbmd4LWxpYi9hY3RpdmUtZGlyZWN0b3J5JztcblxuaW1wb3J0IHsgVXNlckNob29zZXJDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvdXNlci1jaG9vc2VyL3VzZXItY2hvb3Nlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgVXNlckZvcm1GaWVsZENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy91c2VyLWZvcm0tZmllbGQvdXNlci1mb3JtLWZpZWxkLmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW10sXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcblxuICAgIE1hdEJ1dHRvbk1vZHVsZSxcbiAgICBNYXREaWFsb2dNb2R1bGUsXG4gICAgTWF0Rm9ybUZpZWxkTW9kdWxlLFxuICAgIE1hdEljb25Nb2R1bGUsXG4gICAgTWF0SW5wdXRNb2R1bGUsXG4gICAgTWF0TGlzdE1vZHVsZSxcbiAgICBNYXRQcm9ncmVzc0Jhck1vZHVsZSxcbiAgICBNYXRQcm9ncmVzc1NwaW5uZXJNb2R1bGUsXG4gICAgTWF0U2xpZGVUb2dnbGVNb2R1bGUsXG4gICAgTWF0VGFibGVNb2R1bGUsXG4gICAgTWF0VG9vbHRpcE1vZHVsZSxcblxuICAgIFVzZXJDaG9vc2VyQ29tcG9uZW50LFxuICAgIFVzZXJGb3JtRmllbGRDb21wb25lbnRcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIFVzZXJDaG9vc2VyQ29tcG9uZW50LFxuICAgIFVzZXJGb3JtRmllbGRDb21wb25lbnRcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBNYXRBY3RpdmVEaXJlY3RvcnlNb2R1bGUge1xuICBzdGF0aWMgZm9yUm9vdChjb25maWc6IEFjdGl2ZURpcmVjdG9yeVNlcnZpY2VPcHRpb25zKTogTW9kdWxlV2l0aFByb3ZpZGVyczxNYXRBY3RpdmVEaXJlY3RvcnlNb2R1bGU+IHtcbiAgICByZXR1cm4ge1xuICAgICAgbmdNb2R1bGU6IE1hdEFjdGl2ZURpcmVjdG9yeU1vZHVsZSxcbiAgICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgcHJvdmlkZTogQWN0aXZlRGlyZWN0b3J5U2VydmljZU9wdGlvbnNUb2tlbixcbiAgICAgICAgICB1c2VWYWx1ZTogY29uZmlnXG4gICAgICAgIH1cbiAgICAgIF1cbiAgICB9O1xuICB9XG5cbiAgY29uc3RydWN0b3IoQE9wdGlvbmFsKCkgQFNraXBTZWxmKCkgcGFyZW50TW9kdWxlOiBNYXRBY3RpdmVEaXJlY3RvcnlNb2R1bGUpIHtcbiAgICBpZiAocGFyZW50TW9kdWxlKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICdNYXRBY3RpdmVEaXJlY3RvcnlNb2R1bGUgaXMgYWxyZWFkeSBsb2FkZWQuIEltcG9ydCBpdCBpbiB0aGUgQXBwTW9kdWxlIG9ubHknKTtcbiAgICB9XG4gIH1cbn0iXX0=
@@ -0,0 +1,3 @@
1
+ import { InjectionToken } from "@angular/core";
2
+ export const ActiveDirectoryServiceOptionsToken = new InjectionToken('');
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aXZlLWRpcmVjdG9yeS1zZXJ2aWNlLW9wdGlvbnMtdG9rZW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGVhdmVsYW5kcHJpY2Uvbmd4LWxpYi9hY3RpdmUtZGlyZWN0b3J5L3NyYy9tb2RlbC9hY3RpdmUtZGlyZWN0b3J5LXNlcnZpY2Utb3B0aW9ucy10b2tlbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRy9DLE1BQU0sQ0FBQyxNQUFNLGtDQUFrQyxHQUFHLElBQUksY0FBYyxDQUFnQyxFQUFFLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGlvblRva2VuIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgQWN0aXZlRGlyZWN0b3J5U2VydmljZU9wdGlvbnMgfSBmcm9tIFwiLi9hY3RpdmUtZGlyZWN0b3J5LXNlcnZpY2Utb3B0aW9uc1wiO1xyXG5cclxuZXhwb3J0IGNvbnN0IEFjdGl2ZURpcmVjdG9yeVNlcnZpY2VPcHRpb25zVG9rZW4gPSBuZXcgSW5qZWN0aW9uVG9rZW48QWN0aXZlRGlyZWN0b3J5U2VydmljZU9wdGlvbnM+KCcnKTsiXX0=
@@ -1,3 +1,2 @@
1
- import { InjectionToken } from "@angular/core";
2
- export const ActiveDirectoryServiceOptionsToken = new InjectionToken('');
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aXZlLWRpcmVjdG9yeS1zZXJ2aWNlLW9wdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGVhdmVsYW5kcHJpY2Uvbmd4LWxpYi9hY3RpdmUtZGlyZWN0b3J5L3NyYy9tb2RlbC9hY3RpdmUtZGlyZWN0b3J5LXNlcnZpY2Utb3B0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBTy9DLE1BQU0sQ0FBQyxNQUFNLGtDQUFrQyxHQUFHLElBQUksY0FBYyxDQUFnQyxFQUFFLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGlvblRva2VuIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgQ2FjaGluZ0NvbmZpZywgTG9nZ2luZ0NvbmZpZywgTmd4TGliU2VydmljZU9wdGlvbnMgfSBmcm9tIFwiQGNsZWF2ZWxhbmRwcmljZS9uZ3gtbGliXCI7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEFjdGl2ZURpcmVjdG9yeVNlcnZpY2VPcHRpb25zIGV4dGVuZHMgTmd4TGliU2VydmljZU9wdGlvbnMge1xyXG4gIGNhY2hpbmc/OiBDYWNoaW5nQ29uZmlnO1xyXG4gIGxvZ2dpbmc/OiBMb2dnaW5nQ29uZmlnO1xyXG59XHJcbmV4cG9ydCBjb25zdCBBY3RpdmVEaXJlY3RvcnlTZXJ2aWNlT3B0aW9uc1Rva2VuID0gbmV3IEluamVjdGlvblRva2VuPEFjdGl2ZURpcmVjdG9yeVNlcnZpY2VPcHRpb25zPignJyk7Il19
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aXZlLWRpcmVjdG9yeS1zZXJ2aWNlLW9wdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGVhdmVsYW5kcHJpY2Uvbmd4LWxpYi9hY3RpdmUtZGlyZWN0b3J5L3NyYy9tb2RlbC9hY3RpdmUtZGlyZWN0b3J5LXNlcnZpY2Utb3B0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2FjaGluZ0NvbmZpZywgTG9nZ2luZ0NvbmZpZywgTmd4TGliU2VydmljZU9wdGlvbnMgfSBmcm9tIFwiQGNsZWF2ZWxhbmRwcmljZS9uZ3gtbGliXCI7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEFjdGl2ZURpcmVjdG9yeVNlcnZpY2VPcHRpb25zIGV4dGVuZHMgTmd4TGliU2VydmljZU9wdGlvbnMge1xyXG4gIGNhY2hpbmc/OiBDYWNoaW5nQ29uZmlnO1xyXG4gIGxvZ2dpbmc/OiBMb2dnaW5nQ29uZmlnO1xyXG59Il19
@@ -3,7 +3,7 @@ import { Inject, inject, Injectable, Optional } from '@angular/core';
3
3
  import { DateTime } from 'luxon';
4
4
  import { of } from 'rxjs';
5
5
  import { NgxLibServiceBase } from '@cleavelandprice/ngx-lib';
6
- import { ActiveDirectoryServiceOptionsToken } from '../model/active-directory-service-options';
6
+ import { ActiveDirectoryServiceOptionsToken } from '../model/active-directory-service-options-token';
7
7
  import * as i0 from "@angular/core";
8
8
  export class ActiveDirectoryService extends NgxLibServiceBase {
9
9
  #services = {
@@ -108,10 +108,10 @@ export class ActiveDirectoryService extends NgxLibServiceBase {
108
108
  getWorkstations(includeDisabled = false, parentOU = '') {
109
109
  return this.#services.http.get(`${this.apiUrl}/activedirectory/workstations/${includeDisabled}/${parentOU}`);
110
110
  }
111
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: ActiveDirectoryService, deps: [{ token: ActiveDirectoryServiceOptionsToken, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
112
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: ActiveDirectoryService, providedIn: 'root' }); }
111
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: ActiveDirectoryService, deps: [{ token: ActiveDirectoryServiceOptionsToken, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
112
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: ActiveDirectoryService, providedIn: 'root' }); }
113
113
  }
114
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: ActiveDirectoryService, decorators: [{
114
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: ActiveDirectoryService, decorators: [{
115
115
  type: Injectable,
116
116
  args: [{
117
117
  providedIn: 'root'
@@ -122,4 +122,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImpor
122
122
  type: Inject,
123
123
  args: [ActiveDirectoryServiceOptionsToken]
124
124
  }] }] });
125
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aXZlLWRpcmVjdG9yeS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xlYXZlbGFuZHByaWNlL25neC1saWIvYWN0aXZlLWRpcmVjdG9yeS9zcmMvc2VydmljZXMvYWN0aXZlLWRpcmVjdG9yeS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxPQUFPLENBQUM7QUFDakMsT0FBTyxFQUFjLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUV0QyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUM3RCxPQUFPLEVBQWlDLGtDQUFrQyxFQUFFLE1BQU0sMkNBQTJDLENBQUM7O0FBVzlILE1BQU0sT0FBTyxzQkFBdUIsU0FBUSxpQkFBaUI7SUFDM0QsU0FBUyxHQUFHO1FBQ1YsSUFBSSxFQUFFLE1BQU0sQ0FBQyxVQUFVLENBQUM7S0FDekIsQ0FBQztJQUNGLE1BQU0sQ0FBb0M7SUFDMUMsd0JBQXdCLEdBQUcsR0FBRyxDQUFDO0lBRS9CLG9CQUFvQjtJQUNwQixJQUFJLGFBQWE7UUFDZixJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ2pCLE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQztRQUVELE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxFQUFFLE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQVEsQ0FBQyxXQUFXLEVBQUMsQ0FBQyxDQUFDO1FBRTlGLE9BQU8sUUFBUSxDQUFDLEdBQUcsRUFBRSxHQUFH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QUFJLENBQUMsR0FBRyxDQUFTLEdBQUcsSUFBSSxDQUFDLE1BQU0sOEJBQThCLGVBQWUsSUFBSSxRQUFRLEVBQUUsQ0FBQyxDQUFDO0lBQ3BILENBQUM7SUFFRCxVQUFVLENBQUMsZUFBZSxHQUFHLEtBQUssRUFBRSxRQUFRLEdBQUcsRUFBRTtRQUMvQyxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBUyxHQUFHLElBQUksQ0FBQyxNQUFNLDRCQUE0QixlQUFlLElBQUksUUFBUSxFQUFFLENBQUMsQ0FBQztJQUNsSCxDQUFDO0lBRUQsZUFBZSxDQUFDLGVBQWUsR0FBRyxLQUFLLEVBQUUsUUFBUSxHQUFHLEVBQUU7UUFDcEQsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQVMsR0FBRyxJQUFJLENBQUMsTUFBTSxpQ0FBaUMsZUFBZSxJQUFJLFFBQVEsRUFBRSxDQUFDLENBQUM7SUFDdkgsQ0FBQzs4R0EvSFUsc0JBQXNCLGtCQW1CRCxrQ0FBa0M7a0hBbkJ2RCxzQkFBc0IsY0FGckIsTUFBTTs7MkZBRVAsc0JBQXNCO2tCQUhsQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBb0JjLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsa0NBQWtDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgSW5qZWN0LCBpbmplY3QsIEluamVjdGFibGUsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IERhdGVUaW1lIH0gZnJvbSAnbHV4b24nO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBvZiB9IGZyb20gJ3J4anMnO1xyXG5cclxuaW1wb3J0IHsgTmd4TGliU2VydmljZUJhc2UgfSBmcm9tICdAY2xlYXZlbGFuZHByaWNlL25neC1saWInO1xyXG5pbXBvcnQgeyBBY3RpdmVEaXJlY3RvcnlTZXJ2aWNlT3B0aW9ucywgQWN0aXZlRGlyZWN0b3J5U2VydmljZU9wdGlvbnNUb2tlbiB9IGZyb20gJy4uL21vZGVsL2FjdGl2ZS1kaXJlY3Rvcnktc2VydmljZS1vcHRpb25zJztcclxuaW1wb3J0IHsgQURPYmplY3QgfSBmcm9tICcuLi9tb2RlbC9hZC1vYmplY3QnO1xyXG5pbXBvcnQgeyBBRE9iamVjdFdpdGhDaGlsZHJlbiB9IGZyb20gJy4uL21vZGVsL2FkLW9iamVjdC13aXRoLWNoaWxkcmVuJztcclxuaW1wb3J0IHsgQ2FjaGVPYmplY3QgfSBmcm9tICcuLi9tb2RlbC9jYWNoZS1vYmplY3QnO1xyXG5pbXBvcnQgeyBDbGVhdmVsYW5kUHJpY2VVc2VyIH0gZnJvbSAnLi4vbW9kZWwvY2xlYXZlbGFuZC1wcmljZS11c2VyJztcclxuaW1wb3J0IHsgR3JvdXAgfSBmcm9tICcuLi9tb2RlbC9ncm91cCc7XHJcbmltcG9ydCB7IFVzZXIgfSBmcm9tICcuLi9tb2RlbC91c2VyJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIEFjdGl2ZURpcmVjdG9yeVNlcnZpY2UgZXh0ZW5kcyBOZ3hMaWJTZXJ2aWNlQmFzZSB7XHJcbiAgI3NlcnZpY2VzID0ge1xyXG4gICAgaHR0cDogaW5qZWN0KEh0dHBDbGllbnQpXHJcbiAgfTtcclxuICAjY2FjaGU/OiBDYWNoZU9iamVjdDxDbGVhdmVsYW5kUHJpY2VVc2VyPjtcclxuICAjZGVmYXVsdENhY2hlTGlmZU1pbnV0ZXMgPSA3MjA7XHJcblxyXG4gIC8vI3JlZ2lvbiBQcm9wZXJ0aWVzXHJcbiAgZ2V0ICNjYWNoZUV4cGlyZWQoKTogYm9vbGVhbiB7XHJcbiAgICBpZiAoIXRoaXMuI2NhY2hlKSB7XHJcbiAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IGV4cGlyYXRpb24gPSB0aGlzLiNjYWNoZS5sYXN0VXBkYXRlLnBsdXMoeyBtaW51dGVzOiB0aGlzLm9wdGlvbnMuY2FjaGluZyEubGlmZU1pbnV0ZXN9KTtcclxuXHJcbiAgICByZXR1cm4gRGF0ZVRpbWUubm93KCkgPiBleHBpcmF0aW9uO1xyXG4gIH1cclxuICAvLyNlbmRyZWdpb25cclxuXHJcbiAgY29uc3RydWN0b3IoQE9wdGlvbmFsKCkgQEluamVjdChBY3RpdmVEaXJlY3RvcnlTZXJ2aWNlT3B0aW9uc1Rva2VuKSBwcml2YXRlIG9wdGlvbnM6IEFjdGl2ZURpcmVjdG9yeVNlcnZpY2VPcHRpb25zKSB7XHJcbiAgICBzdXBlcihvcHRpb25zKTtcclxuXHJcbiAgICB0aGlzLm9wdGlvbnMgPSB7XHJcbiAgICAgIC4uLm9wdGlvbnMsXHJcblxyXG4gICAgICBjYWNoaW5nOiBvcHRpb25zPy5jYWNoaW5nID8/IHtcclxuICAgICAgICBlbmFibGVkOiBmYWxzZSxcclxuICAgICAgICBsaWZlTWludXRlczogdGhpcy4jZGVmYXVsdENhY2hlTGlmZU1pbnV0ZXNcclxuICAgICAgfSxcclxuXHJcbiAgICAgIGxvZ2dpbmc6IG9wdGlvbnM/LmxvZ2dpbmcgPz8ge1xyXG4gICAgICAgIGRhdGFDYWNoZWQ6IGZhbHNlLFxyXG4gICAgICAgIGNhY2hlZERhdGFSZXR1cm5lZDogZmFsc2UsXHJcbiAgICAgICAgZnJlc2hEYXRhUmV0dXJuZWQ6IGZhbHNlLFxyXG4gICAgICAgIGNhY2hlQ2xlYXJlZDogZmFsc2VcclxuICAgICAgfVxyXG4gICAgfTtcclxuICB9XHJcbiAgXHJcbiAgZ2V0VXNlcnMoaW5jbHVkZVBob3RvID0gZmFsc2UsIGluY2x1ZGVEaXNhYmxlZCA9IGZhbHNlLCBwYXJlbnRPVSA9ICcnKTogT2JzZXJ2YWJsZTxDbGVhdmVsYW5kUHJpY2VVc2VyW10+IHtcclxuICAgIC8vIElmIGNhY2hpbmcgaXMgZW5hYmxlZCwgdGhlcmUgd2lsbCBiZSB0d28gY2FsbHMgdG8gdGhlIEFQSSBpZiB0aGUgY2FjaGUgaXMgbnVsbC9leHBpcmVkXHJcbiAgICAvLyBPbmUgY2FsbCBpcyB0byB1cGRhdGUgdGhlIGNhY2hlIGFuZCB0aGUgb3RoZXIgaXMgdG8gcmV0dXJuIHRoZSBkYXRhIHRoYXQgdGhlIHVzZXIgcmVxdWVzdGVkXHJcbiAgICAvLyBTdWJzZXF1ZW50IGNhbGxzIHdpbGwgYnlwYXNzIHRoZSBBUEkgYW5kIHJldHVybmVkIGNhY2hlZCBkYXRhIHVudGlsIGl0IGV4cGlyZXNcclxuXHJcbiAgICBjb25zdCBvYnNlcnZhYmxlJCA9IHRoaXMuI3NlcnZpY2VzLmh0dHAuZ2V0PENsZWF2ZWxhbmRQcmljZVVzZXJbXT4oYCR7dGhpcy5hcGlVcmx9L3VzZXJzLyR7aW5jbHVkZVBob3RvfS8ke2luY2x1ZGVEaXNhYmxlZH0vJHtwYXJlbnRPVX1gKTtcclxuXHJcbiAgICBpZiAodGhpcy5vcHRpb25zLmNhY2hpbmchLmVuYWJsZWQpIHtcclxuICAgICAgaWYgKHRoaXMuI2NhY2hlRXhwaXJlZCkge1xyXG4gICAgICAgIC8vIEdldCB0aGUgZGF0YSBhbmQgY2FjaGUgaXRcclxuICAgICAgICBvYnNlcnZhYmxlJC5zdWJzY3JpYmUoZGF0YSA9PiB7XHJcbiAgICAgICAgICB0aGlzLiNjYWNoZSA9IHtcclxuICAgICAgICAgICAgZGF0YSxcclxuICAgICAgICAgICAgbGFzdFVwZGF0ZTogRGF0ZVRpbWUubm93KClcclxuICAgICAgICAgIH07XHJcblxyXG4gICAgICAgICAgaWYgKHRoaXMub3B0aW9ucy5sb2dnaW5nIS5kYXRhQ2FjaGVkKSB7XHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKGBEYXRhIGNhY2hlZCBmb3IgJHt0aGlzLm9wdGlvbnMuY2FjaGluZyEubGlmZU1pbnV0ZXN9IG1pbnV0ZXNgKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICAvLyBDYWNoZSBleGlzdHMgYW5kIGhhc24ndCBleHBpcmVkIHlldFxyXG4gICAgICAgIGlmICh0aGlzLm9wdGlvbnMubG9nZ2luZyEuY2FjaGVkRGF0YVJldHVybmVkKSB7XHJcbiAgICAgICAgICBjb25zb2xlLmxvZygnUmV0dXJuaW5nIGNhY2hlZCB1c2VycycpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIG9mKHRoaXMuI2NhY2hlIS5kYXRhKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8vIENhY2hlIGlzIGVpdGhlciBkaXNhYmxlZCBvciBleHBpcmVkLCByZXR1cm4gZGF0YSBmcm9tIEFQSVxyXG4gICAgaWYgKHRoaXMub3B0aW9ucy5sb2dnaW5nIS5mcmVzaERhdGFSZXR1cm5lZCkge1xyXG4gICAgICBjb25zb2xlLmxvZygnUmV0dXJuaW5nIGZyZXNoIHVzZXJzJyk7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIG9ic2VydmFibGUkO1xyXG4gIH1cclxuXHJcbiAgZ2V0VXNlcihhY2NvdW50TmFtZTogc3RyaW5nLCBpbmNsdWRlUGhvdG8gPSBmYWxzZSk6IE9ic2VydmFibGU8Q2xlYXZlbGFuZFByaWNlVXNlcj4ge1xyXG4gICAgcmV0dXJuIHRoaXMuI3NlcnZpY2VzLmh0dHAuZ2V0PENsZWF2ZWxhbmRQcmljZVVzZXI+KGAke3RoaXMuYXBpVXJsfS91c2Vycy9uYW1lLyR7YWNjb3VudE5hbWV9LyR7aW5jbHVkZVBob3RvfWApO1xyXG4gIH1cclxuXHJcbiAgY2xlYXJDYWNoZSgpOiB2b2lkIHtcclxuICAgIHRoaXMuI2NhY2hlID0gdW5kZWZpbmVkO1xyXG5cclxuICAgIGlmICh0aGlzLm9wdGlvbnMubG9nZ2luZyEuY2FjaGVDbGVhcmVkKSB7XHJcbiAgICAgIGNvbnNvbGUubG9nKCdDYWNoZSBjbGVhcmVkJyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBnZXREb21haW5zKCk6IE9ic2VydmFibGU8QURPYmplY3RbXT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuI3NlcnZpY2VzLmh0dHAuZ2V0PEFET2JqZWN0W10+KGAke3RoaXMuYXBpVXJsfS9hY3RpdmVkaXJlY3RvcnkvZG9tYWluc2ApO1xyXG4gIH1cclxuXHJcbiAgZ2V0T1VzKHBhcmVudE9VID0gJycpOiBPYnNlcnZhYmxlPEFET2JqZWN0V2l0aENoaWxkcmVuW10+IHtcclxuICAgIHJldHVybiB0aGlzLiNzZXJ2aWNlcy5odHRwLmdldDxBRE9iamVjdFdpdGhDaGlsZHJlbltdPihgJHt0aGlzLmFwaVVybH0vYWN0aXZlZGlyZWN0b3J5L291cy8ke3BhcmVudE9VfWApO1xyXG4gIH1cclxuXHJcbiAgZ2V0Q29udGFpbmVycyhwYXJlbnRPVSA9ICcnKTogT2JzZXJ2YWJsZTxBRE9iamVjdFdpdGhDaGlsZHJlbltdPiB7XHJcbiAgICByZXR1cm4gdGhpcy4jc2VydmljZXMuaHR0cC5nZXQ8QURPYmplY3RXaXRoQ2hpbGRyZW5bXT4oYCR7dGhpcy5hcGlVcmx9L2FjdGl2ZWRpcmVjdG9yeS9jb250YWluZXJzLyR7cGFyZW50T1V9YCk7XHJcbiAgfVxyXG5cclxuICBnZXRHcm91cHMocGFyZW50T1UgPSAnJyk6IE9ic2VydmFibGU8R3JvdXBbXT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuI3NlcnZpY2VzLmh0dHAuZ2V0PEdyb3VwW10+KGAke3RoaXMuYXBpVXJsfS9hY3RpdmVkaXJlY3RvcnkvZ3JvdXBzLyR7cGFyZW50T1V9YCk7XHJcbiAgfVxyXG5cclxuICBnZXREaXN0aW5jdFVzZXJBdHRyaWJ1dGVWYWx1ZXMoYXR0cmlidXRlTmFtZTogc3RyaW5nKSA6IE9ic2VydmFibGU8YW55W10+IHtcclxuICAgIHJldHVybiB0aGlzLiNzZXJ2aWNlcy5odHRwLmdldDxhbnlbXT4oYCR7dGhpcy5hcGlVcmx9L2FjdGl2ZWRpcmVjdG9yeS9kaXN0aW5jdC8ke2F0dHJpYnV0ZU5hbWV9YCk7XHJcbiAgfVxyXG5cclxuICBnZXREZXBhcnRtZW50cygpIDogT2JzZXJ2YWJsZTxzdHJpbmdbXT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuI3NlcnZpY2VzLmh0dHAuZ2V0PHN0cmluZ1tdPihgJHt0aGlzLmFwaVVybH0vYWN0aXZlZGlyZWN0b3J5L2RlcGFydG1lbnRzYCk7XHJcbiAgfVxyXG5cclxuICBnZXRUaXRsZXMoKSA6IE9ic2VydmFibGU8c3RyaW5nW10+IHtcclxuICAgIHJldHVybiB0aGlzLiNzZXJ2aWNlcy5odHRwLmdldDxzdHJpbmdbXT4oYCR7dGhpcy5hcGlVcmx9L2FjdGl2ZWRpcmVjdG9yeS90aXRsZXNgKTtcclxuICB9XHJcblxyXG4gIGdldENvbXB1dGVycyhpbmNsdWRlRGlzYWJsZWQgPSBmYWxzZSwgcGFyZW50T1UgPSAnJyk6IE9ic2VydmFibGU8VXNlcltdPiB7XHJcbiAgICByZXR1cm4gdGhpcy4jc2VydmljZXMuaHR0cC5nZXQ8VXNlcltdPihgJHt0aGlzLmFwaVVybH0vYWN0aXZlZGlyZWN0b3J5L2NvbXB1dGVycy8ke2luY2x1ZGVEaXNhYmxlZH0vJHtwYXJlbnRPVX1gKTtcclxuICB9XHJcblxyXG4gIGdldFNlcnZlcnMoaW5jbHVkZURpc2FibGVkID0gZmFsc2UsIHBhcmVudE9VID0gJycpOiBPYnNlcnZhYmxlPFVzZXJbXT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuI3NlcnZpY2VzLmh0dHAuZ2V0PFVzZXJbXT4oYCR7dGhpcy5hcGlVcmx9L2FjdGl2ZWRpcmVjdG9yeS9zZXJ2ZXJzLyR7aW5jbHVkZURpc2FibGVkfS8ke3BhcmVudE9VfWApO1xyXG4gIH1cclxuXHJcbiAgZ2V0V29ya3N0YXRpb25zKGluY2x1ZGVEaXNhYmxlZCA9IGZhbHNlLCBwYXJlbnRPVSA9ICcnKTogT2JzZXJ2YWJsZTxVc2VyW10+IHtcclxuICAgIHJldHVybiB0aGlzLiNzZXJ2aWNlcy5odHRwLmdldDxVc2VyW10+KGAke3RoaXMuYXBpVXJsfS9hY3RpdmVkaXJlY3Rvcnkvd29ya3N0YXRpb25zLyR7aW5jbHVkZURpc2FibGVkfS8ke3BhcmVudE9VfWApO1xyXG4gIH1cclxufVxyXG4iXX0=
125
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aXZlLWRpcmVjdG9yeS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xlYXZlbGFuZHByaWNlL25neC1saWIvYWN0aXZlLWRpcmVjdG9yeS9zcmMvc2VydmljZXMvYWN0aXZlLWRpcmVjdG9yeS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxPQUFPLENBQUM7QUFDakMsT0FBTyxFQUFjLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUV0QyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUU3RCxPQUFPLEVBQUUsa0NBQWtDLEVBQUUsTUFBTSxpREFBaUQsQ0FBQzs7QUFXckcsTUFBTSxPQUFPLHNCQUF1QixTQUFRLGlCQUFpQjtJQUMzRCxTQUFTLEdBQUc7UUFDVixJQUFJLEVBQUUsTUFBTSxDQUFDLFVBQVUsQ0FBQztLQUN6QixDQUFDO0lBQ0YsTUFBTSxDQUFvQztJQUMxQyx3QkFBd0IsR0FBRyxHQUFHLENBQUM7SUFFL0Isb0JBQW9CO0lBQ3BCLElBQUksYUFBYTtRQUNmLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDakIsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDO1FBRUQsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEVBQUUsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBUSxDQUFDLFdBQVcsRUFBQyxDQUFDLENBQUM7UUFFOUYsT0FBTyxRQUFRLENBQUMsR0FBRyxFQUFFLEdBQUcsVUFBVSxDQUFDO0lBQ3JDLENBQUM7SUFDRCxZQUFZO0lBRVosWUFBNEUsT0FBc0M7UUFDaEgsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRDJELFlBQU8sR0FBUCxPQUFPLENBQStCO1FBR2hILElBQUksQ0FBQyxPQUFPLEdBQUc7WUFDYixHQUFHLE9BQU87WUFFVixPQUFPLEVBQUUsT0FBTyxFQUFFLE9BQU8sSUFBSTtnQkFDM0IsT0FBTyxFQUFFLEtBQUs7Z0JBQ2QsV0FBVyxFQUFFLElBQUksQ0FBQyx3QkFBd0I7YUFDM0M7WUFFRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE9BQU8sSUFBSTtnQkFDM0IsVUFBVSxFQUFFLEtBQUs7Z0JBQ2pCLGtCQUFrQixFQUFFLEtBQUs7Z0JBQ3pCLGlCQUFpQixFQUFFLEtBQUs7Z0JBQ3hCLFlBQVksRUFBRSxLQUFLO2FBQ3BCO1NBQ0YsQ0FBQztJQUNKLENBQUM7SUFFRCxRQUFRLENBQUMsWUFBWSxHQUFHLEtBQUssRUFBRSxlQUFlLEdBQUcsS0FBSyxFQUFFLFFBQVEsR0FBRyxFQUFFO1FBQ25FLHlGQUF5RjtRQUN6Riw4RkFBOEY7UUFDOUYsaUZBQWlGO1FBRWpGLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBd0IsR0FBRyxJQUFJLENBQUMsTUFBTSxVQUFVLFlBQVksSUFBSSxlQUFlLElBQUksUUFBUSxFQUFFLENBQUMsQ0FBQztRQUUxSSxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBUSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ2xDLElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO2dCQUN2Qiw0QkFBNEI7Z0JBQzVCLFdBQVcsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUU7b0JBQzNCLElBQUksQ0FBQyxNQUFNLEdBQUc7d0JBQ1osSUFBSTt3QkFDSixVQUFVLEVBQUUsUUFBUSxDQUFDLEdBQUcsRUFBRTtxQkFDM0IsQ0FBQztvQkFFRixJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBUSxDQUFDLFVBQVUsRUFBRSxDQUFDO3dCQUNyQyxPQUFPLENBQUMsR0FBRyxDQUFDLG1CQUFtQixJQUFJLENBQUMsT0FBTyxDQUFDLE9BQVEsQ0FBQyxXQUFXLFVBQVUsQ0FBQyxDQUFDO29CQUM5RSxDQUFDO2dCQUNILENBQUMsQ0FBQyxDQUFDO1lBQ0wsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLHNDQUFzQztnQkFDdEMsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQVEsQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO29CQUM3QyxPQUFPLENBQUMsR0FBRyxDQUFDLHdCQUF3QixDQUFDLENBQUM7Z0JBQ3hDLENBQUM7Z0JBRUQsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUMvQixDQUFDO1FBQ0gsQ0FBQztRQUVELDREQUE0RDtRQUM1RCxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBUSxDQUFDLGlCQUFpQixFQUFFLENBQUM7WUFDNUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO1FBQ3ZDLENBQUM7UUFFRCxPQUFPLFdBQVcsQ0FBQztJQUNyQixDQUFDO0lBRUQsT0FBTyxDQUFDLFdBQW1CLEVBQUUsWUFBWSxHQUFHLEtBQUs7UUFDL0MsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQXNCLEdBQUcsSUFBSSxDQUFDLE1BQU0sZUFBZSxXQUFXLElBQUksWUFBWSxFQUFFLENBQUMsQ0FBQztJQUNsSCxDQUFDO0lBRUQsVUFBVTtRQUNSLElBQUksQ0FBQyxNQUFNLEdBQUcsU0FBUyxDQUFDO1FBRXhCLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFRLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDdkMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUMvQixDQUFDO0lBQ0gsQ0FBQztJQUVELFVBQVU7UUFDUixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBYSxHQUFHLElBQUksQ0FBQyxNQUFNLDBCQUEwQixDQUFDLENBQUM7SUFDdkYsQ0FBQztJQUVELE1BQU0sQ0FBQyxRQUFRLEdBQUcsRUFBRTtRQUNsQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBeUIsR0FBRyxJQUFJLENBQUMsTUFBTSx3QkFBd0IsUUFBUSxFQUFFLENBQUMsQ0FBQztJQUMzRyxDQUFDO0lBRUQsYUFBYSxDQUFDLFFBQVEsR0FBRyxFQUFFO1FBQ3pCLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUF5QixHQUFHLElBQUksQ0FBQyxNQUFNLCtCQUErQixRQUFRLEVBQUUsQ0FBQyxDQUFDO0lBQ2xILENBQUM7SUFFRCxTQUFTLENBQUMsUUFBUSxHQUFHLEVBQUU7UUFDckIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQVUsR0FBRyxJQUFJLENBQUMsTUFBTSwyQkFBMkIsUUFBUSxFQUFFLENBQUMsQ0FBQztJQUMvRixDQUFDO0lBRUQsOEJBQThCLENBQUMsYUFBcUI7UUFDbEQsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQVEsR0FBRyxJQUFJLENBQUMsTUFBTSw2QkFBNkIsYUFBYSxFQUFFLENBQUMsQ0FBQztJQUNwRyxDQUFDO0lBRUQsY0FBYztRQUNaLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFXLEdBQUcsSUFBSSxDQUFDLE1BQU0sOEJBQThCLENBQUMsQ0FBQztJQUN6RixDQUFDO0lBRUQsU0FBUztRQUNQLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFXLEdBQUcsSUFBSSxDQUFDLE1BQU0seUJBQXlCLENBQUMsQ0FBQztJQUNwRixDQUFDO0lBRUQsWUFBWSxDQUFDLGVBQWUsR0FBRyxLQUFLLEVBQUUsUUFBUSxHQUFHLEVBQUU7UUFDakQsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQVMsR0FBRyxJQUFJLENBQUMsTUFBTSw4QkFBOEIsZUFBZSxJQUFJLFFBQVEsRUFBRSxDQUFDLENBQUM7SUFDcEgsQ0FBQztJQUVELFVBQVUsQ0FBQyxlQUFlLEdBQUcsS0FBSyxFQUFFLFFBQVEsR0FBRyxFQUFFO1FBQy9DLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFTLEdBQUcsSUFBSSxDQUFDLE1BQU0sNEJBQTRCLGVBQWUsSUFBSSxRQUFRLEVBQUUsQ0FBQyxDQUFDO0lBQ2xILENBQUM7SUFFRCxlQUFlLENBQUMsZUFBZSxHQUFHLEtBQUssRUFBRSxRQUFRLEdBQUcsRUFBRTtRQUNwRCxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBUyxHQUFHLElBQUksQ0FBQyxNQUFNLGlDQUFpQyxlQUFlLElBQUksUUFBUSxFQUFFLENBQUMsQ0FBQztJQUN2SCxDQUFDOzhHQS9IVSxzQkFBc0Isa0JBbUJELGtDQUFrQztrSEFuQnZELHNCQUFzQixjQUZyQixNQUFNOzsyRkFFUCxzQkFBc0I7a0JBSGxDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzswQkFvQmMsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxrQ0FBa0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBJbmplY3QsIGluamVjdCwgSW5qZWN0YWJsZSwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRGF0ZVRpbWUgfSBmcm9tICdsdXhvbic7XHJcbmltcG9ydCB7IE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XHJcblxyXG5pbXBvcnQgeyBOZ3hMaWJTZXJ2aWNlQmFzZSB9IGZyb20gJ0BjbGVhdmVsYW5kcHJpY2Uvbmd4LWxpYic7XHJcbmltcG9ydCB7IEFjdGl2ZURpcmVjdG9yeVNlcnZpY2VPcHRpb25zIH0gZnJvbSAnLi4vbW9kZWwvYWN0aXZlLWRpcmVjdG9yeS1zZXJ2aWNlLW9wdGlvbnMnO1xyXG5pbXBvcnQgeyBBY3RpdmVEaXJlY3RvcnlTZXJ2aWNlT3B0aW9uc1Rva2VuIH0gZnJvbSAnLi4vbW9kZWwvYWN0aXZlLWRpcmVjdG9yeS1zZXJ2aWNlLW9wdGlvbnMtdG9rZW4nO1xyXG5pbXBvcnQgeyBBRE9iamVjdCB9IGZyb20gJy4uL21vZGVsL2FkLW9iamVjdCc7XHJcbmltcG9ydCB7IEFET2JqZWN0V2l0aENoaWxkcmVuIH0gZnJvbSAnLi4vbW9kZWwvYWQtb2JqZWN0LXdpdGgtY2hpbGRyZW4nO1xyXG5pbXBvcnQgeyBDYWNoZU9iamVjdCB9IGZyb20gJy4uL21vZGVsL2NhY2hlLW9iamVjdCc7XHJcbmltcG9ydCB7IENsZWF2ZWxhbmRQcmljZVVzZXIgfSBmcm9tICcuLi9tb2RlbC9jbGVhdmVsYW5kLXByaWNlLXVzZXInO1xyXG5pbXBvcnQgeyBHcm91cCB9IGZyb20gJy4uL21vZGVsL2dyb3VwJztcclxuaW1wb3J0IHsgVXNlciB9IGZyb20gJy4uL21vZGVsL3VzZXInO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgQWN0aXZlRGlyZWN0b3J5U2VydmljZSBleHRlbmRzIE5neExpYlNlcnZpY2VCYXNlIHtcclxuICAjc2VydmljZXMgPSB7XHJcbiAgICBodHRwOiBpbmplY3QoSHR0cENsaWVudClcclxuICB9O1xyXG4gICNjYWNoZT86IENhY2hlT2JqZWN0PENsZWF2ZWxhbmRQcmljZVVzZXI+O1xyXG4gICNkZWZhdWx0Q2FjaGVMaWZlTWludXRlcyA9IDcyMDtcclxuXHJcbiAgLy8jcmVnaW9uIFByb3BlcnRpZXNcclxuICBnZXQgI2NhY2hlRXhwaXJlZCgpOiBib29sZWFuIHtcclxuICAgIGlmICghdGhpcy4jY2FjaGUpIHtcclxuICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgZXhwaXJhdGlvbiA9IHRoaXMuI2NhY2hlLmxhc3RVcGRhdGUucGx1cyh7IG1pbnV0ZXM6IHRoaXMub3B0aW9ucy5jYWNoaW5nIS5saWZlTWludXRlc30pO1xyXG5cclxuICAgIHJldHVybiBEYXRlVGltZS5ub3coKSA+IGV4cGlyYXRpb247XHJcbiAgfVxyXG4gIC8vI2VuZHJlZ2lvblxyXG5cclxuICBjb25zdHJ1Y3RvcihAT3B0aW9uYWwoKSBASW5qZWN0KEFjdGl2ZURpcmVjdG9yeVNlcnZpY2VPcHRpb25zVG9rZW4pIHByaXZhdGUgb3B0aW9uczogQWN0aXZlRGlyZWN0b3J5U2VydmljZU9wdGlvbnMpIHtcclxuICAgIHN1cGVyKG9wdGlvbnMpO1xyXG5cclxuICAgIHRoaXMub3B0aW9ucyA9IHtcclxuICAgICAgLi4ub3B0aW9ucyxcclxuXHJcbiAgICAgIGNhY2hpbmc6IG9wdGlvbnM/LmNhY2hpbmcgPz8ge1xyXG4gICAgICAgIGVuYWJsZWQ6IGZhbHNlLFxyXG4gICAgICAgIGxpZmVNaW51dGVzOiB0aGlzLiNkZWZhdWx0Q2FjaGVMaWZlTWludXRlc1xyXG4gICAgICB9LFxyXG5cclxuICAgICAgbG9nZ2luZzogb3B0aW9ucz8ubG9nZ2luZyA/PyB7XHJcbiAgICAgICAgZGF0YUNhY2hlZDogZmFsc2UsXHJcbiAgICAgICAgY2FjaGVkRGF0YVJldHVybmVkOiBmYWxzZSxcclxuICAgICAgICBmcmVzaERhdGFSZXR1cm5lZDogZmFsc2UsXHJcbiAgICAgICAgY2FjaGVDbGVhcmVkOiBmYWxzZVxyXG4gICAgICB9XHJcbiAgICB9O1xyXG4gIH1cclxuICBcclxuICBnZXRVc2VycyhpbmNsdWRlUGhvdG8gPSBmYWxzZSwgaW5jbHVkZURpc2FibGVkID0gZmFsc2UsIHBhcmVudE9VID0gJycpOiBPYnNlcnZhYmxlPENsZWF2ZWxhbmRQcmljZVVzZXJbXT4ge1xyXG4gICAgLy8gSWYgY2FjaGluZyBpcyBlbmFibGVkLCB0aGVyZSB3aWxsIGJlIHR3byBjYWxscyB0byB0aGUgQVBJIGlmIHRoZSBjYWNoZSBpcyBudWxsL2V4cGlyZWRcclxuICAgIC8vIE9uZSBjYWxsIGlzIHRvIHVwZGF0ZSB0aGUgY2FjaGUgYW5kIHRoZSBvdGhlciBpcyB0byByZXR1cm4gdGhlIGRhdGEgdGhhdCB0aGUgdXNlciByZXF1ZXN0ZWRcclxuICAgIC8vIFN1YnNlcXVlbnQgY2FsbHMgd2lsbCBieXBhc3MgdGhlIEFQSSBhbmQgcmV0dXJuZWQgY2FjaGVkIGRhdGEgdW50aWwgaXQgZXhwaXJlc1xyXG5cclxuICAgIGNvbnN0IG9ic2VydmFibGUkID0gdGhpcy4jc2VydmljZXMuaHR0cC5nZXQ8Q2xlYXZlbGFuZFByaWNlVXNlcltdPihgJHt0aGlzLmFwaVVybH0vdXNlcnMvJHtpbmNsdWRlUGhvdG99LyR7aW5jbHVkZURpc2FibGVkfS8ke3BhcmVudE9VfWApO1xyXG5cclxuICAgIGlmICh0aGlzLm9wdGlvbnMuY2FjaGluZyEuZW5hYmxlZCkge1xyXG4gICAgICBpZiAodGhpcy4jY2FjaGVFeHBpcmVkKSB7XHJcbiAgICAgICAgLy8gR2V0IHRoZSBkYXRhIGFuZCBjYWNoZSBpdFxyXG4gICAgICAgIG9ic2VydmFibGUkLnN1YnNjcmliZShkYXRhID0+IHtcclxuICAgICAgICAgIHRoaXMuI2NhY2hlID0ge1xyXG4gICAgICAgICAgICBkYXRhLFxyXG4gICAgICAgICAgICBsYXN0VXBkYXRlOiBEYXRlVGltZS5ub3coKVxyXG4gICAgICAgICAgfTtcclxuXHJcbiAgICAgICAgICBpZiAodGhpcy5vcHRpb25zLmxvZ2dpbmchLmRhdGFDYWNoZWQpIHtcclxuICAgICAgICAgICAgY29uc29sZS5sb2coYERhdGEgY2FjaGVkIGZvciAke3RoaXMub3B0aW9ucy5jYWNoaW5nIS5saWZlTWludXRlc30gbWludXRlc2ApO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIC8vIENhY2hlIGV4aXN0cyBhbmQgaGFzbid0IGV4cGlyZWQgeWV0XHJcbiAgICAgICAgaWYgKHRoaXMub3B0aW9ucy5sb2dnaW5nIS5jYWNoZWREYXRhUmV0dXJuZWQpIHtcclxuICAgICAgICAgIGNvbnNvbGUubG9nKCdSZXR1cm5pbmcgY2FjaGVkIHVzZXJzJyk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gb2YodGhpcy4jY2FjaGUhLmRhdGEpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8gQ2FjaGUgaXMgZWl0aGVyIGRpc2FibGVkIG9yIGV4cGlyZWQsIHJldHVybiBkYXRhIGZyb20gQVBJXHJcbiAgICBpZiAodGhpcy5vcHRpb25zLmxvZ2dpbmchLmZyZXNoRGF0YVJldHVybmVkKSB7XHJcbiAgICAgIGNvbnNvbGUubG9nKCdSZXR1cm5pbmcgZnJlc2ggdXNlcnMnKTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gb2JzZXJ2YWJsZSQ7XHJcbiAgfVxyXG5cclxuICBnZXRVc2VyKGFjY291bnROYW1lOiBzdHJpbmcsIGluY2x1ZGVQaG90byA9IGZhbHNlKTogT2JzZXJ2YWJsZTxDbGVhdmVsYW5kUHJpY2VVc2VyPiB7XHJcbiAgICByZXR1cm4gdGhpcy4jc2VydmljZXMuaHR0cC5nZXQ8Q2xlYXZlbGFuZFByaWNlVXNlcj4oYCR7dGhpcy5hcGlVcmx9L3VzZXJzL25hbWUvJHthY2NvdW50TmFtZX0vJHtpbmNsdWRlUGhvdG99YCk7XHJcbiAgfVxyXG5cclxuICBjbGVhckNhY2hlKCk6IHZvaWQge1xyXG4gICAgdGhpcy4jY2FjaGUgPSB1bmRlZmluZWQ7XHJcblxyXG4gICAgaWYgKHRoaXMub3B0aW9ucy5sb2dnaW5nIS5jYWNoZUNsZWFyZWQpIHtcclxuICAgICAgY29uc29sZS5sb2coJ0NhY2hlIGNsZWFyZWQnKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGdldERvbWFpbnMoKTogT2JzZXJ2YWJsZTxBRE9iamVjdFtdPiB7XHJcbiAgICByZXR1cm4gdGhpcy4jc2VydmljZXMuaHR0cC5nZXQ8QURPYmplY3RbXT4oYCR7dGhpcy5hcGlVcmx9L2FjdGl2ZWRpcmVjdG9yeS9kb21haW5zYCk7XHJcbiAgfVxyXG5cclxuICBnZXRPVXMocGFyZW50T1UgPSAnJyk6IE9ic2VydmFibGU8QURPYmplY3RXaXRoQ2hpbGRyZW5bXT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuI3NlcnZpY2VzLmh0dHAuZ2V0PEFET2JqZWN0V2l0aENoaWxkcmVuW10+KGAke3RoaXMuYXBpVXJsfS9hY3RpdmVkaXJlY3Rvcnkvb3VzLyR7cGFyZW50T1V9YCk7XHJcbiAgfVxyXG5cclxuICBnZXRDb250YWluZXJzKHBhcmVudE9VID0gJycpOiBPYnNlcnZhYmxlPEFET2JqZWN0V2l0aENoaWxkcmVuW10+IHtcclxuICAgIHJldHVybiB0aGlzLiNzZXJ2aWNlcy5odHRwLmdldDxBRE9iamVjdFdpdGhDaGlsZHJlbltdPihgJHt0aGlzLmFwaVVybH0vYWN0aXZlZGlyZWN0b3J5L2NvbnRhaW5lcnMvJHtwYXJlbnRPVX1gKTtcclxuICB9XHJcblxyXG4gIGdldEdyb3VwcyhwYXJlbnRPVSA9ICcnKTogT2JzZXJ2YWJsZTxHcm91cFtdPiB7XHJcbiAgICByZXR1cm4gdGhpcy4jc2VydmljZXMuaHR0cC5nZXQ8R3JvdXBbXT4oYCR7dGhpcy5hcGlVcmx9L2FjdGl2ZWRpcmVjdG9yeS9ncm91cHMvJHtwYXJlbnRPVX1gKTtcclxuICB9XHJcblxyXG4gIGdldERpc3RpbmN0VXNlckF0dHJpYnV0ZVZhbHVlcyhhdHRyaWJ1dGVOYW1lOiBzdHJpbmcpIDogT2JzZXJ2YWJsZTxhbnlbXT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuI3NlcnZpY2VzLmh0dHAuZ2V0PGFueVtdPihgJHt0aGlzLmFwaVVybH0vYWN0aXZlZGlyZWN0b3J5L2Rpc3RpbmN0LyR7YXR0cmlidXRlTmFtZX1gKTtcclxuICB9XHJcblxyXG4gIGdldERlcGFydG1lbnRzKCkgOiBPYnNlcnZhYmxlPHN0cmluZ1tdPiB7XHJcbiAgICByZXR1cm4gdGhpcy4jc2VydmljZXMuaHR0cC5nZXQ8c3RyaW5nW10+KGAke3RoaXMuYXBpVXJsfS9hY3RpdmVkaXJlY3RvcnkvZGVwYXJ0bWVudHNgKTtcclxuICB9XHJcblxyXG4gIGdldFRpdGxlcygpIDogT2JzZXJ2YWJsZTxzdHJpbmdbXT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuI3NlcnZpY2VzLmh0dHAuZ2V0PHN0cmluZ1tdPihgJHt0aGlzLmFwaVVybH0vYWN0aXZlZGlyZWN0b3J5L3RpdGxlc2ApO1xyXG4gIH1cclxuXHJcbiAgZ2V0Q29tcHV0ZXJzKGluY2x1ZGVEaXNhYmxlZCA9IGZhbHNlLCBwYXJlbnRPVSA9ICcnKTogT2JzZXJ2YWJsZTxVc2VyW10+IHtcclxuICAgIHJldHVybiB0aGlzLiNzZXJ2aWNlcy5odHRwLmdldDxVc2VyW10+KGAke3RoaXMuYXBpVXJsfS9hY3RpdmVkaXJlY3RvcnkvY29tcHV0ZXJzLyR7aW5jbHVkZURpc2FibGVkfS8ke3BhcmVudE9VfWApO1xyXG4gIH1cclxuXHJcbiAgZ2V0U2VydmVycyhpbmNsdWRlRGlzYWJsZWQgPSBmYWxzZSwgcGFyZW50T1UgPSAnJyk6IE9ic2VydmFibGU8VXNlcltdPiB7XHJcbiAgICByZXR1cm4gdGhpcy4jc2VydmljZXMuaHR0cC5nZXQ8VXNlcltdPihgJHt0aGlzLmFwaVVybH0vYWN0aXZlZGlyZWN0b3J5L3NlcnZlcnMvJHtpbmNsdWRlRGlzYWJsZWR9LyR7cGFyZW50T1V9YCk7XHJcbiAgfVxyXG5cclxuICBnZXRXb3Jrc3RhdGlvbnMoaW5jbHVkZURpc2FibGVkID0gZmFsc2UsIHBhcmVudE9VID0gJycpOiBPYnNlcnZhYmxlPFVzZXJbXT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuI3NlcnZpY2VzLmh0dHAuZ2V0PFVzZXJbXT4oYCR7dGhpcy5hcGlVcmx9L2FjdGl2ZWRpcmVjdG9yeS93b3Jrc3RhdGlvbnMvJHtpbmNsdWRlRGlzYWJsZWR9LyR7cGFyZW50T1V9YCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -19,11 +19,11 @@ export class AuthenticationBaseModule {
19
19
  throw new Error('AuthenticationBaseModule is already loaded. Import it in the AppModule only');
20
20
  }
21
21
  }
22
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: AuthenticationBaseModule, deps: [{ token: AuthenticationBaseModule, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.NgModule }); }
23
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.3", ngImport: i0, type: AuthenticationBaseModule, imports: [CommonModule] }); }
24
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: AuthenticationBaseModule, imports: [CommonModule] }); }
22
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: AuthenticationBaseModule, deps: [{ token: AuthenticationBaseModule, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.NgModule }); }
23
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.5", ngImport: i0, type: AuthenticationBaseModule, imports: [CommonModule] }); }
24
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: AuthenticationBaseModule, imports: [CommonModule] }); }
25
25
  }
26
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: AuthenticationBaseModule, decorators: [{
26
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: AuthenticationBaseModule, decorators: [{
27
27
  type: NgModule,
28
28
  args: [{
29
29
  declarations: [],
@@ -37,10 +37,10 @@ export class LoginComponent {
37
37
  }
38
38
  });
39
39
  }
40
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: LoginComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
41
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.3", type: LoginComponent, isStandalone: true, selector: "cp-login", inputs: { adminGroup: { classPropertyName: "adminGroup", publicName: "adminGroup", isSignal: true, isRequired: false, transformFunction: null }, additionalInfo: { classPropertyName: "additionalInfo", publicName: "additionalInfo", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "<div id=\"user-id\">\n <!-- Logged out -->\n <!-- Logged in -->\n @if (services.authentication.authenticated) {\n <!-- With photo -->\n @if (services.authentication.authenticatedUser?.photoUrl) {\n <img\n id=\"authenticated-user-image\"\n [src]=\"services.authentication.authenticatedUser?.photoUrl\"\n matTooltip=\"Logout\"\n (click)=\"confirmLogout()\" />\n } @else {\n <!-- Without photo -->\n <mat-icon\n fontIcon=\"account_circle\"\n matTooltip=\"Logout\"\n (click)=\"confirmLogout()\">\n </mat-icon>\n }\n <!-- Name -->\n <div id=\"user-name\">\n {{ services.authentication.authenticatedUser?.displayName }}\n </div>\n } @else {\n <mat-icon\n fontIcon=\"account_circle\"\n matTooltip=\"Login\"\n (click)=\"login()\">\n </mat-icon>\n }\n</div>", styles: ["#user-id{display:flex;height:2em;padding:.3em;font-family:Verdana,Geneva,Tahoma,sans-serif}#user-id>div{display:flex;align-items:center;height:100%;margin-left:.75em;font-size:1.15em}mat-icon{font-size:2em!important;height:2em!important;width:2em!important}img{border-radius:100%;width:2em;height:2em}\n", ".material-icons{font-family:Material Icons;font-weight:400;font-style:normal;font-size:24px;display:inline-block;line-height:1;text-transform:none;letter-spacing:normal;word-wrap:normal;white-space:nowrap;direction:ltr;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;-moz-osx-font-smoothing:grayscale;font-feature-settings:\"liga\"}\n"], dependencies: [{ kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] }); }
40
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: LoginComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
41
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.5", type: LoginComponent, isStandalone: true, selector: "cp-login", inputs: { adminGroup: { classPropertyName: "adminGroup", publicName: "adminGroup", isSignal: true, isRequired: false, transformFunction: null }, additionalInfo: { classPropertyName: "additionalInfo", publicName: "additionalInfo", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "<div id=\"user-id\">\n <!-- Logged out -->\n <!-- Logged in -->\n @if (services.authentication.authenticated) {\n <!-- With photo -->\n @if (services.authentication.authenticatedUser?.photoUrl) {\n <img\n id=\"authenticated-user-image\"\n [src]=\"services.authentication.authenticatedUser?.photoUrl\"\n matTooltip=\"Logout\"\n (click)=\"confirmLogout()\" />\n } @else {\n <!-- Without photo -->\n <mat-icon\n fontIcon=\"account_circle\"\n matTooltip=\"Logout\"\n (click)=\"confirmLogout()\">\n </mat-icon>\n }\n <!-- Name -->\n <div id=\"user-name\">\n {{ services.authentication.authenticatedUser?.displayName }}\n </div>\n } @else {\n <mat-icon\n fontIcon=\"account_circle\"\n matTooltip=\"Login\"\n (click)=\"login()\">\n </mat-icon>\n }\n</div>", styles: ["#user-id{display:flex;height:2em;padding:.3em;font-family:Verdana,Geneva,Tahoma,sans-serif}#user-id>div{display:flex;align-items:center;height:100%;margin-left:.75em;font-size:1.15em}mat-icon{font-size:2em!important;height:2em!important;width:2em!important}img{border-radius:100%;width:2em;height:2em}\n", ".material-icons{font-family:Material Icons;font-weight:400;font-style:normal;font-size:24px;display:inline-block;line-height:1;text-transform:none;letter-spacing:normal;word-wrap:normal;white-space:nowrap;direction:ltr;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;-moz-osx-font-smoothing:grayscale;font-feature-settings:\"liga\"}\n"], dependencies: [{ kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] }); }
42
42
  }
43
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: LoginComponent, decorators: [{
43
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: LoginComponent, decorators: [{
44
44
  type: Component,
45
45
  args: [{ selector: 'cp-login', standalone: true, imports: [
46
46
  MatIcon,