{"version":3,"file":"9966.34136624235cbcfa.js","mappings":"oSAiBA,MAAMA,EAAqB,IAAIC,OAUxB,IAAMC,EAAS,UAAAC,EAAhB,MAAOD,EAKX,cAAIE,GACF,OAAOC,KAAKC,WAAaD,KAAKC,YAAc,IAAIC,OAAuBF,KAAKC,UAAYN,CAC1F,CAIAQ,YACUC,EACAC,EACAC,EACAC,EACAC,EACAC,GALAT,KAAAI,YACAJ,KAAAK,QACAL,KAAAM,cACAN,KAAAO,gBACAP,KAAAQ,QACAR,KAAAS,SAfVT,KAAAU,cAAgB,8CAChBV,KAAAW,WAAa,GACbX,KAAAC,UAAoBN,EAKZK,KAAAY,WAAa,IAAIC,GAStB,CAEHC,WACEd,KAAKQ,MAAMO,YAAYC,QAAKC,KAAUjB,KAAKY,aAAaM,UAAWC,YAC7DA,WAAQlB,UACVD,KAAKC,UAAYkB,EAAOlB,UAEf,OAAAmB,EAAA,OAAAC,EAAArB,KAAKS,OAAOa,6BAAZ,EAAAD,EAAoCE,SAApCH,EAA4CI,QACrDxB,KAAKC,UAAYD,KAAKS,OAAOa,uBAAuBC,OAAOC,MAAMvB,WAAaN,EACP,GAU3E8B,WAAW,MACTC,OAAc,CAAC1B,KAAKM,YAAYqB,YAAa3B,KAAKO,cAAcqB,WAC7DZ,QAAKa,KAAK,IACVX,UAAU,EAAEY,EAAYC,MACnBD,IACEC,IACFC,QAAQC,IAAI,2BAEZjC,KAAKO,cAAc2B,wBAAwB,CAAEH,aAG/C/B,KAAKS,OAAO0B,SAAS,CAACnC,KAAKD,YAAa,CACtCgB,YAAa,CACX,CAACqB,MAAoB,KAErB,CAACC,MAAwB,KACzBpC,UAAW,MAEbqC,oBAAqB,UACtB,EAEJ,EACF,KACL,CAEAC,cACEvC,KAAKY,WAAW4B,OAChBxC,KAAKY,WAAW6B,UAClB,WAjEW5C,0CAAS6C,MAAAC,MAAAD,MAAAE,MAAAF,MAAAG,KAAAH,MAAAI,KAAAJ,MAAAK,MAAAL,MAAAK,MAAA,0BAATlD,EAASmD,UAAA,gBAAAC,YAAA,EAAAC,SAAA,CAAAR,OAAAS,MAAA,EAAAC,KAAA,EAAAC,OAAA,+GAAAC,SAAA,SAAAC,EAAAC,GAAA,EAAAD,ICpBhBb,MAPN,gBAOMA,CAPO,uBAOPA,CAFH,UAEGA,CADqB,QACjBA,MAAA,wBAAgCA,QACpCA,MAAA,WACEA,MAAA,qBAMRA,qBAbIA,QAEAA,MAFA,gBAAAc,EAAA9C,cAEAgC,CAF+B,kBAE/BA,CADsB,aAAAc,EAAA7C,YAIhB+B,MAAA,GAAAA,YAAA,qBAGAA,MAAA,GAAAA,MAAA,iBAAAc,EAAAzD,4BDeE0D,KAAeC,IAAsBC,IAAoBC,QAExD/D,CAAS","names":["DEFAULT_RETURN_URL","NAV_PAGE_ON_LOGIN","LoginPage","_LoginPage","successUrl","this","returnUrl","DEFAULT_BACK_ROUTE","constructor","translate","store","userService","tokensService","route","router","backgroundUrl","sideBlocks","onDestroy$","Subject","ngOnInit","queryParams","pipe","takeUntil","subscribe","params","_b","_a","getCurrentNavigation","extras","state","setTimeout","combineLatest","isLoggedIn$","tokenId$","take","isLoggedIn","tokenId","console","log","applyTokenToCurrentUser","navigate","TOKEN_QUERY_PARAM","TOKEN_QUERY_PARAM_OLD","queryParamsHandling","ngOnDestroy","next","complete","i0","i1","i2","i3","i4","i5","selectors","standalone","features","decls","vars","consts","template","rf","ctx","TranslatePipe","SplitLayoutComponent","LoginFormComponent","IonContent"],"ignoreList":[],"sourceRoot":"webpack:///","sources":["./src/app/pages/auth/login/login.page.ts","./src/app/pages/auth/login/login.page.html"],"sourcesContent":["/** @format */\n\nimport { Component, OnDestroy, OnInit } from '@angular/core';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { TranslateService, TranslatePipe } from '@ngx-translate/core';\nimport { IonContent } from '@ionic/angular/standalone';\nimport { combineLatest, Subject } from 'rxjs';\nimport { take, takeUntil } from 'rxjs/operators';\nimport { Store } from '@ngrx/store';\n// import { getHydrateState, selectHydrated } from '@store/reducers/hydrate.reducers';\nimport { UserService } from '@app/core/services/user.service';\nimport { LoginFormComponent } from '@app/shared/components/login/login-form.component';\nimport { SplitLayoutComponent } from '@app/shared/components/layouts/split-layout/split-layout.component';\nimport { DEFAULT_BACK_ROUTE, NAV_PAGE_ON_LOGIN } from '@app/app.routes';\nimport { TOKEN_QUERY_PARAM, TOKEN_QUERY_PARAM_OLD } from '@app/tokens/shared/tokens.model';\nimport { TokensService } from '@app/tokens/shared/services/tokens.service';\n\nconst DEFAULT_RETURN_URL = `/${NAV_PAGE_ON_LOGIN}`;\nconst DEBUG_LOGS = false;\n\n@Component({\n selector: 'app-login',\n templateUrl: './login.page.html',\n styleUrls: ['./login.page.scss'],\n standalone: true,\n imports: [TranslatePipe, SplitLayoutComponent, LoginFormComponent, IonContent],\n})\nexport class LoginPage implements OnInit, OnDestroy {\n // backgroundUrl = '/assets/images/split-pane/fs-layout-8@2.jpg'; // vw van\n backgroundUrl = '/assets/images/split-pane/fs-layout-2@2.jpg'; // sunrise\n sideBlocks = []; // blank\n returnUrl: string = DEFAULT_RETURN_URL;\n get successUrl(): string {\n return this.returnUrl && this.returnUrl !== `/${DEFAULT_BACK_ROUTE}` ? this.returnUrl : DEFAULT_RETURN_URL;\n }\n\n private onDestroy$ = new Subject<void>();\n\n constructor(\n private translate: TranslateService,\n private store: Store,\n private userService: UserService,\n private tokensService: TokensService,\n private route: ActivatedRoute,\n private router: Router\n ) {}\n\n ngOnInit() {\n this.route.queryParams.pipe(takeUntil(this.onDestroy$)).subscribe((params) => {\n if (params?.returnUrl) {\n this.returnUrl = params.returnUrl;\n DEBUG_LOGS && console.log(`[Login] queryParams returnUrl:`, this.returnUrl);\n } else if (this.router.getCurrentNavigation()?.extras?.state) {\n this.returnUrl = this.router.getCurrentNavigation().extras.state.returnUrl || DEFAULT_RETURN_URL;\n DEBUG_LOGS && console.log(`[Login] navState returnUrl:`, this.returnUrl);\n }\n });\n\n /**\n * if there's a tokenId & loggedIn - send to accept token page\n * Wait for Auth to be set,\n * then nav away if already loggedIn\n * but save the Token & apply if found.\n */\n setTimeout(() => {\n combineLatest([this.userService.isLoggedIn$, this.tokensService.tokenId$])\n .pipe(take(1))\n .subscribe(([isLoggedIn, tokenId]) => {\n if (isLoggedIn) {\n if (tokenId) {\n console.log('[Login] handle token...');\n // apply the token & toast success\n this.tokensService.applyTokenToCurrentUser({ tokenId });\n }\n // make sure it's not /home route, as we'd prefer to go to our studio\n this.router.navigate([this.successUrl], {\n queryParams: {\n [TOKEN_QUERY_PARAM]: null,\n // MVP-1242 TOKEN_QUERY_PARAM_OLD can be removed eventually..\n [TOKEN_QUERY_PARAM_OLD]: null,\n returnUrl: null,\n },\n queryParamsHandling: 'merge',\n });\n }\n });\n }, 1200);\n }\n\n ngOnDestroy() {\n this.onDestroy$.next();\n this.onDestroy$.complete();\n }\n}\n","<ion-content>\n <app-split-layout\n [backgroundUrl]=\"backgroundUrl\"\n [showLoginBtn]=\"false\"\n [sideBlocks]=\"sideBlocks\"\n >\n <div class=\"container\">\n <h1>{{ 'COMMON.LOGIN' | translate }}</h1>\n <div class=\"ion-padding-start\">\n <fs-login-form\n [routeOnSuccess]=\"successUrl\"\n ></fs-login-form>\n </div>\n </div>\n </app-split-layout>\n</ion-content>\n"],"x_google_ignoreList":[]}