@rolatech/angular-account 20.0.4-beta.3 → 20.0.5
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.
|
@@ -201,15 +201,21 @@ class SigninComponent extends BaseComponent {
|
|
|
201
201
|
effect(() => {
|
|
202
202
|
const index = this.tabIndex();
|
|
203
203
|
if (index === 0) {
|
|
204
|
-
this.codeForm
|
|
204
|
+
if (this.codeForm) {
|
|
205
|
+
this.codeForm.reset();
|
|
206
|
+
}
|
|
205
207
|
}
|
|
206
208
|
if (index === 1) {
|
|
207
|
-
this.passrodForm
|
|
209
|
+
if (this.passrodForm) {
|
|
210
|
+
this.passrodForm.reset();
|
|
211
|
+
}
|
|
208
212
|
}
|
|
209
213
|
if (index === 2) {
|
|
210
214
|
this.isLoading = true;
|
|
211
|
-
this.codeForm.
|
|
212
|
-
|
|
215
|
+
if (this.codeForm && this.passrodForm) {
|
|
216
|
+
this.codeForm.reset();
|
|
217
|
+
this.passrodForm.reset();
|
|
218
|
+
}
|
|
213
219
|
this.wechat();
|
|
214
220
|
}
|
|
215
221
|
});
|
|
@@ -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', ...(ngDevMode ? [{ debugName: \"service\" }] : []));\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.2.0\", ngImport: i0, type: TopbarLoginComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.1.0\", version: \"20.2.0\", 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.2.0\", 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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9wYmFyLWxvZ2luLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItYWNjb3VudC9zcmMvbGliL2NvbXBvbmVudHMvdG9wYmFyLWxvZ2luL3RvcGJhci1sb2dpbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyLWFjY291bnQvc3JjL2xpYi9jb21wb25lbnRzL3RvcGJhci1sb2dpbi90b3BiYXItbG9naW4uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBcUIsV0FBVyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUcsT0FBTyxFQUFFLFlBQVksRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUVMLE1BQU0sRUFFTixlQUFlLEVBR2YsY0FBYyxHQUVmLE1BQU0saUJBQWlCLENBQUM7QUFDekIsT0FBTyxFQUFFLE1BQU0sRUFBZ0IsTUFBTSxNQUFNLENBQUM7OztBQVU1QyxNQUFNLE9BQU8sb0JBQW9CO0lBUGpDO1FBUUUsZ0JBQVcsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDakMsZUFBVSxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNqQyxVQUFLLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQy9CLFdBQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFHeEIsWUFBTyxHQUFHLEtBQUssQ0FBQyxLQUFLLG1EQUFDLENBQUM7UUFDdkIsY0FBUyxHQUFHLEVBQUUs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QUFvQjtrQkFQaEMsU0FBUzsrQkFDRSwrQkFBK0IsV0FDaEMsQ0FBQyxZQUFZLEVBQUUsZUFBZSxDQUFDLGlCQUd6QixpQkFBaUIsQ0FBQyxJQUFJIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkRlc3Ryb3ksIE9uSW5pdCwgUExBVEZPUk1fSUQsIFZpZXdFbmNhcHN1bGF0aW9uLCBpbmplY3QsIGlucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUsIGlzUGxhdGZvcm1Ccm93c2VyIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEFQUF9DT05GSUcgfSBmcm9tICdAcm9sYXRlY2gvYW5ndWxhci1jb21tb24nO1xuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7XG4gIE5hdmlnYXRpb25FbmQsXG4gIFJvdXRlcixcbiAgRXZlbnQsXG4gIE5hdmlnYXRpb25TdGFydCxcbiAgTmF2aWdhdGlvbkNhbmNlbCxcbiAgTmF2aWdhdGlvbkVycm9yLFxuICBBY3RpdmF0ZWRSb3V0ZSxcbiAgUm91dGUsXG59IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBmaWx0ZXIsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xudHlwZSBOYXZpZ2F0aW9uRXZlbnQgPSBOYXZpZ2F0aW9uU3RhcnQgfCBOYXZpZ2F0aW9uRW5kIHwgTmF2aWdhdGlvbkNhbmNlbCB8IE5hdmlnYXRpb25FcnJvcjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncm9sYXRlY2gtYWNjb3VudC10b3BiYXItbG9naW4nLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBNYXRCdXR0b25Nb2R1bGVdLFxuICB0ZW1wbGF0ZVVybDogJy4vdG9wYmFyLWxvZ2luLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL3RvcGJhci1sb2dpbi5jb21wb25lbnQuc2NzcycsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG59KVxuZXhwb3J0IGNsYXNzIFRvcGJhckxvZ2luQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBlbnZpcm9ubWVudCA9IGluamVjdChBUFBfQ09ORklHKTtcbiAgcGxhdGZvcm1JZCA9IGluamVjdChQTEFURk9STV9JRCk7XG4gIHJvdXRlID0gaW5qZWN0KEFjdGl2YXRlZFJvdXRlKTtcbiAgcm91dGVyID0gaW5qZWN0KFJvdXRlcik7XG4gIHByaXZhdGUgcm91dGVyU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb24gfCB1bmRlZmluZWQ7XG5cbiAgc2VydmljZSA9IGlucHV0KCd3d3cnKTtcbiAgc2lnbmluVXJsID0gJyc7XG4gIHNpZ251cFVybCA9IHRoaXMuZW52aXJvbm1lbnQuYWNjb3VudHNVcmwgKyAnL3NpZ251cCc7XG4gIGxvZ291dFVybCA9IHRoaXMuZW52aXJvbm1lbnQuYWNjb3VudHNVcmwgKyBgL2xvZ291dD9zZXJ2aWNlPSR7dGhpcy5zZXJ2aWNlKCl9YDtcbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgaWYgKGlzUGxhdGZvcm1Ccm93c2VyKHRoaXMucGxhdGZvcm1JZCkpIHtcbiAgICAgIHRoaXMuc2lnbmluVXJsID0gYCR7dGhpcy5lbnZpcm9ubWVudC5hY2NvdW50c1VybH0vc2lnbmluP2NvbnRpbnVlPWAgKyB3aW5kb3cubG9jYXRpb24uaHJlZjtcbiAgICAgIHRoaXMubG9nb3V0VXJsID0gdGhpcy5lbnZpcm9ubWVudC5hY2NvdW50c1VybCArIGAvbG9nb3V0P3NlcnZpY2U9JHt0aGlzLnNlcnZpY2UoKX0mY29udGludWU9YCArIHdpbmRvdy5sb2NhdGlvbi5vcmlnaW47XG4gICAgfVxuXG4gICAgdGhpcy5yb3V0ZXJTdWJzY3JpcHRpb24gPSB0aGlzLnJvdXRlci5ldmVudHNcbiAgICAgIC5waXBlKGZpbHRlcigoZXZlbnQ6IEV2ZW50KTogZXZlbnQgaXMgTmF2aWdhdGlvbkV2ZW50ID0+IGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvblN0YXJ0KSlcbiAgICAgIC5zdWJzY3JpYmUoKGV2ZW50KSA9PiB7XG4gICAgICAgIHRoaXMuc2lnbmluVXJsID0gYCR7dGhpcy5lbnZpcm9ubWVudC5hY2NvdW50c1VybH0vc2lnbmluP2NvbnRpbnVlPWAgKyB3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgZXZlbnQudXJsO1xuXG4gICAgICAgIC8vIHRoaXMuY2hlY2tSb3V0ZUd1YXJkKGV2ZW50LnVybCk7XG5cbiAgICAgICAgY29uc3QgY3VycmVudFVybCA9IHRoaXMucm91dGVyLnVybDsgLy8gR2V0IHRoZSBjdXJyZW50IFVSTFxuICAgICAgICBjb25zdCBtYXRjaGVkUm91dGUgPSB0aGlzLmZpbmRSb3V0ZUNvbmZpZyhjdXJyZW50VXJsKTtcblxuICAgICAgICBpZiAobWF0Y2hlZFJvdXRlKSB7XG4gICAgICAgICAgY29uc29sZS5sb2coJ01hdGNoZWQgUm91dGUgQ29uZmlnOicsIG1hdGNoZWRSb3V0ZSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgY29uc29sZS5sb2coJ05vIG1hdGNoaW5nIHJvdXRlIGZvdW5kLicpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgfVxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLnJvdXRlclN1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcbiAgfVxuICAvLyBjaGVja1JvdXRlR3VhcmQodXJsOiBzdHJpbmcpOiB2b2lkIHtcbiAgLy8gICAvLyBjb25zdCByb3V0ZSA9IHRoaXMucm91dGVyLmNvbmZpZy5maW5kKChyKSA9PiByLnBhdGggPT09IHJvdXRlUGF0aCk7XG4gIC8vICAgY29uc3Qgcm91dGUgPSB0aGlzLnJvdXRlci5jb25maWcuZmluZCgocjogYW55KSA9PiB0aGlzLm1hdGNoUm91dGUodXJsLCByLnBhdGgpKTtcblxuICAvLyAgIGlmIChyb3V0ZSkge1xuICAvLyAgICAgaWYgKHJvdXRlLmNhbkFjdGl2YXRlICYmIHJvdXRlLmNhbkFjdGl2YXRlLmxlbmd0aCA+IDApIHtcbiAgLy8gICAgICAgY29uc29sZS5sb2coYFJvdXRlIFwiJHt1cmx9XCIgaGFzIGNhbkFjdGl2YXRlIGd1YXJkczpgLCByb3V0ZS5jYW5BY3RpdmF0ZSk7XG4gIC8vICAgICB9IGVsc2Uge1xuICAvLyAgICAgICBjb25zb2xlLmxvZyhgUm91dGUgXCIke3VybH1cIiBkb2VzIG5vdCBoYXZlIGNhbkFjdGl2YXRlIGd1YXJkcy5gKTtcbiAgLy8gICAgIH1cbiAgLy8gICB9IGVsc2Uge1xuICAvLyAgICAgY29uc29sZS5sb2coYFJvdXRlIFwiJHt1cmx9XCIgbm90IGZvdW5kLmApO1xuICAvLyAgIH1cbiAgLy8gfVxuICAvLyBtYXRjaFJvdXRlKHVybDogc3RyaW5nLCByb3V0ZVBhdGg6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAvLyAgIC8vIFN0cmlwIGxlYWRpbmcvdHJhaWxpbmcgc2xhc2hlcyBmcm9tIFVSTCBhbmQgcm91dGVQYXRoIGFuZCBjb21wYXJlXG4gIC8vICAgcmV0dXJuIHVybC5yZXBsYWNlKC9eXFwvfFxcLyQvZywgJycpID09PSByb3V0ZVBhdGgucmVwbGFjZSgvXlxcL3xcXC8kL2csICcnKTtcbiAgLy8gfVxuICBmaW5kUm91dGVDb25maWcodXJsOiBzdHJpbmcpOiBSb3V0ZSB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMucm91dGVyLmNvbmZpZy5maW5kKChyb3V0ZSkgPT4gdGhpcy5tYXRjaFJvdXRlKHJvdXRlLCB1cmwpKTtcbiAgfVxuXG4gIC8vIEhlbHBlciBmdW5jdGlvbiB0byBjaGVjayBpZiBhIHJvdXRlIG1hdGNoZXMgdGhlIGN1cnJlbnQgVVJMXG4gIG1hdGNoUm91dGUocm91dGU6IFJvdXRlLCB1cmw6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IHBhdGggPSByb3V0ZS5wYXRoPy5zcGxpdCgnLycpLmpvaW4oJycpO1xuICAgIGNvbnN0IHVybFNlZ21lbnQgPSB1cmwuc3BsaXQoJy8nKS5qb2luKCcnKTtcbiAgICByZXR1cm4gcGF0aCA9PT0gdXJsU2VnbWVudDtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImZsZXggaXRlbXMtY2VudGVyXCI+XG4gIDxhIG1hdC1zdHJva2VkLWJ1dHRvbiBjbGFzcz1cIm1yLTIgbWF4LWgtOSBtZDptYXgtaC0xMFwiIFtocmVmXT1cInNpZ25pblVybFwiPjxzcGFuIGkxOG4+U2lnbiBpbjwvc3Bhbj48L2E+XG4gIDxhIG1hdC1mbGF0LWJ1dHRvbiBjbGFzcz1cIm1heC1oLTkgbWQ6bWF4LWgtMTBcIiBbaHJlZl09XCJzaWdudXBVcmxcIj48c3BhbiBpMThuPlNpZ24gdXA8L3NwYW4+PC9hPlxuPC9kaXY+XG4iXX0=","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.2.0\", ngImport: i0, type: ForgotPasswordComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.2.0\", 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.2.0\", 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.2.0\", ngImport: i0, type: LogoutComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.2.0\", 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.2.0\", 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.2.0\", ngImport: i0, type: PasswordresetComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.2.0\", 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.2.0\", 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.2.0\", ngImport: i0, type: WeChatLoginService, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.2.0\", type: WeChatLoginService, isStandalone: true, ngImport: i0 }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.2.0\", ngImport: i0, type: WeChatLoginService, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.2.0\", 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, 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.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, ...(ngDevMode ? [{ debugName: \"tabIndex\" }] : []));\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.2.0\", ngImport: i0, type: SigninComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.2.0\", 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.2.0\", 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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lnbmluLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItYWNjb3VudC9zcmMvbGliL3BhZ2VzL2FjY291bnRzL3NpZ25pbi9zaWduaW4uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhci1hY2NvdW50L3NyYy9saWIvcGFnZXMvYWNjb3VudHMvc2lnbmluL3NpZ25pbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUF1QixNQUFNLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEgsT0FBTyxFQUFFLFdBQVcsRUFBYSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNwRSxPQUFPLEVBQW1CLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzFFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxVQUFVLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsYUFBYSxFQUFFLFlBQVksRUFBRSxhQUFhLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNuSCxPQUFPLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDaEcsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7Ozs7OztBQVM1RSxNQUFNLE9BQU8sZUFBZ0IsU0FBUSxhQUFhO0lBMEJoRCxPQUFPLENBQUMsS0FBVTtRQUNoQixJQUNFLEtBQUssQ0FBQyxNQUFNLEtBQUssTUFBTSxDQUFDLFFBQVEsQ0FBQyxNQUFNO1lBQ3ZD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QUFhLEVBQUUsWUFBWSxDQUFDLFlBQzFFLHlCQUF5QixpQkFHcEIsaUJBQWlCLENBQUMsSUFBSTt3REE0QnJDLE9BQU87c0JBRE4sWUFBWTt1QkFBQyxnQkFBZ0IsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGlzUGxhdGZvcm1Ccm93c2VyIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCwgZWZmZWN0LCBIb3N0TGlzdGVuZXIsIGluamVjdCwgT25Jbml0LCBQTEFURk9STV9JRCwgc2lnbmFsLCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIEZvcm1Hcm91cCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFNhZmVSZXNvdXJjZVVybCwgRG9tU2FuaXRpemVyIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5pbXBvcnQgeyBBbmd1bGFyQ29tbW9uTW9kdWxlLCBBUFBfQ09ORklHIH0gZnJvbSAnQHJvbGF0ZWNoL2FuZ3VsYXItY29tbW9uJztcbmltcG9ydCB7IEFuZ3VsYXJDb21wb25lbnRzTW9kdWxlLCBCYXNlQ29tcG9uZW50LCBUYWJDb21wb25lbnQsIFRhYnNDb21wb25lbnQgfSBmcm9tICdAcm9sYXRlY2gvYW5ndWxhci1jb21wb25lbnRzJztcbmltcG9ydCB7IEFVVEhfTUVUSE9EUywgQXV0aE1ldGhvZCwgQXV0aFNlcnZpY2UsIEF1dGhVc2VyU2VydmljZSB9IGZyb20gJ0Byb2xhdGVjaC9hbmd1bGFyLWF1dGgnO1xuaW1wb3J0IHsgV2VDaGF0TG9naW5TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvd2VjaGF0LWxvZ2luLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgaW1wb3J0czogW0FuZ3VsYXJDb21tb25Nb2R1bGUsIEFuZ3VsYXJDb21wb25lbnRzTW9kdWxlLCBUYWJzQ29tcG9uZW50LCBUYWJDb21wb25lbnRdLFxuICBzZWxlY3RvcjogJ3JvbGF0ZWNoLWFjY291bnQtc2lnbmluJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3NpZ25pbi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3NpZ25pbi5jb21wb25lbnQuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxufSlcbmV4cG9ydCBjbGFzcyBTaWduaW5Db21wb25lbnQgZXh0ZW5kcyBCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgZW52aXJvbm1lbnQgPSBpbmplY3QoQVBQX0NPTkZJRyk7XG4gIGF1dGhNZXRob2RzID0gaW5qZWN0KEFVVEhfTUVUSE9EUylcbiAgaGFzUGFzc3dvcmQgPSB0aGlzLmF1dGhNZXRob2RzLmluY2x1ZGVzKEF1dGhNZXRob2QuUGFzc3dvcmQpO1xuICBoYXNPVFAgPSB0aGlzLmF1dGhNZXRob2RzLmluY2x1ZGVzKEF1dGhNZXRob2QuT1RQKTtcbiAgaGFzV2VDaGF0ID0gdGhpcy5hdXRoTWV0aG9kcy5pbmNsdWRlcyhBdXRoTWV0aG9kLldlQ2hhdCk7XG4gIGhhc0dvb2dsZSA9IHRoaXMuYXV0aE1ldGhvZHMuaW5jbHVkZXMoQXV0aE1ldGhvZC5Hb29nbGUpO1xuICBmb3JtQnVpbGRlciA9IGluamVjdChGb3JtQnVpbGRlcik7XG4gIGF1dGhTZXJ2aWNlID0gaW5qZWN0KEF1dGhTZXJ2aWNlKTtcbiAgYXV0aFVzZXJTZXJ2aWNlID0gaW5qZWN0KEF1dGhVc2VyU2VydmljZSk7XG4gIHdlY2h0TG9naW5TZXJ2aWNlID0gaW5qZWN0KFdlQ2hhdExvZ2luU2VydmljZSk7XG4gIHNhbml0aXplciA9IGluamVjdChEb21TYW5pdGl6ZXIpO1xuICBwYXNzcm9kRm9ybSE6IEZvcm1Hcm91cDtcbiAgY29kZUZvcm0hOiBGb3JtR3JvdXA7XG4gIGNvbnRpbnVlID0gJyc7XG4gIHNpZ25VcFVybCA9ICcnO1xuICB0YWJJbmRleCA9IHNpZ25hbCgwKTtcbiAgY291bnREb3duID0gZmFsc2U7XG4gIGNvdW50RG93blRpbWUgPSA2MDtcbiAgc2hvd0J1dHRvblRleHQgPSBgU2VuZGA7XG4gIGFwcGlkID0gJ3RoaXMuZW52aXJvbm1lbnQud2VjaGF0LmFwcElkJ1xuICBzdGF0ZSA9ICdhZGQnO1xuICBpc0xvYWRpbmcgPSBmYWxzZTtcbiAgdXJsU2FmZTogU2FmZVJlc291cmNlVXJsID0gdGhpcy5zYW5pdGl6ZXIuYnlwYXNzU2VjdXJpdHlUcnVzdFJlc291cmNlVXJsKCcnKTtcbiAgYmFzZVVybCA9ICdodHRwczovL29wZW4ud2VpeGluLnFxLmNvbS9jb25uZWN0L3FyY29ubmVjdCc7XG4gIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzptZXNzYWdlJywgWyckZXZlbnQnXSlcbiAgb25Mb2dpbihldmVudDogYW55KTogdm9pZCB7XG4gICAgaWYgKFxuICAgICAgZXZlbnQub3JpZ2luICE9PSB3aW5kb3cubG9jYXRpb24ub3JpZ2luIHx8XG4gICAgICAvcmVhY3QtZGV2dG9vbHMvZ2kudGVzdChldmVudC5kYXRhLnNvdXJjZSkgfHxcbiAgICAgIC9hbmd1bGFyLWRldnRvb2xzL2dpLnRlc3QoZXZlbnQuZGF0YS5zb3VyY2UpXG4gICAgKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGlmIChldmVudC5vcmlnaW4gPT09IHRoaXMuZW52aXJvbm1lbnQuYWNjb3VudHNVcmwgJiYgZXZlbnQuZGF0YS5jb2RlID09PSAyMDApIHtcbiAgICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gdGhpcy5jb250aW51ZSA9PT0gdGhpcy5lbnZpcm9ubWVudC5hY2NvdW50c1VybCA/IHRoaXMuZW52aXJvbm1lbnQubXlhY2NvdW50VXJsIDogdGhpcy5jb250aW51ZTtcbiAgICB9XG4gIH1cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgICBlZmZlY3QoKCkgPT4ge1xuICAgICAgY29uc3QgaW5kZXggPSB0aGlzLnRhYkluZGV4KCk7XG4gICAgICBpZiAoaW5kZXggPT09IDApIHtcbiAgICAgICAgdGhpcy5jb2RlRm9ybS5yZXNldCgpO1xuICAgICAgfVxuICAgICAgaWYgKGluZGV4ID09PSAxKSB7XG4gICAgICAgIHRoaXMucGFzc3JvZEZvcm0ucmVzZXQoKTtcbiAgICAgIH1cbiAgICAgIGlmIChpbmRleCA9PT0gMikge1xuICAgICAgICB0aGlzLmlzTG9hZGluZyA9IHRydWU7XG4gICAgICAgIHRoaXMuY29kZUZvcm0ucmVzZXQoKTtcbiAgICAgICAgdGhpcy5wYXNzcm9kRm9ybS5yZXNldCgpO1xuICAgICAgICB0aGlzLndlY2hhdCgpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMudGl0bGVTZXJ2aWNlLnNldFRpdGxlKCdTaWduIGluJyk7XG4gICAgaWYgKHRoaXMuaGFzUGFzc3dvcmQpIHtcbiAgICAgIHRoaXMucGFzc3JvZEZvcm0gPSB0aGlzLmZvcm1CdWlsZGVyLmdyb3VwKHtcbiAgICAgICAgLy8gYWNjb3VudDogW251bGwsIFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBWYWxpZGF0b3JzLnBhdHRlcm4oJ15bYS16QS1aMC05Ll8lKy1dK0BbYS16QS1aMC05Li1dKy5bYS16QS1aXXsyLH0kJyldXSxcbiAgICAgICAgYWNjb3VudDogW251bGwsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXV0sXG4gICAgICAgIHBhc3N3b3JkOiBbbnVsbCwgW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMubWluTGVuZ3RoKDYpXV0sXG4gICAgICB9KTtcbiAgICB9XG4gICAgaWYgKHRoaXMuaGFzT1RQKSB7XG4gICAgICB0aGlzLmNvZGVGb3JtID0gdGhpcy5mb3JtQnVpbGRlci5ncm91cCh7XG4gICAgICAgIHBob25lOiBbbnVsbCwgW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMucGF0dGVybignMSgzfDR8NXw2fDd8OHw5KVxcXFxkezl9JyldXSxcbiAgICAgICAgY29kZTogW251bGwsIFZhbGlkYXRvcnMucmVxdWlyZWRdLFxuICAgICAgfSk7XG4gICAgfVxuICAgIHRoaXMucm91dGUucXVlcnlQYXJhbXMuc3Vic2NyaWJlKChwYXJhbXMpID0+IHtcbiAgICAgIHRoaXMuY29udGludWUgPSBwYXJhbXNbJ2NvbnRpbnVlJ10gfHwgJy8nOyAvLyBEZWZhdWx0IHRvIGhvbWUgaWYgbm8gY29udGludWUgcGFyYW1cbiAgICAgIGNvbnN0IGRlY29kZWRVcmwgPSBkZWNvZGVVUklDb21wb25lbnQodGhpcy5jb250aW51ZSk7XG4gICAgICB0aGlzLnNpZ25VcFVybCA9IHRoaXMuY29udGludWUgPyBgc2lnbnVwP2NvbnRpbnVlPSR7ZGVjb2RlZFVybH1gIDogJ3NpZ251cCc7XG4gICAgfSk7XG4gICAgLy8gdGhpcy5jb250aW51ZSA9IHRoaXMucm91dGUuc25hcHNob3QucXVlcnlQYXJhbXNbJ2NvbnRpbnVlJ107XG4gICAgLy8gaWYgKHRoaXMuY29udGludWUpIHtcbiAgICAvLyAgIGNvbnN0IGRlY29kZWRVcmwgPSBkZWNvZGVVUklDb21wb25lbnQodGhpcy5jb250aW51ZSk7XG4gICAgLy8gICB0aGlzLnNpZ25VcFVybCA9IHRoaXMuY29udGludWUgPyBgc2lnbnVwP2NvbnRpbnVlPSR7ZGVjb2RlZFVybH1gIDogJ3NpZ251cCc7XG4gICAgLy8gfVxuICB9XG4gIGdldCBmb3JtKCkge1xuICAgIHJldHVybiB0aGlzLnRhYkluZGV4KCkgPT09IDAgPyB0aGlzLnBhc3Nyb2RGb3JtLmNvbnRyb2xzIDogdGhpcy5jb2RlRm9ybS5jb250cm9scztcbiAgfVxuICBzZW5kU01TQ29kZSgpIHtcbiAgICBjb25zdCBwaG9uZUNvbnRyb2wgPSB0aGlzLmNvZGVGb3JtLmdldCgncGhvbmUnKTtcbiAgICBpZiAoIXBob25lQ29udHJvbD8udmFsaWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3QgcGhvbmUgPSBwaG9uZUNvbnRyb2wudmFsdWU7XG4gICAgdGhpcy5jb3VudERvd24gPSB0cnVlO1xuICAgIGNvbnN0IHN0YXJ0ID0gc2V0SW50ZXJ2YWwoKCkgPT4ge1xuICAgICAgaWYgKHRoaXMuY291bnREb3duVGltZSA+PSAwKSB7XG4gICAgICAgIHRoaXMuc2hvd0J1dHRvblRleHQgPSAkbG9jYWxpemVgJHt0aGlzLmNvdW50RG93blRpbWUtLX1zIHJlc2VuZGA7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjbGVhckludGVydmFsKHN0YXJ0KTtcbiAgICAgICAgdGhpcy5zaG93QnV0dG9uVGV4dCA9ICRsb2NhbGl6ZWBSZXNlbmRgO1xuICAgICAgICB0aGlzLmNvdW50RG93biA9IGZhbHNlO1xuICAgICAgICB0aGlzLmNvdW50RG93blRpbWUgPSA2MDtcbiAgICAgIH1cbiAgICB9LCAxMDAwKTtcblxuICAgIHRoaXMuYXV0aFVzZXJTZXJ2aWNlLnNlbmRTTVNDb2RlKCcrODYnLCBwaG9uZSkuc3Vic2NyaWJlKHtcbiAgICAgIG5leHQ6IChyZXMpID0+IHtcbiAgICAgICAgdGhpcy5zbmFja0JhclNlcnZpY2Uub3BlbignU3VjY2VzcycpO1xuICAgICAgfSxcbiAgICAgIGVycm9yOiAoZXJyb3IpID0+IHtcbiAgICAgICAgdGhpcy5zbmFja0JhclNlcnZpY2Uub3BlbihlcnJvci5tZXNzYWdlKTtcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cbiAgbG9naW4oKSB7XG4gICAgbGV0IGRhdGEgPSB7fTtcbiAgICBpZiAodGhpcy50YWJJbmRleCgpID09PSAwKSB7XG4gICAgICBpZiAoIXRoaXMucGFzc3JvZEZvcm0udmFsaWQpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgZGF0YSA9IHtcbiAgICAgICAgYWNjb3VudDogdGhpcy5mb3JtWydhY2NvdW50J10udmFsdWUsXG4gICAgICAgIHBhc3N3b3JkOiB0aGlzLmZvcm1bJ3Bhc3N3b3JkJ10udmFsdWUsXG4gICAgICB9O1xuICAgIH1cbiAgICBpZiAodGhpcy50YWJJbmRleCgpID09PSAxKSB7XG4gICAgICBpZiAoIXRoaXMuY29kZUZvcm0udmFsaWQpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgZGF0YSA9IHtcbiAgICAgICAgcGhvbmU6IHRoaXMuZm9ybVsncGhvbmUnXS52YWx1ZSxcbiAgICAgICAgY29kZTogdGhpcy5mb3JtWydjb2RlJ10udmFsdWUsXG4gICAgICB9O1xuICAgIH1cblxuICAgIHRoaXMuYXV0aFNlcnZpY2UubG9naW4oZGF0YSkuc3Vic2NyaWJlKHtcbiAgICAgIG5leHQ6ICgpID0+IHtcbiAgICAgICAgaWYgKGlzUGxhdGZvcm1Ccm93c2VyKHRoaXMucGxhdGZvcm1JZCkpIHtcbiAgICAgICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9IHRoaXMuY29udGludWUgPT09IHRoaXMuZW52aXJvbm1lbnQuYWNjb3VudHNVcmwgPyB0aGlzLmVudmlyb25tZW50Lm15YWNjb3VudFVybCA6IHRoaXMuY29udGludWU7XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBlcnJvcjogKGVycm9yKSA9PiB7XG4gICAgICAgIHRoaXMuc25hY2tCYXJTZXJ2aWNlLm9wZW4oZXJyb3IubWVzc2FnZSk7XG4gICAgICB9LFxuICAgIH0pO1xuICB9XG4gIHdlY2hhdCgpIHtcbiAgICAvLyBjb25zdCByZWRpcmVjdFVyaSA9ICdodHRwczovL2FjY291bnRzLnBpbnhpYW9rZS5jbi9sb2dpbj9jb250aW51ZSc7XG4gICAgY29uc3QgcmVkaXJlY3RVcmkgPSBgJHt3aW5kb3cubG9jYXRpb24ub3JpZ2lufS9sb2dpbj9jb250aW51ZWA7XG4gICAgY29uc3QgZW5jb2RlZFVSSSA9IGVuY29kZVVSSShyZWRpcmVjdFVyaSk7XG4gICAgY29uc3Qgc3JjID0gYCR7dGhpcy5iYXNlVXJsfT9hcHBpZD0ke3RoaXMuYXBwaWR9JnJlc3BvbnNlX3R5cGU9Y29kZSZzZWxmX3JlZGlyZWN0PXRydWUmc2NvcGU9c25zYXBpX2xvZ2luJnN0eWxlbGl0ZT0xJnJlZGlyZWN0X3VyaT0ke2VuY29kZWRVUkl9JnN0YXRlPSR7dGhpcy5zdGF0ZX0jd2VjaGF0X3JlZGlyZWN0YDtcbiAgICB0aGlzLnVybFNhZmUgPSB0aGlzLnNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0UmVzb3VyY2VVcmwoc3JjKTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImgtZnVsbCBmbGV4IGl0ZW1zLXN0YXJ0IHNtOml0ZW1zLWNlbnRlciBzbTpqdXN0aWZ5LWNlbnRlclwiPlxuICA8ZGl2XG4gICAgY2xhc3M9XCJ3LWZ1bGwgaC1mdWxsIGp1c3RpZnktc3RhcnQgbWQ6aC1hdXRvIHAtNiBsZzpwLTExIHJvdW5kZWQteGwgYmctWy0tcnQtc2lnbmluLWlubmVyLWJhY2tncm91bmRdIGZsZXggZmxleC1jb2wgbGc6ZmxleC1yb3cgbWQ6anVzdGlmeS1iZXR3ZWVuIHhsOnctWzg2MHB4XSBsZzp3LVs4MDBweF0gbWQ6dy1bNjAwcHhdXCJcbiAgPlxuICAgIDwhLS0gaGVhZGVyIC0tPlxuICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtY29sIHB5LTZcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LTN4bCBmb250LW1lZGl1bSBtYi0zIG1sLTJcIiBpMThuPlNpZ24gaW48L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LW1kIG1sLTJcIiBpMThuPlVzZSB5b3VyIHt7IGVudmlyb25tZW50Lm5hbWUgfX0gQWNjb3VudDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXY+XG4gICAgICA8cm9sYXRlY2gtdGFicyBbKHNlbGVjdCldPVwidGFiSW5kZXhcIj5cbiAgICAgICAgQGlmIChoYXNQYXNzd29yZCkge1xuICAgICAgICAgIDxyb2xhdGVjaC10YWIgbGFiZWw9XCJQYXNzd29yZFwiPjwvcm9sYXRlY2gtdGFiPlxuICAgICAgICB9XG4gICAgICAgIEBpZiAoaGFzT1RQKSB7XG4gICAgICAgICAgPHJvbGF0ZWNoLXRhYiBsYWJlbD1cIk9UUFwiPjwvcm9sYXRlY2gtdGFiPlxuICAgICAgICB9XG4gICAgICAgIEBpZiAoaGFzV2VDaGF0KSB7XG4gICAgICAgICAgPHJvbGF0ZWNoLXRhYiBsYWJlbD1cIldlQ2hhdFwiPjwvcm9sYXRlY2gtdGFiPlxuICAgICAgICB9XG4gICAgICA8L3JvbGF0ZWNoLXRhYnM+XG4gICAgICA8IS0tIGNvbnRlbnQgLS0+XG4gICAgICA8ZGl2IGNsYXNzPVwicHQtNiBtaW4tdy1bMzIwcHhdIG1pbi1oLVsyMTRweF1cIj5cbiAgICAgICAgQGlmICh0YWJJbmRleCgpID09PSAwKSB7XG4gICAgICAgICAgPGZvcm0gW2Zvcm1Hcm91cF09XCJwYXNzcm9kRm9ybVwiIGNsYXNzPVwiZmxleCBmbGV4LWNvbFwiPlxuICAgICAgICAgICAgQGlmIChoYXNQYXNzd29yZCkge1xuICAgICAgICAgICAgICA8bWF0LWZvcm0tZmllbGQ+XG4gICAgICAgICAgICAgICAgPG1hdC1sYWJlbCBpMThuPiBFbWFpbC9Vc2VybmFtZSA8L21hdC1sYWJlbD5cbiAgICAgICAgICAgICAgICA8aW5wdXQgbWF0SW5wdXQgZm9ybUNvbnRyb2xOYW1lPVwiYWNjb3VudFwiIHJlcXVpcmVkIC8+XG4gICAgICAgICAgICAgICAgQGlmIChwYXNzcm9kRm9ybS5jb250cm9sc1snYWNjb3VudCddLnRvdWNoZWQgJiYgcGFzc3JvZEZvcm0uY29udHJvbHNbJ2FjY291bnQnXS5pbnZhbGlkKSB7XG4gICAgICAgICAgICAgICAgICA8bWF0LWVycm9yPlxuICAgICAgICAgICAgICAgICAgICBAaWYgKHBhc3Nyb2RGb3JtLmNvbnRyb2xzWydhY2NvdW50J10uZXJyb3JzPy5bJ3JlcXVpcmVkJ10pIHtcbiAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBpMThuPkVtYWlsIGlzIHJlcXVpcmVkPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIEBpZiAocGFzc3JvZEZvcm0uY29udHJvbHNbJ2FjY291bnQnXS5lcnJvcnM/LlsncGF0dGVybiddKSB7XG4gICAgICAgICAgICAgICAgICAgICAgPHNwYW4gaTE4bj5JbnZhbGlkIGVtYWlsPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICA8L21hdC1lcnJvcj5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICA8bWF0LWZvcm0tZmllbGQ+XG4gICAgICAgICAgICAgIDxtYXQtbGFiZWwgaTE4bj4gUGFzc3dvcmQgPC9tYXQtbGFiZWw+XG4gICAgICAgICAgICAgIDxpbnB1dCBhdXRvY29tcGxldGUgbWF0SW5wdXQgZm9ybUNvbnRyb2xOYW1lPVwicGFzc3dvcmRcIiB0eXBlPVwicGFzc3dvcmRcIiAvPlxuICAgICAgICAgICAgICBAaWYgKHBhc3Nyb2RGb3JtLmNvbnRyb2xzWydwYXNzd29yZCddLnRvdWNoZWQgJiYgcGFzc3JvZEZvcm0uY29udHJvbHNbJ3Bhc3N3b3JkJ10uaW52YWxpZCkge1xuICAgICAgICAgICAgICAgIDxtYXQtZXJyb3I+XG4gICAgICAgICAgICAgICAgICBAaWYgKHBhc3Nyb2RGb3JtLmNvbnRyb2xzWydwYXNzd29yZCddLmVycm9ycz8uWydyZXF1aXJlZCddKSB7XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGkxOG4+UGFzc3dvcmQgcmVxdWlyZWQ8L3NwYW4+XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICBAaWYgKHBhc3Nyb2RGb3JtLmNvbnRyb2xzWydwYXNzd29yZCddLmVycm9ycz8uWydtaW5sZW5ndGgnXSkge1xuICAgICAgICAgICAgICAgICAgICA8c3BhbiBpMThuPlBhc3N3b3JkIHRvbyBzaG9ydDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICA8L21hdC1lcnJvcj5cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICAgICAgICA8L2Zvcm0+XG4gICAgICAgIH1cbiAgICAgICAgQGlmICh0YWJJbmRleCgpID09PSAxKSB7XG4gICAgICAgICAgPGZvcm0gW2Zvcm1Hcm91cF09XCJjb2RlRm9ybVwiIGNsYXNzPVwiZmxleCBmbGV4LWNvbFwiPlxuICAgICAgICAgICAgQGlmIChoYXNPVFApIHtcbiAgICAgICAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGFwcGVhcmFuY2U9XCJmaWxsXCI+XG4gICAgICAgICAgICAgICAgPG1hdC1sYWJlbCBpMThuPiBQaG9uZSA8L21hdC1sYWJlbD5cbiAgICAgICAgICAgICAgICA8aW5wdXQgYXV0b2NvbXBsZXRlIG1hdElucHV0IGZvcm1Db250cm9sTmFtZT1cInBob25lXCIgcmVxdWlyZWQgLz5cbiAgICAgICAgICAgICAgICBAaWYgKGNvZGVGb3JtLmNvbnRyb2xzWydwaG9uZSddLnRvdWNoZWQgJiYgY29kZUZvcm0uY29udHJvbHNbJ3Bob25lJ10uaW52YWxpZCkge1xuICAgICAgICAgICAgICAgICAgPG1hdC1lcnJvcj5cbiAgICAgICAgICAgICAgICAgICAgQGlmIChjb2RlRm9ybS5jb250cm9sc1sncGhvbmUnXS5lcnJvcnM/LlsncmVxdWlyZWQnXSkge1xuICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGkxOG4+IFBob25lIHJlcXVpcmVkPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIEBpZiAoY29kZUZvcm0uY29udHJvbHNbJ3Bob25lJ10uZXJyb3JzPy5bJ3BhdHRlcm4nXSkge1xuICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGkxOG4+IFBob25lIGludmFsaWQgPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICA8L21hdC1lcnJvcj5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGp1c3RpZnktYmV0d2VlbiBpdGVtcy1jZW50ZXJcIj5cbiAgICAgICAgICAgICAgICA8bWF0LWZvcm0tZmllbGQgYXBwZWFyYW5jZT1cImZpbGxcIj5cbiAgICAgICAgICAgICAgICAgIDxtYXQtbGFiZWwgaTE4bj4gQ29kZSA8L21hdC1sYWJlbD5cbiAgICAgICAgICAgICAgICAgIDxpbnB1dCBtYXRJbnB1dCBmb3JtQ29udHJvbE5hbWU9XCJjb2RlXCIgcmVxdWlyZWQgLz5cbiAgICAgICAgICAgICAgICAgIEBpZiAoY29kZUZvcm0uY29udHJvbHNbJ2NvZGUnXS50b3VjaGVkICYmIGNvZGVGb3JtLmNvbnRyb2xzWydjb2RlJ10uaW52YWxpZCkge1xuICAgICAgICAgICAgICAgICAgICA8bWF0LWVycm9yPlxuICAgICAgICAgICAgICAgICAgICAgIEBpZiAoY29kZUZvcm0uY29udHJvbHNbJ2NvZGUnXS5lcnJvcnM/LlsncmVxdWlyZWQnXSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gaTE4bj5Db2RlIHJlcXVpcmVkPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgPC9tYXQtZXJyb3I+XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICAgICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgICBtYXQtZmxhdC1idXR0b25cbiAgICAgICAgICAgICAgICAgIChjbGljayk9XCJzZW5kU01TQ29kZSgpXCJcbiAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJjb3VudERvd25cIlxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJtYXgtdy1bMTI4cHhdIHRleHQtd2hpdGUgdGV4dC1jZW50ZXJcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIDxzcGFuIGkxOG4+e3sgc2hvd0J1dHRvblRleHQgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgfVxuICAgICAgICAgIDwvZm9ybT5cbiAgICAgICAgfVxuICAgICAgICBAaWYgKHRhYkluZGV4KCkgPT09IDIpIHtcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwidy1bMTkwcHhdIGgtWzE5MHB4XSBtbC1bNTZweF1cIj5cbiAgICAgICAgICAgIDxpZnJhbWUgW3NyY109XCJ1cmxTYWZlXCIgY2xhc3M9XCJ3LWZ1bGwgaC1mdWxsIGlubGluZVwiIHNjcm9sbGluZz1cIm5vXCIgZnJhbWVCb3JkZXI9XCJub1wiICNpZnJhbWU+PC9pZnJhbWU+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIH1cbiAgICAgIDwvZGl2PlxuICAgICAgPCEtLSBhY3Rpb25zIC0tPlxuICAgICAgPGRpdiBjbGFzcz1cImZsZXgganVzdGlmeS1iZXR3ZWVuIGl0ZW1zLWNlbnRlciBweS0zIHBsLTJcIj5cbiAgICAgICAgPGEgY2xhc3M9XCJ1bmRlcmxpbmUgdW5kZXJsaW5lLW9mZnNldC00IHRleHQtc20gdGV4dC1bLS1ydC1icmFuZC1jb2xvcl1cIiBbaHJlZl09XCJzaWduVXBVcmxcIiBpMThuPkNyZWF0ZSBhY2NvdW50PC9hPlxuICAgICAgICA8YnV0dG9uIG1hdC1mbGF0LWJ1dHRvbiAoY2xpY2spPVwibG9naW4oKVwiIGNsYXNzPVwidy1bMTI4cHhdXCIgaTE4bj5TaWduIGluPC9idXR0b24+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==","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.2.0\", ngImport: i0, type: SignupComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.2.0\", 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.2.0\", 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":";;;;;;;;;;;;;;;;;AAQO,MAAM,oBAAoB,CAAC;AAClC,IAAI,WAAW,GAAG;AAClB,QAAQ,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC;AAC7C,QAAQ,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,WAAW,CAAC;AAC7C,QAAQ,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,cAAc,CAAC;AAC3C,QAAQ,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;AACpC,QAAQ,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,KAAK,EAAE,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AACrF,QAAQ,IAAI,CAAC,SAAS,GAAG,EAAE;AAC3B,QAAQ,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,WAAW,GAAG,SAAS;AACjE,QAAQ,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,WAAW,GAAG,CAAC,gBAAgB,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;AAC3F;AACA,IAAI,QAAQ,GAAG;AACf,QAAQ,IAAI,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;AAChD,YAAY,IAAI,CAAC,SAAS,GAAG,CAAC,EAAE,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,iBAAiB,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI;AACtG,YAAY,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,WAAW,GAAG,CAAC,gBAAgB,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,UAAU,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM;AAClI;AACA,QAAQ,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,MAAM,CAAC;AAC9C,aAAa,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,KAAK,KAAK,YAAY,eAAe,CAAC;AACrE,aAAa,SAAS,CAAC,CAAC,KAAK,KAAK;AAClC,YAAY,IAAI,CAAC,SAAS,GAAG,CAAC,EAAE,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,iBAAiB,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,KAAK,CAAC,GAAG;AACpH;AACA,YAAY,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;AAC/C,YAAY,MAAM,YAAY,GAAG,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC;AACjE,YAAY,IAAI,YAAY,EAAE;AAC9B,gBAAgB,OAAO,CAAC,GAAG,CAAC,uBAAuB,EAAE,YAAY,CAAC;AAClE;AACA,iBAAiB;AACjB,gBAAgB,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC;AACvD;AACA,SAAS,CAAC;AACV;AACA,IAAI,WAAW,GAAG;AAClB,QAAQ,IAAI,CAAC,kBAAkB,EAAE,WAAW,EAAE;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,eAAe,CAAC,GAAG,EAAE;AACzB,QAAQ,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,KAAK,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AAC9E;AACA;AACA,IAAI,UAAU,CAAC,KAAK,EAAE,GAAG,EAAE;AAC3B,QAAQ,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;AACpD,QAAQ,MAAM,UAAU,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;AAClD,QAAQ,OAAO,IAAI,KAAK,UAAU;AAClC;AACA,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,oBAAoB,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC,CAAC;AACtL,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,oBAAoB,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,+BAA+B,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,EAAE,iBAAiB,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,mQAAmQ,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,eAAe,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAEA,EAAE,CAAC,SAAS,EAAE,QAAQ,EAAE,iOAAiO,EAAE,MAAM,EAAE,CAAC,WAAW,CAAC,EAAE,QAAQ,EAAE,CAAC,WAAW,EAAE,WAAW,CAAC,EAAE,CAAC,EAAE,aAAa,EAAE,EAAE,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC,CAAC;AACplC;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,oBAAoB,EAAE,UAAU,EAAE,CAAC;AAC9H,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,+BAA+B,EAAE,OAAO,EAAE,CAAC,YAAY,EAAE,eAAe,CAAC,EAAE,aAAa,EAAE,iBAAiB,CAAC,IAAI,EAAE,QAAQ,EAAE,mQAAmQ,EAAE;AACha,SAAS,CAAC,EAAE,CAAC;;ACxEN,MAAM,uBAAuB,CAAC;AACrC,IAAI,WAAW,GAAG;AAClB,IAAI,QAAQ,GAAG;AACf,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,uBAAuB,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC,CAAC;AACzL,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,uBAAuB,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,kCAAkC,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,iCAAiC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AACxQ;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,uBAAuB,EAAE,UAAU,EAAE,CAAC;AACjI,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,kCAAkC,EAAE,QAAQ,EAAE,iCAAiC,EAAE;AAChH,SAAS,CAAC,EAAE,cAAc,EAAE,MAAM,EAAE,EAAE,CAAC;;ACHhC,MAAM,eAAe,CAAC;AAC7B,IAAI,WAAW,GAAG;AAClB,QAAQ,IAAI,CAAC,OAAO,GAAG,EAAE;AACzB,QAAQ,IAAI,CAAC,QAAQ,GAAG,EAAE;AAC1B,QAAQ,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC;AAC7C,QAAQ,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,WAAW,CAAC;AAC7C,QAAQ,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,cAAc,CAAC;AAC3C,QAAQ,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;AACpC,QAAQ,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;AAC9C,QAAQ,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,WAAW,CAAC;AAC3C;AACA,IAAI,QAAQ,GAAG;AACf,QAAQ,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,SAAS,CAAC,IAAI,KAAK;AAC1E,QAAQ,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,UAAU,CAAC,IAAI,GAAG;AAC1E,QAAQ,IAAI,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;AAChD,YAAY,IAAI,CAAC,MAAM,EAAE;AACzB;AACA;AACA,IAAI,MAAM,GAAG;AACb,QAAQ,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC;AAC5C,YAAY,IAAI,EAAE,CAAC,GAAG,KAAK;AAC3B;AACA;AACA;AACA;AACA;AACA,gBAAgB,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC,QAAQ;AACpD,aAAa;AACb,YAAY,KAAK,EAAE,CAAC,KAAK,KAAK;AAC9B,gBAAgB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC;AACjD,aAAa;AACb,SAAS,CAAC;AACV;AACA,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC,CAAC;AACjL,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,eAAe,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,yBAAyB,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,4BAA4B,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,mBAAmB,EAAE,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,uBAAuB,EAAE,CAAC,EAAE,CAAC,CAAC;AACxW;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE,UAAU,EAAE,CAAC;AACzH,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,mBAAmB,EAAE,uBAAuB,CAAC,EAAE,QAAQ,EAAE,yBAAyB,EAAE,QAAQ,EAAE,4BAA4B,EAAE;AAC3J,SAAS,CAAC,EAAE,CAAC;;AC7CN,MAAM,sBAAsB,CAAC;AACpC,IAAI,WAAW,GAAG;AAClB,IAAI,QAAQ,GAAG;AACf,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC,CAAC;AACxL,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,sBAAsB,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,gCAAgC,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,+BAA+B,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AACnQ;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE,UAAU,EAAE,CAAC;AAChI,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,gCAAgC,EAAE,QAAQ,EAAE,+BAA+B,EAAE;AAC5G,SAAS,CAAC,EAAE,cAAc,EAAE,MAAM,EAAE,EAAE,CAAC;;ACThC,MAAM,kBAAkB,CAAC;AAChC,IAAI,WAAW,GAAG;AAClB,QAAQ,IAAI,CAAC,aAAa,GAAG,IAAI,YAAY,EAAE;AAC/C;AACA,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC,CAAC;AACpL,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,kBAAkB,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;AAC1J,IAAI,SAAS,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC,qBAAqB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,CAAC;AAC5J;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE,UAAU,EAAE,CAAC;AAC5H,YAAY,IAAI,EAAE,UAAU;AAC5B,YAAY,IAAI,EAAE,CAAC;AACnB,oBAAoB,UAAU,EAAE,MAAM;AACtC,iBAAiB;AACjB,SAAS,EAAE;AACX,YAAY,IAAI,EAAE;AAClB,SAAS,CAAC,EAAE,cAAc,EAAE,MAAM,EAAE,EAAE,CAAC;;ACJhC,MAAM,eAAe,SAAS,aAAa,CAAC;AACnD,IAAI,OAAO,CAAC,KAAK,EAAE;AACnB,QAAQ,IAAI,KAAK,CAAC,MAAM,KAAK,MAAM,CAAC,QAAQ,CAAC,MAAM;AACnD,YAAY,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC;AACtD,YAAY,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;AAC1D,YAAY;AACZ;AACA,QAAQ,IAAI,KAAK,CAAC,MAAM,KAAK,IAAI,CAAC,WAAW,CAAC,WAAW,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,GAAG,EAAE;AACtF,YAAY,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,WAAW,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,GAAG,IAAI,CAAC,QAAQ;AACjI;AACA;AACA,IAAI,WAAW,GAAG;AAClB,QAAQ,KAAK,EAAE;AACf,QAAQ,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC;AAC7C,QAAQ,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,YAAY,CAAC;AAC/C,QAAQ,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC;AACzE,QAAQ,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC;AAC/D,QAAQ,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC;AACrE,QAAQ,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC;AACrE,QAAQ,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;AAC9C,QAAQ,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;AAC9C,QAAQ,IAAI,CAAC,eAAe,GAAG,MAAM,CAAC,eAAe,CAAC;AACtD,QAAQ,IAAI,CAAC,iBAAiB,GAAG,MAAM,CAAC,kBAAkB,CAAC;AAC3D,QAAQ,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,YAAY,CAAC;AAC7C,QAAQ,IAAI,CAAC,QAAQ,GAAG,EAAE;AAC1B,QAAQ,IAAI,CAAC,SAAS,GAAG,EAAE;AAC3B,QAAQ,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,CAAC,EAAE,IAAI,SAAS,GAAG,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;AACpF,QAAQ,IAAI,CAAC,SAAS,GAAG,KAAK;AAC9B,QAAQ,IAAI,CAAC,aAAa,GAAG,EAAE;AAC/B,QAAQ,IAAI,CAAC,cAAc,GAAG,CAAC,IAAI,CAAC;AACpC,QAAQ,IAAI,CAAC,KAAK,GAAG,+BAA+B;AACpD,QAAQ,IAAI,CAAC,KAAK,GAAG,KAAK;AAC1B,QAAQ,IAAI,CAAC,SAAS,GAAG,KAAK;AAC9B,QAAQ,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,8BAA8B,CAAC,EAAE,CAAC;AACxE,QAAQ,IAAI,CAAC,OAAO,GAAG,8CAA8C;AACrE,QAAQ,MAAM,CAAC,MAAM;AACrB,YAAY,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE;AACzC,YAAY,IAAI,KAAK,KAAK,CAAC,EAAE;AAC7B,gBAAgB,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE;AACrC;AACA,YAAY,IAAI,KAAK,KAAK,CAAC,EAAE;AAC7B,gBAAgB,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE;AACxC;AACA,YAAY,IAAI,KAAK,KAAK,CAAC,EAAE;AAC7B,gBAAgB,IAAI,CAAC,SAAS,GAAG,IAAI;AACrC,gBAAgB,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE;AACrC,gBAAgB,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE;AACxC,gBAAgB,IAAI,CAAC,MAAM,EAAE;AAC7B;AACA,SAAS,CAAC;AACV;AACA,IAAI,QAAQ,GAAG;AACf,QAAQ,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,SAAS,CAAC;AAC7C,QAAQ,IAAI,IAAI,CAAC,WAAW,EAAE;AAC9B,YAAY,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;AACtD;AACA,gBAAgB,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;AACtD,gBAAgB,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;AAChF,aAAa,CAAC;AACd;AACA,QAAQ,IAAI,IAAI,CAAC,MAAM,EAAE;AACzB,YAAY,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;AACnD,gBAAgB,KAAK,EAAE,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,EAAE,UAAU,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC,CAAC;AAClG,gBAAgB,IAAI,EAAE,CAAC,IAAI,EAAE,UAAU,CAAC,QAAQ,CAAC;AACjD,aAAa,CAAC;AACd;AACA,QAAQ,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,MAAM,KAAK;AACrD,YAAY,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,GAAG,CAAC;AACtD,YAAY,MAAM,UAAU,GAAG,kBAAkB,CAAC,IAAI,CAAC,QAAQ,CAAC;AAChE,YAAY,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,QAAQ,GAAG,CAAC,gBAAgB,EAAE,UAAU,CAAC,CAAC,GAAG,QAAQ;AACvF,SAAS,CAAC;AACV;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,IAAI,IAAI,GAAG;AACf,QAAQ,OAAO,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ;AACzF;AACA,IAAI,WAAW,GAAG;AAClB,QAAQ,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC;AACvD,QAAQ,IAAI,CAAC,YAAY,EAAE,KAAK,EAAE;AAClC,YAAY;AACZ;AACA,QAAQ,MAAM,KAAK,GAAG,YAAY,CAAC,KAAK;AACxC,QAAQ,IAAI,CAAC,SAAS,GAAG,IAAI;AAC7B,QAAQ,MAAM,KAAK,GAAG,WAAW,CAAC,MAAM;AACxC,YAAY,IAAI,IAAI,CAAC,aAAa,IAAI,CAAC,EAAE;AACzC,gBAAgB,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC,QAAQ,CAAC;AACjF;AACA,iBAAiB;AACjB,gBAAgB,aAAa,CAAC,KAAK,CAAC;AACpC,gBAAgB,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC,CAAC,MAAM,CAAC;AACxD,gBAAgB,IAAI,CAAC,SAAS,GAAG,KAAK;AACtC,gBAAgB,IAAI,CAAC,aAAa,GAAG,EAAE;AACvC;AACA,SAAS,EAAE,IAAI,CAAC;AAChB,QAAQ,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,SAAS,CAAC;AACjE,YAAY,IAAI,EAAE,CAAC,GAAG,KAAK;AAC3B,gBAAgB,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC;AACpD,aAAa;AACb,YAAY,KAAK,EAAE,CAAC,KAAK,KAAK;AAC9B,gBAAgB,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC;AACxD,aAAa;AACb,SAAS,CAAC;AACV;AACA,IAAI,KAAK,GAAG;AACZ,QAAQ,IAAI,IAAI,GAAG,EAAE;AACrB,QAAQ,IAAI,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE;AACnC,YAAY,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE;AACzC,gBAAgB;AAChB;AACA,YAAY,IAAI,GAAG;AACnB,gBAAgB,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,KAAK;AACnD,gBAAgB,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,KAAK;AACrD,aAAa;AACb;AACA,QAAQ,IAAI,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE;AACnC,YAAY,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE;AACtC,gBAAgB;AAChB;AACA,YAAY,IAAI,GAAG;AACnB,gBAAgB,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK;AAC/C,gBAAgB,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK;AAC7C,aAAa;AACb;AACA,QAAQ,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC;AAC/C,YAAY,IAAI,EAAE,MAAM;AACxB,gBAAgB,IAAI,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;AACxD,oBAAoB,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,WAAW,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,GAAG,IAAI,CAAC,QAAQ;AACzI;AACA,aAAa;AACb,YAAY,KAAK,EAAE,CAAC,KAAK,KAAK;AAC9B,gBAAgB,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC;AACxD,aAAa;AACb,SAAS,CAAC;AACV;AACA,IAAI,MAAM,GAAG;AACb;AACA,QAAQ,MAAM,WAAW,GAAG,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,eAAe,CAAC;AACtE,QAAQ,MAAM,UAAU,GAAG,SAAS,CAAC,WAAW,CAAC;AACjD,QAAQ,MAAM,GAAG,GAAG,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,mFAAmF,EAAE,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC;AAC7L,QAAQ,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,8BAA8B,CAAC,GAAG,CAAC;AACzE;AACA,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC,CAAC;AACjL,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,eAAe,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,yBAAyB,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,m7JAAm7J,EAAE,MAAM,EAAE,CAAC,sYAAsY,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,mBAAmB,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE,CAAC,aAAa,EAAE,QAAQ,EAAE,8CAA8C,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE,CAAC,oBAAoB,EAAE,QAAQ,EAAE,8MAA8M,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE,CAAC,eAAe,EAAE,QAAQ,EAAE,2CAA2C,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE,CAAC,oBAAoB,EAAE,QAAQ,EAAE,0FAA0F,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE,CAAC,iBAAiB,EAAE,QAAQ,EAAE,wIAAwI,EAAE,MAAM,EAAE,CAAC,UAAU,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE,CAAC,kBAAkB,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,EAAE,CAAC,WAAW,CAAC,EAAE,OAAO,EAAE,CAAC,UAAU,CAAC,EAAE,QAAQ,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE,CAAC,eAAe,EAAE,QAAQ,EAAE,mBAAmB,EAAE,MAAM,EAAE,CAAC,iBAAiB,EAAE,UAAU,EAAE,SAAS,CAAC,EAAE,OAAO,EAAE,CAAC,eAAe,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,uBAAuB,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE,CAAC,SAAS,EAAE,QAAQ,EAAE,iOAAiO,EAAE,MAAM,EAAE,CAAC,WAAW,CAAC,EAAE,QAAQ,EAAE,CAAC,WAAW,EAAE,WAAW,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE,CAAC,YAAY,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,EAAE,CAAC,oBAAoB,EAAE,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,iBAAiB,EAAE,WAAW,CAAC,EAAE,QAAQ,EAAE,CAAC,cAAc,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,uBAAuB,EAAE,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,yHAAyH,EAAE,MAAM,EAAE,CAAC,UAAU,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,OAAO,EAAE,UAAU,EAAE,qBAAqB,CAAC,EAAE,QAAQ,EAAE,CAAC,UAAU,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,aAAa,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC,EAAE,OAAO,EAAE,CAAC,cAAc,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,aAAa,EAAE,EAAE,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC,CAAC;AACvoQ;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE,UAAU,EAAE,CAAC;AACzH,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,mBAAmB,EAAE,uBAAuB,EAAE,aAAa,EAAE,YAAY,CAAC,EAAE,QAAQ,EAAE,yBAAyB,EAAE,aAAa,EAAE,iBAAiB,CAAC,IAAI,EAAE,QAAQ,EAAE,m7JAAm7J,EAAE,MAAM,EAAE,CAAC,sYAAsY,CAAC,EAAE;AACxgL,SAAS,CAAC,EAAE,cAAc,EAAE,MAAM,EAAE,EAAE,cAAc,EAAE,EAAE,OAAO,EAAE,CAAC;AAClE,gBAAgB,IAAI,EAAE,YAAY;AAClC,gBAAgB,IAAI,EAAE,CAAC,gBAAgB,EAAE,CAAC,QAAQ,CAAC;AACnD,aAAa,CAAC,EAAE,EAAE,CAAC;;AC7JZ,MAAM,eAAe,SAAS,aAAa,CAAC;AACnD,IAAI,WAAW,GAAG;AAClB,QAAQ,KAAK,CAAC,GAAG,SAAS,CAAC;AAC3B,QAAQ,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC;AAC7C,QAAQ,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;AAC9C,QAAQ,IAAI,CAAC,eAAe,GAAG,MAAM,CAAC,eAAe,CAAC;AACtD,QAAQ,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;AAC9C,QAAQ,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;AACpC,QAAQ,IAAI,CAAC,QAAQ,GAAG,GAAG;AAC3B,QAAQ,IAAI,CAAC,SAAS,GAAG,EAAE;AAC3B,QAAQ,IAAI,CAAC,QAAQ,GAAG,KAAK;AAC7B,QAAQ,IAAI,CAAC,SAAS,GAAG,KAAK;AAC9B,QAAQ,IAAI,CAAC,aAAa,GAAG,EAAE;AAC/B,QAAQ,IAAI,CAAC,cAAc,GAAG,MAAM;AACpC;AACA,IAAI,QAAQ,GAAG;AACf,QAAQ,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,SAAS,CAAC;AAC7C,QAAQ,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;AACjD,YAAY,SAAS,EAAE,CAAC,IAAI,EAAE,UAAU,CAAC,QAAQ,CAAC;AAClD,YAAY,QAAQ,EAAE,CAAC,IAAI,EAAE,UAAU,CAAC,QAAQ,CAAC;AACjD,YAAY,KAAK,EAAE,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,EAAE,UAAU,CAAC,OAAO,CAAC,iDAAiD,CAAC,CAAC,CAAC;AACvH,YAAY,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;AAC5E,YAAY,UAAU,EAAE,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;AAC9E,SAAS,CAAC;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,UAAU,CAAC,IAAI,GAAG;AAC1E,QAAQ,MAAM,UAAU,GAAG,kBAAkB,CAAC,IAAI,CAAC,QAAQ,CAAC;AAC5D,QAAQ,IAAI,CAAC,SAAS,GAAG,CAAC,gBAAgB,EAAE,UAAU,CAAC,CAAC;AACxD;AACA,IAAI,WAAW,GAAG;AAClB,QAAQ,MAAM,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC;AACzD,QAAQ,IAAI,CAAC,YAAY,EAAE,KAAK,EAAE;AAClC,YAAY;AACZ;AACA,QAAQ,MAAM,KAAK,GAAG,YAAY,CAAC,KAAK;AACxC,QAAQ,IAAI,CAAC,SAAS,GAAG,IAAI;AAC7B,QAAQ,MAAM,KAAK,GAAG,WAAW,CAAC,MAAM;AACxC,YAAY,IAAI,IAAI,CAAC,aAAa,IAAI,CAAC,EAAE;AACzC,gBAAgB,IAAI,CAAC,cAAc,GAAG,CAAC,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC,QAAQ,CAAC;AACvE;AACA,iBAAiB;AACjB,gBAAgB,aAAa,CAAC,KAAK,CAAC;AACpC,gBAAgB,IAAI,CAAC,cAAc,GAAG,QAAQ;AAC9C,gBAAgB,IAAI,CAAC,SAAS,GAAG,KAAK;AACtC,gBAAgB,IAAI,CAAC,aAAa,GAAG,EAAE;AACvC;AACA,SAAS,EAAE,IAAI,CAAC;AAChB,QAAQ,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,SAAS,CAAC;AACjE,YAAY,IAAI,EAAE,CAAC,GAAG,KAAK;AAC3B,gBAAgB,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC;AACpD,aAAa;AACb,YAAY,KAAK,EAAE,CAAC,KAAK,KAAK;AAC9B,gBAAgB,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC;AACxD,aAAa;AACb,SAAS,CAAC;AACV;AACA,IAAI,MAAM,GAAG;AACb,QAAQ,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE;AACpC,YAAY;AACZ;AACA,QAAQ,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC;AACjE,YAAY,IAAI,EAAE,CAAC,GAAG,KAAK;AAC3B,gBAAgB,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC;AAChC,gBAAgB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY;AACzG,aAAa;AACb,YAAY,KAAK,EAAE,CAAC,KAAK,KAAK;AAC9B,gBAAgB,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC;AACxD,aAAa;AACb,SAAS,CAAC;AACV;AACA,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC,CAAC;AACnL,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,eAAe,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,yBAAyB,EAAE,eAAe,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,sxMAAsxM,EAAE,MAAM,EAAE,CAAC,gaAAga,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,mBAAmB,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE,CAAC,aAAa,EAAE,QAAQ,EAAE,8CAA8C,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE,CAAC,oBAAoB,EAAE,QAAQ,EAAE,8MAA8M,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE,CAAC,eAAe,EAAE,QAAQ,EAAE,2CAA2C,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE,CAAC,oBAAoB,EAAE,QAAQ,EAAE,0FAA0F,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE,CAAC,iBAAiB,EAAE,QAAQ,EAAE,wIAAwI,EAAE,MAAM,EAAE,CAAC,UAAU,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE,CAAC,kBAAkB,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,EAAE,CAAC,WAAW,CAAC,EAAE,OAAO,EAAE,CAAC,UAAU,CAAC,EAAE,QAAQ,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE,CAAC,eAAe,EAAE,QAAQ,EAAE,mBAAmB,EAAE,MAAM,EAAE,CAAC,iBAAiB,EAAE,UAAU,EAAE,SAAS,CAAC,EAAE,OAAO,EAAE,CAAC,eAAe,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,uBAAuB,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE,CAAC,SAAS,EAAE,QAAQ,EAAE,iOAAiO,EAAE,MAAM,EAAE,CAAC,WAAW,CAAC,EAAE,QAAQ,EAAE,CAAC,WAAW,EAAE,WAAW,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE,CAAC,YAAY,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,EAAE,CAAC,oBAAoB,EAAE,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,iBAAiB,EAAE,WAAW,CAAC,EAAE,QAAQ,EAAE,CAAC,cAAc,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,uBAAuB,EAAE,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,yHAAyH,EAAE,MAAM,EAAE,CAAC,UAAU,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,OAAO,EAAE,UAAU,EAAE,qBAAqB,CAAC,EAAE,QAAQ,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE,aAAa,EAAE,EAAE,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC,CAAC;AAC7uS;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE,UAAU,EAAE,CAAC;AACzH,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,mBAAmB,EAAE,uBAAuB,CAAC,EAAE,QAAQ,EAAE,yBAAyB,EAAE,aAAa,EAAE,iBAAiB,CAAC,IAAI,EAAE,QAAQ,EAAE,sxMAAsxM,EAAE,MAAM,EAAE,CAAC,gaAAga,CAAC,EAAE;AACx2N,SAAS,CAAC,EAAE,CAAC;;ACtFD,MAAC,aAAa,GAAG;AAC7B,IAAI;AACJ,QAAQ,IAAI,EAAE,EAAE;AAChB,QAAQ,SAAS,EAAE,MAAM;AACzB,QAAQ,UAAU,EAAE,QAAQ;AAC5B,KAAK;AACL,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC,SAAS,CAAC,EAAE,SAAS,EAAE,eAAe,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;AACvG,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,eAAe,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;AAC7E,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,eAAe,EAAE;AAClD;AACA,IAAI;AACJ,QAAQ,IAAI,EAAE,sBAAsB;AACpC,QAAQ,SAAS,EAAE,sBAAsB;AACzC,QAAQ,IAAI,EAAE,EAAE,KAAK,EAAE,gBAAgB,EAAE;AACzC,KAAK;AACL,IAAI;AACJ,QAAQ,IAAI,EAAE,QAAQ;AACtB,QAAQ,SAAS,EAAE,uBAAuB;AAC1C,QAAQ,IAAI,EAAE,EAAE,KAAK,EAAE,iBAAiB,EAAE;AAC1C,KAAK;AACL,IAAI;AACJ,QAAQ,IAAI,EAAE,cAAc;AAC5B,QAAQ,SAAS,EAAE,qBAAqB;AACxC,KAAK;AACL,IAAI;AACJ,QAAQ,IAAI,EAAE,WAAW;AACzB,QAAQ,SAAS,EAAE,kBAAkB;AACrC,KAAK;AACL;;AClCY,MAAC,eAAe,GAAG;AAC/B,IAAI;AACJ,QAAQ,IAAI,EAAE,EAAE;AAChB,QAAQ,aAAa,EAAE,MAAM,OAAO,wDAAuC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,CAAC;AACzG,QAAQ,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;AAC7B,KAAK;AACL,IAAI;AACJ,QAAQ,IAAI,EAAE,eAAe;AAC7B,QAAQ,aAAa,EAAE,MAAM,OAAO,wDAAgD,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,CAAC;AAClH,KAAK;AACL,IAAI;AACJ,QAAQ,IAAI,EAAE,SAAS;AACvB,QAAQ,aAAa,EAAE,MAAM,OAAO,2DAA2D,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,gBAAgB,CAAC;AAChI,KAAK;AACL,IAAI;AACJ,QAAQ,IAAI,EAAE,UAAU;AACxB,QAAQ,aAAa,EAAE,MAAM,OAAO,4DAA6D,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,iBAAiB,CAAC;AACnI,KAAK;AACL,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,OAAO,0DAA2C,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,eAAe,CAAC,EAAE;AAC/H,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,yDAAyC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,cAAc,CAAC,EAAE;AAC3H,IAAI;AACJ,QAAQ,IAAI,EAAE,wBAAwB;AACtC,QAAQ,aAAa,EAAE,MAAM,OAAO,sEAAmE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,0BAA0B,CAAC;AAClJ,KAAK;AACL,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,yDAAyC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,cAAc,CAAC,EAAE;AAC3H,IAAI;AACJ,QAAQ,IAAI,EAAE,SAAS;AACvB,QAAQ,YAAY,EAAE,MAAM,OAAO,wDAA0C,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,CAAC;AAC3G,KAAK;AACL,IAAI;AACJ,QAAQ,IAAI,EAAE,UAAU;AACxB,QAAQ,YAAY,EAAE,MAAM,OAAO,yDAA4C,CAAC;AAChF,QAAQ,IAAI,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE;AACnC,KAAK;AACL,IAAI;AACJ,QAAQ,IAAI,EAAE,eAAe;AAC7B,QAAQ,YAAY,EAAE,MAAM,OAAO,gCAAgC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,kBAAkB,CAAC;AACtG,QAAQ,IAAI,EAAE,EAAE,KAAK,EAAE,eAAe,EAAE;AACxC,KAAK;AACL;;ACpCO,SAAS,wBAAwB,GAAG;AAC3C,IAAI,MAAM,QAAQ,GAAG;AACrB,QAAQ;AACR,YAAY,OAAO,EAAE,MAAM;AAC3B,YAAY,QAAQ,EAAE,aAAa;AACnC,YAAY,KAAK,EAAE,IAAI;AACvB,SAAS;AACT,KAAK;AACL,IAAI,OAAO,wBAAwB,CAAC,QAAQ,CAAC;AAC7C;;ACZA;AACA;AACA;;;;"}
|
|
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', ...(ngDevMode ? [{ debugName: \"service\" }] : []));\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.2.0\", ngImport: i0, type: TopbarLoginComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.1.0\", version: \"20.2.0\", 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.2.0\", 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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9wYmFyLWxvZ2luLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItYWNjb3VudC9zcmMvbGliL2NvbXBvbmVudHMvdG9wYmFyLWxvZ2luL3RvcGJhci1sb2dpbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyLWFjY291bnQvc3JjL2xpYi9jb21wb25lbnRzL3RvcGJhci1sb2dpbi90b3BiYXItbG9naW4uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBcUIsV0FBVyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUcsT0FBTyxFQUFFLFlBQVksRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUVMLE1BQU0sRUFFTixlQUFlLEVBR2YsY0FBYyxHQUVmLE1BQU0saUJBQWlCLENBQUM7QUFDekIsT0FBTyxFQUFFLE1BQU0sRUFBZ0IsTUFBTSxNQUFNLENBQUM7OztBQVU1QyxNQUFNLE9BQU8sb0JBQW9CO0lBUGpDO1FBUUUsZ0JBQVcsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDakMsZUFBVSxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNqQyxVQUFLLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQy9CLFdBQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFHeEIsWUFBTyxHQUFHLEtBQUssQ0FBQyxLQUFLLG1EQUFDLENBQUM7UUFDdkIsY0FBUyxHQUFHLEVBQUUs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QUFvQjtrQkFQaEMsU0FBUzsrQkFDRSwrQkFBK0IsV0FDaEMsQ0FBQyxZQUFZLEVBQUUsZUFBZSxDQUFDLGlCQUd6QixpQkFBaUIsQ0FBQyxJQUFJIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkRlc3Ryb3ksIE9uSW5pdCwgUExBVEZPUk1fSUQsIFZpZXdFbmNhcHN1bGF0aW9uLCBpbmplY3QsIGlucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUsIGlzUGxhdGZvcm1Ccm93c2VyIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEFQUF9DT05GSUcgfSBmcm9tICdAcm9sYXRlY2gvYW5ndWxhci1jb21tb24nO1xuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7XG4gIE5hdmlnYXRpb25FbmQsXG4gIFJvdXRlcixcbiAgRXZlbnQsXG4gIE5hdmlnYXRpb25TdGFydCxcbiAgTmF2aWdhdGlvbkNhbmNlbCxcbiAgTmF2aWdhdGlvbkVycm9yLFxuICBBY3RpdmF0ZWRSb3V0ZSxcbiAgUm91dGUsXG59IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBmaWx0ZXIsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xudHlwZSBOYXZpZ2F0aW9uRXZlbnQgPSBOYXZpZ2F0aW9uU3RhcnQgfCBOYXZpZ2F0aW9uRW5kIHwgTmF2aWdhdGlvbkNhbmNlbCB8IE5hdmlnYXRpb25FcnJvcjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncm9sYXRlY2gtYWNjb3VudC10b3BiYXItbG9naW4nLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBNYXRCdXR0b25Nb2R1bGVdLFxuICB0ZW1wbGF0ZVVybDogJy4vdG9wYmFyLWxvZ2luLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL3RvcGJhci1sb2dpbi5jb21wb25lbnQuc2NzcycsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG59KVxuZXhwb3J0IGNsYXNzIFRvcGJhckxvZ2luQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBlbnZpcm9ubWVudCA9IGluamVjdChBUFBfQ09ORklHKTtcbiAgcGxhdGZvcm1JZCA9IGluamVjdChQTEFURk9STV9JRCk7XG4gIHJvdXRlID0gaW5qZWN0KEFjdGl2YXRlZFJvdXRlKTtcbiAgcm91dGVyID0gaW5qZWN0KFJvdXRlcik7XG4gIHByaXZhdGUgcm91dGVyU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb24gfCB1bmRlZmluZWQ7XG5cbiAgc2VydmljZSA9IGlucHV0KCd3d3cnKTtcbiAgc2lnbmluVXJsID0gJyc7XG4gIHNpZ251cFVybCA9IHRoaXMuZW52aXJvbm1lbnQuYWNjb3VudHNVcmwgKyAnL3NpZ251cCc7XG4gIGxvZ291dFVybCA9IHRoaXMuZW52aXJvbm1lbnQuYWNjb3VudHNVcmwgKyBgL2xvZ291dD9zZXJ2aWNlPSR7dGhpcy5zZXJ2aWNlKCl9YDtcbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgaWYgKGlzUGxhdGZvcm1Ccm93c2VyKHRoaXMucGxhdGZvcm1JZCkpIHtcbiAgICAgIHRoaXMuc2lnbmluVXJsID0gYCR7dGhpcy5lbnZpcm9ubWVudC5hY2NvdW50c1VybH0vc2lnbmluP2NvbnRpbnVlPWAgKyB3aW5kb3cubG9jYXRpb24uaHJlZjtcbiAgICAgIHRoaXMubG9nb3V0VXJsID0gdGhpcy5lbnZpcm9ubWVudC5hY2NvdW50c1VybCArIGAvbG9nb3V0P3NlcnZpY2U9JHt0aGlzLnNlcnZpY2UoKX0mY29udGludWU9YCArIHdpbmRvdy5sb2NhdGlvbi5vcmlnaW47XG4gICAgfVxuXG4gICAgdGhpcy5yb3V0ZXJTdWJzY3JpcHRpb24gPSB0aGlzLnJvdXRlci5ldmVudHNcbiAgICAgIC5waXBlKGZpbHRlcigoZXZlbnQ6IEV2ZW50KTogZXZlbnQgaXMgTmF2aWdhdGlvbkV2ZW50ID0+IGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvblN0YXJ0KSlcbiAgICAgIC5zdWJzY3JpYmUoKGV2ZW50KSA9PiB7XG4gICAgICAgIHRoaXMuc2lnbmluVXJsID0gYCR7dGhpcy5lbnZpcm9ubWVudC5hY2NvdW50c1VybH0vc2lnbmluP2NvbnRpbnVlPWAgKyB3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgZXZlbnQudXJsO1xuXG4gICAgICAgIC8vIHRoaXMuY2hlY2tSb3V0ZUd1YXJkKGV2ZW50LnVybCk7XG5cbiAgICAgICAgY29uc3QgY3VycmVudFVybCA9IHRoaXMucm91dGVyLnVybDsgLy8gR2V0IHRoZSBjdXJyZW50IFVSTFxuICAgICAgICBjb25zdCBtYXRjaGVkUm91dGUgPSB0aGlzLmZpbmRSb3V0ZUNvbmZpZyhjdXJyZW50VXJsKTtcblxuICAgICAgICBpZiAobWF0Y2hlZFJvdXRlKSB7XG4gICAgICAgICAgY29uc29sZS5sb2coJ01hdGNoZWQgUm91dGUgQ29uZmlnOicsIG1hdGNoZWRSb3V0ZSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgY29uc29sZS5sb2coJ05vIG1hdGNoaW5nIHJvdXRlIGZvdW5kLicpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgfVxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLnJvdXRlclN1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcbiAgfVxuICAvLyBjaGVja1JvdXRlR3VhcmQodXJsOiBzdHJpbmcpOiB2b2lkIHtcbiAgLy8gICAvLyBjb25zdCByb3V0ZSA9IHRoaXMucm91dGVyLmNvbmZpZy5maW5kKChyKSA9PiByLnBhdGggPT09IHJvdXRlUGF0aCk7XG4gIC8vICAgY29uc3Qgcm91dGUgPSB0aGlzLnJvdXRlci5jb25maWcuZmluZCgocjogYW55KSA9PiB0aGlzLm1hdGNoUm91dGUodXJsLCByLnBhdGgpKTtcblxuICAvLyAgIGlmIChyb3V0ZSkge1xuICAvLyAgICAgaWYgKHJvdXRlLmNhbkFjdGl2YXRlICYmIHJvdXRlLmNhbkFjdGl2YXRlLmxlbmd0aCA+IDApIHtcbiAgLy8gICAgICAgY29uc29sZS5sb2coYFJvdXRlIFwiJHt1cmx9XCIgaGFzIGNhbkFjdGl2YXRlIGd1YXJkczpgLCByb3V0ZS5jYW5BY3RpdmF0ZSk7XG4gIC8vICAgICB9IGVsc2Uge1xuICAvLyAgICAgICBjb25zb2xlLmxvZyhgUm91dGUgXCIke3VybH1cIiBkb2VzIG5vdCBoYXZlIGNhbkFjdGl2YXRlIGd1YXJkcy5gKTtcbiAgLy8gICAgIH1cbiAgLy8gICB9IGVsc2Uge1xuICAvLyAgICAgY29uc29sZS5sb2coYFJvdXRlIFwiJHt1cmx9XCIgbm90IGZvdW5kLmApO1xuICAvLyAgIH1cbiAgLy8gfVxuICAvLyBtYXRjaFJvdXRlKHVybDogc3RyaW5nLCByb3V0ZVBhdGg6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAvLyAgIC8vIFN0cmlwIGxlYWRpbmcvdHJhaWxpbmcgc2xhc2hlcyBmcm9tIFVSTCBhbmQgcm91dGVQYXRoIGFuZCBjb21wYXJlXG4gIC8vICAgcmV0dXJuIHVybC5yZXBsYWNlKC9eXFwvfFxcLyQvZywgJycpID09PSByb3V0ZVBhdGgucmVwbGFjZSgvXlxcL3xcXC8kL2csICcnKTtcbiAgLy8gfVxuICBmaW5kUm91dGVDb25maWcodXJsOiBzdHJpbmcpOiBSb3V0ZSB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMucm91dGVyLmNvbmZpZy5maW5kKChyb3V0ZSkgPT4gdGhpcy5tYXRjaFJvdXRlKHJvdXRlLCB1cmwpKTtcbiAgfVxuXG4gIC8vIEhlbHBlciBmdW5jdGlvbiB0byBjaGVjayBpZiBhIHJvdXRlIG1hdGNoZXMgdGhlIGN1cnJlbnQgVVJMXG4gIG1hdGNoUm91dGUocm91dGU6IFJvdXRlLCB1cmw6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IHBhdGggPSByb3V0ZS5wYXRoPy5zcGxpdCgnLycpLmpvaW4oJycpO1xuICAgIGNvbnN0IHVybFNlZ21lbnQgPSB1cmwuc3BsaXQoJy8nKS5qb2luKCcnKTtcbiAgICByZXR1cm4gcGF0aCA9PT0gdXJsU2VnbWVudDtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImZsZXggaXRlbXMtY2VudGVyXCI+XG4gIDxhIG1hdC1zdHJva2VkLWJ1dHRvbiBjbGFzcz1cIm1yLTIgbWF4LWgtOSBtZDptYXgtaC0xMFwiIFtocmVmXT1cInNpZ25pblVybFwiPjxzcGFuIGkxOG4+U2lnbiBpbjwvc3Bhbj48L2E+XG4gIDxhIG1hdC1mbGF0LWJ1dHRvbiBjbGFzcz1cIm1heC1oLTkgbWQ6bWF4LWgtMTBcIiBbaHJlZl09XCJzaWdudXBVcmxcIj48c3BhbiBpMThuPlNpZ24gdXA8L3NwYW4+PC9hPlxuPC9kaXY+XG4iXX0=","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.2.0\", ngImport: i0, type: ForgotPasswordComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.2.0\", 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.2.0\", 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.2.0\", ngImport: i0, type: LogoutComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.2.0\", 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.2.0\", 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.2.0\", ngImport: i0, type: PasswordresetComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.2.0\", 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.2.0\", 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.2.0\", ngImport: i0, type: WeChatLoginService, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.2.0\", type: WeChatLoginService, isStandalone: true, ngImport: i0 }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.2.0\", ngImport: i0, type: WeChatLoginService, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.2.0\", 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, 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.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, ...(ngDevMode ? [{ debugName: \"tabIndex\" }] : []));\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 if (this.codeForm) {\n this.codeForm.reset();\n }\n }\n if (index === 1) {\n if (this.passrodForm) {\n this.passrodForm.reset();\n }\n }\n if (index === 2) {\n this.isLoading = true;\n if (this.codeForm && this.passrodForm) {\n this.codeForm.reset();\n this.passrodForm.reset();\n }\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.2.0\", ngImport: i0, type: SigninComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.2.0\", 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.2.0\", 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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lnbmluLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItYWNjb3VudC9zcmMvbGliL3BhZ2VzL2FjY291bnRzL3NpZ25pbi9zaWduaW4uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhci1hY2NvdW50L3NyYy9saWIvcGFnZXMvYWNjb3VudHMvc2lnbmluL3NpZ25pbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUF1QixNQUFNLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEgsT0FBTyxFQUFFLFdBQVcsRUFBYSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNwRSxPQUFPLEVBQW1CLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzFFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxVQUFVLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsYUFBYSxFQUFFLFlBQVksRUFBRSxhQUFhLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNuSCxPQUFPLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDaEcsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7Ozs7OztBQVM1RSxNQUFNLE9BQU8sZUFBZ0IsU0FBUSxhQUFhO0lBMEJoRCxPQUFPLENBQUMsS0FBVTtRQUNoQixJQUNFLEtBQUssQ0FBQyxNQUFNLEtBQUssTUFBTSxDQUFDLFFBQVEsQ0FBQyxNQUFNO1lBQ3ZD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QztJQUNwRSxDQUFDOzhHQTdKVSxlQUFlO2tHQUFmLGVBQWUsd0tDaEI1QixtN0pBZ0hBLDZiRHRHWSxtQkFBbUIseXFDQUFFLHVCQUF1Qixna0NBQUUsYUFBYSxvSEFBRSxZQUFZOzsyRkFNeEUsZUFBZTtrQkFQM0IsU0FBUzs4QkFDQyxDQUFDLG1CQUFtQixFQUFFLHVCQUF1QixFQUFFLGFBQWEsRUFBRSxZQUFZLENBQUMsWUFDMUUseUJBQXlCLGlCQUdwQixpQkFBaUIsQ0FBQyxJQUFJO3dEQTRCckMsT0FBTztzQkFETixZQUFZO3VCQUFDLGdCQUFnQixFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNQbGF0Zm9ybUJyb3dzZXIgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBlZmZlY3QsIEhvc3RMaXN0ZW5lciwgaW5qZWN0LCBPbkluaXQsIFBMQVRGT1JNX0lELCBzaWduYWwsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQnVpbGRlciwgRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgU2FmZVJlc291cmNlVXJsLCBEb21TYW5pdGl6ZXIgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcbmltcG9ydCB7IEFuZ3VsYXJDb21tb25Nb2R1bGUsIEFQUF9DT05GSUcgfSBmcm9tICdAcm9sYXRlY2gvYW5ndWxhci1jb21tb24nO1xuaW1wb3J0IHsgQW5ndWxhckNvbXBvbmVudHNNb2R1bGUsIEJhc2VDb21wb25lbnQsIFRhYkNvbXBvbmVudCwgVGFic0NvbXBvbmVudCB9IGZyb20gJ0Byb2xhdGVjaC9hbmd1bGFyLWNvbXBvbmVudHMnO1xuaW1wb3J0IHsgQVVUSF9NRVRIT0RTLCBBdXRoTWV0aG9kLCBBdXRoU2VydmljZSwgQXV0aFVzZXJTZXJ2aWNlIH0gZnJvbSAnQHJvbGF0ZWNoL2FuZ3VsYXItYXV0aCc7XG5pbXBvcnQgeyBXZUNoYXRMb2dpblNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy93ZWNoYXQtbG9naW4uc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBpbXBvcnRzOiBbQW5ndWxhckNvbW1vbk1vZHVsZSwgQW5ndWxhckNvbXBvbmVudHNNb2R1bGUsIFRhYnNDb21wb25lbnQsIFRhYkNvbXBvbmVudF0sXG4gIHNlbGVjdG9yOiAncm9sYXRlY2gtYWNjb3VudC1zaWduaW4nLFxuICB0ZW1wbGF0ZVVybDogJy4vc2lnbmluLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc2lnbmluLmNvbXBvbmVudC5zY3NzJ10sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG59KVxuZXhwb3J0IGNsYXNzIFNpZ25pbkNvbXBvbmVudCBleHRlbmRzIEJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBlbnZpcm9ubWVudCA9IGluamVjdChBUFBfQ09ORklHKTtcbiAgYXV0aE1ldGhvZHMgPSBpbmplY3QoQVVUSF9NRVRIT0RTKVxuICBoYXNQYXNzd29yZCA9IHRoaXMuYXV0aE1ldGhvZHMuaW5jbHVkZXMoQXV0aE1ldGhvZC5QYXNzd29yZCk7XG4gIGhhc09UUCA9IHRoaXMuYXV0aE1ldGhvZHMuaW5jbHVkZXMoQXV0aE1ldGhvZC5PVFApO1xuICBoYXNXZUNoYXQgPSB0aGlzLmF1dGhNZXRob2RzLmluY2x1ZGVzKEF1dGhNZXRob2QuV2VDaGF0KTtcbiAgaGFzR29vZ2xlID0gdGhpcy5hdXRoTWV0aG9kcy5pbmNsdWRlcyhBdXRoTWV0aG9kLkdvb2dsZSk7XG4gIGZvcm1CdWlsZGVyID0gaW5qZWN0KEZvcm1CdWlsZGVyKTtcbiAgYXV0aFNlcnZpY2UgPSBpbmplY3QoQXV0aFNlcnZpY2UpO1xuICBhdXRoVXNlclNlcnZpY2UgPSBpbmplY3QoQXV0aFVzZXJTZXJ2aWNlKTtcbiAgd2VjaHRMb2dpblNlcnZpY2UgPSBpbmplY3QoV2VDaGF0TG9naW5TZXJ2aWNlKTtcbiAgc2FuaXRpemVyID0gaW5qZWN0KERvbVNhbml0aXplcik7XG4gIHBhc3Nyb2RGb3JtITogRm9ybUdyb3VwO1xuICBjb2RlRm9ybSE6IEZvcm1Hcm91cDtcbiAgY29udGludWUgPSAnJztcbiAgc2lnblVwVXJsID0gJyc7XG4gIHRhYkluZGV4ID0gc2lnbmFsKDApO1xuICBjb3VudERvd24gPSBmYWxzZTtcbiAgY291bnREb3duVGltZSA9IDYwO1xuICBzaG93QnV0dG9uVGV4dCA9IGBTZW5kYDtcbiAgYXBwaWQgPSAndGhpcy5lbnZpcm9ubWVudC53ZWNoYXQuYXBwSWQnXG4gIHN0YXRlID0gJ2FkZCc7XG4gIGlzTG9hZGluZyA9IGZhbHNlO1xuICB1cmxTYWZlOiBTYWZlUmVzb3VyY2VVcmwgPSB0aGlzLnNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0UmVzb3VyY2VVcmwoJycpO1xuICBiYXNlVXJsID0gJ2h0dHBzOi8vb3Blbi53ZWl4aW4ucXEuY29tL2Nvbm5lY3QvcXJjb25uZWN0JztcbiAgQEhvc3RMaXN0ZW5lcignd2luZG93Om1lc3NhZ2UnLCBbJyRldmVudCddKVxuICBvbkxvZ2luKGV2ZW50OiBhbnkpOiB2b2lkIHtcbiAgICBpZiAoXG4gICAgICBldmVudC5vcmlnaW4gIT09IHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gfHxcbiAgICAgIC9yZWFjdC1kZXZ0b29scy9naS50ZXN0KGV2ZW50LmRhdGEuc291cmNlKSB8fFxuICAgICAgL2FuZ3VsYXItZGV2dG9vbHMvZ2kudGVzdChldmVudC5kYXRhLnNvdXJjZSlcbiAgICApIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgaWYgKGV2ZW50Lm9yaWdpbiA9PT0gdGhpcy5lbnZpcm9ubWVudC5hY2NvdW50c1VybCAmJiBldmVudC5kYXRhLmNvZGUgPT09IDIwMCkge1xuICAgICAgd2luZG93LmxvY2F0aW9uLmhyZWYgPSB0aGlzLmNvbnRpbnVlID09PSB0aGlzLmVudmlyb25tZW50LmFjY291bnRzVXJsID8gdGhpcy5lbnZpcm9ubWVudC5teWFjY291bnRVcmwgOiB0aGlzLmNvbnRpbnVlO1xuICAgIH1cbiAgfVxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICAgIGVmZmVjdCgoKSA9PiB7XG4gICAgICBjb25zdCBpbmRleCA9IHRoaXMudGFiSW5kZXgoKTtcbiAgICAgIGlmIChpbmRleCA9PT0gMCkge1xuICAgICAgICBpZiAodGhpcy5jb2RlRm9ybSkge1xuICAgICAgICAgIHRoaXMuY29kZUZvcm0ucmVzZXQoKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaWYgKGluZGV4ID09PSAxKSB7XG4gICAgICAgIGlmICh0aGlzLnBhc3Nyb2RGb3JtKSB7XG4gICAgICAgICAgdGhpcy5wYXNzcm9kRm9ybS5yZXNldCgpO1xuICAgICAgICB9XG5cbiAgICAgIH1cbiAgICAgIGlmIChpbmRleCA9PT0gMikge1xuICAgICAgICB0aGlzLmlzTG9hZGluZyA9IHRydWU7XG4gICAgICAgIGlmICh0aGlzLmNvZGVGb3JtICYmIHRoaXMucGFzc3JvZEZvcm0pIHtcbiAgICAgICAgICB0aGlzLmNvZGVGb3JtLnJlc2V0KCk7XG4gICAgICAgICAgdGhpcy5wYXNzcm9kRm9ybS5yZXNldCgpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMud2VjaGF0KCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy50aXRsZVNlcnZpY2Uuc2V0VGl0bGUoJ1NpZ24gaW4nKTtcbiAgICBpZiAodGhpcy5oYXNQYXNzd29yZCkge1xuICAgICAgdGhpcy5wYXNzcm9kRm9ybSA9IHRoaXMuZm9ybUJ1aWxkZXIuZ3JvdXAoe1xuICAgICAgICAvLyBhY2NvdW50OiBbbnVsbCwgW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMucGF0dGVybignXlthLXpBLVowLTkuXyUrLV0rQFthLXpBLVowLTkuLV0rLlthLXpBLVpdezIsfSQnKV1dLFxuICAgICAgICBhY2NvdW50OiBbbnVsbCwgW1ZhbGlkYXRvcnMucmVxdWlyZWRdXSxcbiAgICAgICAgcGFzc3dvcmQ6IFtudWxsLCBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgVmFsaWRhdG9ycy5taW5MZW5ndGgoNildXSxcbiAgICAgIH0pO1xuICAgIH1cbiAgICBpZiAodGhpcy5oYXNPVFApIHtcbiAgICAgIHRoaXMuY29kZUZvcm0gPSB0aGlzLmZvcm1CdWlsZGVyLmdyb3VwKHtcbiAgICAgICAgcGhvbmU6IFtudWxsLCBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgVmFsaWRhdG9ycy5wYXR0ZXJuKCcxKDN8NHw1fDZ8N3w4fDkpXFxcXGR7OX0nKV1dLFxuICAgICAgICBjb2RlOiBbbnVsbCwgVmFsaWRhdG9ycy5yZXF1aXJlZF0sXG4gICAgICB9KTtcbiAgICB9XG4gICAgdGhpcy5yb3V0ZS5xdWVyeVBhcmFtcy5zdWJzY3JpYmUoKHBhcmFtcykgPT4ge1xuICAgICAgdGhpcy5jb250aW51ZSA9IHBhcmFtc1snY29udGludWUnXSB8fCAnLyc7IC8vIERlZmF1bHQgdG8gaG9tZSBpZiBubyBjb250aW51ZSBwYXJhbVxuICAgICAgY29uc3QgZGVjb2RlZFVybCA9IGRlY29kZVVSSUNvbXBvbmVudCh0aGlzLmNvbnRpbnVlKTtcbiAgICAgIHRoaXMuc2lnblVwVXJsID0gdGhpcy5jb250aW51ZSA/IGBzaWdudXA/Y29udGludWU9JHtkZWNvZGVkVXJsfWAgOiAnc2lnbnVwJztcbiAgICB9KTtcbiAgICAvLyB0aGlzLmNvbnRpbnVlID0gdGhpcy5yb3V0ZS5zbmFwc2hvdC5xdWVyeVBhcmFtc1snY29udGludWUnXTtcbiAgICAvLyBpZiAodGhpcy5jb250aW51ZSkge1xuICAgIC8vICAgY29uc3QgZGVjb2RlZFVybCA9IGRlY29kZVVSSUNvbXBvbmVudCh0aGlzLmNvbnRpbnVlKTtcbiAgICAvLyAgIHRoaXMuc2lnblVwVXJsID0gdGhpcy5jb250aW51ZSA/IGBzaWdudXA/Y29udGludWU9JHtkZWNvZGVkVXJsfWAgOiAnc2lnbnVwJztcbiAgICAvLyB9XG4gIH1cbiAgZ2V0IGZvcm0oKSB7XG4gICAgcmV0dXJuIHRoaXMudGFiSW5kZXgoKSA9PT0gMCA/IHRoaXMucGFzc3JvZEZvcm0uY29udHJvbHMgOiB0aGlzLmNvZGVGb3JtLmNvbnRyb2xzO1xuICB9XG4gIHNlbmRTTVNDb2RlKCkge1xuICAgIGNvbnN0IHBob25lQ29udHJvbCA9IHRoaXMuY29kZUZvcm0uZ2V0KCdwaG9uZScpO1xuICAgIGlmICghcGhvbmVDb250cm9sPy52YWxpZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBwaG9uZSA9IHBob25lQ29udHJvbC52YWx1ZTtcbiAgICB0aGlzLmNvdW50RG93biA9IHRydWU7XG4gICAgY29uc3Qgc3RhcnQgPSBzZXRJbnRlcnZhbCgoKSA9PiB7XG4gICAgICBpZiAodGhpcy5jb3VudERvd25UaW1lID49IDApIHtcbiAgICAgICAgdGhpcy5zaG93QnV0dG9uVGV4dCA9ICRsb2NhbGl6ZWAke3RoaXMuY291bnREb3duVGltZS0tfXMgcmVzZW5kYDtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNsZWFySW50ZXJ2YWwoc3RhcnQpO1xuICAgICAgICB0aGlzLnNob3dCdXR0b25UZXh0ID0gJGxvY2FsaXplYFJlc2VuZGA7XG4gICAgICAgIHRoaXMuY291bnREb3duID0gZmFsc2U7XG4gICAgICAgIHRoaXMuY291bnREb3duVGltZSA9IDYwO1xuICAgICAgfVxuICAgIH0sIDEwMDApO1xuXG4gICAgdGhpcy5hdXRoVXNlclNlcnZpY2Uuc2VuZFNNU0NvZGUoJys4NicsIHBob25lKS5zdWJzY3JpYmUoe1xuICAgICAgbmV4dDogKHJlcykgPT4ge1xuICAgICAgICB0aGlzLnNuYWNrQmFyU2VydmljZS5vcGVuKCdTdWNjZXNzJyk7XG4gICAgICB9LFxuICAgICAgZXJyb3I6IChlcnJvcikgPT4ge1xuICAgICAgICB0aGlzLnNuYWNrQmFyU2VydmljZS5vcGVuKGVycm9yLm1lc3NhZ2UpO1xuICAgICAgfSxcbiAgICB9KTtcbiAgfVxuICBsb2dpbigpIHtcbiAgICBsZXQgZGF0YSA9IHt9O1xuICAgIGlmICh0aGlzLnRhYkluZGV4KCkgPT09IDApIHtcbiAgICAgIGlmICghdGhpcy5wYXNzcm9kRm9ybS52YWxpZCkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICBkYXRhID0ge1xuICAgICAgICBhY2NvdW50OiB0aGlzLmZvcm1bJ2FjY291bnQnXS52YWx1ZSxcbiAgICAgICAgcGFzc3dvcmQ6IHRoaXMuZm9ybVsncGFzc3dvcmQnXS52YWx1ZSxcbiAgICAgIH07XG4gICAgfVxuICAgIGlmICh0aGlzLnRhYkluZGV4KCkgPT09IDEpIHtcbiAgICAgIGlmICghdGhpcy5jb2RlRm9ybS52YWxpZCkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICBkYXRhID0ge1xuICAgICAgICBwaG9uZTogdGhpcy5mb3JtWydwaG9uZSddLnZhbHVlLFxuICAgICAgICBjb2RlOiB0aGlzLmZvcm1bJ2NvZGUnXS52YWx1ZSxcbiAgICAgIH07XG4gICAgfVxuXG4gICAgdGhpcy5hdXRoU2VydmljZS5sb2dpbihkYXRhKS5zdWJzY3JpYmUoe1xuICAgICAgbmV4dDogKCkgPT4ge1xuICAgICAgICBpZiAoaXNQbGF0Zm9ybUJyb3dzZXIodGhpcy5wbGF0Zm9ybUlkKSkge1xuICAgICAgICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gdGhpcy5jb250aW51ZSA9PT0gdGhpcy5lbnZpcm9ubWVudC5hY2NvdW50c1VybCA/IHRoaXMuZW52aXJvbm1lbnQubXlhY2NvdW50VXJsIDogdGhpcy5jb250aW51ZTtcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIGVycm9yOiAoZXJyb3IpID0+IHtcbiAgICAgICAgdGhpcy5zbmFja0JhclNlcnZpY2Uub3BlbihlcnJvci5tZXNzYWdlKTtcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cbiAgd2VjaGF0KCkge1xuICAgIC8vIGNvbnN0IHJlZGlyZWN0VXJpID0gJ2h0dHBzOi8vYWNjb3VudHMucGlueGlhb2tlLmNuL2xvZ2luP2NvbnRpbnVlJztcbiAgICBjb25zdCByZWRpcmVjdFVyaSA9IGAke3dpbmRvdy5sb2NhdGlvbi5vcmlnaW59L2xvZ2luP2NvbnRpbnVlYDtcbiAgICBjb25zdCBlbmNvZGVkVVJJID0gZW5jb2RlVVJJKHJlZGlyZWN0VXJpKTtcbiAgICBjb25zdCBzcmMgPSBgJHt0aGlzLmJhc2VVcmx9P2FwcGlkPSR7dGhpcy5hcHBpZH0mcmVzcG9uc2VfdHlwZT1jb2RlJnNlbGZfcmVkaXJlY3Q9dHJ1ZSZzY29wZT1zbnNhcGlfbG9naW4mc3R5bGVsaXRlPTEmcmVkaXJlY3RfdXJpPSR7ZW5jb2RlZFVSSX0mc3RhdGU9JHt0aGlzLnN0YXRlfSN3ZWNoYXRfcmVkaXJlY3RgO1xuICAgIHRoaXMudXJsU2FmZSA9IHRoaXMuc2FuaXRpemVyLmJ5cGFzc1NlY3VyaXR5VHJ1c3RSZXNvdXJjZVVybChzcmMpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiaC1mdWxsIGZsZXggaXRlbXMtc3RhcnQgc206aXRlbXMtY2VudGVyIHNtOmp1c3RpZnktY2VudGVyXCI+XG4gIDxkaXZcbiAgICBjbGFzcz1cInctZnVsbCBoLWZ1bGwganVzdGlmeS1zdGFydCBtZDpoLWF1dG8gcC02IGxnOnAtMTEgcm91bmRlZC14bCBiZy1bLS1ydC1zaWduaW4taW5uZXItYmFja2dyb3VuZF0gZmxleCBmbGV4LWNvbCBsZzpmbGV4LXJvdyBtZDpqdXN0aWZ5LWJldHdlZW4geGw6dy1bODYwcHhdIGxnOnctWzgwMHB4XSBtZDp3LVs2MDBweF1cIlxuICA+XG4gICAgPCEtLSBoZWFkZXIgLS0+XG4gICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2wgcHktNlwiPlxuICAgICAgPGRpdiBjbGFzcz1cInRleHQtM3hsIGZvbnQtbWVkaXVtIG1iLTMgbWwtMlwiIGkxOG4+U2lnbiBpbjwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cInRleHQtbWQgbWwtMlwiIGkxOG4+VXNlIHlvdXIge3sgZW52aXJvbm1lbnQubmFtZSB9fSBBY2NvdW50PC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdj5cbiAgICAgIDxyb2xhdGVjaC10YWJzIFsoc2VsZWN0KV09XCJ0YWJJbmRleFwiPlxuICAgICAgICBAaWYgKGhhc1Bhc3N3b3JkKSB7XG4gICAgICAgICAgPHJvbGF0ZWNoLXRhYiBsYWJlbD1cIlBhc3N3b3JkXCI+PC9yb2xhdGVjaC10YWI+XG4gICAgICAgIH1cbiAgICAgICAgQGlmIChoYXNPVFApIHtcbiAgICAgICAgICA8cm9sYXRlY2gtdGFiIGxhYmVsPVwiT1RQXCI+PC9yb2xhdGVjaC10YWI+XG4gICAgICAgIH1cbiAgICAgICAgQGlmIChoYXNXZUNoYXQpIHtcbiAgICAgICAgICA8cm9sYXRlY2gtdGFiIGxhYmVsPVwiV2VDaGF0XCI+PC9yb2xhdGVjaC10YWI+XG4gICAgICAgIH1cbiAgICAgIDwvcm9sYXRlY2gtdGFicz5cbiAgICAgIDwhLS0gY29udGVudCAtLT5cbiAgICAgIDxkaXYgY2xhc3M9XCJwdC02IG1pbi13LVszMjBweF0gbWluLWgtWzIxNHB4XVwiPlxuICAgICAgICBAaWYgKHRhYkluZGV4KCkgPT09IDApIHtcbiAgICAgICAgICA8Zm9ybSBbZm9ybUdyb3VwXT1cInBhc3Nyb2RGb3JtXCIgY2xhc3M9XCJmbGV4IGZsZXgtY29sXCI+XG4gICAgICAgICAgICBAaWYgKGhhc1Bhc3N3b3JkKSB7XG4gICAgICAgICAgICAgIDxtYXQtZm9ybS1maWVsZD5cbiAgICAgICAgICAgICAgICA8bWF0LWxhYmVsIGkxOG4+IEVtYWlsL1VzZXJuYW1lIDwvbWF0LWxhYmVsPlxuICAgICAgICAgICAgICAgIDxpbnB1dCBtYXRJbnB1dCBmb3JtQ29udHJvbE5hbWU9XCJhY2NvdW50XCIgcmVxdWlyZWQgLz5cbiAgICAgICAgICAgICAgICBAaWYgKHBhc3Nyb2RGb3JtLmNvbnRyb2xzWydhY2NvdW50J10udG91Y2hlZCAmJiBwYXNzcm9kRm9ybS5jb250cm9sc1snYWNjb3VudCddLmludmFsaWQpIHtcbiAgICAgICAgICAgICAgICAgIDxtYXQtZXJyb3I+XG4gICAgICAgICAgICAgICAgICAgIEBpZiAocGFzc3JvZEZvcm0uY29udHJvbHNbJ2FjY291bnQnXS5lcnJvcnM/LlsncmVxdWlyZWQnXSkge1xuICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGkxOG4+RW1haWwgaXMgcmVxdWlyZWQ8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgQGlmIChwYXNzcm9kRm9ybS5jb250cm9sc1snYWNjb3VudCddLmVycm9ycz8uWydwYXR0ZXJuJ10pIHtcbiAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBpMThuPkludmFsaWQgZW1haWw8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIDwvbWF0LWVycm9yPlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDxtYXQtZm9ybS1maWVsZD5cbiAgICAgICAgICAgICAgPG1hdC1sYWJlbCBpMThuPiBQYXNzd29yZCA8L21hdC1sYWJlbD5cbiAgICAgICAgICAgICAgPGlucHV0IGF1dG9jb21wbGV0ZSBtYXRJbnB1dCBmb3JtQ29udHJvbE5hbWU9XCJwYXNzd29yZFwiIHR5cGU9XCJwYXNzd29yZFwiIC8+XG4gICAgICAgICAgICAgIEBpZiAocGFzc3JvZEZvcm0uY29udHJvbHNbJ3Bhc3N3b3JkJ10udG91Y2hlZCAmJiBwYXNzcm9kRm9ybS5jb250cm9sc1sncGFzc3dvcmQnXS5pbnZhbGlkKSB7XG4gICAgICAgICAgICAgICAgPG1hdC1lcnJvcj5cbiAgICAgICAgICAgICAgICAgIEBpZiAocGFzc3JvZEZvcm0uY29udHJvbHNbJ3Bhc3N3b3JkJ10uZXJyb3JzPy5bJ3JlcXVpcmVkJ10pIHtcbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gaTE4bj5QYXNzd29yZCByZXF1aXJlZDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIEBpZiAocGFzc3JvZEZvcm0uY29udHJvbHNbJ3Bhc3N3b3JkJ10uZXJyb3JzPy5bJ21pbmxlbmd0aCddKSB7XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGkxOG4+UGFzc3dvcmQgdG9vIHNob3J0PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIDwvbWF0LWVycm9yPlxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxuICAgICAgICAgIDwvZm9ybT5cbiAgICAgICAgfVxuICAgICAgICBAaWYgKHRhYkluZGV4KCkgPT09IDEpIHtcbiAgICAgICAgICA8Zm9ybSBbZm9ybUdyb3VwXT1cImNvZGVGb3JtXCIgY2xhc3M9XCJmbGV4IGZsZXgtY29sXCI+XG4gICAgICAgICAgICBAaWYgKGhhc09UUCkge1xuICAgICAgICAgICAgICA8bWF0LWZvcm0tZmllbGQgYXBwZWFyYW5jZT1cImZpbGxcIj5cbiAgICAgICAgICAgICAgICA8bWF0LWxhYmVsIGkxOG4+IFBob25lIDwvbWF0LWxhYmVsPlxuICAgICAgICAgICAgICAgIDxpbnB1dCBhdXRvY29tcGxldGUgbWF0SW5wdXQgZm9ybUNvbnRyb2xOYW1lPVwicGhvbmVcIiByZXF1aXJlZCAvPlxuICAgICAgICAgICAgICAgIEBpZiAoY29kZUZvcm0uY29udHJvbHNbJ3Bob25lJ10udG91Y2hlZCAmJiBjb2RlRm9ybS5jb250cm9sc1sncGhvbmUnXS5pbnZhbGlkKSB7XG4gICAgICAgICAgICAgICAgICA8bWF0LWVycm9yPlxuICAgICAgICAgICAgICAgICAgICBAaWYgKGNvZGVGb3JtLmNvbnRyb2xzWydwaG9uZSddLmVycm9ycz8uWydyZXF1aXJlZCddKSB7XG4gICAgICAgICAgICAgICAgICAgICAgPHNwYW4gaTE4bj4gUGhvbmUgcmVxdWlyZWQ8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgQGlmIChjb2RlRm9ybS5jb250cm9sc1sncGhvbmUnXS5lcnJvcnM/LlsncGF0dGVybiddKSB7XG4gICAgICAgICAgICAgICAgICAgICAgPHNwYW4gaTE4bj4gUGhvbmUgaW52YWxpZCA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIDwvbWF0LWVycm9yPlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXgganVzdGlmeS1iZXR3ZWVuIGl0ZW1zLWNlbnRlclwiPlxuICAgICAgICAgICAgICAgIDxtYXQtZm9ybS1maWVsZCBhcHBlYXJhbmNlPVwiZmlsbFwiPlxuICAgICAgICAgICAgICAgICAgPG1hdC1sYWJlbCBpMThuPiBDb2RlIDwvbWF0LWxhYmVsPlxuICAgICAgICAgICAgICAgICAgPGlucHV0IG1hdElucHV0IGZvcm1Db250cm9sTmFtZT1cImNvZGVcIiByZXF1aXJlZCAvPlxuICAgICAgICAgICAgICAgICAgQGlmIChjb2RlRm9ybS5jb250cm9sc1snY29kZSddLnRvdWNoZWQgJiYgY29kZUZvcm0uY29udHJvbHNbJ2NvZGUnXS5pbnZhbGlkKSB7XG4gICAgICAgICAgICAgICAgICAgIDxtYXQtZXJyb3I+XG4gICAgICAgICAgICAgICAgICAgICAgQGlmIChjb2RlRm9ybS5jb250cm9sc1snY29kZSddLmVycm9ycz8uWydyZXF1aXJlZCddKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBpMThuPkNvZGUgcmVxdWlyZWQ8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICA8L21hdC1lcnJvcj5cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxuICAgICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAgIG1hdC1mbGF0LWJ1dHRvblxuICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInNlbmRTTVNDb2RlKClcIlxuICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cImNvdW50RG93blwiXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cIm1heC13LVsxMjhweF0gdGV4dC13aGl0ZSB0ZXh0LWNlbnRlclwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgPHNwYW4gaTE4bj57eyBzaG93QnV0dG9uVGV4dCB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgPC9kaXY+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.2.0\", ngImport: i0, type: SignupComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.2.0\", 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.2.0\", 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.
|
|
3
|
+
"version": "20.0.5",
|
|
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.
|
|
16
|
-
"@rolatech/angular-components": "20.0.
|
|
17
|
-
"@rolatech/angular-services": "20.0.
|
|
18
|
-
"@rolatech/angular-auth": "20.0.
|
|
19
|
-
"@rolatech/angular-notification": "20.0.
|
|
15
|
+
"@rolatech/angular-common": "20.0.5",
|
|
16
|
+
"@rolatech/angular-components": "20.0.5",
|
|
17
|
+
"@rolatech/angular-services": "20.0.5",
|
|
18
|
+
"@rolatech/angular-auth": "20.0.5",
|
|
19
|
+
"@rolatech/angular-notification": "20.0.5",
|
|
20
20
|
"tslib": "^2.3.0"
|
|
21
21
|
},
|
|
22
22
|
"sideEffects": false,
|