@cleavelandprice/ngx-lib 3.14.6 → 4.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -5
- package/active-directory/{public_api.d.ts → active-directory.api.d.ts} +2 -4
- package/active-directory/active-directory.module.d.ts +2 -2
- package/active-directory/index.d.ts +1 -1
- package/active-directory/{gui → material}/components/user-chooser/user-chooser.component.d.ts +11 -31
- package/active-directory/{gui → material}/components/user-form-field/user-form-field.component.d.ts +5 -8
- package/active-directory/{gui → material}/index.d.ts +2 -2
- package/active-directory/{gui/public_api.d.ts → material/mat-active-directory.api.d.ts} +1 -1
- package/active-directory/material/mat-active-directory.module.d.ts +25 -0
- package/active-directory/model/active-directory-service-options.d.ts +7 -0
- package/active-directory/services/active-directory.service.d.ts +7 -7
- package/authentication/{public_api.d.ts → authentication.api.d.ts} +1 -1
- package/authentication/authentication.base.module.d.ts +5 -1
- package/authentication/index.d.ts +1 -1
- package/authentication/{token/gui → material}/components/login/login.component.d.ts +6 -4
- package/authentication/{token/gui → material}/components/login-form/login-form.component.d.ts +9 -10
- package/authentication/material/index.d.ts +5 -0
- package/authentication/material/mat-authentication.api.d.ts +6 -0
- package/authentication/material/mat-authentication.module.d.ts +21 -0
- package/authentication/material/model/mat-authentication-service-options.d.ts +6 -0
- package/authentication/material/services/mat-authentication.service.d.ts +11 -0
- package/authentication/model/abstract-authentication-service.d.ts +4 -4
- package/authentication/model/authentication-service-options.d.ts +8 -0
- package/authentication/object/authentication-object.api.d.ts +2 -0
- package/authentication/object/authentication-object.module.d.ts +11 -0
- package/authentication/object/index.d.ts +1 -1
- package/authentication/object/services/authentication-object.service.d.ts +23 -0
- package/authentication/token/authentication-token.api.d.ts +4 -0
- package/authentication/token/authetiction-token.module.d.ts +11 -0
- package/authentication/token/index.d.ts +1 -1
- package/authentication/token/model/authentication-token-service-options.d.ts +6 -0
- package/authentication/token/services/authentication-token.service.d.ts +23 -0
- package/dialog/components/base/base.component.d.ts +3 -3
- package/dialog/components/choice/choice.component.d.ts +5 -3
- package/dialog/components/confirmation/confirmation.component.d.ts +5 -3
- package/dialog/components/input/input.component.d.ts +5 -3
- package/dialog/components/message/message.component.d.ts +5 -3
- package/dialog/dialog.module.d.ts +13 -13
- package/dialog/index.d.ts +1 -1
- package/esm2022/active-directory/active-directory.api.mjs +12 -0
- package/esm2022/active-directory/active-directory.module.mjs +20 -10
- package/esm2022/active-directory/cleavelandprice-ngx-lib-active-directory.mjs +2 -2
- package/esm2022/active-directory/material/cleavelandprice-ngx-lib-active-directory-material.mjs +5 -0
- package/esm2022/active-directory/material/components/user-chooser/user-chooser.component.mjs +406 -0
- package/esm2022/active-directory/material/components/user-form-field/user-form-field.component.mjs +136 -0
- package/esm2022/active-directory/material/mat-active-directory.api.mjs +9 -0
- package/esm2022/active-directory/material/mat-active-directory.module.mjs +109 -0
- package/esm2022/active-directory/material/model/selectable-group.mjs +2 -0
- package/esm2022/active-directory/material/model/selectable-user.mjs +2 -0
- package/esm2022/active-directory/material/model/user-chooser-data.mjs +33 -0
- package/esm2022/active-directory/material/model/user-chooser-filter-options.mjs +10 -0
- package/esm2022/active-directory/{gui → material}/model/user-chooser-mode.mjs +1 -1
- package/esm2022/active-directory/material/model/user-chooser-pre-processing-group.mjs +9 -0
- package/esm2022/active-directory/model/active-directory-service-options.mjs +3 -0
- package/esm2022/active-directory/services/active-directory.service.mjs +61 -41
- package/esm2022/authentication/authentication.api.mjs +6 -0
- package/esm2022/authentication/authentication.base.module.mjs +28 -7
- package/esm2022/authentication/cleavelandprice-ngx-lib-authentication.mjs +2 -2
- package/esm2022/authentication/material/cleavelandprice-ngx-lib-authentication-material.mjs +5 -0
- package/esm2022/authentication/material/components/login/login.component.mjs +49 -0
- package/esm2022/authentication/material/components/login-form/login-form.component.mjs +82 -0
- package/esm2022/authentication/material/mat-authentication.api.mjs +7 -0
- package/esm2022/authentication/material/mat-authentication.module.mjs +84 -0
- package/esm2022/authentication/material/model/login-form-data.mjs +2 -0
- package/esm2022/authentication/material/model/mat-authentication-service-options.mjs +3 -0
- package/esm2022/authentication/material/services/mat-authentication.service.mjs +67 -0
- package/esm2022/authentication/model/abstract-authentication-service.mjs +1 -1
- package/esm2022/authentication/model/authentication-service-options.mjs +3 -0
- package/esm2022/authentication/object/authentication-object.api.mjs +4 -0
- package/esm2022/authentication/object/authentication-object.module.mjs +40 -0
- package/esm2022/authentication/object/cleavelandprice-ngx-lib-authentication-object.mjs +2 -2
- package/esm2022/authentication/object/services/authentication-object.service.mjs +119 -0
- package/esm2022/authentication/token/authentication-token.api.mjs +5 -0
- package/esm2022/authentication/token/authetiction-token.module.mjs +40 -0
- package/esm2022/authentication/token/cleavelandprice-ngx-lib-authentication-token.mjs +2 -2
- package/esm2022/authentication/token/model/authentication-token-service-options.mjs +3 -0
- package/esm2022/authentication/token/services/authentication-token.service.mjs +128 -0
- package/esm2022/dialog/cleavelandprice-ngx-lib-dialog.mjs +2 -2
- package/esm2022/dialog/components/base/base.component.mjs +27 -16
- package/esm2022/dialog/components/choice/choice.component.mjs +11 -11
- package/esm2022/dialog/components/confirmation/confirmation.component.mjs +11 -11
- package/esm2022/dialog/components/input/input.component.mjs +11 -11
- package/esm2022/dialog/components/message/message.component.mjs +11 -11
- package/esm2022/dialog/dialog.api.mjs +20 -0
- package/esm2022/dialog/dialog.module.mjs +25 -20
- package/esm2022/lib/model/caching-config.mjs +2 -0
- package/esm2022/lib/model/credentials.mjs +2 -0
- package/esm2022/lib/model/logging-config.mjs +2 -0
- package/esm2022/lib/model/service-options.mjs +3 -0
- package/esm2022/lib/ngx-lib.module.mjs +20 -10
- package/esm2022/lib/services/app-path-config.service.mjs +31 -24
- package/esm2022/lib/services/service-base.mjs +26 -0
- package/esm2022/msgraph/cleavelandprice-ngx-lib-msgraph.mjs +2 -2
- package/esm2022/msgraph/msgraph.api.mjs +19 -0
- package/esm2022/msgraph/msgraph.module.mjs +6 -11
- package/esm2022/public_api.mjs +6 -2
- package/esm2022/quill/cleavelandprice-ngx-lib-quill.mjs +2 -2
- package/esm2022/quill/components/editor/editor.component.mjs +29 -39
- package/esm2022/quill/components/raw/raw.component.mjs +18 -11
- package/esm2022/quill/mention/cleavelandprice-ngx-lib-quill-mention.mjs +2 -2
- package/esm2022/quill/mention/components/editor/editor.component.mjs +20 -14
- package/esm2022/quill/mention/quill-mention.api.mjs +8 -0
- package/esm2022/quill/mention/quill-mention.module.mjs +12 -12
- package/esm2022/quill/quill.api.mjs +9 -0
- package/esm2022/quill/quill.module.mjs +20 -18
- package/esm2022/sharepoint/cleavelandprice-ngx-lib-sharepoint.mjs +2 -2
- package/esm2022/sharepoint/components/user-photo/user-photo.component.mjs +13 -9
- package/esm2022/sharepoint/model/sharepoint-service-options.mjs +3 -0
- package/esm2022/sharepoint/pipes/user-photo-url.pipe.mjs +8 -9
- package/esm2022/sharepoint/services/sharepoint.service.mjs +74 -65
- package/esm2022/sharepoint/sharepoint.api.mjs +17 -0
- package/esm2022/sharepoint/sharepoint.module.mjs +25 -15
- package/esm2022/table/cleavelandprice-ngx-lib-table.mjs +2 -2
- package/esm2022/table/components/table/table.component.mjs +76 -74
- package/esm2022/table/table.api.mjs +4 -0
- package/esm2022/table/table.module.mjs +16 -15
- package/esm2022/upload/cleavelandprice-ngx-lib-upload.mjs +2 -2
- package/esm2022/upload/components/upload/upload.component.mjs +16 -20
- package/esm2022/upload/components/upload-dialog/upload-dialog.component.mjs +49 -39
- package/esm2022/upload/model/upload-service-options.mjs +4 -0
- package/esm2022/upload/model/upload-status.mjs +2 -0
- package/esm2022/upload/services/upload.service.mjs +44 -29
- package/esm2022/upload/upload.api.mjs +9 -0
- package/esm2022/upload/upload.module.mjs +33 -20
- package/esm2022/url-utilities/cleavelandprice-ngx-lib-url-utilities.mjs +2 -2
- package/esm2022/url-utilities/pipes/safe-resource-url.pipe.mjs +8 -9
- package/esm2022/url-utilities/pipes/safe-url.pipe.mjs +8 -9
- package/esm2022/url-utilities/pipes/uri-scheme.pipe.mjs +9 -8
- package/esm2022/url-utilities/url-utilities.api.mjs +13 -0
- package/esm2022/url-utilities/url-utilities.module.mjs +11 -11
- package/fesm2022/cleavelandprice-ngx-lib-active-directory-material.mjs +683 -0
- package/fesm2022/cleavelandprice-ngx-lib-active-directory-material.mjs.map +1 -0
- package/fesm2022/cleavelandprice-ngx-lib-active-directory.mjs +79 -72
- package/fesm2022/cleavelandprice-ngx-lib-active-directory.mjs.map +1 -1
- package/fesm2022/cleavelandprice-ngx-lib-authentication-material.mjs +268 -0
- package/fesm2022/cleavelandprice-ngx-lib-authentication-material.mjs.map +1 -0
- package/fesm2022/cleavelandprice-ngx-lib-authentication-object.mjs +54 -49
- package/fesm2022/cleavelandprice-ngx-lib-authentication-object.mjs.map +1 -1
- package/fesm2022/cleavelandprice-ngx-lib-authentication-token.mjs +50 -51
- package/fesm2022/cleavelandprice-ngx-lib-authentication-token.mjs.map +1 -1
- package/fesm2022/cleavelandprice-ngx-lib-authentication.mjs +28 -18
- package/fesm2022/cleavelandprice-ngx-lib-authentication.mjs.map +1 -1
- package/fesm2022/cleavelandprice-ngx-lib-dialog.mjs +87 -66
- package/fesm2022/cleavelandprice-ngx-lib-dialog.mjs.map +1 -1
- package/fesm2022/cleavelandprice-ngx-lib-msgraph.mjs +5 -10
- package/fesm2022/cleavelandprice-ngx-lib-msgraph.mjs.map +1 -1
- package/fesm2022/cleavelandprice-ngx-lib-quill-mention.mjs +29 -26
- package/fesm2022/cleavelandprice-ngx-lib-quill-mention.mjs.map +1 -1
- package/fesm2022/cleavelandprice-ngx-lib-quill.mjs +61 -67
- package/fesm2022/cleavelandprice-ngx-lib-quill.mjs.map +1 -1
- package/fesm2022/cleavelandprice-ngx-lib-sharepoint.mjs +115 -118
- package/fesm2022/cleavelandprice-ngx-lib-sharepoint.mjs.map +1 -1
- package/fesm2022/cleavelandprice-ngx-lib-table.mjs +85 -90
- package/fesm2022/cleavelandprice-ngx-lib-table.mjs.map +1 -1
- package/fesm2022/cleavelandprice-ngx-lib-upload.mjs +134 -117
- package/fesm2022/cleavelandprice-ngx-lib-upload.mjs.map +1 -1
- package/fesm2022/cleavelandprice-ngx-lib-url-utilities.mjs +38 -33
- package/fesm2022/cleavelandprice-ngx-lib-url-utilities.mjs.map +1 -1
- package/fesm2022/cleavelandprice-ngx-lib.mjs +66 -45
- package/fesm2022/cleavelandprice-ngx-lib.mjs.map +1 -1
- package/lib/model/caching-config.d.ts +4 -0
- package/lib/model/credentials.d.ts +4 -0
- package/lib/model/logging-config.d.ts +6 -0
- package/lib/model/service-options.d.ts +6 -0
- package/lib/ngx-lib.module.d.ts +2 -2
- package/lib/services/app-path-config.service.d.ts +5 -4
- package/lib/services/service-base.d.ts +7 -0
- package/msgraph/index.d.ts +1 -1
- package/msgraph/msgraph.module.d.ts +0 -2
- package/package.json +27 -27
- package/public_api.d.ts +5 -1
- package/quill/components/editor/editor.component.d.ts +10 -10
- package/quill/components/raw/raw.component.d.ts +1 -1
- package/quill/index.d.ts +1 -1
- package/quill/mention/components/editor/editor.component.d.ts +3 -3
- package/quill/mention/index.d.ts +1 -1
- package/quill/mention/quill-mention.module.d.ts +9 -9
- package/quill/quill.module.d.ts +12 -14
- package/sharepoint/components/user-photo/user-photo.component.d.ts +2 -2
- package/sharepoint/index.d.ts +1 -1
- package/sharepoint/model/sharepoint-service-options.d.ts +19 -0
- package/sharepoint/pipes/user-photo-url.pipe.d.ts +2 -2
- package/sharepoint/services/sharepoint.service.d.ts +7 -10
- package/sharepoint/{public_api.d.ts → sharepoint.api.d.ts} +1 -1
- package/sharepoint/sharepoint.module.d.ts +6 -6
- package/table/components/table/table.component.d.ts +21 -22
- package/table/index.d.ts +1 -1
- package/table/table.module.d.ts +13 -13
- package/upload/components/upload/upload.component.d.ts +4 -8
- package/upload/components/upload-dialog/upload-dialog.component.d.ts +11 -9
- package/upload/index.d.ts +1 -1
- package/upload/model/upload-service-options.d.ts +16 -0
- package/upload/model/upload-status.d.ts +6 -0
- package/upload/services/upload.service.d.ts +9 -6
- package/upload/{public_api.d.ts → upload.api.d.ts} +2 -2
- package/upload/upload.module.d.ts +10 -10
- package/url-utilities/index.d.ts +1 -1
- package/url-utilities/pipes/safe-resource-url.pipe.d.ts +2 -2
- package/url-utilities/pipes/safe-url.pipe.d.ts +2 -2
- package/url-utilities/pipes/uri-scheme.pipe.d.ts +2 -3
- package/url-utilities/url-utilities.api.d.ts +8 -0
- package/url-utilities/url-utilities.module.d.ts +5 -5
- package/active-directory/gui/gui.module.d.ts +0 -25
- package/active-directory/model/caching-config.d.ts +0 -4
- package/active-directory/model/logging-config.d.ts +0 -6
- package/active-directory/model/service-config.d.ts +0 -8
- package/authentication/model/service-config.d.ts +0 -8
- package/authentication/object/model/service-config.d.ts +0 -4
- package/authentication/object/object.module.d.ts +0 -11
- package/authentication/object/public_api.d.ts +0 -3
- package/authentication/object/services/authentication.service.d.ts +0 -23
- package/authentication/token/gui/index.d.ts +0 -5
- package/authentication/token/gui/model/service-config.d.ts +0 -5
- package/authentication/token/gui/public_api.d.ts +0 -6
- package/authentication/token/gui/services/authentication.service.d.ts +0 -12
- package/authentication/token/gui/token-gui.module.d.ts +0 -21
- package/authentication/token/model/service-config.d.ts +0 -5
- package/authentication/token/public_api.d.ts +0 -4
- package/authentication/token/services/authentication.service.d.ts +0 -23
- package/authentication/token/token.module.d.ts +0 -11
- package/esm2022/active-directory/gui/cleavelandprice-ngx-lib-active-directory-gui.mjs +0 -5
- package/esm2022/active-directory/gui/components/user-chooser/user-chooser.component.mjs +0 -393
- package/esm2022/active-directory/gui/components/user-form-field/user-form-field.component.mjs +0 -132
- package/esm2022/active-directory/gui/gui.module.mjs +0 -96
- package/esm2022/active-directory/gui/model/selectable-group.mjs +0 -2
- package/esm2022/active-directory/gui/model/selectable-user.mjs +0 -2
- package/esm2022/active-directory/gui/model/user-chooser-data.mjs +0 -33
- package/esm2022/active-directory/gui/model/user-chooser-filter-options.mjs +0 -10
- package/esm2022/active-directory/gui/model/user-chooser-pre-processing-group.mjs +0 -9
- package/esm2022/active-directory/gui/public_api.mjs +0 -9
- package/esm2022/active-directory/model/caching-config.mjs +0 -7
- package/esm2022/active-directory/model/logging-config.mjs +0 -9
- package/esm2022/active-directory/model/service-config.mjs +0 -12
- package/esm2022/active-directory/public_api.mjs +0 -12
- package/esm2022/authentication/model/service-config.mjs +0 -12
- package/esm2022/authentication/object/model/service-config.mjs +0 -9
- package/esm2022/authentication/object/object.module.mjs +0 -39
- package/esm2022/authentication/object/public_api.mjs +0 -4
- package/esm2022/authentication/object/services/authentication.service.mjs +0 -110
- package/esm2022/authentication/public_api.mjs +0 -6
- package/esm2022/authentication/token/gui/cleavelandprice-ngx-lib-authentication-token-gui.mjs +0 -5
- package/esm2022/authentication/token/gui/components/login/login.component.mjs +0 -43
- package/esm2022/authentication/token/gui/components/login-form/login-form.component.mjs +0 -72
- package/esm2022/authentication/token/gui/model/login-form-data.mjs +0 -2
- package/esm2022/authentication/token/gui/model/service-config.mjs +0 -10
- package/esm2022/authentication/token/gui/public_api.mjs +0 -7
- package/esm2022/authentication/token/gui/services/authentication.service.mjs +0 -78
- package/esm2022/authentication/token/gui/token-gui.module.mjs +0 -81
- package/esm2022/authentication/token/model/service-config.mjs +0 -10
- package/esm2022/authentication/token/public_api.mjs +0 -5
- package/esm2022/authentication/token/services/authentication.service.mjs +0 -124
- package/esm2022/authentication/token/token.module.mjs +0 -39
- package/esm2022/dialog/public_api.mjs +0 -10
- package/esm2022/lib/model/service-config.mjs +0 -21
- package/esm2022/msgraph/public_api.mjs +0 -19
- package/esm2022/quill/mention/public_api.mjs +0 -8
- package/esm2022/quill/public_api.mjs +0 -9
- package/esm2022/sharepoint/model/service-config.mjs +0 -27
- package/esm2022/sharepoint/public_api.mjs +0 -17
- package/esm2022/table/public_api.mjs +0 -4
- package/esm2022/upload/model/service-config.mjs +0 -16
- package/esm2022/upload/public_api.mjs +0 -9
- package/esm2022/url-utilities/public_api.mjs +0 -5
- package/fesm2022/cleavelandprice-ngx-lib-active-directory-gui.mjs +0 -660
- package/fesm2022/cleavelandprice-ngx-lib-active-directory-gui.mjs.map +0 -1
- package/fesm2022/cleavelandprice-ngx-lib-authentication-token-gui.mjs +0 -271
- package/fesm2022/cleavelandprice-ngx-lib-authentication-token-gui.mjs.map +0 -1
- package/lib/model/service-config.d.ts +0 -6
- package/sharepoint/model/service-config.d.ts +0 -23
- package/upload/model/service-config.d.ts +0 -15
- package/url-utilities/public_api.d.ts +0 -4
- /package/active-directory/{gui → material}/model/selectable-group.d.ts +0 -0
- /package/active-directory/{gui → material}/model/selectable-user.d.ts +0 -0
- /package/active-directory/{gui → material}/model/user-chooser-data.d.ts +0 -0
- /package/active-directory/{gui → material}/model/user-chooser-filter-options.d.ts +0 -0
- /package/active-directory/{gui → material}/model/user-chooser-mode.d.ts +0 -0
- /package/active-directory/{gui → material}/model/user-chooser-pre-processing-group.d.ts +0 -0
- /package/authentication/{token/gui → material}/model/login-form-data.d.ts +0 -0
- /package/dialog/{public_api.d.ts → dialog.api.d.ts} +0 -0
- /package/msgraph/{public_api.d.ts → msgraph.api.d.ts} +0 -0
- /package/quill/mention/{public_api.d.ts → quill-mention.api.d.ts} +0 -0
- /package/quill/{public_api.d.ts → quill.api.d.ts} +0 -0
- /package/table/{public_api.d.ts → table.api.d.ts} +0 -0
package/esm2022/active-directory/gui/components/user-form-field/user-form-field.component.mjs
DELETED
|
@@ -1,132 +0,0 @@
|
|
|
1
|
-
import { Component, EventEmitter, inject, input, Output } from '@angular/core';
|
|
2
|
-
import { MatDialog } from '@angular/material/dialog';
|
|
3
|
-
import { forkJoin, of } from 'rxjs';
|
|
4
|
-
import { ActiveDirectoryService } from '@cleavelandprice/ngx-lib/active-directory';
|
|
5
|
-
import { SharePointService } from '@cleavelandprice/ngx-lib/sharepoint';
|
|
6
|
-
import { UserChooserData } from '../../model/user-chooser-data';
|
|
7
|
-
import { UserChooserComponent } from '../user-chooser/user-chooser.component';
|
|
8
|
-
import * as i0 from "@angular/core";
|
|
9
|
-
import * as i1 from "@angular/material/button";
|
|
10
|
-
import * as i2 from "@angular/material/form-field";
|
|
11
|
-
import * as i3 from "@angular/material/icon";
|
|
12
|
-
import * as i4 from "@angular/material/input";
|
|
13
|
-
import * as i5 from "@angular/material/list";
|
|
14
|
-
import * as i6 from "@angular/material/progress-bar";
|
|
15
|
-
export class UserFormFieldComponent {
|
|
16
|
-
constructor() {
|
|
17
|
-
//#region Fields
|
|
18
|
-
//#region Services
|
|
19
|
-
this.dialog = inject(MatDialog);
|
|
20
|
-
this.activeDirectoryService = inject(ActiveDirectoryService);
|
|
21
|
-
this.sharePointService = inject(SharePointService);
|
|
22
|
-
//#endregion
|
|
23
|
-
this.usersSelected = new EventEmitter(); // string for Single mode, string[] for multi
|
|
24
|
-
this.userUnSelected = new EventEmitter();
|
|
25
|
-
this.placeholder = input('Select User(s)');
|
|
26
|
-
this.clickable = input(true);
|
|
27
|
-
this.userChooserData = input.required();
|
|
28
|
-
this.accountNames = [];
|
|
29
|
-
}
|
|
30
|
-
//#endregion
|
|
31
|
-
//#region Properties
|
|
32
|
-
/*get isEdge(): boolean {
|
|
33
|
-
return window.navigator.userAgent.indexOf('Edge') > -1;
|
|
34
|
-
}*/
|
|
35
|
-
//#endregion
|
|
36
|
-
//#region Lifecycle
|
|
37
|
-
ngOnInit() {
|
|
38
|
-
this._userChooserData = {
|
|
39
|
-
...new UserChooserData(),
|
|
40
|
-
...this.userChooserData()
|
|
41
|
-
};
|
|
42
|
-
// If users have been pre-selected in the config, store those in accountNames, which drives the UI of this component
|
|
43
|
-
this.accountNames = this._userChooserData.preSelections.accountNames;
|
|
44
|
-
this.getData();
|
|
45
|
-
}
|
|
46
|
-
//#endregion
|
|
47
|
-
//#region Events
|
|
48
|
-
selectUser() {
|
|
49
|
-
if (!this.clickable()) {
|
|
50
|
-
return;
|
|
51
|
-
}
|
|
52
|
-
const data = {
|
|
53
|
-
...this._userChooserData,
|
|
54
|
-
users: this.users,
|
|
55
|
-
photos: this.photos,
|
|
56
|
-
};
|
|
57
|
-
this.dialog.open(UserChooserComponent, {
|
|
58
|
-
data: data
|
|
59
|
-
})
|
|
60
|
-
.afterClosed()
|
|
61
|
-
.subscribe((selected) => {
|
|
62
|
-
if (!selected) {
|
|
63
|
-
return;
|
|
64
|
-
}
|
|
65
|
-
this.accountNames = Array.isArray(selected) ?
|
|
66
|
-
selected :
|
|
67
|
-
[selected];
|
|
68
|
-
// Overwrite what may have been passed in, for subsequent launches of UserChooserComponent - otherwise it just keeps getting fed stale data
|
|
69
|
-
this._userChooserData.preSelections.accountNames = this.accountNames;
|
|
70
|
-
this.usersSelected.emit(selected);
|
|
71
|
-
});
|
|
72
|
-
}
|
|
73
|
-
unSelectUser(accountName) {
|
|
74
|
-
const index = this.accountNames.findIndex(a => a === accountName);
|
|
75
|
-
this.accountNames.splice(index, 1);
|
|
76
|
-
this._userChooserData.preSelections.accountNames = this.accountNames;
|
|
77
|
-
this.userUnSelected.emit(accountName);
|
|
78
|
-
}
|
|
79
|
-
//#endregion
|
|
80
|
-
//#region Utilities
|
|
81
|
-
getData() {
|
|
82
|
-
forkJoin([
|
|
83
|
-
this._userChooserData.users ?
|
|
84
|
-
// Users were passed in
|
|
85
|
-
of(this._userChooserData.users) :
|
|
86
|
-
// Users need to be retrieved
|
|
87
|
-
this.activeDirectoryService.getUsers(false, this._userChooserData.includeDisabledUsers, this._userChooserData.parentOu),
|
|
88
|
-
this._userChooserData.groups ?
|
|
89
|
-
// Groups were passed in
|
|
90
|
-
of(this._userChooserData.groups) :
|
|
91
|
-
// Groups need to be retrieved
|
|
92
|
-
this.activeDirectoryService.getGroups(this._userChooserData.parentOu),
|
|
93
|
-
this._userChooserData.photos ?
|
|
94
|
-
// Photos were passed in
|
|
95
|
-
of(this._userChooserData.photos) :
|
|
96
|
-
// Photos need to be retrieved
|
|
97
|
-
this.sharePointService.getPhotos()
|
|
98
|
-
])
|
|
99
|
-
.subscribe(([users, groups, photos]) => {
|
|
100
|
-
this.users = users;
|
|
101
|
-
this.groups = groups;
|
|
102
|
-
this.photos = photos;
|
|
103
|
-
});
|
|
104
|
-
}
|
|
105
|
-
getUser(accountName) {
|
|
106
|
-
return this.users?.find(u => u.sAMAccountName.toLowerCase() === accountName.toLowerCase());
|
|
107
|
-
}
|
|
108
|
-
getGroup(accountName) {
|
|
109
|
-
return this.groups?.find(g => g.sAMAccountName.toLowerCase() === accountName.toLowerCase());
|
|
110
|
-
}
|
|
111
|
-
getPhoto(accountName) {
|
|
112
|
-
const user = this.getUser(accountName);
|
|
113
|
-
if (!user) {
|
|
114
|
-
return undefined;
|
|
115
|
-
}
|
|
116
|
-
return this.photos?.find(p => (p.employeeNumber && p.employeeNumber.toString() === user.employeeNumber) ||
|
|
117
|
-
p.accountName?.toLowerCase() === user.sAMAccountName.toLowerCase() ||
|
|
118
|
-
p.displayName?.toLowerCase() === user.displayName.toLowerCase() ||
|
|
119
|
-
p.title?.toLowerCase() === user.displayName.toLowerCase())?.encodedAbsUrl;
|
|
120
|
-
}
|
|
121
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: UserFormFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
122
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.0", type: UserFormFieldComponent, 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: "\r\n<!-- In Microsoft Edge, selectUser() never gets called if the input fields are disabled\r\nSo... I'm dynamically setting the disabled property based on whether or not the browser is Edge.\r\nIt's definitely a better experience if the field IS disabled.\r\nOtherwise, it's confusing - especially because Edge is SO SLOW to display the resulting dialog window.\r\n-->\r\n<!-- Update 8/24/2023:\r\nThe above problem also exists in Chrome now.\r\nSo instead of dynamically setting [disabled] based on browser type,\r\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/\r\n-->\r\n\r\n@if (users && photos) {\r\n <div (click)=\"selectUser()\" [class.clickable]=\"clickable()\">\r\n @if (accountNames.length) {\r\n <div\r\n [class.grid]=\"accountNames.length > 1\"\r\n [class.three]=\"accountNames.length > 2\"\r\n [class.four]=\"accountNames.length > 3\"\r\n [class.five]=\"accountNames.length > 4\">\r\n @for (accountName of accountNames; track accountName; let i = $index) {\r\n <div class=\"user\">\r\n <!--<img *ngIf=\"accountName && empUtils.getEmployee(accountName)\" alt=\"\" [src]=\"empUtils.getEmployee(accountName) | employeePhotoUrl:cacheService.photos\">-->\r\n @if (getPhoto(accountName)) {\r\n <img matListItemAvatar alt=\"\" [src]=\"getPhoto(accountName)\">\r\n }\r\n @if (getGroup(accountName)) {\r\n <mat-icon>group</mat-icon>\r\n }\r\n <mat-form-field>\r\n <!-- [disabled]=\"!isEdge\" -->\r\n <input matInput disabled [placeholder]=\"i === 0 ? placeholder() : ''\"\r\n [value]=\"getUser(accountName) ? getUser(accountName)?.displayName : getGroup(accountName) ? getGroup(accountName)?.displayName : accountName\">\r\n <button matSuffix mat-icon-button aria-label=\"Clear\" (click)=\"$event.stopPropagation(); unSelectUser(accountName)\">\r\n <mat-icon fontIcon=\"close\"/>\r\n </button>\r\n </mat-form-field>\r\n </div>\r\n }\r\n </div>\r\n } @else {\r\n <mat-form-field>\r\n <input matInput disabled [placeholder]=\"placeholder()\"> <!-- [disabled]=\"!isEdge\" -->\r\n </mat-form-field>\r\n }\r\n </div>\r\n} @else {\r\n <mat-progress-bar mode=\"indeterminate\"/>\r\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: i1.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i4.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: "directive", type: i5.MatListItemAvatar, selector: "[matListItemAvatar]" }, { kind: "component", type: i6.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }] }); }
|
|
123
|
-
}
|
|
124
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: UserFormFieldComponent, decorators: [{
|
|
125
|
-
type: Component,
|
|
126
|
-
args: [{ selector: 'cp-user-field', template: "\r\n<!-- In Microsoft Edge, selectUser() never gets called if the input fields are disabled\r\nSo... I'm dynamically setting the disabled property based on whether or not the browser is Edge.\r\nIt's definitely a better experience if the field IS disabled.\r\nOtherwise, it's confusing - especially because Edge is SO SLOW to display the resulting dialog window.\r\n-->\r\n<!-- Update 8/24/2023:\r\nThe above problem also exists in Chrome now.\r\nSo instead of dynamically setting [disabled] based on browser type,\r\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/\r\n-->\r\n\r\n@if (users && photos) {\r\n <div (click)=\"selectUser()\" [class.clickable]=\"clickable()\">\r\n @if (accountNames.length) {\r\n <div\r\n [class.grid]=\"accountNames.length > 1\"\r\n [class.three]=\"accountNames.length > 2\"\r\n [class.four]=\"accountNames.length > 3\"\r\n [class.five]=\"accountNames.length > 4\">\r\n @for (accountName of accountNames; track accountName; let i = $index) {\r\n <div class=\"user\">\r\n <!--<img *ngIf=\"accountName && empUtils.getEmployee(accountName)\" alt=\"\" [src]=\"empUtils.getEmployee(accountName) | employeePhotoUrl:cacheService.photos\">-->\r\n @if (getPhoto(accountName)) {\r\n <img matListItemAvatar alt=\"\" [src]=\"getPhoto(accountName)\">\r\n }\r\n @if (getGroup(accountName)) {\r\n <mat-icon>group</mat-icon>\r\n }\r\n <mat-form-field>\r\n <!-- [disabled]=\"!isEdge\" -->\r\n <input matInput disabled [placeholder]=\"i === 0 ? placeholder() : ''\"\r\n [value]=\"getUser(accountName) ? getUser(accountName)?.displayName : getGroup(accountName) ? getGroup(accountName)?.displayName : accountName\">\r\n <button matSuffix mat-icon-button aria-label=\"Clear\" (click)=\"$event.stopPropagation(); unSelectUser(accountName)\">\r\n <mat-icon fontIcon=\"close\"/>\r\n </button>\r\n </mat-form-field>\r\n </div>\r\n }\r\n </div>\r\n } @else {\r\n <mat-form-field>\r\n <input matInput disabled [placeholder]=\"placeholder()\"> <!-- [disabled]=\"!isEdge\" -->\r\n </mat-form-field>\r\n }\r\n </div>\r\n} @else {\r\n <mat-progress-bar mode=\"indeterminate\"/>\r\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"] }]
|
|
127
|
-
}], propDecorators: { usersSelected: [{
|
|
128
|
-
type: Output
|
|
129
|
-
}], userUnSelected: [{
|
|
130
|
-
type: Output
|
|
131
|
-
}] } });
|
|
132
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1mb3JtLWZpZWxkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsZWF2ZWxhbmRwcmljZS9uZ3gtbGliL2FjdGl2ZS1kaXJlY3RvcnkvZ3VpL3NyYy9jb21wb25lbnRzL3VzZXItZm9ybS1maWVsZC91c2VyLWZvcm0tZmllbGQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xlYXZlbGFuZHByaWNlL25neC1saWIvYWN0aXZlLWRpcmVjdG9yeS9ndWkvc3JjL2NvbXBvbmVudHMvdXNlci1mb3JtLWZpZWxkL3VzZXItZm9ybS1maWVsZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDckQsT0FBTyxFQUFFLFFBQVEsRUFBRSxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFcEMsT0FBTyxFQUFFLHNCQUFzQixFQUFxQixNQUFNLDJDQUEyQyxDQUFDO0FBQ3RHLE9BQU8sRUFBYSxpQkFBaUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBRW5GLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUVoRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQzs7Ozs7Ozs7QUFPOUUsTUFBTSxPQUFPLHNCQUFzQjtJQUxuQztRQU1FLGdCQUFnQjtRQUNoQixrQkFBa0I7UUFDVixXQUFNLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzNCLDJCQUFzQixHQUFHLE1BQU0sQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO1FBQ3hELHNCQUFpQixHQUFH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QUFFLEtBQUssV0FBVyxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7SUFDOUYsQ0FBQztJQUVELFFBQVEsQ0FBQyxXQUFtQjtRQUMxQixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ3ZDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUFDLE9BQU8sU0FBUyxDQUFDO1FBQUMsQ0FBQztRQUVoQyxPQUFPLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQzNCLENBQUMsQ0FBQyxDQUFDLGNBQWMsSUFBSSxDQUFDLENBQUMsY0FBYyxDQUFDLFFBQVEsRUFBRSxLQUFLLElBQUksQ0FBQyxjQUFjLENBQUM7WUFDekUsQ0FBQyxDQUFDLFdBQVcsRUFBRSxXQUFXLEVBQUUsS0FBSyxJQUFJLENBQUMsY0FBYyxDQUFDLFdBQVcsRUFBRTtZQUNsRSxDQUFDLENBQUMsV0FBVyxFQUFFLFdBQVcsRUFBRSxLQUFLLElBQUksQ0FBQyxXQUFXLENBQUMsV0FBVyxFQUFFO1lBQy9ELENBQUMsQ0FBQyxLQUFLLEVBQUUsV0FBVyxFQUFFLEtBQUssSUFBSSxDQUFDLFdBQVcsQ0FBQyxXQUFXLEVBQUUsQ0FDMUQsRUFBRSxhQUFhLENBQUM7SUFDbkIsQ0FBQzs4R0E5SFUsc0JBQXNCO2tHQUF0QixzQkFBc0IsbWpCQ2hCbkMseTVFQWdEQzs7MkZEaENZLHNCQUFzQjtrQkFMbEMsU0FBUzsrQkFDRSxlQUFlOzhCQVdmLGFBQWE7c0JBQXRCLE1BQU07Z0JBQ0csY0FBYztzQkFBdkIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBpbmplY3QsIGlucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBNYXREaWFsb2cgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xyXG5pbXBvcnQgeyBmb3JrSm9pbiwgb2YgfSBmcm9tICdyeGpzJztcclxuXHJcbmltcG9ydCB7IEFjdGl2ZURpcmVjdG9yeVNlcnZpY2UsIFVzZXIsIFVzZXJPckdyb3VwIH0gZnJvbSAnQGNsZWF2ZWxhbmRwcmljZS9uZ3gtbGliL2FjdGl2ZS1kaXJlY3RvcnknO1xyXG5pbXBvcnQgeyBQaG90b0l0ZW0sIFNoYXJlUG9pbnRTZXJ2aWNlIH0gZnJvbSAnQGNsZWF2ZWxhbmRwcmljZS9uZ3gtbGliL3NoYXJlcG9pbnQnO1xyXG5cclxuaW1wb3J0IHsgVXNlckNob29zZXJEYXRhIH0gZnJvbSAnLi4vLi4vbW9kZWwvdXNlci1jaG9vc2VyLWRhdGEnO1xyXG5cclxuaW1wb3J0IHsgVXNlckNob29zZXJDb21wb25lbnQgfSBmcm9tICcuLi91c2VyLWNob29zZXIvdXNlci1jaG9vc2VyLmNvbXBvbmVudCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2NwLXVzZXItZmllbGQnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi91c2VyLWZvcm0tZmllbGQuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3VzZXItZm9ybS1maWVsZC5jb21wb25lbnQuY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIFVzZXJGb3JtRmllbGRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIC8vI3JlZ2lvbiBGaWVsZHNcclxuICAvLyNyZWdpb24gU2VydmljZXNcclxuICBwcml2YXRlIGRpYWxvZyA9IGluamVjdChNYXREaWFsb2cpO1xyXG4gIHByaXZhdGUgYWN0aXZlRGlyZWN0b3J5U2VydmljZSA9IGluamVjdChBY3RpdmVEaXJlY3RvcnlTZXJ2aWNlKTtcclxuICBwcml2YXRlIHNoYXJlUG9pbnRTZXJ2aWNlID0gaW5qZWN0KFNoYXJlUG9pbnRTZXJ2aWNlKTtcclxuICAvLyNlbmRyZWdpb25cclxuICBAT3V0cHV0KCkgdXNlcnNTZWxlY3RlZCA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nIHwgc3RyaW5nW10+KCk7IC8vIHN0cmluZyBmb3IgU2luZ2xlIG1vZGUsIHN0cmluZ1tdIGZvciBtdWx0aVxyXG4gIEBPdXRwdXQoKSB1c2VyVW5TZWxlY3RlZCA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xyXG4gIHBsYWNlaG9sZGVyID0gaW5wdXQoJ1NlbGVjdCBVc2VyKHMpJyk7XHJcbiAgY2xpY2thYmxlID0gaW5wdXQodHJ1ZSk7XHJcbiAgdXNlckNob29zZXJEYXRhID0gaW5wdXQucmVxdWlyZWQ8VXNlckNob29zZXJEYXRhPigpO1xyXG4gIF91c2VyQ2hvb3NlckRhdGEhOiBVc2VyQ2hvb3NlckRhdGE7XHJcblxyXG4gIGFjY291bnROYW1lczogc3RyaW5nW10gPSBbXTtcclxuXHJcbiAgdXNlcnM/OiBVc2VyW107XHJcbiAgZ3JvdXBzPzogVXNlck9yR3JvdXBbXTtcclxuICBwaG90b3M/OiBQaG90b0l0ZW1bXTtcclxuICAvLyNlbmRyZWdpb25cclxuXHJcbiAgLy8jcmVnaW9uIFByb3BlcnRpZXNcclxuICAvKmdldCBpc0VkZ2UoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gd2luZG93Lm5hdmlnYXRvci51c2VyQWdlbnQuaW5kZXhPZignRWRnZScpID4gLTE7XHJcbiAgfSovXHJcbiAgLy8jZW5kcmVnaW9uXHJcbiAgXHJcbiAgLy8jcmVnaW9uIExpZmVjeWNsZVxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5fdXNlckNob29zZXJEYXRhID0ge1xyXG4gICAgICAuLi5uZXcgVXNlckNob29zZXJEYXRhKCksXHJcbiAgICAgIC4uLnRoaXMudXNlckNob29zZXJEYXRhKClcclxuICAgIH1cclxuXHJcbiAgICAvLyBJZiB1c2VycyBoYXZlIGJlZW4gcHJlLXNlbGVjdGVkIGluIHRoZSBjb25maWcsIHN0b3JlIHRob3NlIGluIGFjY291bnROYW1lcywgd2hpY2ggZHJpdmVzIHRoZSBVSSBvZiB0aGlzIGNvbXBvbmVudFxyXG4gICAgdGhpcy5hY2NvdW50TmFtZXMgPSB0aGlzLl91c2VyQ2hvb3NlckRhdGEucHJlU2VsZWN0aW9ucy5hY2NvdW50TmFtZXM7XHJcblxyXG4gICAgdGhpcy5nZXREYXRhKCk7XHJcbiAgfVxyXG4gIC8vI2VuZHJlZ2lvblxyXG5cclxuICAvLyNyZWdpb24gRXZlbnRzXHJcbiAgc2VsZWN0VXNlcigpOiB2b2lkIHtcclxuICAgIGlmICghdGhpcy5jbGlja2FibGUoKSkgeyByZXR1cm47IH1cclxuXHJcbiAgICBjb25zdCBkYXRhOiBVc2VyQ2hvb3NlckRhdGEgPSB7XHJcbiAgICAgIC4uLnRoaXMuX3VzZXJDaG9vc2VyRGF0YSxcclxuXHJcbiAgICAgIHVzZXJzOiB0aGlzLnVzZXJzLFxyXG4gICAgICBwaG90b3M6IHRoaXMucGhvdG9zLFxyXG4gICAgfTtcclxuXHJcbiAgICB0aGlzLmRpYWxvZy5vcGVuKFVzZXJDaG9vc2VyQ29tcG9uZW50LCB7XHJcbiAgICAgIGRhdGE6IGRhdGFcclxuICAgIH0pXHJcbiAgICAuYWZ0ZXJDbG9zZWQoKVxyXG4gICAgLnN1YnNjcmliZSgoc2VsZWN0ZWQ6IHN0cmluZyB8IHN0cmluZ1tdKSA9PiB7XHJcbiAgICAgIGlmICghc2VsZWN0ZWQpIHsgcmV0dXJuOyB9XHJcbiAgICAgIFxyXG4gICAgICB0aGlzLmFjY291bnROYW1lcyA9IEFycmF5LmlzQXJyYXkoc2VsZWN0ZWQpID9cclxuICAgICAgICBzZWxlY3RlZCA6XHJcbiAgICAgICAgWyBzZWxlY3RlZCBdO1xyXG5cclxuICAgICAgLy8gT3ZlcndyaXRlIHdoYXQgbWF5IGhhdmUgYmVlbiBwYXNzZWQgaW4sIGZvciBzdWJzZXF1ZW50IGxhdW5jaGVzIG9mIFVzZXJDaG9vc2VyQ29tcG9uZW50IC0gb3RoZXJ3aXNlIGl0IGp1c3Qga2VlcHMgZ2V0dGluZyBmZWQgc3RhbGUgZGF0YVxyXG4gICAgICB0aGlzLl91c2VyQ2hvb3NlckRhdGEucHJlU2VsZWN0aW9ucy5hY2NvdW50TmFtZXMgPSB0aGlzLmFjY291bnROYW1lcztcclxuXHJcbiAgICAgIHRoaXMudXNlcnNTZWxlY3RlZC5lbWl0KHNlbGVjdGVkKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgdW5TZWxlY3RVc2VyKGFjY291bnROYW1lOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIGNvbnN0IGluZGV4ID0gdGhpcy5hY2NvdW50TmFtZXMuZmluZEluZGV4KGEgPT4gYSA9PT0gYWNjb3VudE5hbWUpO1xyXG4gICAgdGhpcy5hY2NvdW50TmFtZXMuc3BsaWNlKGluZGV4LCAxKTtcclxuXHJcbiAgICB0aGlzLl91c2VyQ2hvb3NlckRhdGEucHJlU2VsZWN0aW9ucy5hY2NvdW50TmFtZXMgPSB0aGlzLmFjY291bnROYW1lcztcclxuXHJcbiAgICB0aGlzLnVzZXJVblNlbGVjdGVkLmVtaXQoYWNjb3VudE5hbWUpO1xyXG4gIH1cclxuICAvLyNlbmRyZWdpb25cclxuXHJcbiAgLy8jcmVnaW9uIFV0aWxpdGllc1xyXG4gIHByaXZhdGUgZ2V0RGF0YSgpOiB2b2lkIHtcclxuICAgIGZvcmtKb2luKFtcclxuICAgICAgdGhpcy5fdXNlckNob29zZXJEYXRhIS51c2VycyA/XHJcbiAgICAgICAgLy8gVXNlcnMgd2VyZSBwYXNzZWQgaW5cclxuICAgICAgICBvZih0aGlzLl91c2VyQ2hvb3NlckRhdGEhLnVzZXJzKSA6XHJcbiAgICAgICAgLy8gVXNlcnMgbmVlZCB0byBiZSByZXRyaWV2ZWRcclxuICAgICAgICB0aGlzLmFjdGl2ZURpcmVjdG9yeVNlcnZpY2UuZ2V0VXNlcnMoZmFsc2UsIHRoaXMuX3VzZXJDaG9vc2VyRGF0YSEuaW5jbHVkZURpc2FibGVkVXNlcnMsIHRoaXMuX3VzZXJDaG9vc2VyRGF0YSEucGFyZW50T3UpLFxyXG5cclxuICAgICAgdGhpcy5fdXNlckNob29zZXJEYXRhIS5ncm91cHMgP1xyXG4gICAgICAgIC8vIEdyb3VwcyB3ZXJlIHBhc3NlZCBpblxyXG4gICAgICAgIG9mKHRoaXMuX3VzZXJDaG9vc2VyRGF0YSEuZ3JvdXBzKSA6XHJcbiAgICAgICAgLy8gR3JvdXBzIG5lZWQgdG8gYmUgcmV0cmlldmVkXHJcbiAgICAgICAgdGhpcy5hY3RpdmVEaXJlY3RvcnlTZXJ2aWNlLmdldEdyb3Vwcyh0aGlzLl91c2VyQ2hvb3NlckRhdGEhLnBhcmVudE91KSxcclxuXHJcbiAgICAgIHRoaXMuX3VzZXJDaG9vc2VyRGF0YSEucGhvdG9zID9cclxuICAgICAgICAvLyBQaG90b3Mgd2VyZSBwYXNzZWQgaW5cclxuICAgICAgICBvZih0aGlzLl91c2VyQ2hvb3NlckRhdGEhLnBob3RvcykgOlxyXG4gICAgICAgIC8vIFBob3RvcyBuZWVkIHRvIGJlIHJldHJpZXZlZFxyXG4gICAgICAgIHRoaXMuc2hhcmVQb2ludFNlcnZpY2UuZ2V0UGhvdG9zKClcclxuICAgIF0pXHJcbiAgICAgIC5zdWJzY3JpYmUoKFt1c2VycywgZ3JvdXBzLCBwaG90b3NdKSA9PiB7XHJcbiAgICAgICAgdGhpcy51c2VycyA9IHVzZXJzO1xyXG4gICAgICAgIHRoaXMuZ3JvdXBzID0gZ3JvdXBzO1xyXG4gICAgICAgIHRoaXMucGhvdG9zID0gcGhvdG9zO1xyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIGdldFVzZXIoYWNjb3VudE5hbWU6IHN0cmluZyk6IFVzZXIgfCB1bmRlZmluZWQge1xyXG4gICAgcmV0dXJuIHRoaXMudXNlcnM/LmZpbmQodSA9PiB1LnNBTUFjY291bnROYW1lLnRvTG93ZXJDYXNlKCkgPT09IGFjY291bnROYW1lLnRvTG93ZXJDYXNlKCkpO1xyXG4gIH1cclxuXHJcbiAgZ2V0R3JvdXAoYWNjb3VudE5hbWU6IHN0cmluZyk6IFVzZXJPckdyb3VwIHwgdW5kZWZpbmVkIHtcclxuICAgIHJldHVybiB0aGlzLmdyb3Vwcz8uZmluZChnID0+IGcuc0FNQWNjb3VudE5hbWUudG9Mb3dlckNhc2UoKSA9PT0gYWNjb3VudE5hbWUudG9Mb3dlckNhc2UoKSk7XHJcbiAgfVxyXG5cclxuICBnZXRQaG90byhhY2NvdW50TmFtZTogc3RyaW5nKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcclxuICAgIGNvbnN0IHVzZXIgPSB0aGlzLmdldFVzZXIoYWNjb3VudE5hbWUpO1xyXG4gICAgaWYgKCF1c2VyKSB7IHJldHVybiB1bmRlZmluZWQ7IH1cclxuXHJcbiAgICByZXR1cm4gdGhpcy5waG90b3M/LmZpbmQocCA9PlxyXG4gICAgICAocC5lbXBsb3llZU51bWJlciAmJiBwLmVtcGxveWVlTnVtYmVyLnRvU3RyaW5nKCkgPT09IHVzZXIuZW1wbG95ZWVOdW1iZXIpIHx8XHJcbiAgICAgIHAuYWNjb3VudE5hbWU/LnRvTG93ZXJDYXNlKCkgPT09IHVzZXIuc0FNQWNjb3VudE5hbWUudG9Mb3dlckNhc2UoKSB8fFxyXG4gICAgICBwLmRpc3BsYXlOYW1lPy50b0xvd2VyQ2FzZSgpID09PSB1c2VyLmRpc3BsYXlOYW1lLnRvTG93ZXJDYXNlKCkgfHxcclxuICAgICAgcC50aXRsZT8udG9Mb3dlckNhc2UoKSA9PT0gdXNlci5kaXNwbGF5TmFtZS50b0xvd2VyQ2FzZSgpXHJcbiAgICApPy5lbmNvZGVkQWJzVXJsO1xyXG4gIH1cclxuICAvLyNlbmRyZWdpb25cclxufSIsIlxyXG48IS0tIEluIE1pY3Jvc29mdCBFZGdlLCBzZWxlY3RVc2VyKCkgbmV2ZXIgZ2V0cyBjYWxsZWQgaWYgdGhlIGlucHV0IGZpZWxkcyBhcmUgZGlzYWJsZWRcclxuU28uLi4gSSdtIGR5bmFtaWNhbGx5IHNldHRpbmcgdGhlIGRpc2FibGVkIHByb3BlcnR5IGJhc2VkIG9uIHdoZXRoZXIgb3Igbm90IHRoZSBicm93c2VyIGlzIEVkZ2UuXHJcbkl0J3MgZGVmaW5pdGVseSBhIGJldHRlciBleHBlcmllbmNlIGlmIHRoZSBmaWVsZCBJUyBkaXNhYmxlZC5cclxuT3RoZXJ3aXNlLCBpdCdzIGNvbmZ1c2luZyAtIGVzcGVjaWFsbHkgYmVjYXVzZSBFZGdlIGlzIFNPIFNMT1cgdG8gZGlzcGxheSB0aGUgcmVzdWx0aW5nIGRpYWxvZyB3aW5kb3cuXHJcbi0tPlxyXG48IS0tIFVwZGF0ZSA4LzI0LzIwMjM6XHJcblRoZSBhYm92ZSBwcm9ibGVtIGFsc28gZXhpc3RzIGluIENocm9tZSBub3cuXHJcblNvIGluc3RlYWQgb2YgZHluYW1pY2FsbHkgc2V0dGluZyBbZGlzYWJsZWRdIGJhc2VkIG9uIGJyb3dzZXIgdHlwZSxcclxuSSdtIGFwcGx5aW5nIENTUyB0byBzdXBwcmVzcyBtb3VzZSBldmVudHMgb24gdGhlIGlucHV0IC0gdGh1cyBtYWtpbmcgaXQgYnViYmxlIHVwIHRvIHRoZSBwYXJlbnQgY29udHJvbCwgd2hpY2ggcmVzcG9uZHMgdGhlIHdheSB3ZSB3YW50L1xyXG4tLT5cclxuXHJcbkBpZiAodXNlcnMgJiYgcGhvdG9zKSB7XHJcbiAgPGRpdiAoY2xpY2spPVwic2VsZWN0VXNlcigpXCIgW2NsYXNzLmNsaWNrYWJsZV09XCJjbGlja2FibGUoKVwiPlxyXG4gICAgQGlmIChhY2NvdW50TmFtZXMubGVuZ3RoKSB7XHJcbiAgICAgIDxkaXZcclxuICAgICAgICBbY2xhc3MuZ3JpZF09XCJhY2NvdW50TmFtZXMubGVuZ3RoID4gMVwiXHJcbiAgICAgICAgW2NsYXNzLnRocmVlXT1cImFjY291bnROYW1lcy5sZW5ndGggPiAyXCJcclxuICAgICAgICBbY2xhc3MuZm91cl09XCJhY2NvdW50TmFtZXMubGVuZ3RoID4gM1wiXHJcbiAgICAgICAgW2NsYXNzLmZpdmVdPVwiYWNjb3VudE5hbWVzLmxlbmd0aCA+IDRcIj5cclxuICAgICAgICBAZm9yIChhY2NvdW50TmFtZSBvZiBhY2NvdW50TmFtZXM7IHRyYWNrIGFjY291bnROYW1lOyBsZXQgaSA9ICRpbmRleCkge1xyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cInVzZXJcIj5cclxuICAgICAgICAgICAgPCEtLTxpbWcgKm5nSWY9XCJhY2NvdW50TmFtZSAmJiBlbXBVdGlscy5nZXRFbXBsb3llZShhY2NvdW50TmFtZSlcIiBhbHQ9XCJcIiBbc3JjXT1cImVtcFV0aWxzLmdldEVtcGxveWVlKGFjY291bnROYW1lKSB8IGVtcGxveWVlUGhvdG9Vcmw6Y2FjaGVTZXJ2aWNlLnBob3Rvc1wiPi0tPlxyXG4gICAgICAgICAgICBAaWYgKGdldFBob3RvKGFjY291bnROYW1lKSkge1xyXG4gICAgICAgICAgICAgIDxpbWcgbWF0TGlzdEl0ZW1BdmF0YXIgYWx0PVwiXCIgW3NyY109XCJnZXRQaG90byhhY2NvdW50TmFtZSlcIj5cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAaWYgKGdldEdyb3VwKGFjY291bnROYW1lKSkge1xyXG4gICAgICAgICAgICAgIDxtYXQtaWNvbj5ncm91cDwvbWF0LWljb24+XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgPG1hdC1mb3JtLWZpZWxkPlxyXG4gICAgICAgICAgICAgIDwhLS0gW2Rpc2FibGVkXT1cIiFpc0VkZ2VcIiAtLT5cclxuICAgICAgICAgICAgICA8aW5wdXQgbWF0SW5wdXQgZGlzYWJsZWQgW3BsYWNlaG9sZGVyXT1cImkgPT09IDAgPyBwbGFjZWhvbGRlcigpIDogJydcIlxyXG4gICAgICAgICAgICAgICAgW3ZhbHVlXT1cImdldFVzZXIoYWNjb3VudE5hbWUpID8gZ2V0VXNlcihhY2NvdW50TmFtZSk/LmRpc3BsYXlOYW1lIDogZ2V0R3JvdXAoYWNjb3VudE5hbWUpID8gZ2V0R3JvdXAoYWNjb3VudE5hbWUpPy5kaXNwbGF5TmFtZSA6IGFjY291bnROYW1lXCI+XHJcbiAgICAgICAgICAgICAgPGJ1dHRvbiBtYXRTdWZmaXggbWF0LWljb24tYnV0dG9uIGFyaWEtbGFiZWw9XCJDbGVhclwiIChjbGljayk9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7IHVuU2VsZWN0VXNlcihhY2NvdW50TmFtZSlcIj5cclxuICAgICAgICAgICAgICAgIDxtYXQtaWNvbiBmb250SWNvbj1cImNsb3NlXCIvPlxyXG4gICAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgfVxyXG4gICAgICA8L2Rpdj5cclxuICAgIH0gQGVsc2Uge1xyXG4gICAgICA8bWF0LWZvcm0tZmllbGQ+XHJcbiAgICAgICAgPGlucHV0IG1hdElucHV0IGRpc2FibGVkIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlcigpXCI+IDwhLS0gW2Rpc2FibGVkXT1cIiFpc0VkZ2VcIiAtLT5cclxuICAgICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICAgIH1cclxuICA8L2Rpdj5cclxufSBAZWxzZSB7XHJcbiAgPG1hdC1wcm9ncmVzcy1iYXIgbW9kZT1cImluZGV0ZXJtaW5hdGVcIi8+XHJcbn0iXX0=
|
|
@@ -1,96 +0,0 @@
|
|
|
1
|
-
import { NgModule, Optional, SkipSelf } from '@angular/core';
|
|
2
|
-
import { CommonModule } from '@angular/common';
|
|
3
|
-
import { ReactiveFormsModule } from '@angular/forms';
|
|
4
|
-
import { MatButtonModule } from '@angular/material/button';
|
|
5
|
-
import { MatDialogModule } from '@angular/material/dialog';
|
|
6
|
-
import { MatFormFieldModule } from '@angular/material/form-field';
|
|
7
|
-
import { MatIconModule } from '@angular/material/icon';
|
|
8
|
-
import { MatInputModule } from '@angular/material/input';
|
|
9
|
-
import { MatListModule } from '@angular/material/list';
|
|
10
|
-
import { MatProgressBarModule } from '@angular/material/progress-bar';
|
|
11
|
-
import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
|
|
12
|
-
import { MatSlideToggleModule } from '@angular/material/slide-toggle';
|
|
13
|
-
import { MatTableModule } from '@angular/material/table';
|
|
14
|
-
import { MatTooltipModule } from '@angular/material/tooltip';
|
|
15
|
-
import { ServiceConfig, ActiveDirectoryService } from '@cleavelandprice/ngx-lib/active-directory';
|
|
16
|
-
import { UserChooserComponent } from './components/user-chooser/user-chooser.component';
|
|
17
|
-
import { UserFormFieldComponent } from './components/user-form-field/user-form-field.component';
|
|
18
|
-
import * as i0 from "@angular/core";
|
|
19
|
-
export class GuiModule {
|
|
20
|
-
static forRoot(config) {
|
|
21
|
-
return {
|
|
22
|
-
ngModule: GuiModule,
|
|
23
|
-
providers: [
|
|
24
|
-
ActiveDirectoryService,
|
|
25
|
-
{ provide: ServiceConfig, useValue: config }
|
|
26
|
-
]
|
|
27
|
-
};
|
|
28
|
-
}
|
|
29
|
-
constructor(parentModule) {
|
|
30
|
-
if (parentModule) {
|
|
31
|
-
throw new Error('ActiveDirectoryGuiModule is already loaded. Import it in the AppModule only');
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: GuiModule, deps: [{ token: GuiModule, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
35
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.0", ngImport: i0, type: GuiModule, declarations: [UserChooserComponent,
|
|
36
|
-
UserFormFieldComponent], imports: [CommonModule,
|
|
37
|
-
ReactiveFormsModule,
|
|
38
|
-
MatButtonModule,
|
|
39
|
-
MatDialogModule,
|
|
40
|
-
MatFormFieldModule,
|
|
41
|
-
MatIconModule,
|
|
42
|
-
MatInputModule,
|
|
43
|
-
MatListModule,
|
|
44
|
-
MatProgressBarModule,
|
|
45
|
-
MatProgressSpinnerModule,
|
|
46
|
-
MatSlideToggleModule,
|
|
47
|
-
MatTableModule,
|
|
48
|
-
MatTooltipModule], exports: [UserChooserComponent,
|
|
49
|
-
UserFormFieldComponent] }); }
|
|
50
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: GuiModule, imports: [CommonModule,
|
|
51
|
-
ReactiveFormsModule,
|
|
52
|
-
MatButtonModule,
|
|
53
|
-
MatDialogModule,
|
|
54
|
-
MatFormFieldModule,
|
|
55
|
-
MatIconModule,
|
|
56
|
-
MatInputModule,
|
|
57
|
-
MatListModule,
|
|
58
|
-
MatProgressBarModule,
|
|
59
|
-
MatProgressSpinnerModule,
|
|
60
|
-
MatSlideToggleModule,
|
|
61
|
-
MatTableModule,
|
|
62
|
-
MatTooltipModule] }); }
|
|
63
|
-
}
|
|
64
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: GuiModule, decorators: [{
|
|
65
|
-
type: NgModule,
|
|
66
|
-
args: [{
|
|
67
|
-
declarations: [
|
|
68
|
-
UserChooserComponent,
|
|
69
|
-
UserFormFieldComponent
|
|
70
|
-
],
|
|
71
|
-
imports: [
|
|
72
|
-
CommonModule,
|
|
73
|
-
ReactiveFormsModule,
|
|
74
|
-
MatButtonModule,
|
|
75
|
-
MatDialogModule,
|
|
76
|
-
MatFormFieldModule,
|
|
77
|
-
MatIconModule,
|
|
78
|
-
MatInputModule,
|
|
79
|
-
MatListModule,
|
|
80
|
-
MatProgressBarModule,
|
|
81
|
-
MatProgressSpinnerModule,
|
|
82
|
-
MatSlideToggleModule,
|
|
83
|
-
MatTableModule,
|
|
84
|
-
MatTooltipModule
|
|
85
|
-
],
|
|
86
|
-
exports: [
|
|
87
|
-
UserChooserComponent,
|
|
88
|
-
UserFormFieldComponent
|
|
89
|
-
]
|
|
90
|
-
}]
|
|
91
|
-
}], ctorParameters: () => [{ type: GuiModule, decorators: [{
|
|
92
|
-
type: Optional
|
|
93
|
-
}, {
|
|
94
|
-
type: SkipSelf
|
|
95
|
-
}] }] });
|
|
96
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3VpLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsZWF2ZWxhbmRwcmljZS9uZ3gtbGliL2FjdGl2ZS1kaXJlY3RvcnkvZ3VpL3NyYy9ndWkubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBdUIsUUFBUSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXJELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDdEUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDOUUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDdEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRTdELE9BQU8sRUFBRSxhQUFhLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUVsRyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUN4RixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSx3REFBd0QsQ0FBQzs7QUE0QmhHLE1BQU0sT0FBTyxTQUFTO0lBQ3BCLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBcUI7UUFDbEMsT0FBTztZQUNMLFFBQVEsRUFBRSxTQUFTO1lBQ25CLFNBQVMsRUFBRTtnQkFDVCxzQkFBc0I7Z0JBQ3RCLEVBQUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFO2FBQzdDO1NBQ0YsQ0FBQztJQUNKLENBQUM7SUFFRCxZQUFvQyxZQUF1QjtRQUN6RCxJQUFJLFlBQVksRUFBRSxDQUFDO1lBQ2pCLE1BQU0sSUFBSSxLQUFLLENBQ2IsNkVBQTZFLENBQUMsQ0FBQztRQUNuRixDQUFDO0lBQ0gsQ0FBQzs4R0FoQlUsU0FBUzsrR0FBVCxTQUFTLGlCQXhCbEIsb0JBQW9CO1lBQ3BCLHNCQUFzQixhQUd0QixZQUFZO1lBQ1osbUJBQW1CO1lBRW5CLGVBQWU7WUFDZixlQUFlO1lBQ2Ysa0JBQWtCO1lBQ2xCLGFBQWE7WUFDYixjQUFjO1lBQ2QsYUFBYTtZQUNiLG9CQUFvQjtZQUNwQix3QkFBd0I7WUFDeEIsb0JBQW9CO1lBQ3BCLGNBQWM7WUFDZCxnQkFBZ0IsYUFHaEIsb0JBQW9CO1lBQ3BCLHNCQUFzQjsrR0FHYixTQUFTLFlBcEJsQixZQUFZO1lBQ1osbUJBQW1CO1lBRW5CLGVBQWU7WUFDZixlQUFlO1lBQ2Ysa0JBQWtCO1lBQ2xCLGFBQWE7WUFDYixjQUFjO1lBQ2QsYUFBYTtZQUNiLG9CQUFvQjtZQUNwQix3QkFBd0I7WUFDeEIsb0JBQW9CO1lBQ3BCLGNBQWM7WUFDZCxnQkFBZ0I7OzJGQU9QLFNBQVM7a0JBMUJyQixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRTt3QkFDWixvQkFBb0I7d0JBQ3BCLHNCQUFzQjtxQkFDdkI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osbUJBQW1CO3dCQUVuQixlQUFlO3dCQUNmLGVBQWU7d0JBQ2Ysa0JBQWtCO3dCQUNsQixhQUFhO3dCQUNiLGNBQWM7d0JBQ2QsYUFBYTt3QkFDYixvQkFBb0I7d0JBQ3BCLHdCQUF3Qjt3QkFDeEIsb0JBQW9CO3dCQUNwQixjQUFjO3dCQUNkLGdCQUFnQjtxQkFDakI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLG9CQUFvQjt3QkFDcEIsc0JBQXNCO3FCQUN2QjtpQkFDRjs7MEJBWWMsUUFBUTs7MEJBQUksUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1vZHVsZVdpdGhQcm92aWRlcnMsIE5nTW9kdWxlLCBPcHRpb25hbCwgU2tpcFNlbGYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuXHJcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XHJcbmltcG9ydCB7IE1hdERpYWxvZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XHJcbmltcG9ydCB7IE1hdEZvcm1GaWVsZE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGQnO1xyXG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XHJcbmltcG9ydCB7IE1hdElucHV0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xyXG5pbXBvcnQgeyBNYXRMaXN0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvbGlzdCc7XHJcbmltcG9ydCB7IE1hdFByb2dyZXNzQmFyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvcHJvZ3Jlc3MtYmFyJztcclxuaW1wb3J0IHsgTWF0UHJvZ3Jlc3NTcGlubmVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvcHJvZ3Jlc3Mtc3Bpbm5lcic7XHJcbmltcG9ydCB7IE1hdFNsaWRlVG9nZ2xlTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2xpZGUtdG9nZ2xlJztcclxuaW1wb3J0IHsgTWF0VGFibGVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90YWJsZSc7XHJcbmltcG9ydCB7IE1hdFRvb2x0aXBNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sdGlwJztcclxuXHJcbmltcG9ydCB7IFNlcnZpY2VDb25maWcsIEFjdGl2ZURpcmVjdG9yeVNlcnZpY2UgfSBmcm9tICdAY2xlYXZlbGFuZHByaWNlL25neC1saWIvYWN0aXZlLWRpcmVjdG9yeSc7XHJcblxyXG5pbXBvcnQgeyBVc2VyQ2hvb3NlckNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy91c2VyLWNob29zZXIvdXNlci1jaG9vc2VyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVzZXJGb3JtRmllbGRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvdXNlci1mb3JtLWZpZWxkL3VzZXItZm9ybS1maWVsZC5jb21wb25lbnQnO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICBkZWNsYXJhdGlvbnM6IFtcclxuICAgIFVzZXJDaG9vc2VyQ29tcG9uZW50LFxyXG4gICAgVXNlckZvcm1GaWVsZENvbXBvbmVudFxyXG4gIF0sXHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcclxuXHJcbiAgICBNYXRCdXR0b25Nb2R1bGUsXHJcbiAgICBNYXREaWFsb2dNb2R1bGUsXHJcbiAgICBNYXRGb3JtRmllbGRNb2R1bGUsXHJcbiAgICBNYXRJY29uTW9kdWxlLFxyXG4gICAgTWF0SW5wdXRNb2R1bGUsXHJcbiAgICBNYXRMaXN0TW9kdWxlLFxyXG4gICAgTWF0UHJvZ3Jlc3NCYXJNb2R1bGUsXHJcbiAgICBNYXRQcm9ncmVzc1NwaW5uZXJNb2R1bGUsXHJcbiAgICBNYXRTbGlkZVRvZ2dsZU1vZHVsZSxcclxuICAgIE1hdFRhYmxlTW9kdWxlLFxyXG4gICAgTWF0VG9vbHRpcE1vZHVsZVxyXG4gIF0sXHJcbiAgZXhwb3J0czogW1xyXG4gICAgVXNlckNob29zZXJDb21wb25lbnQsXHJcbiAgICBVc2VyRm9ybUZpZWxkQ29tcG9uZW50XHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgR3VpTW9kdWxlIHtcclxuICBzdGF0aWMgZm9yUm9vdChjb25maWc6IFNlcnZpY2VDb25maWcpOiBNb2R1bGVXaXRoUHJvdmlkZXJzPEd1aU1vZHVsZT4ge1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgbmdNb2R1bGU6IEd1aU1vZHVsZSxcclxuICAgICAgcHJvdmlkZXJzOiBbXHJcbiAgICAgICAgQWN0aXZlRGlyZWN0b3J5U2VydmljZSxcclxuICAgICAgICB7IHByb3ZpZGU6IFNlcnZpY2VDb25maWcsIHVzZVZhbHVlOiBjb25maWcgfVxyXG4gICAgICBdXHJcbiAgICB9O1xyXG4gIH1cclxuXHJcbiAgY29uc3RydWN0b3IoQE9wdGlvbmFsKCkgQFNraXBTZWxmKCkgcGFyZW50TW9kdWxlOiBHdWlNb2R1bGUpIHtcclxuICAgIGlmIChwYXJlbnRNb2R1bGUpIHtcclxuICAgICAgdGhyb3cgbmV3IEVycm9yKFxyXG4gICAgICAgICdBY3RpdmVEaXJlY3RvcnlHdWlNb2R1bGUgaXMgYWxyZWFkeSBsb2FkZWQuIEltcG9ydCBpdCBpbiB0aGUgQXBwTW9kdWxlIG9ubHknKTtcclxuICAgIH1cclxuICB9XHJcbn0iXX0=
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0YWJsZS1ncm91cC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsZWF2ZWxhbmRwcmljZS9uZ3gtbGliL2FjdGl2ZS1kaXJlY3RvcnkvZ3VpL3NyYy9tb2RlbC9zZWxlY3RhYmxlLWdyb3VwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBVc2VyT3JHcm91cCB9IGZyb20gXCJAY2xlYXZlbGFuZHByaWNlL25neC1saWIvYWN0aXZlLWRpcmVjdG9yeVwiO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBTZWxlY3RhYmxlR3JvdXAgZXh0ZW5kcyBVc2VyT3JHcm91cCB7XHJcbiAgICBzZWxlY3RlZDogYm9vbGVhbjtcclxufSJdfQ==
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0YWJsZS11c2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xlYXZlbGFuZHByaWNlL25neC1saWIvYWN0aXZlLWRpcmVjdG9yeS9ndWkvc3JjL21vZGVsL3NlbGVjdGFibGUtdXNlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVXNlciB9IGZyb20gXCJAY2xlYXZlbGFuZHByaWNlL25neC1saWIvYWN0aXZlLWRpcmVjdG9yeVwiO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBTZWxlY3RhYmxlVXNlciBleHRlbmRzIFVzZXIge1xyXG4gICAgc2VsZWN0ZWQ6IGJvb2xlYW47XHJcbiAgICBwaG90b1VybDogc3RyaW5nO1xyXG59Il19
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import { UserChooserFilterOptions } from "./user-chooser-filter-options";
|
|
2
|
-
import { UserChooserMode } from "./user-chooser-mode";
|
|
3
|
-
import { UserChooserPreProcessingGroup } from "./user-chooser-pre-processing-group";
|
|
4
|
-
export class UserChooserData {
|
|
5
|
-
constructor() {
|
|
6
|
-
// Should the dialog close automatically when the user chooses an item?
|
|
7
|
-
// Applies to single-user mode only
|
|
8
|
-
this.closeWhenSelectionMade = false;
|
|
9
|
-
// If the component is tasked with pulling Active Directory users (default setting),
|
|
10
|
-
// should that include disabled users?
|
|
11
|
-
this.includeDisabledUsers = false;
|
|
12
|
-
// If true, the component will return an array of Active Directory User objects.
|
|
13
|
-
// If false (default), the component will return an array of user account names.
|
|
14
|
-
this.returnUserObjects = false;
|
|
15
|
-
// Should the dialog include hover tooptips for each user that displays their group membership
|
|
16
|
-
// You probably don't want this, which is why the default is false
|
|
17
|
-
this.showGroupMembershipTooltips = false;
|
|
18
|
-
// Should the user phone number be displayed next to their name in the dialog
|
|
19
|
-
this.showPhone = true;
|
|
20
|
-
// Title displayed in the dialog
|
|
21
|
-
this.title = 'Select User(s)';
|
|
22
|
-
// Single or Multi mode
|
|
23
|
-
this.mode = UserChooserMode.Single;
|
|
24
|
-
// As the user types into the filter field, the list of users is filtered.
|
|
25
|
-
// The filterOptions determine which user properties are taken into consideration for that filter.
|
|
26
|
-
// Note, displayName is always included (hard-coded), and is therefore not a filter option.
|
|
27
|
-
this.filterOptions = new UserChooserFilterOptions();
|
|
28
|
-
this.exclusions = new UserChooserPreProcessingGroup();
|
|
29
|
-
this.inclusions = new UserChooserPreProcessingGroup();
|
|
30
|
-
this.preSelections = new UserChooserPreProcessingGroup();
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1jaG9vc2VyLWRhdGEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGVhdmVsYW5kcHJpY2Uvbmd4LWxpYi9hY3RpdmUtZGlyZWN0b3J5L2d1aS9zcmMvbW9kZWwvdXNlci1jaG9vc2VyLWRhdGEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDekUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBRXBGLE1BQU0sT0FBTyxlQUFlO0lBQTVCO1FBQ0ksdUVBQXVFO1FBQ3ZFLG1DQUFtQztRQUNuQywyQkFBc0IsR0FBRyxLQUFLLENBQUM7UUFFL0Isb0ZBQW9GO1FBQ3BGLHdDQUF3QztRQUN4Qyx5QkFBb0IsR0FBRyxLQUFLLENBQUM7UUFNN0IsZ0ZBQWdGO1FBQ2hGLGdGQUFnRjtRQUNoRixzQkFBaUIsR0FBRyxLQUFLLENBQUM7UUFFMUIsOEZBQThGO1FBQzlGLGtFQUFrRTtRQUNsRSxnQ0FBMkIsR0FBRyxLQUFLLENBQUM7UUFFcEMsNkVBQTZFO1FBQzdFLGNBQVMsR0FBRyxJQUFJLENBQUM7UUFFakIsZ0NBQWdDO1FBQ2hDLFVBQUssR0FBRyxnQkFBZ0IsQ0FBQztRQUV6Qix1QkFBdUI7UUFDdkIsU0FBSSxHQUFHLGVBQWUsQ0FBQyxNQUFNLENBQUM7UUFFOUIsMEVBQTBFO1FBQzFFLGtHQUFrRztRQUNsRywyRkFBMkY7UUFDM0Ysa0JBQWEsR0FBRyxJQUFJLHdCQUF3QixFQUFFLENBQUM7UUFFL0MsZUFBVSxHQUFHLElBQUksNkJBQTZCLEVBQUUsQ0FBQztRQUNqRCxlQUFVLEdBQUcsSUFBSSw2QkFBNkIsRUFBRSxDQUFDO1FBQ2pELGtCQUFhLEdBQUcsSUFBSSw2QkFBNkIsRUFBRSxDQUFDO0lBVXhELENBQUM7Q0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEdyb3VwLCBVc2VyIH0gZnJvbSBcIkBjbGVhdmVsYW5kcHJpY2Uvbmd4LWxpYi9hY3RpdmUtZGlyZWN0b3J5XCI7XHJcbmltcG9ydCB7IFBob3RvSXRlbSB9IGZyb20gXCJAY2xlYXZlbGFuZHByaWNlL25neC1saWIvc2hhcmVwb2ludFwiO1xyXG5cclxuaW1wb3J0IHsgVXNlckNob29zZXJGaWx0ZXJPcHRpb25zIH0gZnJvbSBcIi4vdXNlci1jaG9vc2VyLWZpbHRlci1vcHRpb25zXCI7XHJcbmltcG9ydCB7IFVzZXJDaG9vc2VyTW9kZSB9IGZyb20gXCIuL3VzZXItY2hvb3Nlci1tb2RlXCI7XHJcbmltcG9ydCB7IFVzZXJDaG9vc2VyUHJlUHJvY2Vzc2luZ0dyb3VwIH0gZnJvbSBcIi4vdXNlci1jaG9vc2VyLXByZS1wcm9jZXNzaW5nLWdyb3VwXCI7XHJcblxyXG5leHBvcnQgY2xhc3MgVXNlckNob29zZXJEYXRhIHtcclxuICAgIC8vIFNob3VsZCB0aGUgZGlhbG9nIGNsb3NlIGF1dG9tYXRpY2FsbHkgd2hlbiB0aGUgdXNlciBjaG9vc2VzIGFuIGl0ZW0/XHJcbiAgICAvLyBBcHBsaWVzIHRvIHNpbmdsZS11c2VyIG1vZGUgb25seVxyXG4gICAgY2xvc2VXaGVuU2VsZWN0aW9uTWFkZSA9IGZhbHNlO1xyXG5cclxuICAgIC8vIElmIHRoZSBjb21wb25lbnQgaXMgdGFza2VkIHdpdGggcHVsbGluZyBBY3RpdmUgRGlyZWN0b3J5IHVzZXJzIChkZWZhdWx0IHNldHRpbmcpLFxyXG4gICAgLy8gICBzaG91bGQgdGhhdCBpbmNsdWRlIGRpc2FibGVkIHVzZXJzP1xyXG4gICAgaW5jbHVkZURpc2FibGVkVXNlcnMgPSBmYWxzZTtcclxuXHJcbiAgICAvLyBJZiB0aGUgY29tcG9uZW50IGlzIHRhc2tlZCB3aXRoIHB1bGxpbmcgQWN0aXZlIERpcmVjdG9yeSB1c2VycyAoZGVmYXVsdCBzZXR0aW5nKSxcclxuICAgIC8vICAgc2hvdWxkIHRoYXQgc2VhcmNoIGJlZ2luIGF0IGEgcGFydGljdWxhciBPcmdhbml6YXRpb24gVW5pdD9cclxuICAgIHBhcmVudE91Pzogc3RyaW5nO1xyXG5cclxuICAgIC8vIElmIHRydWUsIHRoZSBjb21wb25lbnQgd2lsbCByZXR1cm4gYW4gYXJyYXkgb2YgQWN0aXZlIERpcmVjdG9yeSBVc2VyIG9iamVjdHMuXHJcbiAgICAvLyBJZiBmYWxzZSAoZGVmYXVsdCksIHRoZSBjb21wb25lbnQgd2lsbCByZXR1cm4gYW4gYXJyYXkgb2YgdXNlciBhY2NvdW50IG5hbWVzLlxyXG4gICAgcmV0dXJuVXNlck9iamVjdHMgPSBmYWxzZTtcclxuXHJcbiAgICAvLyBTaG91bGQgdGhlIGRpYWxvZyBpbmNsdWRlIGhvdmVyIHRvb3B0aXBzIGZvciBlYWNoIHVzZXIgdGhhdCBkaXNwbGF5cyB0aGVpciBncm91cCBtZW1iZXJzaGlwXHJcbiAgICAvLyBZb3UgcHJvYmFibHkgZG9uJ3Qgd2FudCB0aGlzLCB3aGljaCBpcyB3aHkgdGhlIGRlZmF1bHQgaXMgZmFsc2VcclxuICAgIHNob3dHcm91cE1lbWJlcnNoaXBUb29sdGlwcyA9IGZhbHNlO1xyXG5cclxuICAgIC8vIFNob3VsZCB0aGUgdXNlciBwaG9uZSBudW1iZXIgYmUgZGlzcGxheWVkIG5leHQgdG8gdGhlaXIgbmFtZSBpbiB0aGUgZGlhbG9nXHJcbiAgICBzaG93UGhvbmUgPSB0cnVlO1xyXG5cclxuICAgIC8vIFRpdGxlIGRpc3BsYXllZCBpbiB0aGUgZGlhbG9nXHJcbiAgICB0aXRsZSA9ICdTZWxlY3QgVXNlcihzKSc7XHJcblxyXG4gICAgLy8gU2luZ2xlIG9yIE11bHRpIG1vZGVcclxuICAgIG1vZGUgPSBVc2VyQ2hvb3Nlck1vZGUuU2luZ2xlO1xyXG4gICAgXHJcbiAgICAvLyBBcyB0aGUgdXNlciB0eXBlcyBpbnRvIHRoZSBmaWx0ZXIgZmllbGQsIHRoZSBsaXN0IG9mIHVzZXJzIGlzIGZpbHRlcmVkLlxyXG4gICAgLy8gVGhlIGZpbHRlck9wdGlvbnMgZGV0ZXJtaW5lIHdoaWNoIHVzZXIgcHJvcGVydGllcyBhcmUgdGFrZW4gaW50byBjb25zaWRlcmF0aW9uIGZvciB0aGF0IGZpbHRlci5cclxuICAgIC8vIE5vdGUsIGRpc3BsYXlOYW1lIGlzIGFsd2F5cyBpbmNsdWRlZCAoaGFyZC1jb2RlZCksIGFuZCBpcyB0aGVyZWZvcmUgbm90IGEgZmlsdGVyIG9wdGlvbi5cclxuICAgIGZpbHRlck9wdGlvbnMgPSBuZXcgVXNlckNob29zZXJGaWx0ZXJPcHRpb25zKCk7XHJcblxyXG4gICAgZXhjbHVzaW9ucyA9IG5ldyBVc2VyQ2hvb3NlclByZVByb2Nlc3NpbmdHcm91cCgpO1xyXG4gICAgaW5jbHVzaW9ucyA9IG5ldyBVc2VyQ2hvb3NlclByZVByb2Nlc3NpbmdHcm91cCgpO1xyXG4gICAgcHJlU2VsZWN0aW9ucyA9IG5ldyBVc2VyQ2hvb3NlclByZVByb2Nlc3NpbmdHcm91cCgpO1xyXG5cclxuICAgIC8vIEJ5IGRlZmF1bHQsIHRoZSBjb21wb25lbnQgd2lsbCBwdWxsIGEgZnJlc2ggbGlzdCBvZiBBY3RpdmUgRGlyZWN0b3J5IHVzZXJzL2dyb3VwcyBhbmQgU2hhcmVQb2ludCBwaG90b3MuXHJcbiAgICAvLyBCdXQgaWYgdGhlIHBhcmVudCBjb21wb25lbnQgYWxyZWFkeSBoYXMgdGhlbSwgeW91IGNhbiBwYXNzIHRoZW0gaW4gdmlhIHRoZXNlIHByb3BlcnRpZXMuXHJcbiAgICB1c2Vycz86IFVzZXJbXTtcclxuICAgIGdyb3Vwcz86IEdyb3VwW107XHJcbiAgICBwaG90b3M/OiBQaG90b0l0ZW1bXTtcclxuXHJcbiAgICAvLyBkZWJ1Z1xyXG4gICAgc2VsZWN0YWJsZUdyb3VwTmFtZXM/OiBzdHJpbmdbXTtcclxufSJdfQ==
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
export class UserChooserFilterOptions {
|
|
2
|
-
constructor() {
|
|
3
|
-
this.accountName = true;
|
|
4
|
-
this.department = true;
|
|
5
|
-
this.groupMembership = false;
|
|
6
|
-
this.phoneNumber = true;
|
|
7
|
-
this.title = true;
|
|
8
|
-
}
|
|
9
|
-
}
|
|
10
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1jaG9vc2VyLWZpbHRlci1vcHRpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xlYXZlbGFuZHByaWNlL25neC1saWIvYWN0aXZlLWRpcmVjdG9yeS9ndWkvc3JjL21vZGVsL3VzZXItY2hvb3Nlci1maWx0ZXItb3B0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQU8sd0JBQXdCO0lBQXJDO1FBQ0ksZ0JBQVcsR0FBRyxJQUFJLENBQUM7UUFDbkIsZUFBVSxHQUFHLElBQUksQ0FBQztRQUNsQixvQkFBZSxHQUFHLEtBQUssQ0FBQztRQUN4QixnQkFBVyxHQUFHLElBQUksQ0FBQztRQUNuQixVQUFLLEdBQUcsSUFBSSxDQUFDO0lBQ2pCLENBQUM7Q0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBVc2VyQ2hvb3NlckZpbHRlck9wdGlvbnMge1xyXG4gICAgYWNjb3VudE5hbWUgPSB0cnVlO1xyXG4gICAgZGVwYXJ0bWVudCA9IHRydWU7XHJcbiAgICBncm91cE1lbWJlcnNoaXAgPSBmYWxzZTtcclxuICAgIHBob25lTnVtYmVyID0gdHJ1ZTtcclxuICAgIHRpdGxlID0gdHJ1ZTtcclxufSJdfQ==
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
export class UserChooserPreProcessingGroup {
|
|
2
|
-
constructor() {
|
|
3
|
-
this.accountNames = [];
|
|
4
|
-
this.departments = [];
|
|
5
|
-
this.groups = [];
|
|
6
|
-
this.titles = [];
|
|
7
|
-
}
|
|
8
|
-
}
|
|
9
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1jaG9vc2VyLXByZS1wcm9jZXNzaW5nLWdyb3VwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xlYXZlbGFuZHByaWNlL25neC1saWIvYWN0aXZlLWRpcmVjdG9yeS9ndWkvc3JjL21vZGVsL3VzZXItY2hvb3Nlci1wcmUtcHJvY2Vzc2luZy1ncm91cC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQU8sNkJBQTZCO0lBQTFDO1FBQ0ksaUJBQVksR0FBYSxFQUFFLENBQUM7UUFDNUIsZ0JBQVcsR0FBYSxFQUFFLENBQUM7UUFDM0IsV0FBTSxHQUFhLEVBQUUsQ0FBQztRQUN0QixXQUFNLEdBQWEsRUFBRSxDQUFDO0lBQzFCLENBQUM7Q0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBVc2VyQ2hvb3NlclByZVByb2Nlc3NpbmdHcm91cCB7XHJcbiAgICBhY2NvdW50TmFtZXM6IHN0cmluZ1tdID0gW107XHJcbiAgICBkZXBhcnRtZW50czogc3RyaW5nW10gPSBbXTtcclxuICAgIGdyb3Vwczogc3RyaW5nW10gPSBbXTtcclxuICAgIHRpdGxlczogc3RyaW5nW10gPSBbXTtcclxufSJdfQ==
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
export * from '@cleavelandprice/ngx-lib/active-directory';
|
|
2
|
-
export * from './model/user-chooser-data';
|
|
3
|
-
export * from './model/user-chooser-filter-options';
|
|
4
|
-
export * from './model/user-chooser-mode';
|
|
5
|
-
export * from './model/user-chooser-pre-processing-group';
|
|
6
|
-
export * from './components/user-chooser/user-chooser.component';
|
|
7
|
-
export * from './components/user-form-field/user-form-field.component';
|
|
8
|
-
export * from './gui.module';
|
|
9
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsZWF2ZWxhbmRwcmljZS9uZ3gtbGliL2FjdGl2ZS1kaXJlY3RvcnkvZ3VpL3NyYy9wdWJsaWNfYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsMkNBQTJDLENBQUM7QUFFMUQsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLHFDQUFxQyxDQUFDO0FBQ3BELGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYywyQ0FBMkMsQ0FBQztBQUUxRCxjQUFjLGtEQUFrRCxDQUFDO0FBQ2pFLGNBQWMsd0RBQXdELENBQUM7QUFFdkUsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICdAY2xlYXZlbGFuZHByaWNlL25neC1saWIvYWN0aXZlLWRpcmVjdG9yeSc7XHJcblxyXG5leHBvcnQgKiBmcm9tICcuL21vZGVsL3VzZXItY2hvb3Nlci1kYXRhJztcclxuZXhwb3J0ICogZnJvbSAnLi9tb2RlbC91c2VyLWNob29zZXItZmlsdGVyLW9wdGlvbnMnO1xyXG5leHBvcnQgKiBmcm9tICcuL21vZGVsL3VzZXItY2hvb3Nlci1tb2RlJztcclxuZXhwb3J0ICogZnJvbSAnLi9tb2RlbC91c2VyLWNob29zZXItcHJlLXByb2Nlc3NpbmctZ3JvdXAnO1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi9jb21wb25lbnRzL3VzZXItY2hvb3Nlci91c2VyLWNob29zZXIuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9jb21wb25lbnRzL3VzZXItZm9ybS1maWVsZC91c2VyLWZvcm0tZmllbGQuY29tcG9uZW50JztcclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vZ3VpLm1vZHVsZSc7Il19
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
export class CachingConfig {
|
|
2
|
-
constructor() {
|
|
3
|
-
this.enabled = false;
|
|
4
|
-
this.lifeMinutes = 720;
|
|
5
|
-
}
|
|
6
|
-
}
|
|
7
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FjaGluZy1jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGVhdmVsYW5kcHJpY2Uvbmd4LWxpYi9hY3RpdmUtZGlyZWN0b3J5L3NyYy9tb2RlbC9jYWNoaW5nLWNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQU8sYUFBYTtJQUExQjtRQUNJLFlBQU8sR0FBRyxLQUFLLENBQUM7UUFDaEIsZ0JBQVcsR0FBRyxHQUFHLENBQUM7SUFDcEIsQ0FBQztDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNsYXNzIENhY2hpbmdDb25maWcge1xyXG4gICAgZW5hYmxlZCA9IGZhbHNlO1xyXG4gICAgbGlmZU1pbnV0ZXMgPSA3MjA7XHJcbiAgfSJdfQ==
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
export class LoggingConfig {
|
|
2
|
-
constructor() {
|
|
3
|
-
this.dataCached = false;
|
|
4
|
-
this.cachedDataReturned = false;
|
|
5
|
-
this.freshDataReturned = false;
|
|
6
|
-
this.cacheCleared = false;
|
|
7
|
-
}
|
|
8
|
-
}
|
|
9
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nZ2luZy1jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGVhdmVsYW5kcHJpY2Uvbmd4LWxpYi9hY3RpdmUtZGlyZWN0b3J5L3NyYy9tb2RlbC9sb2dnaW5nLWNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQU8sYUFBYTtJQUExQjtRQUNJLGVBQVUsR0FBRyxLQUFLLENBQUM7UUFDbkIsdUJBQWtCLEdBQUcsS0FBSyxDQUFDO1FBQzNCLHNCQUFpQixHQUFHLEtBQUssQ0FBQztRQUMxQixpQkFBWSxHQUFHLEtBQUssQ0FBQztJQUN2QixDQUFDO0NBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgTG9nZ2luZ0NvbmZpZyB7XHJcbiAgICBkYXRhQ2FjaGVkID0gZmFsc2U7XHJcbiAgICBjYWNoZWREYXRhUmV0dXJuZWQgPSBmYWxzZTtcclxuICAgIGZyZXNoRGF0YVJldHVybmVkID0gZmFsc2U7XHJcbiAgICBjYWNoZUNsZWFyZWQgPSBmYWxzZTtcclxuICB9Il19
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { ServiceConfig as NgxLibServiceConfig } from '@cleavelandprice/ngx-lib';
|
|
2
|
-
import { CachingConfig } from './caching-config';
|
|
3
|
-
import { LoggingConfig } from './logging-config';
|
|
4
|
-
export class ServiceConfig extends NgxLibServiceConfig {
|
|
5
|
-
// See the comment in the library's main service-config.ts file for an explanation
|
|
6
|
-
constructor(useSsl_or_customApiUrl = false) {
|
|
7
|
-
super(useSsl_or_customApiUrl);
|
|
8
|
-
this.caching = new CachingConfig();
|
|
9
|
-
this.logging = new LoggingConfig();
|
|
10
|
-
}
|
|
11
|
-
}
|
|
12
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS1jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGVhdmVsYW5kcHJpY2Uvbmd4LWxpYi9hY3RpdmUtZGlyZWN0b3J5L3NyYy9tb2RlbC9zZXJ2aWNlLWNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsYUFBYSxJQUFJLG1CQUFtQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDaEYsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUVqRCxNQUFNLE9BQU8sYUFBYyxTQUFRLG1CQUFtQjtJQUlwRCxrRkFBa0Y7SUFDbEYsWUFBWSx5QkFBMkMsS0FBSztRQUMxRCxLQUFLLENBQUMsc0JBQXNCLENBQUMsQ0FBQztRQUxoQyxZQUFPLEdBQUcsSUFBSSxhQUFhLEVBQUUsQ0FBQztRQUM5QixZQUFPLEdBQUcsSUFBSSxhQUFhLEVBQUUsQ0FBQztJQUs5QixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTZXJ2aWNlQ29uZmlnIGFzIE5neExpYlNlcnZpY2VDb25maWcgfSBmcm9tICdAY2xlYXZlbGFuZHByaWNlL25neC1saWInO1xyXG5pbXBvcnQgeyBDYWNoaW5nQ29uZmlnIH0gZnJvbSAnLi9jYWNoaW5nLWNvbmZpZyc7XHJcbmltcG9ydCB7IExvZ2dpbmdDb25maWcgfSBmcm9tICcuL2xvZ2dpbmctY29uZmlnJztcclxuXHJcbmV4cG9ydCBjbGFzcyBTZXJ2aWNlQ29uZmlnIGV4dGVuZHMgTmd4TGliU2VydmljZUNvbmZpZyB7XHJcbiAgY2FjaGluZyA9IG5ldyBDYWNoaW5nQ29uZmlnKCk7XHJcbiAgbG9nZ2luZyA9IG5ldyBMb2dnaW5nQ29uZmlnKCk7XHJcblxyXG4gIC8vIFNlZSB0aGUgY29tbWVudCBpbiB0aGUgbGlicmFyeSdzIG1haW4gc2VydmljZS1jb25maWcudHMgZmlsZSBmb3IgYW4gZXhwbGFuYXRpb25cclxuICBjb25zdHJ1Y3Rvcih1c2VTc2xfb3JfY3VzdG9tQXBpVXJsOiBib29sZWFuIHwgc3RyaW5nID0gZmFsc2UpIHtcclxuICAgIHN1cGVyKHVzZVNzbF9vcl9jdXN0b21BcGlVcmwpO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
export * from './model/ad-object';
|
|
2
|
-
export * from './model/ad-object-with-children';
|
|
3
|
-
export * from './model/caching-config';
|
|
4
|
-
export * from './model/cleaveland-price-user';
|
|
5
|
-
export * from './model/group';
|
|
6
|
-
export * from './model/logging-config';
|
|
7
|
-
export * from './model/service-config';
|
|
8
|
-
export * from './model/user-or-group';
|
|
9
|
-
export * from './model/user';
|
|
10
|
-
export * from './services/active-directory.service';
|
|
11
|
-
export * from './active-directory.module';
|
|
12
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsZWF2ZWxhbmRwcmljZS9uZ3gtbGliL2FjdGl2ZS1kaXJlY3Rvcnkvc3JjL3B1YmxpY19hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLGVBQWUsQ0FBQztBQUM5QixjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLGNBQWMsQ0FBQztBQUU3QixjQUFjLHFDQUFxQyxDQUFDO0FBRXBELGNBQWMsMkJBQTJCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL21vZGVsL2FkLW9iamVjdCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbW9kZWwvYWQtb2JqZWN0LXdpdGgtY2hpbGRyZW4nO1xyXG5leHBvcnQgKiBmcm9tICcuL21vZGVsL2NhY2hpbmctY29uZmlnJztcclxuZXhwb3J0ICogZnJvbSAnLi9tb2RlbC9jbGVhdmVsYW5kLXByaWNlLXVzZXInO1xyXG5leHBvcnQgKiBmcm9tICcuL21vZGVsL2dyb3VwJztcclxuZXhwb3J0ICogZnJvbSAnLi9tb2RlbC9sb2dnaW5nLWNvbmZpZyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbW9kZWwvc2VydmljZS1jb25maWcnO1xyXG5leHBvcnQgKiBmcm9tICcuL21vZGVsL3VzZXItb3ItZ3JvdXAnO1xyXG5leHBvcnQgKiBmcm9tICcuL21vZGVsL3VzZXInO1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi9zZXJ2aWNlcy9hY3RpdmUtZGlyZWN0b3J5LnNlcnZpY2UnO1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi9hY3RpdmUtZGlyZWN0b3J5Lm1vZHVsZSc7Il19
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { ServiceConfig as NgxLibServiceConfig } from '@cleavelandprice/ngx-lib';
|
|
2
|
-
export class ServiceConfig extends NgxLibServiceConfig {
|
|
3
|
-
// See the comment in the library's main service-config.ts file for an explanation
|
|
4
|
-
constructor(useSsl_or_customApiUrl = false, appName, tokenName = 'token', // The name used as the Key of the item saved in the browser's LocalStorage
|
|
5
|
-
authenticateEndpoint = '/authenticate/token') {
|
|
6
|
-
super(useSsl_or_customApiUrl);
|
|
7
|
-
this.appName = appName;
|
|
8
|
-
this.tokenName = tokenName;
|
|
9
|
-
this.authenticateEndpoint = authenticateEndpoint;
|
|
10
|
-
}
|
|
11
|
-
}
|
|
12
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS1jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGVhdmVsYW5kcHJpY2Uvbmd4LWxpYi9hdXRoZW50aWNhdGlvbi9zcmMvbW9kZWwvc2VydmljZS1jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGFBQWEsSUFBSSxtQkFBbUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRWhGLE1BQU0sT0FBTyxhQUFjLFNBQVEsbUJBQW1CO0lBQ2xELGtGQUFrRjtJQUNsRixZQUFZLHlCQUEyQyxLQUFLLEVBQ2pELE9BQWdCLEVBQ2hCLFlBQVksT0FBTyxFQUFFLDJFQUEyRTtJQUNoRyx1QkFBdUIscUJBQXFCO1FBRW5ELEtBQUssQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO1FBSnZCLFlBQU8sR0FBUCxPQUFPLENBQVM7UUFDaEIsY0FBUyxHQUFULFNBQVMsQ0FBVTtRQUNuQix5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXdCO0lBR3ZELENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNlcnZpY2VDb25maWcgYXMgTmd4TGliU2VydmljZUNvbmZpZyB9IGZyb20gJ0BjbGVhdmVsYW5kcHJpY2Uvbmd4LWxpYic7XHJcblxyXG5leHBvcnQgY2xhc3MgU2VydmljZUNvbmZpZyBleHRlbmRzIE5neExpYlNlcnZpY2VDb25maWcge1xyXG4gICAgLy8gU2VlIHRoZSBjb21tZW50IGluIHRoZSBsaWJyYXJ5J3MgbWFpbiBzZXJ2aWNlLWNvbmZpZy50cyBmaWxlIGZvciBhbiBleHBsYW5hdGlvblxyXG4gICAgY29uc3RydWN0b3IodXNlU3NsX29yX2N1c3RvbUFwaVVybDogYm9vbGVhbiB8IHN0cmluZyA9IGZhbHNlLFxyXG4gICAgICAgIHB1YmxpYyBhcHBOYW1lPzogc3RyaW5nLFxyXG4gICAgICAgIHB1YmxpYyB0b2tlbk5hbWUgPSAndG9rZW4nLCAvLyBUaGUgbmFtZSB1c2VkIGFzIHRoZSBLZXkgb2YgdGhlIGl0ZW0gc2F2ZWQgaW4gdGhlIGJyb3dzZXIncyBMb2NhbFN0b3JhZ2VcclxuICAgICAgICBwdWJsaWMgYXV0aGVudGljYXRlRW5kcG9pbnQgPSAnL2F1dGhlbnRpY2F0ZS90b2tlbidcclxuICAgICAgICApIHtcclxuICAgICAgICBzdXBlcih1c2VTc2xfb3JfY3VzdG9tQXBpVXJsKTtcclxuICAgIH1cclxufSJdfQ==
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
//import { ServiceConfig as NgxLibServiceConfig } from '@cleavelandprice/ngx-lib';
|
|
2
|
-
import { ServiceConfig as BaseServiceConfig } from '@cleavelandprice/ngx-lib/authentication';
|
|
3
|
-
export class ServiceConfig extends BaseServiceConfig {
|
|
4
|
-
// See the comment in the library's main service-config.ts file for an explanation
|
|
5
|
-
constructor(useSsl_or_customApiUrl = false, appName, tokenName = 'user', authenticateEndpoint = '/authenticate') {
|
|
6
|
-
super(useSsl_or_customApiUrl, appName, tokenName, authenticateEndpoint);
|
|
7
|
-
}
|
|
8
|
-
}
|
|
9
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS1jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGVhdmVsYW5kcHJpY2Uvbmd4LWxpYi9hdXRoZW50aWNhdGlvbi9vYmplY3Qvc3JjL21vZGVsL3NlcnZpY2UtY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGtGQUFrRjtBQUNsRixPQUFPLEVBQUUsYUFBYSxJQUFJLGlCQUFpQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFFN0YsTUFBTSxPQUFPLGFBQWMsU0FBUSxpQkFBaUI7SUFFaEQsa0ZBQWtGO0lBQ2xGLFlBQVkseUJBQTJDLEtBQUssRUFDeEQsT0FBZ0IsRUFDaEIsU0FBUyxHQUFHLE1BQU0sRUFDbEIsb0JBQW9CLEdBQUcsZUFBZTtRQUV0QyxLQUFLLENBQUMsc0JBQXNCLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxvQkFBb0IsQ0FBQyxDQUFDO0lBQzVFLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbIi8vaW1wb3J0IHsgU2VydmljZUNvbmZpZyBhcyBOZ3hMaWJTZXJ2aWNlQ29uZmlnIH0gZnJvbSAnQGNsZWF2ZWxhbmRwcmljZS9uZ3gtbGliJztcclxuaW1wb3J0IHsgU2VydmljZUNvbmZpZyBhcyBCYXNlU2VydmljZUNvbmZpZyB9IGZyb20gJ0BjbGVhdmVsYW5kcHJpY2Uvbmd4LWxpYi9hdXRoZW50aWNhdGlvbic7XHJcblxyXG5leHBvcnQgY2xhc3MgU2VydmljZUNvbmZpZyBleHRlbmRzIEJhc2VTZXJ2aWNlQ29uZmlnIHtcclxuICAgIFxyXG4gICAgLy8gU2VlIHRoZSBjb21tZW50IGluIHRoZSBsaWJyYXJ5J3MgbWFpbiBzZXJ2aWNlLWNvbmZpZy50cyBmaWxlIGZvciBhbiBleHBsYW5hdGlvblxyXG4gICAgY29uc3RydWN0b3IodXNlU3NsX29yX2N1c3RvbUFwaVVybDogYm9vbGVhbiB8IHN0cmluZyA9IGZhbHNlLFxyXG4gICAgICAgIGFwcE5hbWU/OiBzdHJpbmcsXHJcbiAgICAgICAgdG9rZW5OYW1lID0gJ3VzZXInLFxyXG4gICAgICAgIGF1dGhlbnRpY2F0ZUVuZHBvaW50ID0gJy9hdXRoZW50aWNhdGUnXHJcbiAgICAgICAgKSB7XHJcbiAgICAgICAgc3VwZXIodXNlU3NsX29yX2N1c3RvbUFwaVVybCwgYXBwTmFtZSwgdG9rZW5OYW1lLCBhdXRoZW50aWNhdGVFbmRwb2ludCk7XHJcbiAgICB9XHJcbn0iXX0=
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
import { NgModule, Optional, SkipSelf } from '@angular/core';
|
|
2
|
-
import { CommonModule } from '@angular/common';
|
|
3
|
-
import { ServiceConfig } from './model/service-config';
|
|
4
|
-
import { AuthenticationService } from './services/authentication.service';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
export class ObjectModule {
|
|
7
|
-
static forRoot(config) {
|
|
8
|
-
return {
|
|
9
|
-
ngModule: ObjectModule,
|
|
10
|
-
providers: [
|
|
11
|
-
AuthenticationService,
|
|
12
|
-
{ provide: ServiceConfig, useValue: config }
|
|
13
|
-
]
|
|
14
|
-
};
|
|
15
|
-
}
|
|
16
|
-
constructor(parentModule) {
|
|
17
|
-
if (parentModule) {
|
|
18
|
-
throw new Error('ObjectModule is already loaded. Import it in the AppModule only');
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: ObjectModule, deps: [{ token: ObjectModule, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
22
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.0", ngImport: i0, type: ObjectModule, imports: [CommonModule] }); }
|
|
23
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: ObjectModule, imports: [CommonModule] }); }
|
|
24
|
-
}
|
|
25
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: ObjectModule, decorators: [{
|
|
26
|
-
type: NgModule,
|
|
27
|
-
args: [{
|
|
28
|
-
declarations: [],
|
|
29
|
-
imports: [
|
|
30
|
-
CommonModule
|
|
31
|
-
],
|
|
32
|
-
exports: []
|
|
33
|
-
}]
|
|
34
|
-
}], ctorParameters: () => [{ type: ObjectModule, decorators: [{
|
|
35
|
-
type: Optional
|
|
36
|
-
}, {
|
|
37
|
-
type: SkipSelf
|
|
38
|
-
}] }] });
|
|
39
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2JqZWN0Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsZWF2ZWxhbmRwcmljZS9uZ3gtbGliL2F1dGhlbnRpY2F0aW9uL29iamVjdC9zcmMvb2JqZWN0Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXVCLFFBQVEsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFdkQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7O0FBUzFFLE1BQU0sT0FBTyxZQUFZO0lBQ3ZCLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBcUI7UUFDbEMsT0FBTztZQUNMLFFBQVEsRUFBRSxZQUFZO1lBQ3RCLFNBQVMsRUFBRTtnQkFDVCxxQkFBcUI7Z0JBQ3JCLEVBQUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFO2FBQzdDO1NBQ0YsQ0FBQztJQUNKLENBQUM7SUFFRCxZQUFvQyxZQUEwQjtRQUM1RCxJQUFJLFlBQVksRUFBRSxDQUFDO1lBQ2pCLE1BQU0sSUFBSSxLQUFLLENBQ2IsaUVBQWlFLENBQUMsQ0FBQztRQUN2RSxDQUFDO0lBQ0gsQ0FBQzs4R0FoQlUsWUFBWTsrR0FBWixZQUFZLFlBSnJCLFlBQVk7K0dBSUgsWUFBWSxZQUpyQixZQUFZOzsyRkFJSCxZQUFZO2tCQVB4QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxFQUFFO29CQUNoQixPQUFPLEVBQUU7d0JBQ1AsWUFBWTtxQkFDYjtvQkFDRCxPQUFPLEVBQUUsRUFBRTtpQkFDWjs7MEJBWWMsUUFBUTs7MEJBQUksUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1vZHVsZVdpdGhQcm92aWRlcnMsIE5nTW9kdWxlLCBPcHRpb25hbCwgU2tpcFNlbGYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuXHJcbmltcG9ydCB7IFNlcnZpY2VDb25maWcgfSBmcm9tICcuL21vZGVsL3NlcnZpY2UtY29uZmlnJztcclxuXHJcbmltcG9ydCB7IEF1dGhlbnRpY2F0aW9uU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvYXV0aGVudGljYXRpb24uc2VydmljZSc7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGRlY2xhcmF0aW9uczogW10sXHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlXHJcbiAgXSxcclxuICBleHBvcnRzOiBbXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgT2JqZWN0TW9kdWxlIHtcclxuICBzdGF0aWMgZm9yUm9vdChjb25maWc6IFNlcnZpY2VDb25maWcpOiBNb2R1bGVXaXRoUHJvdmlkZXJzPE9iamVjdE1vZHVsZT4ge1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgbmdNb2R1bGU6IE9iamVjdE1vZHVsZSxcclxuICAgICAgcHJvdmlkZXJzOiBbXHJcbiAgICAgICAgQXV0aGVudGljYXRpb25TZXJ2aWNlLFxyXG4gICAgICAgIHsgcHJvdmlkZTogU2VydmljZUNvbmZpZywgdXNlVmFsdWU6IGNvbmZpZyB9XHJcbiAgICAgIF1cclxuICAgIH07XHJcbiAgfVxyXG5cclxuICBjb25zdHJ1Y3RvcihAT3B0aW9uYWwoKSBAU2tpcFNlbGYoKSBwYXJlbnRNb2R1bGU6IE9iamVjdE1vZHVsZSkge1xyXG4gICAgaWYgKHBhcmVudE1vZHVsZSkge1xyXG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXHJcbiAgICAgICAgJ09iamVjdE1vZHVsZSBpcyBhbHJlYWR5IGxvYWRlZC4gSW1wb3J0IGl0IGluIHRoZSBBcHBNb2R1bGUgb25seScpO1xyXG4gICAgfVxyXG4gIH1cclxufSJdfQ==
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
export * from './model/service-config';
|
|
2
|
-
export * from './services/authentication.service';
|
|
3
|
-
export * from './object.module';
|
|
4
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsZWF2ZWxhbmRwcmljZS9uZ3gtbGliL2F1dGhlbnRpY2F0aW9uL29iamVjdC9zcmMvcHVibGljX2FwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHdCQUF3QixDQUFDO0FBRXZDLGNBQWMsbUNBQW1DLENBQUM7QUFFbEQsY0FBYyxpQkFBaUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbW9kZWwvc2VydmljZS1jb25maWcnO1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi9zZXJ2aWNlcy9hdXRoZW50aWNhdGlvbi5zZXJ2aWNlJztcclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vb2JqZWN0Lm1vZHVsZSc7Il19
|