@annalib/anna-cognito-lib 2.2.41 → 2.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. package/{esm2020 → esm2022}/annalib-anna-cognito-lib.mjs +4 -4
  2. package/{esm2020 → esm2022}/lib/anna-cognito-lib.module.mjs +91 -91
  3. package/{esm2020 → esm2022}/lib/components/anna-login/anna-login.component.mjs +55 -54
  4. package/{esm2020 → esm2022}/lib/components/cognito-and-sso-login-container/cognito-and-sso-login-container.component.mjs +22 -22
  5. package/{esm2020 → esm2022}/lib/components/forgot-password/forgot-password.component.mjs +123 -123
  6. package/{esm2020 → esm2022}/lib/components/password-matching/password-matching.component.mjs +90 -90
  7. package/{esm2020 → esm2022}/lib/components/powered-by-logo-template/powered-by-logo-template.component.mjs +15 -15
  8. package/{esm2020 → esm2022}/lib/components/set-new-password/set-new-password.component.mjs +63 -63
  9. package/{esm2020 → esm2022}/lib/components/sso-login/sso-login.component.mjs +32 -32
  10. package/{esm2020 → esm2022}/lib/components/surewaves-year-logo/surewaves-year-logo.component.mjs +15 -15
  11. package/{esm2020 → esm2022}/lib/components/verify-and-set-new-password/verify-and-set-new-password.component.mjs +78 -78
  12. package/{esm2020 → esm2022}/lib/components/version-and-term-policy/version-and-term-policy.component.mjs +20 -20
  13. package/{esm2020 → esm2022}/lib/config/acl-service.token.mjs +3 -3
  14. package/{esm2020 → esm2022}/lib/config/auth-service.token.mjs +3 -3
  15. package/{esm2020 → esm2022}/lib/config/config-service.token.mjs +3 -3
  16. package/{esm2020 → esm2022}/lib/config/sso-login-service.token.mjs +3 -3
  17. package/esm2022/lib/constants/loginConstant.mjs +55 -0
  18. package/{esm2020 → esm2022}/lib/directives/spinner-button/index.mjs +1 -1
  19. package/{esm2020 → esm2022}/lib/directives/spinner-button/spinner-button.directive.mjs +42 -42
  20. package/{esm2020 → esm2022}/lib/models/auth.model.mjs +23 -23
  21. package/{esm2020 → esm2022}/lib/services/acl.service.mjs +27 -27
  22. package/{esm2020 → esm2022}/lib/services/auth.service.mjs +306 -306
  23. package/{esm2020 → esm2022}/lib/services/config.service.mjs +20 -20
  24. package/{esm2020 → esm2022}/lib/services/sso-login.service.mjs +20 -20
  25. package/{esm2020 → esm2022}/public-api.mjs +28 -28
  26. package/{fesm2020 → fesm2022}/annalib-anna-cognito-lib.mjs +922 -921
  27. package/fesm2022/annalib-anna-cognito-lib.mjs.map +1 -0
  28. package/index.d.ts +5 -5
  29. package/lib/anna-cognito-lib.module.d.ts +21 -21
  30. package/lib/components/anna-login/anna-login.component.d.ts +20 -20
  31. package/lib/components/cognito-and-sso-login-container/cognito-and-sso-login-container.component.d.ts +10 -10
  32. package/lib/components/forgot-password/forgot-password.component.d.ts +42 -42
  33. package/lib/components/password-matching/password-matching.component.d.ts +22 -22
  34. package/lib/components/powered-by-logo-template/powered-by-logo-template.component.d.ts +8 -8
  35. package/lib/components/set-new-password/set-new-password.component.d.ts +28 -28
  36. package/lib/components/sso-login/sso-login.component.d.ts +14 -14
  37. package/lib/components/surewaves-year-logo/surewaves-year-logo.component.d.ts +9 -9
  38. package/lib/components/verify-and-set-new-password/verify-and-set-new-password.component.d.ts +32 -32
  39. package/lib/components/version-and-term-policy/version-and-term-policy.component.d.ts +10 -10
  40. package/lib/config/acl-service.token.d.ts +36 -36
  41. package/lib/config/auth-service.token.d.ts +23 -23
  42. package/lib/config/config-service.token.d.ts +13 -13
  43. package/lib/config/sso-login-service.token.d.ts +10 -10
  44. package/lib/constants/loginConstant.d.ts +49 -49
  45. package/lib/directives/spinner-button/index.d.ts +1 -1
  46. package/lib/directives/spinner-button/spinner-button.directive.d.ts +15 -15
  47. package/lib/models/auth.model.d.ts +21 -21
  48. package/lib/services/acl.service.d.ts +11 -11
  49. package/lib/services/auth.service.d.ts +47 -47
  50. package/lib/services/config.service.d.ts +8 -8
  51. package/lib/services/sso-login.service.d.ts +8 -8
  52. package/package.json +7 -13
  53. package/public-api.d.ts +21 -21
  54. package/esm2020/lib/constants/loginConstant.mjs +0 -55
  55. package/fesm2015/annalib-anna-cognito-lib.mjs +0 -1030
  56. package/fesm2015/annalib-anna-cognito-lib.mjs.map +0 -1
  57. package/fesm2020/annalib-anna-cognito-lib.mjs.map +0 -1
