@cleavelandprice/ngx-lib 3.14.6 → 4.0.1
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 +11 -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 +100 -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 +11 -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 +17 -20
- 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 +16 -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 +24 -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 +674 -0
- package/fesm2022/cleavelandprice-ngx-lib-active-directory-material.mjs.map +1 -0
- package/fesm2022/cleavelandprice-ngx-lib-active-directory.mjs +70 -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 +58 -69
- package/fesm2022/cleavelandprice-ngx-lib-quill.mjs.map +1 -1
- package/fesm2022/cleavelandprice-ngx-lib-sharepoint.mjs +106 -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 +125 -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 +57 -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
|
@@ -1,105 +1,125 @@
|
|
|
1
1
|
import { HttpClient } from '@angular/common/http';
|
|
2
|
-
import { inject, Injectable } from '@angular/core';
|
|
2
|
+
import { Inject, inject, Injectable, Optional } from '@angular/core';
|
|
3
3
|
import { DateTime } from 'luxon';
|
|
4
4
|
import { of } from 'rxjs';
|
|
5
|
-
import {
|
|
5
|
+
import { NgxLibServiceBase } from '@cleavelandprice/ngx-lib';
|
|
6
|
+
import { ActiveDirectoryServiceOptionsToken } from '../model/active-directory-service-options';
|
|
6
7
|
import * as i0 from "@angular/core";
|
|
7
|
-
export class ActiveDirectoryService {
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
}
|
|
8
|
+
export class ActiveDirectoryService extends NgxLibServiceBase {
|
|
9
|
+
#services = {
|
|
10
|
+
http: inject(HttpClient)
|
|
11
|
+
};
|
|
12
|
+
#cache;
|
|
13
|
+
#defaultCacheLifeMinutes = 720;
|
|
14
14
|
//#region Properties
|
|
15
|
-
get cacheExpired() {
|
|
16
|
-
if (!this
|
|
15
|
+
get #cacheExpired() {
|
|
16
|
+
if (!this.#cache) {
|
|
17
17
|
return true;
|
|
18
18
|
}
|
|
19
|
-
const
|
|
20
|
-
const expiration = this.cache.lastUpdate.plus({ minutes: lifeMinutes });
|
|
19
|
+
const expiration = this.#cache.lastUpdate.plus({ minutes: this.options.caching.lifeMinutes });
|
|
21
20
|
return DateTime.now() > expiration;
|
|
22
21
|
}
|
|
23
22
|
//#endregion
|
|
23
|
+
constructor(options) {
|
|
24
|
+
super(options);
|
|
25
|
+
this.options = options;
|
|
26
|
+
this.options = {
|
|
27
|
+
...options,
|
|
28
|
+
caching: options?.caching ?? {
|
|
29
|
+
enabled: false,
|
|
30
|
+
lifeMinutes: this.#defaultCacheLifeMinutes
|
|
31
|
+
},
|
|
32
|
+
logging: options?.logging ?? {
|
|
33
|
+
dataCached: false,
|
|
34
|
+
cachedDataReturned: false,
|
|
35
|
+
freshDataReturned: false,
|
|
36
|
+
cacheCleared: false
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
}
|
|
24
40
|
getUsers(includePhoto = false, includeDisabled = false, parentOU = '') {
|
|
25
41
|
// If caching is enabled, there will be two calls to the API if the cache is null/expired
|
|
26
42
|
// One call is to update the cache and the other is to return the data that the user requested
|
|
27
43
|
// Subsequent calls will bypass the API and returned cached data until it expires
|
|
28
|
-
const observable$ = this.http.get(`${this.
|
|
29
|
-
if (this.
|
|
30
|
-
if (this
|
|
44
|
+
const observable$ = this.#services.http.get(`${this.apiUrl}/users/${includePhoto}/${includeDisabled}/${parentOU}`);
|
|
45
|
+
if (this.options.caching.enabled) {
|
|
46
|
+
if (this.#cacheExpired) {
|
|
31
47
|
// Get the data and cache it
|
|
32
48
|
observable$.subscribe(data => {
|
|
33
|
-
this
|
|
49
|
+
this.#cache = {
|
|
34
50
|
data,
|
|
35
51
|
lastUpdate: DateTime.now()
|
|
36
52
|
};
|
|
37
|
-
if (this.
|
|
38
|
-
|
|
39
|
-
console.log(`Data cached for ${lifeMinutes} minutes`);
|
|
53
|
+
if (this.options.logging.dataCached) {
|
|
54
|
+
console.log(`Data cached for ${this.options.caching.lifeMinutes} minutes`);
|
|
40
55
|
}
|
|
41
56
|
});
|
|
42
57
|
}
|
|
43
58
|
else {
|
|
44
59
|
// Cache exists and hasn't expired yet
|
|
45
|
-
if (this.
|
|
60
|
+
if (this.options.logging.cachedDataReturned) {
|
|
46
61
|
console.log('Returning cached users');
|
|
47
62
|
}
|
|
48
|
-
return of(this
|
|
63
|
+
return of(this.#cache.data);
|
|
49
64
|
}
|
|
50
65
|
}
|
|
51
66
|
// Cache is either disabled or expired, return data from API
|
|
52
|
-
if (this.
|
|
67
|
+
if (this.options.logging.freshDataReturned) {
|
|
53
68
|
console.log('Returning fresh users');
|
|
54
69
|
}
|
|
55
70
|
return observable$;
|
|
56
71
|
}
|
|
57
72
|
getUser(accountName, includePhoto = false) {
|
|
58
|
-
return this.http.get(`${this.
|
|
73
|
+
return this.#services.http.get(`${this.apiUrl}/users/name/${accountName}/${includePhoto}`);
|
|
59
74
|
}
|
|
60
75
|
clearCache() {
|
|
61
|
-
this
|
|
62
|
-
if (this.
|
|
76
|
+
this.#cache = undefined;
|
|
77
|
+
if (this.options.logging.cacheCleared) {
|
|
63
78
|
console.log('Cache cleared');
|
|
64
79
|
}
|
|
65
80
|
}
|
|
66
81
|
getDomains() {
|
|
67
|
-
return this.http.get(`${this.
|
|
82
|
+
return this.#services.http.get(`${this.apiUrl}/activedirectory/domains`);
|
|
68
83
|
}
|
|
69
84
|
getOUs(parentOU = '') {
|
|
70
|
-
return this.http.get(`${this.
|
|
85
|
+
return this.#services.http.get(`${this.apiUrl}/activedirectory/ous/${parentOU}`);
|
|
71
86
|
}
|
|
72
87
|
getContainers(parentOU = '') {
|
|
73
|
-
return this.http.get(`${this.
|
|
88
|
+
return this.#services.http.get(`${this.apiUrl}/activedirectory/containers/${parentOU}`);
|
|
74
89
|
}
|
|
75
90
|
getGroups(parentOU = '') {
|
|
76
|
-
return this.http.get(`${this.
|
|
91
|
+
return this.#services.http.get(`${this.apiUrl}/activedirectory/groups/${parentOU}`);
|
|
77
92
|
}
|
|
78
93
|
getDistinctUserAttributeValues(attributeName) {
|
|
79
|
-
return this.http.get(`${this.
|
|
94
|
+
return this.#services.http.get(`${this.apiUrl}/activedirectory/distinct/${attributeName}`);
|
|
80
95
|
}
|
|
81
96
|
getDepartments() {
|
|
82
|
-
return this.http.get(`${this.
|
|
97
|
+
return this.#services.http.get(`${this.apiUrl}/activedirectory/departments`);
|
|
83
98
|
}
|
|
84
99
|
getTitles() {
|
|
85
|
-
return this.http.get(`${this.
|
|
100
|
+
return this.#services.http.get(`${this.apiUrl}/activedirectory/titles`);
|
|
86
101
|
}
|
|
87
102
|
getComputers(includeDisabled = false, parentOU = '') {
|
|
88
|
-
return this.http.get(`${this.
|
|
103
|
+
return this.#services.http.get(`${this.apiUrl}/activedirectory/computers/${includeDisabled}/${parentOU}`);
|
|
89
104
|
}
|
|
90
105
|
getServers(includeDisabled = false, parentOU = '') {
|
|
91
|
-
return this.http.get(`${this.
|
|
106
|
+
return this.#services.http.get(`${this.apiUrl}/activedirectory/servers/${includeDisabled}/${parentOU}`);
|
|
92
107
|
}
|
|
93
108
|
getWorkstations(includeDisabled = false, parentOU = '') {
|
|
94
|
-
return this.http.get(`${this.
|
|
109
|
+
return this.#services.http.get(`${this.apiUrl}/activedirectory/workstations/${includeDisabled}/${parentOU}`);
|
|
95
110
|
}
|
|
96
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.
|
|
97
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.
|
|
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' }); }
|
|
98
113
|
}
|
|
99
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.
|
|
114
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: ActiveDirectoryService, decorators: [{
|
|
100
115
|
type: Injectable,
|
|
101
116
|
args: [{
|
|
102
117
|
providedIn: 'root'
|
|
103
118
|
}]
|
|
104
|
-
}]
|
|
105
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aXZlLWRpcmVjdG9yeS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xlYXZlbGFuZHByaWNlL25neC1saWIvYWN0aXZlLWRpcmVjdG9yeS9zcmMvc2VydmljZXMvYWN0aXZlLWRpcmVjdG9yeS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sT0FBTyxDQUFDO0FBQ2pDLE9BQU8sRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFPdEMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHlCQUF5QixDQUFDOztBQU14RCxNQUFNLE9BQU8sc0JBQXNCO0lBSG5DO1FBSUUsa0JBQWtCO1FBQ1YsV0FBTSxHQUFHLE1BQU0sQ0FBQyxhQUFhLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsSUFBSSxJQUFJLGFBQWEsRUFBRSxDQUFDO1FBQzFFLFNBQUksR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFHMUIsNEJBQXVCLEdBQUcsR0FBRyxDQUFDO0tBeUd2QztJQXZHQyxvQkFBb0I7SUFDcEIsSUFBWSxZQUFZO1FBQ3RCLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDaEIsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDO1FBRUQsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxPQUFPLEVBQUUsV0FBVyxJQUFJLElBQUksQ0FBQyx1QkFBdUIsQ0FBQztRQUN0RixNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsRUFBRSxPQUFPLEVBQUUsV0FB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RCxlQUFlLENBQUMsZUFBZSxHQUFHLEtBQUssRUFBRSxRQUFRLEdBQUcsRUFBRTtRQUNwRCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFTLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxNQUFNLGlDQUFpQyxlQUFlLElBQUksUUFBUSxFQUFFLENBQUMsQ0FBQztJQUNySCxDQUFDOzhHQTlHVSxzQkFBc0I7a0hBQXRCLHNCQUFzQixjQUZyQixNQUFNOzsyRkFFUCxzQkFBc0I7a0JBSGxDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IERhdGVUaW1lIH0gZnJvbSAnbHV4b24nO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBvZiB9IGZyb20gJ3J4anMnO1xyXG5cclxuaW1wb3J0IHsgQURPYmplY3QgfSBmcm9tICcuLi9tb2RlbC9hZC1vYmplY3QnO1xyXG5pbXBvcnQgeyBBRE9iamVjdFdpdGhDaGlsZHJlbiB9IGZyb20gJy4uL21vZGVsL2FkLW9iamVjdC13aXRoLWNoaWxkcmVuJztcclxuaW1wb3J0IHsgQ2FjaGVPYmplY3QgfSBmcm9tICcuLi9tb2RlbC9jYWNoZS1vYmplY3QnO1xyXG5pbXBvcnQgeyBDbGVhdmVsYW5kUHJpY2VVc2VyIH0gZnJvbSAnLi4vbW9kZWwvY2xlYXZlbGFuZC1wcmljZS11c2VyJztcclxuaW1wb3J0IHsgR3JvdXAgfSBmcm9tICcuLi9tb2RlbC9ncm91cCc7XHJcbmltcG9ydCB7IFNlcnZpY2VDb25maWcgfSBmcm9tICcuLi9tb2RlbC9zZXJ2aWNlLWNvbmZpZyc7XHJcbmltcG9ydCB7IFVzZXIgfSBmcm9tICcuLi9tb2RlbC91c2VyJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIEFjdGl2ZURpcmVjdG9yeVNlcnZpY2Uge1xyXG4gIC8vI3JlZ2lvbiBTZXJ2aWNlc1xyXG4gIHByaXZhdGUgY29uZmlnID0gaW5qZWN0KFNlcnZpY2VDb25maWcsIHsgb3B0aW9uYWw6IHRydWUgfSkgPz8gbmV3IFNlcnZpY2VDb25maWcoKTtcclxuICBwcml2YXRlIGh0dHAgPSBpbmplY3QoSHR0cENsaWVudCk7XHJcbiAgLy8jZW5kcmVnaW9uXHJcbiAgcHJpdmF0ZSBjYWNoZT86IENhY2hlT2JqZWN0PENsZWF2ZWxhbmRQcmljZVVzZXI+O1xyXG4gIHByaXZhdGUgZGVmYXVsdENhY2hlTGlmZU1pbnV0ZXMgPSA3MjA7XHJcblxyXG4gIC8vI3JlZ2lvbiBQcm9wZXJ0aWVzXHJcbiAgcHJpdmF0ZSBnZXQgY2FjaGVFeHBpcmVkKCk6IGJvb2xlYW4ge1xyXG4gICAgaWYgKCF0aGlzLmNhY2hlKSB7XHJcbiAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IGxpZmVNaW51dGVzID0gdGhpcy5jb25maWc/LmNhY2hpbmc/LmxpZmVNaW51dGVzID8/IHRoaXMuZGVmYXVsdENhY2hlTGlmZU1pbnV0ZXM7XHJcbiAgICBjb25zdCBleHBpcmF0aW9uID0gdGhpcy5jYWNoZS5sYXN0VXBkYXRlLnBsdXMoeyBtaW51dGVzOiBsaWZlTWludXRlc30pO1xyXG5cclxuICAgIHJldHVybiBEYXRlVGltZS5ub3coKSA+IGV4cGlyYXRpb247XHJcbiAgfVxyXG4gIC8vI2VuZHJlZ2lvblxyXG5cclxuICBnZXRVc2VycyhpbmNsdWRlUGhvdG8gPSBmYWxzZSwgaW5jbHVkZURpc2FibGVkID0gZmFsc2UsIHBhcmVudE9VID0gJycpOiBPYnNlcnZhYmxlPENsZWF2ZWxhbmRQcmljZVVzZXJbXT4ge1xyXG4gICAgLy8gSWYgY2FjaGluZyBpcyBlbmFibGVkLCB0aGVyZSB3aWxsIGJlIHR3byBjYWxscyB0byB0aGUgQVBJIGlmIHRoZSBjYWNoZSBpcyBudWxsL2V4cGlyZWRcclxuICAgIC8vIE9uZSBjYWxsIGlzIHRvIHVwZGF0ZSB0aGUgY2FjaGUgYW5kIHRoZSBvdGhlciBpcyB0byByZXR1cm4gdGhlIGRhdGEgdGhhdCB0aGUgdXNlciByZXF1ZXN0ZWRcclxuICAgIC8vIFN1YnNlcXVlbnQgY2FsbHMgd2lsbCBieXBhc3MgdGhlIEFQSSBhbmQgcmV0dXJuZWQgY2FjaGVkIGRhdGEgdW50aWwgaXQgZXhwaXJlc1xyXG5cclxuICAgIGNvbnN0IG9ic2VydmFibGUkID0gdGhpcy5odHRwLmdldDxDbGVhdmVsYW5kUHJpY2VVc2VyW10+KGAke3RoaXMuY29uZmlnPy5hcGlVcmx9L3VzZXJzLyR7aW5jbHVkZVBob3RvfS8ke2luY2x1ZGVEaXNhYmxlZH0vJHtwYXJlbnRPVX1gKTtcclxuXHJcbiAgICBpZiAodGhpcy5jb25maWc/LmNhY2hpbmc/LmVuYWJsZWQpIHtcclxuICAgICAgaWYgKHRoaXMuY2FjaGVFeHBpcmVkKSB7XHJcbiAgICAgICAgLy8gR2V0IHRoZSBkYXRhIGFuZCBjYWNoZSBpdFxyXG4gICAgICAgIG9ic2VydmFibGUkLnN1YnNjcmliZShkYXRhID0+IHtcclxuICAgICAgICAgIHRoaXMuY2FjaGUgPSB7XHJcbiAgICAgICAgICAgIGRhdGEsXHJcbiAgICAgICAgICAgIGxhc3RVcGRhdGU6IERhdGVUaW1lLm5vdygpXHJcbiAgICAgICAgICB9O1xyXG5cclxuICAgICAgICAgIGlmICh0aGlzLmNvbmZpZz8ubG9nZ2luZz8uZGF0YUNhY2hlZCkge1xyXG4gICAgICAgICAgICBjb25zdCBsaWZlTWludXRlcyA9IHRoaXMuY29uZmlnLmNhY2hpbmc/LmxpZmVNaW51dGVzID8/IHRoaXMuZGVmYXVsdENhY2hlTGlmZU1pbnV0ZXM7XHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKGBEYXRhIGNhY2hlZCBmb3IgJHtsaWZlTWludXRlc30gbWludXRlc2ApO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIC8vIENhY2hlIGV4aXN0cyBhbmQgaGFzbid0IGV4cGlyZWQgeWV0XHJcbiAgICAgICAgaWYgKHRoaXMuY29uZmlnLmxvZ2dpbmc/LmNhY2hlZERhdGFSZXR1cm5lZCkge1xyXG4gICAgICAgICAgY29uc29sZS5sb2coJ1JldHVybmluZyBjYWNoZWQgdXNlcnMnKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiBvZih0aGlzLmNhY2hlIS5kYXRhKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8vIENhY2hlIGlzIGVpdGhlciBkaXNhYmxlZCBvciBleHBpcmVkLCByZXR1cm4gZGF0YSBmcm9tIEFQSVxyXG4gICAgaWYgKHRoaXMuY29uZmlnPy5sb2dnaW5nPy5mcmVzaERhdGFSZXR1cm5lZCkge1xyXG4gICAgICBjb25zb2xlLmxvZygnUmV0dXJuaW5nIGZyZXNoIHVzZXJzJyk7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIG9ic2VydmFibGUkO1xyXG4gIH1cclxuXHJcbiAgZ2V0VXNlcihhY2NvdW50TmFtZTogc3RyaW5nLCBpbmNsdWRlUGhvdG8gPSBmYWxzZSk6IE9ic2VydmFibGU8Q2xlYXZlbGFuZFByaWNlVXNlcj4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8Q2xlYXZlbGFuZFByaWNlVXNlcj4oYCR7dGhpcy5jb25maWc/LmFwaVVybH0vdXNlcnMvbmFtZS8ke2FjY291bnROYW1lfS8ke2luY2x1ZGVQaG90b31gKTtcclxuICB9XHJcblxyXG4gIGNsZWFyQ2FjaGUoKTogdm9pZCB7XHJcbiAgICB0aGlzLmNhY2hlID0gdW5kZWZpbmVkO1xyXG5cclxuICAgIGlmICh0aGlzLmNvbmZpZz8ubG9nZ2luZz8uY2FjaGVDbGVhcmVkKSB7XHJcbiAgICAgIGNvbnNvbGUubG9nKCdDYWNoZSBjbGVhcmVkJyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBnZXREb21haW5zKCk6IE9ic2VydmFibGU8QURPYmplY3RbXT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8QURPYmplY3RbXT4oYCR7dGhpcy5jb25maWc/LmFwaVVybH0vYWN0aXZlZGlyZWN0b3J5L2RvbWFpbnNgKTtcclxuICB9XHJcblxyXG4gIGdldE9VcyhwYXJlbnRPVSA9ICcnKTogT2JzZXJ2YWJsZTxBRE9iamVjdFdpdGhDaGlsZHJlbltdPiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxBRE9iamVjdFdpdGhDaGlsZHJlbltdPihgJHt0aGlzLmNvbmZpZz8uYXBpVXJsfS9hY3RpdmVkaXJlY3Rvcnkvb3VzLyR7cGFyZW50T1V9YCk7XHJcbiAgfVxyXG5cclxuICBnZXRDb250YWluZXJzKHBhcmVudE9VID0gJycpOiBPYnNlcnZhYmxlPEFET2JqZWN0V2l0aENoaWxkcmVuW10+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PEFET2JqZWN0V2l0aENoaWxkcmVuW10+KGAke3RoaXMuY29uZmlnPy5hcGlVcmx9L2FjdGl2ZWRpcmVjdG9yeS9jb250YWluZXJzLyR7cGFyZW50T1V9YCk7XHJcbiAgfVxyXG5cclxuICBnZXRHcm91cHMocGFyZW50T1UgPSAnJyk6IE9ic2VydmFibGU8R3JvdXBbXT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8R3JvdXBbXT4oYCR7dGhpcy5jb25maWc/LmFwaVVybH0vYWN0aXZlZGlyZWN0b3J5L2dyb3Vwcy8ke3BhcmVudE9VfWApO1xyXG4gIH1cclxuXHJcbiAgZ2V0RGlzdGluY3RVc2VyQXR0cmlidXRlVmFsdWVzKGF0dHJpYnV0ZU5hbWU6IHN0cmluZykgOiBPYnNlcnZhYmxlPGFueVtdPiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxhbnlbXT4oYCR7dGhpcy5jb25maWc/LmFwaVVybH0vYWN0aXZlZGlyZWN0b3J5L2Rpc3RpbmN0LyR7YXR0cmlidXRlTmFtZX1gKTtcclxuICB9XHJcblxyXG4gIGdldERlcGFydG1lbnRzKCkgOiBPYnNlcnZhYmxlPHN0cmluZ1tdPiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxzdHJpbmdbXT4oYCR7dGhpcy5jb25maWc/LmFwaVVybH0vYWN0aXZlZGlyZWN0b3J5L2RlcGFydG1lbnRzYCk7XHJcbiAgfVxyXG5cclxuICBnZXRUaXRsZXMoKSA6IE9ic2VydmFibGU8c3RyaW5nW10+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PHN0cmluZ1tdPihgJHt0aGlzLmNvbmZpZz8uYXBpVXJsfS9hY3RpdmVkaXJlY3RvcnkvdGl0bGVzYCk7XHJcbiAgfVxyXG5cclxuICBnZXRDb21wdXRlcnMoaW5jbHVkZURpc2FibGVkID0gZmFsc2UsIHBhcmVudE9VID0gJycpOiBPYnNlcnZhYmxlPFVzZXJbXT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8VXNlcltdPihgJHt0aGlzLmNvbmZpZz8uYXBpVXJsfS9hY3RpdmVkaXJlY3RvcnkvY29tcHV0ZXJzLyR7aW5jbHVkZURpc2FibGVkfS8ke3BhcmVudE9VfWApO1xyXG4gIH1cclxuXHJcbiAgZ2V0U2VydmVycyhpbmNsdWRlRGlzYWJsZWQgPSBmYWxzZSwgcGFyZW50T1UgPSAnJyk6IE9ic2VydmFibGU8VXNlcltdPiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxVc2VyW10+KGAke3RoaXMuY29uZmlnPy5hcGlVcmx9L2FjdGl2ZWRpcmVjdG9yeS9zZXJ2ZXJzLyR7aW5jbHVkZURpc2FibGVkfS8ke3BhcmVudE9VfWApO1xyXG4gIH1cclxuXHJcbiAgZ2V0V29ya3N0YXRpb25zKGluY2x1ZGVEaXNhYmxlZCA9IGZhbHNlLCBwYXJlbnRPVSA9ICcnKTogT2JzZXJ2YWJsZTxVc2VyW10+IHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PFVzZXJbXT4oYCR7dGhpcy5jb25maWc/LmFwaVVybH0vYWN0aXZlZGlyZWN0b3J5L3dvcmtzdGF0aW9ucy8ke2luY2x1ZGVEaXNhYmxlZH0vJHtwYXJlbnRPVX1gKTtcclxuICB9XHJcbn1cclxuIl19
|
|
119
|
+
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
120
|
+
type: Optional
|
|
121
|
+
}, {
|
|
122
|
+
type: Inject,
|
|
123
|
+
args: [ActiveDirectoryServiceOptionsToken]
|
|
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=
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export * from './model/abstract-authentication-service';
|
|
2
|
+
export * from './model/authenticated-user';
|
|
3
|
+
export * from './model/authentication-request';
|
|
4
|
+
export * from './model/authentication-service-options';
|
|
5
|
+
export * from './authentication.base.module';
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aGVudGljYXRpb24uYXBpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xlYXZlbGFuZHByaWNlL25neC1saWIvYXV0aGVudGljYXRpb24vc3JjL2F1dGhlbnRpY2F0aW9uLmFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHlDQUF5QyxDQUFDO0FBQ3hELGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxjQUFjLHdDQUF3QyxDQUFDO0FBRXZELGNBQWMsOEJBQThCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL21vZGVsL2Fic3RyYWN0LWF1dGhlbnRpY2F0aW9uLXNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL21vZGVsL2F1dGhlbnRpY2F0ZWQtdXNlcic7XHJcbmV4cG9ydCAqIGZyb20gJy4vbW9kZWwvYXV0aGVudGljYXRpb24tcmVxdWVzdCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbW9kZWwvYXV0aGVudGljYXRpb24tc2VydmljZS1vcHRpb25zJztcclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vYXV0aGVudGljYXRpb24uYmFzZS5tb2R1bGUnO1xyXG4iXX0=
|
|
@@ -1,12 +1,29 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
1
|
import { CommonModule } from '@angular/common';
|
|
2
|
+
import { NgModule, Optional, SkipSelf } from '@angular/core';
|
|
3
|
+
import { AuthenticationBaseServiceOptionsToken } from './model/authentication-service-options';
|
|
3
4
|
import * as i0 from "@angular/core";
|
|
4
5
|
export class AuthenticationBaseModule {
|
|
5
|
-
static
|
|
6
|
-
|
|
7
|
-
|
|
6
|
+
static forRoot(options) {
|
|
7
|
+
return {
|
|
8
|
+
ngModule: AuthenticationBaseModule,
|
|
9
|
+
providers: [
|
|
10
|
+
{
|
|
11
|
+
provide: AuthenticationBaseServiceOptionsToken,
|
|
12
|
+
useValue: options
|
|
13
|
+
}
|
|
14
|
+
]
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
constructor(parentModule) {
|
|
18
|
+
if (parentModule) {
|
|
19
|
+
throw new Error('AuthenticationBaseModule is already loaded. Import it in the AppModule only');
|
|
20
|
+
}
|
|
21
|
+
}
|
|
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] }); }
|
|
8
25
|
}
|
|
9
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.
|
|
26
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: AuthenticationBaseModule, decorators: [{
|
|
10
27
|
type: NgModule,
|
|
11
28
|
args: [{
|
|
12
29
|
declarations: [],
|
|
@@ -15,5 +32,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImpor
|
|
|
15
32
|
],
|
|
16
33
|
exports: []
|
|
17
34
|
}]
|
|
18
|
-
}]
|
|
19
|
-
|
|
35
|
+
}], ctorParameters: () => [{ type: AuthenticationBaseModule, decorators: [{
|
|
36
|
+
type: Optional
|
|
37
|
+
}, {
|
|
38
|
+
type: SkipSelf
|
|
39
|
+
}] }] });
|
|
40
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aGVudGljYXRpb24uYmFzZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGVhdmVsYW5kcHJpY2Uvbmd4LWxpYi9hdXRoZW50aWNhdGlvbi9zcmMvYXV0aGVudGljYXRpb24uYmFzZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBdUIsUUFBUSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEYsT0FBTyxFQUFvQyxxQ0FBcUMsRUFBRSxNQUFNLHdDQUF3QyxDQUFDOztBQVNqSSxNQUFNLE9BQU8sd0JBQXdCO0lBQ25DLE1BQU0sQ0FBQyxPQUFPLENBQUMsT0FBeUM7UUFDdEQsT0FBTztZQUNMLFFBQVEsRUFBRSx3QkFBd0I7WUFDbEMsU0FBUyxFQUFFO2dCQUNUO29CQUNFLE9BQU8sRUFBRSxxQ0FBcUM7b0JBQzlDLFFBQVEsRUFBRSxPQUFPO2lCQUNsQjthQUNGO1NBQ0YsQ0FBQTtJQUNILENBQUM7SUFFRCxZQUFvQyxZQUFzQztRQUN4RSxJQUFJLFlBQVksRUFBRSxDQUFDO1lBQ2pCLE1BQU0sSUFBSSxLQUFLLENBQ2IsNkVBQTZFLENBQUMsQ0FBQztRQUNuRixDQUFDO0lBQ0gsQ0FBQzs4R0FsQlUsd0JBQXdCOytHQUF4Qix3QkFBd0IsWUFKakMsWUFBWTsrR0FJSCx3QkFBd0IsWUFKakMsWUFBWTs7MkZBSUgsd0JBQXdCO2tCQVBwQyxRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxFQUFFO29CQUNoQixPQUFPLEVBQUU7d0JBQ1AsWUFBWTtxQkFDYjtvQkFDRCxPQUFPLEVBQUUsRUFBRTtpQkFDWjs7MEJBY2MsUUFBUTs7MEJBQUksUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IE1vZHVsZVdpdGhQcm92aWRlcnMsIE5nTW9kdWxlLCBPcHRpb25hbCwgU2tpcFNlbGYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQXV0aGVudGljYXRpb25CYXNlU2VydmljZU9wdGlvbnMsIEF1dGhlbnRpY2F0aW9uQmFzZVNlcnZpY2VPcHRpb25zVG9rZW4gfSBmcm9tICcuL21vZGVsL2F1dGhlbnRpY2F0aW9uLXNlcnZpY2Utb3B0aW9ucyc7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGRlY2xhcmF0aW9uczogW10sXHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlXHJcbiAgXSxcclxuICBleHBvcnRzOiBbXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQXV0aGVudGljYXRpb25CYXNlTW9kdWxlIHtcclxuICBzdGF0aWMgZm9yUm9vdChvcHRpb25zOiBBdXRoZW50aWNhdGlvbkJhc2VTZXJ2aWNlT3B0aW9ucyk6IE1vZHVsZVdpdGhQcm92aWRlcnM8QXV0aGVudGljYXRpb25CYXNlTW9kdWxlPiB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICBuZ01vZHVsZTogQXV0aGVudGljYXRpb25CYXNlTW9kdWxlLFxyXG4gICAgICBwcm92aWRlcnM6IFtcclxuICAgICAgICB7XHJcbiAgICAgICAgICBwcm92aWRlOiBBdXRoZW50aWNhdGlvbkJhc2VTZXJ2aWNlT3B0aW9uc1Rva2VuLFxyXG4gICAgICAgICAgdXNlVmFsdWU6IG9wdGlvbnNcclxuICAgICAgICB9XHJcbiAgICAgIF1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKEBPcHRpb25hbCgpIEBTa2lwU2VsZigpIHBhcmVudE1vZHVsZTogQXV0aGVudGljYXRpb25CYXNlTW9kdWxlKSB7XHJcbiAgICBpZiAocGFyZW50TW9kdWxlKSB7XHJcbiAgICAgIHRocm93IG5ldyBFcnJvcihcclxuICAgICAgICAnQXV0aGVudGljYXRpb25CYXNlTW9kdWxlIGlzIGFscmVhZHkgbG9hZGVkLiBJbXBvcnQgaXQgaW4gdGhlIEFwcE1vZHVsZSBvbmx5Jyk7XHJcbiAgICB9XHJcbiAgfVxyXG59Il19
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Generated bundle index. Do not edit.
|
|
3
3
|
*/
|
|
4
|
-
export * from './
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
4
|
+
export * from './authentication.api';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xlYXZlbGFuZHByaWNlLW5neC1saWItYXV0aGVudGljYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGVhdmVsYW5kcHJpY2Uvbmd4LWxpYi9hdXRoZW50aWNhdGlvbi9zcmMvY2xlYXZlbGFuZHByaWNlLW5neC1saWItYXV0aGVudGljYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLHNCQUFzQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2F1dGhlbnRpY2F0aW9uLmFwaSc7XG4iXX0=
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generated bundle index. Do not edit.
|
|
3
|
+
*/
|
|
4
|
+
export * from './mat-authentication.api';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xlYXZlbGFuZHByaWNlLW5neC1saWItYXV0aGVudGljYXRpb24tbWF0ZXJpYWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGVhdmVsYW5kcHJpY2Uvbmd4LWxpYi9hdXRoZW50aWNhdGlvbi9tYXRlcmlhbC9zcmMvY2xlYXZlbGFuZHByaWNlLW5neC1saWItYXV0aGVudGljYXRpb24tbWF0ZXJpYWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLDBCQUEwQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL21hdC1hdXRoZW50aWNhdGlvbi5hcGknO1xuIl19
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { Component, inject, input } from '@angular/core';
|
|
2
|
+
import { MatDialog } from '@angular/material/dialog';
|
|
3
|
+
import { ConfirmationComponent } from '@cleavelandprice/ngx-lib/dialog';
|
|
4
|
+
import { MatIcon } from '@angular/material/icon';
|
|
5
|
+
import { MatAuthenticationService } from '../../services/mat-authentication.service';
|
|
6
|
+
import { LoginFormComponent } from '../login-form/login-form.component';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
export class LoginComponent {
|
|
9
|
+
constructor() {
|
|
10
|
+
this.#services = {
|
|
11
|
+
dialog: inject(MatDialog)
|
|
12
|
+
};
|
|
13
|
+
this.services = {
|
|
14
|
+
authentication: inject(MatAuthenticationService)
|
|
15
|
+
};
|
|
16
|
+
//#endregion
|
|
17
|
+
this.adminGroup = input();
|
|
18
|
+
this.additionalInfo = input.required();
|
|
19
|
+
}
|
|
20
|
+
#services;
|
|
21
|
+
login() {
|
|
22
|
+
this.#services.dialog.open(LoginFormComponent, {
|
|
23
|
+
data: {
|
|
24
|
+
adminGroup: this.adminGroup(),
|
|
25
|
+
additionalInfo: this.additionalInfo()
|
|
26
|
+
}
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
confirmLogout() {
|
|
30
|
+
this.#services.dialog.open(ConfirmationComponent, {
|
|
31
|
+
data: { message: `Are you sure you want to logout?` }
|
|
32
|
+
})
|
|
33
|
+
.afterClosed()
|
|
34
|
+
.subscribe(result => {
|
|
35
|
+
if (result) {
|
|
36
|
+
this.services.authentication.logout();
|
|
37
|
+
}
|
|
38
|
+
});
|
|
39
|
+
}
|
|
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
|
+
}
|
|
43
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: LoginComponent, decorators: [{
|
|
44
|
+
type: Component,
|
|
45
|
+
args: [{ selector: 'cp-login', standalone: true, imports: [
|
|
46
|
+
MatIcon,
|
|
47
|
+
], 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"] }]
|
|
48
|
+
}] });
|
|
49
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9naW4uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xlYXZlbGFuZHByaWNlL25neC1saWIvYXV0aGVudGljYXRpb24vbWF0ZXJpYWwvc3JjL2NvbXBvbmVudHMvbG9naW4vbG9naW4uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xlYXZlbGFuZHByaWNlL25neC1saWIvYXV0aGVudGljYXRpb24vbWF0ZXJpYWwvc3JjL2NvbXBvbmVudHMvbG9naW4vbG9naW4uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNyRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUV4RSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDakQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDckYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7O0FBY3hFLE1BQU0sT0FBTyxjQUFjO0lBWjNCO1FBYUUsY0FBUyxHQUFHO1lBQ1YsTUFBTSxFQUFFLE1BQU0sQ0FBQyxTQUFTLENBQUM7U0FDMUIsQ0FBQztRQUNGLGFBQVEsR0FBRztZQUNULGNBQWMsRUFBRSxNQUFNLENBQUMsd0JBQXdCLENBQUM7U0FDakQsQ0FBQztRQUNGLFlBQVk7UUFFWixlQUFVLEdBQUcsS0FBSyxFQUFVLENBQUM7UUFDN0IsbUJBQWMsR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFVLENBQUM7S0FzQjNDO0lBL0JDLFNBQVMsQ0FFUDtJQVNGLEtBQUs7UUFDSCxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEVBQUU7WUFDN0MsSUFBSSxFQUFFO2dCQUNKLFVBQVUsRUFBRSxJQUFJLENBQUMsVUFBVSxFQUFFO2dCQUM3QixjQUFjLEVBQUUsSUFBSSxDQUFDLGNBQWMsRUFBRTthQUN0QztTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxhQUFhO1FBQ1gsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLHFCQUFxQixFQUFFO1lBQ2hELElBQUksRUFBRSxFQUFFLE9BQU8sRUFBRSxrQ0FBa0MsRUFBRTtTQUN0RCxDQUFDO2FBQ0QsV0FBVyxFQUFFO2FBQ2IsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFO1lBQ2xCLElBQUksTUFBTSxFQUFFLENBQUM7Z0JBQ1gsSUFBSSxDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDeEMsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs4R0EvQlUsY0FBYztrR0FBZCxjQUFjLHlXQ3BCM0IsdTJCQThCTSxndEJEbEJGLE9BQU87OzJGQVFFLGNBQWM7a0JBWjFCLFNBQVM7K0JBQ0UsVUFBVSxjQUNSLElBQUksV0FDUDt3QkFDUCxPQUFPO3FCQUNSIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBpbmplY3QsIGlucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE1hdERpYWxvZyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XHJcbmltcG9ydCB7IENvbmZpcm1hdGlvbkNvbXBvbmVudCB9IGZyb20gJ0BjbGVhdmVsYW5kcHJpY2Uvbmd4LWxpYi9kaWFsb2cnO1xyXG5cclxuaW1wb3J0IHsgTWF0SWNvbiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xyXG5pbXBvcnQgeyBNYXRBdXRoZW50aWNhdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9tYXQtYXV0aGVudGljYXRpb24uc2VydmljZSc7XHJcbmltcG9ydCB7IExvZ2luRm9ybUNvbXBvbmVudCB9IGZyb20gJy4uL2xvZ2luLWZvcm0vbG9naW4tZm9ybS5jb21wb25lbnQnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdjcC1sb2dpbicsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBNYXRJY29uLFxyXG4gIF0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2xvZ2luLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFtcclxuICAgICcuL2xvZ2luLmNvbXBvbmVudC5zY3NzJyxcclxuICAgICcuLi8uLi8uLi8uLi8uLi9zdHlsZXMvbWF0LWljb24uc2NzcydcclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBMb2dpbkNvbXBvbmVudCB7XHJcbiAgI3NlcnZpY2VzID0ge1xyXG4gICAgZGlhbG9nOiBpbmplY3QoTWF0RGlhbG9nKVxyXG4gIH07XHJcbiAgc2VydmljZXMgPSB7XHJcbiAgICBhdXRoZW50aWNhdGlvbjogaW5qZWN0KE1hdEF1dGhlbnRpY2F0aW9uU2VydmljZSlcclxuICB9O1xyXG4gIC8vI2VuZHJlZ2lvblxyXG5cclxuICBhZG1pbkdyb3VwID0gaW5wdXQ8c3RyaW5nPigpO1xyXG4gIGFkZGl0aW9uYWxJbmZvID0gaW5wdXQucmVxdWlyZWQ8c3RyaW5nPigpO1xyXG5cclxuICBsb2dpbigpOiB2b2lkIHtcclxuICAgIHRoaXMuI3NlcnZpY2VzLmRpYWxvZy5vcGVuKExvZ2luRm9ybUNvbXBvbmVudCwge1xyXG4gICAgICBkYXRhOiB7XHJcbiAgICAgICAgYWRtaW5Hcm91cDogdGhpcy5hZG1pbkdyb3VwKCksXHJcbiAgICAgICAgYWRkaXRpb25hbEluZm86IHRoaXMuYWRkaXRpb25hbEluZm8oKVxyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGNvbmZpcm1Mb2dvdXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLiNzZXJ2aWNlcy5kaWFsb2cub3BlbihDb25maXJtYXRpb25Db21wb25lbnQsIHtcclxuICAgICAgZGF0YTogeyBtZXNzYWdlOiBgQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGxvZ291dD9gIH1cclxuICAgIH0pXHJcbiAgICAuYWZ0ZXJDbG9zZWQoKVxyXG4gICAgLnN1YnNjcmliZShyZXN1bHQgPT4ge1xyXG4gICAgICBpZiAocmVzdWx0KSB7XHJcbiAgICAgICAgdGhpcy5zZXJ2aWNlcy5hdXRoZW50aWNhdGlvbi5sb2dvdXQoKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgaWQ9XCJ1c2VyLWlkXCI+XG4gIDwhLS0gTG9nZ2VkIG91dCAtLT5cbiAgPCEtLSBMb2dnZWQgaW4gLS0+XG4gIEBpZiAoc2VydmljZXMuYXV0aGVudGljYXRpb24uYXV0aGVudGljYXRlZCkge1xuICAgIDwhLS0gV2l0aCBwaG90byAtLT5cbiAgICBAaWYgKHNlcnZpY2VzLmF1dGhlbnRpY2F0aW9uLmF1dGhlbnRpY2F0ZWRVc2VyPy5waG90b1VybCkge1xuICAgICAgPGltZ1xuICAgICAgICBpZD1cImF1dGhlbnRpY2F0ZWQtdXNlci1pbWFnZVwiXG4gICAgICAgIFtzcmNdPVwic2VydmljZXMuYXV0aGVudGljYXRpb24uYXV0aGVudGljYXRlZFVzZXI/LnBob3RvVXJsXCJcbiAgICAgICAgbWF0VG9vbHRpcD1cIkxvZ291dFwiXG4gICAgICAgIChjbGljayk9XCJjb25maXJtTG9nb3V0KClcIiAvPlxuICAgIH0gQGVsc2Uge1xuICAgICAgPCEtLSBXaXRob3V0IHBob3RvIC0tPlxuICAgICAgPG1hdC1pY29uXG4gICAgICAgIGZvbnRJY29uPVwiYWNjb3VudF9jaXJjbGVcIlxuICAgICAgICBtYXRUb29sdGlwPVwiTG9nb3V0XCJcbiAgICAgICAgKGNsaWNrKT1cImNvbmZpcm1Mb2dvdXQoKVwiPlxuICAgICAgPC9tYXQtaWNvbj5cbiAgICB9XG4gICAgPCEtLSBOYW1lIC0tPlxuICAgIDxkaXYgaWQ9XCJ1c2VyLW5hbWVcIj5cbiAgICAgIHt7IHNlcnZpY2VzLmF1dGhlbnRpY2F0aW9uLmF1dGhlbnRpY2F0ZWRVc2VyPy5kaXNwbGF5TmFtZSB9fVxuICAgIDwvZGl2PlxuICB9IEBlbHNlIHtcbiAgICA8bWF0LWljb25cbiAgICAgIGZvbnRJY29uPVwiYWNjb3VudF9jaXJjbGVcIlxuICAgICAgbWF0VG9vbHRpcD1cIkxvZ2luXCJcbiAgICAgIChjbGljayk9XCJsb2dpbigpXCI+XG4gICAgPC9tYXQtaWNvbj5cbiAgfVxuPC9kaXY+Il19
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import { Component, inject } from '@angular/core';
|
|
2
|
+
import { FormControl, FormGroup, ReactiveFormsModule, Validators } from '@angular/forms';
|
|
3
|
+
import { MAT_DIALOG_DATA, MatDialogActions, MatDialogContent, MatDialogRef } from '@angular/material/dialog';
|
|
4
|
+
import { MatButton } from '@angular/material/button';
|
|
5
|
+
import { MatFormField } from '@angular/material/form-field';
|
|
6
|
+
import { MatIcon } from '@angular/material/icon';
|
|
7
|
+
import { MatInput } from '@angular/material/input';
|
|
8
|
+
import { MatProgressSpinner } from '@angular/material/progress-spinner';
|
|
9
|
+
import { MatSlideToggle } from '@angular/material/slide-toggle';
|
|
10
|
+
import { MatAuthenticationService } from '../../services/mat-authentication.service';
|
|
11
|
+
import * as i0 from "@angular/core";
|
|
12
|
+
import * as i1 from "@angular/forms";
|
|
13
|
+
export class LoginFormComponent {
|
|
14
|
+
constructor() {
|
|
15
|
+
this.#data = inject(MAT_DIALOG_DATA);
|
|
16
|
+
this.services = {
|
|
17
|
+
dialogRef: inject((MatDialogRef)),
|
|
18
|
+
authentication: inject(MatAuthenticationService)
|
|
19
|
+
};
|
|
20
|
+
this.form = new FormGroup({
|
|
21
|
+
username: new FormControl(null, [Validators.required]),
|
|
22
|
+
password: new FormControl(null, [Validators.required]),
|
|
23
|
+
adminGroup: new FormControl(),
|
|
24
|
+
additionalInfo: new FormControl()
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
#data;
|
|
28
|
+
ngOnInit() {
|
|
29
|
+
this.form.get('adminGroup')?.setValue(this.#data.adminGroup);
|
|
30
|
+
this.form.get('additionalInfo')?.setValue(this.#data.additionalInfo);
|
|
31
|
+
this.authenticatedChangedSubscription = this.services.authentication.authenticatedChanged
|
|
32
|
+
.subscribe(this.#authChangedHandler.bind(this));
|
|
33
|
+
this.authenticationErrorSubscription = this.services.authentication.authenticationError
|
|
34
|
+
.subscribe(this.#errorHandler.bind(this));
|
|
35
|
+
}
|
|
36
|
+
ngOnDestroy() {
|
|
37
|
+
this.authenticationErrorSubscription.unsubscribe();
|
|
38
|
+
this.authenticatedChangedSubscription.unsubscribe();
|
|
39
|
+
}
|
|
40
|
+
authenticate() {
|
|
41
|
+
this.errorMessage = undefined;
|
|
42
|
+
const { username, password, adminGroup, additionalInfo } = this.form.value;
|
|
43
|
+
this.services.authentication.login(username, password, adminGroup, additionalInfo);
|
|
44
|
+
}
|
|
45
|
+
#authChangedHandler(authenticated) {
|
|
46
|
+
if (authenticated) {
|
|
47
|
+
this.services.dialogRef.close();
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
#errorHandler(err) {
|
|
51
|
+
console.log('Authentication error', err);
|
|
52
|
+
this.errorMessage = `${err.name}: ${err.statusText}`;
|
|
53
|
+
}
|
|
54
|
+
changeTokenStorageMode(checked) {
|
|
55
|
+
const keyName = 'storeTokenInSession';
|
|
56
|
+
if (checked) {
|
|
57
|
+
if (localStorage.getItem(keyName)) {
|
|
58
|
+
localStorage.removeItem(keyName);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
else {
|
|
62
|
+
localStorage.setItem(keyName, 'true');
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: LoginFormComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
66
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.5", type: LoginFormComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: "<h2 mat-dialog-title>\n @if (services.authentication.authenticating) {\n <span>Authenticating...</span>\n } @else {\n <span>Login</span>\n }\n</h2>\n\n<mat-dialog-content>\n @if (services.authentication.authenticating) {\n <div id=\"spinner\">\n <mat-progress-spinner color=\"primary\" mode=\"indeterminate\"/>\n </div>\n } @else if (errorMessage) {\n <div id=\"error\">\n {{ errorMessage }}\n </div>\n } @else {\n <form [formGroup]=\"form\">\n <mat-form-field>\n <input matInput formControlName=\"username\" placeholder=\"Username\" (keyup.enter)=\"authenticate()\">\n </mat-form-field>\n <mat-form-field>\n <input matInput formControlName=\"password\" type=\"password\" placeholder=\"Password\" (keyup.enter)=\"authenticate()\">\n </mat-form-field>\n @if (services.authentication.options.showRememberMeOption) {\n <mat-slide-toggle [checked]=\"!services.authentication.useSessionStorage\" (change)=\"changeTokenStorageMode($event.checked)\">\n Remember me next time\n </mat-slide-toggle>\n }\n </form>\n }\n</mat-dialog-content>\n\n@if (!services.authentication.authenticating) {\n <mat-dialog-actions>\n <button mat-raised-button color=\"primary\" (click)=\"authenticate()\"\n [disabled]=\"form.invalid\">\n <mat-icon fontIcon=\"done\"/>\n <span>OK</span>\n </button>\n <button mat-raised-button (click)=\"services.dialogRef.close()\">\n <mat-icon fontIcon=\"close\"/>\n <span>Cancel</span>\n </button>\n </mat-dialog-actions>\n}", styles: ["#spinner{width:100%;height:100%;display:flex;justify-content:center;align-items:center}form{display:grid;gap:1rem}mat-dialog-actions{display:grid;justify-content:center;grid-template-columns:auto auto;gap:1rem}#error{color:red}\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: 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: "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: MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { 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: "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"] }] }); }
|
|
67
|
+
}
|
|
68
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: LoginFormComponent, decorators: [{
|
|
69
|
+
type: Component,
|
|
70
|
+
args: [{ standalone: true, imports: [
|
|
71
|
+
MatButton,
|
|
72
|
+
MatDialogActions,
|
|
73
|
+
MatDialogContent,
|
|
74
|
+
MatFormField,
|
|
75
|
+
MatIcon,
|
|
76
|
+
MatInput,
|
|
77
|
+
MatProgressSpinner,
|
|
78
|
+
MatSlideToggle,
|
|
79
|
+
ReactiveFormsModule
|
|
80
|
+
], template: "<h2 mat-dialog-title>\n @if (services.authentication.authenticating) {\n <span>Authenticating...</span>\n } @else {\n <span>Login</span>\n }\n</h2>\n\n<mat-dialog-content>\n @if (services.authentication.authenticating) {\n <div id=\"spinner\">\n <mat-progress-spinner color=\"primary\" mode=\"indeterminate\"/>\n </div>\n } @else if (errorMessage) {\n <div id=\"error\">\n {{ errorMessage }}\n </div>\n } @else {\n <form [formGroup]=\"form\">\n <mat-form-field>\n <input matInput formControlName=\"username\" placeholder=\"Username\" (keyup.enter)=\"authenticate()\">\n </mat-form-field>\n <mat-form-field>\n <input matInput formControlName=\"password\" type=\"password\" placeholder=\"Password\" (keyup.enter)=\"authenticate()\">\n </mat-form-field>\n @if (services.authentication.options.showRememberMeOption) {\n <mat-slide-toggle [checked]=\"!services.authentication.useSessionStorage\" (change)=\"changeTokenStorageMode($event.checked)\">\n Remember me next time\n </mat-slide-toggle>\n }\n </form>\n }\n</mat-dialog-content>\n\n@if (!services.authentication.authenticating) {\n <mat-dialog-actions>\n <button mat-raised-button color=\"primary\" (click)=\"authenticate()\"\n [disabled]=\"form.invalid\">\n <mat-icon fontIcon=\"done\"/>\n <span>OK</span>\n </button>\n <button mat-raised-button (click)=\"services.dialogRef.close()\">\n <mat-icon fontIcon=\"close\"/>\n <span>Cancel</span>\n </button>\n </mat-dialog-actions>\n}", styles: ["#spinner{width:100%;height:100%;display:flex;justify-content:center;align-items:center}form{display:grid;gap:1rem}mat-dialog-actions{display:grid;justify-content:center;grid-template-columns:auto auto;gap:1rem}#error{color:red}\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"] }]
|
|
81
|
+
}] });
|
|
82
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9naW4tZm9ybS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbGVhdmVsYW5kcHJpY2Uvbmd4LWxpYi9hdXRoZW50aWNhdGlvbi9tYXRlcmlhbC9zcmMvY29tcG9uZW50cy9sb2dpbi1mb3JtL2xvZ2luLWZvcm0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xlYXZlbGFuZHByaWNlL25neC1saWIvYXV0aGVudGljYXRpb24vbWF0ZXJpYWwvc3JjL2NvbXBvbmVudHMvbG9naW4tZm9ybS9sb2dpbi1mb3JtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUE0QyxNQUFNLGVBQWUsQ0FBQztBQUM1RixPQUFPLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxtQkFBbUIsRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RixPQUFPLEVBQUUsZUFBZSxFQUFFLGdCQUFnQixFQUFFLGdCQUFnQixFQUFFLFlBQVksRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRTdHLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDNUQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ2pELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUN4RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFFaEUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sMkNBQTJDLENBQUM7OztBQXFCckYsTUFBTSxPQUFPLGtCQUFrQjtJ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QUM7SUFDSCxDQUFDOzhHQTlEVSxrQkFBa0I7a0dBQWxCLGtCQUFrQix3RUNoQy9CLDZpREE4Q0Msc29CRDdCRyxTQUFTLGlMQUNULGdCQUFnQiw0SEFDaEIsZ0JBQWdCLHlHQUNoQixZQUFZLDRMQUNaLE9BQU8sMklBQ1AsUUFBUSxpVUFDUixrQkFBa0IsK0tBQ2xCLGNBQWMsa1RBQ2QsbUJBQW1COzsyRkFPVixrQkFBa0I7a0JBbkI5QixTQUFTO2lDQUVJLElBQUksV0FDUDt3QkFDUCxTQUFTO3dCQUNULGdCQUFnQjt3QkFDaEIsZ0JBQWdCO3dCQUNoQixZQUFZO3dCQUNaLE9BQU87d0JBQ1AsUUFBUTt3QkFDUixrQkFBa0I7d0JBQ2xCLGNBQWM7d0JBQ2QsbUJBQW1CO3FCQUNwQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgaW5qZWN0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0UmVmU3Vic2NyaXB0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1Db250cm9sLCBGb3JtR3JvdXAsIFJlYWN0aXZlRm9ybXNNb2R1bGUsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IE1BVF9ESUFMT0dfREFUQSwgTWF0RGlhbG9nQWN0aW9ucywgTWF0RGlhbG9nQ29udGVudCwgTWF0RGlhbG9nUmVmIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcclxuXHJcbmltcG9ydCB7IE1hdEJ1dHRvbiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XHJcbmltcG9ydCB7IE1hdEZvcm1GaWVsZCB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGQnO1xyXG5pbXBvcnQgeyBNYXRJY29uIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XHJcbmltcG9ydCB7IE1hdElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xyXG5pbXBvcnQgeyBNYXRQcm9ncmVzc1NwaW5uZXIgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9wcm9ncmVzcy1zcGlubmVyJztcclxuaW1wb3J0IHsgTWF0U2xpZGVUb2dnbGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zbGlkZS10b2dnbGUnO1xyXG5pbXBvcnQgeyBMb2dpbkZvcm1EYXRhIH0gZnJvbSAnLi4vLi4vbW9kZWwvbG9naW4tZm9ybS1kYXRhJztcclxuaW1wb3J0IHsgTWF0QXV0aGVudGljYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvbWF0LWF1dGhlbnRpY2F0aW9uLnNlcnZpY2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgdGVtcGxhdGVVcmw6ICcuL2xvZ2luLWZvcm0uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW1xyXG4gICAgTWF0QnV0dG9uLFxyXG4gICAgTWF0RGlhbG9nQWN0aW9ucyxcclxuICAgIE1hdERpYWxvZ0NvbnRlbnQsXHJcbiAgICBNYXRGb3JtRmllbGQsXHJcbiAgICBNYXRJY29uLFxyXG4gICAgTWF0SW5wdXQsXHJcbiAgICBNYXRQcm9ncmVzc1NwaW5uZXIsXHJcbiAgICBNYXRTbGlkZVRvZ2dsZSxcclxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGVcclxuICBdLFxyXG4gIHN0eWxlVXJsczogW1xyXG4gICAgJy4vbG9naW4tZm9ybS5jb21wb25lbnQuc2NzcycsXHJcbiAgICAnLi4vLi4vLi4vLi4vLi4vc3R5bGVzL21hdC1pY29uLnNjc3MnXHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgTG9naW5Gb3JtQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gICNkYXRhID0gaW5qZWN0PExvZ2luRm9ybURhdGE+KE1BVF9ESUFMT0dfREFUQSk7XHJcblxyXG4gIHNlcnZpY2VzID0ge1xyXG4gICAgZGlhbG9nUmVmOiBpbmplY3QoTWF0RGlhbG9nUmVmPExvZ2luRm9ybUNvbXBvbmVudD4pLFxyXG4gICAgYXV0aGVudGljYXRpb246IGluamVjdChNYXRBdXRoZW50aWNhdGlvblNlcnZpY2UpXHJcbiAgfTtcclxuICBcclxuICBlcnJvck1lc3NhZ2U/OiBzdHJpbmc7XHJcbiAgYXV0aGVudGljYXRlZENoYW5nZWRTdWJzY3JpcHRpb24hOiBPdXRwdXRSZWZTdWJzY3JpcHRpb247XHJcbiAgYXV0aGVudGljYXRpb25FcnJvclN1YnNjcmlwdGlvbiE6IE91dHB1dFJlZlN1YnNjcmlwdGlvbjtcclxuXHJcbiAgZm9ybSA9IG5ldyBGb3JtR3JvdXAoe1xyXG4gICAgdXNlcm5hbWU6IG5ldyBGb3JtQ29udHJvbChudWxsLCBbIFZhbGlkYXRvcnMucmVxdWlyZWQgXSksXHJcbiAgICBwYXNzd29yZDogbmV3IEZvcm1Db250cm9sKG51bGwsIFsgVmFsaWRhdG9ycy5yZXF1aXJlZCBdKSxcclxuICAgIGFkbWluR3JvdXA6IG5ldyBGb3JtQ29udHJvbCgpLFxyXG4gICAgYWRkaXRpb25hbEluZm86IG5ldyBGb3JtQ29udHJvbCgpXHJcbiAgfSk7XHJcbiAgXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmZvcm0uZ2V0KCdhZG1pbkdyb3VwJyk/LnNldFZhbHVlKHRoaXMuI2RhdGEuYWRtaW5Hcm91cCk7XHJcbiAgICB0aGlzLmZvcm0uZ2V0KCdhZGRpdGlvbmFsSW5mbycpPy5zZXRWYWx1ZSh0aGlzLiNkYXRhLmFkZGl0aW9uYWxJbmZvKTtcclxuXHJcbiAgICB0aGlzLmF1dGhlbnRpY2F0ZWRDaGFuZ2VkU3Vic2NyaXB0aW9uID0gdGhpcy5zZXJ2aWNlcy5hdXRoZW50aWNhdGlvbi5hdXRoZW50aWNhdGVkQ2hhbmdlZFxyXG4gICAgICAuc3Vic2NyaWJlKHRoaXMuI2F1dGhDaGFuZ2VkSGFuZGxlci5iaW5kKHRoaXMpKTtcclxuXHJcbiAgICB0aGlzLmF1dGhlbnRpY2F0aW9uRXJyb3JTdWJzY3JpcHRpb24gPSB0aGlzLnNlcnZpY2VzLmF1dGhlbnRpY2F0aW9uLmF1dGhlbnRpY2F0aW9uRXJyb3JcclxuICAgICAgLnN1YnNjcmliZSh0aGlzLiNlcnJvckhhbmRsZXIuYmluZCh0aGlzKSk7XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMuYXV0aGVudGljYXRpb25FcnJvclN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xyXG4gICAgdGhpcy5hdXRoZW50aWNhdGVkQ2hhbmdlZFN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xyXG4gIH1cclxuXHJcbiAgYXV0aGVudGljYXRlKCkge1xyXG4gICAgdGhpcy5lcnJvck1lc3NhZ2UgPSB1bmRlZmluZWQ7XHJcbiAgICBjb25zdCB7IHVzZXJuYW1lLCBwYXNzd29yZCwgYWRtaW5Hcm91cCwgYWRkaXRpb25hbEluZm8gfSA9IHRoaXMuZm9ybS52YWx1ZTtcclxuICAgIHRoaXMuc2VydmljZXMuYXV0aGVudGljYXRpb24ubG9naW4odXNlcm5hbWUhLCBwYXNzd29yZCEsIGFkbWluR3JvdXAsIGFkZGl0aW9uYWxJbmZvKTtcclxuICB9XHJcblxyXG4gICNhdXRoQ2hhbmdlZEhhbmRsZXIoYXV0aGVudGljYXRlZDogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgaWYgKGF1dGhlbnRpY2F0ZWQpIHtcclxuICAgICAgdGhpcy5zZXJ2aWNlcy5kaWFsb2dSZWYuY2xvc2UoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICNlcnJvckhhbmRsZXIoZXJyOiBhbnkpOiB2b2lkIHtcclxuICAgIGNvbnNvbGUubG9nKCdBdXRoZW50aWNhdGlvbiBlcnJvcicsIGVycik7XHJcbiAgICB0aGlzLmVycm9yTWVzc2FnZSA9IGAke2Vyci5uYW1lfTogJHtlcnIuc3RhdHVzVGV4dH1gO1xyXG4gIH1cclxuXHJcbiAgY2hhbmdlVG9rZW5TdG9yYWdlTW9kZShjaGVja2VkOiBib29sZWFuKTogdm9pZCB7XHJcbiAgICBjb25zdCBrZXlOYW1lID0gJ3N0b3JlVG9rZW5JblNlc3Npb24nO1xyXG5cclxuICAgIGlmIChjaGVja2VkKSB7XHJcbiAgICAgIGlmIChsb2NhbFN0b3JhZ2UuZ2V0SXRlbShrZXlOYW1lKSkge1xyXG4gICAgICAgIGxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKGtleU5hbWUpO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbShrZXlOYW1lLCAndHJ1ZScpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCI8aDIgbWF0LWRpYWxvZy10aXRsZT5cbiAgQGlmIChzZXJ2aWNlcy5hdXRoZW50aWNhdGlvbi5hdXRoZW50aWNhdGluZykge1xuICAgIDxzcGFuPkF1dGhlbnRpY2F0aW5nLi4uPC9zcGFuPlxuICB9IEBlbHNlIHtcbiAgICA8c3Bhbj5Mb2dpbjwvc3Bhbj5cbiAgfVxuPC9oMj5cblxuPG1hdC1kaWFsb2ctY29udGVudD5cbiAgQGlmIChzZXJ2aWNlcy5hdXRoZW50aWNhdGlvbi5hdXRoZW50aWNhdGluZykge1xuICAgIDxkaXYgaWQ9XCJzcGlubmVyXCI+XG4gICAgICA8bWF0LXByb2dyZXNzLXNwaW5uZXIgY29sb3I9XCJwcmltYXJ5XCIgbW9kZT1cImluZGV0ZXJtaW5hdGVcIi8+XG4gICAgPC9kaXY+XG4gIH0gQGVsc2UgaWYgKGVycm9yTWVzc2FnZSkge1xuICAgIDxkaXYgaWQ9XCJlcnJvclwiPlxuICAgICAge3sgZXJyb3JNZXNzYWdlIH19XG4gICAgPC9kaXY+XG4gIH0gQGVsc2Uge1xuICAgIDxmb3JtIFtmb3JtR3JvdXBdPVwiZm9ybVwiPlxuICAgICAgPG1hdC1mb3JtLWZpZWxkPlxuICAgICAgICA8aW5wdXQgbWF0SW5wdXQgZm9ybUNvbnRyb2xOYW1lPVwidXNlcm5hbWVcIiBwbGFjZWhvbGRlcj1cIlVzZXJuYW1lXCIgKGtleXVwLmVudGVyKT1cImF1dGhlbnRpY2F0ZSgpXCI+XG4gICAgICA8L21hdC1mb3JtLWZpZWxkPlxuICAgICAgPG1hdC1mb3JtLWZpZWxkPlxuICAgICAgICA8aW5wdXQgbWF0SW5wdXQgZm9ybUNvbnRyb2xOYW1lPVwicGFzc3dvcmRcIiB0eXBlPVwicGFzc3dvcmRcIiBwbGFjZWhvbGRlcj1cIlBhc3N3b3JkXCIgKGtleXVwLmVudGVyKT1cImF1dGhlbnRpY2F0ZSgpXCI+XG4gICAgICA8L21hdC1mb3JtLWZpZWxkPlxuICAgICAgQGlmIChzZXJ2aWNlcy5hdXRoZW50aWNhdGlvbi5vcHRpb25zLnNob3dSZW1lbWJlck1lT3B0aW9uKSB7XG4gICAgICAgIDxtYXQtc2xpZGUtdG9nZ2xlIFtjaGVja2VkXT1cIiFzZXJ2aWNlcy5hdXRoZW50aWNhdGlvbi51c2VTZXNzaW9uU3RvcmFnZVwiIChjaGFuZ2UpPVwiY2hhbmdlVG9rZW5TdG9yYWdlTW9kZSgkZXZlbnQuY2hlY2tlZClcIj5cbiAgICAgICAgICBSZW1lbWJlciBtZSBuZXh0IHRpbWVcbiAgICAgICAgPC9tYXQtc2xpZGUtdG9nZ2xlPlxuICAgICAgfVxuICAgIDwvZm9ybT5cbiAgfVxuPC9tYXQtZGlhbG9nLWNvbnRlbnQ+XG5cbkBpZiAoIXNlcnZpY2VzLmF1dGhlbnRpY2F0aW9uLmF1dGhlbnRpY2F0aW5nKSB7XG4gIDxtYXQtZGlhbG9nLWFjdGlvbnM+XG4gICAgPGJ1dHRvbiBtYXQtcmFpc2VkLWJ1dHRvbiBjb2xvcj1cInByaW1hcnlcIiAoY2xpY2spPVwiYXV0aGVudGljYXRlKClcIlxuICAgICAgW2Rpc2FibGVkXT1cImZvcm0uaW52YWxpZFwiPlxuICAgICAgPG1hdC1pY29uIGZvbnRJY29uPVwiZG9uZVwiLz5cbiAgICAgIDxzcGFuPk9LPC9zcGFuPlxuICAgIDwvYnV0dG9uPlxuICAgIDxidXR0b24gbWF0LXJhaXNlZC1idXR0b24gKGNsaWNrKT1cInNlcnZpY2VzLmRpYWxvZ1JlZi5jbG9zZSgpXCI+XG4gICAgICA8bWF0LWljb24gZm9udEljb249XCJjbG9zZVwiLz5cbiAgICAgIDxzcGFuPkNhbmNlbDwvc3Bhbj5cbiAgICA8L2J1dHRvbj5cbiAgPC9tYXQtZGlhbG9nLWFjdGlvbnM+XG59Il19
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export * from './model/login-form-data';
|
|
2
|
+
export * from './model/mat-authentication-service-options';
|
|
3
|
+
export * from './services/mat-authentication.service';
|
|
4
|
+
export * from './components/login-form/login-form.component';
|
|
5
|
+
export * from './components/login/login.component';
|
|
6
|
+
export * from './mat-authentication.module';
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0LWF1dGhlbnRpY2F0aW9uLmFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsZWF2ZWxhbmRwcmljZS9uZ3gtbGliL2F1dGhlbnRpY2F0aW9uL21hdGVyaWFsL3NyYy9tYXQtYXV0aGVudGljYXRpb24uYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyw0Q0FBNEMsQ0FBQztBQUUzRCxjQUFjLHVDQUF1QyxDQUFDO0FBRXRELGNBQWMsOENBQThDLENBQUM7QUFDN0QsY0FBYyxvQ0FBb0MsQ0FBQztBQUVuRCxjQUFjLDZCQUE2QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9tb2RlbC9sb2dpbi1mb3JtLWRhdGEnO1xyXG5leHBvcnQgKiBmcm9tICcuL21vZGVsL21hdC1hdXRoZW50aWNhdGlvbi1zZXJ2aWNlLW9wdGlvbnMnO1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi9zZXJ2aWNlcy9tYXQtYXV0aGVudGljYXRpb24uc2VydmljZSc7XHJcblxyXG5leHBvcnQgKiBmcm9tICcuL2NvbXBvbmVudHMvbG9naW4tZm9ybS9sb2dpbi1mb3JtLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vY29tcG9uZW50cy9sb2dpbi9sb2dpbi5jb21wb25lbnQnO1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi9tYXQtYXV0aGVudGljYXRpb24ubW9kdWxlJztcclxuXHJcbiJdfQ==
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import { CommonModule } from '@angular/common';
|
|
2
|
+
import { NgModule, Optional, SkipSelf } from '@angular/core';
|
|
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 { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
|
|
10
|
+
import { MatSlideToggleModule } from '@angular/material/slide-toggle';
|
|
11
|
+
import { MatAuthenticationServiceOptionsToken } from './model/mat-authentication-service-options';
|
|
12
|
+
import { LoginFormComponent } from './components/login-form/login-form.component';
|
|
13
|
+
import { LoginComponent } from './components/login/login.component';
|
|
14
|
+
import * as i0 from "@angular/core";
|
|
15
|
+
export class MatAuthenticationModule {
|
|
16
|
+
static forRoot(options) {
|
|
17
|
+
return {
|
|
18
|
+
ngModule: MatAuthenticationModule,
|
|
19
|
+
providers: [
|
|
20
|
+
{
|
|
21
|
+
provide: MatAuthenticationServiceOptionsToken,
|
|
22
|
+
useValue: options
|
|
23
|
+
}
|
|
24
|
+
]
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
constructor(parentModule) {
|
|
28
|
+
if (parentModule) {
|
|
29
|
+
throw new Error('MatAuthenticationModule is already loaded. Import it in the AppModule only');
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: MatAuthenticationModule, deps: [{ token: MatAuthenticationModule, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
33
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.5", ngImport: i0, type: MatAuthenticationModule, imports: [CommonModule,
|
|
34
|
+
ReactiveFormsModule,
|
|
35
|
+
MatButtonModule,
|
|
36
|
+
MatDialogModule,
|
|
37
|
+
MatFormFieldModule,
|
|
38
|
+
MatIconModule,
|
|
39
|
+
MatInputModule,
|
|
40
|
+
MatProgressSpinnerModule,
|
|
41
|
+
MatSlideToggleModule,
|
|
42
|
+
LoginComponent,
|
|
43
|
+
LoginFormComponent], exports: [LoginComponent,
|
|
44
|
+
LoginFormComponent] }); }
|
|
45
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: MatAuthenticationModule, imports: [CommonModule,
|
|
46
|
+
ReactiveFormsModule,
|
|
47
|
+
MatButtonModule,
|
|
48
|
+
MatDialogModule,
|
|
49
|
+
MatFormFieldModule,
|
|
50
|
+
MatIconModule,
|
|
51
|
+
MatInputModule,
|
|
52
|
+
MatProgressSpinnerModule,
|
|
53
|
+
MatSlideToggleModule,
|
|
54
|
+
LoginComponent,
|
|
55
|
+
LoginFormComponent] }); }
|
|
56
|
+
}
|
|
57
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: MatAuthenticationModule, decorators: [{
|
|
58
|
+
type: NgModule,
|
|
59
|
+
args: [{
|
|
60
|
+
declarations: [],
|
|
61
|
+
imports: [
|
|
62
|
+
CommonModule,
|
|
63
|
+
ReactiveFormsModule,
|
|
64
|
+
MatButtonModule,
|
|
65
|
+
MatDialogModule,
|
|
66
|
+
MatFormFieldModule,
|
|
67
|
+
MatIconModule,
|
|
68
|
+
MatInputModule,
|
|
69
|
+
MatProgressSpinnerModule,
|
|
70
|
+
MatSlideToggleModule,
|
|
71
|
+
LoginComponent,
|
|
72
|
+
LoginFormComponent
|
|
73
|
+
],
|
|
74
|
+
exports: [
|
|
75
|
+
LoginComponent,
|
|
76
|
+
LoginFormComponent
|
|
77
|
+
]
|
|
78
|
+
}]
|
|
79
|
+
}], ctorParameters: () => [{ type: MatAuthenticationModule, decorators: [{
|
|
80
|
+
type: Optional
|
|
81
|
+
}, {
|
|
82
|
+
type: SkipSelf
|
|
83
|
+
}] }] });
|
|
84
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0LWF1dGhlbnRpY2F0aW9uLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsZWF2ZWxhbmRwcmljZS9uZ3gtbGliL2F1dGhlbnRpY2F0aW9uL21hdGVyaWFsL3NyYy9tYXQtYXV0aGVudGljYXRpb24ubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQXVCLFFBQVEsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXJELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUM5RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUV0RSxPQUFPLEVBQW1DLG9DQUFvQyxFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFHbkksT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDbEYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9DQUFvQyxDQUFDOztBQXdCcEUsTUFBTSxPQUFPLHVCQUF1QjtJQUNsQyxNQUFNLENBQUMsT0FBTyxDQUFDLE9BQXdDO1FBQ3JELE9BQU87WUFDTCxRQUFRLEVBQUUsdUJBQXVCO1lBQ2pDLFNBQVMsRUFBRTtnQkFDVDtvQkFDRSxPQUFPLEVBQUUsb0NBQW9DO29CQUM3QyxRQUFRLEVBQUUsT0FBTztpQkFDbEI7YUFDRjtTQUNGLENBQUM7SUFDSixDQUFDO0lBRUQsWUFBb0MsWUFBcUM7UUFDdkUsSUFBSSxZQUFZLEVBQUUsQ0FBQztZQUNqQixNQUFNLElBQUksS0FBSyxDQUNiLDRFQUE0RSxDQUFDLENBQUM7UUFDbEYsQ0FBQztJQUNILENBQUM7OEdBbEJVLHVCQUF1QjsrR0FBdkIsdUJBQXVCLFlBbkJoQyxZQUFZO1lBQ1osbUJBQW1CO1lBRW5CLGVBQWU7WUFDZixlQUFlO1lBQ2Ysa0JBQWtCO1lBQ2xCLGFBQWE7WUFDYixjQUFjO1lBQ2Qsd0JBQXdCO1lBQ3hCLG9CQUFvQjtZQUVwQixjQUFjO1lBQ2Qsa0JBQWtCLGFBR2xCLGNBQWM7WUFDZCxrQkFBa0I7K0dBR1QsdUJBQXVCLFlBbkJoQyxZQUFZO1lBQ1osbUJBQW1CO1lBRW5CLGVBQWU7WUFDZixlQUFlO1lBQ2Ysa0JBQWtCO1lBQ2xCLGFBQWE7WUFDYixjQUFjO1lBQ2Qsd0JBQXdCO1lBQ3hCLG9CQUFvQjtZQUVwQixjQUFjO1lBQ2Qsa0JBQWtCOzsyRkFPVCx1QkFBdUI7a0JBdEJuQyxRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxFQUFFO29CQUNoQixPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixtQkFBbUI7d0JBRW5CLGVBQWU7d0JBQ2YsZUFBZTt3QkFDZixrQkFBa0I7d0JBQ2xCLGFBQWE7d0JBQ2IsY0FBYzt3QkFDZCx3QkFBd0I7d0JBQ3hCLG9CQUFvQjt3QkFFcEIsY0FBYzt3QkFDZCxrQkFBa0I7cUJBQ25CO29CQUNELE9BQU8sRUFBRTt3QkFDUCxjQUFjO3dCQUNkLGtCQUFrQjtxQkFDbkI7aUJBQ0Y7OzBCQWNjLFFBQVE7OzBCQUFJLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZSwgT3B0aW9uYWwsIFNraXBTZWxmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcblxyXG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xyXG5pbXBvcnQgeyBNYXREaWFsb2dNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xyXG5pbXBvcnQgeyBNYXRGb3JtRmllbGRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkJztcclxuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xyXG5pbXBvcnQgeyBNYXRJbnB1dE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2lucHV0JztcclxuaW1wb3J0IHsgTWF0UHJvZ3Jlc3NTcGlubmVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvcHJvZ3Jlc3Mtc3Bpbm5lcic7XHJcbmltcG9ydCB7IE1hdFNsaWRlVG9nZ2xlTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2xpZGUtdG9nZ2xlJztcclxuXHJcbmltcG9ydCB7IE1hdEF1dGhlbnRpY2F0aW9uU2VydmljZU9wdGlvbnMsIE1hdEF1dGhlbnRpY2F0aW9uU2VydmljZU9wdGlvbnNUb2tlbiB9IGZyb20gJy4vbW9kZWwvbWF0LWF1dGhlbnRpY2F0aW9uLXNlcnZpY2Utb3B0aW9ucyc7XHJcblxyXG5cclxuaW1wb3J0IHsgTG9naW5Gb3JtQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2xvZ2luLWZvcm0vbG9naW4tZm9ybS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBMb2dpbkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9sb2dpbi9sb2dpbi5jb21wb25lbnQnO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICBkZWNsYXJhdGlvbnM6IFtdLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIENvbW1vbk1vZHVsZSxcclxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXHJcbiAgICBcclxuICAgIE1hdEJ1dHRvbk1vZHVsZSxcclxuICAgIE1hdERpYWxvZ01vZHVsZSxcclxuICAgIE1hdEZvcm1GaWVsZE1vZHVsZSxcclxuICAgIE1hdEljb25Nb2R1bGUsXHJcbiAgICBNYXRJbnB1dE1vZHVsZSxcclxuICAgIE1hdFByb2dyZXNzU3Bpbm5lck1vZHVsZSxcclxuICAgIE1hdFNsaWRlVG9nZ2xlTW9kdWxlLFxyXG5cclxuICAgIExvZ2luQ29tcG9uZW50LFxyXG4gICAgTG9naW5Gb3JtQ29tcG9uZW50XHJcbiAgXSxcclxuICBleHBvcnRzOiBbXHJcbiAgICBMb2dpbkNvbXBvbmVudCxcclxuICAgIExvZ2luRm9ybUNvbXBvbmVudFxyXG4gIF1cclxufSlcclxuZXhwb3J0IGNsYXNzIE1hdEF1dGhlbnRpY2F0aW9uTW9kdWxlIHtcclxuICBzdGF0aWMgZm9yUm9vdChvcHRpb25zOiBNYXRBdXRoZW50aWNhdGlvblNlcnZpY2VPcHRpb25zKTogTW9kdWxlV2l0aFByb3ZpZGVyczxNYXRBdXRoZW50aWNhdGlvbk1vZHVsZT4ge1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgbmdNb2R1bGU6IE1hdEF1dGhlbnRpY2F0aW9uTW9kdWxlLFxyXG4gICAgICBwcm92aWRlcnM6IFtcclxuICAgICAgICB7XHJcbiAgICAgICAgICBwcm92aWRlOiBNYXRBdXRoZW50aWNhdGlvblNlcnZpY2VPcHRpb25zVG9rZW4sXHJcbiAgICAgICAgICB1c2VWYWx1ZTogb3B0aW9uc1xyXG4gICAgICAgIH1cclxuICAgICAgXVxyXG4gICAgfTtcclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKEBPcHRpb25hbCgpIEBTa2lwU2VsZigpIHBhcmVudE1vZHVsZTogTWF0QXV0aGVudGljYXRpb25Nb2R1bGUpIHtcclxuICAgIGlmIChwYXJlbnRNb2R1bGUpIHtcclxuICAgICAgdGhyb3cgbmV3IEVycm9yKFxyXG4gICAgICAgICdNYXRBdXRoZW50aWNhdGlvbk1vZHVsZSBpcyBhbHJlYWR5IGxvYWRlZC4gSW1wb3J0IGl0IGluIHRoZSBBcHBNb2R1bGUgb25seScpO1xyXG4gICAgfVxyXG4gIH1cclxufSJdfQ==
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9naW4tZm9ybS1kYXRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2xlYXZlbGFuZHByaWNlL25neC1saWIvYXV0aGVudGljYXRpb24vbWF0ZXJpYWwvc3JjL21vZGVsL2xvZ2luLWZvcm0tZGF0YS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBMb2dpbkZvcm1EYXRhIHtcclxuICAgIGFkbWluR3JvdXA6IHN0cmluZztcclxuICAgIGFkZGl0aW9uYWxJbmZvOiBzdHJpbmc7XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { InjectionToken } from "@angular/core";
|
|
2
|
+
export const MatAuthenticationServiceOptionsToken = new InjectionToken('');
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0LWF1dGhlbnRpY2F0aW9uLXNlcnZpY2Utb3B0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NsZWF2ZWxhbmRwcmljZS9uZ3gtbGliL2F1dGhlbnRpY2F0aW9uL21hdGVyaWFsL3NyYy9tb2RlbC9tYXQtYXV0aGVudGljYXRpb24tc2VydmljZS1vcHRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFNL0MsTUFBTSxDQUFDLE1BQU0sb0NBQW9DLEdBQUcsSUFBSSxjQUFjLENBQWtDLEVBQUUsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4gfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBBdXRoZW50aWNhdGlvblRva2VuU2VydmljZU9wdGlvbnMgfSBmcm9tICdAY2xlYXZlbGFuZHByaWNlL25neC1saWIvYXV0aGVudGljYXRpb24vdG9rZW4nO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBNYXRBdXRoZW50aWNhdGlvblNlcnZpY2VPcHRpb25zIGV4dGVuZHMgQXV0aGVudGljYXRpb25Ub2tlblNlcnZpY2VPcHRpb25zIHtcclxuICAgIHNob3dSZW1lbWJlck1lT3B0aW9uPzogYm9vbGVhbjtcclxufVxyXG5leHBvcnQgY29uc3QgTWF0QXV0aGVudGljYXRpb25TZXJ2aWNlT3B0aW9uc1Rva2VuID0gbmV3IEluamVjdGlvblRva2VuPE1hdEF1dGhlbnRpY2F0aW9uU2VydmljZU9wdGlvbnM+KCcnKTsiXX0=
|