@rolatech/angular-account 20.0.0-beta.10 → 20.0.0-beta.12

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.
@@ -219,7 +219,8 @@ class SigninComponent extends BaseComponent {
219
219
  this.titleService.setTitle('Sign in');
220
220
  if (this.hasPassword) {
221
221
  this.passrodForm = this.formBuilder.group({
222
- account: [null, [Validators.required, Validators.pattern('^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+.[a-zA-Z]{2,}$')]],
222
+ // account: [null, [Validators.required, Validators.pattern('^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+.[a-zA-Z]{2,}$')]],
223
+ account: [null, [Validators.required]],
223
224
  password: [null, [Validators.required, Validators.minLength(6)]],
224
225
  });
225
226
  }
@@ -309,11 +310,11 @@ class SigninComponent extends BaseComponent {
309
310
  this.urlSafe = this.sanitizer.bypassSecurityTrustResourceUrl(src);
310
311
  }
311
312
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: SigninComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
312
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.3", type: SigninComponent, isStandalone: true, selector: "rolatech-account-signin", host: { listeners: { "window:message": "onLogin($event)" } }, usesInheritance: true, ngImport: i0, template: "<div class=\"h-full flex items-start sm:items-center sm:justify-center\">\n <div\n class=\"w-full h-full justify-start md:h-auto p-6 lg:p-11 rounded-xl bg-[--rt-signin-inner-background] flex flex-col lg:flex-row md:justify-between xl:w-[860px] lg:w-[800px] md:w-[600px]\"\n >\n <!-- header -->\n <div class=\"flex flex-col py-6\">\n <div class=\"text-3xl font-medium mb-3 ml-2\" i18n>Sign in</div>\n <div class=\"text-md ml-2\" i18n>Use your {{ environment.name }} Account</div>\n </div>\n <div>\n <rolatech-tabs [(select)]=\"tabIndex\">\n @if (hasPassword) {\n <rolatech-tab label=\"Password\"></rolatech-tab>\n }\n @if (hasOTP) {\n <rolatech-tab label=\"OTP\"></rolatech-tab>\n }\n @if (hasWeChat) {\n <rolatech-tab label=\"WeChat\"></rolatech-tab>\n }\n </rolatech-tabs>\n <!-- content -->\n <div class=\"pt-6 min-w-[320px] min-h-[214px]\">\n @if (tabIndex() === 0) {\n <form [formGroup]=\"passrodForm\" class=\"flex flex-col\">\n @if (hasPassword) {\n <mat-form-field>\n <mat-label i18n> Email </mat-label>\n <input matInput formControlName=\"account\" required />\n @if (passrodForm.controls['account'].touched && passrodForm.controls['account'].invalid) {\n <mat-error>\n @if (passrodForm.controls['account'].errors?.['required']) {\n <span i18n>Email is required</span>\n }\n @if (passrodForm.controls['account'].errors?.['pattern']) {\n <span i18n>Invalid email</span>\n }\n </mat-error>\n }\n </mat-form-field>\n }\n <mat-form-field>\n <mat-label i18n> Password </mat-label>\n <input autocomplete matInput formControlName=\"password\" type=\"password\" />\n @if (passrodForm.controls['password'].touched && passrodForm.controls['password'].invalid) {\n <mat-error>\n @if (passrodForm.controls['password'].errors?.['required']) {\n <span i18n>Password required</span>\n }\n @if (passrodForm.controls['password'].errors?.['minlength']) {\n <span i18n>Password too short</span>\n }\n </mat-error>\n }\n </mat-form-field>\n </form>\n }\n @if (tabIndex() === 1) {\n <form [formGroup]=\"codeForm\" class=\"flex flex-col\">\n @if (hasOTP) {\n <mat-form-field appearance=\"fill\">\n <mat-label i18n> Phone </mat-label>\n <input autocomplete matInput formControlName=\"phone\" required />\n @if (codeForm.controls['phone'].touched && codeForm.controls['phone'].invalid) {\n <mat-error>\n @if (codeForm.controls['phone'].errors?.['required']) {\n <span i18n> Phone required</span>\n }\n @if (codeForm.controls['phone'].errors?.['pattern']) {\n <span i18n> Phone invalid </span>\n }\n </mat-error>\n }\n </mat-form-field>\n <div class=\"flex justify-between items-center\">\n <mat-form-field appearance=\"fill\">\n <mat-label i18n> Code </mat-label>\n <input matInput formControlName=\"code\" required />\n @if (codeForm.controls['code'].touched && codeForm.controls['code'].invalid) {\n <mat-error>\n @if (codeForm.controls['code'].errors?.['required']) {\n <span i18n>Code required</span>\n }\n </mat-error>\n }\n </mat-form-field>\n <button mat-button (click)=\"sendSMSCode()\" [disabled]=\"countDown\" class=\"max-w-[128px] text-white text-center\">\n <span i18n>{{ showButtonText }}</span>\n </button>\n </div>\n }\n </form>\n }\n @if (tabIndex() === 2) {\n <div class=\"w-[190px] h-[190px] ml-[56px]\">\n <iframe [src]=\"urlSafe\" class=\"w-full h-full inline\" scrolling=\"no\" frameBorder=\"no\" #iframe></iframe>\n </div>\n }\n </div>\n <!-- actions -->\n <div class=\"flex justify-between items-center py-3 pl-2\">\n <a class=\"underline underline-offset-4 text-sm text-[--rt-brand-color]\" [href]=\"signUpUrl\" i18n>Create account</a>\n <button mat-flat-button (click)=\"login()\" class=\"w-[128px]\" i18n>Sign in</button>\n </div>\n </div>\n </div>\n</div>\n", styles: ["rolatech-account-signin{height:100%;color:var(--rt-text-primary, #0f0f0f);background:var(--rt-signin-background)}@media (max-width: 600px){rolatech-account-signin{background:var(--rt-signin-inner-background)}}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,input:-webkit-autofill:active{transition:background-color 0s 600000s,color 0s 600000s!important}\n"], dependencies: [{ kind: "ngmodule", type: AngularCommonModule }, { 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.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { 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"] }, { kind: "ngmodule", type: AngularComponentsModule }, { kind: "component", type: i2.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatLabel, selector: "mat-label" }, { kind: "directive", type: i3.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "component", type: TabsComponent, selector: "rolatech-tabs", inputs: ["select", "loading"], outputs: ["selectChange"] }, { kind: "component", type: TabComponent, selector: "rolatech-tab", inputs: ["label"] }], encapsulation: i0.ViewEncapsulation.None }); }
313
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.3", type: SigninComponent, isStandalone: true, selector: "rolatech-account-signin", host: { listeners: { "window:message": "onLogin($event)" } }, usesInheritance: true, ngImport: i0, template: "<div class=\"h-full flex items-start sm:items-center sm:justify-center\">\n <div\n class=\"w-full h-full justify-start md:h-auto p-6 lg:p-11 rounded-xl bg-[--rt-signin-inner-background] flex flex-col lg:flex-row md:justify-between xl:w-[860px] lg:w-[800px] md:w-[600px]\"\n >\n <!-- header -->\n <div class=\"flex flex-col py-6\">\n <div class=\"text-3xl font-medium mb-3 ml-2\" i18n>Sign in</div>\n <div class=\"text-md ml-2\" i18n>Use your {{ environment.name }} Account</div>\n </div>\n <div>\n <rolatech-tabs [(select)]=\"tabIndex\">\n @if (hasPassword) {\n <rolatech-tab label=\"Password\"></rolatech-tab>\n }\n @if (hasOTP) {\n <rolatech-tab label=\"OTP\"></rolatech-tab>\n }\n @if (hasWeChat) {\n <rolatech-tab label=\"WeChat\"></rolatech-tab>\n }\n </rolatech-tabs>\n <!-- content -->\n <div class=\"pt-6 min-w-[320px] min-h-[214px]\">\n @if (tabIndex() === 0) {\n <form [formGroup]=\"passrodForm\" class=\"flex flex-col\">\n @if (hasPassword) {\n <mat-form-field>\n <mat-label i18n> Email/Username </mat-label>\n <input matInput formControlName=\"account\" required />\n @if (passrodForm.controls['account'].touched && passrodForm.controls['account'].invalid) {\n <mat-error>\n @if (passrodForm.controls['account'].errors?.['required']) {\n <span i18n>Email is required</span>\n }\n @if (passrodForm.controls['account'].errors?.['pattern']) {\n <span i18n>Invalid email</span>\n }\n </mat-error>\n }\n </mat-form-field>\n }\n <mat-form-field>\n <mat-label i18n> Password </mat-label>\n <input autocomplete matInput formControlName=\"password\" type=\"password\" />\n @if (passrodForm.controls['password'].touched && passrodForm.controls['password'].invalid) {\n <mat-error>\n @if (passrodForm.controls['password'].errors?.['required']) {\n <span i18n>Password required</span>\n }\n @if (passrodForm.controls['password'].errors?.['minlength']) {\n <span i18n>Password too short</span>\n }\n </mat-error>\n }\n </mat-form-field>\n </form>\n }\n @if (tabIndex() === 1) {\n <form [formGroup]=\"codeForm\" class=\"flex flex-col\">\n @if (hasOTP) {\n <mat-form-field appearance=\"fill\">\n <mat-label i18n> Phone </mat-label>\n <input autocomplete matInput formControlName=\"phone\" required />\n @if (codeForm.controls['phone'].touched && codeForm.controls['phone'].invalid) {\n <mat-error>\n @if (codeForm.controls['phone'].errors?.['required']) {\n <span i18n> Phone required</span>\n }\n @if (codeForm.controls['phone'].errors?.['pattern']) {\n <span i18n> Phone invalid </span>\n }\n </mat-error>\n }\n </mat-form-field>\n <div class=\"flex justify-between items-center\">\n <mat-form-field appearance=\"fill\">\n <mat-label i18n> Code </mat-label>\n <input matInput formControlName=\"code\" required />\n @if (codeForm.controls['code'].touched && codeForm.controls['code'].invalid) {\n <mat-error>\n @if (codeForm.controls['code'].errors?.['required']) {\n <span i18n>Code required</span>\n }\n </mat-error>\n }\n </mat-form-field>\n <button\n mat-flat-button\n (click)=\"sendSMSCode()\"\n [disabled]=\"countDown\"\n class=\"max-w-[128px] text-white text-center\"\n >\n <span i18n>{{ showButtonText }}</span>\n </button>\n </div>\n }\n </form>\n }\n @if (tabIndex() === 2) {\n <div class=\"w-[190px] h-[190px] ml-[56px]\">\n <iframe [src]=\"urlSafe\" class=\"w-full h-full inline\" scrolling=\"no\" frameBorder=\"no\" #iframe></iframe>\n </div>\n }\n </div>\n <!-- actions -->\n <div class=\"flex justify-between items-center py-3 pl-2\">\n <a class=\"underline underline-offset-4 text-sm text-[--rt-brand-color]\" [href]=\"signUpUrl\" i18n>Create account</a>\n <button mat-flat-button (click)=\"login()\" class=\"w-[128px]\" i18n>Sign in</button>\n </div>\n </div>\n </div>\n</div>\n", styles: ["rolatech-account-signin{height:100%;color:var(--rt-text-primary, #0f0f0f);background:var(--rt-signin-background)}@media (max-width: 600px){rolatech-account-signin{background:var(--rt-signin-inner-background)}}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,input:-webkit-autofill:active{transition:background-color 0s 600000s,color 0s 600000s!important}\n"], dependencies: [{ kind: "ngmodule", type: AngularCommonModule }, { 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.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { 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"] }, { kind: "ngmodule", type: AngularComponentsModule }, { kind: "component", type: i2.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatLabel, selector: "mat-label" }, { kind: "directive", type: i3.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "component", type: TabsComponent, selector: "rolatech-tabs", inputs: ["select", "loading"], outputs: ["selectChange"] }, { kind: "component", type: TabComponent, selector: "rolatech-tab", inputs: ["label"] }], encapsulation: i0.ViewEncapsulation.None }); }
313
314
  }
314
315
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: SigninComponent, decorators: [{
315
316
  type: Component,
316
- args: [{ imports: [AngularCommonModule, AngularComponentsModule, TabsComponent, TabComponent], selector: 'rolatech-account-signin', encapsulation: ViewEncapsulation.None, template: "<div class=\"h-full flex items-start sm:items-center sm:justify-center\">\n <div\n class=\"w-full h-full justify-start md:h-auto p-6 lg:p-11 rounded-xl bg-[--rt-signin-inner-background] flex flex-col lg:flex-row md:justify-between xl:w-[860px] lg:w-[800px] md:w-[600px]\"\n >\n <!-- header -->\n <div class=\"flex flex-col py-6\">\n <div class=\"text-3xl font-medium mb-3 ml-2\" i18n>Sign in</div>\n <div class=\"text-md ml-2\" i18n>Use your {{ environment.name }} Account</div>\n </div>\n <div>\n <rolatech-tabs [(select)]=\"tabIndex\">\n @if (hasPassword) {\n <rolatech-tab label=\"Password\"></rolatech-tab>\n }\n @if (hasOTP) {\n <rolatech-tab label=\"OTP\"></rolatech-tab>\n }\n @if (hasWeChat) {\n <rolatech-tab label=\"WeChat\"></rolatech-tab>\n }\n </rolatech-tabs>\n <!-- content -->\n <div class=\"pt-6 min-w-[320px] min-h-[214px]\">\n @if (tabIndex() === 0) {\n <form [formGroup]=\"passrodForm\" class=\"flex flex-col\">\n @if (hasPassword) {\n <mat-form-field>\n <mat-label i18n> Email </mat-label>\n <input matInput formControlName=\"account\" required />\n @if (passrodForm.controls['account'].touched && passrodForm.controls['account'].invalid) {\n <mat-error>\n @if (passrodForm.controls['account'].errors?.['required']) {\n <span i18n>Email is required</span>\n }\n @if (passrodForm.controls['account'].errors?.['pattern']) {\n <span i18n>Invalid email</span>\n }\n </mat-error>\n }\n </mat-form-field>\n }\n <mat-form-field>\n <mat-label i18n> Password </mat-label>\n <input autocomplete matInput formControlName=\"password\" type=\"password\" />\n @if (passrodForm.controls['password'].touched && passrodForm.controls['password'].invalid) {\n <mat-error>\n @if (passrodForm.controls['password'].errors?.['required']) {\n <span i18n>Password required</span>\n }\n @if (passrodForm.controls['password'].errors?.['minlength']) {\n <span i18n>Password too short</span>\n }\n </mat-error>\n }\n </mat-form-field>\n </form>\n }\n @if (tabIndex() === 1) {\n <form [formGroup]=\"codeForm\" class=\"flex flex-col\">\n @if (hasOTP) {\n <mat-form-field appearance=\"fill\">\n <mat-label i18n> Phone </mat-label>\n <input autocomplete matInput formControlName=\"phone\" required />\n @if (codeForm.controls['phone'].touched && codeForm.controls['phone'].invalid) {\n <mat-error>\n @if (codeForm.controls['phone'].errors?.['required']) {\n <span i18n> Phone required</span>\n }\n @if (codeForm.controls['phone'].errors?.['pattern']) {\n <span i18n> Phone invalid </span>\n }\n </mat-error>\n }\n </mat-form-field>\n <div class=\"flex justify-between items-center\">\n <mat-form-field appearance=\"fill\">\n <mat-label i18n> Code </mat-label>\n <input matInput formControlName=\"code\" required />\n @if (codeForm.controls['code'].touched && codeForm.controls['code'].invalid) {\n <mat-error>\n @if (codeForm.controls['code'].errors?.['required']) {\n <span i18n>Code required</span>\n }\n </mat-error>\n }\n </mat-form-field>\n <button mat-button (click)=\"sendSMSCode()\" [disabled]=\"countDown\" class=\"max-w-[128px] text-white text-center\">\n <span i18n>{{ showButtonText }}</span>\n </button>\n </div>\n }\n </form>\n }\n @if (tabIndex() === 2) {\n <div class=\"w-[190px] h-[190px] ml-[56px]\">\n <iframe [src]=\"urlSafe\" class=\"w-full h-full inline\" scrolling=\"no\" frameBorder=\"no\" #iframe></iframe>\n </div>\n }\n </div>\n <!-- actions -->\n <div class=\"flex justify-between items-center py-3 pl-2\">\n <a class=\"underline underline-offset-4 text-sm text-[--rt-brand-color]\" [href]=\"signUpUrl\" i18n>Create account</a>\n <button mat-flat-button (click)=\"login()\" class=\"w-[128px]\" i18n>Sign in</button>\n </div>\n </div>\n </div>\n</div>\n", styles: ["rolatech-account-signin{height:100%;color:var(--rt-text-primary, #0f0f0f);background:var(--rt-signin-background)}@media (max-width: 600px){rolatech-account-signin{background:var(--rt-signin-inner-background)}}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,input:-webkit-autofill:active{transition:background-color 0s 600000s,color 0s 600000s!important}\n"] }]
317
+ args: [{ imports: [AngularCommonModule, AngularComponentsModule, TabsComponent, TabComponent], selector: 'rolatech-account-signin', encapsulation: ViewEncapsulation.None, template: "<div class=\"h-full flex items-start sm:items-center sm:justify-center\">\n <div\n class=\"w-full h-full justify-start md:h-auto p-6 lg:p-11 rounded-xl bg-[--rt-signin-inner-background] flex flex-col lg:flex-row md:justify-between xl:w-[860px] lg:w-[800px] md:w-[600px]\"\n >\n <!-- header -->\n <div class=\"flex flex-col py-6\">\n <div class=\"text-3xl font-medium mb-3 ml-2\" i18n>Sign in</div>\n <div class=\"text-md ml-2\" i18n>Use your {{ environment.name }} Account</div>\n </div>\n <div>\n <rolatech-tabs [(select)]=\"tabIndex\">\n @if (hasPassword) {\n <rolatech-tab label=\"Password\"></rolatech-tab>\n }\n @if (hasOTP) {\n <rolatech-tab label=\"OTP\"></rolatech-tab>\n }\n @if (hasWeChat) {\n <rolatech-tab label=\"WeChat\"></rolatech-tab>\n }\n </rolatech-tabs>\n <!-- content -->\n <div class=\"pt-6 min-w-[320px] min-h-[214px]\">\n @if (tabIndex() === 0) {\n <form [formGroup]=\"passrodForm\" class=\"flex flex-col\">\n @if (hasPassword) {\n <mat-form-field>\n <mat-label i18n> Email/Username </mat-label>\n <input matInput formControlName=\"account\" required />\n @if (passrodForm.controls['account'].touched && passrodForm.controls['account'].invalid) {\n <mat-error>\n @if (passrodForm.controls['account'].errors?.['required']) {\n <span i18n>Email is required</span>\n }\n @if (passrodForm.controls['account'].errors?.['pattern']) {\n <span i18n>Invalid email</span>\n }\n </mat-error>\n }\n </mat-form-field>\n }\n <mat-form-field>\n <mat-label i18n> Password </mat-label>\n <input autocomplete matInput formControlName=\"password\" type=\"password\" />\n @if (passrodForm.controls['password'].touched && passrodForm.controls['password'].invalid) {\n <mat-error>\n @if (passrodForm.controls['password'].errors?.['required']) {\n <span i18n>Password required</span>\n }\n @if (passrodForm.controls['password'].errors?.['minlength']) {\n <span i18n>Password too short</span>\n }\n </mat-error>\n }\n </mat-form-field>\n </form>\n }\n @if (tabIndex() === 1) {\n <form [formGroup]=\"codeForm\" class=\"flex flex-col\">\n @if (hasOTP) {\n <mat-form-field appearance=\"fill\">\n <mat-label i18n> Phone </mat-label>\n <input autocomplete matInput formControlName=\"phone\" required />\n @if (codeForm.controls['phone'].touched && codeForm.controls['phone'].invalid) {\n <mat-error>\n @if (codeForm.controls['phone'].errors?.['required']) {\n <span i18n> Phone required</span>\n }\n @if (codeForm.controls['phone'].errors?.['pattern']) {\n <span i18n> Phone invalid </span>\n }\n </mat-error>\n }\n </mat-form-field>\n <div class=\"flex justify-between items-center\">\n <mat-form-field appearance=\"fill\">\n <mat-label i18n> Code </mat-label>\n <input matInput formControlName=\"code\" required />\n @if (codeForm.controls['code'].touched && codeForm.controls['code'].invalid) {\n <mat-error>\n @if (codeForm.controls['code'].errors?.['required']) {\n <span i18n>Code required</span>\n }\n </mat-error>\n }\n </mat-form-field>\n <button\n mat-flat-button\n (click)=\"sendSMSCode()\"\n [disabled]=\"countDown\"\n class=\"max-w-[128px] text-white text-center\"\n >\n <span i18n>{{ showButtonText }}</span>\n </button>\n </div>\n }\n </form>\n }\n @if (tabIndex() === 2) {\n <div class=\"w-[190px] h-[190px] ml-[56px]\">\n <iframe [src]=\"urlSafe\" class=\"w-full h-full inline\" scrolling=\"no\" frameBorder=\"no\" #iframe></iframe>\n </div>\n }\n </div>\n <!-- actions -->\n <div class=\"flex justify-between items-center py-3 pl-2\">\n <a class=\"underline underline-offset-4 text-sm text-[--rt-brand-color]\" [href]=\"signUpUrl\" i18n>Create account</a>\n <button mat-flat-button (click)=\"login()\" class=\"w-[128px]\" i18n>Sign in</button>\n </div>\n </div>\n </div>\n</div>\n", styles: ["rolatech-account-signin{height:100%;color:var(--rt-text-primary, #0f0f0f);background:var(--rt-signin-background)}@media (max-width: 600px){rolatech-account-signin{background:var(--rt-signin-inner-background)}}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,input:-webkit-autofill:active{transition:background-color 0s 600000s,color 0s 600000s!important}\n"] }]
317
318
  }], ctorParameters: () => [], propDecorators: { onLogin: [{
318
319
  type: HostListener,
319
320
  args: ['window:message', ['$event']]
@@ -1 +1 @@
1
- {"version":3,"file":"rolatech-angular-account.mjs","sources":["../tmp-esm2022/lib/components/topbar-login/topbar-login.component.js","../tmp-esm2022/lib/components/forgot-password/forgot-password.component.js","../tmp-esm2022/lib/components/logout/logout.component.js","../tmp-esm2022/lib/components/passwordreset/passwordreset.component.js","../tmp-esm2022/lib/services/wechat-login.service.js","../tmp-esm2022/lib/pages/accounts/signin/signin.component.js","../tmp-esm2022/lib/pages/accounts/signup/signup.component.js","../tmp-esm2022/lib/account.routes.js","../tmp-esm2022/lib/myaccount.routes.js","../tmp-esm2022/provider.js","../tmp-esm2022/rolatech-angular-account.js"],"sourcesContent":["import { Component, PLATFORM_ID, ViewEncapsulation, inject, input } from '@angular/core';\nimport { CommonModule, isPlatformBrowser } from '@angular/common';\nimport { APP_CONFIG } from '@rolatech/angular-common';\nimport { MatButtonModule } from '@angular/material/button';\nimport { Router, NavigationStart, ActivatedRoute, } from '@angular/router';\nimport { filter } from 'rxjs';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/material/button\";\nexport class TopbarLoginComponent {\n constructor() {\n this.environment = inject(APP_CONFIG);\n this.platformId = inject(PLATFORM_ID);\n this.route = inject(ActivatedRoute);\n this.router = inject(Router);\n this.service = input('www');\n this.signinUrl = '';\n this.signupUrl = this.environment.accountsUrl + '/signup';\n this.logoutUrl = this.environment.accountsUrl + `/logout?service=${this.service()}`;\n }\n ngOnInit() {\n if (isPlatformBrowser(this.platformId)) {\n this.signinUrl = `${this.environment.accountsUrl}/signin?continue=` + window.location.href;\n this.logoutUrl = this.environment.accountsUrl + `/logout?service=${this.service()}&continue=` + window.location.origin;\n }\n this.routerSubscription = this.router.events\n .pipe(filter((event) => event instanceof NavigationStart))\n .subscribe((event) => {\n this.signinUrl = `${this.environment.accountsUrl}/signin?continue=` + window.location.origin + event.url;\n // this.checkRouteGuard(event.url);\n const currentUrl = this.router.url; // Get the current URL\n const matchedRoute = this.findRouteConfig(currentUrl);\n if (matchedRoute) {\n console.log('Matched Route Config:', matchedRoute);\n }\n else {\n console.log('No matching route found.');\n }\n });\n }\n ngOnDestroy() {\n this.routerSubscription?.unsubscribe();\n }\n // checkRouteGuard(url: string): void {\n // // const route = this.router.config.find((r) => r.path === routePath);\n // const route = this.router.config.find((r: any) => this.matchRoute(url, r.path));\n // if (route) {\n // if (route.canActivate && route.canActivate.length > 0) {\n // console.log(`Route \"${url}\" has canActivate guards:`, route.canActivate);\n // } else {\n // console.log(`Route \"${url}\" does not have canActivate guards.`);\n // }\n // } else {\n // console.log(`Route \"${url}\" not found.`);\n // }\n // }\n // matchRoute(url: string, routePath: string): boolean {\n // // Strip leading/trailing slashes from URL and routePath and compare\n // return url.replace(/^\\/|\\/$/g, '') === routePath.replace(/^\\/|\\/$/g, '');\n // }\n findRouteConfig(url) {\n return this.router.config.find((route) => this.matchRoute(route, url));\n }\n // Helper function to check if a route matches the current URL\n matchRoute(route, url) {\n const path = route.path?.split('/').join('');\n const urlSegment = url.split('/').join('');\n return path === urlSegment;\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: TopbarLoginComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.1.0\", version: \"20.0.3\", type: TopbarLoginComponent, isStandalone: true, selector: \"rolatech-account-topbar-login\", inputs: { service: { classPropertyName: \"service\", publicName: \"service\", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: \"<div class=\\\"flex items-center\\\">\\n <a mat-stroked-button class=\\\"mr-2 max-h-9 md:max-h-10\\\" [href]=\\\"signinUrl\\\"><span i18n>Sign in</span></a>\\n <a mat-flat-button class=\\\"max-h-9 md:max-h-10\\\" [href]=\\\"signupUrl\\\"><span i18n>Sign up</span></a>\\n</div>\\n\", styles: [\"\"], dependencies: [{ kind: \"ngmodule\", type: CommonModule }, { kind: \"ngmodule\", type: MatButtonModule }, { kind: \"component\", type: i1.MatButton, selector: \" button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] \", inputs: [\"matButton\"], exportAs: [\"matButton\", \"matAnchor\"] }], encapsulation: i0.ViewEncapsulation.None }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: TopbarLoginComponent, decorators: [{\n type: Component,\n args: [{ selector: 'rolatech-account-topbar-login', imports: [CommonModule, MatButtonModule], encapsulation: ViewEncapsulation.None, template: \"<div class=\\\"flex items-center\\\">\\n <a mat-stroked-button class=\\\"mr-2 max-h-9 md:max-h-10\\\" [href]=\\\"signinUrl\\\"><span i18n>Sign in</span></a>\\n <a mat-flat-button class=\\\"max-h-9 md:max-h-10\\\" [href]=\\\"signupUrl\\\"><span i18n>Sign up</span></a>\\n</div>\\n\" }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9wYmFyLWxvZ2luLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItYWNjb3VudC9zcmMvbGliL2NvbXBvbmVudHMvdG9wYmFyLWxvZ2luL3RvcGJhci1sb2dpbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyLWFjY291bnQvc3JjL2xpYi9jb21wb25lbnRzL3RvcGJhci1sb2dpbi90b3BiYXItbG9naW4uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBcUIsV0FBVyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUcsT0FBTyxFQUFFLFlBQVksRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUVMLE1BQU0sRUFFTixlQUFlLEVBR2YsY0FBYyxHQUVmLE1BQU0saUJBQWlCLENBQUM7QUFDekIsT0FBTyxFQUFFLE1BQU0sRUFBZ0IsTUFBTSxNQUFNLENBQUM7OztBQVU1QyxNQUFNLE9BQU8sb0JBQW9CO0lBUGpDO1FBUUUsZ0JBQVcsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDakMsZUFBVSxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNqQyxVQUFLLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQy9CLFdBQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFHeEIsWUFBTyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN2QixjQUFTLEdBQUcsRUFBRSxD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QW9CO2tCQVBoQyxTQUFTOytCQUNFLCtCQUErQixXQUNoQyxDQUFDLFlBQVksRUFBRSxlQUFlLENBQUMsaUJBR3pCLGlCQUFpQixDQUFDLElBQUkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uRGVzdHJveSwgT25Jbml0LCBQTEFURk9STV9JRCwgVmlld0VuY2Fwc3VsYXRpb24sIGluamVjdCwgaW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSwgaXNQbGF0Zm9ybUJyb3dzZXIgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQVBQX0NPTkZJRyB9IGZyb20gJ0Byb2xhdGVjaC9hbmd1bGFyLWNvbW1vbic7XG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHtcbiAgTmF2aWdhdGlvbkVuZCxcbiAgUm91dGVyLFxuICBFdmVudCxcbiAgTmF2aWdhdGlvblN0YXJ0LFxuICBOYXZpZ2F0aW9uQ2FuY2VsLFxuICBOYXZpZ2F0aW9uRXJyb3IsXG4gIEFjdGl2YXRlZFJvdXRlLFxuICBSb3V0ZSxcbn0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IGZpbHRlciwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG50eXBlIE5hdmlnYXRpb25FdmVudCA9IE5hdmlnYXRpb25TdGFydCB8IE5hdmlnYXRpb25FbmQgfCBOYXZpZ2F0aW9uQ2FuY2VsIHwgTmF2aWdhdGlvbkVycm9yO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdyb2xhdGVjaC1hY2NvdW50LXRvcGJhci1sb2dpbicsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIE1hdEJ1dHRvbk1vZHVsZV0sXG4gIHRlbXBsYXRlVXJsOiAnLi90b3BiYXItbG9naW4uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vdG9wYmFyLWxvZ2luLmNvbXBvbmVudC5zY3NzJyxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbn0pXG5leHBvcnQgY2xhc3MgVG9wYmFyTG9naW5Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIGVudmlyb25tZW50ID0gaW5qZWN0KEFQUF9DT05GSUcpO1xuICBwbGF0Zm9ybUlkID0gaW5qZWN0KFBMQVRGT1JNX0lEKTtcbiAgcm91dGUgPSBpbmplY3QoQWN0aXZhdGVkUm91dGUpO1xuICByb3V0ZXIgPSBpbmplY3QoUm91dGVyKTtcbiAgcHJpdmF0ZSByb3V0ZXJTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbiB8IHVuZGVmaW5lZDtcblxuICBzZXJ2aWNlID0gaW5wdXQoJ3d3dycpO1xuICBzaWduaW5VcmwgPSAnJztcbiAgc2lnbnVwVXJsID0gdGhpcy5lbnZpcm9ubWVudC5hY2NvdW50c1VybCArICcvc2lnbnVwJztcbiAgbG9nb3V0VXJsID0gdGhpcy5lbnZpcm9ubWVudC5hY2NvdW50c1VybCArIGAvbG9nb3V0P3NlcnZpY2U9JHt0aGlzLnNlcnZpY2UoKX1gO1xuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBpZiAoaXNQbGF0Zm9ybUJyb3dzZXIodGhpcy5wbGF0Zm9ybUlkKSkge1xuICAgICAgdGhpcy5zaWduaW5VcmwgPSBgJHt0aGlzLmVudmlyb25tZW50LmFjY291bnRzVXJsfS9zaWduaW4/Y29udGludWU9YCArIHdpbmRvdy5sb2NhdGlvbi5ocmVmO1xuICAgICAgdGhpcy5sb2dvdXRVcmwgPSB0aGlzLmVudmlyb25tZW50LmFjY291bnRzVXJsICsgYC9sb2dvdXQ/c2VydmljZT0ke3RoaXMuc2VydmljZSgpfSZjb250aW51ZT1gICsgd2luZG93LmxvY2F0aW9uLm9yaWdpbjtcbiAgICB9XG5cbiAgICB0aGlzLnJvdXRlclN1YnNjcmlwdGlvbiA9IHRoaXMucm91dGVyLmV2ZW50c1xuICAgICAgLnBpcGUoZmlsdGVyKChldmVudDogRXZlbnQpOiBldmVudCBpcyBOYXZpZ2F0aW9uRXZlbnQgPT4gZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uU3RhcnQpKVxuICAgICAgLnN1YnNjcmliZSgoZXZlbnQpID0+IHtcbiAgICAgICAgdGhpcy5zaWduaW5VcmwgPSBgJHt0aGlzLmVudmlyb25tZW50LmFjY291bnRzVXJsfS9zaWduaW4/Y29udGludWU9YCArIHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyBldmVudC51cmw7XG5cbiAgICAgICAgLy8gdGhpcy5jaGVja1JvdXRlR3VhcmQoZXZlbnQudXJsKTtcblxuICAgICAgICBjb25zdCBjdXJyZW50VXJsID0gdGhpcy5yb3V0ZXIudXJsOyAvLyBHZXQgdGhlIGN1cnJlbnQgVVJMXG4gICAgICAgIGNvbnN0IG1hdGNoZWRSb3V0ZSA9IHRoaXMuZmluZFJvdXRlQ29uZmlnKGN1cnJlbnRVcmwpO1xuXG4gICAgICAgIGlmIChtYXRjaGVkUm91dGUpIHtcbiAgICAgICAgICBjb25zb2xlLmxvZygnTWF0Y2hlZCBSb3V0ZSBDb25maWc6JywgbWF0Y2hlZFJvdXRlKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBjb25zb2xlLmxvZygnTm8gbWF0Y2hpbmcgcm91dGUgZm91bmQuJyk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICB9XG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMucm91dGVyU3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xuICB9XG4gIC8vIGNoZWNrUm91dGVHdWFyZCh1cmw6IHN0cmluZyk6IHZvaWQge1xuICAvLyAgIC8vIGNvbnN0IHJvdXRlID0gdGhpcy5yb3V0ZXIuY29uZmlnLmZpbmQoKHIpID0+IHIucGF0aCA9PT0gcm91dGVQYXRoKTtcbiAgLy8gICBjb25zdCByb3V0ZSA9IHRoaXMucm91dGVyLmNvbmZpZy5maW5kKChyOiBhbnkpID0+IHRoaXMubWF0Y2hSb3V0ZSh1cmwsIHIucGF0aCkpO1xuXG4gIC8vICAgaWYgKHJvdXRlKSB7XG4gIC8vICAgICBpZiAocm91dGUuY2FuQWN0aXZhdGUgJiYgcm91dGUuY2FuQWN0aXZhdGUubGVuZ3RoID4gMCkge1xuICAvLyAgICAgICBjb25zb2xlLmxvZyhgUm91dGUgXCIke3VybH1cIiBoYXMgY2FuQWN0aXZhdGUgZ3VhcmRzOmAsIHJvdXRlLmNhbkFjdGl2YXRlKTtcbiAgLy8gICAgIH0gZWxzZSB7XG4gIC8vICAgICAgIGNvbnNvbGUubG9nKGBSb3V0ZSBcIiR7dXJsfVwiIGRvZXMgbm90IGhhdmUgY2FuQWN0aXZhdGUgZ3VhcmRzLmApO1xuICAvLyAgICAgfVxuICAvLyAgIH0gZWxzZSB7XG4gIC8vICAgICBjb25zb2xlLmxvZyhgUm91dGUgXCIke3VybH1cIiBub3QgZm91bmQuYCk7XG4gIC8vICAgfVxuICAvLyB9XG4gIC8vIG1hdGNoUm91dGUodXJsOiBzdHJpbmcsIHJvdXRlUGF0aDogc3RyaW5nKTogYm9vbGVhbiB7XG4gIC8vICAgLy8gU3RyaXAgbGVhZGluZy90cmFpbGluZyBzbGFzaGVzIGZyb20gVVJMIGFuZCByb3V0ZVBhdGggYW5kIGNvbXBhcmVcbiAgLy8gICByZXR1cm4gdXJsLnJlcGxhY2UoL15cXC98XFwvJC9nLCAnJykgPT09IHJvdXRlUGF0aC5yZXBsYWNlKC9eXFwvfFxcLyQvZywgJycpO1xuICAvLyB9XG4gIGZpbmRSb3V0ZUNvbmZpZyh1cmw6IHN0cmluZyk6IFJvdXRlIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5yb3V0ZXIuY29uZmlnLmZpbmQoKHJvdXRlKSA9PiB0aGlzLm1hdGNoUm91dGUocm91dGUsIHVybCkpO1xuICB9XG5cbiAgLy8gSGVscGVyIGZ1bmN0aW9uIHRvIGNoZWNrIGlmIGEgcm91dGUgbWF0Y2hlcyB0aGUgY3VycmVudCBVUkxcbiAgbWF0Y2hSb3V0ZShyb3V0ZTogUm91dGUsIHVybDogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgY29uc3QgcGF0aCA9IHJvdXRlLnBhdGg/LnNwbGl0KCcvJykuam9pbignJyk7XG4gICAgY29uc3QgdXJsU2VnbWVudCA9IHVybC5zcGxpdCgnLycpLmpvaW4oJycpO1xuICAgIHJldHVybiBwYXRoID09PSB1cmxTZWdtZW50O1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZmxleCBpdGVtcy1jZW50ZXJcIj5cbiAgPGEgbWF0LXN0cm9rZWQtYnV0dG9uIGNsYXNzPVwibXItMiBtYXgtaC05IG1kOm1heC1oLTEwXCIgW2hyZWZdPVwic2lnbmluVXJsXCI+PHNwYW4gaTE4bj5TaWduIGluPC9zcGFuPjwvYT5cbiAgPGEgbWF0LWZsYXQtYnV0dG9uIGNsYXNzPVwibWF4LWgtOSBtZDptYXgtaC0xMFwiIFtocmVmXT1cInNpZ251cFVybFwiPjxzcGFuIGkxOG4+U2lnbiB1cDwvc3Bhbj48L2E+XG48L2Rpdj5cbiJdfQ==","import { Component } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class ForgotPasswordComponent {\n constructor() { }\n ngOnInit() { }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: ForgotPasswordComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.0.3\", type: ForgotPasswordComponent, isStandalone: true, selector: \"rolatech-account-forgot-password\", ngImport: i0, template: \"<p>forgot-password works!</p>\\n\", styles: [\"\"] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: ForgotPasswordComponent, decorators: [{\n type: Component,\n args: [{ selector: 'rolatech-account-forgot-password', template: \"<p>forgot-password works!</p>\\n\" }]\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9yZ290LXBhc3N3b3JkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItYWNjb3VudC9zcmMvbGliL2NvbXBvbmVudHMvZm9yZ290LXBhc3N3b3JkL2ZvcmdvdC1wYXNzd29yZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyLWFjY291bnQvc3JjL2xpYi9jb21wb25lbnRzL2ZvcmdvdC1wYXNzd29yZC9mb3Jnb3QtcGFzc3dvcmQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQzs7QUFPbEQsTUFBTSxPQUFPLHVCQUF1QjtJQUNsQyxnQkFBZSxDQUFDO0lBRWhCLFFBQVEsS0FBVSxDQUFDOzhHQUhSLHVCQUF1QjtrR0FBdkIsdUJBQXVCLDRGQ1BwQyxpQ0FDQTs7MkZETWEsdUJBQXVCO2tCQUxuQyxTQUFTOytCQUNFLGtDQUFrQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3JvbGF0ZWNoLWFjY291bnQtZm9yZ290LXBhc3N3b3JkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2ZvcmdvdC1wYXNzd29yZC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2ZvcmdvdC1wYXNzd29yZC5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBGb3Jnb3RQYXNzd29yZENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIGNvbnN0cnVjdG9yKCkge31cblxuICBuZ09uSW5pdCgpOiB2b2lkIHt9XG59XG4iLCI8cD5mb3Jnb3QtcGFzc3dvcmQgd29ya3MhPC9wPlxuIl19","import { isPlatformBrowser } from '@angular/common';\nimport { Component, inject, PLATFORM_ID } from '@angular/core';\nimport { MatSnackBar } from '@angular/material/snack-bar';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { AuthService } from '@rolatech/angular-auth';\nimport { APP_CONFIG, AngularCommonModule } from '@rolatech/angular-common';\nimport { AngularComponentsModule } from '@rolatech/angular-components';\nimport * as i0 from \"@angular/core\";\nexport class LogoutComponent {\n constructor() {\n this.service = '';\n this.continue = '';\n this.environment = inject(APP_CONFIG);\n this.platformId = inject(PLATFORM_ID);\n this.route = inject(ActivatedRoute);\n this.router = inject(Router);\n this.authService = inject(AuthService);\n this.snackBar = inject(MatSnackBar);\n }\n ngOnInit() {\n this.service = this.route.snapshot.queryParams['service'] || 'www';\n this.continue = this.route.snapshot.queryParams['continue'] || '/';\n if (isPlatformBrowser(this.platformId)) {\n this.logout();\n }\n }\n logout() {\n this.authService.logout().subscribe({\n next: (res) => {\n // this.router.navigate(['/signin'], {\n // queryParams: { continue: this.continue },\n // });\n // this.router.navigate([this.continue]);\n // this.router.navigateByUrl(this.continue);\n window.location.href = this.continue;\n },\n error: (error) => {\n this.snackBar.open(error.message);\n },\n });\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: LogoutComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.0.3\", type: LogoutComponent, isStandalone: true, selector: \"rolatech-account-logout\", ngImport: i0, template: \"<p>Please waiting...</p>\\n\", styles: [\"\"], dependencies: [{ kind: \"ngmodule\", type: AngularCommonModule }, { kind: \"ngmodule\", type: AngularComponentsModule }] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: LogoutComponent, decorators: [{\n type: Component,\n args: [{ imports: [AngularCommonModule, AngularComponentsModule], selector: 'rolatech-account-logout', template: \"<p>Please waiting...</p>\\n\" }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nb3V0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItYWNjb3VudC9zcmMvbGliL2NvbXBvbmVudHMvbG9nb3V0L2xvZ291dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyLWFjY291bnQvc3JjL2xpYi9jb21wb25lbnRzL2xvZ291dC9sb2dvdXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDcEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQVUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsVUFBVSxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0UsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sOEJBQThCLENBQUM7O0FBU3ZFLE1BQU0sT0FBTyxlQUFlO0lBTjVCO1FBT0UsWUFBTyxHQUFHLEVBQUUsQ0FBQztRQUNiLGFBQVEsR0FBRyxFQUFFLENBQUM7UUFDZCxnQkFBVyxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNqQyxlQUFVLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ2pDLFVBQUssR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDL0IsV0FBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN4QixnQkFBVyxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNsQyxhQUFRLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0tBd0JoQztJQXRCQyxRQUFRO1FBQ04sSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLElBQUksS0FBSyxDQUFDO1FBQ25FLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQyxJQUFJLEdBQUcsQ0FBQztRQUNuRSxJQUFJLGlCQUFpQixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDO1lBQ3ZDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNoQixDQUFDO0lBQ0gsQ0FBQztJQUNELE1BQU07UUFDSixJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sRUFBRSxDQUFDLFNBQVMsQ0FBQztZQUNsQyxJQUFJLEVBQUUsQ0FBQyxHQUFHLEVBQUUsRUFBRTtnQkFDWixzQ0FBc0M7Z0JBQ3RDLDhDQUE4QztnQkFDOUMsTUFBTTtnQkFDTix5Q0FBeUM7Z0JBQ3pDLDRDQUE0QztnQkFDNUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQztZQUN2QyxDQUFDO1lBQ0QsS0FBSyxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUU7Z0JBQ2YsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ3BDLENBQUM7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDOzhHQS9CVSxlQUFlO2tHQUFmLGVBQWUsbUZDZjVCLDRCQUNBLHlERFNZLG1CQUFtQiw4QkFBRSx1QkFBdUI7OzJGQUszQyxlQUFlO2tCQU4zQixTQUFTOzhCQUNDLENBQUMsbUJBQW1CLEVBQUUsdUJBQXVCLENBQUMsWUFDN0MseUJBQXlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNQbGF0Zm9ybUJyb3dzZXIgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBpbmplY3QsIE9uSW5pdCwgUExBVEZPUk1fSUQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdFNuYWNrQmFyIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc25hY2stYmFyJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgQXV0aFNlcnZpY2UgfSBmcm9tICdAcm9sYXRlY2gvYW5ndWxhci1hdXRoJztcbmltcG9ydCB7IEFQUF9DT05GSUcsIEFuZ3VsYXJDb21tb25Nb2R1bGUgfSBmcm9tICdAcm9sYXRlY2gvYW5ndWxhci1jb21tb24nO1xuaW1wb3J0IHsgQW5ndWxhckNvbXBvbmVudHNNb2R1bGUgfSBmcm9tICdAcm9sYXRlY2gvYW5ndWxhci1jb21wb25lbnRzJztcbmltcG9ydCB7IG1hcCwgdGFrZSB9IGZyb20gJ3J4anMnO1xuXG5AQ29tcG9uZW50KHtcbiAgaW1wb3J0czogW0FuZ3VsYXJDb21tb25Nb2R1bGUsIEFuZ3VsYXJDb21wb25lbnRzTW9kdWxlXSxcbiAgc2VsZWN0b3I6ICdyb2xhdGVjaC1hY2NvdW50LWxvZ291dCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9sb2dvdXQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9sb2dvdXQuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgTG9nb3V0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgc2VydmljZSA9ICcnO1xuICBjb250aW51ZSA9ICcnO1xuICBlbnZpcm9ubWVudCA9IGluamVjdChBUFBfQ09ORklHKTtcbiAgcGxhdGZvcm1JZCA9IGluamVjdChQTEFURk9STV9JRCk7XG4gIHJvdXRlID0gaW5qZWN0KEFjdGl2YXRlZFJvdXRlKTtcbiAgcm91dGVyID0gaW5qZWN0KFJvdXRlcik7XG4gIGF1dGhTZXJ2aWNlID0gaW5qZWN0KEF1dGhTZXJ2aWNlKTtcbiAgc25hY2tCYXIgPSBpbmplY3QoTWF0U25hY2tCYXIpO1xuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc2VydmljZSA9IHRoaXMucm91dGUuc25hcHNob3QucXVlcnlQYXJhbXNbJ3NlcnZpY2UnXSB8fCAnd3d3JztcbiAgICB0aGlzLmNvbnRpbnVlID0gdGhpcy5yb3V0ZS5zbmFwc2hvdC5xdWVyeVBhcmFtc1snY29udGludWUnXSB8fCAnLyc7XG4gICAgaWYgKGlzUGxhdGZvcm1Ccm93c2VyKHRoaXMucGxhdGZvcm1JZCkpIHtcbiAgICAgIHRoaXMubG9nb3V0KCk7XG4gICAgfVxuICB9XG4gIGxvZ291dCgpIHtcbiAgICB0aGlzLmF1dGhTZXJ2aWNlLmxvZ291dCgpLnN1YnNjcmliZSh7XG4gICAgICBuZXh0OiAocmVzKSA9PiB7XG4gICAgICAgIC8vIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnL3NpZ25pbiddLCB7XG4gICAgICAgIC8vICAgcXVlcnlQYXJhbXM6IHsgY29udGludWU6IHRoaXMuY29udGludWUgfSxcbiAgICAgICAgLy8gfSk7XG4gICAgICAgIC8vIHRoaXMucm91dGVyLm5hdmlnYXRlKFt0aGlzLmNvbnRpbnVlXSk7XG4gICAgICAgIC8vIHRoaXMucm91dGVyLm5hdmlnYXRlQnlVcmwodGhpcy5jb250aW51ZSk7XG4gICAgICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gdGhpcy5jb250aW51ZTtcbiAgICAgIH0sXG4gICAgICBlcnJvcjogKGVycm9yKSA9PiB7XG4gICAgICAgIHRoaXMuc25hY2tCYXIub3BlbihlcnJvci5tZXNzYWdlKTtcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cbn1cbiIsIjxwPlBsZWFzZSB3YWl0aW5nLi4uPC9wPlxuIl19","import { Component } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class PasswordresetComponent {\n constructor() { }\n ngOnInit() { }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: PasswordresetComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.0.3\", type: PasswordresetComponent, isStandalone: true, selector: \"rolatech-account-passwordreset\", ngImport: i0, template: \"<p>passwordreset works!</p>\\n\", styles: [\"\"] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: PasswordresetComponent, decorators: [{\n type: Component,\n args: [{ selector: 'rolatech-account-passwordreset', template: \"<p>passwordreset works!</p>\\n\" }]\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFzc3dvcmRyZXNldC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyLWFjY291bnQvc3JjL2xpYi9jb21wb25lbnRzL3Bhc3N3b3JkcmVzZXQvcGFzc3dvcmRyZXNldC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyLWFjY291bnQvc3JjL2xpYi9jb21wb25lbnRzL3Bhc3N3b3JkcmVzZXQvcGFzc3dvcmRyZXNldC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDOztBQU9sRCxNQUFNLE9BQU8sc0JBQXNCO0lBQ2pDLGdCQUFlLENBQUM7SUFFaEIsUUFBUSxLQUFVLENBQUM7OEdBSFIsc0JBQXNCO2tHQUF0QixzQkFBc0IsMEZDUG5DLCtCQUNBOzsyRkRNYSxzQkFBc0I7a0JBTGxDLFNBQVM7K0JBQ0UsZ0NBQWdDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncm9sYXRlY2gtYWNjb3VudC1wYXNzd29yZHJlc2V0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3Bhc3N3b3JkcmVzZXQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9wYXNzd29yZHJlc2V0LmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIFBhc3N3b3JkcmVzZXRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBjb25zdHJ1Y3RvcigpIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7fVxufVxuIiwiPHA+cGFzc3dvcmRyZXNldCB3b3JrcyE8L3A+XG4iXX0=","import { Directive, EventEmitter, Injectable } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class WeChatLoginService {\n constructor() {\n this.onWeChatLogin = new EventEmitter();\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: WeChatLoginService, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.0.3\", type: WeChatLoginService, isStandalone: true, ngImport: i0 }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: WeChatLoginService, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: WeChatLoginService, decorators: [{\n type: Injectable,\n args: [{\n providedIn: 'root',\n }]\n }, {\n type: Directive\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2VjaGF0LWxvZ2luLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyLWFjY291bnQvc3JjL2xpYi9zZXJ2aWNlcy93ZWNoYXQtbG9naW4uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQVUsTUFBTSxlQUFlLENBQUM7O0FBTTVFLE1BQU0sT0FBTyxrQkFBa0I7SUFHN0I7UUFGQSxrQkFBYSxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7SUFFekIsQ0FBQzs4R0FITCxrQkFBa0I7a0dBQWxCLGtCQUFrQjtrSEFBbEIsa0JBQWtCLGNBSGpCLE1BQU07OzJGQUdQLGtCQUFrQjtrQkFKOUIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7O2tCQUNBLFNBQVMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEV2ZW50RW1pdHRlciwgSW5qZWN0YWJsZSwgb3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbkBEaXJlY3RpdmUoKVxuZXhwb3J0IGNsYXNzIFdlQ2hhdExvZ2luU2VydmljZSB7XG4gIG9uV2VDaGF0TG9naW4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICBjb25zdHJ1Y3RvcigpIHt9XG59XG4iXX0=","import { isPlatformBrowser } from '@angular/common';\nimport { Component, effect, HostListener, inject, PLATFORM_ID, signal, ViewEncapsulation } from '@angular/core';\nimport { FormBuilder, Validators } from '@angular/forms';\nimport { DomSanitizer } from '@angular/platform-browser';\nimport { AngularCommonModule, APP_CONFIG } from '@rolatech/angular-common';\nimport { AngularComponentsModule, BaseComponent, TabComponent, TabsComponent } from '@rolatech/angular-components';\nimport { AUTH_METHODS, AuthMethod, AuthService, AuthUserService } from '@rolatech/angular-auth';\nimport { WeChatLoginService } from '../../../services/wechat-login.service';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/forms\";\nimport * as i2 from \"@angular/material/button\";\nimport * as i3 from \"@angular/material/form-field\";\nimport * as i4 from \"@angular/material/input\";\nexport class SigninComponent extends BaseComponent {\n onLogin(event) {\n if (event.origin !== window.location.origin ||\n /react-devtools/gi.test(event.data.source) ||\n /angular-devtools/gi.test(event.data.source)) {\n return;\n }\n if (event.origin === this.environment.accountsUrl && event.data.code === 200) {\n window.location.href = this.continue === this.environment.accountsUrl ? this.environment.myaccountUrl : this.continue;\n }\n }\n constructor() {\n super();\n this.environment = inject(APP_CONFIG);\n this.authMethods = inject(AUTH_METHODS);\n this.hasPassword = this.authMethods.includes(AuthMethod.Password);\n this.hasOTP = this.authMethods.includes(AuthMethod.OTP);\n this.hasWeChat = this.authMethods.includes(AuthMethod.WeChat);\n this.hasGoogle = this.authMethods.includes(AuthMethod.Google);\n this.platformId = inject(PLATFORM_ID);\n this.formBuilder = inject(FormBuilder);\n this.authService = inject(AuthService);\n this.authUserService = inject(AuthUserService);\n this.wechtLoginService = inject(WeChatLoginService);\n this.sanitizer = inject(DomSanitizer);\n this.continue = '';\n this.signUpUrl = '';\n this.tabIndex = signal(0);\n this.countDown = false;\n this.countDownTime = 60;\n this.showButtonText = `Send`;\n this.appid = 'this.environment.wechat.appId';\n this.state = 'add';\n this.isLoading = false;\n this.urlSafe = this.sanitizer.bypassSecurityTrustResourceUrl('');\n this.baseUrl = 'https://open.weixin.qq.com/connect/qrconnect';\n effect(() => {\n const index = this.tabIndex();\n if (index === 0) {\n this.codeForm.reset();\n }\n if (index === 1) {\n this.passrodForm.reset();\n }\n if (index === 2) {\n this.isLoading = true;\n this.codeForm.reset();\n this.passrodForm.reset();\n this.wechat();\n }\n });\n }\n ngOnInit() {\n this.titleService.setTitle('Sign in');\n if (this.hasPassword) {\n this.passrodForm = this.formBuilder.group({\n account: [null, [Validators.required, Validators.pattern('^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+.[a-zA-Z]{2,}$')]],\n password: [null, [Validators.required, Validators.minLength(6)]],\n });\n }\n if (this.hasOTP) {\n this.codeForm = this.formBuilder.group({\n phone: [null, [Validators.required, Validators.pattern('1(3|4|5|6|7|8|9)\\\\d{9}')]],\n code: [null, Validators.required],\n });\n }\n this.route.queryParams.subscribe((params) => {\n this.continue = params['continue'] || '/'; // Default to home if no continue param\n const decodedUrl = decodeURIComponent(this.continue);\n this.signUpUrl = this.continue ? `signup?continue=${decodedUrl}` : 'signup';\n });\n // this.continue = this.route.snapshot.queryParams['continue'];\n // if (this.continue) {\n // const decodedUrl = decodeURIComponent(this.continue);\n // this.signUpUrl = this.continue ? `signup?continue=${decodedUrl}` : 'signup';\n // }\n }\n get form() {\n return this.tabIndex() === 0 ? this.passrodForm.controls : this.codeForm.controls;\n }\n sendSMSCode() {\n const phoneControl = this.codeForm.get('phone');\n if (!phoneControl?.valid) {\n return;\n }\n const phone = phoneControl.value;\n this.countDown = true;\n const start = setInterval(() => {\n if (this.countDownTime >= 0) {\n this.showButtonText = $localize `${this.countDownTime--}s resend`;\n }\n else {\n clearInterval(start);\n this.showButtonText = $localize `Resend`;\n this.countDown = false;\n this.countDownTime = 60;\n }\n }, 1000);\n this.authUserService.sendSMSCode('+86', phone).subscribe({\n next: (res) => {\n this.snackBarService.open('Success');\n },\n error: (error) => {\n this.snackBarService.open(error.message);\n },\n });\n }\n login() {\n let data = {};\n if (this.tabIndex() === 0) {\n if (!this.passrodForm.valid) {\n return;\n }\n data = {\n account: this.form['account'].value,\n password: this.form['password'].value,\n };\n }\n if (this.tabIndex() === 1) {\n if (!this.codeForm.valid) {\n return;\n }\n data = {\n phone: this.form['phone'].value,\n code: this.form['code'].value,\n };\n }\n this.authService.login(data).subscribe({\n next: () => {\n if (isPlatformBrowser(this.platformId)) {\n window.location.href = this.continue === this.environment.accountsUrl ? this.environment.myaccountUrl : this.continue;\n }\n },\n error: (error) => {\n this.snackBarService.open(error.message);\n },\n });\n }\n wechat() {\n // const redirectUri = 'https://accounts.pinxiaoke.cn/login?continue';\n const redirectUri = `${window.location.origin}/login?continue`;\n const encodedURI = encodeURI(redirectUri);\n const src = `${this.baseUrl}?appid=${this.appid}&response_type=code&self_redirect=true&scope=snsapi_login&stylelite=1&redirect_uri=${encodedURI}&state=${this.state}#wechat_redirect`;\n this.urlSafe = this.sanitizer.bypassSecurityTrustResourceUrl(src);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: SigninComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.0.3\", type: SigninComponent, isStandalone: true, selector: \"rolatech-account-signin\", host: { listeners: { \"window:message\": \"onLogin($event)\" } }, usesInheritance: true, ngImport: i0, template: \"<div class=\\\"h-full flex items-start sm:items-center sm:justify-center\\\">\\n <div\\n class=\\\"w-full h-full justify-start md:h-auto p-6 lg:p-11 rounded-xl bg-[--rt-signin-inner-background] flex flex-col lg:flex-row md:justify-between xl:w-[860px] lg:w-[800px] md:w-[600px]\\\"\\n >\\n <!-- header -->\\n <div class=\\\"flex flex-col py-6\\\">\\n <div class=\\\"text-3xl font-medium mb-3 ml-2\\\" i18n>Sign in</div>\\n <div class=\\\"text-md ml-2\\\" i18n>Use your {{ environment.name }} Account</div>\\n </div>\\n <div>\\n <rolatech-tabs [(select)]=\\\"tabIndex\\\">\\n @if (hasPassword) {\\n <rolatech-tab label=\\\"Password\\\"></rolatech-tab>\\n }\\n @if (hasOTP) {\\n <rolatech-tab label=\\\"OTP\\\"></rolatech-tab>\\n }\\n @if (hasWeChat) {\\n <rolatech-tab label=\\\"WeChat\\\"></rolatech-tab>\\n }\\n </rolatech-tabs>\\n <!-- content -->\\n <div class=\\\"pt-6 min-w-[320px] min-h-[214px]\\\">\\n @if (tabIndex() === 0) {\\n <form [formGroup]=\\\"passrodForm\\\" class=\\\"flex flex-col\\\">\\n @if (hasPassword) {\\n <mat-form-field>\\n <mat-label i18n> Email </mat-label>\\n <input matInput formControlName=\\\"account\\\" required />\\n @if (passrodForm.controls['account'].touched && passrodForm.controls['account'].invalid) {\\n <mat-error>\\n @if (passrodForm.controls['account'].errors?.['required']) {\\n <span i18n>Email is required</span>\\n }\\n @if (passrodForm.controls['account'].errors?.['pattern']) {\\n <span i18n>Invalid email</span>\\n }\\n </mat-error>\\n }\\n </mat-form-field>\\n }\\n <mat-form-field>\\n <mat-label i18n> Password </mat-label>\\n <input autocomplete matInput formControlName=\\\"password\\\" type=\\\"password\\\" />\\n @if (passrodForm.controls['password'].touched && passrodForm.controls['password'].invalid) {\\n <mat-error>\\n @if (passrodForm.controls['password'].errors?.['required']) {\\n <span i18n>Password required</span>\\n }\\n @if (passrodForm.controls['password'].errors?.['minlength']) {\\n <span i18n>Password too short</span>\\n }\\n </mat-error>\\n }\\n </mat-form-field>\\n </form>\\n }\\n @if (tabIndex() === 1) {\\n <form [formGroup]=\\\"codeForm\\\" class=\\\"flex flex-col\\\">\\n @if (hasOTP) {\\n <mat-form-field appearance=\\\"fill\\\">\\n <mat-label i18n> Phone </mat-label>\\n <input autocomplete matInput formControlName=\\\"phone\\\" required />\\n @if (codeForm.controls['phone'].touched && codeForm.controls['phone'].invalid) {\\n <mat-error>\\n @if (codeForm.controls['phone'].errors?.['required']) {\\n <span i18n> Phone required</span>\\n }\\n @if (codeForm.controls['phone'].errors?.['pattern']) {\\n <span i18n> Phone invalid </span>\\n }\\n </mat-error>\\n }\\n </mat-form-field>\\n <div class=\\\"flex justify-between items-center\\\">\\n <mat-form-field appearance=\\\"fill\\\">\\n <mat-label i18n> Code </mat-label>\\n <input matInput formControlName=\\\"code\\\" required />\\n @if (codeForm.controls['code'].touched && codeForm.controls['code'].invalid) {\\n <mat-error>\\n @if (codeForm.controls['code'].errors?.['required']) {\\n <span i18n>Code required</span>\\n }\\n </mat-error>\\n }\\n </mat-form-field>\\n <button mat-button (click)=\\\"sendSMSCode()\\\" [disabled]=\\\"countDown\\\" class=\\\"max-w-[128px] text-white text-center\\\">\\n <span i18n>{{ showButtonText }}</span>\\n </button>\\n </div>\\n }\\n </form>\\n }\\n @if (tabIndex() === 2) {\\n <div class=\\\"w-[190px] h-[190px] ml-[56px]\\\">\\n <iframe [src]=\\\"urlSafe\\\" class=\\\"w-full h-full inline\\\" scrolling=\\\"no\\\" frameBorder=\\\"no\\\" #iframe></iframe>\\n </div>\\n }\\n </div>\\n <!-- actions -->\\n <div class=\\\"flex justify-between items-center py-3 pl-2\\\">\\n <a class=\\\"underline underline-offset-4 text-sm text-[--rt-brand-color]\\\" [href]=\\\"signUpUrl\\\" i18n>Create account</a>\\n <button mat-flat-button (click)=\\\"login()\\\" class=\\\"w-[128px]\\\" i18n>Sign in</button>\\n </div>\\n </div>\\n </div>\\n</div>\\n\", styles: [\"rolatech-account-signin{height:100%;color:var(--rt-text-primary, #0f0f0f);background:var(--rt-signin-background)}@media (max-width: 600px){rolatech-account-signin{background:var(--rt-signin-inner-background)}}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,input:-webkit-autofill:active{transition:background-color 0s 600000s,color 0s 600000s!important}\\n\"], dependencies: [{ kind: \"ngmodule\", type: AngularCommonModule }, { 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.RequiredValidator, selector: \":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]\", inputs: [\"required\"] }, { 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\"] }, { kind: \"ngmodule\", type: AngularComponentsModule }, { kind: \"component\", type: i2.MatButton, selector: \" button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] \", inputs: [\"matButton\"], exportAs: [\"matButton\", \"matAnchor\"] }, { kind: \"component\", type: i3.MatFormField, selector: \"mat-form-field\", inputs: [\"hideRequiredMarker\", \"color\", \"floatLabel\", \"appearance\", \"subscriptSizing\", \"hintLabel\"], exportAs: [\"matFormField\"] }, { kind: \"directive\", type: i3.MatLabel, selector: \"mat-label\" }, { kind: \"directive\", type: i3.MatError, selector: \"mat-error, [matError]\", inputs: [\"id\"] }, { kind: \"directive\", type: i4.MatInput, selector: \"input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]\", inputs: [\"disabled\", \"id\", \"placeholder\", \"name\", \"required\", \"type\", \"errorStateMatcher\", \"aria-describedby\", \"value\", \"readonly\", \"disabledInteractive\"], exportAs: [\"matInput\"] }, { kind: \"component\", type: TabsComponent, selector: \"rolatech-tabs\", inputs: [\"select\", \"loading\"], outputs: [\"selectChange\"] }, { kind: \"component\", type: TabComponent, selector: \"rolatech-tab\", inputs: [\"label\"] }], encapsulation: i0.ViewEncapsulation.None }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: SigninComponent, decorators: [{\n type: Component,\n args: [{ imports: [AngularCommonModule, AngularComponentsModule, TabsComponent, TabComponent], selector: 'rolatech-account-signin', encapsulation: ViewEncapsulation.None, template: \"<div class=\\\"h-full flex items-start sm:items-center sm:justify-center\\\">\\n <div\\n class=\\\"w-full h-full justify-start md:h-auto p-6 lg:p-11 rounded-xl bg-[--rt-signin-inner-background] flex flex-col lg:flex-row md:justify-between xl:w-[860px] lg:w-[800px] md:w-[600px]\\\"\\n >\\n <!-- header -->\\n <div class=\\\"flex flex-col py-6\\\">\\n <div class=\\\"text-3xl font-medium mb-3 ml-2\\\" i18n>Sign in</div>\\n <div class=\\\"text-md ml-2\\\" i18n>Use your {{ environment.name }} Account</div>\\n </div>\\n <div>\\n <rolatech-tabs [(select)]=\\\"tabIndex\\\">\\n @if (hasPassword) {\\n <rolatech-tab label=\\\"Password\\\"></rolatech-tab>\\n }\\n @if (hasOTP) {\\n <rolatech-tab label=\\\"OTP\\\"></rolatech-tab>\\n }\\n @if (hasWeChat) {\\n <rolatech-tab label=\\\"WeChat\\\"></rolatech-tab>\\n }\\n </rolatech-tabs>\\n <!-- content -->\\n <div class=\\\"pt-6 min-w-[320px] min-h-[214px]\\\">\\n @if (tabIndex() === 0) {\\n <form [formGroup]=\\\"passrodForm\\\" class=\\\"flex flex-col\\\">\\n @if (hasPassword) {\\n <mat-form-field>\\n <mat-label i18n> Email </mat-label>\\n <input matInput formControlName=\\\"account\\\" required />\\n @if (passrodForm.controls['account'].touched && passrodForm.controls['account'].invalid) {\\n <mat-error>\\n @if (passrodForm.controls['account'].errors?.['required']) {\\n <span i18n>Email is required</span>\\n }\\n @if (passrodForm.controls['account'].errors?.['pattern']) {\\n <span i18n>Invalid email</span>\\n }\\n </mat-error>\\n }\\n </mat-form-field>\\n }\\n <mat-form-field>\\n <mat-label i18n> Password </mat-label>\\n <input autocomplete matInput formControlName=\\\"password\\\" type=\\\"password\\\" />\\n @if (passrodForm.controls['password'].touched && passrodForm.controls['password'].invalid) {\\n <mat-error>\\n @if (passrodForm.controls['password'].errors?.['required']) {\\n <span i18n>Password required</span>\\n }\\n @if (passrodForm.controls['password'].errors?.['minlength']) {\\n <span i18n>Password too short</span>\\n }\\n </mat-error>\\n }\\n </mat-form-field>\\n </form>\\n }\\n @if (tabIndex() === 1) {\\n <form [formGroup]=\\\"codeForm\\\" class=\\\"flex flex-col\\\">\\n @if (hasOTP) {\\n <mat-form-field appearance=\\\"fill\\\">\\n <mat-label i18n> Phone </mat-label>\\n <input autocomplete matInput formControlName=\\\"phone\\\" required />\\n @if (codeForm.controls['phone'].touched && codeForm.controls['phone'].invalid) {\\n <mat-error>\\n @if (codeForm.controls['phone'].errors?.['required']) {\\n <span i18n> Phone required</span>\\n }\\n @if (codeForm.controls['phone'].errors?.['pattern']) {\\n <span i18n> Phone invalid </span>\\n }\\n </mat-error>\\n }\\n </mat-form-field>\\n <div class=\\\"flex justify-between items-center\\\">\\n <mat-form-field appearance=\\\"fill\\\">\\n <mat-label i18n> Code </mat-label>\\n <input matInput formControlName=\\\"code\\\" required />\\n @if (codeForm.controls['code'].touched && codeForm.controls['code'].invalid) {\\n <mat-error>\\n @if (codeForm.controls['code'].errors?.['required']) {\\n <span i18n>Code required</span>\\n }\\n </mat-error>\\n }\\n </mat-form-field>\\n <button mat-button (click)=\\\"sendSMSCode()\\\" [disabled]=\\\"countDown\\\" class=\\\"max-w-[128px] text-white text-center\\\">\\n <span i18n>{{ showButtonText }}</span>\\n </button>\\n </div>\\n }\\n </form>\\n }\\n @if (tabIndex() === 2) {\\n <div class=\\\"w-[190px] h-[190px] ml-[56px]\\\">\\n <iframe [src]=\\\"urlSafe\\\" class=\\\"w-full h-full inline\\\" scrolling=\\\"no\\\" frameBorder=\\\"no\\\" #iframe></iframe>\\n </div>\\n }\\n </div>\\n <!-- actions -->\\n <div class=\\\"flex justify-between items-center py-3 pl-2\\\">\\n <a class=\\\"underline underline-offset-4 text-sm text-[--rt-brand-color]\\\" [href]=\\\"signUpUrl\\\" i18n>Create account</a>\\n <button mat-flat-button (click)=\\\"login()\\\" class=\\\"w-[128px]\\\" i18n>Sign in</button>\\n </div>\\n </div>\\n </div>\\n</div>\\n\", styles: [\"rolatech-account-signin{height:100%;color:var(--rt-text-primary, #0f0f0f);background:var(--rt-signin-background)}@media (max-width: 600px){rolatech-account-signin{background:var(--rt-signin-inner-background)}}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,input:-webkit-autofill:active{transition:background-color 0s 600000s,color 0s 600000s!important}\\n\"] }]\n }], ctorParameters: () => [], propDecorators: { onLogin: [{\n type: HostListener,\n args: ['window:message', ['$event']]\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lnbmluLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItYWNjb3VudC9zcmMvbGliL3BhZ2VzL2FjY291bnRzL3NpZ25pbi9zaWduaW4uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhci1hY2NvdW50L3NyYy9saWIvcGFnZXMvYWNjb3VudHMvc2lnbmluL3NpZ25pbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFVLFdBQVcsRUFBRSxNQUFNLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEgsT0FBTyxFQUFFLFdBQVcsRUFBYSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNwRSxPQUFPLEVBQW1CLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzFFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxVQUFVLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsYUFBYSxFQUFFLFlBQVksRUFBRSxhQUFhLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNuSCxPQUFPLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDaEcsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7Ozs7OztBQVM1RSxNQUFNLE9BQU8sZUFBZ0IsU0FBUSxhQUFhO0lBNEJoRCxPQUFPLENBQUMsS0FBVTtRQUNoQixJQUNFLEtBQUssQ0FBQyxNQUFNLEtBQUssTUFBTSxDQUFDLFFBQVEsQ0FBQyxN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b0hBQUUsWUFBWTs7MkZBTXhFLGVBQWU7a0JBUDNCLFNBQVM7OEJBQ0MsQ0FBQyxtQkFBbUIsRUFBRSx1QkFBdUIsRUFBRSxhQUFhLEVBQUUsWUFBWSxDQUFDLFlBQzFFLHlCQUF5QixpQkFHcEIsaUJBQWlCLENBQUMsSUFBSTt3REE4QnJDLE9BQU87c0JBRE4sWUFBWTt1QkFBQyxnQkFBZ0IsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGlzUGxhdGZvcm1Ccm93c2VyIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCwgZWZmZWN0LCBIb3N0TGlzdGVuZXIsIGluamVjdCwgT25Jbml0LCBQTEFURk9STV9JRCwgc2lnbmFsLCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIEZvcm1Hcm91cCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFNhZmVSZXNvdXJjZVVybCwgRG9tU2FuaXRpemVyIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5pbXBvcnQgeyBBbmd1bGFyQ29tbW9uTW9kdWxlLCBBUFBfQ09ORklHIH0gZnJvbSAnQHJvbGF0ZWNoL2FuZ3VsYXItY29tbW9uJztcbmltcG9ydCB7IEFuZ3VsYXJDb21wb25lbnRzTW9kdWxlLCBCYXNlQ29tcG9uZW50LCBUYWJDb21wb25lbnQsIFRhYnNDb21wb25lbnQgfSBmcm9tICdAcm9sYXRlY2gvYW5ndWxhci1jb21wb25lbnRzJztcbmltcG9ydCB7IEFVVEhfTUVUSE9EUywgQXV0aE1ldGhvZCwgQXV0aFNlcnZpY2UsIEF1dGhVc2VyU2VydmljZSB9IGZyb20gJ0Byb2xhdGVjaC9hbmd1bGFyLWF1dGgnO1xuaW1wb3J0IHsgV2VDaGF0TG9naW5TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvd2VjaGF0LWxvZ2luLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgaW1wb3J0czogW0FuZ3VsYXJDb21tb25Nb2R1bGUsIEFuZ3VsYXJDb21wb25lbnRzTW9kdWxlLCBUYWJzQ29tcG9uZW50LCBUYWJDb21wb25lbnRdLFxuICBzZWxlY3RvcjogJ3JvbGF0ZWNoLWFjY291bnQtc2lnbmluJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3NpZ25pbi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3NpZ25pbi5jb21wb25lbnQuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxufSlcbmV4cG9ydCBjbGFzcyBTaWduaW5Db21wb25lbnQgZXh0ZW5kcyBCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgZW52aXJvbm1lbnQgPSBpbmplY3QoQVBQX0NPTkZJRyk7XG4gIGF1dGhNZXRob2RzID0gaW5qZWN0KEFVVEhfTUVUSE9EUylcbiAgaGFzUGFzc3dvcmQgPSB0aGlzLmF1dGhNZXRob2RzLmluY2x1ZGVzKEF1dGhNZXRob2QuUGFzc3dvcmQpO1xuICBoYXNPVFAgPSB0aGlzLmF1dGhNZXRob2RzLmluY2x1ZGVzKEF1dGhNZXRob2QuT1RQKTtcbiAgaGFzV2VDaGF0ID0gdGhpcy5hdXRoTWV0aG9kcy5pbmNsdWRlcyhBdXRoTWV0aG9kLldlQ2hhdCk7XG4gIGhhc0dvb2dsZSA9IHRoaXMuYXV0aE1ldGhvZHMuaW5jbHVkZXMoQXV0aE1ldGhvZC5Hb29nbGUpO1xuXG4gIHBsYXRmb3JtSWQgPSBpbmplY3QoUExBVEZPUk1fSUQpO1xuICBmb3JtQnVpbGRlciA9IGluamVjdChGb3JtQnVpbGRlcik7XG4gIGF1dGhTZXJ2aWNlID0gaW5qZWN0KEF1dGhTZXJ2aWNlKTtcbiAgYXV0aFVzZXJTZXJ2aWNlID0gaW5qZWN0KEF1dGhVc2VyU2VydmljZSk7XG4gIHdlY2h0TG9naW5TZXJ2aWNlID0gaW5qZWN0KFdlQ2hhdExvZ2luU2VydmljZSk7XG4gIHNhbml0aXplciA9IGluamVjdChEb21TYW5pdGl6ZXIpO1xuICBwYXNzcm9kRm9ybSE6IEZvcm1Hcm91cDtcbiAgY29kZUZvcm0hOiBGb3JtR3JvdXA7XG4gIGNvbnRpbnVlID0gJyc7XG4gIHNpZ25VcFVybCA9ICcnO1xuICB0YWJJbmRleCA9IHNpZ25hbCgwKTtcbiAgY291bnREb3duID0gZmFsc2U7XG4gIGNvdW50RG93blRpbWUgPSA2MDtcbiAgc2hvd0J1dHRvblRleHQgPSBgU2VuZGA7XG4gIGFwcGlkID0gJ3RoaXMuZW52aXJvbm1lbnQud2VjaGF0LmFwcElkJ1xuICBzdGF0ZSA9ICdhZGQnO1xuICBpc0xvYWRpbmcgPSBmYWxzZTtcbiAgdXJsU2FmZTogU2FmZVJlc291cmNlVXJsID0gdGhpcy5zYW5pdGl6ZXIuYnlwYXNzU2VjdXJpdHlUcnVzdFJlc291cmNlVXJsKCcnKTtcbiAgYmFzZVVybCA9ICdodHRwczovL29wZW4ud2VpeGluLnFxLmNvbS9jb25uZWN0L3FyY29ubmVjdCc7XG4gIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzptZXNzYWdlJywgWyckZXZlbnQnXSlcbiAgb25Mb2dpbihldmVudDogYW55KTogdm9pZCB7XG4gICAgaWYgKFxuICAgICAgZXZlbnQub3JpZ2luICE9PSB3aW5kb3cubG9jYXRpb24ub3JpZ2luIHx8XG4gICAgICAvcmVhY3QtZGV2dG9vbHMvZ2kudGVzdChldmVudC5kYXRhLnNvdXJjZSkgfHxcbiAgICAgIC9hbmd1bGFyLWRldnRvb2xzL2dpLnRlc3QoZXZlbnQuZGF0YS5zb3VyY2UpXG4gICAgKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGlmIChldmVudC5vcmlnaW4gPT09IHRoaXMuZW52aXJvbm1lbnQuYWNjb3VudHNVcmwgJiYgZXZlbnQuZGF0YS5jb2RlID09PSAyMDApIHtcbiAgICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gdGhpcy5jb250aW51ZSA9PT0gdGhpcy5lbnZpcm9ubWVudC5hY2NvdW50c1VybCA/IHRoaXMuZW52aXJvbm1lbnQubXlhY2NvdW50VXJsIDogdGhpcy5jb250aW51ZTtcbiAgICB9XG4gIH1cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgICBlZmZlY3QoKCkgPT4ge1xuICAgICAgY29uc3QgaW5kZXggPSB0aGlzLnRhYkluZGV4KCk7XG4gICAgICBpZiAoaW5kZXggPT09IDApIHtcbiAgICAgICAgdGhpcy5jb2RlRm9ybS5yZXNldCgpO1xuICAgICAgfVxuICAgICAgaWYgKGluZGV4ID09PSAxKSB7XG4gICAgICAgIHRoaXMucGFzc3JvZEZvcm0ucmVzZXQoKTtcbiAgICAgIH1cbiAgICAgIGlmIChpbmRleCA9PT0gMikge1xuICAgICAgICB0aGlzLmlzTG9hZGluZyA9IHRydWU7XG4gICAgICAgIHRoaXMuY29kZUZvcm0ucmVzZXQoKTtcbiAgICAgICAgdGhpcy5wYXNzcm9kRm9ybS5yZXNldCgpO1xuICAgICAgICB0aGlzLndlY2hhdCgpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMudGl0bGVTZXJ2aWNlLnNldFRpdGxlKCdTaWduIGluJyk7XG4gICAgaWYgKHRoaXMuaGFzUGFzc3dvcmQpIHtcbiAgICAgIHRoaXMucGFzc3JvZEZvcm0gPSB0aGlzLmZvcm1CdWlsZGVyLmdyb3VwKHtcbiAgICAgICAgYWNjb3VudDogW251bGwsIFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBWYWxpZGF0b3JzLnBhdHRlcm4oJ15bYS16QS1aMC05Ll8lKy1dK0BbYS16QS1aMC05Li1dKy5bYS16QS1aXXsyLH0kJyldXSxcbiAgICAgICAgcGFzc3dvcmQ6IFtudWxsLCBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgVmFsaWRhdG9ycy5taW5MZW5ndGgoNildXSxcbiAgICAgIH0pO1xuICAgIH1cbiAgICBpZiAodGhpcy5oYXNPVFApIHtcbiAgICAgIHRoaXMuY29kZUZvcm0gPSB0aGlzLmZvcm1CdWlsZGVyLmdyb3VwKHtcbiAgICAgICAgcGhvbmU6IFtudWxsLCBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgVmFsaWRhdG9ycy5wYXR0ZXJuKCcxKDN8NHw1fDZ8N3w4fDkpXFxcXGR7OX0nKV1dLFxuICAgICAgICBjb2RlOiBbbnVsbCwgVmFsaWRhdG9ycy5yZXF1aXJlZF0sXG4gICAgICB9KTtcbiAgICB9XG4gICAgdGhpcy5yb3V0ZS5xdWVyeVBhcmFtcy5zdWJzY3JpYmUoKHBhcmFtcykgPT4ge1xuICAgICAgdGhpcy5jb250aW51ZSA9IHBhcmFtc1snY29udGludWUnXSB8fCAnLyc7IC8vIERlZmF1bHQgdG8gaG9tZSBpZiBubyBjb250aW51ZSBwYXJhbVxuICAgICAgY29uc3QgZGVjb2RlZFVybCA9IGRlY29kZVVSSUNvbXBvbmVudCh0aGlzLmNvbnRpbnVlKTtcbiAgICAgIHRoaXMuc2lnblVwVXJsID0gdGhpcy5jb250aW51ZSA/IGBzaWdudXA/Y29udGludWU9JHtkZWNvZGVkVXJsfWAgOiAnc2lnbnVwJztcbiAgICB9KTtcbiAgICAvLyB0aGlzLmNvbnRpbnVlID0gdGhpcy5yb3V0ZS5zbmFwc2hvdC5xdWVyeVBhcmFtc1snY29udGludWUnXTtcbiAgICAvLyBpZiAodGhpcy5jb250aW51ZSkge1xuICAgIC8vICAgY29uc3QgZGVjb2RlZFVybCA9IGRlY29kZVVSSUNvbXBvbmVudCh0aGlzLmNvbnRpbnVlKTtcbiAgICAvLyAgIHRoaXMuc2lnblVwVXJsID0gdGhpcy5jb250aW51ZSA/IGBzaWdudXA/Y29udGludWU9JHtkZWNvZGVkVXJsfWAgOiAnc2lnbnVwJztcbiAgICAvLyB9XG4gIH1cbiAgZ2V0IGZvcm0oKSB7XG4gICAgcmV0dXJuIHRoaXMudGFiSW5kZXgoKSA9PT0gMCA/IHRoaXMucGFzc3JvZEZvcm0uY29udHJvbHMgOiB0aGlzLmNvZGVGb3JtLmNvbnRyb2xzO1xuICB9XG4gIHNlbmRTTVNDb2RlKCkge1xuICAgIGNvbnN0IHBob25lQ29udHJvbCA9IHRoaXMuY29kZUZvcm0uZ2V0KCdwaG9uZScpO1xuICAgIGlmICghcGhvbmVDb250cm9sPy52YWxpZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBwaG9uZSA9IHBob25lQ29udHJvbC52YWx1ZTtcbiAgICB0aGlzLmNvdW50RG93biA9IHRydWU7XG4gICAgY29uc3Qgc3RhcnQgPSBzZXRJbnRlcnZhbCgoKSA9PiB7XG4gICAgICBpZiAodGhpcy5jb3VudERvd25UaW1lID49IDApIHtcbiAgICAgICAgdGhpcy5zaG93QnV0dG9uVGV4dCA9ICRsb2NhbGl6ZWAke3RoaXMuY291bnREb3duVGltZS0tfXMgcmVzZW5kYDtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNsZWFySW50ZXJ2YWwoc3RhcnQpO1xuICAgICAgICB0aGlzLnNob3dCdXR0b25UZXh0ID0gJGxvY2FsaXplYFJlc2VuZGA7XG4gICAgICAgIHRoaXMuY291bnREb3duID0gZmFsc2U7XG4gICAgICAgIHRoaXMuY291bnREb3duVGltZSA9IDYwO1xuICAgICAgfVxuICAgIH0sIDEwMDApO1xuXG4gICAgdGhpcy5hdXRoVXNlclNlcnZpY2Uuc2VuZFNNU0NvZGUoJys4NicsIHBob25lKS5zdWJzY3JpYmUoe1xuICAgICAgbmV4dDogKHJlcykgPT4ge1xuICAgICAgICB0aGlzLnNuYWNrQmFyU2VydmljZS5vcGVuKCdTdWNjZXNzJyk7XG4gICAgICB9LFxuICAgICAgZXJyb3I6IChlcnJvcikgPT4ge1xuICAgICAgICB0aGlzLnNuYWNrQmFyU2VydmljZS5vcGVuKGVycm9yLm1lc3NhZ2UpO1xuICAgICAgfSxcbiAgICB9KTtcbiAgfVxuICBsb2dpbigpIHtcbiAgICBsZXQgZGF0YSA9IHt9O1xuICAgIGlmICh0aGlzLnRhYkluZGV4KCkgPT09IDApIHtcbiAgICAgIGlmICghdGhpcy5wYXNzcm9kRm9ybS52YWxpZCkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICBkYXRhID0ge1xuICAgICAgICBhY2NvdW50OiB0aGlzLmZvcm1bJ2FjY291bnQnXS52YWx1ZSxcbiAgICAgICAgcGFzc3dvcmQ6IHRoaXMuZm9ybVsncGFzc3dvcmQnXS52YWx1ZSxcbiAgICAgIH07XG4gICAgfVxuICAgIGlmICh0aGlzLnRhYkluZGV4KCkgPT09IDEpIHtcbiAgICAgIGlmICghdGhpcy5jb2RlRm9ybS52YWxpZCkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICBkYXRhID0ge1xuICAgICAgICBwaG9uZTogdGhpcy5mb3JtWydwaG9uZSddLnZhbHVlLFxuICAgICAgICBjb2RlOiB0aGlzLmZvcm1bJ2NvZGUnXS52YWx1ZSxcbiAgICAgIH07XG4gICAgfVxuXG4gICAgdGhpcy5hdXRoU2VydmljZS5sb2dpbihkYXRhKS5zdWJzY3JpYmUoe1xuICAgICAgbmV4dDogKCkgPT4ge1xuICAgICAgICBpZiAoaXNQbGF0Zm9ybUJyb3dzZXIodGhpcy5wbGF0Zm9ybUlkKSkge1xuICAgICAgICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gdGhpcy5jb250aW51ZSA9PT0gdGhpcy5lbnZpcm9ubWVudC5hY2NvdW50c1VybCA/IHRoaXMuZW52aXJvbm1lbnQubXlhY2NvdW50VXJsIDogdGhpcy5jb250aW51ZTtcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIGVycm9yOiAoZXJyb3IpID0+IHtcbiAgICAgICAgdGhpcy5zbmFja0JhclNlcnZpY2Uub3BlbihlcnJvci5tZXNzYWdlKTtcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cbiAgd2VjaGF0KCkge1xuICAgIC8vIGNvbnN0IHJlZGlyZWN0VXJpID0gJ2h0dHBzOi8vYWNjb3VudHMucGlueGlhb2tlLmNuL2xvZ2luP2NvbnRpbnVlJztcbiAgICBjb25zdCByZWRpcmVjdFVyaSA9IGAke3dpbmRvdy5sb2NhdGlvbi5vcmlnaW59L2xvZ2luP2NvbnRpbnVlYDtcbiAgICBjb25zdCBlbmNvZGVkVVJJID0gZW5jb2RlVVJJKHJlZGlyZWN0VXJpKTtcbiAgICBjb25zdCBzcmMgPSBgJHt0aGlzLmJhc2VVcmx9P2FwcGlkPSR7dGhpcy5hcHBpZH0mcmVzcG9uc2VfdHlwZT1jb2RlJnNlbGZfcmVkaXJlY3Q9dHJ1ZSZzY29wZT1zbnNhcGlfbG9naW4mc3R5bGVsaXRlPTEmcmVkaXJlY3RfdXJpPSR7ZW5jb2RlZFVSSX0mc3RhdGU9JHt0aGlzLnN0YXRlfSN3ZWNoYXRfcmVkaXJlY3RgO1xuICAgIHRoaXMudXJsU2FmZSA9IHRoaXMuc2FuaXRpemVyLmJ5cGFzc1NlY3VyaXR5VHJ1c3RSZXNvdXJjZVVybChzcmMpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiaC1mdWxsIGZsZXggaXRlbXMtc3RhcnQgc206aXRlbXMtY2VudGVyIHNtOmp1c3RpZnktY2VudGVyXCI+XG4gIDxkaXZcbiAgICBjbGFzcz1cInctZnVsbCBoLWZ1bGwganVzdGlmeS1zdGFydCBtZDpoLWF1dG8gcC02IGxnOnAtMTEgcm91bmRlZC14bCBiZy1bLS1ydC1zaWduaW4taW5uZXItYmFja2dyb3VuZF0gZmxleCBmbGV4LWNvbCBsZzpmbGV4LXJvdyBtZDpqdXN0aWZ5LWJldHdlZW4geGw6dy1bODYwcHhdIGxnOnctWzgwMHB4XSBtZDp3LVs2MDBweF1cIlxuICA+XG4gICAgPCEtLSBoZWFkZXIgLS0+XG4gICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2wgcHktNlwiPlxuICAgICAgPGRpdiBjbGFzcz1cInRleHQtM3hsIGZvbnQtbWVkaXVtIG1iLTMgbWwtMlwiIGkxOG4+U2lnbiBpbjwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cInRleHQtbWQgbWwtMlwiIGkxOG4+VXNlIHlvdXIge3sgZW52aXJvbm1lbnQubmFtZSB9fSBBY2NvdW50PC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdj5cbiAgICAgIDxyb2xhdGVjaC10YWJzIFsoc2VsZWN0KV09XCJ0YWJJbmRleFwiPlxuICAgICAgICBAaWYgKGhhc1Bhc3N3b3JkKSB7XG4gICAgICAgICAgPHJvbGF0ZWNoLXRhYiBsYWJlbD1cIlBhc3N3b3JkXCI+PC9yb2xhdGVjaC10YWI+XG4gICAgICAgIH1cbiAgICAgICAgQGlmIChoYXNPVFApIHtcbiAgICAgICAgICA8cm9sYXRlY2gtdGFiIGxhYmVsPVwiT1RQXCI+PC9yb2xhdGVjaC10YWI+XG4gICAgICAgIH1cbiAgICAgICAgQGlmIChoYXNXZUNoYXQpIHtcbiAgICAgICAgICA8cm9sYXRlY2gtdGFiIGxhYmVsPVwiV2VDaGF0XCI+PC9yb2xhdGVjaC10YWI+XG4gICAgICAgIH1cbiAgICAgIDwvcm9sYXRlY2gtdGFicz5cbiAgICAgIDwhLS0gY29udGVudCAtLT5cbiAgICAgIDxkaXYgY2xhc3M9XCJwdC02IG1pbi13LVszMjBweF0gbWluLWgtWzIxNHB4XVwiPlxuICAgICAgICBAaWYgKHRhYkluZGV4KCkgPT09IDApIHtcbiAgICAgICAgICA8Zm9ybSBbZm9ybUdyb3VwXT1cInBhc3Nyb2RGb3JtXCIgY2xhc3M9XCJmbGV4IGZsZXgtY29sXCI+XG4gICAgICAgICAgICBAaWYgKGhhc1Bhc3N3b3JkKSB7XG4gICAgICAgICAgICAgIDxtYXQtZm9ybS1maWVsZD5cbiAgICAgICAgICAgICAgICA8bWF0LWxhYmVsIGkxOG4+IEVtYWlsIDwvbWF0LWxhYmVsPlxuICAgICAgICAgICAgICAgIDxpbnB1dCBtYXRJbnB1dCBmb3JtQ29udHJvbE5hbWU9XCJhY2NvdW50XCIgcmVxdWlyZWQgLz5cbiAgICAgICAgICAgICAgICBAaWYgKHBhc3Nyb2RGb3JtLmNvbnRyb2xzWydhY2NvdW50J10udG91Y2hlZCAmJiBwYXNzcm9kRm9ybS5jb250cm9sc1snYWNjb3VudCddLmludmFsaWQpIHtcbiAgICAgICAgICAgICAgICAgIDxtYXQtZXJyb3I+XG4gICAgICAgICAgICAgICAgICAgIEBpZiAocGFzc3JvZEZvcm0uY29udHJvbHNbJ2FjY291bnQnXS5lcnJvcnM/LlsncmVxdWlyZWQnXSkge1xuICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGkxOG4+RW1haWwgaXMgcmVxdWlyZWQ8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgQGlmIChwYXNzcm9kRm9ybS5jb250cm9sc1snYWNjb3VudCddLmVycm9ycz8uWydwYXR0ZXJuJ10pIHtcbiAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBpMThuPkludmFsaWQgZW1haWw8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIDwvbWF0LWVycm9yPlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDxtYXQtZm9ybS1maWVsZD5cbiAgICAgICAgICAgICAgPG1hdC1sYWJlbCBpMThuPiBQYXNzd29yZCA8L21hdC1sYWJlbD5cbiAgICAgICAgICAgICAgPGlucHV0IGF1dG9jb21wbGV0ZSBtYXRJbnB1dCBmb3JtQ29udHJvbE5hbWU9XCJwYXNzd29yZFwiIHR5cGU9XCJwYXNzd29yZFwiIC8+XG4gICAgICAgICAgICAgIEBpZiAocGFzc3JvZEZvcm0uY29udHJvbHNbJ3Bhc3N3b3JkJ10udG91Y2hlZCAmJiBwYXNzcm9kRm9ybS5jb250cm9sc1sncGFzc3dvcmQnXS5pbnZhbGlkKSB7XG4gICAgICAgICAgICAgICAgPG1hdC1lcnJvcj5cbiAgICAgICAgICAgICAgICAgIEBpZiAocGFzc3JvZEZvcm0uY29udHJvbHNbJ3Bhc3N3b3JkJ10uZXJyb3JzPy5bJ3JlcXVpcmVkJ10pIHtcbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gaTE4bj5QYXNzd29yZCByZXF1aXJlZDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIEBpZiAocGFzc3JvZEZvcm0uY29udHJvbHNbJ3Bhc3N3b3JkJ10uZXJyb3JzPy5bJ21pbmxlbmd0aCddKSB7XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGkxOG4+UGFzc3dvcmQgdG9vIHNob3J0PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIDwvbWF0LWVycm9yPlxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxuICAgICAgICAgIDwvZm9ybT5cbiAgICAgICAgfVxuICAgICAgICBAaWYgKHRhYkluZGV4KCkgPT09IDEpIHtcbiAgICAgICAgICA8Zm9ybSBbZm9ybUdyb3VwXT1cImNvZGVGb3JtXCIgY2xhc3M9XCJmbGV4IGZsZXgtY29sXCI+XG4gICAgICAgICAgICBAaWYgKGhhc09UUCkge1xuICAgICAgICAgICAgICA8bWF0LWZvcm0tZmllbGQgYXBwZWFyYW5jZT1cImZpbGxcIj5cbiAgICAgICAgICAgICAgICA8bWF0LWxhYmVsIGkxOG4+IFBob25lIDwvbWF0LWxhYmVsPlxuICAgICAgICAgICAgICAgIDxpbnB1dCBhdXRvY29tcGxldGUgbWF0SW5wdXQgZm9ybUNvbnRyb2xOYW1lPVwicGhvbmVcIiByZXF1aXJlZCAvPlxuICAgICAgICAgICAgICAgIEBpZiAoY29kZUZvcm0uY29udHJvbHNbJ3Bob25lJ10udG91Y2hlZCAmJiBjb2RlRm9ybS5jb250cm9sc1sncGhvbmUnXS5pbnZhbGlkKSB7XG4gICAgICAgICAgICAgICAgICA8bWF0LWVycm9yPlxuICAgICAgICAgICAgICAgICAgICBAaWYgKGNvZGVGb3JtLmNvbnRyb2xzWydwaG9uZSddLmVycm9ycz8uWydyZXF1aXJlZCddKSB7XG4gICAgICAgICAgICAgICAgICAgICAgPHNwYW4gaTE4bj4gUGhvbmUgcmVxdWlyZWQ8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgQGlmIChjb2RlRm9ybS5jb250cm9sc1sncGhvbmUnXS5lcnJvcnM/LlsncGF0dGVybiddKSB7XG4gICAgICAgICAgICAgICAgICAgICAgPHNwYW4gaTE4bj4gUGhvbmUgaW52YWxpZCA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIDwvbWF0LWVycm9yPlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXgganVzdGlmeS1iZXR3ZWVuIGl0ZW1zLWNlbnRlclwiPlxuICAgICAgICAgICAgICAgIDxtYXQtZm9ybS1maWVsZCBhcHBlYXJhbmNlPVwiZmlsbFwiPlxuICAgICAgICAgICAgICAgICAgPG1hdC1sYWJlbCBpMThuPiBDb2RlIDwvbWF0LWxhYmVsPlxuICAgICAgICAgICAgICAgICAgPGlucHV0IG1hdElucHV0IGZvcm1Db250cm9sTmFtZT1cImNvZGVcIiByZXF1aXJlZCAvPlxuICAgICAgICAgICAgICAgICAgQGlmIChjb2RlRm9ybS5jb250cm9sc1snY29kZSddLnRvdWNoZWQgJiYgY29kZUZvcm0uY29udHJvbHNbJ2NvZGUnXS5pbnZhbGlkKSB7XG4gICAgICAgICAgICAgICAgICAgIDxtYXQtZXJyb3I+XG4gICAgICAgICAgICAgICAgICAgICAgQGlmIChjb2RlRm9ybS5jb250cm9sc1snY29kZSddLmVycm9ycz8uWydyZXF1aXJlZCddKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBpMThuPkNvZGUgcmVxdWlyZWQ8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICA8L21hdC1lcnJvcj5cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxuICAgICAgICAgICAgICAgIDxidXR0b24gbWF0LWJ1dHRvbiAoY2xpY2spPVwic2VuZFNNU0NvZGUoKVwiIFtkaXNhYmxlZF09XCJjb3VudERvd25cIiBjbGFzcz1cIm1heC13LVsxMjhweF0gdGV4dC13aGl0ZSB0ZXh0LWNlbnRlclwiPlxuICAgICAgICAgICAgICAgICAgPHNwYW4gaTE4bj57eyBzaG93QnV0dG9uVGV4dCB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgPC9mb3JtPlxuICAgICAgICB9XG4gICAgICAgIEBpZiAodGFiSW5kZXgoKSA9PT0gMikge1xuICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3LVsxOTBweF0gaC1bMTkwcHhdIG1sLVs1NnB4XVwiPlxuICAgICAgICAgICAgPGlmcmFtZSBbc3JjXT1cInVybFNhZmVcIiBjbGFzcz1cInctZnVsbCBoLWZ1bGwgaW5saW5lXCIgc2Nyb2xsaW5nPVwibm9cIiBmcmFtZUJvcmRlcj1cIm5vXCIgI2lmcmFtZT48L2lmcmFtZT5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgfVxuICAgICAgPC9kaXY+XG4gICAgICA8IS0tIGFjdGlvbnMgLS0+XG4gICAgICA8ZGl2IGNsYXNzPVwiZmxleCBqdXN0aWZ5LWJldHdlZW4gaXRlbXMtY2VudGVyIHB5LTMgcGwtMlwiPlxuICAgICAgICA8YSBjbGFzcz1cInVuZGVybGluZSB1bmRlcmxpbmUtb2Zmc2V0LTQgdGV4dC1zbSB0ZXh0LVstLXJ0LWJyYW5kLWNvbG9yXVwiIFtocmVmXT1cInNpZ25VcFVybFwiIGkxOG4+Q3JlYXRlIGFjY291bnQ8L2E+XG4gICAgICAgIDxidXR0b24gbWF0LWZsYXQtYnV0dG9uIChjbGljayk9XCJsb2dpbigpXCIgY2xhc3M9XCJ3LVsxMjhweF1cIiBpMThuPlNpZ24gaW48L2J1dHRvbj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19","import { Component, inject, ViewEncapsulation } from '@angular/core';\nimport { FormBuilder, Validators } from '@angular/forms';\nimport { AngularCommonModule, APP_CONFIG, WINDOW } from '@rolatech/angular-common';\nimport { AngularComponentsModule, BaseComponent } from '@rolatech/angular-components';\nimport { AuthService, AuthUserService } from '@rolatech/angular-auth';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/forms\";\nimport * as i2 from \"@angular/material/button\";\nimport * as i3 from \"@angular/material/form-field\";\nimport * as i4 from \"@angular/material/input\";\nexport class SignupComponent extends BaseComponent {\n constructor() {\n super(...arguments);\n this.environment = inject(APP_CONFIG);\n this.authService = inject(AuthService);\n this.authUserService = inject(AuthUserService);\n this.formBuilder = inject(FormBuilder);\n this.window = inject(WINDOW);\n this.continue = '/';\n this.signInUrl = '';\n this.usePhone = false;\n this.countDown = false;\n this.countDownTime = 60;\n this.showButtonText = 'Send';\n }\n ngOnInit() {\n this.titleService.setTitle('Sign up');\n this.signupForm = this.formBuilder.group({\n firstName: [null, Validators.required],\n lastName: [null, Validators.required],\n email: [null, [Validators.required, Validators.pattern('^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+.[a-zA-Z]{2,}$')]],\n password: [null, [Validators.required, Validators.minLength(6)]],\n rePassword: [null, [Validators.required, Validators.minLength(6)]],\n });\n // this.signupForm = this.formBuilder.group({\n // name: [null, Validators.required],\n // phone: [null, [Validators.required, Validators.pattern('1(3|4|5|6|7|8|9)\\\\d{9}')]],\n // code: [null, [Validators.required, Validators.minLength(6)]],\n // password: [null, [Validators.required, Validators.minLength(6)]],\n // rePassword: [null, [Validators.required, Validators.minLength(6)]],\n // });\n this.continue = this.route.snapshot.queryParams['continue'] || '/';\n const decodedUrl = decodeURIComponent(this.continue);\n this.signInUrl = `signin?continue=${decodedUrl}`;\n }\n sendSMSCode() {\n const phoneControl = this.signupForm.get('phone');\n if (!phoneControl?.valid) {\n return;\n }\n const phone = phoneControl.value;\n this.countDown = true;\n const start = setInterval(() => {\n if (this.countDownTime >= 0) {\n this.showButtonText = `${this.countDownTime--}s resend`;\n }\n else {\n clearInterval(start);\n this.showButtonText = 'Resend';\n this.countDown = false;\n this.countDownTime = 60;\n }\n }, 1000);\n this.authUserService.sendSMSCode('+86', phone).subscribe({\n next: (res) => {\n this.snackBarService.open('Success');\n },\n error: (error) => {\n this.snackBarService.open(error.message);\n },\n });\n }\n submit() {\n if (!this.signupForm.valid) {\n return;\n }\n this.authService.signup(this.signupForm.value).subscribe({\n next: (res) => {\n console.log(res);\n this.window.location.href = this.continue ? this.continue : this.environment.myaccountUrl;\n },\n error: (error) => {\n this.snackBarService.open(error.message);\n },\n });\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: SignupComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.0.3\", type: SignupComponent, isStandalone: true, selector: \"rolatech-account-signup\", usesInheritance: true, ngImport: i0, template: \"<div class=\\\"h-full flex items-start sm:items-center sm:justify-center\\\">\\n <div\\n class=\\\"w-full h-full md:h-auto justify-start md:justify-between p-6 lg:p-11 rounded-xl bg-[--rt-signin-inner-background] flex flex-col lg:flex-row lg:flex-row md:justify-between xl:w-[860px] lg:w-[800px] md:w-[600px]\\\"\\n >\\n <!-- header -->\\n <div class=\\\"flex flex-col py-6\\\">\\n <div class=\\\"text-3xl font-medium mb-3 ml-2\\\" i18n>Create your {{ environment.name }} account</div>\\n <div class=\\\"text-md ml-2\\\" i18n>Sign up, Get more.</div>\\n </div>\\n <div class=\\\"min-w-[320px]\\\">\\n <form [formGroup]=\\\"signupForm\\\" (submit)=\\\"submit()\\\" class=\\\"flex flex-col\\\">\\n @if (usePhone) {\\n <!-- name -->\\n <mat-form-field appearance=\\\"fill\\\">\\n <mat-label i18n> Name </mat-label>\\n <input matInput formControlName=\\\"name\\\" required />\\n @if (signupForm.controls['name'].touched && signupForm.controls['name'].invalid) {\\n <mat-error>\\n @if (signupForm.controls['name'].errors?.['required']) {\\n <span i18n>Name required</span>\\n }\\n </mat-error>\\n }\\n </mat-form-field>\\n <!-- phone -->\\n <mat-form-field appearance=\\\"fill\\\">\\n <mat-label i18n> Phone </mat-label>\\n <input matInput formControlName=\\\"phone\\\" required />\\n @if (signupForm.controls['phone'].touched && signupForm.controls['phone'].invalid) {\\n <mat-error>\\n @if (signupForm.controls['phone'].errors?.['required']) {\\n <span i18n>Phone is required</span>\\n }\\n @if (signupForm.controls['phone'].errors?.['pattern']) {\\n <span i18n>Invalid Phone </span>\\n }\\n </mat-error>\\n }\\n </mat-form-field>\\n <!-- phone code -->\\n <div class=\\\"flex justify-between items-center gap-3\\\">\\n <mat-form-field appearance=\\\"fill\\\" class=\\\"w-full\\\">\\n <mat-label i18n> Code </mat-label>\\n <input matInput type=\\\"text\\\" formControlName=\\\"code\\\" autocomplete=\\\"new-password\\\" required />\\n @if (signupForm.controls['code'].touched && signupForm.controls['code'].invalid) {\\n <mat-error>\\n @if (signupForm.controls['code'].errors?.['required']) {\\n <span i18n>Code is required</span>\\n }\\n </mat-error>\\n }\\n </mat-form-field>\\n <button mat-button (click)=\\\"sendSMSCode()\\\" [disabled]=\\\"countDown\\\" class=\\\"w-[128px] text-white text-center\\\">\\n <span>{{ showButtonText }}</span>\\n </button>\\n </div>\\n }\\n <div class=\\\"flex flex-col md:flex-row gap-3 items-center\\\">\\n <!--First name -->\\n <mat-form-field appearance=\\\"fill\\\">\\n <mat-label i18n> Fist name </mat-label>\\n <input matInput formControlName=\\\"firstName\\\" required />\\n @if (signupForm.controls['firstName'].touched && signupForm.controls['firstName'].invalid) {\\n <mat-error>\\n @if (signupForm.controls['firstName'].errors?.['required']) {\\n <span i18n>First name required</span>\\n }\\n </mat-error>\\n }\\n </mat-form-field>\\n <!-- Last name -->\\n <mat-form-field appearance=\\\"fill\\\">\\n <mat-label i18n> Last name </mat-label>\\n <input matInput formControlName=\\\"lastName\\\" required />\\n @if (signupForm.controls['lastName'].touched && signupForm.controls['lastName'].invalid) {\\n <mat-error>\\n @if (signupForm.controls['lastName'].errors?.['required']) {\\n <span i18n>Last name required</span>\\n }\\n </mat-error>\\n }\\n </mat-form-field>\\n </div>\\n <!-- Email account -->\\n <mat-form-field appearance=\\\"fill\\\">\\n <mat-label i18n> Email </mat-label>\\n <input matInput formControlName=\\\"email\\\" required />\\n @if (signupForm.controls['email'].touched && signupForm.controls['email'].invalid) {\\n <mat-error>\\n @if (signupForm.controls['email'].errors?.['required']) {\\n <span i18n>Email is required</span>\\n }\\n @if (signupForm.controls['email'].errors?.['pattern']) {\\n <span i18n>Invalid email</span>\\n }\\n </mat-error>\\n }\\n </mat-form-field>\\n <!-- Password -->\\n <mat-form-field appearance=\\\"fill\\\">\\n <mat-label i18n> Password </mat-label>\\n <input matInput formControlName=\\\"password\\\" type=\\\"password\\\" autocomplete=\\\"password\\\" />\\n @if (signupForm.controls['password'].touched && signupForm.controls['password'].invalid) {\\n <mat-error>\\n @if (signupForm.controls['password'].errors?.['required']) {\\n <span i18n>Password required</span>\\n }\\n @if (signupForm.controls['password'].errors?.['minlength']) {\\n <span i18n>Password too short</span>\\n }\\n </mat-error>\\n }\\n </mat-form-field>\\n\\n <!-- password confirm -->\\n <mat-form-field appearance=\\\"fill\\\">\\n <mat-label i18n> Password </mat-label>\\n <input matInput formControlName=\\\"rePassword\\\" type=\\\"password\\\" autocomplete=\\\"rePassword\\\" />\\n @if (signupForm.controls['rePassword'].touched && signupForm.controls['rePassword'].invalid) {\\n <mat-error>\\n @if (signupForm.controls['rePassword'].errors?.['required']) {\\n <span i18n>Password required</span>\\n }\\n @if (signupForm.controls['rePassword'].errors?.['minlength']) {\\n <span i18n>Password too short</span>\\n }\\n </mat-error>\\n }\\n </mat-form-field>\\n </form>\\n <div class=\\\"flex justify-between items-center py-3 pl-2\\\">\\n <a mat-button [href]=\\\"signInUrl\\\" i18n>Sign in</a>\\n <button mat-flat-button (click)=\\\"submit()\\\" class=\\\"w-[128px]\\\" i18n>Sign up</button>\\n </div>\\n </div>\\n </div>\\n</div>\\n\", styles: [\"rolatech-account-signup{height:100%;color:var(--rt-text-primary, #0f0f0f);background:var(--rt-signin-background)}@media (max-width: 600px){rolatech-account-signup{background:var(--rt-signin-inner-background)}}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,input:-webkit-autofill:active{transition:background-color 0s 600000s,color 0s 600000s!important}mat-form-field{width:100%}\\n\"], dependencies: [{ kind: \"ngmodule\", type: AngularCommonModule }, { 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.RequiredValidator, selector: \":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]\", inputs: [\"required\"] }, { 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\"] }, { kind: \"ngmodule\", type: AngularComponentsModule }, { kind: \"component\", type: i2.MatButton, selector: \" button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] \", inputs: [\"matButton\"], exportAs: [\"matButton\", \"matAnchor\"] }, { kind: \"component\", type: i3.MatFormField, selector: \"mat-form-field\", inputs: [\"hideRequiredMarker\", \"color\", \"floatLabel\", \"appearance\", \"subscriptSizing\", \"hintLabel\"], exportAs: [\"matFormField\"] }, { kind: \"directive\", type: i3.MatLabel, selector: \"mat-label\" }, { kind: \"directive\", type: i3.MatError, selector: \"mat-error, [matError]\", inputs: [\"id\"] }, { kind: \"directive\", type: i4.MatInput, selector: \"input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]\", inputs: [\"disabled\", \"id\", \"placeholder\", \"name\", \"required\", \"type\", \"errorStateMatcher\", \"aria-describedby\", \"value\", \"readonly\", \"disabledInteractive\"], exportAs: [\"matInput\"] }], encapsulation: i0.ViewEncapsulation.None }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: SignupComponent, decorators: [{\n type: Component,\n args: [{ imports: [AngularCommonModule, AngularComponentsModule], selector: 'rolatech-account-signup', encapsulation: ViewEncapsulation.None, template: \"<div class=\\\"h-full flex items-start sm:items-center sm:justify-center\\\">\\n <div\\n class=\\\"w-full h-full md:h-auto justify-start md:justify-between p-6 lg:p-11 rounded-xl bg-[--rt-signin-inner-background] flex flex-col lg:flex-row lg:flex-row md:justify-between xl:w-[860px] lg:w-[800px] md:w-[600px]\\\"\\n >\\n <!-- header -->\\n <div class=\\\"flex flex-col py-6\\\">\\n <div class=\\\"text-3xl font-medium mb-3 ml-2\\\" i18n>Create your {{ environment.name }} account</div>\\n <div class=\\\"text-md ml-2\\\" i18n>Sign up, Get more.</div>\\n </div>\\n <div class=\\\"min-w-[320px]\\\">\\n <form [formGroup]=\\\"signupForm\\\" (submit)=\\\"submit()\\\" class=\\\"flex flex-col\\\">\\n @if (usePhone) {\\n <!-- name -->\\n <mat-form-field appearance=\\\"fill\\\">\\n <mat-label i18n> Name </mat-label>\\n <input matInput formControlName=\\\"name\\\" required />\\n @if (signupForm.controls['name'].touched && signupForm.controls['name'].invalid) {\\n <mat-error>\\n @if (signupForm.controls['name'].errors?.['required']) {\\n <span i18n>Name required</span>\\n }\\n </mat-error>\\n }\\n </mat-form-field>\\n <!-- phone -->\\n <mat-form-field appearance=\\\"fill\\\">\\n <mat-label i18n> Phone </mat-label>\\n <input matInput formControlName=\\\"phone\\\" required />\\n @if (signupForm.controls['phone'].touched && signupForm.controls['phone'].invalid) {\\n <mat-error>\\n @if (signupForm.controls['phone'].errors?.['required']) {\\n <span i18n>Phone is required</span>\\n }\\n @if (signupForm.controls['phone'].errors?.['pattern']) {\\n <span i18n>Invalid Phone </span>\\n }\\n </mat-error>\\n }\\n </mat-form-field>\\n <!-- phone code -->\\n <div class=\\\"flex justify-between items-center gap-3\\\">\\n <mat-form-field appearance=\\\"fill\\\" class=\\\"w-full\\\">\\n <mat-label i18n> Code </mat-label>\\n <input matInput type=\\\"text\\\" formControlName=\\\"code\\\" autocomplete=\\\"new-password\\\" required />\\n @if (signupForm.controls['code'].touched && signupForm.controls['code'].invalid) {\\n <mat-error>\\n @if (signupForm.controls['code'].errors?.['required']) {\\n <span i18n>Code is required</span>\\n }\\n </mat-error>\\n }\\n </mat-form-field>\\n <button mat-button (click)=\\\"sendSMSCode()\\\" [disabled]=\\\"countDown\\\" class=\\\"w-[128px] text-white text-center\\\">\\n <span>{{ showButtonText }}</span>\\n </button>\\n </div>\\n }\\n <div class=\\\"flex flex-col md:flex-row gap-3 items-center\\\">\\n <!--First name -->\\n <mat-form-field appearance=\\\"fill\\\">\\n <mat-label i18n> Fist name </mat-label>\\n <input matInput formControlName=\\\"firstName\\\" required />\\n @if (signupForm.controls['firstName'].touched && signupForm.controls['firstName'].invalid) {\\n <mat-error>\\n @if (signupForm.controls['firstName'].errors?.['required']) {\\n <span i18n>First name required</span>\\n }\\n </mat-error>\\n }\\n </mat-form-field>\\n <!-- Last name -->\\n <mat-form-field appearance=\\\"fill\\\">\\n <mat-label i18n> Last name </mat-label>\\n <input matInput formControlName=\\\"lastName\\\" required />\\n @if (signupForm.controls['lastName'].touched && signupForm.controls['lastName'].invalid) {\\n <mat-error>\\n @if (signupForm.controls['lastName'].errors?.['required']) {\\n <span i18n>Last name required</span>\\n }\\n </mat-error>\\n }\\n </mat-form-field>\\n </div>\\n <!-- Email account -->\\n <mat-form-field appearance=\\\"fill\\\">\\n <mat-label i18n> Email </mat-label>\\n <input matInput formControlName=\\\"email\\\" required />\\n @if (signupForm.controls['email'].touched && signupForm.controls['email'].invalid) {\\n <mat-error>\\n @if (signupForm.controls['email'].errors?.['required']) {\\n <span i18n>Email is required</span>\\n }\\n @if (signupForm.controls['email'].errors?.['pattern']) {\\n <span i18n>Invalid email</span>\\n }\\n </mat-error>\\n }\\n </mat-form-field>\\n <!-- Password -->\\n <mat-form-field appearance=\\\"fill\\\">\\n <mat-label i18n> Password </mat-label>\\n <input matInput formControlName=\\\"password\\\" type=\\\"password\\\" autocomplete=\\\"password\\\" />\\n @if (signupForm.controls['password'].touched && signupForm.controls['password'].invalid) {\\n <mat-error>\\n @if (signupForm.controls['password'].errors?.['required']) {\\n <span i18n>Password required</span>\\n }\\n @if (signupForm.controls['password'].errors?.['minlength']) {\\n <span i18n>Password too short</span>\\n }\\n </mat-error>\\n }\\n </mat-form-field>\\n\\n <!-- password confirm -->\\n <mat-form-field appearance=\\\"fill\\\">\\n <mat-label i18n> Password </mat-label>\\n <input matInput formControlName=\\\"rePassword\\\" type=\\\"password\\\" autocomplete=\\\"rePassword\\\" />\\n @if (signupForm.controls['rePassword'].touched && signupForm.controls['rePassword'].invalid) {\\n <mat-error>\\n @if (signupForm.controls['rePassword'].errors?.['required']) {\\n <span i18n>Password required</span>\\n }\\n @if (signupForm.controls['rePassword'].errors?.['minlength']) {\\n <span i18n>Password too short</span>\\n }\\n </mat-error>\\n }\\n </mat-form-field>\\n </form>\\n <div class=\\\"flex justify-between items-center py-3 pl-2\\\">\\n <a mat-button [href]=\\\"signInUrl\\\" i18n>Sign in</a>\\n <button mat-flat-button (click)=\\\"submit()\\\" class=\\\"w-[128px]\\\" i18n>Sign up</button>\\n </div>\\n </div>\\n </div>\\n</div>\\n\", styles: [\"rolatech-account-signup{height:100%;color:var(--rt-text-primary, #0f0f0f);background:var(--rt-signin-background)}@media (max-width: 600px){rolatech-account-signup{background:var(--rt-signin-inner-background)}}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,input:-webkit-autofill:active{transition:background-color 0s 600000s,color 0s 600000s!important}mat-form-field{width:100%}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lnbnVwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItYWNjb3VudC9zcmMvbGliL3BhZ2VzL2FjY291bnRzL3NpZ251cC9zaWdudXAuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhci1hY2NvdW50L3NyYy9saWIvcGFnZXMvYWNjb3VudHMvc2lnbnVwL3NpZ251cC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBVSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RSxPQUFPLEVBQUUsV0FBVyxFQUFhLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDbkYsT0FBTyxFQUFFLHVCQUF1QixFQUFFLGFBQWEsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3RGLE9BQU8sRUFBRSxXQUFXLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7Ozs7OztBQVF0RSxNQUFNLE9BQU8sZUFBZ0IsU0FBUSxhQUFhO0lBUGxEOztRQVFFLGdCQUFXLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ2pDLGdCQUFXLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ2xDLG9CQUFlLEdBQUcsTUFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQzFDLGdCQUFXLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ2xDLFdBQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFeEIsYUFBUSxHQUFHLEdBQUcsQ0FBQztRQUNmLGNBQVMsR0FBRyxFQUFFLENBQUM7UUFDZixhQUFRLEdB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SixJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUMzQixPQUFPO1FBQ1QsQ0FBQztRQUNELElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUMsU0FBUyxDQUFDO1lBQ3ZELElBQUksRUFBRSxDQUFDLEdBQUcsRUFBRSxFQUFFO2dCQUNaLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQ2pCLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLFlBQVksQ0FBQztZQUM1RixDQUFDO1lBQ0QsS0FBSyxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUU7Z0JBQ2YsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQzNDLENBQUM7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDOzhHQTFFVSxlQUFlO2tHQUFmLGVBQWUsMEdDWjVCLHN4TUF5SUEsdWREbklZLG1CQUFtQix5cUNBQUUsdUJBQXVCOzsyRkFNM0MsZUFBZTtrQkFQM0IsU0FBUzs4QkFDQyxDQUFDLG1CQUFtQixFQUFFLHVCQUF1QixDQUFDLFlBQzdDLHlCQUF5QixpQkFHcEIsaUJBQWlCLENBQUMsSUFBSSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgaW5qZWN0LCBPbkluaXQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQnVpbGRlciwgRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQW5ndWxhckNvbW1vbk1vZHVsZSwgQVBQX0NPTkZJRywgV0lORE9XIH0gZnJvbSAnQHJvbGF0ZWNoL2FuZ3VsYXItY29tbW9uJztcbmltcG9ydCB7IEFuZ3VsYXJDb21wb25lbnRzTW9kdWxlLCBCYXNlQ29tcG9uZW50IH0gZnJvbSAnQHJvbGF0ZWNoL2FuZ3VsYXItY29tcG9uZW50cyc7XG5pbXBvcnQgeyBBdXRoU2VydmljZSwgQXV0aFVzZXJTZXJ2aWNlIH0gZnJvbSAnQHJvbGF0ZWNoL2FuZ3VsYXItYXV0aCc7XG5AQ29tcG9uZW50KHtcbiAgaW1wb3J0czogW0FuZ3VsYXJDb21tb25Nb2R1bGUsIEFuZ3VsYXJDb21wb25lbnRzTW9kdWxlXSxcbiAgc2VsZWN0b3I6ICdyb2xhdGVjaC1hY2NvdW50LXNpZ251cCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9zaWdudXAuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zaWdudXAuY29tcG9uZW50LnNjc3MnXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbn0pXG5leHBvcnQgY2xhc3MgU2lnbnVwQ29tcG9uZW50IGV4dGVuZHMgQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIGVudmlyb25tZW50ID0gaW5qZWN0KEFQUF9DT05GSUcpO1xuICBhdXRoU2VydmljZSA9IGluamVjdChBdXRoU2VydmljZSk7XG4gIGF1dGhVc2VyU2VydmljZSA9IGluamVjdChBdXRoVXNlclNlcnZpY2UpO1xuICBmb3JtQnVpbGRlciA9IGluamVjdChGb3JtQnVpbGRlcik7XG4gIHdpbmRvdyA9IGluamVjdChXSU5ET1cpO1xuICBzaWdudXBGb3JtITogRm9ybUdyb3VwO1xuICBjb250aW51ZSA9ICcvJztcbiAgc2lnbkluVXJsID0gJyc7XG4gIHVzZVBob25lID0gZmFsc2VcbiAgY291bnREb3duID0gZmFsc2U7XG4gIGNvdW50RG93blRpbWUgPSA2MDtcbiAgc2hvd0J1dHRvblRleHQgPSAnU2VuZCc7XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy50aXRsZVNlcnZpY2Uuc2V0VGl0bGUoJ1NpZ24gdXAnKTtcbiAgICB0aGlzLnNpZ251cEZvcm0gPSB0aGlzLmZvcm1CdWlsZGVyLmdyb3VwKHtcbiAgICAgIGZpcnN0TmFtZTogW251bGwsIFZhbGlkYXRvcnMucmVxdWlyZWRdLFxuICAgICAgbGFzdE5hbWU6IFtudWxsLCBWYWxpZGF0b3JzLnJlcXVpcmVkXSxcbiAgICAgIGVtYWlsOiBbbnVsbCwgW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMucGF0dGVybignXlthLXpBLVowLTkuXyUrLV0rQFthLXpBLVowLTkuLV0rLlthLXpBLVpdezIsfSQnKV1dLFxuICAgICAgcGFzc3dvcmQ6IFtudWxsLCBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgVmFsaWRhdG9ycy5taW5MZW5ndGgoNildXSxcbiAgICAgIHJlUGFzc3dvcmQ6IFtudWxsLCBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgVmFsaWRhdG9ycy5taW5MZW5ndGgoNildXSxcbiAgICB9KTtcbiAgICAvLyB0aGlzLnNpZ251cEZvcm0gPSB0aGlzLmZvcm1CdWlsZGVyLmdyb3VwKHtcbiAgICAvLyAgIG5hbWU6IFtudWxsLCBWYWxpZGF0b3JzLnJlcXVpcmVkXSxcbiAgICAvLyAgIHBob25lOiBbbnVsbCwgW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMucGF0dGVybignMSgzfDR8NXw2fDd8OHw5KVxcXFxkezl9JyldXSxcbiAgICAvLyAgIGNvZGU6IFtudWxsLCBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgVmFsaWRhdG9ycy5taW5MZW5ndGgoNildXSxcbiAgICAvLyAgIHBhc3N3b3JkOiBbbnVsbCwgW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMubWluTGVuZ3RoKDYpXV0sXG4gICAgLy8gICByZVBhc3N3b3JkOiBbbnVsbCwgW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMubWluTGVuZ3RoKDYpXV0sXG4gICAgLy8gfSk7XG5cbiAgICB0aGlzLmNvbnRpbnVlID0gdGhpcy5yb3V0ZS5zbmFwc2hvdC5xdWVyeVBhcmFtc1snY29udGludWUnXSB8fCAnLyc7XG4gICAgY29uc3QgZGVjb2RlZFVybCA9IGRlY29kZVVSSUNvbXBvbmVudCh0aGlzLmNvbnRpbnVlKTtcbiAgICB0aGlzLnNpZ25JblVybCA9IGBzaWduaW4/Y29udGludWU9JHtkZWNvZGVkVXJsfWA7XG4gIH1cbiAgc2VuZFNNU0NvZGUoKSB7XG4gICAgY29uc3QgcGhvbmVDb250cm9sID0gdGhpcy5zaWdudXBGb3JtLmdldCgncGhvbmUnKTtcbiAgICBpZiAoIXBob25lQ29udHJvbD8udmFsaWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3QgcGhvbmUgPSBwaG9uZUNvbnRyb2wudmFsdWU7XG4gICAgdGhpcy5jb3VudERvd24gPSB0cnVlO1xuICAgIGNvbnN0IHN0YXJ0ID0gc2V0SW50ZXJ2YWwoKCkgPT4ge1xuICAgICAgaWYgKHRoaXMuY291bnREb3duVGltZSA+PSAwKSB7XG4gICAgICAgIHRoaXMuc2hvd0J1dHRvblRleHQgPSBgJHt0aGlzLmNvdW50RG93blRpbWUtLX1zIHJlc2VuZGA7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjbGVhckludGVydmFsKHN0YXJ0KTtcbiAgICAgICAgdGhpcy5zaG93QnV0dG9uVGV4dCA9ICdSZXNlbmQnO1xuICAgICAgICB0aGlzLmNvdW50RG93biA9IGZhbHNlO1xuICAgICAgICB0aGlzLmNvdW50RG93blRpbWUgPSA2MDtcbiAgICAgIH1cbiAgICB9LCAxMDAwKTtcbiAgICB0aGlzLmF1dGhVc2VyU2VydmljZS5zZW5kU01TQ29kZSgnKzg2JywgcGhvbmUpLnN1YnNjcmliZSh7XG4gICAgICBuZXh0OiAocmVzKSA9PiB7XG4gICAgICAgIHRoaXMuc25hY2tCYXJTZXJ2aWNlLm9wZW4oJ1N1Y2Nlc3MnKTtcbiAgICAgIH0sXG4gICAgICBlcnJvcjogKGVycm9yKSA9PiB7XG4gICAgICAgIHRoaXMuc25hY2tCYXJTZXJ2aWNlLm9wZW4oZXJyb3IubWVzc2FnZSk7XG4gICAgICB9LFxuICAgIH0pO1xuICB9XG4gIHN1Ym1pdCgpIHtcbiAgICBpZiAoIXRoaXMuc2lnbnVwRm9ybS52YWxpZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmF1dGhTZXJ2aWNlLnNpZ251cCh0aGlzLnNpZ251cEZvcm0udmFsdWUpLnN1YnNjcmliZSh7XG4gICAgICBuZXh0OiAocmVzKSA9PiB7XG4gICAgICAgIGNvbnNvbGUubG9nKHJlcyk7XG4gICAgICAgIHRoaXMud2luZG93LmxvY2F0aW9uLmhyZWYgPSB0aGlzLmNvbnRpbnVlID8gdGhpcy5jb250aW51ZSA6IHRoaXMuZW52aXJvbm1lbnQubXlhY2NvdW50VXJsO1xuICAgICAgfSxcbiAgICAgIGVycm9yOiAoZXJyb3IpID0+IHtcbiAgICAgICAgdGhpcy5zbmFja0JhclNlcnZpY2Uub3BlbihlcnJvci5tZXNzYWdlKTtcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJoLWZ1bGwgZmxleCBpdGVtcy1zdGFydCBzbTppdGVtcy1jZW50ZXIgc206anVzdGlmeS1jZW50ZXJcIj5cbiAgPGRpdlxuICAgIGNsYXNzPVwidy1mdWxsIGgtZnVsbCBtZDpoLWF1dG8ganVzdGlmeS1zdGFydCBtZDpqdXN0aWZ5LWJldHdlZW4gcC02IGxnOnAtMTEgcm91bmRlZC14bCBiZy1bLS1ydC1zaWduaW4taW5uZXItYmFja2dyb3VuZF0gZmxleCBmbGV4LWNvbCBsZzpmbGV4LXJvdyBsZzpmbGV4LXJvdyBtZDpqdXN0aWZ5LWJldHdlZW4geGw6dy1bODYwcHhdIGxnOnctWzgwMHB4XSBtZDp3LVs2MDBweF1cIlxuICA+XG4gICAgPCEtLSBoZWFkZXIgLS0+XG4gICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2wgcHktNlwiPlxuICAgICAgPGRpdiBjbGFzcz1cInRleHQtM3hsIGZvbnQtbWVkaXVtIG1iLTMgbWwtMlwiIGkxOG4+Q3JlYXRlIHlvdXIge3sgZW52aXJvbm1lbnQubmFtZSB9fSBhY2NvdW50PC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwidGV4dC1tZCBtbC0yXCIgaTE4bj5TaWduIHVwLCBHZXQgbW9yZS48L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwibWluLXctWzMyMHB4XVwiPlxuICAgICAgPGZvcm0gW2Zvcm1Hcm91cF09XCJzaWdudXBGb3JtXCIgKHN1Ym1pdCk9XCJzdWJtaXQoKVwiIGNsYXNzPVwiZmxleCBmbGV4LWNvbFwiPlxuICAgICAgICBAaWYgKHVzZVBob25lKSB7XG4gICAgICAgICAgPCEtLSBuYW1lIC0tPlxuICAgICAgICAgIDxtYXQtZm9ybS1maWVsZCBhcHBlYXJhbmNlPVwiZmlsbFwiPlxuICAgICAgICAgICAgPG1hdC1sYWJlbCBpMThuPiBOYW1lIDwvbWF0LWxhYmVsPlxuICAgICAgICAgICAgPGlucHV0IG1hdElucHV0IGZvcm1Db250cm9sTmFtZT1cIm5hbWVcIiByZXF1aXJlZCAvPlxuICAgICAgICAgICAgQGlmIChzaWdudXBGb3JtLmNvbnRyb2xzWyduYW1lJ10udG91Y2hlZCAmJiBzaWdudXBGb3JtLmNvbnRyb2xzWyduYW1lJ10uaW52YWxpZCkge1xuICAgICAgICAgICAgICA8bWF0LWVycm9yPlxuICAgICAgICAgICAgICAgIEBpZiAoc2lnbnVwRm9ybS5jb250cm9sc1snbmFtZSddLmVycm9ycz8uWydyZXF1aXJlZCddKSB7XG4gICAgICAgICAgICAgICAgICA8c3BhbiBpMThuPk5hbWUgcmVxdWlyZWQ8L3NwYW4+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICA8L21hdC1lcnJvcj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxuICAgICAgICAgIDwhLS0gcGhvbmUgLS0+XG4gICAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGFwcGVhcmFuY2U9XCJmaWxsXCI+XG4gICAgICAgICAgICA8bWF0LWxhYmVsIGkxOG4+IFBob25lIDwvbWF0LWxhYmVsPlxuICAgICAgICAgICAgPGlucHV0IG1hdElucHV0IGZvcm1Db250cm9sTmFtZT1cInBob25lXCIgcmVxdWlyZWQgLz5cbiAgICAgICAgICAgIEBpZiAoc2lnbnVwRm9ybS5jb250cm9sc1sncGhvbmUnXS50b3VjaGVkICYmIHNpZ251cEZvcm0uY29udHJvbHNbJ3Bob25lJ10uaW52YWxpZCkge1xuICAgICAgICAgICAgICA8bWF0LWVycm9yPlxuICAgICAgICAgICAgICAgIEBpZiAoc2lnbnVwRm9ybS5jb250cm9sc1sncGhvbmUnXS5lcnJvcnM/LlsncmVxdWlyZWQnXSkge1xuICAgICAgICAgICAgICAgICAgPHNwYW4gaTE4bj5QaG9uZSBpcyByZXF1aXJlZDwvc3Bhbj5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQGlmIChzaWdudXBGb3JtLmNvbnRyb2xzWydwaG9uZSddLmVycm9ycz8uWydwYXR0ZXJuJ10pIHtcbiAgICAgICAgICAgICAgICAgIDxzcGFuIGkxOG4+SW52YWxpZCBQaG9uZSA8L3NwYW4+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICA8L21hdC1lcnJvcj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxuICAgICAgICAgIDwhLS0gcGhvbmUgY29kZSAtLT5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBqdXN0aWZ5LWJldHdlZW4gaXRlbXMtY2VudGVyIGdhcC0zXCI+XG4gICAgICAgICAgICA8bWF0LWZvcm0tZmllbGQgYXBwZWFyYW5jZT1cImZpbGxcIiBjbGFzcz1cInctZnVsbFwiPlxuICAgICAgICAgICAgICA8bWF0LWxhYmVsIGkxOG4+IENvZGUgPC9tYXQtbGFiZWw+XG4gICAgICAgICAgICAgIDxpbnB1dCBtYXRJbnB1dCB0eXBlPVwidGV4dFwiIGZvcm1Db250cm9sTmFtZT1cImNvZGVcIiBhdXRvY29tcGxldGU9XCJuZXctcGFzc3dvcmRcIiByZXF1aXJlZCAvPlxuICAgICAgICAgICAgICBAaWYgKHNpZ251cEZvcm0uY29udHJvbHNbJ2NvZGUnXS50b3VjaGVkICYmIHNpZ251cEZvcm0uY29udHJvbHNbJ2NvZGUnXS5pbnZhbGlkKSB7XG4gICAgICAgICAgICAgICAgPG1hdC1lcnJvcj5cbiAgICAgICAgICAgICAgICAgIEBpZiAoc2lnbnVwRm9ybS5jb250cm9sc1snY29kZSddLmVycm9ycz8uWydyZXF1aXJlZCddKSB7XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGkxOG4+Q29kZSBpcyByZXF1aXJlZDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICA8L21hdC1lcnJvcj5cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICAgICAgICAgIDxidXR0b24gbWF0LWJ1dHRvbiAoY2xpY2spPVwic2VuZFNNU0NvZGUoKVwiIFtkaXNhYmxlZF09XCJjb3VudERvd25cIiBjbGFzcz1cInctWzEyOHB4XSB0ZXh0LXdoaXRlIHRleHQtY2VudGVyXCI+XG4gICAgICAgICAgICAgIDxzcGFuPnt7IHNob3dCdXR0b25UZXh0IH19PC9zcGFuPlxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIH1cbiAgICAgICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2wgbWQ6ZmxleC1yb3cgZ2FwLTMgaXRlbXMtY2VudGVyXCI+XG4gICAgICAgICAgPCEtLUZpcnN0IG5hbWUgLS0+XG4gICAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGFwcGVhcmFuY2U9XCJmaWxsXCI+XG4gICAgICAgICAgICA8bWF0LWxhYmVsIGkxOG4+IEZpc3QgbmFtZSA8L21hdC1sYWJlbD5cbiAgICAgICAgICAgIDxpbnB1dCBtYXRJbnB1dCBmb3JtQ29udHJvbE5hbWU9XCJmaXJzdE5hbWVcIiByZXF1aXJlZCAvPlxuICAgICAgICAgICAgQGlmIChzaWdudXBGb3JtLmNvbnRyb2xzWydmaXJzdE5hbWUnXS50b3VjaGVkICYmIHNpZ251cEZvcm0uY29udHJvbHNbJ2ZpcnN0TmFtZSddLmludmFsaWQpIHtcbiAgICAgICAgICAgICAgPG1hdC1lcnJvcj5cbiAgICAgICAgICAgICAgICBAaWYgKHNpZ251cEZvcm0uY29udHJvbHNbJ2ZpcnN0TmFtZSddLmVycm9ycz8uWydyZXF1aXJlZCddKSB7XG4gICAgICAgICAgICAgICAgICA8c3BhbiBpMThuPkZpcnN0IG5hbWUgcmVxdWlyZWQ8L3NwYW4+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICA8L21hdC1lcnJvcj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxuICAgICAgICAgIDwhLS0gTGFzdCBuYW1lIC0tPlxuICAgICAgICAgIDxtYXQtZm9ybS1maWVsZCBhcHBlYXJhbmNlPVwiZmlsbFwiPlxuICAgICAgICAgICAgPG1hdC1sYWJlbCBpMThuPiBMYXN0IG5hbWUgPC9tYXQtbGFiZWw+XG4gICAgICAgICAgICA8aW5wdXQgbWF0SW5wdXQgZm9ybUNvbnRyb2xOYW1lPVwibGFzdE5hbWVcIiByZXF1aXJlZCAvPlxuICAgICAgICAgICAgQGlmIChzaWdudXBGb3JtLmNvbnRyb2xzWydsYXN0TmFtZSddLnRvdWNoZWQgJiYgc2lnbnVwRm9ybS5jb250cm9sc1snbGFzdE5hbWUnXS5pbnZhbGlkKSB7XG4gICAgICAgICAgICAgIDxtYXQtZXJyb3I+XG4gICAgICAgICAgICAgICAgQGlmIChzaWdudXBGb3JtLmNvbnRyb2xzWydsYXN0TmFtZSddLmVycm9ycz8uWydyZXF1aXJlZCddKSB7XG4gICAgICAgICAgICAgICAgICA8c3BhbiBpMThuPkxhc3QgbmFtZSByZXF1aXJlZDwvc3Bhbj5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIDwvbWF0LWVycm9yPlxuICAgICAgICAgICAgfVxuICAgICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8IS0tIEVtYWlsIGFjY291bnQgLS0+XG4gICAgICAgIDxtYXQtZm9ybS1maWVsZCBhcHBlYXJhbmNlPVwiZmlsbFwiPlxuICAgICAgICAgIDxtYXQtbGFiZWwgaTE4bj4gRW1haWwgPC9tYXQtbGFiZWw+XG4gICAgICAgICAgPGlucHV0IG1hdElucHV0IGZvcm1Db250cm9sTmFtZT1cImVtYWlsXCIgcmVxdWlyZWQgLz5cbiAgICAgICAgICBAaWYgKHNpZ251cEZvcm0uY29udHJvbHNbJ2VtYWlsJ10udG91Y2hlZCAmJiBzaWdudXBGb3JtLmNvbnRyb2xzWydlbWFpbCddLmludmFsaWQpIHtcbiAgICAgICAgICAgIDxtYXQtZXJyb3I+XG4gICAgICAgICAgICAgIEBpZiAoc2lnbnVwRm9ybS5jb250cm9sc1snZW1haWwnXS5lcnJvcnM/LlsncmVxdWlyZWQnXSkge1xuICAgICAgICAgICAgICAgIDxzcGFuIGkxOG4+RW1haWwgaXMgcmVxdWlyZWQ8L3NwYW4+XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgQGlmIChzaWdudXBGb3JtLmNvbnRyb2xzWydlbWFpbCddLmVycm9ycz8uWydwYXR0ZXJuJ10pIHtcbiAgICAgICAgICAgICAgICA8c3BhbiBpMThuPkludmFsaWQgZW1haWw8L3NwYW4+XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDwvbWF0LWVycm9yPlxuICAgICAgICAgIH1cbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICAgICAgPCEtLSBQYXNzd29yZCAtLT5cbiAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGFwcGVhcmFuY2U9XCJmaWxsXCI+XG4gICAgICAgICAgPG1hdC1sYWJlbCBpMThuPiBQYXNzd29yZCA8L21hdC1sYWJlbD5cbiAgICAgICAgICA8aW5wdXQgbWF0SW5wdXQgZm9ybUNvbnRyb2xOYW1lPVwicGFzc3dvcmRcIiB0eXBlPVwicGFzc3dvcmRcIiBhdXRvY29tcGxldGU9XCJwYXNzd29yZFwiIC8+XG4gICAgICAgICAgQGlmIChzaWdudXBGb3JtLmNvbnRyb2xzWydwYXNzd29yZCddLnRvdWNoZWQgJiYgc2lnbnVwRm9ybS5jb250cm9sc1sncGFzc3dvcmQnXS5pbnZhbGlkKSB7XG4gICAgICAgICAgICA8bWF0LWVycm9yPlxuICAgICAgICAgICAgICBAaWYgKHNpZ251cEZvcm0uY29udHJvbHNbJ3Bhc3N3b3JkJ10uZXJyb3JzPy5bJ3JlcXVpcmVkJ10pIHtcbiAgICAgICAgICAgICAgICA8c3BhbiBpMThuPlBhc3N3b3JkIHJlcXVpcmVkPC9zcGFuPlxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIEBpZiAoc2lnbnVwRm9ybS5jb250cm9sc1sncGFzc3dvcmQnXS5lcnJvcnM/LlsnbWlubGVuZ3RoJ10pIHtcbiAgICAgICAgICAgICAgICA8c3BhbiBpMThuPlBhc3N3b3JkIHRvbyBzaG9ydDwvc3Bhbj5cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgPC9tYXQtZXJyb3I+XG4gICAgICAgICAgfVxuICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxuXG4gICAgICAgIDwhLS0gcGFzc3dvcmQgY29uZmlybSAtLT5cbiAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGFwcGVhcmFuY2U9XCJmaWxsXCI+XG4gICAgICAgICAgPG1hdC1sYWJlbCBpMThuPiBQYXNzd29yZCA8L21hdC1sYWJlbD5cbiAgICAgICAgICA8aW5wdXQgbWF0SW5wdXQgZm9ybUNvbnRyb2xOYW1lPVwicmVQYXNzd29yZFwiIHR5cGU9XCJwYXNzd29yZFwiIGF1dG9jb21wbGV0ZT1cInJlUGFzc3dvcmRcIiAvPlxuICAgICAgICAgIEBpZiAoc2lnbnVwRm9ybS5jb250cm9sc1sncmVQYXNzd29yZCddLnRvdWNoZWQgJiYgc2lnbnVwRm9ybS5jb250cm9sc1sncmVQYXNzd29yZCddLmludmFsaWQpIHtcbiAgICAgICAgICAgIDxtYXQtZXJyb3I+XG4gICAgICAgICAgICAgIEBpZiAoc2lnbnVwRm9ybS5jb250cm9sc1sncmVQYXNzd29yZCddLmVycm9ycz8uWydyZXF1aXJlZCddKSB7XG4gICAgICAgICAgICAgICAgPHNwYW4gaTE4bj5QYXNzd29yZCByZXF1aXJlZDwvc3Bhbj5cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBAaWYgKHNpZ251cEZvcm0uY29udHJvbHNbJ3JlUGFzc3dvcmQnXS5lcnJvcnM/LlsnbWlubGVuZ3RoJ10pIHtcbiAgICAgICAgICAgICAgICA8c3BhbiBpMThuPlBhc3N3b3JkIHRvbyBzaG9ydDwvc3Bhbj5cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgPC9tYXQtZXJyb3I+XG4gICAgICAgICAgfVxuICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxuICAgICAgPC9mb3JtPlxuICAgICAgPGRpdiBjbGFzcz1cImZsZXgganVzdGlmeS1iZXR3ZWVuIGl0ZW1zLWNlbnRlciBweS0zIHBsLTJcIj5cbiAgICAgICAgPGEgbWF0LWJ1dHRvbiBbaHJlZl09XCJzaWduSW5VcmxcIiBpMThuPlNpZ24gaW48L2E+XG4gICAgICAgIDxidXR0b24gbWF0LWZsYXQtYnV0dG9uIChjbGljayk9XCJzdWJtaXQoKVwiIGNsYXNzPVwidy1bMTI4cHhdXCIgaTE4bj5TaWduIHVwPC9idXR0b24+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==","import { AuthGuard, ForbiddenComponent, UnauthorizedComponent } from '@rolatech/angular-auth';\nimport { ForgotPasswordComponent } from './components/forgot-password/forgot-password.component';\nimport { LogoutComponent } from './components/logout/logout.component';\nimport { PasswordresetComponent } from './components/passwordreset/passwordreset.component';\nimport { SigninComponent } from './pages/accounts/signin/signin.component';\nimport { SignupComponent } from './pages/accounts/signup/signup.component';\nexport const accountRoutes = [\n {\n path: '',\n pathMatch: 'full',\n redirectTo: 'signin',\n },\n { path: 'signin', canActivate: [AuthGuard], component: SigninComponent, data: { title: 'Signin' } },\n { path: 'signup', component: SignupComponent, data: { title: 'Signup' } },\n { path: 'logout', component: LogoutComponent },\n // { path: 'login', loadChildren: () => import('./components/login/login.routes') },\n {\n path: 'passwordreset/:token',\n component: PasswordresetComponent,\n data: { title: 'Password Reset' },\n },\n {\n path: 'forgot',\n component: ForgotPasswordComponent,\n data: { title: 'Forgot Password' },\n },\n {\n path: 'unauthorized',\n component: UnauthorizedComponent,\n },\n {\n path: 'forbidden',\n component: ForbiddenComponent,\n },\n];\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3VudC5yb3V0ZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyLWFjY291bnQvc3JjL2xpYi9hY2NvdW50LnJvdXRlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsU0FBUyxFQUFFLGtCQUFrQixFQUFFLHFCQUFxQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDOUYsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sd0RBQXdELENBQUM7QUFDakcsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBQzVGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUMzRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFFM0UsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUFXO0lBQ25DO1FBQ0UsSUFBSSxFQUFFLEVBQUU7UUFDUixTQUFTLEVBQUUsTUFBTTtRQUNqQixVQUFVLEVBQUUsUUFBUTtLQUNyQjtJQUNELEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUUsQ0FBQyxTQUFTLENBQUMsRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFLElBQUksRUFBRSxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsRUFBRTtJQUNuRyxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSxJQUFJLEVBQUUsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLEVBQUU7SUFDekUsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxlQUFlLEVBQUU7SUFDOUMsb0ZBQW9GO0lBQ3BGO1FBQ0UsSUFBSSxFQUFFLHNCQUFzQjtRQUM1QixTQUFTLEVBQUUsc0JBQXNCO1FBQ2pDLElBQUksRUFBRSxFQUFFLEtBQUssRUFBRSxnQkFBZ0IsRUFBRTtLQUNsQztJQUNEO1FBQ0UsSUFBSSxFQUFFLFFBQVE7UUFDZCxTQUFTLEVBQUUsdUJBQXVCO1FBQ2xDLElBQUksRUFBRSxFQUFFLEtBQUssRUFBRSxpQkFBaUIsRUFBRTtLQUNuQztJQUNEO1FBQ0UsSUFBSSxFQUFFLGNBQWM7UUFDcEIsU0FBUyxFQUFFLHFCQUFxQjtLQUNqQztJQUNEO1FBQ0UsSUFBSSxFQUFFLFdBQVc7UUFDakIsU0FBUyxFQUFFLGtCQUFrQjtLQUM5QjtDQUNGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSb3V0ZXMgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgQXV0aEd1YXJkLCBGb3JiaWRkZW5Db21wb25lbnQsIFVuYXV0aG9yaXplZENvbXBvbmVudCB9IGZyb20gJ0Byb2xhdGVjaC9hbmd1bGFyLWF1dGgnO1xuaW1wb3J0IHsgRm9yZ290UGFzc3dvcmRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvZm9yZ290LXBhc3N3b3JkL2ZvcmdvdC1wYXNzd29yZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgTG9nb3V0Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2xvZ291dC9sb2dvdXQuY29tcG9uZW50JztcbmltcG9ydCB7IFBhc3N3b3JkcmVzZXRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvcGFzc3dvcmRyZXNldC9wYXNzd29yZHJlc2V0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTaWduaW5Db21wb25lbnQgfSBmcm9tICcuL3BhZ2VzL2FjY291bnRzL3NpZ25pbi9zaWduaW4uY29tcG9uZW50JztcbmltcG9ydCB7IFNpZ251cENvbXBvbmVudCB9IGZyb20gJy4vcGFnZXMvYWNjb3VudHMvc2lnbnVwL3NpZ251cC5jb21wb25lbnQnO1xuXG5leHBvcnQgY29uc3QgYWNjb3VudFJvdXRlczogUm91dGVzID0gW1xuICB7XG4gICAgcGF0aDogJycsXG4gICAgcGF0aE1hdGNoOiAnZnVsbCcsXG4gICAgcmVkaXJlY3RUbzogJ3NpZ25pbicsXG4gIH0sXG4gIHsgcGF0aDogJ3NpZ25pbicsIGNhbkFjdGl2YXRlOiBbQXV0aEd1YXJkXSwgY29tcG9uZW50OiBTaWduaW5Db21wb25lbnQsIGRhdGE6IHsgdGl0bGU6ICdTaWduaW4nIH0gfSxcbiAgeyBwYXRoOiAnc2lnbnVwJywgY29tcG9uZW50OiBTaWdudXBDb21wb25lbnQsIGRhdGE6IHsgdGl0bGU6ICdTaWdudXAnIH0gfSxcbiAgeyBwYXRoOiAnbG9nb3V0JywgY29tcG9uZW50OiBMb2dvdXRDb21wb25lbnQgfSxcbiAgLy8geyBwYXRoOiAnbG9naW4nLCBsb2FkQ2hpbGRyZW46ICgpID0+IGltcG9ydCgnLi9jb21wb25lbnRzL2xvZ2luL2xvZ2luLnJvdXRlcycpIH0sXG4gIHtcbiAgICBwYXRoOiAncGFzc3dvcmRyZXNldC86dG9rZW4nLFxuICAgIGNvbXBvbmVudDogUGFzc3dvcmRyZXNldENvbXBvbmVudCxcbiAgICBkYXRhOiB7IHRpdGxlOiAnUGFzc3dvcmQgUmVzZXQnIH0sXG4gIH0sXG4gIHtcbiAgICBwYXRoOiAnZm9yZ290JyxcbiAgICBjb21wb25lbnQ6IEZvcmdvdFBhc3N3b3JkQ29tcG9uZW50LFxuICAgIGRhdGE6IHsgdGl0bGU6ICdGb3Jnb3QgUGFzc3dvcmQnIH0sXG4gIH0sXG4gIHtcbiAgICBwYXRoOiAndW5hdXRob3JpemVkJyxcbiAgICBjb21wb25lbnQ6IFVuYXV0aG9yaXplZENvbXBvbmVudCxcbiAgfSxcbiAge1xuICAgIHBhdGg6ICdmb3JiaWRkZW4nLFxuICAgIGNvbXBvbmVudDogRm9yYmlkZGVuQ29tcG9uZW50LFxuICB9LFxuXTtcbiJdfQ==","export const myaccountRoutes = [\n {\n path: '',\n loadComponent: () => import('./pages/myaccount/home/home.component').then((c) => c.HomeComponent),\n data: { title: '首页' },\n },\n {\n path: 'personal-info',\n loadComponent: () => import('./pages/myaccount/personal-info/info.component').then((c) => c.InfoComponent),\n },\n {\n path: 'profile',\n loadComponent: () => import('./pages/myaccount/personal-info/profile/profile.component').then((c) => c.ProfileComponent),\n },\n {\n path: 'username',\n loadComponent: () => import('./pages/myaccount/personal-info/username/username.component').then((c) => c.UsernameComponent),\n },\n { path: 'gender', loadComponent: () => import('./pages/myaccount/gender/gender.component').then((c) => c.GenderComponent) },\n { path: 'email', loadComponent: () => import('./pages/myaccount/email/email.component').then((c) => c.EmailComponent) },\n {\n path: 'email-verification/:id',\n loadComponent: () => import('./pages/myaccount/email-verification/email-verification.component').then((c) => c.EmailVerificationComponent),\n },\n { path: 'phone', loadComponent: () => import('./pages/myaccount/phone/phone.component').then((c) => c.PhoneComponent) },\n {\n path: 'address',\n loadChildren: () => import('./pages/myaccount/address/address.routes').then((r) => r.addressRoutes),\n },\n {\n path: 'security',\n loadChildren: () => import('./pages/myaccount/security/security.routes'),\n data: { title: 'Security' },\n },\n {\n path: 'notifications',\n loadChildren: () => import('@rolatech/angular-notification').then((m) => m.notificationRoutes),\n data: { title: 'Notifications' },\n },\n];\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXlhY2NvdW50LnJvdXRlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItYWNjb3VudC9zcmMvbGliL215YWNjb3VudC5yb3V0ZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFXO0lBQ3JDO1FBQ0UsSUFBSSxFQUFFLEVBQUU7UUFDUixhQUFhLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLHVDQUF1QyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsYUFBYSxDQUFDO1FBQ2pHLElBQUksRUFBRSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUU7S0FDdEI7SUFDRDtRQUNFLElBQUksRUFBRSxlQUFlO1FBQ3JCLGFBQWEsRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsZ0RBQWdELENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxhQUFhLENBQUM7S0FDM0c7SUFDRDtRQUNFLElBQUksRUFBRSxTQUFTO1FBQ2YsYUFBYSxFQUFFLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQywyREFBMkQsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLGdCQUFnQixDQUFDO0tBQ3pIO0lBQ0Q7UUFDRSxJQUFJLEVBQUUsVUFBVTtRQUNoQixhQUFhLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLDZEQUE2RCxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsaUJBQWlCLENBQUM7S0FDNUg7SUFDRCxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsYUFBYSxFQUFFLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQywyQ0FBMkMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxFQUFFO0lBQzNILEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLHlDQUF5QyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDLEVBQUU7SUFDdkg7UUFDRSxJQUFJLEVBQUUsd0JBQXdCO1FBQzlCLGFBQWEsRUFBRSxHQUFHLEVBQUUsQ0FDbEIsTUFBTSxDQUFDLG1FQUFtRSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsMEJBQTBCLENBQUM7S0FDeEg7SUFDRCxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsYUFBYSxFQUFFLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyx5Q0FBeUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxFQUFFO0lBRXZIO1FBQ0UsSUFBSSxFQUFFLFNBQVM7UUFDZixZQUFZLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLDBDQUEwQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsYUFBYSxDQUFDO0tBQ3BHO0lBRUQ7UUFDRSxJQUFJLEVBQUUsVUFBVTtRQUNoQixZQUFZLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLDRDQUE0QyxDQUFDO1FBQ3hFLElBQUksRUFBRSxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUU7S0FDNUI7SUFDRDtRQUNFLElBQUksRUFBRSxlQUFlO1FBQ3JCLFlBQVksRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsZ0NBQWdDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxrQkFBa0IsQ0FBQztRQUM5RixJQUFJLEVBQUUsRUFBRSxLQUFLLEVBQUUsZUFBZSxFQUFFO0tBQ2pDO0NBQ0YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFJvdXRlcyB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5cbmV4cG9ydCBjb25zdCBteWFjY291bnRSb3V0ZXM6IFJvdXRlcyA9IFtcbiAge1xuICAgIHBhdGg6ICcnLFxuICAgIGxvYWRDb21wb25lbnQ6ICgpID0+IGltcG9ydCgnLi9wYWdlcy9teWFjY291bnQvaG9tZS9ob21lLmNvbXBvbmVudCcpLnRoZW4oKGMpID0+IGMuSG9tZUNvbXBvbmVudCksXG4gICAgZGF0YTogeyB0aXRsZTogJ+mmlumhtScgfSxcbiAgfSxcbiAge1xuICAgIHBhdGg6ICdwZXJzb25hbC1pbmZvJyxcbiAgICBsb2FkQ29tcG9uZW50OiAoKSA9PiBpbXBvcnQoJy4vcGFnZXMvbXlhY2NvdW50L3BlcnNvbmFsLWluZm8vaW5mby5jb21wb25lbnQnKS50aGVuKChjKSA9PiBjLkluZm9Db21wb25lbnQpLFxuICB9LFxuICB7XG4gICAgcGF0aDogJ3Byb2ZpbGUnLFxuICAgIGxvYWRDb21wb25lbnQ6ICgpID0+IGltcG9ydCgnLi9wYWdlcy9teWFjY291bnQvcGVyc29uYWwtaW5mby9wcm9maWxlL3Byb2ZpbGUuY29tcG9uZW50JykudGhlbigoYykgPT4gYy5Qcm9maWxlQ29tcG9uZW50KSxcbiAgfSxcbiAge1xuICAgIHBhdGg6ICd1c2VybmFtZScsXG4gICAgbG9hZENvbXBvbmVudDogKCkgPT4gaW1wb3J0KCcuL3BhZ2VzL215YWNjb3VudC9wZXJzb25hbC1pbmZvL3VzZXJuYW1lL3VzZXJuYW1lLmNvbXBvbmVudCcpLnRoZW4oKGMpID0+IGMuVXNlcm5hbWVDb21wb25lbnQpLFxuICB9LFxuICB7IHBhdGg6ICdnZW5kZXInLCBsb2FkQ29tcG9uZW50OiAoKSA9PiBpbXBvcnQoJy4vcGFnZXMvbXlhY2NvdW50L2dlbmRlci9nZW5kZXIuY29tcG9uZW50JykudGhlbigoYykgPT4gYy5HZW5kZXJDb21wb25lbnQpIH0sXG4gIHsgcGF0aDogJ2VtYWlsJywgbG9hZENvbXBvbmVudDogKCkgPT4gaW1wb3J0KCcuL3BhZ2VzL215YWNjb3VudC9lbWFpbC9lbWFpbC5jb21wb25lbnQnKS50aGVuKChjKSA9PiBjLkVtYWlsQ29tcG9uZW50KSB9LFxuICB7XG4gICAgcGF0aDogJ2VtYWlsLXZlcmlmaWNhdGlvbi86aWQnLFxuICAgIGxvYWRDb21wb25lbnQ6ICgpID0+XG4gICAgICBpbXBvcnQoJy4vcGFnZXMvbXlhY2NvdW50L2VtYWlsLXZlcmlmaWNhdGlvbi9lbWFpbC12ZXJpZmljYXRpb24uY29tcG9uZW50JykudGhlbigoYykgPT4gYy5FbWFpbFZlcmlmaWNhdGlvbkNvbXBvbmVudCksXG4gIH0sXG4gIHsgcGF0aDogJ3Bob25lJywgbG9hZENvbXBvbmVudDogKCkgPT4gaW1wb3J0KCcuL3BhZ2VzL215YWNjb3VudC9waG9uZS9waG9uZS5jb21wb25lbnQnKS50aGVuKChjKSA9PiBjLlBob25lQ29tcG9uZW50KSB9LFxuXG4gIHtcbiAgICBwYXRoOiAnYWRkcmVzcycsXG4gICAgbG9hZENoaWxkcmVuOiAoKSA9PiBpbXBvcnQoJy4vcGFnZXMvbXlhY2NvdW50L2FkZHJlc3MvYWRkcmVzcy5yb3V0ZXMnKS50aGVuKChyKSA9PiByLmFkZHJlc3NSb3V0ZXMpLFxuICB9LFxuXG4gIHtcbiAgICBwYXRoOiAnc2VjdXJpdHknLFxuICAgIGxvYWRDaGlsZHJlbjogKCkgPT4gaW1wb3J0KCcuL3BhZ2VzL215YWNjb3VudC9zZWN1cml0eS9zZWN1cml0eS5yb3V0ZXMnKSxcbiAgICBkYXRhOiB7IHRpdGxlOiAnU2VjdXJpdHknIH0sXG4gIH0sXG4gIHtcbiAgICBwYXRoOiAnbm90aWZpY2F0aW9ucycsXG4gICAgbG9hZENoaWxkcmVuOiAoKSA9PiBpbXBvcnQoJ0Byb2xhdGVjaC9hbmd1bGFyLW5vdGlmaWNhdGlvbicpLnRoZW4oKG0pID0+IG0ubm90aWZpY2F0aW9uUm91dGVzKSxcbiAgICBkYXRhOiB7IHRpdGxlOiAnTm90aWZpY2F0aW9ucycgfSxcbiAgfSxcbl07XG4iXX0=","import { makeEnvironmentProviders } from '@angular/core';\nimport { ROUTES } from '@angular/router';\nimport { accountRoutes } from './lib/account.routes';\nexport function provideAngularAuthRoutes() {\n const provider = [\n {\n provide: ROUTES,\n useValue: accountRoutes,\n multi: true,\n },\n ];\n return makeEnvironmentProviders(provider);\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyLWFjY291bnQvc3JjL3Byb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBa0Msd0JBQXdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekYsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUVyRCxNQUFNLFVBQVUsd0JBQXdCO0lBQ3RDLE1BQU0sUUFBUSxHQUFlO1FBQzNCO1lBQ0UsT0FBTyxFQUFFLE1BQU07WUFDZixRQUFRLEVBQUUsYUFBYTtZQUN2QixLQUFLLEVBQUUsSUFBSTtTQUNaO0tBQ0YsQ0FBQztJQUNGLE9BQU8sd0JBQXdCLENBQUMsUUFBUSxDQUFDLENBQUM7QUFDNUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVudmlyb25tZW50UHJvdmlkZXJzLCBQcm92aWRlciwgbWFrZUVudmlyb25tZW50UHJvdmlkZXJzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBST1VURVMgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgYWNjb3VudFJvdXRlcyB9IGZyb20gJy4vbGliL2FjY291bnQucm91dGVzJztcblxuZXhwb3J0IGZ1bmN0aW9uIHByb3ZpZGVBbmd1bGFyQXV0aFJvdXRlcygpOiBFbnZpcm9ubWVudFByb3ZpZGVycyB7XG4gIGNvbnN0IHByb3ZpZGVyOiBQcm92aWRlcltdID0gW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IFJPVVRFUyxcbiAgICAgIHVzZVZhbHVlOiBhY2NvdW50Um91dGVzLFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgXTtcbiAgcmV0dXJuIG1ha2VFbnZpcm9ubWVudFByb3ZpZGVycyhwcm92aWRlcik7XG59XG4iXX0=","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9sYXRlY2gtYW5ndWxhci1hY2NvdW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhci1hY2NvdW50L3NyYy9yb2xhdGVjaC1hbmd1bGFyLWFjY291bnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9pbmRleCc7XG4iXX0="],"names":["i1"],"mappings":"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"}
1
+ {"version":3,"file":"rolatech-angular-account.mjs","sources":["../tmp-esm2022/lib/components/topbar-login/topbar-login.component.js","../tmp-esm2022/lib/components/forgot-password/forgot-password.component.js","../tmp-esm2022/lib/components/logout/logout.component.js","../tmp-esm2022/lib/components/passwordreset/passwordreset.component.js","../tmp-esm2022/lib/services/wechat-login.service.js","../tmp-esm2022/lib/pages/accounts/signin/signin.component.js","../tmp-esm2022/lib/pages/accounts/signup/signup.component.js","../tmp-esm2022/lib/account.routes.js","../tmp-esm2022/lib/myaccount.routes.js","../tmp-esm2022/provider.js","../tmp-esm2022/rolatech-angular-account.js"],"sourcesContent":["import { Component, PLATFORM_ID, ViewEncapsulation, inject, input } from '@angular/core';\nimport { CommonModule, isPlatformBrowser } from '@angular/common';\nimport { APP_CONFIG } from '@rolatech/angular-common';\nimport { MatButtonModule } from '@angular/material/button';\nimport { Router, NavigationStart, ActivatedRoute, } from '@angular/router';\nimport { filter } from 'rxjs';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/material/button\";\nexport class TopbarLoginComponent {\n constructor() {\n this.environment = inject(APP_CONFIG);\n this.platformId = inject(PLATFORM_ID);\n this.route = inject(ActivatedRoute);\n this.router = inject(Router);\n this.service = input('www');\n this.signinUrl = '';\n this.signupUrl = this.environment.accountsUrl + '/signup';\n this.logoutUrl = this.environment.accountsUrl + `/logout?service=${this.service()}`;\n }\n ngOnInit() {\n if (isPlatformBrowser(this.platformId)) {\n this.signinUrl = `${this.environment.accountsUrl}/signin?continue=` + window.location.href;\n this.logoutUrl = this.environment.accountsUrl + `/logout?service=${this.service()}&continue=` + window.location.origin;\n }\n this.routerSubscription = this.router.events\n .pipe(filter((event) => event instanceof NavigationStart))\n .subscribe((event) => {\n this.signinUrl = `${this.environment.accountsUrl}/signin?continue=` + window.location.origin + event.url;\n // this.checkRouteGuard(event.url);\n const currentUrl = this.router.url; // Get the current URL\n const matchedRoute = this.findRouteConfig(currentUrl);\n if (matchedRoute) {\n console.log('Matched Route Config:', matchedRoute);\n }\n else {\n console.log('No matching route found.');\n }\n });\n }\n ngOnDestroy() {\n this.routerSubscription?.unsubscribe();\n }\n // checkRouteGuard(url: string): void {\n // // const route = this.router.config.find((r) => r.path === routePath);\n // const route = this.router.config.find((r: any) => this.matchRoute(url, r.path));\n // if (route) {\n // if (route.canActivate && route.canActivate.length > 0) {\n // console.log(`Route \"${url}\" has canActivate guards:`, route.canActivate);\n // } else {\n // console.log(`Route \"${url}\" does not have canActivate guards.`);\n // }\n // } else {\n // console.log(`Route \"${url}\" not found.`);\n // }\n // }\n // matchRoute(url: string, routePath: string): boolean {\n // // Strip leading/trailing slashes from URL and routePath and compare\n // return url.replace(/^\\/|\\/$/g, '') === routePath.replace(/^\\/|\\/$/g, '');\n // }\n findRouteConfig(url) {\n return this.router.config.find((route) => this.matchRoute(route, url));\n }\n // Helper function to check if a route matches the current URL\n matchRoute(route, url) {\n const path = route.path?.split('/').join('');\n const urlSegment = url.split('/').join('');\n return path === urlSegment;\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: TopbarLoginComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.1.0\", version: \"20.0.3\", type: TopbarLoginComponent, isStandalone: true, selector: \"rolatech-account-topbar-login\", inputs: { service: { classPropertyName: \"service\", publicName: \"service\", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: \"<div class=\\\"flex items-center\\\">\\n <a mat-stroked-button class=\\\"mr-2 max-h-9 md:max-h-10\\\" [href]=\\\"signinUrl\\\"><span i18n>Sign in</span></a>\\n <a mat-flat-button class=\\\"max-h-9 md:max-h-10\\\" [href]=\\\"signupUrl\\\"><span i18n>Sign up</span></a>\\n</div>\\n\", styles: [\"\"], dependencies: [{ kind: \"ngmodule\", type: CommonModule }, { kind: \"ngmodule\", type: MatButtonModule }, { kind: \"component\", type: i1.MatButton, selector: \" button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] \", inputs: [\"matButton\"], exportAs: [\"matButton\", \"matAnchor\"] }], encapsulation: i0.ViewEncapsulation.None }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: TopbarLoginComponent, decorators: [{\n type: Component,\n args: [{ selector: 'rolatech-account-topbar-login', imports: [CommonModule, MatButtonModule], encapsulation: ViewEncapsulation.None, template: \"<div class=\\\"flex items-center\\\">\\n <a mat-stroked-button class=\\\"mr-2 max-h-9 md:max-h-10\\\" [href]=\\\"signinUrl\\\"><span i18n>Sign in</span></a>\\n <a mat-flat-button class=\\\"max-h-9 md:max-h-10\\\" [href]=\\\"signupUrl\\\"><span i18n>Sign up</span></a>\\n</div>\\n\" }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9wYmFyLWxvZ2luLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItYWNjb3VudC9zcmMvbGliL2NvbXBvbmVudHMvdG9wYmFyLWxvZ2luL3RvcGJhci1sb2dpbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyLWFjY291bnQvc3JjL2xpYi9jb21wb25lbnRzL3RvcGJhci1sb2dpbi90b3BiYXItbG9naW4uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBcUIsV0FBVyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUcsT0FBTyxFQUFFLFlBQVksRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUVMLE1BQU0sRUFFTixlQUFlLEVBR2YsY0FBYyxHQUVmLE1BQU0saUJBQWlCLENBQUM7QUFDekIsT0FBTyxFQUFFLE1BQU0sRUFBZ0IsTUFBTSxNQUFNLENBQUM7OztBQVU1QyxNQUFNLE9BQU8sb0JBQW9CO0lBUGpDO1FBUUUsZ0JBQVcsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDakMsZUFBVSxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNqQyxVQUFLLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQy9CLFdBQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFHeEIsWUFBTyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN2QixjQUFTLEdBQUcsRUFBRSxDQUFDO1FBQ2YsY0FBUyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsV0FBVyxHQUFHLFNBQVMsQ0FBQztRQUNyRCxjQUFTLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxXQUFXLEdBQUcsbUJBQW1CLElBQUksQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDO0tBdURoRjtJQXREQyxRQUFRO1FBQ04sSUFBSSxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQztZQUN2QyxJQUFJLENBQUMsU0FBUyxHQUFHLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxXQUFXLG1CQUFtQixHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDO1lBQzNGLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxXQUFXLEdBQUcsbUJBQW1CLElBQUksQ0FBQyxPQUFPLEVBQUUsWUFBWSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDO1FBQ3pILENBQUM7UUFFRCxJQUFJLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNO2FBQ3pDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxLQUFZLEVBQTRCLEVBQUUsQ0FBQyxLQUFLLFlBQVksZUFBZSxDQUFDLENBQUM7YUFDMUYsU0FBUyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDbkIsSUFBSSxDQUFDLFNBQVMsR0FBRyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsV0FBVyxtQkFBbUIsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUMsR0FBRyxDQUFDO1lBRXpHLG1DQUFtQztZQUVuQyxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLHNCQUFzQjtZQUMxRCxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBRXRELElBQUksWUFBWSxFQUFFLENBQUM7Z0JBQ2pCLE9BQU8sQ0FBQyxHQUFHLENBQUMsdUJBQXVCLEVBQUUsWUFBWSxDQUFDLENBQUM7WUFDckQsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLE9BQU8sQ0FBQyxHQUFHLENBQUMsMEJBQTBCLENBQUMsQ0FBQztZQUMxQyxDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBQ0QsV0FBVztRQUNULElBQUksQ0FBQyxrQkFBa0IsRUFBRSxXQUFXLEVBQUUsQ0FBQztJQUN6QyxDQUFDO0lBQ0QsdUNBQXVDO0lBQ3ZDLDJFQUEyRTtJQUMzRSxxRkFBcUY7SUFFckYsaUJBQWlCO0lBQ2pCLCtEQUErRDtJQUMvRCxrRkFBa0Y7SUFDbEYsZUFBZTtJQUNmLHlFQUF5RTtJQUN6RSxRQUFRO0lBQ1IsYUFBYTtJQUNiLGdEQUFnRDtJQUNoRCxNQUFNO0lBQ04sSUFBSTtJQUNKLHdEQUF3RDtJQUN4RCx5RUFBeUU7SUFDekUsOEVBQThFO0lBQzlFLElBQUk7SUFDSixlQUFlLENBQUMsR0FBVztRQUN6QixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUN6RSxDQUFDO0lBRUQsOERBQThEO0lBQzlELFVBQVUsQ0FBQyxLQUFZLEVBQUUsR0FBVztRQUNsQyxNQUFNLElBQUksR0FBRyxLQUFLLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDN0MsTUFBTSxVQUFVLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDM0MsT0FBTyxJQUFJLEtBQUssVUFBVSxDQUFDO0lBQzdCLENBQUM7OEdBaEVVLG9CQUFvQjtrR0FBcEIsb0JBQW9CLG1PQ3hCakMsbVFBSUEseUREZVksWUFBWSw4QkFBRSxlQUFlOzsyRkFLNUIsb0JBQW9CO2tCQVBoQyxTQUFTOytCQUNFLCtCQUErQixXQUNoQyxDQUFDLFlBQVksRUFBRSxlQUFlLENBQUMsaUJBR3pCLGlCQUFpQixDQUFDLElBQUkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uRGVzdHJveSwgT25Jbml0LCBQTEFURk9STV9JRCwgVmlld0VuY2Fwc3VsYXRpb24sIGluamVjdCwgaW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSwgaXNQbGF0Zm9ybUJyb3dzZXIgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQVBQX0NPTkZJRyB9IGZyb20gJ0Byb2xhdGVjaC9hbmd1bGFyLWNvbW1vbic7XG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHtcbiAgTmF2aWdhdGlvbkVuZCxcbiAgUm91dGVyLFxuICBFdmVudCxcbiAgTmF2aWdhdGlvblN0YXJ0LFxuICBOYXZpZ2F0aW9uQ2FuY2VsLFxuICBOYXZpZ2F0aW9uRXJyb3IsXG4gIEFjdGl2YXRlZFJvdXRlLFxuICBSb3V0ZSxcbn0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IGZpbHRlciwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG50eXBlIE5hdmlnYXRpb25FdmVudCA9IE5hdmlnYXRpb25TdGFydCB8IE5hdmlnYXRpb25FbmQgfCBOYXZpZ2F0aW9uQ2FuY2VsIHwgTmF2aWdhdGlvbkVycm9yO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdyb2xhdGVjaC1hY2NvdW50LXRvcGJhci1sb2dpbicsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIE1hdEJ1dHRvbk1vZHVsZV0sXG4gIHRlbXBsYXRlVXJsOiAnLi90b3BiYXItbG9naW4uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vdG9wYmFyLWxvZ2luLmNvbXBvbmVudC5zY3NzJyxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbn0pXG5leHBvcnQgY2xhc3MgVG9wYmFyTG9naW5Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIGVudmlyb25tZW50ID0gaW5qZWN0KEFQUF9DT05GSUcpO1xuICBwbGF0Zm9ybUlkID0gaW5qZWN0KFBMQVRGT1JNX0lEKTtcbiAgcm91dGUgPSBpbmplY3QoQWN0aXZhdGVkUm91dGUpO1xuICByb3V0ZXIgPSBpbmplY3QoUm91dGVyKTtcbiAgcHJpdmF0ZSByb3V0ZXJTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbiB8IHVuZGVmaW5lZDtcblxuICBzZXJ2aWNlID0gaW5wdXQoJ3d3dycpO1xuICBzaWduaW5VcmwgPSAnJztcbiAgc2lnbnVwVXJsID0gdGhpcy5lbnZpcm9ubWVudC5hY2NvdW50c1VybCArICcvc2lnbnVwJztcbiAgbG9nb3V0VXJsID0gdGhpcy5lbnZpcm9ubWVudC5hY2NvdW50c1VybCArIGAvbG9nb3V0P3NlcnZpY2U9JHt0aGlzLnNlcnZpY2UoKX1gO1xuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBpZiAoaXNQbGF0Zm9ybUJyb3dzZXIodGhpcy5wbGF0Zm9ybUlkKSkge1xuICAgICAgdGhpcy5zaWduaW5VcmwgPSBgJHt0aGlzLmVudmlyb25tZW50LmFjY291bnRzVXJsfS9zaWduaW4/Y29udGludWU9YCArIHdpbmRvdy5sb2NhdGlvbi5ocmVmO1xuICAgICAgdGhpcy5sb2dvdXRVcmwgPSB0aGlzLmVudmlyb25tZW50LmFjY291bnRzVXJsICsgYC9sb2dvdXQ/c2VydmljZT0ke3RoaXMuc2VydmljZSgpfSZjb250aW51ZT1gICsgd2luZG93LmxvY2F0aW9uLm9yaWdpbjtcbiAgICB9XG5cbiAgICB0aGlzLnJvdXRlclN1YnNjcmlwdGlvbiA9IHRoaXMucm91dGVyLmV2ZW50c1xuICAgICAgLnBpcGUoZmlsdGVyKChldmVudDogRXZlbnQpOiBldmVudCBpcyBOYXZpZ2F0aW9uRXZlbnQgPT4gZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uU3RhcnQpKVxuICAgICAgLnN1YnNjcmliZSgoZXZlbnQpID0+IHtcbiAgICAgICAgdGhpcy5zaWduaW5VcmwgPSBgJHt0aGlzLmVudmlyb25tZW50LmFjY291bnRzVXJsfS9zaWduaW4/Y29udGludWU9YCArIHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyBldmVudC51cmw7XG5cbiAgICAgICAgLy8gdGhpcy5jaGVja1JvdXRlR3VhcmQoZXZlbnQudXJsKTtcblxuICAgICAgICBjb25zdCBjdXJyZW50VXJsID0gdGhpcy5yb3V0ZXIudXJsOyAvLyBHZXQgdGhlIGN1cnJlbnQgVVJMXG4gICAgICAgIGNvbnN0IG1hdGNoZWRSb3V0ZSA9IHRoaXMuZmluZFJvdXRlQ29uZmlnKGN1cnJlbnRVcmwpO1xuXG4gICAgICAgIGlmIChtYXRjaGVkUm91dGUpIHtcbiAgICAgICAgICBjb25zb2xlLmxvZygnTWF0Y2hlZCBSb3V0ZSBDb25maWc6JywgbWF0Y2hlZFJvdXRlKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBjb25zb2xlLmxvZygnTm8gbWF0Y2hpbmcgcm91dGUgZm91bmQuJyk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICB9XG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMucm91dGVyU3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xuICB9XG4gIC8vIGNoZWNrUm91dGVHdWFyZCh1cmw6IHN0cmluZyk6IHZvaWQge1xuICAvLyAgIC8vIGNvbnN0IHJvdXRlID0gdGhpcy5yb3V0ZXIuY29uZmlnLmZpbmQoKHIpID0+IHIucGF0aCA9PT0gcm91dGVQYXRoKTtcbiAgLy8gICBjb25zdCByb3V0ZSA9IHRoaXMucm91dGVyLmNvbmZpZy5maW5kKChyOiBhbnkpID0+IHRoaXMubWF0Y2hSb3V0ZSh1cmwsIHIucGF0aCkpO1xuXG4gIC8vICAgaWYgKHJvdXRlKSB7XG4gIC8vICAgICBpZiAocm91dGUuY2FuQWN0aXZhdGUgJiYgcm91dGUuY2FuQWN0aXZhdGUubGVuZ3RoID4gMCkge1xuICAvLyAgICAgICBjb25zb2xlLmxvZyhgUm91dGUgXCIke3VybH1cIiBoYXMgY2FuQWN0aXZhdGUgZ3VhcmRzOmAsIHJvdXRlLmNhbkFjdGl2YXRlKTtcbiAgLy8gICAgIH0gZWxzZSB7XG4gIC8vICAgICAgIGNvbnNvbGUubG9nKGBSb3V0ZSBcIiR7dXJsfVwiIGRvZXMgbm90IGhhdmUgY2FuQWN0aXZhdGUgZ3VhcmRzLmApO1xuICAvLyAgICAgfVxuICAvLyAgIH0gZWxzZSB7XG4gIC8vICAgICBjb25zb2xlLmxvZyhgUm91dGUgXCIke3VybH1cIiBub3QgZm91bmQuYCk7XG4gIC8vICAgfVxuICAvLyB9XG4gIC8vIG1hdGNoUm91dGUodXJsOiBzdHJpbmcsIHJvdXRlUGF0aDogc3RyaW5nKTogYm9vbGVhbiB7XG4gIC8vICAgLy8gU3RyaXAgbGVhZGluZy90cmFpbGluZyBzbGFzaGVzIGZyb20gVVJMIGFuZCByb3V0ZVBhdGggYW5kIGNvbXBhcmVcbiAgLy8gICByZXR1cm4gdXJsLnJlcGxhY2UoL15cXC98XFwvJC9nLCAnJykgPT09IHJvdXRlUGF0aC5yZXBsYWNlKC9eXFwvfFxcLyQvZywgJycpO1xuICAvLyB9XG4gIGZpbmRSb3V0ZUNvbmZpZyh1cmw6IHN0cmluZyk6IFJvdXRlIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5yb3V0ZXIuY29uZmlnLmZpbmQoKHJvdXRlKSA9PiB0aGlzLm1hdGNoUm91dGUocm91dGUsIHVybCkpO1xuICB9XG5cbiAgLy8gSGVscGVyIGZ1bmN0aW9uIHRvIGNoZWNrIGlmIGEgcm91dGUgbWF0Y2hlcyB0aGUgY3VycmVudCBVUkxcbiAgbWF0Y2hSb3V0ZShyb3V0ZTogUm91dGUsIHVybDogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgY29uc3QgcGF0aCA9IHJvdXRlLnBhdGg/LnNwbGl0KCcvJykuam9pbignJyk7XG4gICAgY29uc3QgdXJsU2VnbWVudCA9IHVybC5zcGxpdCgnLycpLmpvaW4oJycpO1xuICAgIHJldHVybiBwYXRoID09PSB1cmxTZWdtZW50O1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZmxleCBpdGVtcy1jZW50ZXJcIj5cbiAgPGEgbWF0LXN0cm9rZWQtYnV0dG9uIGNsYXNzPVwibXItMiBtYXgtaC05IG1kOm1heC1oLTEwXCIgW2hyZWZdPVwic2lnbmluVXJsXCI+PHNwYW4gaTE4bj5TaWduIGluPC9zcGFuPjwvYT5cbiAgPGEgbWF0LWZsYXQtYnV0dG9uIGNsYXNzPVwibWF4LWgtOSBtZDptYXgtaC0xMFwiIFtocmVmXT1cInNpZ251cFVybFwiPjxzcGFuIGkxOG4+U2lnbiB1cDwvc3Bhbj48L2E+XG48L2Rpdj5cbiJdfQ==","import { Component } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class ForgotPasswordComponent {\n constructor() { }\n ngOnInit() { }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: ForgotPasswordComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.0.3\", type: ForgotPasswordComponent, isStandalone: true, selector: \"rolatech-account-forgot-password\", ngImport: i0, template: \"<p>forgot-password works!</p>\\n\", styles: [\"\"] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: ForgotPasswordComponent, decorators: [{\n type: Component,\n args: [{ selector: 'rolatech-account-forgot-password', template: \"<p>forgot-password works!</p>\\n\" }]\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9yZ290LXBhc3N3b3JkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItYWNjb3VudC9zcmMvbGliL2NvbXBvbmVudHMvZm9yZ290LXBhc3N3b3JkL2ZvcmdvdC1wYXNzd29yZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyLWFjY291bnQvc3JjL2xpYi9jb21wb25lbnRzL2ZvcmdvdC1wYXNzd29yZC9mb3Jnb3QtcGFzc3dvcmQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQzs7QUFPbEQsTUFBTSxPQUFPLHVCQUF1QjtJQUNsQyxnQkFBZSxDQUFDO0lBRWhCLFFBQVEsS0FBVSxDQUFDOzhHQUhSLHVCQUF1QjtrR0FBdkIsdUJBQXVCLDRGQ1BwQyxpQ0FDQTs7MkZETWEsdUJBQXVCO2tCQUxuQyxTQUFTOytCQUNFLGtDQUFrQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3JvbGF0ZWNoLWFjY291bnQtZm9yZ290LXBhc3N3b3JkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2ZvcmdvdC1wYXNzd29yZC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2ZvcmdvdC1wYXNzd29yZC5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBGb3Jnb3RQYXNzd29yZENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIGNvbnN0cnVjdG9yKCkge31cblxuICBuZ09uSW5pdCgpOiB2b2lkIHt9XG59XG4iLCI8cD5mb3Jnb3QtcGFzc3dvcmQgd29ya3MhPC9wPlxuIl19","import { isPlatformBrowser } from '@angular/common';\nimport { Component, inject, PLATFORM_ID } from '@angular/core';\nimport { MatSnackBar } from '@angular/material/snack-bar';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { AuthService } from '@rolatech/angular-auth';\nimport { APP_CONFIG, AngularCommonModule } from '@rolatech/angular-common';\nimport { AngularComponentsModule } from '@rolatech/angular-components';\nimport * as i0 from \"@angular/core\";\nexport class LogoutComponent {\n constructor() {\n this.service = '';\n this.continue = '';\n this.environment = inject(APP_CONFIG);\n this.platformId = inject(PLATFORM_ID);\n this.route = inject(ActivatedRoute);\n this.router = inject(Router);\n this.authService = inject(AuthService);\n this.snackBar = inject(MatSnackBar);\n }\n ngOnInit() {\n this.service = this.route.snapshot.queryParams['service'] || 'www';\n this.continue = this.route.snapshot.queryParams['continue'] || '/';\n if (isPlatformBrowser(this.platformId)) {\n this.logout();\n }\n }\n logout() {\n this.authService.logout().subscribe({\n next: (res) => {\n // this.router.navigate(['/signin'], {\n // queryParams: { continue: this.continue },\n // });\n // this.router.navigate([this.continue]);\n // this.router.navigateByUrl(this.continue);\n window.location.href = this.continue;\n },\n error: (error) => {\n this.snackBar.open(error.message);\n },\n });\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: LogoutComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.0.3\", type: LogoutComponent, isStandalone: true, selector: \"rolatech-account-logout\", ngImport: i0, template: \"<p>Please waiting...</p>\\n\", styles: [\"\"], dependencies: [{ kind: \"ngmodule\", type: AngularCommonModule }, { kind: \"ngmodule\", type: AngularComponentsModule }] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: LogoutComponent, decorators: [{\n type: Component,\n args: [{ imports: [AngularCommonModule, AngularComponentsModule], selector: 'rolatech-account-logout', template: \"<p>Please waiting...</p>\\n\" }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nb3V0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItYWNjb3VudC9zcmMvbGliL2NvbXBvbmVudHMvbG9nb3V0L2xvZ291dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyLWFjY291bnQvc3JjL2xpYi9jb21wb25lbnRzL2xvZ291dC9sb2dvdXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDcEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQVUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsVUFBVSxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0UsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sOEJBQThCLENBQUM7O0FBU3ZFLE1BQU0sT0FBTyxlQUFlO0lBTjVCO1FBT0UsWUFBTyxHQUFHLEVBQUUsQ0FBQztRQUNiLGFBQVEsR0FBRyxFQUFFLENBQUM7UUFDZCxnQkFBVyxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNqQyxlQUFVLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ2pDLFVBQUssR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDL0IsV0FBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN4QixnQkFBVyxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNsQyxhQUFRLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0tBd0JoQztJQXRCQyxRQUFRO1FBQ04sSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLElBQUksS0FBSyxDQUFDO1FBQ25FLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQyxJQUFJLEdBQUcsQ0FBQztRQUNuRSxJQUFJLGlCQUFpQixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDO1lBQ3ZDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNoQixDQUFDO0lBQ0gsQ0FBQztJQUNELE1BQU07UUFDSixJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sRUFBRSxDQUFDLFNBQVMsQ0FBQztZQUNsQyxJQUFJLEVBQUUsQ0FBQyxHQUFHLEVBQUUsRUFBRTtnQkFDWixzQ0FBc0M7Z0JBQ3RDLDhDQUE4QztnQkFDOUMsTUFBTTtnQkFDTix5Q0FBeUM7Z0JBQ3pDLDRDQUE0QztnQkFDNUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQztZQUN2QyxDQUFDO1lBQ0QsS0FBSyxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUU7Z0JBQ2YsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ3BDLENBQUM7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDOzhHQS9CVSxlQUFlO2tHQUFmLGVBQWUsbUZDZjVCLDRCQUNBLHlERFNZLG1CQUFtQiw4QkFBRSx1QkFBdUI7OzJGQUszQyxlQUFlO2tCQU4zQixTQUFTOzhCQUNDLENBQUMsbUJBQW1CLEVBQUUsdUJBQXVCLENBQUMsWUFDN0MseUJBQXlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNQbGF0Zm9ybUJyb3dzZXIgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBpbmplY3QsIE9uSW5pdCwgUExBVEZPUk1fSUQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdFNuYWNrQmFyIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc25hY2stYmFyJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgQXV0aFNlcnZpY2UgfSBmcm9tICdAcm9sYXRlY2gvYW5ndWxhci1hdXRoJztcbmltcG9ydCB7IEFQUF9DT05GSUcsIEFuZ3VsYXJDb21tb25Nb2R1bGUgfSBmcm9tICdAcm9sYXRlY2gvYW5ndWxhci1jb21tb24nO1xuaW1wb3J0IHsgQW5ndWxhckNvbXBvbmVudHNNb2R1bGUgfSBmcm9tICdAcm9sYXRlY2gvYW5ndWxhci1jb21wb25lbnRzJztcbmltcG9ydCB7IG1hcCwgdGFrZSB9IGZyb20gJ3J4anMnO1xuXG5AQ29tcG9uZW50KHtcbiAgaW1wb3J0czogW0FuZ3VsYXJDb21tb25Nb2R1bGUsIEFuZ3VsYXJDb21wb25lbnRzTW9kdWxlXSxcbiAgc2VsZWN0b3I6ICdyb2xhdGVjaC1hY2NvdW50LWxvZ291dCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9sb2dvdXQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9sb2dvdXQuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgTG9nb3V0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgc2VydmljZSA9ICcnO1xuICBjb250aW51ZSA9ICcnO1xuICBlbnZpcm9ubWVudCA9IGluamVjdChBUFBfQ09ORklHKTtcbiAgcGxhdGZvcm1JZCA9IGluamVjdChQTEFURk9STV9JRCk7XG4gIHJvdXRlID0gaW5qZWN0KEFjdGl2YXRlZFJvdXRlKTtcbiAgcm91dGVyID0gaW5qZWN0KFJvdXRlcik7XG4gIGF1dGhTZXJ2aWNlID0gaW5qZWN0KEF1dGhTZXJ2aWNlKTtcbiAgc25hY2tCYXIgPSBpbmplY3QoTWF0U25hY2tCYXIpO1xuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc2VydmljZSA9IHRoaXMucm91dGUuc25hcHNob3QucXVlcnlQYXJhbXNbJ3NlcnZpY2UnXSB8fCAnd3d3JztcbiAgICB0aGlzLmNvbnRpbnVlID0gdGhpcy5yb3V0ZS5zbmFwc2hvdC5xdWVyeVBhcmFtc1snY29udGludWUnXSB8fCAnLyc7XG4gICAgaWYgKGlzUGxhdGZvcm1Ccm93c2VyKHRoaXMucGxhdGZvcm1JZCkpIHtcbiAgICAgIHRoaXMubG9nb3V0KCk7XG4gICAgfVxuICB9XG4gIGxvZ291dCgpIHtcbiAgICB0aGlzLmF1dGhTZXJ2aWNlLmxvZ291dCgpLnN1YnNjcmliZSh7XG4gICAgICBuZXh0OiAocmVzKSA9PiB7XG4gICAgICAgIC8vIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnL3NpZ25pbiddLCB7XG4gICAgICAgIC8vICAgcXVlcnlQYXJhbXM6IHsgY29udGludWU6IHRoaXMuY29udGludWUgfSxcbiAgICAgICAgLy8gfSk7XG4gICAgICAgIC8vIHRoaXMucm91dGVyLm5hdmlnYXRlKFt0aGlzLmNvbnRpbnVlXSk7XG4gICAgICAgIC8vIHRoaXMucm91dGVyLm5hdmlnYXRlQnlVcmwodGhpcy5jb250aW51ZSk7XG4gICAgICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gdGhpcy5jb250aW51ZTtcbiAgICAgIH0sXG4gICAgICBlcnJvcjogKGVycm9yKSA9PiB7XG4gICAgICAgIHRoaXMuc25hY2tCYXIub3BlbihlcnJvci5tZXNzYWdlKTtcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cbn1cbiIsIjxwPlBsZWFzZSB3YWl0aW5nLi4uPC9wPlxuIl19","import { Component } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class PasswordresetComponent {\n constructor() { }\n ngOnInit() { }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: PasswordresetComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.0.3\", type: PasswordresetComponent, isStandalone: true, selector: \"rolatech-account-passwordreset\", ngImport: i0, template: \"<p>passwordreset works!</p>\\n\", styles: [\"\"] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: PasswordresetComponent, decorators: [{\n type: Component,\n args: [{ selector: 'rolatech-account-passwordreset', template: \"<p>passwordreset works!</p>\\n\" }]\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFzc3dvcmRyZXNldC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyLWFjY291bnQvc3JjL2xpYi9jb21wb25lbnRzL3Bhc3N3b3JkcmVzZXQvcGFzc3dvcmRyZXNldC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyLWFjY291bnQvc3JjL2xpYi9jb21wb25lbnRzL3Bhc3N3b3JkcmVzZXQvcGFzc3dvcmRyZXNldC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDOztBQU9sRCxNQUFNLE9BQU8sc0JBQXNCO0lBQ2pDLGdCQUFlLENBQUM7SUFFaEIsUUFBUSxLQUFVLENBQUM7OEdBSFIsc0JBQXNCO2tHQUF0QixzQkFBc0IsMEZDUG5DLCtCQUNBOzsyRkRNYSxzQkFBc0I7a0JBTGxDLFNBQVM7K0JBQ0UsZ0NBQWdDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncm9sYXRlY2gtYWNjb3VudC1wYXNzd29yZHJlc2V0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3Bhc3N3b3JkcmVzZXQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9wYXNzd29yZHJlc2V0LmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIFBhc3N3b3JkcmVzZXRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBjb25zdHJ1Y3RvcigpIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7fVxufVxuIiwiPHA+cGFzc3dvcmRyZXNldCB3b3JrcyE8L3A+XG4iXX0=","import { Directive, EventEmitter, Injectable } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class WeChatLoginService {\n constructor() {\n this.onWeChatLogin = new EventEmitter();\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: WeChatLoginService, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.0.3\", type: WeChatLoginService, isStandalone: true, ngImport: i0 }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: WeChatLoginService, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: WeChatLoginService, decorators: [{\n type: Injectable,\n args: [{\n providedIn: 'root',\n }]\n }, {\n type: Directive\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2VjaGF0LWxvZ2luLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyLWFjY291bnQvc3JjL2xpYi9zZXJ2aWNlcy93ZWNoYXQtbG9naW4uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQVUsTUFBTSxlQUFlLENBQUM7O0FBTTVFLE1BQU0sT0FBTyxrQkFBa0I7SUFHN0I7UUFGQSxrQkFBYSxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7SUFFekIsQ0FBQzs4R0FITCxrQkFBa0I7a0dBQWxCLGtCQUFrQjtrSEFBbEIsa0JBQWtCLGNBSGpCLE1BQU07OzJGQUdQLGtCQUFrQjtrQkFKOUIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7O2tCQUNBLFNBQVMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEV2ZW50RW1pdHRlciwgSW5qZWN0YWJsZSwgb3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbkBEaXJlY3RpdmUoKVxuZXhwb3J0IGNsYXNzIFdlQ2hhdExvZ2luU2VydmljZSB7XG4gIG9uV2VDaGF0TG9naW4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICBjb25zdHJ1Y3RvcigpIHt9XG59XG4iXX0=","import { isPlatformBrowser } from '@angular/common';\nimport { Component, effect, HostListener, inject, PLATFORM_ID, signal, ViewEncapsulation } from '@angular/core';\nimport { FormBuilder, Validators } from '@angular/forms';\nimport { DomSanitizer } from '@angular/platform-browser';\nimport { AngularCommonModule, APP_CONFIG } from '@rolatech/angular-common';\nimport { AngularComponentsModule, BaseComponent, TabComponent, TabsComponent } from '@rolatech/angular-components';\nimport { AUTH_METHODS, AuthMethod, AuthService, AuthUserService } from '@rolatech/angular-auth';\nimport { WeChatLoginService } from '../../../services/wechat-login.service';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/forms\";\nimport * as i2 from \"@angular/material/button\";\nimport * as i3 from \"@angular/material/form-field\";\nimport * as i4 from \"@angular/material/input\";\nexport class SigninComponent extends BaseComponent {\n onLogin(event) {\n if (event.origin !== window.location.origin ||\n /react-devtools/gi.test(event.data.source) ||\n /angular-devtools/gi.test(event.data.source)) {\n return;\n }\n if (event.origin === this.environment.accountsUrl && event.data.code === 200) {\n window.location.href = this.continue === this.environment.accountsUrl ? this.environment.myaccountUrl : this.continue;\n }\n }\n constructor() {\n super();\n this.environment = inject(APP_CONFIG);\n this.authMethods = inject(AUTH_METHODS);\n this.hasPassword = this.authMethods.includes(AuthMethod.Password);\n this.hasOTP = this.authMethods.includes(AuthMethod.OTP);\n this.hasWeChat = this.authMethods.includes(AuthMethod.WeChat);\n this.hasGoogle = this.authMethods.includes(AuthMethod.Google);\n this.platformId = inject(PLATFORM_ID);\n this.formBuilder = inject(FormBuilder);\n this.authService = inject(AuthService);\n this.authUserService = inject(AuthUserService);\n this.wechtLoginService = inject(WeChatLoginService);\n this.sanitizer = inject(DomSanitizer);\n this.continue = '';\n this.signUpUrl = '';\n this.tabIndex = signal(0);\n this.countDown = false;\n this.countDownTime = 60;\n this.showButtonText = `Send`;\n this.appid = 'this.environment.wechat.appId';\n this.state = 'add';\n this.isLoading = false;\n this.urlSafe = this.sanitizer.bypassSecurityTrustResourceUrl('');\n this.baseUrl = 'https://open.weixin.qq.com/connect/qrconnect';\n effect(() => {\n const index = this.tabIndex();\n if (index === 0) {\n this.codeForm.reset();\n }\n if (index === 1) {\n this.passrodForm.reset();\n }\n if (index === 2) {\n this.isLoading = true;\n this.codeForm.reset();\n this.passrodForm.reset();\n this.wechat();\n }\n });\n }\n ngOnInit() {\n this.titleService.setTitle('Sign in');\n if (this.hasPassword) {\n this.passrodForm = this.formBuilder.group({\n // account: [null, [Validators.required, Validators.pattern('^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+.[a-zA-Z]{2,}$')]],\n account: [null, [Validators.required]],\n password: [null, [Validators.required, Validators.minLength(6)]],\n });\n }\n if (this.hasOTP) {\n this.codeForm = this.formBuilder.group({\n phone: [null, [Validators.required, Validators.pattern('1(3|4|5|6|7|8|9)\\\\d{9}')]],\n code: [null, Validators.required],\n });\n }\n this.route.queryParams.subscribe((params) => {\n this.continue = params['continue'] || '/'; // Default to home if no continue param\n const decodedUrl = decodeURIComponent(this.continue);\n this.signUpUrl = this.continue ? `signup?continue=${decodedUrl}` : 'signup';\n });\n // this.continue = this.route.snapshot.queryParams['continue'];\n // if (this.continue) {\n // const decodedUrl = decodeURIComponent(this.continue);\n // this.signUpUrl = this.continue ? `signup?continue=${decodedUrl}` : 'signup';\n // }\n }\n get form() {\n return this.tabIndex() === 0 ? this.passrodForm.controls : this.codeForm.controls;\n }\n sendSMSCode() {\n const phoneControl = this.codeForm.get('phone');\n if (!phoneControl?.valid) {\n return;\n }\n const phone = phoneControl.value;\n this.countDown = true;\n const start = setInterval(() => {\n if (this.countDownTime >= 0) {\n this.showButtonText = $localize `${this.countDownTime--}s resend`;\n }\n else {\n clearInterval(start);\n this.showButtonText = $localize `Resend`;\n this.countDown = false;\n this.countDownTime = 60;\n }\n }, 1000);\n this.authUserService.sendSMSCode('+86', phone).subscribe({\n next: (res) => {\n this.snackBarService.open('Success');\n },\n error: (error) => {\n this.snackBarService.open(error.message);\n },\n });\n }\n login() {\n let data = {};\n if (this.tabIndex() === 0) {\n if (!this.passrodForm.valid) {\n return;\n }\n data = {\n account: this.form['account'].value,\n password: this.form['password'].value,\n };\n }\n if (this.tabIndex() === 1) {\n if (!this.codeForm.valid) {\n return;\n }\n data = {\n phone: this.form['phone'].value,\n code: this.form['code'].value,\n };\n }\n this.authService.login(data).subscribe({\n next: () => {\n if (isPlatformBrowser(this.platformId)) {\n window.location.href = this.continue === this.environment.accountsUrl ? this.environment.myaccountUrl : this.continue;\n }\n },\n error: (error) => {\n this.snackBarService.open(error.message);\n },\n });\n }\n wechat() {\n // const redirectUri = 'https://accounts.pinxiaoke.cn/login?continue';\n const redirectUri = `${window.location.origin}/login?continue`;\n const encodedURI = encodeURI(redirectUri);\n const src = `${this.baseUrl}?appid=${this.appid}&response_type=code&self_redirect=true&scope=snsapi_login&stylelite=1&redirect_uri=${encodedURI}&state=${this.state}#wechat_redirect`;\n this.urlSafe = this.sanitizer.bypassSecurityTrustResourceUrl(src);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: SigninComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.0.3\", type: SigninComponent, isStandalone: true, selector: \"rolatech-account-signin\", host: { listeners: { \"window:message\": \"onLogin($event)\" } }, usesInheritance: true, ngImport: i0, template: \"<div class=\\\"h-full flex items-start sm:items-center sm:justify-center\\\">\\n <div\\n class=\\\"w-full h-full justify-start md:h-auto p-6 lg:p-11 rounded-xl bg-[--rt-signin-inner-background] flex flex-col lg:flex-row md:justify-between xl:w-[860px] lg:w-[800px] md:w-[600px]\\\"\\n >\\n <!-- header -->\\n <div class=\\\"flex flex-col py-6\\\">\\n <div class=\\\"text-3xl font-medium mb-3 ml-2\\\" i18n>Sign in</div>\\n <div class=\\\"text-md ml-2\\\" i18n>Use your {{ environment.name }} Account</div>\\n </div>\\n <div>\\n <rolatech-tabs [(select)]=\\\"tabIndex\\\">\\n @if (hasPassword) {\\n <rolatech-tab label=\\\"Password\\\"></rolatech-tab>\\n }\\n @if (hasOTP) {\\n <rolatech-tab label=\\\"OTP\\\"></rolatech-tab>\\n }\\n @if (hasWeChat) {\\n <rolatech-tab label=\\\"WeChat\\\"></rolatech-tab>\\n }\\n </rolatech-tabs>\\n <!-- content -->\\n <div class=\\\"pt-6 min-w-[320px] min-h-[214px]\\\">\\n @if (tabIndex() === 0) {\\n <form [formGroup]=\\\"passrodForm\\\" class=\\\"flex flex-col\\\">\\n @if (hasPassword) {\\n <mat-form-field>\\n <mat-label i18n> Email/Username </mat-label>\\n <input matInput formControlName=\\\"account\\\" required />\\n @if (passrodForm.controls['account'].touched && passrodForm.controls['account'].invalid) {\\n <mat-error>\\n @if (passrodForm.controls['account'].errors?.['required']) {\\n <span i18n>Email is required</span>\\n }\\n @if (passrodForm.controls['account'].errors?.['pattern']) {\\n <span i18n>Invalid email</span>\\n }\\n </mat-error>\\n }\\n </mat-form-field>\\n }\\n <mat-form-field>\\n <mat-label i18n> Password </mat-label>\\n <input autocomplete matInput formControlName=\\\"password\\\" type=\\\"password\\\" />\\n @if (passrodForm.controls['password'].touched && passrodForm.controls['password'].invalid) {\\n <mat-error>\\n @if (passrodForm.controls['password'].errors?.['required']) {\\n <span i18n>Password required</span>\\n }\\n @if (passrodForm.controls['password'].errors?.['minlength']) {\\n <span i18n>Password too short</span>\\n }\\n </mat-error>\\n }\\n </mat-form-field>\\n </form>\\n }\\n @if (tabIndex() === 1) {\\n <form [formGroup]=\\\"codeForm\\\" class=\\\"flex flex-col\\\">\\n @if (hasOTP) {\\n <mat-form-field appearance=\\\"fill\\\">\\n <mat-label i18n> Phone </mat-label>\\n <input autocomplete matInput formControlName=\\\"phone\\\" required />\\n @if (codeForm.controls['phone'].touched && codeForm.controls['phone'].invalid) {\\n <mat-error>\\n @if (codeForm.controls['phone'].errors?.['required']) {\\n <span i18n> Phone required</span>\\n }\\n @if (codeForm.controls['phone'].errors?.['pattern']) {\\n <span i18n> Phone invalid </span>\\n }\\n </mat-error>\\n }\\n </mat-form-field>\\n <div class=\\\"flex justify-between items-center\\\">\\n <mat-form-field appearance=\\\"fill\\\">\\n <mat-label i18n> Code </mat-label>\\n <input matInput formControlName=\\\"code\\\" required />\\n @if (codeForm.controls['code'].touched && codeForm.controls['code'].invalid) {\\n <mat-error>\\n @if (codeForm.controls['code'].errors?.['required']) {\\n <span i18n>Code required</span>\\n }\\n </mat-error>\\n }\\n </mat-form-field>\\n <button\\n mat-flat-button\\n (click)=\\\"sendSMSCode()\\\"\\n [disabled]=\\\"countDown\\\"\\n class=\\\"max-w-[128px] text-white text-center\\\"\\n >\\n <span i18n>{{ showButtonText }}</span>\\n </button>\\n </div>\\n }\\n </form>\\n }\\n @if (tabIndex() === 2) {\\n <div class=\\\"w-[190px] h-[190px] ml-[56px]\\\">\\n <iframe [src]=\\\"urlSafe\\\" class=\\\"w-full h-full inline\\\" scrolling=\\\"no\\\" frameBorder=\\\"no\\\" #iframe></iframe>\\n </div>\\n }\\n </div>\\n <!-- actions -->\\n <div class=\\\"flex justify-between items-center py-3 pl-2\\\">\\n <a class=\\\"underline underline-offset-4 text-sm text-[--rt-brand-color]\\\" [href]=\\\"signUpUrl\\\" i18n>Create account</a>\\n <button mat-flat-button (click)=\\\"login()\\\" class=\\\"w-[128px]\\\" i18n>Sign in</button>\\n </div>\\n </div>\\n </div>\\n</div>\\n\", styles: [\"rolatech-account-signin{height:100%;color:var(--rt-text-primary, #0f0f0f);background:var(--rt-signin-background)}@media (max-width: 600px){rolatech-account-signin{background:var(--rt-signin-inner-background)}}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,input:-webkit-autofill:active{transition:background-color 0s 600000s,color 0s 600000s!important}\\n\"], dependencies: [{ kind: \"ngmodule\", type: AngularCommonModule }, { 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.RequiredValidator, selector: \":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]\", inputs: [\"required\"] }, { 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\"] }, { kind: \"ngmodule\", type: AngularComponentsModule }, { kind: \"component\", type: i2.MatButton, selector: \" button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] \", inputs: [\"matButton\"], exportAs: [\"matButton\", \"matAnchor\"] }, { kind: \"component\", type: i3.MatFormField, selector: \"mat-form-field\", inputs: [\"hideRequiredMarker\", \"color\", \"floatLabel\", \"appearance\", \"subscriptSizing\", \"hintLabel\"], exportAs: [\"matFormField\"] }, { kind: \"directive\", type: i3.MatLabel, selector: \"mat-label\" }, { kind: \"directive\", type: i3.MatError, selector: \"mat-error, [matError]\", inputs: [\"id\"] }, { kind: \"directive\", type: i4.MatInput, selector: \"input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]\", inputs: [\"disabled\", \"id\", \"placeholder\", \"name\", \"required\", \"type\", \"errorStateMatcher\", \"aria-describedby\", \"value\", \"readonly\", \"disabledInteractive\"], exportAs: [\"matInput\"] }, { kind: \"component\", type: TabsComponent, selector: \"rolatech-tabs\", inputs: [\"select\", \"loading\"], outputs: [\"selectChange\"] }, { kind: \"component\", type: TabComponent, selector: \"rolatech-tab\", inputs: [\"label\"] }], encapsulation: i0.ViewEncapsulation.None }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: SigninComponent, decorators: [{\n type: Component,\n args: [{ imports: [AngularCommonModule, AngularComponentsModule, TabsComponent, TabComponent], selector: 'rolatech-account-signin', encapsulation: ViewEncapsulation.None, template: \"<div class=\\\"h-full flex items-start sm:items-center sm:justify-center\\\">\\n <div\\n class=\\\"w-full h-full justify-start md:h-auto p-6 lg:p-11 rounded-xl bg-[--rt-signin-inner-background] flex flex-col lg:flex-row md:justify-between xl:w-[860px] lg:w-[800px] md:w-[600px]\\\"\\n >\\n <!-- header -->\\n <div class=\\\"flex flex-col py-6\\\">\\n <div class=\\\"text-3xl font-medium mb-3 ml-2\\\" i18n>Sign in</div>\\n <div class=\\\"text-md ml-2\\\" i18n>Use your {{ environment.name }} Account</div>\\n </div>\\n <div>\\n <rolatech-tabs [(select)]=\\\"tabIndex\\\">\\n @if (hasPassword) {\\n <rolatech-tab label=\\\"Password\\\"></rolatech-tab>\\n }\\n @if (hasOTP) {\\n <rolatech-tab label=\\\"OTP\\\"></rolatech-tab>\\n }\\n @if (hasWeChat) {\\n <rolatech-tab label=\\\"WeChat\\\"></rolatech-tab>\\n }\\n </rolatech-tabs>\\n <!-- content -->\\n <div class=\\\"pt-6 min-w-[320px] min-h-[214px]\\\">\\n @if (tabIndex() === 0) {\\n <form [formGroup]=\\\"passrodForm\\\" class=\\\"flex flex-col\\\">\\n @if (hasPassword) {\\n <mat-form-field>\\n <mat-label i18n> Email/Username </mat-label>\\n <input matInput formControlName=\\\"account\\\" required />\\n @if (passrodForm.controls['account'].touched && passrodForm.controls['account'].invalid) {\\n <mat-error>\\n @if (passrodForm.controls['account'].errors?.['required']) {\\n <span i18n>Email is required</span>\\n }\\n @if (passrodForm.controls['account'].errors?.['pattern']) {\\n <span i18n>Invalid email</span>\\n }\\n </mat-error>\\n }\\n </mat-form-field>\\n }\\n <mat-form-field>\\n <mat-label i18n> Password </mat-label>\\n <input autocomplete matInput formControlName=\\\"password\\\" type=\\\"password\\\" />\\n @if (passrodForm.controls['password'].touched && passrodForm.controls['password'].invalid) {\\n <mat-error>\\n @if (passrodForm.controls['password'].errors?.['required']) {\\n <span i18n>Password required</span>\\n }\\n @if (passrodForm.controls['password'].errors?.['minlength']) {\\n <span i18n>Password too short</span>\\n }\\n </mat-error>\\n }\\n </mat-form-field>\\n </form>\\n }\\n @if (tabIndex() === 1) {\\n <form [formGroup]=\\\"codeForm\\\" class=\\\"flex flex-col\\\">\\n @if (hasOTP) {\\n <mat-form-field appearance=\\\"fill\\\">\\n <mat-label i18n> Phone </mat-label>\\n <input autocomplete matInput formControlName=\\\"phone\\\" required />\\n @if (codeForm.controls['phone'].touched && codeForm.controls['phone'].invalid) {\\n <mat-error>\\n @if (codeForm.controls['phone'].errors?.['required']) {\\n <span i18n> Phone required</span>\\n }\\n @if (codeForm.controls['phone'].errors?.['pattern']) {\\n <span i18n> Phone invalid </span>\\n }\\n </mat-error>\\n }\\n </mat-form-field>\\n <div class=\\\"flex justify-between items-center\\\">\\n <mat-form-field appearance=\\\"fill\\\">\\n <mat-label i18n> Code </mat-label>\\n <input matInput formControlName=\\\"code\\\" required />\\n @if (codeForm.controls['code'].touched && codeForm.controls['code'].invalid) {\\n <mat-error>\\n @if (codeForm.controls['code'].errors?.['required']) {\\n <span i18n>Code required</span>\\n }\\n </mat-error>\\n }\\n </mat-form-field>\\n <button\\n mat-flat-button\\n (click)=\\\"sendSMSCode()\\\"\\n [disabled]=\\\"countDown\\\"\\n class=\\\"max-w-[128px] text-white text-center\\\"\\n >\\n <span i18n>{{ showButtonText }}</span>\\n </button>\\n </div>\\n }\\n </form>\\n }\\n @if (tabIndex() === 2) {\\n <div class=\\\"w-[190px] h-[190px] ml-[56px]\\\">\\n <iframe [src]=\\\"urlSafe\\\" class=\\\"w-full h-full inline\\\" scrolling=\\\"no\\\" frameBorder=\\\"no\\\" #iframe></iframe>\\n </div>\\n }\\n </div>\\n <!-- actions -->\\n <div class=\\\"flex justify-between items-center py-3 pl-2\\\">\\n <a class=\\\"underline underline-offset-4 text-sm text-[--rt-brand-color]\\\" [href]=\\\"signUpUrl\\\" i18n>Create account</a>\\n <button mat-flat-button (click)=\\\"login()\\\" class=\\\"w-[128px]\\\" i18n>Sign in</button>\\n </div>\\n </div>\\n </div>\\n</div>\\n\", styles: [\"rolatech-account-signin{height:100%;color:var(--rt-text-primary, #0f0f0f);background:var(--rt-signin-background)}@media (max-width: 600px){rolatech-account-signin{background:var(--rt-signin-inner-background)}}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,input:-webkit-autofill:active{transition:background-color 0s 600000s,color 0s 600000s!important}\\n\"] }]\n }], ctorParameters: () => [], propDecorators: { onLogin: [{\n type: HostListener,\n args: ['window:message', ['$event']]\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lnbmluLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItYWNjb3VudC9zcmMvbGliL3BhZ2VzL2FjY291bnRzL3NpZ25pbi9zaWduaW4uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhci1hY2NvdW50L3NyYy9saWIvcGFnZXMvYWNjb3VudHMvc2lnbmluL3NpZ25pbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFVLFdBQVcsRUFBRSxNQUFNLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEgsT0FBTyxFQUFFLFdBQVcsRUFBYSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNwRSxPQUFPLEVBQW1CLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzFFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxVQUFVLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsYUFBYSxFQUFFLFlBQVksRUFBRSxhQUFhLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNuSCxPQUFPLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDaEcsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7Ozs7OztBQVM1RSxNQUFNLE9BQU8sZUFBZ0IsU0FBUSxhQUFhO0lBNEJoRCxPQUFPLENBQUMsS0FBVTtRQUNoQixJQUNFLEtBQUssQ0FBQyxNQUFNLEtBQUssTUFBTSxDQUFDLFFBQVEsQ0FBQyxN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O2tCQVAzQixTQUFTOzhCQUNDLENBQUMsbUJBQW1CLEVBQUUsdUJBQXVCLEVBQUUsYUFBYSxFQUFFLFlBQVksQ0FBQyxZQUMxRSx5QkFBeUIsaUJBR3BCLGlCQUFpQixDQUFDLElBQUk7d0RBOEJyQyxPQUFPO3NCQUROLFlBQVk7dUJBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpc1BsYXRmb3JtQnJvd3NlciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIGVmZmVjdCwgSG9zdExpc3RlbmVyLCBpbmplY3QsIE9uSW5pdCwgUExBVEZPUk1fSUQsIHNpZ25hbCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBGb3JtR3JvdXAsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBTYWZlUmVzb3VyY2VVcmwsIERvbVNhbml0aXplciB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuaW1wb3J0IHsgQW5ndWxhckNvbW1vbk1vZHVsZSwgQVBQX0NPTkZJRyB9IGZyb20gJ0Byb2xhdGVjaC9hbmd1bGFyLWNvbW1vbic7XG5pbXBvcnQgeyBBbmd1bGFyQ29tcG9uZW50c01vZHVsZSwgQmFzZUNvbXBvbmVudCwgVGFiQ29tcG9uZW50LCBUYWJzQ29tcG9uZW50IH0gZnJvbSAnQHJvbGF0ZWNoL2FuZ3VsYXItY29tcG9uZW50cyc7XG5pbXBvcnQgeyBBVVRIX01FVEhPRFMsIEF1dGhNZXRob2QsIEF1dGhTZXJ2aWNlLCBBdXRoVXNlclNlcnZpY2UgfSBmcm9tICdAcm9sYXRlY2gvYW5ndWxhci1hdXRoJztcbmltcG9ydCB7IFdlQ2hhdExvZ2luU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3dlY2hhdC1sb2dpbi5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIGltcG9ydHM6IFtBbmd1bGFyQ29tbW9uTW9kdWxlLCBBbmd1bGFyQ29tcG9uZW50c01vZHVsZSwgVGFic0NvbXBvbmVudCwgVGFiQ29tcG9uZW50XSxcbiAgc2VsZWN0b3I6ICdyb2xhdGVjaC1hY2NvdW50LXNpZ25pbicsXG4gIHRlbXBsYXRlVXJsOiAnLi9zaWduaW4uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zaWduaW4uY29tcG9uZW50LnNjc3MnXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbn0pXG5leHBvcnQgY2xhc3MgU2lnbmluQ29tcG9uZW50IGV4dGVuZHMgQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIGVudmlyb25tZW50ID0gaW5qZWN0KEFQUF9DT05GSUcpO1xuICBhdXRoTWV0aG9kcyA9IGluamVjdChBVVRIX01FVEhPRFMpXG4gIGhhc1Bhc3N3b3JkID0gdGhpcy5hdXRoTWV0aG9kcy5pbmNsdWRlcyhBdXRoTWV0aG9kLlBhc3N3b3JkKTtcbiAgaGFzT1RQID0gdGhpcy5hdXRoTWV0aG9kcy5pbmNsdWRlcyhBdXRoTWV0aG9kLk9UUCk7XG4gIGhhc1dlQ2hhdCA9IHRoaXMuYXV0aE1ldGhvZHMuaW5jbHVkZXMoQXV0aE1ldGhvZC5XZUNoYXQpO1xuICBoYXNHb29nbGUgPSB0aGlzLmF1dGhNZXRob2RzLmluY2x1ZGVzKEF1dGhNZXRob2QuR29vZ2xlKTtcblxuICBwbGF0Zm9ybUlkID0gaW5qZWN0KFBMQVRGT1JNX0lEKTtcbiAgZm9ybUJ1aWxkZXIgPSBpbmplY3QoRm9ybUJ1aWxkZXIpO1xuICBhdXRoU2VydmljZSA9IGluamVjdChBdXRoU2VydmljZSk7XG4gIGF1dGhVc2VyU2VydmljZSA9IGluamVjdChBdXRoVXNlclNlcnZpY2UpO1xuICB3ZWNodExvZ2luU2VydmljZSA9IGluamVjdChXZUNoYXRMb2dpblNlcnZpY2UpO1xuICBzYW5pdGl6ZXIgPSBpbmplY3QoRG9tU2FuaXRpemVyKTtcbiAgcGFzc3JvZEZvcm0hOiBGb3JtR3JvdXA7XG4gIGNvZGVGb3JtITogRm9ybUdyb3VwO1xuICBjb250aW51ZSA9ICcnO1xuICBzaWduVXBVcmwgPSAnJztcbiAgdGFiSW5kZXggPSBzaWduYWwoMCk7XG4gIGNvdW50RG93biA9IGZhbHNlO1xuICBjb3VudERvd25UaW1lID0gNjA7XG4gIHNob3dCdXR0b25UZXh0ID0gYFNlbmRgO1xuICBhcHBpZCA9ICd0aGlzLmVudmlyb25tZW50LndlY2hhdC5hcHBJZCdcbiAgc3RhdGUgPSAnYWRkJztcbiAgaXNMb2FkaW5nID0gZmFsc2U7XG4gIHVybFNhZmU6IFNhZmVSZXNvdXJjZVVybCA9IHRoaXMuc2FuaXRpemVyLmJ5cGFzc1NlY3VyaXR5VHJ1c3RSZXNvdXJjZVVybCgnJyk7XG4gIGJhc2VVcmwgPSAnaHR0cHM6Ly9vcGVuLndlaXhpbi5xcS5jb20vY29ubmVjdC9xcmNvbm5lY3QnO1xuICBASG9zdExpc3RlbmVyKCd3aW5kb3c6bWVzc2FnZScsIFsnJGV2ZW50J10pXG4gIG9uTG9naW4oZXZlbnQ6IGFueSk6IHZvaWQge1xuICAgIGlmIChcbiAgICAgIGV2ZW50Lm9yaWdpbiAhPT0gd2luZG93LmxvY2F0aW9uLm9yaWdpbiB8fFxuICAgICAgL3JlYWN0LWRldnRvb2xzL2dpLnRlc3QoZXZlbnQuZGF0YS5zb3VyY2UpIHx8XG4gICAgICAvYW5ndWxhci1kZXZ0b29scy9naS50ZXN0KGV2ZW50LmRhdGEuc291cmNlKVxuICAgICkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBpZiAoZXZlbnQub3JpZ2luID09PSB0aGlzLmVudmlyb25tZW50LmFjY291bnRzVXJsICYmIGV2ZW50LmRhdGEuY29kZSA9PT0gMjAwKSB7XG4gICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9IHRoaXMuY29udGludWUgPT09IHRoaXMuZW52aXJvbm1lbnQuYWNjb3VudHNVcmwgPyB0aGlzLmVudmlyb25tZW50Lm15YWNjb3VudFVybCA6IHRoaXMuY29udGludWU7XG4gICAgfVxuICB9XG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG4gICAgZWZmZWN0KCgpID0+IHtcbiAgICAgIGNvbnN0IGluZGV4ID0gdGhpcy50YWJJbmRleCgpO1xuICAgICAgaWYgKGluZGV4ID09PSAwKSB7XG4gICAgICAgIHRoaXMuY29kZUZvcm0ucmVzZXQoKTtcbiAgICAgIH1cbiAgICAgIGlmIChpbmRleCA9PT0gMSkge1xuICAgICAgICB0aGlzLnBhc3Nyb2RGb3JtLnJlc2V0KCk7XG4gICAgICB9XG4gICAgICBpZiAoaW5kZXggPT09IDIpIHtcbiAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSB0cnVlO1xuICAgICAgICB0aGlzLmNvZGVGb3JtLnJlc2V0KCk7XG4gICAgICAgIHRoaXMucGFzc3JvZEZvcm0ucmVzZXQoKTtcbiAgICAgICAgdGhpcy53ZWNoYXQoKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnRpdGxlU2VydmljZS5zZXRUaXRsZSgnU2lnbiBpbicpO1xuICAgIGlmICh0aGlzLmhhc1Bhc3N3b3JkKSB7XG4gICAgICB0aGlzLnBhc3Nyb2RGb3JtID0gdGhpcy5mb3JtQnVpbGRlci5ncm91cCh7XG4gICAgICAgIC8vIGFjY291bnQ6IFtudWxsLCBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgVmFsaWRhdG9ycy5wYXR0ZXJuKCdeW2EtekEtWjAtOS5fJSstXStAW2EtekEtWjAtOS4tXSsuW2EtekEtWl17Mix9JCcpXV0sXG4gICAgICAgIGFjY291bnQ6IFtudWxsLCBbVmFsaWRhdG9ycy5yZXF1aXJlZF1dLFxuICAgICAgICBwYXNzd29yZDogW251bGwsIFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBWYWxpZGF0b3JzLm1pbkxlbmd0aCg2KV1dLFxuICAgICAgfSk7XG4gICAgfVxuICAgIGlmICh0aGlzLmhhc09UUCkge1xuICAgICAgdGhpcy5jb2RlRm9ybSA9IHRoaXMuZm9ybUJ1aWxkZXIuZ3JvdXAoe1xuICAgICAgICBwaG9uZTogW251bGwsIFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBWYWxpZGF0b3JzLnBhdHRlcm4oJzEoM3w0fDV8Nnw3fDh8OSlcXFxcZHs5fScpXV0sXG4gICAgICAgIGNvZGU6IFtudWxsLCBWYWxpZGF0b3JzLnJlcXVpcmVkXSxcbiAgICAgIH0pO1xuICAgIH1cbiAgICB0aGlzLnJvdXRlLnF1ZXJ5UGFyYW1zLnN1YnNjcmliZSgocGFyYW1zKSA9PiB7XG4gICAgICB0aGlzLmNvbnRpbnVlID0gcGFyYW1zWydjb250aW51ZSddIHx8ICcvJzsgLy8gRGVmYXVsdCB0byBob21lIGlmIG5vIGNvbnRpbnVlIHBhcmFtXG4gICAgICBjb25zdCBkZWNvZGVkVXJsID0gZGVjb2RlVVJJQ29tcG9uZW50KHRoaXMuY29udGludWUpO1xuICAgICAgdGhpcy5zaWduVXBVcmwgPSB0aGlzLmNvbnRpbnVlID8gYHNpZ251cD9jb250aW51ZT0ke2RlY29kZWRVcmx9YCA6ICdzaWdudXAnO1xuICAgIH0pO1xuICAgIC8vIHRoaXMuY29udGludWUgPSB0aGlzLnJvdXRlLnNuYXBzaG90LnF1ZXJ5UGFyYW1zWydjb250aW51ZSddO1xuICAgIC8vIGlmICh0aGlzLmNvbnRpbnVlKSB7XG4gICAgLy8gICBjb25zdCBkZWNvZGVkVXJsID0gZGVjb2RlVVJJQ29tcG9uZW50KHRoaXMuY29udGludWUpO1xuICAgIC8vICAgdGhpcy5zaWduVXBVcmwgPSB0aGlzLmNvbnRpbnVlID8gYHNpZ251cD9jb250aW51ZT0ke2RlY29kZWRVcmx9YCA6ICdzaWdudXAnO1xuICAgIC8vIH1cbiAgfVxuICBnZXQgZm9ybSgpIHtcbiAgICByZXR1cm4gdGhpcy50YWJJbmRleCgpID09PSAwID8gdGhpcy5wYXNzcm9kRm9ybS5jb250cm9scyA6IHRoaXMuY29kZUZvcm0uY29udHJvbHM7XG4gIH1cbiAgc2VuZFNNU0NvZGUoKSB7XG4gICAgY29uc3QgcGhvbmVDb250cm9sID0gdGhpcy5jb2RlRm9ybS5nZXQoJ3Bob25lJyk7XG4gICAgaWYgKCFwaG9uZUNvbnRyb2w/LnZhbGlkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IHBob25lID0gcGhvbmVDb250cm9sLnZhbHVlO1xuICAgIHRoaXMuY291bnREb3duID0gdHJ1ZTtcbiAgICBjb25zdCBzdGFydCA9IHNldEludGVydmFsKCgpID0+IHtcbiAgICAgIGlmICh0aGlzLmNvdW50RG93blRpbWUgPj0gMCkge1xuICAgICAgICB0aGlzLnNob3dCdXR0b25UZXh0ID0gJGxvY2FsaXplYCR7dGhpcy5jb3VudERvd25UaW1lLS19cyByZXNlbmRgO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY2xlYXJJbnRlcnZhbChzdGFydCk7XG4gICAgICAgIHRoaXMuc2hvd0J1dHRvblRleHQgPSAkbG9jYWxpemVgUmVzZW5kYDtcbiAgICAgICAgdGhpcy5jb3VudERvd24gPSBmYWxzZTtcbiAgICAgICAgdGhpcy5jb3VudERvd25UaW1lID0gNjA7XG4gICAgICB9XG4gICAgfSwgMTAwMCk7XG5cbiAgICB0aGlzLmF1dGhVc2VyU2VydmljZS5zZW5kU01TQ29kZSgnKzg2JywgcGhvbmUpLnN1YnNjcmliZSh7XG4gICAgICBuZXh0OiAocmVzKSA9PiB7XG4gICAgICAgIHRoaXMuc25hY2tCYXJTZXJ2aWNlLm9wZW4oJ1N1Y2Nlc3MnKTtcbiAgICAgIH0sXG4gICAgICBlcnJvcjogKGVycm9yKSA9PiB7XG4gICAgICAgIHRoaXMuc25hY2tCYXJTZXJ2aWNlLm9wZW4oZXJyb3IubWVzc2FnZSk7XG4gICAgICB9LFxuICAgIH0pO1xuICB9XG4gIGxvZ2luKCkge1xuICAgIGxldCBkYXRhID0ge307XG4gICAgaWYgKHRoaXMudGFiSW5kZXgoKSA9PT0gMCkge1xuICAgICAgaWYgKCF0aGlzLnBhc3Nyb2RGb3JtLnZhbGlkKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICAgIGRhdGEgPSB7XG4gICAgICAgIGFjY291bnQ6IHRoaXMuZm9ybVsnYWNjb3VudCddLnZhbHVlLFxuICAgICAgICBwYXNzd29yZDogdGhpcy5mb3JtWydwYXNzd29yZCddLnZhbHVlLFxuICAgICAgfTtcbiAgICB9XG4gICAgaWYgKHRoaXMudGFiSW5kZXgoKSA9PT0gMSkge1xuICAgICAgaWYgKCF0aGlzLmNvZGVGb3JtLnZhbGlkKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICAgIGRhdGEgPSB7XG4gICAgICAgIHBob25lOiB0aGlzLmZvcm1bJ3Bob25lJ10udmFsdWUsXG4gICAgICAgIGNvZGU6IHRoaXMuZm9ybVsnY29kZSddLnZhbHVlLFxuICAgICAgfTtcbiAgICB9XG5cbiAgICB0aGlzLmF1dGhTZXJ2aWNlLmxvZ2luKGRhdGEpLnN1YnNjcmliZSh7XG4gICAgICBuZXh0OiAoKSA9PiB7XG4gICAgICAgIGlmIChpc1BsYXRmb3JtQnJvd3Nlcih0aGlzLnBsYXRmb3JtSWQpKSB7XG4gICAgICAgICAgd2luZG93LmxvY2F0aW9uLmhyZWYgPSB0aGlzLmNvbnRpbnVlID09PSB0aGlzLmVudmlyb25tZW50LmFjY291bnRzVXJsID8gdGhpcy5lbnZpcm9ubWVudC5teWFjY291bnRVcmwgOiB0aGlzLmNvbnRpbnVlO1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgZXJyb3I6IChlcnJvcikgPT4ge1xuICAgICAgICB0aGlzLnNuYWNrQmFyU2VydmljZS5vcGVuKGVycm9yLm1lc3NhZ2UpO1xuICAgICAgfSxcbiAgICB9KTtcbiAgfVxuICB3ZWNoYXQoKSB7XG4gICAgLy8gY29uc3QgcmVkaXJlY3RVcmkgPSAnaHR0cHM6Ly9hY2NvdW50cy5waW54aWFva2UuY24vbG9naW4/Y29udGludWUnO1xuICAgIGNvbnN0IHJlZGlyZWN0VXJpID0gYCR7d2luZG93LmxvY2F0aW9uLm9yaWdpbn0vbG9naW4/Y29udGludWVgO1xuICAgIGNvbnN0IGVuY29kZWRVUkkgPSBlbmNvZGVVUkkocmVkaXJlY3RVcmkpO1xuICAgIGNvbnN0IHNyYyA9IGAke3RoaXMuYmFzZVVybH0/YXBwaWQ9JHt0aGlzLmFwcGlkfSZyZXNwb25zZV90eXBlPWNvZGUmc2VsZl9yZWRpcmVjdD10cnVlJnNjb3BlPXNuc2FwaV9sb2dpbiZzdHlsZWxpdGU9MSZyZWRpcmVjdF91cmk9JHtlbmNvZGVkVVJJfSZzdGF0ZT0ke3RoaXMuc3RhdGV9I3dlY2hhdF9yZWRpcmVjdGA7XG4gICAgdGhpcy51cmxTYWZlID0gdGhpcy5zYW5pdGl6ZXIuYnlwYXNzU2VjdXJpdHlUcnVzdFJlc291cmNlVXJsKHNyYyk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJoLWZ1bGwgZmxleCBpdGVtcy1zdGFydCBzbTppdGVtcy1jZW50ZXIgc206anVzdGlmeS1jZW50ZXJcIj5cbiAgPGRpdlxuICAgIGNsYXNzPVwidy1mdWxsIGgtZnVsbCBqdXN0aWZ5LXN0YXJ0IG1kOmgtYXV0byBwLTYgbGc6cC0xMSByb3VuZGVkLXhsIGJnLVstLXJ0LXNpZ25pbi1pbm5lci1iYWNrZ3JvdW5kXSBmbGV4IGZsZXgtY29sIGxnOmZsZXgtcm93IG1kOmp1c3RpZnktYmV0d2VlbiB4bDp3LVs4NjBweF0gbGc6dy1bODAwcHhdIG1kOnctWzYwMHB4XVwiXG4gID5cbiAgICA8IS0tIGhlYWRlciAtLT5cbiAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbCBweS02XCI+XG4gICAgICA8ZGl2IGNsYXNzPVwidGV4dC0zeGwgZm9udC1tZWRpdW0gbWItMyBtbC0yXCIgaTE4bj5TaWduIGluPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwidGV4dC1tZCBtbC0yXCIgaTE4bj5Vc2UgeW91ciB7eyBlbnZpcm9ubWVudC5uYW1lIH19IEFjY291bnQ8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2PlxuICAgICAgPHJvbGF0ZWNoLXRhYnMgWyhzZWxlY3QpXT1cInRhYkluZGV4XCI+XG4gICAgICAgIEBpZiAoaGFzUGFzc3dvcmQpIHtcbiAgICAgICAgICA8cm9sYXRlY2gtdGFiIGxhYmVsPVwiUGFzc3dvcmRcIj48L3JvbGF0ZWNoLXRhYj5cbiAgICAgICAgfVxuICAgICAgICBAaWYgKGhhc09UUCkge1xuICAgICAgICAgIDxyb2xhdGVjaC10YWIgbGFiZWw9XCJPVFBcIj48L3JvbGF0ZWNoLXRhYj5cbiAgICAgICAgfVxuICAgICAgICBAaWYgKGhhc1dlQ2hhdCkge1xuICAgICAgICAgIDxyb2xhdGVjaC10YWIgbGFiZWw9XCJXZUNoYXRcIj48L3JvbGF0ZWNoLXRhYj5cbiAgICAgICAgfVxuICAgICAgPC9yb2xhdGVjaC10YWJzPlxuICAgICAgPCEtLSBjb250ZW50IC0tPlxuICAgICAgPGRpdiBjbGFzcz1cInB0LTYgbWluLXctWzMyMHB4XSBtaW4taC1bMjE0cHhdXCI+XG4gICAgICAgIEBpZiAodGFiSW5kZXgoKSA9PT0gMCkge1xuICAgICAgICAgIDxmb3JtIFtmb3JtR3JvdXBdPVwicGFzc3JvZEZvcm1cIiBjbGFzcz1cImZsZXggZmxleC1jb2xcIj5cbiAgICAgICAgICAgIEBpZiAoaGFzUGFzc3dvcmQpIHtcbiAgICAgICAgICAgICAgPG1hdC1mb3JtLWZpZWxkPlxuICAgICAgICAgICAgICAgIDxtYXQtbGFiZWwgaTE4bj4gRW1haWwvVXNlcm5hbWUgPC9tYXQtbGFiZWw+XG4gICAgICAgICAgICAgICAgPGlucHV0IG1hdElucHV0IGZvcm1Db250cm9sTmFtZT1cImFjY291bnRcIiByZXF1aXJlZCAvPlxuICAgICAgICAgICAgICAgIEBpZiAocGFzc3JvZEZvcm0uY29udHJvbHNbJ2FjY291bnQnXS50b3VjaGVkICYmIHBhc3Nyb2RGb3JtLmNvbnRyb2xzWydhY2NvdW50J10uaW52YWxpZCkge1xuICAgICAgICAgICAgICAgICAgPG1hdC1lcnJvcj5cbiAgICAgICAgICAgICAgICAgICAgQGlmIChwYXNzcm9kRm9ybS5jb250cm9sc1snYWNjb3VudCddLmVycm9ycz8uWydyZXF1aXJlZCddKSB7XG4gICAgICAgICAgICAgICAgICAgICAgPHNwYW4gaTE4bj5FbWFpbCBpcyByZXF1aXJlZDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBAaWYgKHBhc3Nyb2RGb3JtLmNvbnRyb2xzWydhY2NvdW50J10uZXJyb3JzPy5bJ3BhdHRlcm4nXSkge1xuICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGkxOG4+SW52YWxpZCBlbWFpbDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgPC9tYXQtZXJyb3I+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgPG1hdC1mb3JtLWZpZWxkPlxuICAgICAgICAgICAgICA8bWF0LWxhYmVsIGkxOG4+IFBhc3N3b3JkIDwvbWF0LWxhYmVsPlxuICAgICAgICAgICAgICA8aW5wdXQgYXV0b2NvbXBsZXRlIG1hdElucHV0IGZvcm1Db250cm9sTmFtZT1cInBhc3N3b3JkXCIgdHlwZT1cInBhc3N3b3JkXCIgLz5cbiAgICAgICAgICAgICAgQGlmIChwYXNzcm9kRm9ybS5jb250cm9sc1sncGFzc3dvcmQnXS50b3VjaGVkICYmIHBhc3Nyb2RGb3JtLmNvbnRyb2xzWydwYXNzd29yZCddLmludmFsaWQpIHtcbiAgICAgICAgICAgICAgICA8bWF0LWVycm9yPlxuICAgICAgICAgICAgICAgICAgQGlmIChwYXNzcm9kRm9ybS5jb250cm9sc1sncGFzc3dvcmQnXS5lcnJvcnM/LlsncmVxdWlyZWQnXSkge1xuICAgICAgICAgICAgICAgICAgICA8c3BhbiBpMThuPlBhc3N3b3JkIHJlcXVpcmVkPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgQGlmIChwYXNzcm9kRm9ybS5jb250cm9sc1sncGFzc3dvcmQnXS5lcnJvcnM/LlsnbWlubGVuZ3RoJ10pIHtcbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gaTE4bj5QYXNzd29yZCB0b28gc2hvcnQ8L3NwYW4+XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgPC9tYXQtZXJyb3I+XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgICAgICAgPC9mb3JtPlxuICAgICAgICB9XG4gICAgICAgIEBpZiAodGFiSW5kZXgoKSA9PT0gMSkge1xuICAgICAgICAgIDxmb3JtIFtmb3JtR3JvdXBdPVwiY29kZUZvcm1cIiBjbGFzcz1cImZsZXggZmxleC1jb2xcIj5cbiAgICAgICAgICAgIEBpZiAoaGFzT1RQKSB7XG4gICAgICAgICAgICAgIDxtYXQtZm9ybS1maWVsZCBhcHBlYXJhbmNlPVwiZmlsbFwiPlxuICAgICAgICAgICAgICAgIDxtYXQtbGFiZWwgaTE4bj4gUGhvbmUgPC9tYXQtbGFiZWw+XG4gICAgICAgICAgICAgICAgPGlucHV0IGF1dG9jb21wbGV0ZSBtYXRJbnB1dCBmb3JtQ29udHJvbE5hbWU9XCJwaG9uZVwiIHJlcXVpcmVkIC8+XG4gICAgICAgICAgICAgICAgQGlmIChjb2RlRm9ybS5jb250cm9sc1sncGhvbmUnXS50b3VjaGVkICYmIGNvZGVGb3JtLmNvbnRyb2xzWydwaG9uZSddLmludmFsaWQpIHtcbiAgICAgICAgICAgICAgICAgIDxtYXQtZXJyb3I+XG4gICAgICAgICAgICAgICAgICAgIEBpZiAoY29kZUZvcm0uY29udHJvbHNbJ3Bob25lJ10uZXJyb3JzPy5bJ3JlcXVpcmVkJ10pIHtcbiAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBpMThuPiBQaG9uZSByZXF1aXJlZDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBAaWYgKGNvZGVGb3JtLmNvbnRyb2xzWydwaG9uZSddLmVycm9ycz8uWydwYXR0ZXJuJ10pIHtcbiAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBpMThuPiBQaG9uZSBpbnZhbGlkIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgPC9tYXQtZXJyb3I+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBqdXN0aWZ5LWJldHdlZW4gaXRlbXMtY2VudGVyXCI+XG4gICAgICAgICAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGFwcGVhcmFuY2U9XCJmaWxsXCI+XG4gICAgICAgICAgICAgICAgICA8bWF0LWxhYmVsIGkxOG4+IENvZGUgPC9tYXQtbGFiZWw+XG4gICAgICAgICAgICAgICAgICA8aW5wdXQgbWF0SW5wdXQgZm9ybUNvbnRyb2xOYW1lPVwiY29kZVwiIHJlcXVpcmVkIC8+XG4gICAgICAgICAgICAgICAgICBAaWYgKGNvZGVGb3JtLmNvbnRyb2xzWydjb2RlJ10udG91Y2hlZCAmJiBjb2RlRm9ybS5jb250cm9sc1snY29kZSddLmludmFsaWQpIHtcbiAgICAgICAgICAgICAgICAgICAgPG1hdC1lcnJvcj5cbiAgICAgICAgICAgICAgICAgICAgICBAaWYgKGNvZGVGb3JtLmNvbnRyb2xzWydjb2RlJ10uZXJyb3JzPy5bJ3JlcXVpcmVkJ10pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGkxOG4+Q29kZSByZXF1aXJlZDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIDwvbWF0LWVycm9yPlxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgbWF0LWZsYXQtYnV0dG9uXG4gICAgICAgICAgICAgICAgICAoY2xpY2spPVwic2VuZFNNU0NvZGUoKVwiXG4gICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiY291bnREb3duXCJcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwibWF4LXctWzEyOHB4XSB0ZXh0LXdoaXRlIHRleHQtY2VudGVyXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICA8c3BhbiBpMThuPnt7IHNob3dCdXR0b25UZXh0IH19PC9zcGFuPlxuICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICA8L2Zvcm0+XG4gICAgICAgIH1cbiAgICAgICAgQGlmICh0YWJJbmRleCgpID09PSAyKSB7XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInctWzE5MHB4XSBoLVsxOTBweF0gbWwtWzU2cHhdXCI+XG4gICAgICAgICAgICA8aWZyYW1lIFtzcmNdPVwidXJsU2FmZVwiIGNsYXNzPVwidy1mdWxsIGgtZnVsbCBpbmxpbmVcIiBzY3JvbGxpbmc9XCJub1wiIGZyYW1lQm9yZGVyPVwibm9cIiAjaWZyYW1lPjwvaWZyYW1lPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICB9XG4gICAgICA8L2Rpdj5cbiAgICAgIDwhLS0gYWN0aW9ucyAtLT5cbiAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGp1c3RpZnktYmV0d2VlbiBpdGVtcy1jZW50ZXIgcHktMyBwbC0yXCI+XG4gICAgICAgIDxhIGNsYXNzPVwidW5kZXJsaW5lIHVuZGVybGluZS1vZmZzZXQtNCB0ZXh0LXNtIHRleHQtWy0tcnQtYnJhbmQtY29sb3JdXCIgW2hyZWZdPVwic2lnblVwVXJsXCIgaTE4bj5DcmVhdGUgYWNjb3VudDwvYT5cbiAgICAgICAgPGJ1dHRvbiBtYXQtZmxhdC1idXR0b24gKGNsaWNrKT1cImxvZ2luKClcIiBjbGFzcz1cInctWzEyOHB4XVwiIGkxOG4+U2lnbiBpbjwvYnV0dG9uPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=","import { Component, inject, ViewEncapsulation } from '@angular/core';\nimport { FormBuilder, Validators } from '@angular/forms';\nimport { AngularCommonModule, APP_CONFIG, WINDOW } from '@rolatech/angular-common';\nimport { AngularComponentsModule, BaseComponent } from '@rolatech/angular-components';\nimport { AuthService, AuthUserService } from '@rolatech/angular-auth';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/forms\";\nimport * as i2 from \"@angular/material/button\";\nimport * as i3 from \"@angular/material/form-field\";\nimport * as i4 from \"@angular/material/input\";\nexport class SignupComponent extends BaseComponent {\n constructor() {\n super(...arguments);\n this.environment = inject(APP_CONFIG);\n this.authService = inject(AuthService);\n this.authUserService = inject(AuthUserService);\n this.formBuilder = inject(FormBuilder);\n this.window = inject(WINDOW);\n this.continue = '/';\n this.signInUrl = '';\n this.usePhone = false;\n this.countDown = false;\n this.countDownTime = 60;\n this.showButtonText = 'Send';\n }\n ngOnInit() {\n this.titleService.setTitle('Sign up');\n this.signupForm = this.formBuilder.group({\n firstName: [null, Validators.required],\n lastName: [null, Validators.required],\n email: [null, [Validators.required, Validators.pattern('^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+.[a-zA-Z]{2,}$')]],\n password: [null, [Validators.required, Validators.minLength(6)]],\n rePassword: [null, [Validators.required, Validators.minLength(6)]],\n });\n // this.signupForm = this.formBuilder.group({\n // name: [null, Validators.required],\n // phone: [null, [Validators.required, Validators.pattern('1(3|4|5|6|7|8|9)\\\\d{9}')]],\n // code: [null, [Validators.required, Validators.minLength(6)]],\n // password: [null, [Validators.required, Validators.minLength(6)]],\n // rePassword: [null, [Validators.required, Validators.minLength(6)]],\n // });\n this.continue = this.route.snapshot.queryParams['continue'] || '/';\n const decodedUrl = decodeURIComponent(this.continue);\n this.signInUrl = `signin?continue=${decodedUrl}`;\n }\n sendSMSCode() {\n const phoneControl = this.signupForm.get('phone');\n if (!phoneControl?.valid) {\n return;\n }\n const phone = phoneControl.value;\n this.countDown = true;\n const start = setInterval(() => {\n if (this.countDownTime >= 0) {\n this.showButtonText = `${this.countDownTime--}s resend`;\n }\n else {\n clearInterval(start);\n this.showButtonText = 'Resend';\n this.countDown = false;\n this.countDownTime = 60;\n }\n }, 1000);\n this.authUserService.sendSMSCode('+86', phone).subscribe({\n next: (res) => {\n this.snackBarService.open('Success');\n },\n error: (error) => {\n this.snackBarService.open(error.message);\n },\n });\n }\n submit() {\n if (!this.signupForm.valid) {\n return;\n }\n this.authService.signup(this.signupForm.value).subscribe({\n next: (res) => {\n console.log(res);\n this.window.location.href = this.continue ? this.continue : this.environment.myaccountUrl;\n },\n error: (error) => {\n this.snackBarService.open(error.message);\n },\n });\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: SignupComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.0.3\", type: SignupComponent, isStandalone: true, selector: \"rolatech-account-signup\", usesInheritance: true, ngImport: i0, template: \"<div class=\\\"h-full flex items-start sm:items-center sm:justify-center\\\">\\n <div\\n class=\\\"w-full h-full md:h-auto justify-start md:justify-between p-6 lg:p-11 rounded-xl bg-[--rt-signin-inner-background] flex flex-col lg:flex-row lg:flex-row md:justify-between xl:w-[860px] lg:w-[800px] md:w-[600px]\\\"\\n >\\n <!-- header -->\\n <div class=\\\"flex flex-col py-6\\\">\\n <div class=\\\"text-3xl font-medium mb-3 ml-2\\\" i18n>Create your {{ environment.name }} account</div>\\n <div class=\\\"text-md ml-2\\\" i18n>Sign up, Get more.</div>\\n </div>\\n <div class=\\\"min-w-[320px]\\\">\\n <form [formGroup]=\\\"signupForm\\\" (submit)=\\\"submit()\\\" class=\\\"flex flex-col\\\">\\n @if (usePhone) {\\n <!-- name -->\\n <mat-form-field appearance=\\\"fill\\\">\\n <mat-label i18n> Name </mat-label>\\n <input matInput formControlName=\\\"name\\\" required />\\n @if (signupForm.controls['name'].touched && signupForm.controls['name'].invalid) {\\n <mat-error>\\n @if (signupForm.controls['name'].errors?.['required']) {\\n <span i18n>Name required</span>\\n }\\n </mat-error>\\n }\\n </mat-form-field>\\n <!-- phone -->\\n <mat-form-field appearance=\\\"fill\\\">\\n <mat-label i18n> Phone </mat-label>\\n <input matInput formControlName=\\\"phone\\\" required />\\n @if (signupForm.controls['phone'].touched && signupForm.controls['phone'].invalid) {\\n <mat-error>\\n @if (signupForm.controls['phone'].errors?.['required']) {\\n <span i18n>Phone is required</span>\\n }\\n @if (signupForm.controls['phone'].errors?.['pattern']) {\\n <span i18n>Invalid Phone </span>\\n }\\n </mat-error>\\n }\\n </mat-form-field>\\n <!-- phone code -->\\n <div class=\\\"flex justify-between items-center gap-3\\\">\\n <mat-form-field appearance=\\\"fill\\\" class=\\\"w-full\\\">\\n <mat-label i18n> Code </mat-label>\\n <input matInput type=\\\"text\\\" formControlName=\\\"code\\\" autocomplete=\\\"new-password\\\" required />\\n @if (signupForm.controls['code'].touched && signupForm.controls['code'].invalid) {\\n <mat-error>\\n @if (signupForm.controls['code'].errors?.['required']) {\\n <span i18n>Code is required</span>\\n }\\n </mat-error>\\n }\\n </mat-form-field>\\n <button mat-button (click)=\\\"sendSMSCode()\\\" [disabled]=\\\"countDown\\\" class=\\\"w-[128px] text-white text-center\\\">\\n <span>{{ showButtonText }}</span>\\n </button>\\n </div>\\n }\\n <div class=\\\"flex flex-col md:flex-row gap-3 items-center\\\">\\n <!--First name -->\\n <mat-form-field appearance=\\\"fill\\\">\\n <mat-label i18n> Fist name </mat-label>\\n <input matInput formControlName=\\\"firstName\\\" required />\\n @if (signupForm.controls['firstName'].touched && signupForm.controls['firstName'].invalid) {\\n <mat-error>\\n @if (signupForm.controls['firstName'].errors?.['required']) {\\n <span i18n>First name required</span>\\n }\\n </mat-error>\\n }\\n </mat-form-field>\\n <!-- Last name -->\\n <mat-form-field appearance=\\\"fill\\\">\\n <mat-label i18n> Last name </mat-label>\\n <input matInput formControlName=\\\"lastName\\\" required />\\n @if (signupForm.controls['lastName'].touched && signupForm.controls['lastName'].invalid) {\\n <mat-error>\\n @if (signupForm.controls['lastName'].errors?.['required']) {\\n <span i18n>Last name required</span>\\n }\\n </mat-error>\\n }\\n </mat-form-field>\\n </div>\\n <!-- Email account -->\\n <mat-form-field appearance=\\\"fill\\\">\\n <mat-label i18n> Email </mat-label>\\n <input matInput formControlName=\\\"email\\\" required />\\n @if (signupForm.controls['email'].touched && signupForm.controls['email'].invalid) {\\n <mat-error>\\n @if (signupForm.controls['email'].errors?.['required']) {\\n <span i18n>Email is required</span>\\n }\\n @if (signupForm.controls['email'].errors?.['pattern']) {\\n <span i18n>Invalid email</span>\\n }\\n </mat-error>\\n }\\n </mat-form-field>\\n <!-- Password -->\\n <mat-form-field appearance=\\\"fill\\\">\\n <mat-label i18n> Password </mat-label>\\n <input matInput formControlName=\\\"password\\\" type=\\\"password\\\" autocomplete=\\\"password\\\" />\\n @if (signupForm.controls['password'].touched && signupForm.controls['password'].invalid) {\\n <mat-error>\\n @if (signupForm.controls['password'].errors?.['required']) {\\n <span i18n>Password required</span>\\n }\\n @if (signupForm.controls['password'].errors?.['minlength']) {\\n <span i18n>Password too short</span>\\n }\\n </mat-error>\\n }\\n </mat-form-field>\\n\\n <!-- password confirm -->\\n <mat-form-field appearance=\\\"fill\\\">\\n <mat-label i18n> Password </mat-label>\\n <input matInput formControlName=\\\"rePassword\\\" type=\\\"password\\\" autocomplete=\\\"rePassword\\\" />\\n @if (signupForm.controls['rePassword'].touched && signupForm.controls['rePassword'].invalid) {\\n <mat-error>\\n @if (signupForm.controls['rePassword'].errors?.['required']) {\\n <span i18n>Password required</span>\\n }\\n @if (signupForm.controls['rePassword'].errors?.['minlength']) {\\n <span i18n>Password too short</span>\\n }\\n </mat-error>\\n }\\n </mat-form-field>\\n </form>\\n <div class=\\\"flex justify-between items-center py-3 pl-2\\\">\\n <a mat-button [href]=\\\"signInUrl\\\" i18n>Sign in</a>\\n <button mat-flat-button (click)=\\\"submit()\\\" class=\\\"w-[128px]\\\" i18n>Sign up</button>\\n </div>\\n </div>\\n </div>\\n</div>\\n\", styles: [\"rolatech-account-signup{height:100%;color:var(--rt-text-primary, #0f0f0f);background:var(--rt-signin-background)}@media (max-width: 600px){rolatech-account-signup{background:var(--rt-signin-inner-background)}}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,input:-webkit-autofill:active{transition:background-color 0s 600000s,color 0s 600000s!important}mat-form-field{width:100%}\\n\"], dependencies: [{ kind: \"ngmodule\", type: AngularCommonModule }, { 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.RequiredValidator, selector: \":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]\", inputs: [\"required\"] }, { 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\"] }, { kind: \"ngmodule\", type: AngularComponentsModule }, { kind: \"component\", type: i2.MatButton, selector: \" button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] \", inputs: [\"matButton\"], exportAs: [\"matButton\", \"matAnchor\"] }, { kind: \"component\", type: i3.MatFormField, selector: \"mat-form-field\", inputs: [\"hideRequiredMarker\", \"color\", \"floatLabel\", \"appearance\", \"subscriptSizing\", \"hintLabel\"], exportAs: [\"matFormField\"] }, { kind: \"directive\", type: i3.MatLabel, selector: \"mat-label\" }, { kind: \"directive\", type: i3.MatError, selector: \"mat-error, [matError]\", inputs: [\"id\"] }, { kind: \"directive\", type: i4.MatInput, selector: \"input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]\", inputs: [\"disabled\", \"id\", \"placeholder\", \"name\", \"required\", \"type\", \"errorStateMatcher\", \"aria-describedby\", \"value\", \"readonly\", \"disabledInteractive\"], exportAs: [\"matInput\"] }], encapsulation: i0.ViewEncapsulation.None }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: SignupComponent, decorators: [{\n type: Component,\n args: [{ imports: [AngularCommonModule, AngularComponentsModule], selector: 'rolatech-account-signup', encapsulation: ViewEncapsulation.None, template: \"<div class=\\\"h-full flex items-start sm:items-center sm:justify-center\\\">\\n <div\\n class=\\\"w-full h-full md:h-auto justify-start md:justify-between p-6 lg:p-11 rounded-xl bg-[--rt-signin-inner-background] flex flex-col lg:flex-row lg:flex-row md:justify-between xl:w-[860px] lg:w-[800px] md:w-[600px]\\\"\\n >\\n <!-- header -->\\n <div class=\\\"flex flex-col py-6\\\">\\n <div class=\\\"text-3xl font-medium mb-3 ml-2\\\" i18n>Create your {{ environment.name }} account</div>\\n <div class=\\\"text-md ml-2\\\" i18n>Sign up, Get more.</div>\\n </div>\\n <div class=\\\"min-w-[320px]\\\">\\n <form [formGroup]=\\\"signupForm\\\" (submit)=\\\"submit()\\\" class=\\\"flex flex-col\\\">\\n @if (usePhone) {\\n <!-- name -->\\n <mat-form-field appearance=\\\"fill\\\">\\n <mat-label i18n> Name </mat-label>\\n <input matInput formControlName=\\\"name\\\" required />\\n @if (signupForm.controls['name'].touched && signupForm.controls['name'].invalid) {\\n <mat-error>\\n @if (signupForm.controls['name'].errors?.['required']) {\\n <span i18n>Name required</span>\\n }\\n </mat-error>\\n }\\n </mat-form-field>\\n <!-- phone -->\\n <mat-form-field appearance=\\\"fill\\\">\\n <mat-label i18n> Phone </mat-label>\\n <input matInput formControlName=\\\"phone\\\" required />\\n @if (signupForm.controls['phone'].touched && signupForm.controls['phone'].invalid) {\\n <mat-error>\\n @if (signupForm.controls['phone'].errors?.['required']) {\\n <span i18n>Phone is required</span>\\n }\\n @if (signupForm.controls['phone'].errors?.['pattern']) {\\n <span i18n>Invalid Phone </span>\\n }\\n </mat-error>\\n }\\n </mat-form-field>\\n <!-- phone code -->\\n <div class=\\\"flex justify-between items-center gap-3\\\">\\n <mat-form-field appearance=\\\"fill\\\" class=\\\"w-full\\\">\\n <mat-label i18n> Code </mat-label>\\n <input matInput type=\\\"text\\\" formControlName=\\\"code\\\" autocomplete=\\\"new-password\\\" required />\\n @if (signupForm.controls['code'].touched && signupForm.controls['code'].invalid) {\\n <mat-error>\\n @if (signupForm.controls['code'].errors?.['required']) {\\n <span i18n>Code is required</span>\\n }\\n </mat-error>\\n }\\n </mat-form-field>\\n <button mat-button (click)=\\\"sendSMSCode()\\\" [disabled]=\\\"countDown\\\" class=\\\"w-[128px] text-white text-center\\\">\\n <span>{{ showButtonText }}</span>\\n </button>\\n </div>\\n }\\n <div class=\\\"flex flex-col md:flex-row gap-3 items-center\\\">\\n <!--First name -->\\n <mat-form-field appearance=\\\"fill\\\">\\n <mat-label i18n> Fist name </mat-label>\\n <input matInput formControlName=\\\"firstName\\\" required />\\n @if (signupForm.controls['firstName'].touched && signupForm.controls['firstName'].invalid) {\\n <mat-error>\\n @if (signupForm.controls['firstName'].errors?.['required']) {\\n <span i18n>First name required</span>\\n }\\n </mat-error>\\n }\\n </mat-form-field>\\n <!-- Last name -->\\n <mat-form-field appearance=\\\"fill\\\">\\n <mat-label i18n> Last name </mat-label>\\n <input matInput formControlName=\\\"lastName\\\" required />\\n @if (signupForm.controls['lastName'].touched && signupForm.controls['lastName'].invalid) {\\n <mat-error>\\n @if (signupForm.controls['lastName'].errors?.['required']) {\\n <span i18n>Last name required</span>\\n }\\n </mat-error>\\n }\\n </mat-form-field>\\n </div>\\n <!-- Email account -->\\n <mat-form-field appearance=\\\"fill\\\">\\n <mat-label i18n> Email </mat-label>\\n <input matInput formControlName=\\\"email\\\" required />\\n @if (signupForm.controls['email'].touched && signupForm.controls['email'].invalid) {\\n <mat-error>\\n @if (signupForm.controls['email'].errors?.['required']) {\\n <span i18n>Email is required</span>\\n }\\n @if (signupForm.controls['email'].errors?.['pattern']) {\\n <span i18n>Invalid email</span>\\n }\\n </mat-error>\\n }\\n </mat-form-field>\\n <!-- Password -->\\n <mat-form-field appearance=\\\"fill\\\">\\n <mat-label i18n> Password </mat-label>\\n <input matInput formControlName=\\\"password\\\" type=\\\"password\\\" autocomplete=\\\"password\\\" />\\n @if (signupForm.controls['password'].touched && signupForm.controls['password'].invalid) {\\n <mat-error>\\n @if (signupForm.controls['password'].errors?.['required']) {\\n <span i18n>Password required</span>\\n }\\n @if (signupForm.controls['password'].errors?.['minlength']) {\\n <span i18n>Password too short</span>\\n }\\n </mat-error>\\n }\\n </mat-form-field>\\n\\n <!-- password confirm -->\\n <mat-form-field appearance=\\\"fill\\\">\\n <mat-label i18n> Password </mat-label>\\n <input matInput formControlName=\\\"rePassword\\\" type=\\\"password\\\" autocomplete=\\\"rePassword\\\" />\\n @if (signupForm.controls['rePassword'].touched && signupForm.controls['rePassword'].invalid) {\\n <mat-error>\\n @if (signupForm.controls['rePassword'].errors?.['required']) {\\n <span i18n>Password required</span>\\n }\\n @if (signupForm.controls['rePassword'].errors?.['minlength']) {\\n <span i18n>Password too short</span>\\n }\\n </mat-error>\\n }\\n </mat-form-field>\\n </form>\\n <div class=\\\"flex justify-between items-center py-3 pl-2\\\">\\n <a mat-button [href]=\\\"signInUrl\\\" i18n>Sign in</a>\\n <button mat-flat-button (click)=\\\"submit()\\\" class=\\\"w-[128px]\\\" i18n>Sign up</button>\\n </div>\\n </div>\\n </div>\\n</div>\\n\", styles: [\"rolatech-account-signup{height:100%;color:var(--rt-text-primary, #0f0f0f);background:var(--rt-signin-background)}@media (max-width: 600px){rolatech-account-signup{background:var(--rt-signin-inner-background)}}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,input:-webkit-autofill:active{transition:background-color 0s 600000s,color 0s 600000s!important}mat-form-field{width:100%}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lnbnVwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItYWNjb3VudC9zcmMvbGliL3BhZ2VzL2FjY291bnRzL3NpZ251cC9zaWdudXAuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhci1hY2NvdW50L3NyYy9saWIvcGFnZXMvYWNjb3VudHMvc2lnbnVwL3NpZ251cC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBVSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RSxPQUFPLEVBQUUsV0FBVyxFQUFhLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDbkYsT0FBTyxFQUFFLHVCQUF1QixFQUFFLGFBQWEsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3RGLE9BQU8sRUFBRSxXQUFXLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7Ozs7OztBQVF0RSxNQUFNLE9BQU8sZUFBZ0IsU0FBUSxhQUFhO0lBUGxEOztRQVFFLGdCQUFXLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ2pDLGdCQUFXLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ2xDLG9CQUFlLEdBQUcsTUFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQzFDLGdCQUFXLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ2xDLFdBQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFeEIsYUFBUSxHQUFHLEdBQUcsQ0FBQztRQUNmLGNBQVMsR0FBRyxFQUFFLENBQUM7UUFDZixhQUFRLEdB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SixJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUMzQixPQUFPO1FBQ1QsQ0FBQztRQUNELElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUMsU0FBUyxDQUFDO1lBQ3ZELElBQUksRUFBRSxDQUFDLEdBQUcsRUFBRSxFQUFFO2dCQUNaLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQ2pCLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLFlBQVksQ0FBQztZQUM1RixDQUFDO1lBQ0QsS0FBSyxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUU7Z0JBQ2YsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQzNDLENBQUM7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDOzhHQTFFVSxlQUFlO2tHQUFmLGVBQWUsMEdDWjVCLHN4TUF5SUEsdWREbklZLG1CQUFtQix5cUNBQUUsdUJBQXVCOzsyRkFNM0MsZUFBZTtrQkFQM0IsU0FBUzs4QkFDQyxDQUFDLG1CQUFtQixFQUFFLHVCQUF1QixDQUFDLFlBQzdDLHlCQUF5QixpQkFHcEIsaUJBQWlCLENBQUMsSUFBSSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgaW5qZWN0LCBPbkluaXQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQnVpbGRlciwgRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQW5ndWxhckNvbW1vbk1vZHVsZSwgQVBQX0NPTkZJRywgV0lORE9XIH0gZnJvbSAnQHJvbGF0ZWNoL2FuZ3VsYXItY29tbW9uJztcbmltcG9ydCB7IEFuZ3VsYXJDb21wb25lbnRzTW9kdWxlLCBCYXNlQ29tcG9uZW50IH0gZnJvbSAnQHJvbGF0ZWNoL2FuZ3VsYXItY29tcG9uZW50cyc7XG5pbXBvcnQgeyBBdXRoU2VydmljZSwgQXV0aFVzZXJTZXJ2aWNlIH0gZnJvbSAnQHJvbGF0ZWNoL2FuZ3VsYXItYXV0aCc7XG5AQ29tcG9uZW50KHtcbiAgaW1wb3J0czogW0FuZ3VsYXJDb21tb25Nb2R1bGUsIEFuZ3VsYXJDb21wb25lbnRzTW9kdWxlXSxcbiAgc2VsZWN0b3I6ICdyb2xhdGVjaC1hY2NvdW50LXNpZ251cCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9zaWdudXAuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zaWdudXAuY29tcG9uZW50LnNjc3MnXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbn0pXG5leHBvcnQgY2xhc3MgU2lnbnVwQ29tcG9uZW50IGV4dGVuZHMgQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIGVudmlyb25tZW50ID0gaW5qZWN0KEFQUF9DT05GSUcpO1xuICBhdXRoU2VydmljZSA9IGluamVjdChBdXRoU2VydmljZSk7XG4gIGF1dGhVc2VyU2VydmljZSA9IGluamVjdChBdXRoVXNlclNlcnZpY2UpO1xuICBmb3JtQnVpbGRlciA9IGluamVjdChGb3JtQnVpbGRlcik7XG4gIHdpbmRvdyA9IGluamVjdChXSU5ET1cpO1xuICBzaWdudXBGb3JtITogRm9ybUdyb3VwO1xuICBjb250aW51ZSA9ICcvJztcbiAgc2lnbkluVXJsID0gJyc7XG4gIHVzZVBob25lID0gZmFsc2VcbiAgY291bnREb3duID0gZmFsc2U7XG4gIGNvdW50RG93blRpbWUgPSA2MDtcbiAgc2hvd0J1dHRvblRleHQgPSAnU2VuZCc7XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy50aXRsZVNlcnZpY2Uuc2V0VGl0bGUoJ1NpZ24gdXAnKTtcbiAgICB0aGlzLnNpZ251cEZvcm0gPSB0aGlzLmZvcm1CdWlsZGVyLmdyb3VwKHtcbiAgICAgIGZpcnN0TmFtZTogW251bGwsIFZhbGlkYXRvcnMucmVxdWlyZWRdLFxuICAgICAgbGFzdE5hbWU6IFtudWxsLCBWYWxpZGF0b3JzLnJlcXVpcmVkXSxcbiAgICAgIGVtYWlsOiBbbnVsbCwgW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMucGF0dGVybignXlthLXpBLVowLTkuXyUrLV0rQFthLXpBLVowLTkuLV0rLlthLXpBLVpdezIsfSQnKV1dLFxuICAgICAgcGFzc3dvcmQ6IFtudWxsLCBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgVmFsaWRhdG9ycy5taW5MZW5ndGgoNildXSxcbiAgICAgIHJlUGFzc3dvcmQ6IFtudWxsLCBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgVmFsaWRhdG9ycy5taW5MZW5ndGgoNildXSxcbiAgICB9KTtcbiAgICAvLyB0aGlzLnNpZ251cEZvcm0gPSB0aGlzLmZvcm1CdWlsZGVyLmdyb3VwKHtcbiAgICAvLyAgIG5hbWU6IFtudWxsLCBWYWxpZGF0b3JzLnJlcXVpcmVkXSxcbiAgICAvLyAgIHBob25lOiBbbnVsbCwgW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMucGF0dGVybignMSgzfDR8NXw2fDd8OHw5KVxcXFxkezl9JyldXSxcbiAgICAvLyAgIGNvZGU6IFtudWxsLCBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgVmFsaWRhdG9ycy5taW5MZW5ndGgoNildXSxcbiAgICAvLyAgIHBhc3N3b3JkOiBbbnVsbCwgW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMubWluTGVuZ3RoKDYpXV0sXG4gICAgLy8gICByZVBhc3N3b3JkOiBbbnVsbCwgW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMubWluTGVuZ3RoKDYpXV0sXG4gICAgLy8gfSk7XG5cbiAgICB0aGlzLmNvbnRpbnVlID0gdGhpcy5yb3V0ZS5zbmFwc2hvdC5xdWVyeVBhcmFtc1snY29udGludWUnXSB8fCAnLyc7XG4gICAgY29uc3QgZGVjb2RlZFVybCA9IGRlY29kZVVSSUNvbXBvbmVudCh0aGlzLmNvbnRpbnVlKTtcbiAgICB0aGlzLnNpZ25JblVybCA9IGBzaWduaW4/Y29udGludWU9JHtkZWNvZGVkVXJsfWA7XG4gIH1cbiAgc2VuZFNNU0NvZGUoKSB7XG4gICAgY29uc3QgcGhvbmVDb250cm9sID0gdGhpcy5zaWdudXBGb3JtLmdldCgncGhvbmUnKTtcbiAgICBpZiAoIXBob25lQ29udHJvbD8udmFsaWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3QgcGhvbmUgPSBwaG9uZUNvbnRyb2wudmFsdWU7XG4gICAgdGhpcy5jb3VudERvd24gPSB0cnVlO1xuICAgIGNvbnN0IHN0YXJ0ID0gc2V0SW50ZXJ2YWwoKCkgPT4ge1xuICAgICAgaWYgKHRoaXMuY291bnREb3duVGltZSA+PSAwKSB7XG4gICAgICAgIHRoaXMuc2hvd0J1dHRvblRleHQgPSBgJHt0aGlzLmNvdW50RG93blRpbWUtLX1zIHJlc2VuZGA7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjbGVhckludGVydmFsKHN0YXJ0KTtcbiAgICAgICAgdGhpcy5zaG93QnV0dG9uVGV4dCA9ICdSZXNlbmQnO1xuICAgICAgICB0aGlzLmNvdW50RG93biA9IGZhbHNlO1xuICAgICAgICB0aGlzLmNvdW50RG93blRpbWUgPSA2MDtcbiAgICAgIH1cbiAgICB9LCAxMDAwKTtcbiAgICB0aGlzLmF1dGhVc2VyU2VydmljZS5zZW5kU01TQ29kZSgnKzg2JywgcGhvbmUpLnN1YnNjcmliZSh7XG4gICAgICBuZXh0OiAocmVzKSA9PiB7XG4gICAgICAgIHRoaXMuc25hY2tCYXJTZXJ2aWNlLm9wZW4oJ1N1Y2Nlc3MnKTtcbiAgICAgIH0sXG4gICAgICBlcnJvcjogKGVycm9yKSA9PiB7XG4gICAgICAgIHRoaXMuc25hY2tCYXJTZXJ2aWNlLm9wZW4oZXJyb3IubWVzc2FnZSk7XG4gICAgICB9LFxuICAgIH0pO1xuICB9XG4gIHN1Ym1pdCgpIHtcbiAgICBpZiAoIXRoaXMuc2lnbnVwRm9ybS52YWxpZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmF1dGhTZXJ2aWNlLnNpZ251cCh0aGlzLnNpZ251cEZvcm0udmFsdWUpLnN1YnNjcmliZSh7XG4gICAgICBuZXh0OiAocmVzKSA9PiB7XG4gICAgICAgIGNvbnNvbGUubG9nKHJlcyk7XG4gICAgICAgIHRoaXMud2luZG93LmxvY2F0aW9uLmhyZWYgPSB0aGlzLmNvbnRpbnVlID8gdGhpcy5jb250aW51ZSA6IHRoaXMuZW52aXJvbm1lbnQubXlhY2NvdW50VXJsO1xuICAgICAgfSxcbiAgICAgIGVycm9yOiAoZXJyb3IpID0+IHtcbiAgICAgICAgdGhpcy5zbmFja0JhclNlcnZpY2Uub3BlbihlcnJvci5tZXNzYWdlKTtcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJoLWZ1bGwgZmxleCBpdGVtcy1zdGFydCBzbTppdGVtcy1jZW50ZXIgc206anVzdGlmeS1jZW50ZXJcIj5cbiAgPGRpdlxuICAgIGNsYXNzPVwidy1mdWxsIGgtZnVsbCBtZDpoLWF1dG8ganVzdGlmeS1zdGFydCBtZDpqdXN0aWZ5LWJldHdlZW4gcC02IGxnOnAtMTEgcm91bmRlZC14bCBiZy1bLS1ydC1zaWduaW4taW5uZXItYmFja2dyb3VuZF0gZmxleCBmbGV4LWNvbCBsZzpmbGV4LXJvdyBsZzpmbGV4LXJvdyBtZDpqdXN0aWZ5LWJldHdlZW4geGw6dy1bODYwcHhdIGxnOnctWzgwMHB4XSBtZDp3LVs2MDBweF1cIlxuICA+XG4gICAgPCEtLSBoZWFkZXIgLS0+XG4gICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2wgcHktNlwiPlxuICAgICAgPGRpdiBjbGFzcz1cInRleHQtM3hsIGZvbnQtbWVkaXVtIG1iLTMgbWwtMlwiIGkxOG4+Q3JlYXRlIHlvdXIge3sgZW52aXJvbm1lbnQubmFtZSB9fSBhY2NvdW50PC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwidGV4dC1tZCBtbC0yXCIgaTE4bj5TaWduIHVwLCBHZXQgbW9yZS48L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwibWluLXctWzMyMHB4XVwiPlxuICAgICAgPGZvcm0gW2Zvcm1Hcm91cF09XCJzaWdudXBGb3JtXCIgKHN1Ym1pdCk9XCJzdWJtaXQoKVwiIGNsYXNzPVwiZmxleCBmbGV4LWNvbFwiPlxuICAgICAgICBAaWYgKHVzZVBob25lKSB7XG4gICAgICAgICAgPCEtLSBuYW1lIC0tPlxuICAgICAgICAgIDxtYXQtZm9ybS1maWVsZCBhcHBlYXJhbmNlPVwiZmlsbFwiPlxuICAgICAgICAgICAgPG1hdC1sYWJlbCBpMThuPiBOYW1lIDwvbWF0LWxhYmVsPlxuICAgICAgICAgICAgPGlucHV0IG1hdElucHV0IGZvcm1Db250cm9sTmFtZT1cIm5hbWVcIiByZXF1aXJlZCAvPlxuICAgICAgICAgICAgQGlmIChzaWdudXBGb3JtLmNvbnRyb2xzWyduYW1lJ10udG91Y2hlZCAmJiBzaWdudXBGb3JtLmNvbnRyb2xzWyduYW1lJ10uaW52YWxpZCkge1xuICAgICAgICAgICAgICA8bWF0LWVycm9yPlxuICAgICAgICAgICAgICAgIEBpZiAoc2lnbnVwRm9ybS5jb250cm9sc1snbmFtZSddLmVycm9ycz8uWydyZXF1aXJlZCddKSB7XG4gICAgICAgICAgICAgICAgICA8c3BhbiBpMThuPk5hbWUgcmVxdWlyZWQ8L3NwYW4+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICA8L21hdC1lcnJvcj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxuICAgICAgICAgIDwhLS0gcGhvbmUgLS0+XG4gICAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGFwcGVhcmFuY2U9XCJmaWxsXCI+XG4gICAgICAgICAgICA8bWF0LWxhYmVsIGkxOG4+IFBob25lIDwvbWF0LWxhYmVsPlxuICAgICAgICAgICAgPGlucHV0IG1hdElucHV0IGZvcm1Db250cm9sTmFtZT1cInBob25lXCIgcmVxdWlyZWQgLz5cbiAgICAgICAgICAgIEBpZiAoc2lnbnVwRm9ybS5jb250cm9sc1sncGhvbmUnXS50b3VjaGVkICYmIHNpZ251cEZvcm0uY29udHJvbHNbJ3Bob25lJ10uaW52YWxpZCkge1xuICAgICAgICAgICAgICA8bWF0LWVycm9yPlxuICAgICAgICAgICAgICAgIEBpZiAoc2lnbnVwRm9ybS5jb250cm9sc1sncGhvbmUnXS5lcnJvcnM/LlsncmVxdWlyZWQnXSkge1xuICAgICAgICAgICAgICAgICAgPHNwYW4gaTE4bj5QaG9uZSBpcyByZXF1aXJlZDwvc3Bhbj5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQGlmIChzaWdudXBGb3JtLmNvbnRyb2xzWydwaG9uZSddLmVycm9ycz8uWydwYXR0ZXJuJ10pIHtcbiAgICAgICAgICAgICAgICAgIDxzcGFuIGkxOG4+SW52YWxpZCBQaG9uZSA8L3NwYW4+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICA8L21hdC1lcnJvcj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxuICAgICAgICAgIDwhLS0gcGhvbmUgY29kZSAtLT5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBqdXN0aWZ5LWJldHdlZW4gaXRlbXMtY2VudGVyIGdhcC0zXCI+XG4gICAgICAgICAgICA8bWF0LWZvcm0tZmllbGQgYXBwZWFyYW5jZT1cImZpbGxcIiBjbGFzcz1cInctZnVsbFwiPlxuICAgICAgICAgICAgICA8bWF0LWxhYmVsIGkxOG4+IENvZGUgPC9tYXQtbGFiZWw+XG4gICAgICAgICAgICAgIDxpbnB1dCBtYXRJbnB1dCB0eXBlPVwidGV4dFwiIGZvcm1Db250cm9sTmFtZT1cImNvZGVcIiBhdXRvY29tcGxldGU9XCJuZXctcGFzc3dvcmRcIiByZXF1aXJlZCAvPlxuICAgICAgICAgICAgICBAaWYgKHNpZ251cEZvcm0uY29udHJvbHNbJ2NvZGUnXS50b3VjaGVkICYmIHNpZ251cEZvcm0uY29udHJvbHNbJ2NvZGUnXS5pbnZhbGlkKSB7XG4gICAgICAgICAgICAgICAgPG1hdC1lcnJvcj5cbiAgICAgICAgICAgICAgICAgIEBpZiAoc2lnbnVwRm9ybS5jb250cm9sc1snY29kZSddLmVycm9ycz8uWydyZXF1aXJlZCddKSB7XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGkxOG4+Q29kZSBpcyByZXF1aXJlZDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICA8L21hdC1lcnJvcj5cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICAgICAgICAgIDxidXR0b24gbWF0LWJ1dHRvbiAoY2xpY2spPVwic2VuZFNNU0NvZGUoKVwiIFtkaXNhYmxlZF09XCJjb3VudERvd25cIiBjbGFzcz1cInctWzEyOHB4XSB0ZXh0LXdoaXRlIHRleHQtY2VudGVyXCI+XG4gICAgICAgICAgICAgIDxzcGFuPnt7IHNob3dCdXR0b25UZXh0IH19PC9zcGFuPlxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIH1cbiAgICAgICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2wgbWQ6ZmxleC1yb3cgZ2FwLTMgaXRlbXMtY2VudGVyXCI+XG4gICAgICAgICAgPCEtLUZpcnN0IG5hbWUgLS0+XG4gICAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGFwcGVhcmFuY2U9XCJmaWxsXCI+XG4gICAgICAgICAgICA8bWF0LWxhYmVsIGkxOG4+IEZpc3QgbmFtZSA8L21hdC1sYWJlbD5cbiAgICAgICAgICAgIDxpbnB1dCBtYXRJbnB1dCBmb3JtQ29udHJvbE5hbWU9XCJmaXJzdE5hbWVcIiByZXF1aXJlZCAvPlxuICAgICAgICAgICAgQGlmIChzaWdudXBGb3JtLmNvbnRyb2xzWydmaXJzdE5hbWUnXS50b3VjaGVkICYmIHNpZ251cEZvcm0uY29udHJvbHNbJ2ZpcnN0TmFtZSddLmludmFsaWQpIHtcbiAgICAgICAgICAgICAgPG1hdC1lcnJvcj5cbiAgICAgICAgICAgICAgICBAaWYgKHNpZ251cEZvcm0uY29udHJvbHNbJ2ZpcnN0TmFtZSddLmVycm9ycz8uWydyZXF1aXJlZCddKSB7XG4gICAgICAgICAgICAgICAgICA8c3BhbiBpMThuPkZpcnN0IG5hbWUgcmVxdWlyZWQ8L3NwYW4+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICA8L21hdC1lcnJvcj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxuICAgICAgICAgIDwhLS0gTGFzdCBuYW1lIC0tPlxuICAgICAgICAgIDxtYXQtZm9ybS1maWVsZCBhcHBlYXJhbmNlPVwiZmlsbFwiPlxuICAgICAgICAgICAgPG1hdC1sYWJlbCBpMThuPiBMYXN0IG5hbWUgPC9tYXQtbGFiZWw+XG4gICAgICAgICAgICA8aW5wdXQgbWF0SW5wdXQgZm9ybUNvbnRyb2xOYW1lPVwibGFzdE5hbWVcIiByZXF1aXJlZCAvPlxuICAgICAgICAgICAgQGlmIChzaWdudXBGb3JtLmNvbnRyb2xzWydsYXN0TmFtZSddLnRvdWNoZWQgJiYgc2lnbnVwRm9ybS5jb250cm9sc1snbGFzdE5hbWUnXS5pbnZhbGlkKSB7XG4gICAgICAgICAgICAgIDxtYXQtZXJyb3I+XG4gICAgICAgICAgICAgICAgQGlmIChzaWdudXBGb3JtLmNvbnRyb2xzWydsYXN0TmFtZSddLmVycm9ycz8uWydyZXF1aXJlZCddKSB7XG4gICAgICAgICAgICAgICAgICA8c3BhbiBpMThuPkxhc3QgbmFtZSByZXF1aXJlZDwvc3Bhbj5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIDwvbWF0LWVycm9yPlxuICAgICAgICAgICAgfVxuICAgICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8IS0tIEVtYWlsIGFjY291bnQgLS0+XG4gICAgICAgIDxtYXQtZm9ybS1maWVsZCBhcHBlYXJhbmNlPVwiZmlsbFwiPlxuICAgICAgICAgIDxtYXQtbGFiZWwgaTE4bj4gRW1haWwgPC9tYXQtbGFiZWw+XG4gICAgICAgICAgPGlucHV0IG1hdElucHV0IGZvcm1Db250cm9sTmFtZT1cImVtYWlsXCIgcmVxdWlyZWQgLz5cbiAgICAgICAgICBAaWYgKHNpZ251cEZvcm0uY29udHJvbHNbJ2VtYWlsJ10udG91Y2hlZCAmJiBzaWdudXBGb3JtLmNvbnRyb2xzWydlbWFpbCddLmludmFsaWQpIHtcbiAgICAgICAgICAgIDxtYXQtZXJyb3I+XG4gICAgICAgICAgICAgIEBpZiAoc2lnbnVwRm9ybS5jb250cm9sc1snZW1haWwnXS5lcnJvcnM/LlsncmVxdWlyZWQnXSkge1xuICAgICAgICAgICAgICAgIDxzcGFuIGkxOG4+RW1haWwgaXMgcmVxdWlyZWQ8L3NwYW4+XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgQGlmIChzaWdudXBGb3JtLmNvbnRyb2xzWydlbWFpbCddLmVycm9ycz8uWydwYXR0ZXJuJ10pIHtcbiAgICAgICAgICAgICAgICA8c3BhbiBpMThuPkludmFsaWQgZW1haWw8L3NwYW4+XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDwvbWF0LWVycm9yPlxuICAgICAgICAgIH1cbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICAgICAgPCEtLSBQYXNzd29yZCAtLT5cbiAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGFwcGVhcmFuY2U9XCJmaWxsXCI+XG4gICAgICAgICAgPG1hdC1sYWJlbCBpMThuPiBQYXNzd29yZCA8L21hdC1sYWJlbD5cbiAgICAgICAgICA8aW5wdXQgbWF0SW5wdXQgZm9ybUNvbnRyb2xOYW1lPVwicGFzc3dvcmRcIiB0eXBlPVwicGFzc3dvcmRcIiBhdXRvY29tcGxldGU9XCJwYXNzd29yZFwiIC8+XG4gICAgICAgICAgQGlmIChzaWdudXBGb3JtLmNvbnRyb2xzWydwYXNzd29yZCddLnRvdWNoZWQgJiYgc2lnbnVwRm9ybS5jb250cm9sc1sncGFzc3dvcmQnXS5pbnZhbGlkKSB7XG4gICAgICAgICAgICA8bWF0LWVycm9yPlxuICAgICAgICAgICAgICBAaWYgKHNpZ251cEZvcm0uY29udHJvbHNbJ3Bhc3N3b3JkJ10uZXJyb3JzPy5bJ3JlcXVpcmVkJ10pIHtcbiAgICAgICAgICAgICAgICA8c3BhbiBpMThuPlBhc3N3b3JkIHJlcXVpcmVkPC9zcGFuPlxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIEBpZiAoc2lnbnVwRm9ybS5jb250cm9sc1sncGFzc3dvcmQnXS5lcnJvcnM/LlsnbWlubGVuZ3RoJ10pIHtcbiAgICAgICAgICAgICAgICA8c3BhbiBpMThuPlBhc3N3b3JkIHRvbyBzaG9ydDwvc3Bhbj5cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgPC9tYXQtZXJyb3I+XG4gICAgICAgICAgfVxuICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxuXG4gICAgICAgIDwhLS0gcGFzc3dvcmQgY29uZmlybSAtLT5cbiAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGFwcGVhcmFuY2U9XCJmaWxsXCI+XG4gICAgICAgICAgPG1hdC1sYWJlbCBpMThuPiBQYXNzd29yZCA8L21hdC1sYWJlbD5cbiAgICAgICAgICA8aW5wdXQgbWF0SW5wdXQgZm9ybUNvbnRyb2xOYW1lPVwicmVQYXNzd29yZFwiIHR5cGU9XCJwYXNzd29yZFwiIGF1dG9jb21wbGV0ZT1cInJlUGFzc3dvcmRcIiAvPlxuICAgICAgICAgIEBpZiAoc2lnbnVwRm9ybS5jb250cm9sc1sncmVQYXNzd29yZCddLnRvdWNoZWQgJiYgc2lnbnVwRm9ybS5jb250cm9sc1sncmVQYXNzd29yZCddLmludmFsaWQpIHtcbiAgICAgICAgICAgIDxtYXQtZXJyb3I+XG4gICAgICAgICAgICAgIEBpZiAoc2lnbnVwRm9ybS5jb250cm9sc1sncmVQYXNzd29yZCddLmVycm9ycz8uWydyZXF1aXJlZCddKSB7XG4gICAgICAgICAgICAgICAgPHNwYW4gaTE4bj5QYXNzd29yZCByZXF1aXJlZDwvc3Bhbj5cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBAaWYgKHNpZ251cEZvcm0uY29udHJvbHNbJ3JlUGFzc3dvcmQnXS5lcnJvcnM/LlsnbWlubGVuZ3RoJ10pIHtcbiAgICAgICAgICAgICAgICA8c3BhbiBpMThuPlBhc3N3b3JkIHRvbyBzaG9ydDwvc3Bhbj5cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgPC9tYXQtZXJyb3I+XG4gICAgICAgICAgfVxuICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxuICAgICAgPC9mb3JtPlxuICAgICAgPGRpdiBjbGFzcz1cImZsZXgganVzdGlmeS1iZXR3ZWVuIGl0ZW1zLWNlbnRlciBweS0zIHBsLTJcIj5cbiAgICAgICAgPGEgbWF0LWJ1dHRvbiBbaHJlZl09XCJzaWduSW5VcmxcIiBpMThuPlNpZ24gaW48L2E+XG4gICAgICAgIDxidXR0b24gbWF0LWZsYXQtYnV0dG9uIChjbGljayk9XCJzdWJtaXQoKVwiIGNsYXNzPVwidy1bMTI4cHhdXCIgaTE4bj5TaWduIHVwPC9idXR0b24+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==","import { AuthGuard, ForbiddenComponent, UnauthorizedComponent } from '@rolatech/angular-auth';\nimport { ForgotPasswordComponent } from './components/forgot-password/forgot-password.component';\nimport { LogoutComponent } from './components/logout/logout.component';\nimport { PasswordresetComponent } from './components/passwordreset/passwordreset.component';\nimport { SigninComponent } from './pages/accounts/signin/signin.component';\nimport { SignupComponent } from './pages/accounts/signup/signup.component';\nexport const accountRoutes = [\n {\n path: '',\n pathMatch: 'full',\n redirectTo: 'signin',\n },\n { path: 'signin', canActivate: [AuthGuard], component: SigninComponent, data: { title: 'Signin' } },\n { path: 'signup', component: SignupComponent, data: { title: 'Signup' } },\n { path: 'logout', component: LogoutComponent },\n // { path: 'login', loadChildren: () => import('./components/login/login.routes') },\n {\n path: 'passwordreset/:token',\n component: PasswordresetComponent,\n data: { title: 'Password Reset' },\n },\n {\n path: 'forgot',\n component: ForgotPasswordComponent,\n data: { title: 'Forgot Password' },\n },\n {\n path: 'unauthorized',\n component: UnauthorizedComponent,\n },\n {\n path: 'forbidden',\n component: ForbiddenComponent,\n },\n];\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3VudC5yb3V0ZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyLWFjY291bnQvc3JjL2xpYi9hY2NvdW50LnJvdXRlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsU0FBUyxFQUFFLGtCQUFrQixFQUFFLHFCQUFxQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDOUYsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sd0RBQXdELENBQUM7QUFDakcsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBQzVGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUMzRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFFM0UsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUFXO0lBQ25DO1FBQ0UsSUFBSSxFQUFFLEVBQUU7UUFDUixTQUFTLEVBQUUsTUFBTTtRQUNqQixVQUFVLEVBQUUsUUFBUTtLQUNyQjtJQUNELEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUUsQ0FBQyxTQUFTLENBQUMsRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFLElBQUksRUFBRSxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsRUFBRTtJQUNuRyxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSxJQUFJLEVBQUUsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLEVBQUU7SUFDekUsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxlQUFlLEVBQUU7SUFDOUMsb0ZBQW9GO0lBQ3BGO1FBQ0UsSUFBSSxFQUFFLHNCQUFzQjtRQUM1QixTQUFTLEVBQUUsc0JBQXNCO1FBQ2pDLElBQUksRUFBRSxFQUFFLEtBQUssRUFBRSxnQkFBZ0IsRUFBRTtLQUNsQztJQUNEO1FBQ0UsSUFBSSxFQUFFLFFBQVE7UUFDZCxTQUFTLEVBQUUsdUJBQXVCO1FBQ2xDLElBQUksRUFBRSxFQUFFLEtBQUssRUFBRSxpQkFBaUIsRUFBRTtLQUNuQztJQUNEO1FBQ0UsSUFBSSxFQUFFLGNBQWM7UUFDcEIsU0FBUyxFQUFFLHFCQUFxQjtLQUNqQztJQUNEO1FBQ0UsSUFBSSxFQUFFLFdBQVc7UUFDakIsU0FBUyxFQUFFLGtCQUFrQjtLQUM5QjtDQUNGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSb3V0ZXMgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgQXV0aEd1YXJkLCBGb3JiaWRkZW5Db21wb25lbnQsIFVuYXV0aG9yaXplZENvbXBvbmVudCB9IGZyb20gJ0Byb2xhdGVjaC9hbmd1bGFyLWF1dGgnO1xuaW1wb3J0IHsgRm9yZ290UGFzc3dvcmRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvZm9yZ290LXBhc3N3b3JkL2ZvcmdvdC1wYXNzd29yZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgTG9nb3V0Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2xvZ291dC9sb2dvdXQuY29tcG9uZW50JztcbmltcG9ydCB7IFBhc3N3b3JkcmVzZXRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvcGFzc3dvcmRyZXNldC9wYXNzd29yZHJlc2V0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTaWduaW5Db21wb25lbnQgfSBmcm9tICcuL3BhZ2VzL2FjY291bnRzL3NpZ25pbi9zaWduaW4uY29tcG9uZW50JztcbmltcG9ydCB7IFNpZ251cENvbXBvbmVudCB9IGZyb20gJy4vcGFnZXMvYWNjb3VudHMvc2lnbnVwL3NpZ251cC5jb21wb25lbnQnO1xuXG5leHBvcnQgY29uc3QgYWNjb3VudFJvdXRlczogUm91dGVzID0gW1xuICB7XG4gICAgcGF0aDogJycsXG4gICAgcGF0aE1hdGNoOiAnZnVsbCcsXG4gICAgcmVkaXJlY3RUbzogJ3NpZ25pbicsXG4gIH0sXG4gIHsgcGF0aDogJ3NpZ25pbicsIGNhbkFjdGl2YXRlOiBbQXV0aEd1YXJkXSwgY29tcG9uZW50OiBTaWduaW5Db21wb25lbnQsIGRhdGE6IHsgdGl0bGU6ICdTaWduaW4nIH0gfSxcbiAgeyBwYXRoOiAnc2lnbnVwJywgY29tcG9uZW50OiBTaWdudXBDb21wb25lbnQsIGRhdGE6IHsgdGl0bGU6ICdTaWdudXAnIH0gfSxcbiAgeyBwYXRoOiAnbG9nb3V0JywgY29tcG9uZW50OiBMb2dvdXRDb21wb25lbnQgfSxcbiAgLy8geyBwYXRoOiAnbG9naW4nLCBsb2FkQ2hpbGRyZW46ICgpID0+IGltcG9ydCgnLi9jb21wb25lbnRzL2xvZ2luL2xvZ2luLnJvdXRlcycpIH0sXG4gIHtcbiAgICBwYXRoOiAncGFzc3dvcmRyZXNldC86dG9rZW4nLFxuICAgIGNvbXBvbmVudDogUGFzc3dvcmRyZXNldENvbXBvbmVudCxcbiAgICBkYXRhOiB7IHRpdGxlOiAnUGFzc3dvcmQgUmVzZXQnIH0sXG4gIH0sXG4gIHtcbiAgICBwYXRoOiAnZm9yZ290JyxcbiAgICBjb21wb25lbnQ6IEZvcmdvdFBhc3N3b3JkQ29tcG9uZW50LFxuICAgIGRhdGE6IHsgdGl0bGU6ICdGb3Jnb3QgUGFzc3dvcmQnIH0sXG4gIH0sXG4gIHtcbiAgICBwYXRoOiAndW5hdXRob3JpemVkJyxcbiAgICBjb21wb25lbnQ6IFVuYXV0aG9yaXplZENvbXBvbmVudCxcbiAgfSxcbiAge1xuICAgIHBhdGg6ICdmb3JiaWRkZW4nLFxuICAgIGNvbXBvbmVudDogRm9yYmlkZGVuQ29tcG9uZW50LFxuICB9LFxuXTtcbiJdfQ==","export const myaccountRoutes = [\n {\n path: '',\n loadComponent: () => import('./pages/myaccount/home/home.component').then((c) => c.HomeComponent),\n data: { title: '首页' },\n },\n {\n path: 'personal-info',\n loadComponent: () => import('./pages/myaccount/personal-info/info.component').then((c) => c.InfoComponent),\n },\n {\n path: 'profile',\n loadComponent: () => import('./pages/myaccount/personal-info/profile/profile.component').then((c) => c.ProfileComponent),\n },\n {\n path: 'username',\n loadComponent: () => import('./pages/myaccount/personal-info/username/username.component').then((c) => c.UsernameComponent),\n },\n { path: 'gender', loadComponent: () => import('./pages/myaccount/gender/gender.component').then((c) => c.GenderComponent) },\n { path: 'email', loadComponent: () => import('./pages/myaccount/email/email.component').then((c) => c.EmailComponent) },\n {\n path: 'email-verification/:id',\n loadComponent: () => import('./pages/myaccount/email-verification/email-verification.component').then((c) => c.EmailVerificationComponent),\n },\n { path: 'phone', loadComponent: () => import('./pages/myaccount/phone/phone.component').then((c) => c.PhoneComponent) },\n {\n path: 'address',\n loadChildren: () => import('./pages/myaccount/address/address.routes').then((r) => r.addressRoutes),\n },\n {\n path: 'security',\n loadChildren: () => import('./pages/myaccount/security/security.routes'),\n data: { title: 'Security' },\n },\n {\n path: 'notifications',\n loadChildren: () => import('@rolatech/angular-notification').then((m) => m.notificationRoutes),\n data: { title: 'Notifications' },\n },\n];\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXlhY2NvdW50LnJvdXRlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItYWNjb3VudC9zcmMvbGliL215YWNjb3VudC5yb3V0ZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFXO0lBQ3JDO1FBQ0UsSUFBSSxFQUFFLEVBQUU7UUFDUixhQUFhLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLHVDQUF1QyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsYUFBYSxDQUFDO1FBQ2pHLElBQUksRUFBRSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUU7S0FDdEI7SUFDRDtRQUNFLElBQUksRUFBRSxlQUFlO1FBQ3JCLGFBQWEsRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsZ0RBQWdELENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxhQUFhLENBQUM7S0FDM0c7SUFDRDtRQUNFLElBQUksRUFBRSxTQUFTO1FBQ2YsYUFBYSxFQUFFLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQywyREFBMkQsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLGdCQUFnQixDQUFDO0tBQ3pIO0lBQ0Q7UUFDRSxJQUFJLEVBQUUsVUFBVTtRQUNoQixhQUFhLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLDZEQUE2RCxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsaUJBQWlCLENBQUM7S0FDNUg7SUFDRCxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsYUFBYSxFQUFFLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQywyQ0FBMkMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxFQUFFO0lBQzNILEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLHlDQUF5QyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDLEVBQUU7SUFDdkg7UUFDRSxJQUFJLEVBQUUsd0JBQXdCO1FBQzlCLGFBQWEsRUFBRSxHQUFHLEVBQUUsQ0FDbEIsTUFBTSxDQUFDLG1FQUFtRSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsMEJBQTBCLENBQUM7S0FDeEg7SUFDRCxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsYUFBYSxFQUFFLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyx5Q0FBeUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxFQUFFO0lBRXZIO1FBQ0UsSUFBSSxFQUFFLFNBQVM7UUFDZixZQUFZLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLDBDQUEwQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsYUFBYSxDQUFDO0tBQ3BHO0lBRUQ7UUFDRSxJQUFJLEVBQUUsVUFBVTtRQUNoQixZQUFZLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLDRDQUE0QyxDQUFDO1FBQ3hFLElBQUksRUFBRSxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUU7S0FDNUI7SUFDRDtRQUNFLElBQUksRUFBRSxlQUFlO1FBQ3JCLFlBQVksRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsZ0NBQWdDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxrQkFBa0IsQ0FBQztRQUM5RixJQUFJLEVBQUUsRUFBRSxLQUFLLEVBQUUsZUFBZSxFQUFFO0tBQ2pDO0NBQ0YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFJvdXRlcyB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5cbmV4cG9ydCBjb25zdCBteWFjY291bnRSb3V0ZXM6IFJvdXRlcyA9IFtcbiAge1xuICAgIHBhdGg6ICcnLFxuICAgIGxvYWRDb21wb25lbnQ6ICgpID0+IGltcG9ydCgnLi9wYWdlcy9teWFjY291bnQvaG9tZS9ob21lLmNvbXBvbmVudCcpLnRoZW4oKGMpID0+IGMuSG9tZUNvbXBvbmVudCksXG4gICAgZGF0YTogeyB0aXRsZTogJ+mmlumhtScgfSxcbiAgfSxcbiAge1xuICAgIHBhdGg6ICdwZXJzb25hbC1pbmZvJyxcbiAgICBsb2FkQ29tcG9uZW50OiAoKSA9PiBpbXBvcnQoJy4vcGFnZXMvbXlhY2NvdW50L3BlcnNvbmFsLWluZm8vaW5mby5jb21wb25lbnQnKS50aGVuKChjKSA9PiBjLkluZm9Db21wb25lbnQpLFxuICB9LFxuICB7XG4gICAgcGF0aDogJ3Byb2ZpbGUnLFxuICAgIGxvYWRDb21wb25lbnQ6ICgpID0+IGltcG9ydCgnLi9wYWdlcy9teWFjY291bnQvcGVyc29uYWwtaW5mby9wcm9maWxlL3Byb2ZpbGUuY29tcG9uZW50JykudGhlbigoYykgPT4gYy5Qcm9maWxlQ29tcG9uZW50KSxcbiAgfSxcbiAge1xuICAgIHBhdGg6ICd1c2VybmFtZScsXG4gICAgbG9hZENvbXBvbmVudDogKCkgPT4gaW1wb3J0KCcuL3BhZ2VzL215YWNjb3VudC9wZXJzb25hbC1pbmZvL3VzZXJuYW1lL3VzZXJuYW1lLmNvbXBvbmVudCcpLnRoZW4oKGMpID0+IGMuVXNlcm5hbWVDb21wb25lbnQpLFxuICB9LFxuICB7IHBhdGg6ICdnZW5kZXInLCBsb2FkQ29tcG9uZW50OiAoKSA9PiBpbXBvcnQoJy4vcGFnZXMvbXlhY2NvdW50L2dlbmRlci9nZW5kZXIuY29tcG9uZW50JykudGhlbigoYykgPT4gYy5HZW5kZXJDb21wb25lbnQpIH0sXG4gIHsgcGF0aDogJ2VtYWlsJywgbG9hZENvbXBvbmVudDogKCkgPT4gaW1wb3J0KCcuL3BhZ2VzL215YWNjb3VudC9lbWFpbC9lbWFpbC5jb21wb25lbnQnKS50aGVuKChjKSA9PiBjLkVtYWlsQ29tcG9uZW50KSB9LFxuICB7XG4gICAgcGF0aDogJ2VtYWlsLXZlcmlmaWNhdGlvbi86aWQnLFxuICAgIGxvYWRDb21wb25lbnQ6ICgpID0+XG4gICAgICBpbXBvcnQoJy4vcGFnZXMvbXlhY2NvdW50L2VtYWlsLXZlcmlmaWNhdGlvbi9lbWFpbC12ZXJpZmljYXRpb24uY29tcG9uZW50JykudGhlbigoYykgPT4gYy5FbWFpbFZlcmlmaWNhdGlvbkNvbXBvbmVudCksXG4gIH0sXG4gIHsgcGF0aDogJ3Bob25lJywgbG9hZENvbXBvbmVudDogKCkgPT4gaW1wb3J0KCcuL3BhZ2VzL215YWNjb3VudC9waG9uZS9waG9uZS5jb21wb25lbnQnKS50aGVuKChjKSA9PiBjLlBob25lQ29tcG9uZW50KSB9LFxuXG4gIHtcbiAgICBwYXRoOiAnYWRkcmVzcycsXG4gICAgbG9hZENoaWxkcmVuOiAoKSA9PiBpbXBvcnQoJy4vcGFnZXMvbXlhY2NvdW50L2FkZHJlc3MvYWRkcmVzcy5yb3V0ZXMnKS50aGVuKChyKSA9PiByLmFkZHJlc3NSb3V0ZXMpLFxuICB9LFxuXG4gIHtcbiAgICBwYXRoOiAnc2VjdXJpdHknLFxuICAgIGxvYWRDaGlsZHJlbjogKCkgPT4gaW1wb3J0KCcuL3BhZ2VzL215YWNjb3VudC9zZWN1cml0eS9zZWN1cml0eS5yb3V0ZXMnKSxcbiAgICBkYXRhOiB7IHRpdGxlOiAnU2VjdXJpdHknIH0sXG4gIH0sXG4gIHtcbiAgICBwYXRoOiAnbm90aWZpY2F0aW9ucycsXG4gICAgbG9hZENoaWxkcmVuOiAoKSA9PiBpbXBvcnQoJ0Byb2xhdGVjaC9hbmd1bGFyLW5vdGlmaWNhdGlvbicpLnRoZW4oKG0pID0+IG0ubm90aWZpY2F0aW9uUm91dGVzKSxcbiAgICBkYXRhOiB7IHRpdGxlOiAnTm90aWZpY2F0aW9ucycgfSxcbiAgfSxcbl07XG4iXX0=","import { makeEnvironmentProviders } from '@angular/core';\nimport { ROUTES } from '@angular/router';\nimport { accountRoutes } from './lib/account.routes';\nexport function provideAngularAuthRoutes() {\n const provider = [\n {\n provide: ROUTES,\n useValue: accountRoutes,\n multi: true,\n },\n ];\n return makeEnvironmentProviders(provider);\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyLWFjY291bnQvc3JjL3Byb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBa0Msd0JBQXdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekYsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUVyRCxNQUFNLFVBQVUsd0JBQXdCO0lBQ3RDLE1BQU0sUUFBUSxHQUFlO1FBQzNCO1lBQ0UsT0FBTyxFQUFFLE1BQU07WUFDZixRQUFRLEVBQUUsYUFBYTtZQUN2QixLQUFLLEVBQUUsSUFBSTtTQUNaO0tBQ0YsQ0FBQztJQUNGLE9BQU8sd0JBQXdCLENBQUMsUUFBUSxDQUFDLENBQUM7QUFDNUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVudmlyb25tZW50UHJvdmlkZXJzLCBQcm92aWRlciwgbWFrZUVudmlyb25tZW50UHJvdmlkZXJzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBST1VURVMgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgYWNjb3VudFJvdXRlcyB9IGZyb20gJy4vbGliL2FjY291bnQucm91dGVzJztcblxuZXhwb3J0IGZ1bmN0aW9uIHByb3ZpZGVBbmd1bGFyQXV0aFJvdXRlcygpOiBFbnZpcm9ubWVudFByb3ZpZGVycyB7XG4gIGNvbnN0IHByb3ZpZGVyOiBQcm92aWRlcltdID0gW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IFJPVVRFUyxcbiAgICAgIHVzZVZhbHVlOiBhY2NvdW50Um91dGVzLFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgXTtcbiAgcmV0dXJuIG1ha2VFbnZpcm9ubWVudFByb3ZpZGVycyhwcm92aWRlcik7XG59XG4iXX0=","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9sYXRlY2gtYW5ndWxhci1hY2NvdW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhci1hY2NvdW50L3NyYy9yb2xhdGVjaC1hbmd1bGFyLWFjY291bnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9pbmRleCc7XG4iXX0="],"names":["i1"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rolatech/angular-account",
3
- "version": "20.0.0-beta.10",
3
+ "version": "20.0.0-beta.12",
4
4
  "private": false,
5
5
  "peerDependencies": {
6
6
  "@angular/core": "^20.0.0",
@@ -12,11 +12,11 @@
12
12
  "qrcode": "^1.5.4"
13
13
  },
14
14
  "dependencies": {
15
- "@rolatech/angular-common": "20.0.0-beta.10",
16
- "@rolatech/angular-components": "20.0.0-beta.10",
17
- "@rolatech/angular-services": "20.0.0-beta.10",
18
- "@rolatech/angular-auth": "20.0.0-beta.10",
19
- "@rolatech/angular-notification": "20.0.0-beta.10",
15
+ "@rolatech/angular-common": "20.0.0-beta.12",
16
+ "@rolatech/angular-components": "20.0.0-beta.12",
17
+ "@rolatech/angular-services": "20.0.0-beta.12",
18
+ "@rolatech/angular-auth": "20.0.0-beta.12",
19
+ "@rolatech/angular-notification": "20.0.0-beta.12",
20
20
  "tslib": "^2.3.0"
21
21
  },
22
22
  "sideEffects": false,