@@ -1,47 +1,47 @@
1
- import { HttpClient } from "@angular/common/http";
2
- import { Router } from "@angular/router";
3
- import { AuthTokens, SignInInput } from "aws-amplify/auth";
4
- import { ToastrService } from 'ngx-toastr';
5
- import { IAuthService } from '../config/auth-service.token';
6
- import { AnnaLibAclService } from './acl.service';
7
- import { ISSOLoginService } from '../config/sso-login-service.token';
8
- import * as i0 from "@angular/core";
9
- export declare class AnnaLibAuthService {
10
- private router;
11
- aclService: AnnaLibAclService;
12
- httpClient: HttpClient;
13
- private toastr;
14
- consumingProjectSSOLoginService: ISSOLoginService;
15
- consumingProjectAuthService: IAuthService;
16
- loginErrorMessage: string | null;
17
- setNewPasswordErrorMessage: string;
18
- setNewPasswordButtonMessage: string;
19
- verifyAndSetNewPasswordErrorMessage: string;
20
- verifyAndSetNewPasswordMessage: string;
21
- verifyAndSetNewPasswordButton: string;
22
- noOfAttempts: number;
23
- sessionLocked: boolean;
24
- accessTokenTimerId: any;
25
- forgotPasswordAndGlobalSignoutLoader: boolean;
26
- constructor(router: Router, aclService: AnnaLibAclService, httpClient: HttpClient, toastr: ToastrService, consumingProjectSSOLoginService: ISSOLoginService, consumingProjectAuthService: IAuthService);
27
- ngOnInit(): void;
28
- isUserLoggedIn(): Promise<boolean>;
29
- sessionTimeout(): void;
30
- computeTokenExpiration(idToken: any): number;
31
- handleSignIn({ username, password }: SignInInput): Promise<void>;
32
- onLoginOrSetNewPassword(session: any): void;
33
- setAccessAndIDTokens(token: AuthTokens): void;
34
- getAllCognitoTokenAndGroups(token: AuthTokens): Promise<void>;
35
- refreshAccessToken(): void;
36
- changePassword(newPassword: string): Promise<void>;
37
- onForgotPasswordGenerateOTP(email: string): Promise<void>;
38
- verifyCode(confirmationCode: string, newPassword: string): Promise<void>;
39
- forgotPasswordError(err: any, noOfAttempts: number): string;
40
- signInWithSSO(): Promise<void>;
41
- handleSignOut(): Promise<void>;
42
- expiryAllExistingCurrentSession(username: string, newPassword: string): void;
43
- onLoginInCogntioToGetAccessToken(username: string, password: string): Promise<void>;
44
- onCallGlobalSignout(): Promise<void>;
45
- static ɵfac: i0.ɵɵFactoryDeclaration<AnnaLibAuthService, never>;
46
- static ɵprov: i0.ɵɵInjectableDeclaration<AnnaLibAuthService>;
47
- }
1
+ import { HttpClient } from "@angular/common/http";
2
+ import { Router } from "@angular/router";
3
+ import { AuthTokens, SignInInput } from "aws-amplify/auth";
4
+ import { ToastrService } from 'ngx-toastr';
5
+ import { IAuthService } from '../config/auth-service.token';
6
+ import { AnnaLibAclService } from './acl.service';
7
+ import { ISSOLoginService } from '../config/sso-login-service.token';
8
+ import * as i0 from "@angular/core";
9
+ export declare class AnnaLibAuthService {
10
+ private router;
11
+ aclService: AnnaLibAclService;
12
+ httpClient: HttpClient;
13
+ private toastr;
14
+ consumingProjectSSOLoginService: ISSOLoginService;
15
+ consumingProjectAuthService: IAuthService;
16
+ loginErrorMessage: string | null;
17
+ setNewPasswordErrorMessage: string;
18
+ setNewPasswordButtonMessage: string;
19
+ verifyAndSetNewPasswordErrorMessage: string;
20
+ verifyAndSetNewPasswordMessage: string;
21
+ verifyAndSetNewPasswordButton: string;
22
+ noOfAttempts: number;
23
+ sessionLocked: boolean;
24
+ accessTokenTimerId: any;
25
+ forgotPasswordAndGlobalSignoutLoader: boolean;
26
+ constructor(router: Router, aclService: AnnaLibAclService, httpClient: HttpClient, toastr: ToastrService, consumingProjectSSOLoginService: ISSOLoginService, consumingProjectAuthService: IAuthService);
27
+ ngOnInit(): void;
28
+ isUserLoggedIn(): Promise<boolean>;
29
+ sessionTimeout(): void;
30
+ computeTokenExpiration(idToken: any): number;
31
+ handleSignIn({ username, password }: SignInInput): Promise<void>;
32
+ onLoginOrSetNewPassword(session: any): void;
33
+ setAccessAndIDTokens(token: AuthTokens): void;
34
+ getAllCognitoTokenAndGroups(token: AuthTokens): Promise<void>;
35
+ refreshAccessToken(): void;
36
+ changePassword(newPassword: string): Promise<void>;
37
+ onForgotPasswordGenerateOTP(email: string): Promise<void>;
38
+ verifyCode(confirmationCode: string, newPassword: string): Promise<void>;
39
+ forgotPasswordError(err: any, noOfAttempts: number): string;
40
+ signInWithSSO(): Promise<void>;
41
+ handleSignOut(): Promise<void>;
42
+ expiryAllExistingCurrentSession(username: string, newPassword: string): void;
43
+ onLoginInCogntioToGetAccessToken(username: string, password: string): Promise<void>;
44
+ onCallGlobalSignout(): Promise<void>;
45
+ static ɵfac: i0.ɵɵFactoryDeclaration<AnnaLibAuthService, never>;
46
+ static ɵprov: i0.ɵɵInjectableDeclaration<AnnaLibAuthService>;
47
+ }
@@ -1,8 +1,8 @@
1
- import { IConfigService } from '../config/config-service.token';
2
- import * as i0 from "@angular/core";
3
- export declare class AnnaConfigService {
4
- consumingProjectConfigService: IConfigService;
5
- constructor(consumingProjectConfigService: IConfigService);
6
- static ɵfac: i0.ɵɵFactoryDeclaration<AnnaConfigService, never>;
7
- static ɵprov: i0.ɵɵInjectableDeclaration<AnnaConfigService>;
8
- }
1
+ import { IConfigService } from '../config/config-service.token';
2
+ import * as i0 from "@angular/core";
3
+ export declare class AnnaConfigService {
4
+ consumingProjectConfigService: IConfigService;
5
+ constructor(consumingProjectConfigService: IConfigService);
6
+ static ɵfac: i0.ɵɵFactoryDeclaration<AnnaConfigService, never>;
7
+ static ɵprov: i0.ɵɵInjectableDeclaration<AnnaConfigService>;
8
+ }
@@ -1,8 +1,8 @@
1
- import { ISSOLoginService } from '../config/sso-login-service.token';
2
- import * as i0 from "@angular/core";
3
- export declare class AnnaSSOLoginService {
4
- consumingProjectSSOLoginService: ISSOLoginService;
5
- constructor(consumingProjectSSOLoginService: ISSOLoginService);
6
- static ɵfac: i0.ɵɵFactoryDeclaration<AnnaSSOLoginService, never>;
7
- static ɵprov: i0.ɵɵInjectableDeclaration<AnnaSSOLoginService>;
8
- }
1
+ import { ISSOLoginService } from '../config/sso-login-service.token';
2
+ import * as i0 from "@angular/core";
3
+ export declare class AnnaSSOLoginService {
4
+ consumingProjectSSOLoginService: ISSOLoginService;
5
+ constructor(consumingProjectSSOLoginService: ISSOLoginService);
6
+ static ɵfac: i0.ɵɵFactoryDeclaration<AnnaSSOLoginService, never>;
7
+ static ɵprov: i0.ɵɵInjectableDeclaration<AnnaSSOLoginService>;
8
+ }
package/package.json CHANGED
@@ -1,9 +1,9 @@
1
1
  {
2
2
  "name": "@annalib/anna-cognito-lib",
3
- "version": "2.2.41",
3
+ "version": "2.3.0",
4
4
  "peerDependencies": {
5
- "@angular/common": "^15.2.9",
6
- "@angular/core": "^15.2.9",
5
+ "@angular/common": "^16.2.12",
6
+ "@angular/core": "^16.2.12",
7
7
  "@mdi/font": "^5.9.55",
8
8
  "@ng-bootstrap/ng-bootstrap": "^14.1.1",
9
9
  "@types/node": "^12.11.1",
@@ -11,11 +11,7 @@
11
11
  "bootstrap": "^5.2.3",
12
12
  "ngx-toastr": "^15.2.2"
13
13
  },
14
- "module": "fesm2015/annalib-anna-cognito-lib.mjs",
15
- "es2020": "fesm2020/annalib-anna-cognito-lib.mjs",
16
- "esm2020": "esm2020/annalib-anna-cognito-lib.mjs",
17
- "fesm2020": "fesm2020/annalib-anna-cognito-lib.mjs",
18
- "fesm2015": "fesm2015/annalib-anna-cognito-lib.mjs",
14
+ "module": "fesm2022/annalib-anna-cognito-lib.mjs",
19
15
  "typings": "index.d.ts",
20
16
  "exports": {
21
17
  "./package.json": {
@@ -23,11 +19,9 @@
23
19
  },
24
20
  ".": {
25
21
  "types": "./index.d.ts",
26
- "esm2020": "./esm2020/annalib-anna-cognito-lib.mjs",
27
- "es2020": "./fesm2020/annalib-anna-cognito-lib.mjs",
28
- "es2015": "./fesm2015/annalib-anna-cognito-lib.mjs",
29
- "node": "./fesm2015/annalib-anna-cognito-lib.mjs",
30
- "default": "./fesm2020/annalib-anna-cognito-lib.mjs"
22
+ "esm2022": "./esm2022/annalib-anna-cognito-lib.mjs",
23
+ "esm": "./esm2022/annalib-anna-cognito-lib.mjs",
24
+ "default": "./fesm2022/annalib-anna-cognito-lib.mjs"
31
25
  }
32
26
  },
33
27
  "sideEffects": false,
package/public-api.d.ts CHANGED
@@ -1,21 +1,21 @@
1
- export * from './lib/anna-cognito-lib.module';
2
- export * from './lib/components/cognito-and-sso-login-container/cognito-and-sso-login-container.component';
3
- export * from './lib/components/anna-login/anna-login.component';
4
- export * from './lib/components/sso-login/sso-login.component';
5
- export * from './lib/components/forgot-password/forgot-password.component';
6
- export * from './lib/components/set-new-password/set-new-password.component';
7
- export * from './lib/components/password-matching/password-matching.component';
8
- export * from './lib/components/verify-and-set-new-password/verify-and-set-new-password.component';
9
- export * from './lib/components/version-and-term-policy/version-and-term-policy.component';
10
- export * from './lib/components/powered-by-logo-template/powered-by-logo-template.component';
11
- export * from './lib/components/surewaves-year-logo/surewaves-year-logo.component';
12
- export * from './lib/services/auth.service';
13
- export * from './lib/services/acl.service';
14
- export * from './lib/config/auth-service.token';
15
- export * from './lib/config/acl-service.token';
16
- export * from './lib/config/config-service.token';
17
- export * from './lib/config/sso-login-service.token';
18
- export * from './lib/services/config.service';
19
- export * from './lib/services/sso-login.service';
20
- export * from './lib/directives/spinner-button';
21
- export * from './lib/constants/loginConstant';
1
+ export * from './lib/anna-cognito-lib.module';
2
+ export * from './lib/components/cognito-and-sso-login-container/cognito-and-sso-login-container.component';
3
+ export * from './lib/components/anna-login/anna-login.component';
4
+ export * from './lib/components/sso-login/sso-login.component';
5
+ export * from './lib/components/forgot-password/forgot-password.component';
6
+ export * from './lib/components/set-new-password/set-new-password.component';
7
+ export * from './lib/components/password-matching/password-matching.component';
8
+ export * from './lib/components/verify-and-set-new-password/verify-and-set-new-password.component';
9
+ export * from './lib/components/version-and-term-policy/version-and-term-policy.component';
10
+ export * from './lib/components/powered-by-logo-template/powered-by-logo-template.component';
11
+ export * from './lib/components/surewaves-year-logo/surewaves-year-logo.component';
12
+ export * from './lib/services/auth.service';
13
+ export * from './lib/services/acl.service';
14
+ export * from './lib/config/auth-service.token';
15
+ export * from './lib/config/acl-service.token';
16
+ export * from './lib/config/config-service.token';
17
+ export * from './lib/config/sso-login-service.token';
18
+ export * from './lib/services/config.service';
19
+ export * from './lib/services/sso-login.service';
20
+ export * from './lib/directives/spinner-button';
21
+ export * from './lib/constants/loginConstant';
@@ -1,55 +0,0 @@
1
- export class LoginConstant {
2
- }
3
- // Login page
4
- LoginConstant.enterEmail = "Enter your username";
5
- LoginConstant.enterUserCode = "Enter your usercode";
6
- LoginConstant.password = "Password";
7
- LoginConstant.confirmPassword = "Confirm Password";
8
- LoginConstant.login = "Login";
9
- LoginConstant.otp = "OTP";
10
- LoginConstant.forgotPassword = "Forgot " + LoginConstant.password.toLowerCase() + "?";
11
- // set new password
12
- LoginConstant.setNewPasswordHeading = "Set new " + LoginConstant.password.toLowerCase();
13
- LoginConstant.setNewPasswordButton = "Set and " + LoginConstant.login.toLowerCase() + " again";
14
- LoginConstant.passwordMustContain = "The password must contain:";
15
- LoginConstant.minimumCharacter = "Minimum 8 characters";
16
- LoginConstant.oneUppercase = "1 Uppercase";
17
- LoginConstant.oneLowercase = "1 Lowercase";
18
- LoginConstant.oneNumber = "1 Numerical";
19
- LoginConstant.specialCharacter = "1 Special character";
20
- LoginConstant.passwordNotMatching = "The passwords do not match. Please try again.";
21
- LoginConstant.userNamePasswordIncorrect = "Incorrect username or password";
22
- LoginConstant.userCodePasswordIncorrect = "Incorrect usercode or password";
23
- LoginConstant.userNotFound = "No registered user found";
24
- LoginConstant.loginAgain = LoginConstant.login + " again";
25
- LoginConstant.firstTimeLoginUserTempPasswordMsg = "You are logging in for the first time. Kindly use the temporary password provided in the welcome email, to login to your account. ";
26
- LoginConstant.tempPasswordExpiryError = "Temporary password has expired and must be reset by an administrator.";
27
- LoginConstant.tempPasswordOnExpiryErrorMsg = "Password has expired. A new password has been sent to your registered email. Kindly login again with new link and credentials.";
28
- // verify OTP & set new password
29
- LoginConstant.verifyAndSetNewPasswordheading = "Enter " + LoginConstant.otp + " & set new password";
30
- LoginConstant.verifyAndSetNewPasswordMessage = "An " + LoginConstant.otp + " has been succesfully emailed to ";
31
- LoginConstant.pleaseEnterItBelow = ". Please enter it below.";
32
- LoginConstant.regenerateOtp = "Regenerate " + LoginConstant.otp;
33
- LoginConstant.enterOtp = "Enter " + LoginConstant.otp;
34
- LoginConstant.submit = "Submit";
35
- LoginConstant.attempt = "Attempt";
36
- LoginConstant.attemptLimitExceeded = "You have exceeded the maximum number of allowed attempts. Please try again after 15 minutes.";
37
- LoginConstant.attemptMessage = " of 5. The OTP entered is incorrect. Please try again with the right one.";
38
- LoginConstant.sessionExpired = "The session has expired. Please try again.";
39
- LoginConstant.sessionExpiredError = "Your session has expired. Please login again";
40
- // forgot password
41
- LoginConstant.forgotPasswordHeading = "Forgot your password?";
42
- LoginConstant.PleaseEnterYourUsernameMessage = "Please enter your username.";
43
- LoginConstant.PleaseEnterYourUsercodeMessage = "Please enter your usercode.";
44
- LoginConstant.forgotPasswordButton = "Get " + LoginConstant.otp;
45
- LoginConstant.apiFailErrorMessage = "Unable to connect to server right now. Please try after some time.";
46
- //url
47
- LoginConstant.setNewPasswordUrl = "/set-new-password";
48
- LoginConstant.forgortPasswordPageUrl = "/forgot-password";
49
- LoginConstant.verifyAndSetNewPasswordUrl = "/verify-and-set-new-password";
50
- LoginConstant.loginPageUrl = "/login";
51
- LoginConstant.coPilotloginPageUrl = "/co-pilot-login";
52
- LoginConstant.welcomeScrreenUrl = "/welcome-screen";
53
- LoginConstant.homePageUrl = "/dashboard";
54
- LoginConstant.stationSettingUrl = "/station-settings";
55
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9naW5Db25zdGFudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FubmEtY29nbml0by1saWIvc3JjL2xpYi9jb25zdGFudHMvbG9naW5Db25zdGFudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQU8sYUFBYTs7QUFDeEIsYUFBYTtBQUNHLHdCQUFVLEdBQUcscUJBQXFCLENBQUM7QUFDbkMsMkJBQWEsR0FBRyxxQkFBcUIsQ0FBQztBQUN0QyxzQkFBUSxHQUFHLFVBQVUsQ0FBQztBQUN0Qiw2QkFBZSxHQUFHLGtCQUFrQixDQUFDO0FBQ3JDLG1CQUFLLEdBQUcsT0FBTyxDQUFDO0FBQ2hCLGlCQUFHLEdBQUcsS0FBSyxDQUFDO0FBQ1osNEJBQWMsR0FBRyxTQUFTLEdBQUcsYUFBYSxDQUFDLFFBQVEsQ0FBQyxXQUFXLEVBQUUsR0FBRyxHQUFHLENBQUM7QUFFeEYsbUJBQW1CO0FBQ0gsbUNBQXFCLEdBQUcsVUFBVSxHQUFHLGFBQWEsQ0FBQyxRQUFRLENBQUMsV0FBVyxFQUFFLENBQUM7QUFDMUUsa0NBQW9CLEdBQUcsVUFBVSxHQUFHLGFBQWEsQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFLEdBQUcsUUFBUSxDQUFDO0FBQ2pGLGlDQUFtQixHQUFHLDRCQUE0QixDQUFDO0FBQ25ELDhCQUFnQixHQUFHLHNCQUFzQixDQUFDO0FBQzFDLDBCQUFZLEdBQUcsYUFBYSxDQUFDO0FBQzdCLDBCQUFZLEdBQUcsYUFBYSxDQUFDO0FBQzdCLHVCQUFTLEdBQUcsYUFBYSxDQUFDO0FBQzFCLDhCQUFnQixHQUFHLHFCQUFxQixDQUFDO0FBQ3pDLGlDQUFtQixHQUFHLCtDQUErQyxDQUFDO0FBQ3RFLHVDQUF5QixHQUFHLGdDQUFnQyxDQUFDO0FBQzdELHVDQUF5QixHQUFHLGdDQUFnQyxDQUFDO0FBQzdELDBCQUFZLEdBQUcsMEJBQTBCLENBQUM7QUFDMUMsd0JBQVUsR0FBRyxhQUFhLENBQUMsS0FBSyxHQUFHLFFBQVEsQ0FBQztBQUM1QywrQ0FBaUMsR0FBRyxvSUFBb0ksQ0FBQztBQUN6SyxxQ0FBdUIsR0FBRyx1RUFBdUUsQ0FBQTtBQUNqRywwQ0FBNEIsR0FBRyxnSUFBZ0ksQ0FBQztBQUVoTCxnQ0FBZ0M7QUFDaEIsNENBQThCLEdBQUcsUUFBUSxHQUFHLGFBQWEsQ0FBQyxHQUFHLEdBQUcscUJBQXFCLENBQUM7QUFDdEYsNENBQThCLEdBQUcsS0FBSyxHQUFHLGFBQWEsQ0FBQyxHQUFHLEdBQUcsbUNBQW1DLENBQUM7QUFDakcsZ0NBQWtCLEdBQUcsMEJBQTBCLENBQUM7QUFDaEQsMkJBQWEsR0FBRyxhQUFhLEdBQUcsYUFBYSxDQUFDLEdBQUcsQ0FBQztBQUNsRCxzQkFBUSxHQUFHLFFBQVEsR0FBRyxhQUFhLENBQUMsR0FBRyxDQUFDO0FBQ3hDLG9CQUFNLEdBQUcsUUFBUSxDQUFDO0FBQ2xCLHFCQUFPLEdBQUcsU0FBUyxDQUFDO0FBQ3BCLGtDQUFvQixHQUNoQyw4RkFBOEYsQ0FBQztBQUNuRiw0QkFBYyxHQUFHLDJFQUEyRSxDQUFDO0FBQzdGLDRCQUFjLEdBQUcsNENBQTRDLENBQUM7QUFDOUQsaUNBQW1CLEdBQUcsOENBQThDLENBQUM7QUFFckYsa0JBQWtCO0FBQ0YsbUNBQXFCLEdBQUcsdUJBQXVCLENBQUM7QUFDaEQsNENBQThCLEdBQUcsNkJBQTZCLENBQUM7QUFDL0QsNENBQThCLEdBQUcsNkJBQTZCLENBQUM7QUFDL0Qsa0NBQW9CLEdBQUcsTUFBTSxHQUFHLGFBQWEsQ0FBQyxHQUFHLENBQUM7QUFDbEQsaUNBQW1CLEdBQUcsb0VBQW9FLENBQUM7QUFFM0csS0FBSztBQUNXLCtCQUFpQixHQUFHLG1CQUFtQixDQUFDO0FBQ3hDLG9DQUFzQixHQUFHLGtCQUFrQixDQUFDO0FBQzVDLHdDQUEwQixHQUFHLDhCQUE4QixDQUFDO0FBQzVELDBCQUFZLEdBQUcsUUFBUSxDQUFDO0FBQ3hCLGlDQUFtQixHQUFHLGlCQUFpQixDQUFDO0FBQ3hDLCtCQUFpQixHQUFHLGlCQUFpQixDQUFDO0FBQ3RDLHlCQUFXLEdBQUcsWUFBWSxDQUFDO0FBQzNCLCtCQUFpQixHQUFHLG1CQUFtQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNsYXNzIExvZ2luQ29uc3RhbnQge1xyXG4gIC8vIExvZ2luIHBhZ2VcclxuICBzdGF0aWMgcmVhZG9ubHkgZW50ZXJFbWFpbCA9IFwiRW50ZXIgeW91ciB1c2VybmFtZVwiO1xyXG4gIHN0YXRpYyByZWFkb25seSBlbnRlclVzZXJDb2RlID0gXCJFbnRlciB5b3VyIHVzZXJjb2RlXCI7XHJcbiAgc3RhdGljIHJlYWRvbmx5IHBhc3N3b3JkID0gXCJQYXNzd29yZFwiO1xyXG4gIHN0YXRpYyByZWFkb25seSBjb25maXJtUGFzc3dvcmQgPSBcIkNvbmZpcm0gUGFzc3dvcmRcIjtcclxuICBzdGF0aWMgcmVhZG9ubHkgbG9naW4gPSBcIkxvZ2luXCI7XHJcbiAgc3RhdGljIHJlYWRvbmx5IG90cCA9IFwiT1RQXCI7XHJcbiAgc3RhdGljIHJlYWRvbmx5IGZvcmdvdFBhc3N3b3JkID0gXCJGb3Jnb3QgXCIgKyBMb2dpbkNvbnN0YW50LnBhc3N3b3JkLnRvTG93ZXJDYXNlKCkgKyBcIj9cIjtcclxuXHJcbiAgLy8gc2V0IG5ldyBwYXNzd29yZFxyXG4gIHN0YXRpYyByZWFkb25seSBzZXROZXdQYXNzd29yZEhlYWRpbmcgPSBcIlNldCBuZXcgXCIgKyBMb2dpbkNvbnN0YW50LnBhc3N3b3JkLnRvTG93ZXJDYXNlKCk7XHJcbiAgc3RhdGljIHJlYWRvbmx5IHNldE5ld1Bhc3N3b3JkQnV0dG9uID0gXCJTZXQgYW5kIFwiICsgTG9naW5Db25zdGFudC5sb2dpbi50b0xvd2VyQ2FzZSgpICsgXCIgYWdhaW5cIjtcclxuICBzdGF0aWMgcmVhZG9ubHkgcGFzc3dvcmRNdXN0Q29udGFpbiA9IFwiVGhlIHBhc3N3b3JkIG11c3QgY29udGFpbjpcIjtcclxuICBzdGF0aWMgcmVhZG9ubHkgbWluaW11bUNoYXJhY3RlciA9IFwiTWluaW11bSA4IGNoYXJhY3RlcnNcIjtcclxuICBzdGF0aWMgcmVhZG9ubHkgb25lVXBwZXJjYXNlID0gXCIxIFVwcGVyY2FzZVwiO1xyXG4gIHN0YXRpYyByZWFkb25seSBvbmVMb3dlcmNhc2UgPSBcIjEgTG93ZXJjYXNlXCI7XHJcbiAgc3RhdGljIHJlYWRvbmx5IG9uZU51bWJlciA9IFwiMSBOdW1lcmljYWxcIjtcclxuICBzdGF0aWMgcmVhZG9ubHkgc3BlY2lhbENoYXJhY3RlciA9IFwiMSBTcGVjaWFsIGNoYXJhY3RlclwiO1xyXG4gIHN0YXRpYyByZWFkb25seSBwYXNzd29yZE5vdE1hdGNoaW5nID0gXCJUaGUgcGFzc3dvcmRzIGRvIG5vdCBtYXRjaC4gUGxlYXNlIHRyeSBhZ2Fpbi5cIjtcclxuICBzdGF0aWMgcmVhZG9ubHkgdXNlck5hbWVQYXNzd29yZEluY29ycmVjdCA9IFwiSW5jb3JyZWN0IHVzZXJuYW1lIG9yIHBhc3N3b3JkXCI7XHJcbiAgc3RhdGljIHJlYWRvbmx5IHVzZXJDb2RlUGFzc3dvcmRJbmNvcnJlY3QgPSBcIkluY29ycmVjdCB1c2VyY29kZSBvciBwYXNzd29yZFwiO1xyXG4gIHN0YXRpYyByZWFkb25seSB1c2VyTm90Rm91bmQgPSBcIk5vIHJlZ2lzdGVyZWQgdXNlciBmb3VuZFwiO1xyXG4gIHN0YXRpYyByZWFkb25seSBsb2dpbkFnYWluID0gTG9naW5Db25zdGFudC5sb2dpbiArIFwiIGFnYWluXCI7XHJcbiAgc3RhdGljIHJlYWRvbmx5IGZpcnN0VGltZUxvZ2luVXNlclRlbXBQYXNzd29yZE1zZyA9IFwiWW91IGFyZSBsb2dnaW5nIGluIGZvciB0aGUgZmlyc3QgdGltZS4gS2luZGx5IHVzZSB0aGUgdGVtcG9yYXJ5IHBhc3N3b3JkIHByb3ZpZGVkIGluIHRoZSB3ZWxjb21lIGVtYWlsLCB0byBsb2dpbiB0byB5b3VyIGFjY291bnQuIFwiO1xyXG4gIHN0YXRpYyByZWFkb25seSB0ZW1wUGFzc3dvcmRFeHBpcnlFcnJvciA9IFwiVGVtcG9yYXJ5IHBhc3N3b3JkIGhhcyBleHBpcmVkIGFuZCBtdXN0IGJlIHJlc2V0IGJ5IGFuIGFkbWluaXN0cmF0b3IuXCJcclxuICBzdGF0aWMgcmVhZG9ubHkgdGVtcFBhc3N3b3JkT25FeHBpcnlFcnJvck1zZyA9IFwiUGFzc3dvcmQgaGFzIGV4cGlyZWQuIEEgbmV3IHBhc3N3b3JkIGhhcyBiZWVuIHNlbnQgdG8geW91ciByZWdpc3RlcmVkIGVtYWlsLiBLaW5kbHkgbG9naW4gYWdhaW4gd2l0aCBuZXcgbGluayBhbmQgY3JlZGVudGlhbHMuXCI7XHJcblxyXG4gIC8vIHZlcmlmeSBPVFAgJiBzZXQgbmV3IHBhc3N3b3JkXHJcbiAgc3RhdGljIHJlYWRvbmx5IHZlcmlmeUFuZFNldE5ld1Bhc3N3b3JkaGVhZGluZyA9IFwiRW50ZXIgXCIgKyBMb2dpbkNvbnN0YW50Lm90cCArIFwiICYgc2V0IG5ldyBwYXNzd29yZFwiO1xyXG4gIHN0YXRpYyByZWFkb25seSB2ZXJpZnlBbmRTZXROZXdQYXNzd29yZE1lc3NhZ2UgPSBcIkFuIFwiICsgTG9naW5Db25zdGFudC5vdHAgKyBcIiBoYXMgYmVlbiBzdWNjZXNmdWxseSBlbWFpbGVkIHRvIFwiO1xyXG4gIHN0YXRpYyByZWFkb25seSBwbGVhc2VFbnRlckl0QmVsb3cgPSBcIi4gUGxlYXNlIGVudGVyIGl0IGJlbG93LlwiO1xyXG4gIHN0YXRpYyByZWFkb25seSByZWdlbmVyYXRlT3RwID0gXCJSZWdlbmVyYXRlIFwiICsgTG9naW5Db25zdGFudC5vdHA7XHJcbiAgc3RhdGljIHJlYWRvbmx5IGVudGVyT3RwID0gXCJFbnRlciBcIiArIExvZ2luQ29uc3RhbnQub3RwO1xyXG4gIHN0YXRpYyByZWFkb25seSBzdWJtaXQgPSBcIlN1Ym1pdFwiO1xyXG4gIHN0YXRpYyByZWFkb25seSBhdHRlbXB0ID0gXCJBdHRlbXB0XCI7XHJcbiAgc3RhdGljIHJlYWRvbmx5IGF0dGVtcHRMaW1pdEV4Y2VlZGVkID1cclxuICAgICAgXCJZb3UgaGF2ZSBleGNlZWRlZCB0aGUgbWF4aW11bSBudW1iZXIgb2YgYWxsb3dlZCBhdHRlbXB0cy4gUGxlYXNlIHRyeSBhZ2FpbiBhZnRlciAxNSBtaW51dGVzLlwiO1xyXG4gIHN0YXRpYyByZWFkb25seSBhdHRlbXB0TWVzc2FnZSA9IFwiIG9mIDUuIFRoZSBPVFAgZW50ZXJlZCBpcyBpbmNvcnJlY3QuIFBsZWFzZSB0cnkgYWdhaW4gd2l0aCB0aGUgcmlnaHQgb25lLlwiO1xyXG4gIHN0YXRpYyByZWFkb25seSBzZXNzaW9uRXhwaXJlZCA9IFwiVGhlIHNlc3Npb24gaGFzIGV4cGlyZWQuIFBsZWFzZSB0cnkgYWdhaW4uXCI7XHJcbiAgc3RhdGljIHJlYWRvbmx5IHNlc3Npb25FeHBpcmVkRXJyb3IgPSBcIllvdXIgc2Vzc2lvbiBoYXMgZXhwaXJlZC4gUGxlYXNlIGxvZ2luIGFnYWluXCI7XHJcblxyXG4gIC8vIGZvcmdvdCBwYXNzd29yZFxyXG4gIHN0YXRpYyByZWFkb25seSBmb3Jnb3RQYXNzd29yZEhlYWRpbmcgPSBcIkZvcmdvdCB5b3VyIHBhc3N3b3JkP1wiO1xyXG4gIHN0YXRpYyByZWFkb25seSBQbGVhc2VFbnRlcllvdXJVc2VybmFtZU1lc3NhZ2UgPSBcIlBsZWFzZSBlbnRlciB5b3VyIHVzZXJuYW1lLlwiO1xyXG4gIHN0YXRpYyByZWFkb25seSBQbGVhc2VFbnRlcllvdXJVc2VyY29kZU1lc3NhZ2UgPSBcIlBsZWFzZSBlbnRlciB5b3VyIHVzZXJjb2RlLlwiO1xyXG4gIHN0YXRpYyByZWFkb25seSBmb3Jnb3RQYXNzd29yZEJ1dHRvbiA9IFwiR2V0IFwiICsgTG9naW5Db25zdGFudC5vdHA7XHJcbiAgc3RhdGljIHJlYWRvbmx5IGFwaUZhaWxFcnJvck1lc3NhZ2UgPSBcIlVuYWJsZSB0byBjb25uZWN0IHRvIHNlcnZlciByaWdodCBub3cuIFBsZWFzZSB0cnkgYWZ0ZXIgc29tZSB0aW1lLlwiO1xyXG5cclxuICAvL3VybFxyXG4gIHN0YXRpYyByZWFkb25seSBzZXROZXdQYXNzd29yZFVybCA9IFwiL3NldC1uZXctcGFzc3dvcmRcIjtcclxuICBzdGF0aWMgcmVhZG9ubHkgZm9yZ29ydFBhc3N3b3JkUGFnZVVybCA9IFwiL2ZvcmdvdC1wYXNzd29yZFwiO1xyXG4gIHN0YXRpYyByZWFkb25seSB2ZXJpZnlBbmRTZXROZXdQYXNzd29yZFVybCA9IFwiL3ZlcmlmeS1hbmQtc2V0LW5ldy1wYXNzd29yZFwiO1xyXG4gIHN0YXRpYyByZWFkb25seSBsb2dpblBhZ2VVcmwgPSBcIi9sb2dpblwiO1xyXG4gIHN0YXRpYyByZWFkb25seSBjb1BpbG90bG9naW5QYWdlVXJsID0gXCIvY28tcGlsb3QtbG9naW5cIjtcclxuICBzdGF0aWMgcmVhZG9ubHkgd2VsY29tZVNjcnJlZW5VcmwgPSBcIi93ZWxjb21lLXNjcmVlblwiO1xyXG4gIHN0YXRpYyByZWFkb25seSBob21lUGFnZVVybCA9IFwiL2Rhc2hib2FyZFwiO1xyXG4gIHN0YXRpYyByZWFkb25seSBzdGF0aW9uU2V0dGluZ1VybCA9IFwiL3N0YXRpb24tc2V0dGluZ3NcIjtcclxufVxyXG4iXX0=