1"use strict";(self.webpackChunkflosports_webapp=self.webpackChunkflosports_webapp||[]).push([[9143],{19143:(Pe,E,i)=>{i.r(E),i.d(E,{LoginModule:()=>Ce});var d=i(36895),l=i(24006),M=i(99286),F=i(86965),c=i(26520),h=i(39047),f=i(82722),v=i(54004),m=i(95698),T=i(39300),j=i(18505),$=i(70262),x=i(77579),S=i(39841),D=i(39646),U=i(20735),k=i(3283),N=i(18535),R=i(37038),B=i(51662),e=i(94650),A=i(5201),G=i(37548),V=i(57042),P=i(89308),K=i(70477),H=i(14814),z=i(97904),w=i(71338),J=i(18077),W=i(19012),Q=i(32797),X=i(42338),Y=i(93081),O=i(39137),Z=i(88281),q=i(95732),_=i(1859),ee=i(535),te=i(48763),oe=i(87833),ne=i(92285),ie=i(97290);function re(o,r){1&o&&(e.\u0275\u0275elementStart(0,"div",18)(1,"span",19),e.\u0275\u0275text(2,"Loading..."),e.\u0275\u0275elementEnd()())}function se(o,r){if(1&o&&e.\u0275\u0275element(0,"flo-form-errors",20),2&o){const t=e.\u0275\u0275nextContext();e.\u0275\u0275property("errors",t.email.errors)("hasIcon",!0)}}function ae(o,r){if(1&o&&e.\u0275\u0275element(0,"flo-claim-account-error",21),2&o){const t=e.\u0275\u0275nextContext();e.\u0275\u0275property("migratedSite",null==t.email.errors||null==t.email.errors.unclaimed_account?null:t.email.errors.unclaimed_account.customText)("email",t.email.value)}}function le(o,r){1&o&&(e.\u0275\u0275elementContainerStart(0),e.\u0275\u0275element(1,"flo-svg-icon",22),e.\u0275\u0275elementContainerEnd())}function ce(o,r){1&o&&e.\u0275\u0275element(0,"flo-svg-icon",23)}function me(o,r){if(1&o&&e.\u0275\u0275element(0,"flo-form-errors",24),2&o){const t=e.\u0275\u0275nextContext();e.\u0275\u0275property("errors",t.password.errors)("hasIcon",!0)}}function ge(o,r){1&o&&(e.\u0275\u0275elementStart(0,"div",25)(1,"span",19),e.\u0275\u0275text(2,"Loading..."),e.\u0275\u0275elementEnd()())}const b=function(){return["click","focus"]};let de=(()=>{class o{constructor(t,n,s,a,g){this.fb=t,this.auth=n,this.logger=s,this.changeRef=a,this.duplicateAsyncValidators=g,this.emailLoginSuccess=new e.EventEmitter,this.emailLoginSubmitting=!1,this.showPassword=!1,this.loginForm=this.fb.group({email:["",[l.kI.required,ee.o],[this.duplicateAsyncValidators.validateEmailExists()]],password:["",[l.kI.required,l.kI.minLength(6),l.kI.maxLength(75)]]})}togglePassword(t){t.stopPropagation(),this.showPassword=!this.showPassword}get email(){return this.loginForm.get("email")}get password(){return this.loginForm.get("password")}showFormErrorComponent(){return this.loginForm.controls.email.touched&&this.loginForm.controls.email.invalid&&!this.loginForm.controls.email.hasError("unclaimed_account")}get emailValue(){return this.email&&this.email.value}get passwordValue(){return this.password&&this.password.value}get emailControl(){return this.loginForm.controls.email}ngOnInit(){this.email&&(this.showEmailSpinner$=this.email.statusChanges.pipe((0,v.U)(t=>"PENDING"===t)))}get canSubmitForm(){return this.loginForm.valid&&!this.loginForm.pending&&!this.emailLoginSubmitting}loginByEmail(){this.markAllAsTouched(),this.loginForm.valid&&!this.emailLoginSubmitting&&(this.emailLoginSubmitting=!0,this.auth.authorizeViaHttp(this.auth.generateToken(this.emailValue,this.passwordValue)).pipe((0,m.q)(1)).subscribe(t=>{this.emailLoginSubmitting=!1,this.emailLoginSuccess.next(t)},t=>{this.emailLoginSubmitting=!1,this.logger.error("Error authorizing token: ",t.message,t.error),this.password&&this.password.setErrors({server_error:!0}),this.changeRef.markForCheck()}))}markAllAsTouched(){Object.keys(this.loginForm.controls).forEach(t=>{this.loginForm.controls[t].markAsTouched()})}}return o.\u0275fac=function(t){return new(t||o)(e.\u0275\u0275directiveInject(l.QS),e.\u0275\u0275directiveInject(A.e),e.\u0275\u0275directiveInject(P.e),e.\u0275\u0275directiveInject(e.ChangeDetectorRef),e.\u0275\u0275directiveInject(te.L))},o.\u0275cmp=e.\u0275\u0275defineComponent({type:o,selectors:[["flo-email-login"]],outputs:{emailLoginSuccess:"emailLoginSuccess"},decls:23,vars:16,consts:[["novalidate","",3,"formGroup","ngSubmit"],[1,"form-group"],["floAnalytics","","type","email","name","Email","placeholder","Email Address","data-test","email-login","autocomplete","off","maxlength","76","formControlName","email",1,"form-control-lg",3,"events","focus"],["class","spinner-border spinner-border-sm primary-color-text","role","status",4,"ngIf"],["control","loginFormEmail",3,"errors","hasIcon",4,"ngIf"],[3,"migratedSite","email",4,"ngIf"],[1,"form-password"],["floAnalytics","","name","Password","formControlName","password","placeholder","Password","data-test","password","autocomplete","off","maxlength","126",1,"form-control-lg",3,"events","type","focus"],[1,"form-password-icon",3,"click"],[4,"ngIf","ngIfElse"],["hidePassword",""],["control","loginFormPassword",3,"errors","hasIcon",4,"ngIf"],[1,"funnel-form-footnotes","mb-3"],[1,"funnel-form-footnote","flo-footnote"],["routerLink","/forgot-password","floAnalytics","","name","Forgot Password",1,"link-forgot-password","text-600","text-decoration-underline","hover-grey-900"],[1,"form-button"],["floAnalytics","","events","click","name","Login","type","submit","data-test","login",1,"btn","btn-primary","btn-lg","lg-font-btn",3,"disabled"],["class","spinner-border spinner-border-sm","role","status",4,"ngIf"],["role","status",1,"spinner-border","spinner-border-sm","primary-color-text"],[1,"visually-hidden"],["control","loginFormEmail",3,"errors","hasIcon"],[3,"migratedSite","email"],["data-test","form-show-password-icon","icon","show-password","height","1.5rem","
1width","1.5rem",1,"show-password-icon"],["data-test","form-hide-password-icon","icon","hide-password","height","1.5rem","width","1.5rem",1,"hide-password-icon"],["control","loginFormPassword",3,"errors","hasIcon"],["role","status",1,"spinner-border","spinner-border-sm"]],template:function(t,n){if(1&t&&(e.\u0275\u0275elementStart(0,"form",0),e.\u0275\u0275listener("ngSubmit",function(){return n.loginByEmail()}),e.\u0275\u0275elementStart(1,"div",1)(2,"input",2),e.\u0275\u0275listener("focus",function(){return n.email.markAsUntouched()}),e.\u0275\u0275elementEnd(),e.\u0275\u0275template(3,re,3,0,"div",3),e.\u0275\u0275pipe(4,"async"),e.\u0275\u0275template(5,se,1,2,"flo-form-errors",4),e.\u0275\u0275template(6,ae,1,2,"flo-claim-account-error",5),e.\u0275\u0275elementEnd(),e.\u0275\u0275elementStart(7,"div",1)(8,"div",6)(9,"input",7),e.\u0275\u0275listener("focus",function(){return n.password.markAsUntouched()}),e.\u0275\u0275elementEnd(),e.\u0275\u0275elementStart(10,"div",8),e.\u0275\u0275listener("click",function(a){return n.togglePassword(a)}),e.\u0275\u0275template(11,le,2,0,"ng-container",9),e.\u0275\u0275template(12,ce,1,0,"ng-template",null,10,e.\u0275\u0275templateRefExtractor),e.\u0275\u0275elementEnd()(),e.\u0275\u0275template(14,me,1,2,"flo-form-errors",11),e.\u0275\u0275elementEnd(),e.\u0275\u0275elementStart(15,"div",12)(16,"p",13)(17,"a",14),e.\u0275\u0275text(18,"Forgot Password?"),e.\u0275\u0275elementEnd()()(),e.\u0275\u0275elementStart(19,"div",15)(20,"button",16),e.\u0275\u0275text(21," Log In "),e.\u0275\u0275elementEnd(),e.\u0275\u0275template(22,ge,3,0,"div",17),e.\u0275\u0275elementEnd()()),2&t){const s=e.\u0275\u0275reference(13);e.\u0275\u0275property("formGroup",n.loginForm),e.\u0275\u0275advance(2),e.\u0275\u0275property("events",e.\u0275\u0275pureFunction0(14,b)),e.\u0275\u0275advance(1),e.\u0275\u0275property("ngIf",e.\u0275\u0275pipeBind1(4,12,n.showEmailSpinner$)),e.\u0275\u0275advance(2),e.\u0275\u0275property("ngIf",n.showFormErrorComponent()),e.\u0275\u0275advance(1),e.\u0275\u0275property("ngIf",n.email.hasError("unclaimed_account")),e.\u0275\u0275advance(3),e.\u0275\u0275property("events",e.\u0275\u0275pureFunction0(15,b))("type",n.showPassword?"text":"password"),e.\u0275\u0275advance(2),e.\u0275\u0275property("ngIf",n.showPassword)("ngIfElse",s),e.\u0275\u0275advance(3),e.\u0275\u0275property("ngIf",n.password.touched&&n.password.invalid),e.\u0275\u0275advance(6),e.\u0275\u0275property("disabled",!n.canSubmitForm),e.\u0275\u0275advance(2),e.\u0275\u0275property("ngIf",n.emailLoginSubmitting)}},dependencies:[d.O5,O.v,oe.b,c.RouterLinkWithHref,l._Y,l.Fj,l.JJ,l.JL,l.nD,l.sg,l.u,ne.c,ie.A,d.Ov],styles:[".form-button[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{width:100%}.activation-code-message[_ngcontent-%COMP%]{margin-bottom:12px}.form-password[_ngcontent-%COMP%]{display:-moz-flex;display:flex;position:relative}.form-password[_ngcontent-%COMP%] .form-password-icon[_ngcontent-%COMP%]{cursor:pointer;padding:14px 12px 0 0;position:absolute;right:0}.form-password[_ngcontent-%COMP%] .form-password-icon[_ngcontent-%COMP%] .hide-password-icon[_ngcontent-%COMP%]{color:#6f6f73;fill:#6f6f73}.form-password[_ngcontent-%COMP%] .form-password-icon[_ngcontent-%COMP%] .show-password-icon[_ngcontent-%COMP%]{color:#0c0c0c;fill:#0c0c0c}.form-password[_ngcontent-%COMP%] .form-password-icon[_ngcontent-%COMP%] svg{background-color:#fff}"],changeDetection:0}),o})();function ue(o,r){1&o&&(e.\u0275\u0275elementStart(0,"p",16),e.\u0275\u0275text(1,"Log In or "),e.\u0275\u0275elementStart(2,"a",17),e.\u0275\u0275text(3,"Sign Up"),e.\u0275\u0275elementEnd(),e.\u0275\u0275text(4," before entering your activation code."),e.\u0275\u0275elementEnd())}function he(o,r){if(1&o&&(e.\u0275\u0275elementStart(0,"div",18)(1,"p"),e.\u0275\u0275text(2),e.\u0275\u0275element(3,"br"),e.\u0275\u0275text(4),e.\u0275\u0275elementEnd()()),2&o){const t=r.ngIf;e.\u0275\u0275advance(2),e.\u0275\u0275textInterpolate(t.displayText1),e.\u0275\u0275advance(2),e.\u0275\u0275textInterpolate(t.displayText2)}}const pe=function(){return["../create-account"]};function fe(o,r){if(1&o){const t=e.\u0275\u0275getCurrentView();e.\u0275\u0275elementStart(0,"div",2)(1,"div",3)(2,"div",4)(3,"div",5)(4,"div",6)(5,"h1",7),e.\u0275\u0275text(6,"Log In"),e.\u0275\u0275elementEnd()(),e.\u0275\u0275element(7,"flo-trackwrestling-banner"),e.\u0275\u0275template(8,ue,5,0,"p",8),e.\u0275\u0275elementStart(9,"flo-email-login",9),e.\u0275\u0275listener("emailLoginSuccess",function(s){e.\u0275\u0275restoreView(t);const a=e.\u0275\u0275nextContext();
1return e.\u0275\u0275resetView(a.handleEmailLoginSuccess(s))}),e.\u0275\u0275elementEnd(),e.\u0275\u0275elementStart(10,"div",10)(11,"p",11),e.\u0275\u0275text(12,"Don't have an account? "),e.\u0275\u0275elementStart(13,"a",12),e.\u0275\u0275text(14,"Sign Up"),e.\u0275\u0275elementEnd()()(),e.\u0275\u0275elementStart(15,"div",13)(16,"span"),e.\u0275\u0275text(17,"or"),e.\u0275\u0275elementEnd()(),e.\u0275\u0275template(18,he,5,2,"div",14),e.\u0275\u0275pipe(19,"async"),e.\u0275\u0275elementStart(20,"flo-google-auth",15),e.\u0275\u0275listener("googleClicked",function(s){e.\u0275\u0275restoreView(t);const a=e.\u0275\u0275nextContext();return e.\u0275\u0275resetView(a.handleGoogleButtonClick(s))}),e.\u0275\u0275pipe(21,"async"),e.\u0275\u0275elementEnd()()()()()}if(2&o){const t=r.ngIf,n=e.\u0275\u0275nextContext();e.\u0275\u0275advance(8),e.\u0275\u0275property("ngIf",!t.queryParams.embeddedPurchase),e.\u0275\u0275advance(5),e.\u0275\u0275property("routerLink",e.\u0275\u0275pureFunction0(10,pe)),e.\u0275\u0275advance(5),e.\u0275\u0275property("ngIf",e.\u0275\u0275pipeBind1(19,6,n.googleAuthError$)),e.\u0275\u0275advance(2),e.\u0275\u0275property("isBrowser",n.isBrowser)("googleSubmitting",n.googleSubmitting)("googleClientKey",e.\u0275\u0275pipeBind1(21,8,n.googleAuthKey$))}}let ve=(()=>{class o{constructor(t,n,s,a,g,p,y,C,u,Le,Ie,Ee,xe,Ae){this.auth=t,this.checkoutNavService=n,this.cookieService=s,this.loggingService=a,this.segmentService=g,this.ar=p,this.verticalService=y,this.queryParamsService=C,this.googleAuthService=u,this.seoService=Le,this.accountService=Ie,this.platformService=Ee,this.impactService=xe,this.offersService=Ae,this.ngOnDestroy$=new x.x,this.googleAuthErrorSubject=new x.x,this.googleSubmitting=!1,this.googleAuthError$=this.googleAuthErrorSubject.pipe((0,f.R)(this.ngOnDestroy$)),this.canonicalURL$=this.verticalService.siteSettings$.pipe((0,v.U)(L=>(0,k.eU)("login",L,this.ar.snapshot.data&&this.ar.snapshot.data.liveEvent)),(0,m.q)(1)),this.config$=(0,S.a)([this.verticalService.siteSettings$,this.queryParamsService.queryParams$]).pipe((0,v.U)(([L,I])=>({showSignupPrompt:U.p.SHOW_SIGNUP,settings:L,queryParams:I}))),this.siteId$=this.verticalService.siteId$,this.googleAuthKey$=this.googleAuthService.googleAuthKey$,this.isBrowser=this.platformService.isBrowser}handleEmailLoginSuccess(t){this.segmentService.track(h.AA.ACCOUNT_LOGGED_IN,{email:t?.email}),(0,S.a)([this.auth.user$,this.accountService.allUserSubscriptions$]).pipe((0,m.q)(1)).subscribe({next:([n,s])=>{this.handleAfterLogIn(n,s)},error:n=>{this.loggingService.error("Issue Logging In: ",n.message,n.error)}})}navigateAfterAuthSuccess(){(0,S.a)([this.auth.user$,this.accountService.allUserSubscriptions$]).pipe((0,m.q)(1)).subscribe({next:([t,n])=>{this.handleAfterLogIn(t,n)},error:t=>{this.loggingService.error("Issue Logging In: ",t.message,t.error)}})}handleFacebookLoginSuccess(){this.navigateAfterAuthSuccess()}handleAfterLogIn(t,n){n.length>0&&(this.impactService.setCustomerInfo(n[0].customer_id??"",t?.analyticsData?.email??""),this.cookieService.set("subscription_start_date",n[0].purchase_date));const s=this.cookieService.getAll();this.auth.checkForOversizedCookie(s);const a=this.ar.snapshot.queryParams,g=this.ar.snapshot.data.liveEvent,p=0===n.length,y=!!this.cookieService.get(R.iG),C=this.checkoutNavService.willRouteToPlansAfterLogin(t.loggedIn,p,a,g)||!(!a.redirect||!(0,B.Mb)(a.redirect));t.isPremium||(y&&C?this.offersService.refreshOffers():this.verticalService.isFloCollege$.pipe((0,m.q)(1),(0,f.R)(this.ngOnDestroy$)).subscribe({next:u=>{u&&this.offersService.refreshOffers()},error:u=>this.loggingService.error("post-login .edu offers-gate errored; not re-resolving offers",u)})),this.checkoutNavService.navigateAfterLogin(t.loggedIn,p,a,g)}handleGoogleButtonClick(t){this.segmentService.trackEvent({name:h.AA.BUTTON_CLICKED,properties:{name:"Google Login",text:"Sign in with Google",action:"Click"}}),this.googleSubmitting=!0,this.googleAuthErrorSubject.next(void 0),t.error&&this.googleAuthErrorSubject.next(t.error),this.auth.googleLogin(t.credential).pi
1pe((0,T.h)(n=>!!n.user),(0,j.b)(n=>{const s=(0,N.N)(n.user.analyticsData.created_at);"unknown"===s&&this.loggingService.error("Unparseable analytics_data.created_at on google auth",{created_at:n.user.analyticsData.created_at}),this.segmentService.track("new"===s?h.AA.ACCOUNT_CREATED:h.AA.ACCOUNT_LOGGED_IN,{email:n.user.email,google_social:!0}),this.navigateAfterAuthSuccess(),this.googleSubmitting=!1}),(0,$.K)(n=>(this.loggingService.error(n.message,n.error),this.googleSubmitting=!1,(0,D.of)(void 0))),(0,f.R)(this.ngOnDestroy$)).subscribe()}ngOnInit(){this.canonicalURL$.pipe((0,m.q)(1)).subscribe(t=>{this.seoService.setCanonicalUrl(t)})}ngOnDestroy(){this.seoService.removeCanonicalUrl(),this.ngOnDestroy$.next(),this.ngOnDestroy$.complete()}}return o.\u0275fac=function(t){return new(t||o)(e.\u0275\u0275directiveInject(A.e),e.\u0275\u0275directiveInject(G.V),e.\u0275\u0275directiveInject(V.N),e.\u0275\u0275directiveInject(P.e),e.\u0275\u0275directiveInject(K.BP),e.\u0275\u0275directiveInject(c.ActivatedRoute),e.\u0275\u0275directiveInject(H.A),e.\u0275\u0275directiveInject(z.$),e.\u0275\u0275directiveInject(w.M),e.\u0275\u0275directiveInject(J.v),e.\u0275\u0275directiveInject(W.B),e.\u0275\u0275directiveInject(Q.m),e.\u0275\u0275directiveInject(X.E),e.\u0275\u0275directiveInject(Y.b))},o.\u0275cmp=e.\u0275\u0275defineComponent({type:o,selectors:[["flo-login"]],decls:4,vars:6,consts:[[3,"siteId"],["class","login-wrapper",4,"ngIf"],[1,"login-wrapper"],[1,"standalone-login"],[1,"funnel-form-wrapper"],[1,"funnel-form-section"],[1,"title-section","mb-3"],[1,"funnel-title"],["class","activation-code-message flo-footnote",4,"ngIf"],[3,"emailLoginSuccess"],[1,"join-now-prompt","funnel-form-footnotes"],[1,"funnel-form-footnote","flo-footnote"],["floAnalytics","","queryParamsHandling","merge","routerLinkActive","active","name","Go To Sign Up",1,"text-900","text-decoration-underline","hover-grey-500",3,"routerLink"],[1,"divider"],["class","caption","data-test","googleAuthError",4,"ngIf"],["data-test","google-auth-button",3,"isBrowser","googleSubmitting","googleClientKey","googleClicked"],[1,"activation-code-message","flo-footnote"],["routerLink","../create-account","queryParamsHandling","merge","floAnalytics","","events","click","name","Sign Up","tabindex","-1"],["data-test","googleAuthError",1,"caption"]],template:function(t,n){1&t&&(e.\u0275\u0275element(0,"flo-simple-header",0),e.\u0275\u0275pipe(1,"async"),e.\u0275\u0275template(2,fe,22,11,"div",1),e.\u0275\u0275pipe(3,"async")),2&t&&(e.\u0275\u0275property("siteId",e.\u0275\u0275pipeBind1(1,2,n.siteId$)),e.\u0275\u0275advance(2),e.\u0275\u0275property("ngIf",e.\u0275\u0275pipeBind1(3,4,n.config$)))},dependencies:[d.O5,O.v,c.RouterLinkWithHref,c.RouterLinkActive,Z.M,q.P,_.L,de,d.Ov],styles:[".activation-code-message[_ngcontent-%COMP%]{display:none}.activate-theme[_nghost-%COMP%] .title-section[_ngcontent-%COMP%], .activate-theme [_nghost-%COMP%] .title-section[_ngcontent-%COMP%]{height:auto}.activate-theme[_nghost-%COMP%] .activation-code-message[_ngcontent-%COMP%], .activate-theme [_nghost-%COMP%] .activation-code-message[_ngcontent-%COMP%]{display:block;margin-bottom:25px}"]}),o})(),Se=(()=>{class o{}return o.\u0275fac=function(t){return new(t||o)}
1,o.\u0275mod=e.\u0275\u0275defineNgModule({type:o}),o.\u0275inj=e.\u0275\u0275defineInjector({imports:[c.RouterModule.forChild([{path:"",component:ve}]),c.RouterModule]}),o})();var ye=i(47951);let Ce=(()=>{class o{}return o.\u0275fac=function(t){return new(t||o)},o.\u0275mod=e.\u0275\u0275defineNgModule({type:o}),o.\u0275inj=e.\u0275\u0275defineInjector({providers:[w.M],imports:[d.ez,M.m8,F.$,l.UX,Se,ye.F]}),o})()}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.