{"version":3,"sources":["pages/Register/Register.tsx","pages/EmailConfirmation/AadLogin.tsx"],"names":["Register","_location$state","intl","useIntl","useTitle","process","location","useLocation","history","useHistory","account","useAuthenticatedUser","authenticationState","isAuthenticationInProgress","tenantId","domainHint","state","sessionStorage","getItem","QueryStringParam","DomainHint","setItem","workEmailAddress","WorkEmailAddress","isESITermsAccepted","useRef","IsESITermsAccepted","disableEsiTerms","FeatureFlagValues","isRedirectToHome","setRedirectHome","useState","isProfileCompleted","setisProfileCompleted","isAccountLinkingModel","setisAccountLinkingModel","customError","useSelector","UserStore","customErrorMessage","notLinkedAccountError","_state$UserStore$cust","errorCode","notLinkedAccountErrorMessage","_state$UserStore$cust2","description","esiTerms","_state$UserStore$prof","profile","response","getLanguages","getTimezones","getRoles","getCountries","getProfile","getLinkedAccounts","customerInfo","getemailcodeverificationstatus","useEndpointActions","GetLanguagesActions","GetTimeZonesActions","GetRolesActions","GetCountryActions","GetProfileActions","GetLinkedAccountsActions","EmailValidationActions","GetEmailCodeVerificationStatusActions","isprofileerror","isProfileFetched","isProfileFetching","isProfileExists","isLinkAccountFetched","isLinkedAccountError","isEsi","isAad","isMSA","isEsiMember","linkAccounts","profileWorkEmailadress","loginEmailAddress","role","timezone","language","country","storeLanguage","storeRole","storeTimezone","storecountries","isAccountlinkFetching","isEmailCodeVerified","preferredEmail","hasLinkedAccount","isKoreaPrivacyAccepted","isError","isFetched","isFetching","AccountLinkingStore","emailprofile","esi","ESIMember","linkedAccounts","workEmail","ESIIndicator","EnrollmentPlanStore","languages","roles","timezones","countries","preferredEmailAddress","shallowEqual","useEffect","ai","appInsights","trackTrace","message","severityLevel","SeverityLevel","Information","properties","undefined","emailAddress","status","current","push","NOT_LINKED_ACCOUNT_ERROR","EMAIL_NOT_ASSOCIATED_ERROR","concat","friendlyError","signOutPrompt","method","page","acctType","newEmailAddress","trackException","exception","Error","error","clear","length","formatMessage","toLowerCase","ssoRedirect","SSORedirect","pathname","search","JSON","parse","removeItem","isRoleAvailable","Array","isArray","find","el","roleId","isTimezoneAvailable","timezoneId","isLanguageAvailable","languageId","isCountryAvailable","countryId","DeliveryId","q","searchUrl","selectedModalityValue","SelectedModalities","modalityValue","decodeURIComponent","split","map","part","charAt","toUpperCase","slice","join","encodeURIComponent","selectedlanguageValue","SelectedLanguages","languageValue","seatAvailabilityValue","SelectedAvailability","seatValue","selectedRolesValue","SelectedRoles","roleValue","word","selectedLearningOptionValue","SelectedLearningOPtion","learningOptionValue","selectedTimeZoneValue","SelectedTimezones","ssoPathname","ssoSearch","profileRegister","profileupdate","profilecomplete","React","createElement","Fragment","ApplicationLoadingSpinner","Redirect","to","className","Preferences","isUpdateProfile","selectedRole","selectedLanguage","selectedTimezone","isTOSAccepted","selectedCountry","selectedPreferredEmail","AadLogin"],"mappings":"iGAAA,8MA+BO,MAAMA,EAAoCA,KAAO,IAADC,EACrD,MAAMC,EAAOC,cAEbC,YAD0BC,8CAE1B,MAAMC,EAAWC,cACXC,EAAUC,cACVC,EAAUC,cACVC,EAA6B,OAAPF,QAAO,IAAPA,OAAO,EAAPA,EAASE,oBAC/BC,EAAoC,OAAPH,QAAO,IAAPA,OAAO,EAAPA,EAASG,2BACtCC,EAAkB,OAAPJ,QAAO,IAAPA,OAAO,EAAPA,EAASI,SACpBC,GAA2B,QAAdd,EAAAK,EAASU,aAAK,IAAAf,OAAA,EAAdA,EAAgBc,aAAcE,eAAeC,QAAQC,mBAAiBC,YACrFL,GACFE,eAAeI,QAAQF,mBAAiBC,WAAYL,GAEtD,MAAMO,EAAmBL,eAAeC,QAAQC,mBAAiBI,kBAC3DC,EAAqBC,iBAAuE,QAAhER,eAAeC,QAAQC,mBAAiBO,qBACpEC,EAAkBC,cAAoBD,iBACrCE,EAAkBC,GAAmBC,oBAAS,IAC9CC,EAAoBC,GAAyBF,oBAAS,IACtDG,EAAuBC,GAA4BJ,oBAAS,GAC7DK,EAAcC,YAAarB,GAA6BA,EAAMsB,UAAUC,oBACxEC,EAAwBH,YAAarB,IAAwB,IAAAyB,EAAA,OAAuC,QAAvCA,EAAKzB,EAAMsB,UAAUC,0BAAkB,IAAAE,OAAA,EAAlCA,EAAoCC,YACtGC,EAA+BN,YAAarB,IAAwB,IAAA4B,EAAA,OAAuC,QAAvCA,EAAK5B,EAAMsB,UAAUC,0BAAkB,IAAAK,OAAA,EAAlCA,EAAoCC,cAC7GC,EAAsBT,YAAarB,IAAwB,IAAA+B,EAAA,OAA4B,QAA5BA,EAAK/B,EAAMsB,UAAUU,eAAO,IAAAD,OAAA,EAAvBA,EAAyBD,WACzFG,EAAkCZ,YAAarB,GAA6BA,EAAMsB,UAAUW,WAGhGC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,GACEC,YAAmB,CACrBC,IACAC,IACAC,IACAC,IACAC,IACAC,IACAC,IACAC,OAIAC,EACAC,EACAC,EACAC,EACAC,EACAC,GACAC,GACAC,GACAC,GACAC,GACAC,GACAC,GACAC,GACAC,GACAC,GACAC,GACAC,GACAC,GACAC,GACAC,GACAC,GACAC,GACAC,GACAC,GACAC,GACAC,IACEvD,YACDrB,GAA6B,CAC5BA,EAAMsB,UAAUuD,QAChB7E,EAAMsB,UAAUwD,UAChB9E,EAAMsB,UAAUyD,WAChB/E,EAAMsB,UAAUgC,gBAChBtD,EAAMgF,oBAAoBF,UAC1B9E,EAAMgF,oBAAoBH,QAC1B7E,EAAMsB,UAAU2D,aAAaC,IAC7BlF,EAAMsB,UAAU2D,aAAavB,MAC7B1D,EAAMsB,UAAU2D,aAAatB,MAC7B3D,EAAMsB,UAAU2D,aAAaE,UAC7BnF,EAAMgF,oBAAoBI,eAC1BpF,EAAMsB,UAAUU,QAAQqD,UACxBrF,EAAMsB,UAAU2D,aAAaK,aAC7BtF,EAAMsB,UAAUU,QAAQgC,KACxBhE,EAAMsB,UAAUU,QAAQiC,SACxBjE,EAAMsB,UAAUU,QAAQkC,SACxBlE,EAAMsB,UAAUU,QAAQmC,QACxBnE,EAAMuF,oBAAoBC,UAC1BxF,EAAMuF,oBAAoBE,MAC1BzF,EAAMuF,oBAAoBG,UAC1B1F,EAAMuF,oBAAoBI,UAC1B3F,EAAMgF,oBAAoBD,WAC1B/E,EAAMuF,oBAAoBd,oBAC1BzE,EAAMsB,UAAUU,QAAQ4D,sBACxB5F,EAAMsB,UAAUU,QAAQ2C,iBACxB3E,EAAMsB,UAAUU,QAAQ4C,wBAE1BiB,KAIFC,oBAAU,KACJC,IAAGC,aACLD,IAAGC,YAAYC,WAAW,CACxBC,QAAS,iCACTC,cAAeC,IAAcC,YAC7BC,WAAY,CACV7C,SACAnD,mBACAR,mBAIQyG,IAAV9C,IAAiC,OAAVA,IAAmBA,IAC5CjB,EAAa,CAAEgE,aAAclG,KAG9B,CAACmD,GAAOjB,EAAclC,IAGzBwF,oBAAU,KAcR,GAbIC,IAAGC,aACLD,IAAGC,YAAYC,WAAW,CACxBC,QAAS,uBACTC,cAAeC,IAAcC,YAC7BC,WAAY,CACVhG,mBACAR,eAIFF,GAAyBkC,GAAYA,EAAStB,oBAChD8B,EAAWhC,GAET2B,GAAYA,EAASwE,OACvB,GAAI3C,IAMF,IALKnD,GAAmBmB,GAAYA,EAAStB,qBAC3CP,eAAeI,QAAQF,mBAAiBO,mBAAoB,OAC5DF,EAAmBkG,QAA0E,QAAhEzG,eAAeC,QAAQC,mBAAiBO,sBAGlEC,GAAmBf,GAAuBkE,KAA2BtD,EAAmBkG,QAE3F,YADAlH,EAAQmH,KAAK,iBAAkB,SAG5B,IACJhG,GACDf,GACAwD,GACoB,OAApBE,GACmB,GAAnBA,IACC9C,EAAmBkG,UACnBlF,EAGD,YADAhC,EAAQmH,KAAK,iBAAkB,KAKlC,CAAC/G,EAAqBkC,EAAUgC,GAAwBX,EAAgBC,EAAkBE,EAAyB,OAARrB,QAAQ,IAARA,OAAQ,EAARA,EAAUwE,SAExHX,oBAAU,KAYR,GAXIC,IAAGC,aACLD,IAAGC,YAAYC,WAAW,CACxBC,QAAS,6DACTC,cAAeC,IAAcC,YAC7BC,WAAY,CACV/C,uBACAjD,mBACAR,cAIFF,IAAwB4E,KAA0BjB,IACpDjB,EAAWhC,GACXiC,EAAkBjC,GACO,OAArBA,QAAkDiG,IAArBjG,GAAgC,CAI/DmC,EAH0C,CACxC+D,aAAclG,GAAsC,OAMzD,CACDV,EACA2C,EACAE,EACA+B,GACAjB,EACAH,EACAW,GACAjE,EACAQ,EACAmE,GACAnC,IAIFwD,oBAAU,KACJC,IAAGC,aACLD,IAAGC,YAAYC,WAAW,CACxBC,QAAS,sCACTC,cAAeC,IAAcC,YAC7BC,WAAY,CACVlD,mBACAE,kBACAxD,cAIFsD,GAAoBE,GACtBxC,GAAgB,IAGjB,CAACsC,EAAkBE,IAEtBwC,oBAAU,KACR,GAAItE,IAA0BoF,KAA4BpF,IAA0BqF,IAA4B,CAC9G,IAAIhF,EAAc,GACdL,IAA0BoF,IAC5B/E,EAAW,8FAAAiF,OAAiGxG,EAAgB,oBAAAwG,OAAmB/C,GAAiB,0BAAA+C,OAAyB/C,GAAiB,KACjMvC,IAA0BqF,KAA8BlF,IACjEE,EAAcF,GAEhB,MAAMoF,EAAqC,CACzClF,cACAmF,eAAe,EACfC,OAAQ,0BACRC,KAAM,WACNC,SAAqB,OAAX/F,QAAW,IAAXA,OAAW,EAAXA,EAAa+F,SACvBX,aAAyB,OAAXpF,QAAW,IAAXA,OAAW,EAAXA,EAAaoF,aAC3BnB,UAAsB,OAAXjE,QAAW,IAAXA,OAAW,EAAXA,EAAaiE,UACxBX,eAA2B,OAAXtD,QAAW,IAAXA,OAAW,EAAXA,EAAasD,eAC7BhD,UAAsB,OAAXN,QAAW,IAAXA,OAAW,EAAXA,EAAaM,UACxB0F,gBAA4B,OAAXhG,QAAW,IAAXA,OAAW,EAAXA,EAAagG,iBAYhC,OAVIrB,IAAGC,aACLD,IAAGC,YAAYqB,eAAe,CAC5BC,UAAW,IAAIC,MAAM,SACrBpB,cAAeC,IAAcmB,MAC7BjB,WAAY,CAAES,gBAAerD,SAAOJ,kBAAiBM,eAAaE,0BAAwBxD,mBAAkBR,mBAGhHN,EAAQmH,KAAK,UAAW,CACtBa,MAAOT,MAKV,CAACvF,EAAuBG,IAG3BmE,oBAAU,KACR,QAAyBS,IAArBjG,GAAuD,OAArBA,EAGpC,OAFAL,eAAewH,aACfjI,EAAQmH,KAAK,KAER,IAAc,IAAVjD,KAAmBH,GAAyBM,GAAa6D,QAAW/D,GA2FxE,IAAID,IAAsBrE,yCAAbS,GAAmEwD,EAAiB,CACtG,MAAMyD,EAAqC,CACzClF,YAAa3C,EAAKyI,cAAc,CAAC,GAAF,kQAI/BX,eAAe,EACfC,OAAQ,sCACRC,KAAM,YAYR,OAVInB,IAAGC,aACLD,IAAGC,YAAYqB,eAAe,CAC5BC,UAAW,IAAIC,MAAM,SACrBpB,cAAeC,IAAcmB,MAC7BjB,WAAY,CAAES,gBAAerD,SAAO5D,WAAUwD,0BAGlD9D,EAAQmH,KAAK,UAAW,CACtBa,MAAOT,IAGJ,GAAIzD,IAAyC,OAAtBQ,SAAsB,IAAtBA,QAAsB,EAAtBA,GAAwB8D,kBAAkC,OAAhBtH,QAAgB,IAAhBA,OAAgB,EAAhBA,EAAkBsH,eAAe,CACvG,MAAMb,EAAqC,CACzClF,YACE3C,EAAKyI,cAAc,CAAC,GAAF,uGAGlBrH,EACA,IACF0G,eAAe,EACfC,OAAQ,0BACRC,KAAM,YAYR,OAVInB,IAAGC,aACLD,IAAGC,YAAYqB,eAAe,CAC5BC,UAAW,IAAIC,MAAM,SACrBpB,cAAeC,IAAcmB,MAC7BjB,WAAY,CAAES,gBAAerD,SAAOJ,kBAAiBM,eAAaE,0BAAwBxD,mBAAkBR,mBAGhHN,EAAQmH,KAAK,UAAW,CACtBa,MAAOT,IAGJ,GAAIpD,KAAUD,GACnB,WAxIoF,CACpF,IAAKJ,GAAmBM,MAAsC,OAAtBE,SAAsB,IAAtBA,QAAsB,EAAtBA,GAAwB8D,kBAAkC,OAAhBtH,QAAgB,IAAhBA,OAAgB,EAAhBA,EAAkBsH,gBAAiBzE,EAAgB,CACnI,MAAM4D,EAAqC,CACzClF,YAAY,8FAADiF,OAAgGxG,EAAgB,oBAAAwG,OAAmB/C,GAAiB,0BAAA+C,OAAyB/C,GAAiB,KACzMiD,eAAe,EACfC,OAAQ,0BACRC,KAAM,WACNC,SAAqB,OAAX/F,QAAW,IAAXA,OAAW,EAAXA,EAAa+F,SACvBX,aAAyB,OAAXpF,QAAW,IAAXA,OAAW,EAAXA,EAAaoF,aAC3BnB,UAAsB,OAAXjE,QAAW,IAAXA,OAAW,EAAXA,EAAaiE,UACxBX,eAA2B,OAAXtD,QAAW,IAAXA,OAAW,EAAXA,EAAasD,eAC7BhD,UAAsB,OAAXN,QAAW,IAAXA,OAAW,EAAXA,EAAaM,UACxB0F,gBAA4B,OAAXhG,QAAW,IAAXA,OAAW,EAAXA,EAAagG,iBAYhC,OAVIrB,IAAGC,aACLD,IAAGC,YAAYqB,eAAe,CAC5BC,UAAW,IAAIC,MAAM,SACrBpB,cAAeC,IAAcmB,MAC7BjB,WAAY,CAAES,gBAAerD,SAAOJ,kBAAiBM,eAAaE,0BAAwBxD,mBAAkBR,mBAGhHN,EAAQmH,KAAK,UAAW,CACtBa,MAAOT,IAIX,GAAIjH,GAAyBT,yCAAbS,EAAiE,CAE/E,MAAMiH,EAAqC,CACzClF,YAAa3C,EAAKyI,cAAc,CAAC,GAAF,kQAI/BX,eAAe,EACfC,OAAQ,mCACRC,KAAM,YAYR,OAVInB,IAAGC,aACLD,IAAGC,YAAYqB,eAAe,CAC5BC,UAAW,IAAIC,MAAM,SACrBpB,cAAeC,IAAcmB,MAC7BjB,WAAY,CAAES,gBAAejH,mBAGjCN,EAAQmH,KAAK,UAAW,CACtBa,MAAOT,IAIX,IAAKpD,GACH,GAAIc,KAAwBjE,EAAmBkG,SAAW/F,GACxDQ,GAAyB,QACpB,GAAKuC,IAAUe,IAAyBC,IAAmBX,KAAsBY,IAOjF,GAAKF,KAAwBV,KAAqBY,IAYlD,IAAKF,KAAwBV,IAAqBZ,EAAgB,CACvE,MAAM4D,EAAqC,CACzClF,YAAa3C,EAAKyI,cAAc,CAAC,GAAF,2GAC/BX,eAAe,EACfC,OAAQ,+BACRC,KAAM,YAYR,OAVInB,IAAGC,aACLD,IAAGC,YAAYqB,eAAe,CAC5BC,UAAW,IAAIC,MAAM,SACrBpB,cAAeC,IAAcmB,MAC7BjB,WAAY,CAAES,gBAAejH,mBAGjCN,EAAQmH,KAAK,UAAW,CACtBa,MAAOT,UAxBT,GAFAvE,EAAa,CAAEgE,aAAclG,IAC7BgC,EAAWhC,IACNE,EAAmBkG,SAAW/F,KAAqB6C,KAA4C,IAApBF,EAA0B,CACxG,MAAMuE,EAAc5H,eAAeC,QAAQC,mBAAiB2H,aAC5D,GAAID,EAAa,CACf,MAAM,SAAEE,EAAQ,OAAEC,GAAWC,KAAKC,MAAML,GACxCrI,EAAQmH,KAAKoB,EAAWC,QAExBxI,EAAQmH,KAAK,WAAY,UAf7B,GAAInG,EAAmBkG,SAAW/F,EAChCnB,EAAQmH,KAAK,YAAa,SACrB,IAAKhG,EAEV,YADAnB,EAAQmH,KAAK,oBAmFpB,CACD7C,GACAP,EACAD,EACAO,GACAhD,EACA6C,GACAlE,EACAc,EACAsD,GACA1E,EACAyE,GACAI,GACAU,GACAtB,EACA3B,IAGFsE,oBAAU,KACwB,OAA1BjG,QAA0B,IAA1BA,OACc,OAAbuE,SAAa,IAAbA,OAAesD,QAClBxF,IAEY,OAATmC,SAAS,IAATA,OAAWqD,QACdtF,IAEgB,OAAbkC,SAAa,IAAbA,OAAeoD,QAClBvF,IAEiB,OAAdoC,SAAc,IAAdA,OAAgBmD,QACnBrF,MAGH,CACDA,EACAH,EACAE,EACAD,EACAtC,EACAuE,GACAC,GACAC,GACAC,KAIFuB,oBAAU,KACR,GAAIjF,GAAoByC,IAAoBO,GAAa6D,OAAS,GAAKhE,IAASC,MAC9E1D,eAAekI,WAAWhI,mBAAiBC,YACvC2F,IAAGC,aACLD,IAAGC,YAAYC,WAAW,CACxBC,QAAS,uDACTC,cAAeC,IAAcC,YAC7BC,WAAY,CACVzF,mBACAyC,kBACAI,SACAG,gBACA/D,cAIFkE,IAAQC,IAAYC,IAAYC,IACjB,OAAbC,SAAa,IAAbA,OAAesD,QAAuB,OAAbpD,SAAa,IAAbA,OAAeoD,QAAmB,OAATrD,SAAS,IAATA,OAAWqD,QAAwB,OAAdnD,SAAc,IAAdA,OAAgBmD,QAAQ,CACjG,MAAMU,EAAkBC,MAAMC,QAAQjE,KAAcA,GAAUkE,KAAKC,GAAMA,EAAGC,SAAWzE,IACjF0E,EAAsBL,MAAMC,QAAQhE,KAAkBA,GAAciE,KAAKC,GAAMA,EAAGG,aAAe1E,IACjG2E,EAAsBP,MAAMC,QAAQlE,KAAkBA,GAAcmE,KAAKC,GAAMA,EAAGK,aAAe3E,IACjG4E,EAAqBT,MAAMC,QAAQ/D,KAAmBA,GAAegE,KAAKC,GAAMA,EAAGO,YAAc5E,IAiCvG,GA/BKiE,GAAoBM,GAAwBE,GAAwBE,GAAuBpE,IAgB1FqB,IAAGC,aACLD,IAAGC,YAAYC,WAAW,CACxBC,QAAS,gCACTC,cAAeC,IAAcC,YAC7BC,WAAY,CACVzF,mBACAyC,kBACAI,SACAG,gBACA/D,cAINmB,GAAsB,KA5BlB8E,IAAGC,aACLD,IAAGC,YAAYC,WAAW,CACxBC,QAAS,sCACTC,cAAeC,IAAcC,YAC7BC,WAAY,CACVzF,mBACAyC,kBACAI,SACAG,gBACA/D,cAINmB,GAAsB,IAiBpBhB,eAAeC,QAAQC,mBAAiB6I,YACtCjD,IAAGC,aACLD,IAAGC,YAAYC,WAAW,CACxBC,QAAS,iCACTC,cAAeC,IAAcC,YAC7BC,WAAY,CACVzF,mBACAyC,kBACAI,SACAG,gBACA/D,cAINN,EAAQmH,KAAK,wBAADG,OAAyB7G,eAAeC,QAAQC,mBAAiB6I,mBACxE,GAAI/I,eAAeC,QAAQC,mBAAiB8I,GAAI,CACjDlD,IAAGC,aACLD,IAAGC,YAAYC,WAAW,CACxBC,QAAS,wBACTC,cAAeC,IAAcC,YAC7BC,WAAY,CACVzF,mBACAyC,kBACAI,SACAG,gBACA/D,cAIN,IAAIoJ,EAAS,aAAApC,OAAgB7G,eAAeC,QAAQC,mBAAiB8I,IAErE,MAAME,EAAwBlJ,eAAeC,QAAQC,mBAAiBiJ,oBAChEC,EAAgBF,EAClBG,mBAAmBH,GAChBI,MAAM,KACNC,IAAIC,GAAQA,EAAKC,OAAO,GAAGC,cAAgBF,EAAKG,MAAM,GAAGhC,eACzDiC,KAAK,KACR,GACAR,IACFH,GAAS,IAAApC,OAAQ3G,mBAAiBiJ,mBAAkB,KAAAtC,OAAIgD,mBAAmBT,KAG7E,MAAMU,EAAwB9J,eAAeC,QAAQC,mBAAiB6J,mBAChEC,EAAgBF,EAClBT,mBAAmBS,GAChBR,MAAM,KACNC,IAAIC,GAAQA,EAAKC,OAAO,GAAGC,cAAgBF,EAAKG,MAAM,GAAGhC,eACzDiC,KAAK,OACR,GACAI,IACFf,GAAS,IAAApC,OAAQ3G,mBAAiB6J,kBAAiB,KAAAlD,OAAIgD,mBAAmBG,KAG5E,MAAMC,EAAwBjK,eAAeC,QAAQC,mBAAiBgK,sBAChEC,EAAYF,EACdZ,mBAAmBY,GAChBX,MAAM,KACNC,IAAIC,GAAQA,EAAKC,OAAO,GAAGC,cAAgBF,EAAKG,MAAM,GAAGhC,eACzDiC,KAAK,OACR,GACAO,IACFlB,GAAS,IAAApC,OAAQ3G,mBAAiBgK,qBAAoB,KAAArD,OAAIgD,mBAAmBM,KAG/E,MAAMC,EAAqBpK,eAAeC,QAAQC,mBAAiBmK,eAC7DC,EAAYF,EACdf,mBAAmBe,GAChBd,MAAM,KACNC,IAAIC,GACHA,EACGF,MAAM,KACNC,IAAIgB,GAAQA,EAAKd,OAAO,GAAGC,cAAgBa,EAAKZ,MAAM,GAAGhC,eACzDiC,KAAK,MAETA,KAAK,KACR,GACAU,IACFrB,GAAS,IAAApC,OAAQ3G,mBAAiBmK,cAAa,KAAAxD,OAAIgD,mBAAmBS,KAGxE,MAAME,EAA8BxK,eAAeC,QAAQC,mBAAiBuK,wBACtEC,EAAsBF,EACxBnB,mBAAmBmB,GAChBlB,MAAM,KACNC,IAAIC,GAAQA,EAAKC,OAAO,GAAGC,cAAgBF,EAAKG,MAAM,GAAGhC,eACzDiC,KAAK,OACR,GACAc,IACFzB,GAAS,IAAApC,OAAQ3G,mBAAiBuK,uBAAsB,KAAA5D,OAAIgD,mBAAmBa,KAGjF,MAAMC,EAAwB3K,eAAeC,QAAQC,mBAAiB0K,mBAClED,IACF1B,GAAS,IAAApC,OAAQ3G,mBAAiB0K,kBAAiB,KAAA/D,OAAI8D,IAEzDpL,EAAQmH,KAAKuC,MAMpB,CACDxF,GACAC,GACAL,EACAC,EACAiB,GACAX,GACAT,EACAvC,EACAmD,GACAC,GACAC,GACAC,GACAO,GACAN,GACAE,GACAD,GACAE,KAGF,MAAMsD,GAAc5H,eAAeC,QAAQC,mBAAiB2H,aACtDgD,GAAcjD,GAAcI,KAAKC,MAAML,IAAaE,SAAW,GAC/DgD,GAAYlD,GAAcI,KAAKC,MAAML,IAAaG,OAAS,GAE3DgD,GACJzH,MACKM,GAAa6D,QAAUhE,IAASC,KACrCP,IACCC,IACAC,IACAU,KACAE,KACAD,KACAE,KACAnD,GACDmC,IACCuB,KACAlE,EAAmBkG,SAAWlF,GAAyBb,GACpDsK,GACJ1H,MACKM,GAAa6D,QAAUhE,IAASC,KACrCP,GACsB,OAAtBC,IACCA,GACmB,OAApBC,GACAA,KACEU,KAASE,KAAaD,KAAaE,KAAYnD,IAAuB0D,MACvE1D,IACAmC,IACA3C,EAAmBkG,SAAWlF,GAAyBb,GACpDuK,GAAkB3H,GAAwBH,KAAsBE,GAAmBtC,EACzF,OACEmK,IAAAC,cAACD,IAAME,SAAQ,MACXhI,GAAqBmB,IAAyB3E,IAA+BsL,IAAAC,cAACE,IAAyB,MACxGJ,IAAmBrD,IAClBsD,IAAAC,cAACG,IAAQ,CACPC,GAAI,CACFzD,SAAU+C,GACV9C,OAAQ+C,MAIbG,KAAoBrD,IACnBsD,IAAAC,cAACG,IAAQ,CACPC,GAAI,CACFzD,SAAU,cAIf7G,GACCiK,IAAAC,cAACG,IAAQ,CACPC,GAAI,CACFzD,SAAU,kCAIfkD,IACCE,IAAAC,cAAA,OAAKK,UAAU,oBACbN,IAAAC,cAACM,IAAW,CACVC,iBAAiB,EACjBC,aAAc5H,GACd6H,iBAAkB3H,GAClB4H,iBAAkB7H,GAClB8H,eAAe,EACf/K,mBAAoBA,EACpBsC,kBAAmBA,EACnB0I,gBAAiB7H,GACjB8H,uBAAwBvH,GACxBE,uBAAwBA,MAI7BoG,IACCG,IAAAC,cAAA,OAAKK,UAAU,oBACbN,IAAAC,cAACM,IAAW,CACVC,iBAAiB,EACjBC,aAAa,GACbC,iBAAiB,GACjBC,iBAAiB,GACjBC,eAAe,EACf/K,mBAAoBA,EACpBsC,kBAAmBA,EACnB0I,gBAAgB,GAChBC,uBAAuB,GACvBrH,wBAAwB,OAQrB5F,a,kCC1uBf,sFAQO,MAAMkN,EAAoCA,KAE/C9M,YAD0BC,8CAGxB8L,IAAAC,cAAA,OAAKK,UAAU,oBACbN,IAAAC,cAACpM,UAAQ,QAKAkN","file":"static/js/32.80eadacd.chunk.js","sourcesContent":["import React, { useEffect, useRef, useState } from 'react';\r\nimport { shallowEqual, useSelector } from 'react-redux';\r\nimport { Redirect, useHistory, useLocation } from 'react-router-dom';\r\nimport { SeverityLevel } from '@microsoft/applicationinsights-web';\r\nimport { useIntl } from 'react-intl';\r\n\r\nimport { useTitle } from '../../hooks';\r\nimport { IApplicationState } from '../../store';\r\nimport { useEndpointActions } from '../../store/endpoint/useEndpointActions';\r\nimport { GetProfileActions, EmailValidationActions } from '../../store/stores/user';\r\nimport { QueryStringParam } from './../../utilities';\r\nimport ApplicationLoadingSpinner from '../../components/ApplicationLoadingSpinner/ApplicationLoadingSpinner';\r\nimport Preferences from '../Preference/Preferences';\r\nimport { GetLinkedAccountsActions } from '../../store/stores/accountLinking';\r\nimport { ICustomErrorMessage, IRequestResponse, IVerificationEmailRequest, RouteDomainHintState } from '../../models';\r\nimport {\r\n GetLanguagesActions,\r\n GetTimeZonesActions,\r\n GetRolesActions,\r\n GetCountryActions,\r\n GetEmailCodeVerificationStatusActions\r\n} from '../../store/stores/enrollmentPlan';\r\nimport { ai } from '../../components/ApplicationInsightsProvider/ApplicationInsightsService';\r\nimport { useAuthenticatedUser } from '../../hooks/useAuthenticatedUser';\r\nimport { IESITerms } from '../../models/ESITerms';\r\nimport FeatureFlagValues from '../../utilities/featureFlagValues';\r\nimport { EMAIL_NOT_ASSOCIATED_ERROR, NOT_LINKED_ACCOUNT_ERROR } from '../Preference/constants';\r\n\r\n/**\r\n * Registration Page\r\n */\r\nexport const Register: React.FunctionComponent = () => {\r\n const intl = useIntl();\r\n const pageTitle: string = process.env.REACT_APP_SITE_NAME + ': Register';\r\n useTitle(pageTitle);\r\n const location = useLocation<RouteDomainHintState>();\r\n const history = useHistory();\r\n const account = useAuthenticatedUser();\r\n const authenticationState = account?.authenticationState;\r\n const isAuthenticationInProgress = account?.isAuthenticationInProgress;\r\n const tenantId = account?.tenantId;\r\n const domainHint = location.state?.domainHint || sessionStorage.getItem(QueryStringParam.DomainHint);\r\n if (domainHint) {\r\n sessionStorage.setItem(QueryStringParam.DomainHint, domainHint);\r\n }\r\n const workEmailAddress = sessionStorage.getItem(QueryStringParam.WorkEmailAddress);\r\n const isESITermsAccepted = useRef(sessionStorage.getItem(QueryStringParam.IsESITermsAccepted) === 'yes');\r\n const disableEsiTerms = FeatureFlagValues().disableEsiTerms;\r\n const [isRedirectToHome, setRedirectHome] = useState(false);\r\n const [isProfileCompleted, setisProfileCompleted] = useState(false);\r\n const [isAccountLinkingModel, setisAccountLinkingModel] = useState(false);\r\n const customError = useSelector((state: IApplicationState) => state.UserStore.customErrorMessage);\r\n const notLinkedAccountError = useSelector((state: IApplicationState) => state.UserStore.customErrorMessage?.errorCode);\r\n const notLinkedAccountErrorMessage = useSelector((state: IApplicationState) => state.UserStore.customErrorMessage?.description);\r\n const esiTerms: IESITerms = useSelector((state: IApplicationState) => state.UserStore.profile?.esiTerms);\r\n const response: IRequestResponse<any> = useSelector((state: IApplicationState) => state.UserStore.response);\r\n\r\n const [\r\n getLanguages,\r\n getTimezones,\r\n getRoles,\r\n getCountries,\r\n getProfile,\r\n getLinkedAccounts,\r\n customerInfo,\r\n getemailcodeverificationstatus\r\n ] = useEndpointActions([\r\n GetLanguagesActions,\r\n GetTimeZonesActions,\r\n GetRolesActions,\r\n GetCountryActions,\r\n GetProfileActions,\r\n GetLinkedAccountsActions,\r\n EmailValidationActions,\r\n GetEmailCodeVerificationStatusActions\r\n ]);\r\n\r\n const [\r\n isprofileerror,\r\n isProfileFetched,\r\n isProfileFetching,\r\n isProfileExists,\r\n isLinkAccountFetched,\r\n isLinkedAccountError,\r\n isEsi,\r\n isAad,\r\n isMSA,\r\n isEsiMember,\r\n linkAccounts,\r\n profileWorkEmailadress,\r\n loginEmailAddress,\r\n role,\r\n timezone,\r\n language,\r\n country,\r\n storeLanguage,\r\n storeRole,\r\n storeTimezone,\r\n storecountries,\r\n isAccountlinkFetching,\r\n isEmailCodeVerified,\r\n preferredEmail,\r\n hasLinkedAccount,\r\n isKoreaPrivacyAccepted\r\n ] = useSelector(\r\n (state: IApplicationState) => [\r\n state.UserStore.isError,\r\n state.UserStore.isFetched,\r\n state.UserStore.isFetching,\r\n state.UserStore.isProfileExists,\r\n state.AccountLinkingStore.isFetched,\r\n state.AccountLinkingStore.isError,\r\n state.UserStore.emailprofile.esi,\r\n state.UserStore.emailprofile.isAad,\r\n state.UserStore.emailprofile.isMSA,\r\n state.UserStore.emailprofile.ESIMember,\r\n state.AccountLinkingStore.linkedAccounts,\r\n state.UserStore.profile.workEmail,\r\n state.UserStore.emailprofile.ESIIndicator,\r\n state.UserStore.profile.role,\r\n state.UserStore.profile.timezone,\r\n state.UserStore.profile.language,\r\n state.UserStore.profile.country,\r\n state.EnrollmentPlanStore.languages,\r\n state.EnrollmentPlanStore.roles,\r\n state.EnrollmentPlanStore.timezones,\r\n state.EnrollmentPlanStore.countries,\r\n state.AccountLinkingStore.isFetching,\r\n state.EnrollmentPlanStore.isEmailCodeVerified,\r\n state.UserStore.profile.preferredEmailAddress,\r\n state.UserStore.profile.hasLinkedAccount,\r\n state.UserStore.profile.isKoreaPrivacyAccepted\r\n ],\r\n shallowEqual\r\n );\r\n\r\n // There should be better to determine Aad and NonAad login\r\n useEffect(() => {\r\n if (ai.appInsights) {\r\n ai.appInsights.trackTrace({\r\n message: 'Register:Customer info request',\r\n severityLevel: SeverityLevel.Information,\r\n properties: {\r\n isEsi,\r\n workEmailAddress,\r\n tenantId\r\n }\r\n });\r\n }\r\n if (isEsi !== undefined && isEsi !== null && !isEsi) {\r\n customerInfo({ emailAddress: workEmailAddress });\r\n }\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, [isEsi, customerInfo, workEmailAddress]);\r\n\r\n // Fetch the profile when the page loads and the user is authenticated\r\n useEffect(() => {\r\n if (ai.appInsights) {\r\n ai.appInsights.trackTrace({\r\n message: 'Register:get Profile',\r\n severityLevel: SeverityLevel.Information,\r\n properties: {\r\n workEmailAddress,\r\n tenantId\r\n }\r\n });\r\n }\r\n if (authenticationState && !(esiTerms && esiTerms.isESITermsAccepted)) {\r\n getProfile(workEmailAddress);\r\n }\r\n if (response && response.status) {\r\n if (profileWorkEmailadress) {\r\n if (!disableEsiTerms && esiTerms && esiTerms.isESITermsAccepted) {\r\n sessionStorage.setItem(QueryStringParam.IsESITermsAccepted, 'yes');\r\n isESITermsAccepted.current = sessionStorage.getItem(QueryStringParam.IsESITermsAccepted) === 'yes';\r\n }\r\n\r\n if (!disableEsiTerms && authenticationState && profileWorkEmailadress && !isESITermsAccepted.current) {\r\n history.push('/esiAgreement/', {});\r\n return;\r\n }\r\n } else if (\r\n !disableEsiTerms &&\r\n authenticationState &&\r\n isProfileFetched &&\r\n isProfileExists !== null &&\r\n isProfileExists == false &&\r\n !isESITermsAccepted.current &&\r\n !notLinkedAccountError\r\n ) {\r\n history.push('/esiAgreement/', {});\r\n return;\r\n }\r\n }\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, [authenticationState, esiTerms, profileWorkEmailadress, isprofileerror, isProfileFetched, isProfileExists, response?.status]);\r\n\r\n useEffect(() => {\r\n if (ai.appInsights) {\r\n ai.appInsights.trackTrace({\r\n message: 'Register:getProfile,IsLinkAccountrequest,emailverification',\r\n severityLevel: SeverityLevel.Information,\r\n properties: {\r\n isLinkAccountFetched,\r\n workEmailAddress,\r\n tenantId\r\n }\r\n });\r\n }\r\n if (authenticationState && !isAccountlinkFetching && !isLinkAccountFetched) {\r\n getProfile(workEmailAddress);\r\n getLinkedAccounts(workEmailAddress);\r\n if (workEmailAddress !== null && workEmailAddress !== undefined) {\r\n const params: IVerificationEmailRequest = {\r\n emailAddress: workEmailAddress ? workEmailAddress : ''\r\n };\r\n getemailcodeverificationstatus(params);\r\n }\r\n }\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, [\r\n authenticationState,\r\n getLinkedAccounts,\r\n getemailcodeverificationstatus,\r\n isAccountlinkFetching,\r\n isLinkAccountFetched,\r\n isProfileFetched,\r\n loginEmailAddress,\r\n tenantId,\r\n workEmailAddress,\r\n isEmailCodeVerified,\r\n getProfile\r\n ]);\r\n\r\n // If the user is trying to register with a new LPID, update their profile so it's the new default\r\n useEffect(() => {\r\n if (ai.appInsights) {\r\n ai.appInsights.trackTrace({\r\n message: 'Register:New profile redirecttohome',\r\n severityLevel: SeverityLevel.Information,\r\n properties: {\r\n isProfileFetched,\r\n isProfileExists,\r\n tenantId\r\n }\r\n });\r\n }\r\n if (isProfileFetched && isProfileExists) {\r\n setRedirectHome(true);\r\n }\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, [isProfileFetched, isProfileExists]);\r\n\r\n useEffect(() => {\r\n if (notLinkedAccountError === NOT_LINKED_ACCOUNT_ERROR || notLinkedAccountError === EMAIL_NOT_ASSOCIATED_ERROR) {\r\n let description = '';\r\n if (notLinkedAccountError === NOT_LINKED_ACCOUNT_ERROR) {\r\n description = `It looks like you've tried to sign in with the wrong linked MSA account. Your work account ${workEmailAddress} is linked with ${loginEmailAddress}, please sign in with ${loginEmailAddress}.`;\r\n } else if (notLinkedAccountError === EMAIL_NOT_ASSOCIATED_ERROR && notLinkedAccountErrorMessage) {\r\n description = notLinkedAccountErrorMessage;\r\n }\r\n const friendlyError: ICustomErrorMessage = {\r\n description,\r\n signOutPrompt: true,\r\n method: 'UseEffect-activeSession',\r\n page: 'Register',\r\n acctType: customError?.acctType,\r\n emailAddress: customError?.emailAddress,\r\n workEmail: customError?.workEmail,\r\n preferredEmail: customError?.preferredEmail,\r\n errorCode: customError?.errorCode,\r\n newEmailAddress: customError?.newEmailAddress\r\n };\r\n if (ai.appInsights) {\r\n ai.appInsights.trackException({\r\n exception: new Error('ESIUI'),\r\n severityLevel: SeverityLevel.Error,\r\n properties: { friendlyError, isAad, isProfileExists, isEsiMember, profileWorkEmailadress, workEmailAddress, tenantId }\r\n });\r\n }\r\n history.push('/about/', {\r\n error: friendlyError\r\n });\r\n return;\r\n }\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, [notLinkedAccountError, notLinkedAccountErrorMessage]);\r\n\r\n // Check whether account linked or not for non-aad case.\r\n useEffect(() => {\r\n if (workEmailAddress === undefined || workEmailAddress === null) {\r\n sessionStorage.clear();\r\n history.push('/');\r\n return;\r\n } else if (isAad === false && isLinkAccountFetched && !linkAccounts.length && !isMSA) {\r\n if ((isProfileExists || isEsiMember) && profileWorkEmailadress?.toLowerCase() !== workEmailAddress?.toLowerCase() && isprofileerror) {\r\n const friendlyError: ICustomErrorMessage = {\r\n description: `It looks like you've tried to sign in with the wrong linked MSA account. Your work account ${workEmailAddress} is linked with ${loginEmailAddress}, please sign in with ${loginEmailAddress}.`,\r\n signOutPrompt: true,\r\n method: 'UseEffect-activeSession',\r\n page: 'Register',\r\n acctType: customError?.acctType,\r\n emailAddress: customError?.emailAddress,\r\n workEmail: customError?.workEmail,\r\n preferredEmail: customError?.preferredEmail,\r\n errorCode: customError?.errorCode,\r\n newEmailAddress: customError?.newEmailAddress\r\n };\r\n if (ai.appInsights) {\r\n ai.appInsights.trackException({\r\n exception: new Error('ESIUI'),\r\n severityLevel: SeverityLevel.Error,\r\n properties: { friendlyError, isAad, isProfileExists, isEsiMember, profileWorkEmailadress, workEmailAddress, tenantId }\r\n });\r\n }\r\n history.push('/about/', {\r\n error: friendlyError\r\n });\r\n return;\r\n }\r\n if (tenantId && tenantId !== process.env.REACT_APP_AUTHENTICATION_MSA_TENANT_ID) {\r\n // If there is an error that can be handled, redirect the user to a friendly error page\r\n const friendlyError: ICustomErrorMessage = {\r\n description: intl.formatMessage({\r\n defaultMessage:\r\n 'Please use Microsoft(MSA) account login instead of Company(AAD) login for authentication. You may also try to clear your browser cache and cookies, close and then start a new browser session to see if this helps.'\r\n }),\r\n signOutPrompt: true,\r\n method: 'UseEffect-MSAAccountinsteadofAAD',\r\n page: 'Register'\r\n };\r\n if (ai.appInsights) {\r\n ai.appInsights.trackException({\r\n exception: new Error('ESIUI'),\r\n severityLevel: SeverityLevel.Error,\r\n properties: { friendlyError, tenantId }\r\n });\r\n }\r\n history.push('/about/', {\r\n error: friendlyError\r\n });\r\n return;\r\n }\r\n if (!isMSA) {\r\n if (isEmailCodeVerified && (isESITermsAccepted.current || disableEsiTerms)) {\r\n setisAccountLinkingModel(true);\r\n } else if (!isAad && !isEmailCodeVerified && (!preferredEmail || !loginEmailAddress) && hasLinkedAccount) {\r\n if (isESITermsAccepted.current || disableEsiTerms) {\r\n history.push('/Settings', {});\r\n } else if (!disableEsiTerms) {\r\n history.push('/esiAgreement/');\r\n return;\r\n }\r\n } else if (!isEmailCodeVerified && (loginEmailAddress || hasLinkedAccount)) {\r\n customerInfo({ emailAddress: workEmailAddress });\r\n getProfile(workEmailAddress);\r\n if ((isESITermsAccepted.current || disableEsiTerms) && !isLinkedAccountError && isProfileExists === true) {\r\n const ssoRedirect = sessionStorage.getItem(QueryStringParam.SSORedirect);\r\n if (ssoRedirect) {\r\n const { pathname, search } = JSON.parse(ssoRedirect);\r\n history.push(pathname + search);\r\n } else {\r\n history.push('/landing', {});\r\n }\r\n }\r\n } else if (!isEmailCodeVerified && !loginEmailAddress && isprofileerror) {\r\n const friendlyError: ICustomErrorMessage = {\r\n description: intl.formatMessage({ defaultMessage: 'The verification code entered is incorrect. Please try again.' }),\r\n signOutPrompt: true,\r\n method: 'UseEffect-AccessCode invalid',\r\n page: 'Register'\r\n };\r\n if (ai.appInsights) {\r\n ai.appInsights.trackException({\r\n exception: new Error('ESIUI'),\r\n severityLevel: SeverityLevel.Error,\r\n properties: { friendlyError, tenantId }\r\n });\r\n }\r\n history.push('/about/', {\r\n error: friendlyError\r\n });\r\n return;\r\n }\r\n }\r\n } else if (isAad && tenantId === process.env.REACT_APP_AUTHENTICATION_MSA_TENANT_ID && isProfileExists) {\r\n const friendlyError: ICustomErrorMessage = {\r\n description: intl.formatMessage({\r\n defaultMessage:\r\n 'Please use Company(AAD) account login instead of Microsoft(MSA) login for authentication. You may also try to clear your browser cache and cookies, close and then start a new browser session to see if this helps.'\r\n }),\r\n signOutPrompt: true,\r\n method: 'UseEffect-useAADAccountinsteadofMSA',\r\n page: 'Register'\r\n };\r\n if (ai.appInsights) {\r\n ai.appInsights.trackException({\r\n exception: new Error('ESIUI'),\r\n severityLevel: SeverityLevel.Error,\r\n properties: { friendlyError, isAad, tenantId, isProfileExists }\r\n });\r\n }\r\n history.push('/about/', {\r\n error: friendlyError\r\n });\r\n return;\r\n } else if (isProfileExists && profileWorkEmailadress?.toLowerCase() !== workEmailAddress?.toLowerCase()) {\r\n const friendlyError: ICustomErrorMessage = {\r\n description:\r\n intl.formatMessage({\r\n defaultMessage: 'It looks like you already have an active LxP account with '\r\n }) +\r\n workEmailAddress +\r\n '.',\r\n signOutPrompt: true,\r\n method: 'UseEffect-activeSession',\r\n page: 'Register'\r\n };\r\n if (ai.appInsights) {\r\n ai.appInsights.trackException({\r\n exception: new Error('ESIUI'),\r\n severityLevel: SeverityLevel.Error,\r\n properties: { friendlyError, isAad, isProfileExists, isEsiMember, profileWorkEmailadress, workEmailAddress, tenantId }\r\n });\r\n }\r\n history.push('/about/', {\r\n error: friendlyError\r\n });\r\n return;\r\n } else if (isMSA && !isAad) {\r\n return;\r\n }\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, [\r\n profileWorkEmailadress,\r\n isLinkAccountFetched,\r\n isProfileExists,\r\n linkAccounts,\r\n isRedirectToHome,\r\n isAad,\r\n history,\r\n workEmailAddress,\r\n isEsiMember,\r\n intl,\r\n isMSA,\r\n loginEmailAddress,\r\n isEmailCodeVerified,\r\n isprofileerror,\r\n notLinkedAccountError\r\n ]);\r\n\r\n useEffect(() => {\r\n if (!(isAuthenticationInProgress ?? true)) {\r\n if (!storeLanguage?.length) {\r\n getLanguages();\r\n }\r\n if (!storeRole?.length) {\r\n getRoles();\r\n }\r\n if (!storeTimezone?.length) {\r\n getTimezones();\r\n }\r\n if (!storecountries?.length) {\r\n getCountries();\r\n }\r\n }\r\n }, [\r\n getCountries,\r\n getLanguages,\r\n getRoles,\r\n getTimezones,\r\n isAuthenticationInProgress,\r\n storeLanguage,\r\n storeRole,\r\n storeTimezone,\r\n storecountries\r\n ]);\r\n\r\n // Finish loading any profile updates before redirecting to the next page\r\n useEffect(() => {\r\n if (isRedirectToHome && isProfileExists && (linkAccounts.length > 0 || isAad || isMSA)) {\r\n sessionStorage.removeItem(QueryStringParam.DomainHint);\r\n if (ai.appInsights) {\r\n ai.appInsights.trackTrace({\r\n message: 'Register:removed key from session storage DomainHint',\r\n severityLevel: SeverityLevel.Information,\r\n properties: {\r\n isRedirectToHome,\r\n isProfileExists,\r\n isAad,\r\n linkAccounts,\r\n tenantId\r\n }\r\n });\r\n }\r\n if (role && timezone && language && country) {\r\n if (storeLanguage?.length && storeTimezone?.length && storeRole?.length && storecountries?.length) {\r\n const isRoleAvailable = Array.isArray(storeRole) && storeRole.find(el => el.roleId === role);\r\n const isTimezoneAvailable = Array.isArray(storeTimezone) && storeTimezone.find(el => el.timezoneId === timezone);\r\n const isLanguageAvailable = Array.isArray(storeLanguage) && storeLanguage.find(el => el.languageId === language);\r\n const isCountryAvailable = Array.isArray(storecountries) && storecountries.find(el => el.countryId === country);\r\n\r\n if (!isRoleAvailable || !isTimezoneAvailable || !isLanguageAvailable || !isCountryAvailable || !preferredEmail) {\r\n if (ai.appInsights) {\r\n ai.appInsights.trackTrace({\r\n message: 'Register:Set profile complete false',\r\n severityLevel: SeverityLevel.Information,\r\n properties: {\r\n isRedirectToHome,\r\n isProfileExists,\r\n isAad,\r\n linkAccounts,\r\n tenantId\r\n }\r\n });\r\n }\r\n setisProfileCompleted(false);\r\n } else {\r\n if (ai.appInsights) {\r\n ai.appInsights.trackTrace({\r\n message: 'Register:Landing page request',\r\n severityLevel: SeverityLevel.Information,\r\n properties: {\r\n isRedirectToHome,\r\n isProfileExists,\r\n isAad,\r\n linkAccounts,\r\n tenantId\r\n }\r\n });\r\n }\r\n setisProfileCompleted(true);\r\n }\r\n if (sessionStorage.getItem(QueryStringParam.DeliveryId)) {\r\n if (ai.appInsights) {\r\n ai.appInsights.trackTrace({\r\n message: 'Register:Delivery Only request',\r\n severityLevel: SeverityLevel.Information,\r\n properties: {\r\n isRedirectToHome,\r\n isProfileExists,\r\n isAad,\r\n linkAccounts,\r\n tenantId\r\n }\r\n });\r\n }\r\n history.push(`/Deliveryonly/?delid=${sessionStorage.getItem(QueryStringParam.DeliveryId)}`);\r\n } else if (sessionStorage.getItem(QueryStringParam.q)) {\r\n if (ai.appInsights) {\r\n ai.appInsights.trackTrace({\r\n message: 'Search:Search request',\r\n severityLevel: SeverityLevel.Information,\r\n properties: {\r\n isRedirectToHome,\r\n isProfileExists,\r\n isAad,\r\n linkAccounts,\r\n tenantId\r\n }\r\n });\r\n }\r\n let searchUrl = `/Search?q=${sessionStorage.getItem(QueryStringParam.q)}`;\r\n\r\n const selectedModalityValue = sessionStorage.getItem(QueryStringParam.SelectedModalities);\r\n const modalityValue = selectedModalityValue\r\n ? decodeURIComponent(selectedModalityValue) // Decode URL-encoded string\r\n .split(',')\r\n .map(part => part.charAt(0).toUpperCase() + part.slice(1).toLowerCase()) // Capitalize first letter and lowercase the rest\r\n .join(',')\r\n : '';\r\n if (modalityValue) {\r\n searchUrl += `&${QueryStringParam.SelectedModalities}=${encodeURIComponent(modalityValue)}`;\r\n }\r\n\r\n const selectedlanguageValue = sessionStorage.getItem(QueryStringParam.SelectedLanguages);\r\n const languageValue = selectedlanguageValue\r\n ? decodeURIComponent(selectedlanguageValue) // Decode URL-encoded string\r\n .split(',')\r\n .map(part => part.charAt(0).toUpperCase() + part.slice(1).toLowerCase()) // Capitalize first letter and lowercase the rest\r\n .join('%2C')\r\n : '';\r\n if (languageValue) {\r\n searchUrl += `&${QueryStringParam.SelectedLanguages}=${encodeURIComponent(languageValue)}`;\r\n }\r\n\r\n const seatAvailabilityValue = sessionStorage.getItem(QueryStringParam.SelectedAvailability);\r\n const seatValue = seatAvailabilityValue\r\n ? decodeURIComponent(seatAvailabilityValue) // Decode URL-encoded string\r\n .split(',')\r\n .map(part => part.charAt(0).toUpperCase() + part.slice(1).toLowerCase()) // Capitalize first letter and lowercase the rest\r\n .join('%2C')\r\n : '';\r\n if (seatValue) {\r\n searchUrl += `&${QueryStringParam.SelectedAvailability}=${encodeURIComponent(seatValue)}`;\r\n }\r\n\r\n const selectedRolesValue = sessionStorage.getItem(QueryStringParam.SelectedRoles);\r\n const roleValue = selectedRolesValue\r\n ? decodeURIComponent(selectedRolesValue) // Decode the URL-encoded string\r\n .split(',')\r\n .map(part =>\r\n part\r\n .split(' ')\r\n .map(word => word.charAt(0).toUpperCase() + word.slice(1).toLowerCase()) // Capitalize first letter of each word\r\n .join(' ')\r\n )\r\n .join(',')\r\n : '';\r\n if (roleValue) {\r\n searchUrl += `&${QueryStringParam.SelectedRoles}=${encodeURIComponent(roleValue)}`;\r\n }\r\n\r\n const selectedLearningOptionValue = sessionStorage.getItem(QueryStringParam.SelectedLearningOPtion);\r\n const learningOptionValue = selectedLearningOptionValue\r\n ? decodeURIComponent(selectedLearningOptionValue) // Decode URL-encoded string\r\n .split(',')\r\n .map(part => part.charAt(0).toUpperCase() + part.slice(1).toLowerCase()) // Capitalize first letter and lowercase the rest\r\n .join('%2C')\r\n : '';\r\n if (learningOptionValue) {\r\n searchUrl += `&${QueryStringParam.SelectedLearningOPtion}=${encodeURIComponent(learningOptionValue)}`;\r\n }\r\n\r\n const selectedTimeZoneValue = sessionStorage.getItem(QueryStringParam.SelectedTimezones);\r\n if (selectedTimeZoneValue) {\r\n searchUrl += `&${QueryStringParam.SelectedTimezones}=${selectedTimeZoneValue}`;\r\n }\r\n history.push(searchUrl);\r\n }\r\n }\r\n }\r\n }\r\n // eslint-disable-next-line react-hooks/exhaustive-deps\r\n }, [\r\n isAad,\r\n isMSA,\r\n isProfileExists,\r\n isLinkAccountFetched,\r\n isAccountlinkFetching,\r\n linkAccounts,\r\n isProfileFetched,\r\n isRedirectToHome,\r\n role,\r\n timezone,\r\n language,\r\n country,\r\n preferredEmail,\r\n storeLanguage,\r\n storeTimezone,\r\n storeRole,\r\n storecountries\r\n ]);\r\n\r\n const ssoRedirect = sessionStorage.getItem(QueryStringParam.SSORedirect);\r\n const ssoPathname = ssoRedirect ? JSON.parse(ssoRedirect).pathname : '';\r\n const ssoSearch = ssoRedirect ? JSON.parse(ssoRedirect).search : '';\r\n\r\n const profileRegister =\r\n isLinkAccountFetched &&\r\n !!(!!linkAccounts.length || isAad || isMSA) &&\r\n isProfileFetched &&\r\n !isProfileFetching &&\r\n !isProfileExists &&\r\n !role &&\r\n !language &&\r\n !timezone &&\r\n !country &&\r\n !isProfileCompleted &&\r\n isprofileerror &&\r\n !preferredEmail &&\r\n (isESITermsAccepted.current || notLinkedAccountError || disableEsiTerms);\r\n const profileupdate =\r\n isLinkAccountFetched &&\r\n !!(!!linkAccounts.length || isAad || isMSA) &&\r\n isProfileFetched &&\r\n isProfileFetching !== null &&\r\n !isProfileFetching &&\r\n isProfileExists !== null &&\r\n isProfileExists &&\r\n (!role || !language || !timezone || !country || !isProfileCompleted || !preferredEmail) &&\r\n !isProfileCompleted &&\r\n !isprofileerror &&\r\n (isESITermsAccepted.current || notLinkedAccountError || disableEsiTerms);\r\n const profilecomplete = isLinkAccountFetched && isProfileFetched && !!isProfileExists && isProfileCompleted;\r\n return (\r\n <React.Fragment>\r\n {(isProfileFetching || isAccountlinkFetching || isAuthenticationInProgress) && <ApplicationLoadingSpinner />}\r\n {profilecomplete && ssoRedirect && (\r\n <Redirect\r\n to={{\r\n pathname: ssoPathname,\r\n search: ssoSearch\r\n }}\r\n />\r\n )}\r\n {profilecomplete && !ssoRedirect && (\r\n <Redirect\r\n to={{\r\n pathname: '/landing'\r\n }}\r\n />\r\n )}\r\n {isAccountLinkingModel && (\r\n <Redirect\r\n to={{\r\n pathname: '/AccountLinking/AccountModal'\r\n }}\r\n />\r\n )}\r\n {profileupdate && (\r\n <div className=\"welcomeContainer\">\r\n <Preferences\r\n isUpdateProfile={false}\r\n selectedRole={role}\r\n selectedLanguage={language}\r\n selectedTimezone={timezone}\r\n isTOSAccepted={true}\r\n isProfileCompleted={isProfileCompleted}\r\n isProfileExists={!!isProfileExists}\r\n selectedCountry={country}\r\n selectedPreferredEmail={preferredEmail}\r\n isKoreaPrivacyAccepted={isKoreaPrivacyAccepted}\r\n ></Preferences>\r\n </div>\r\n )}\r\n {profileRegister && (\r\n <div className=\"welcomeContainer\">\r\n <Preferences\r\n isUpdateProfile={false}\r\n selectedRole=\"\"\r\n selectedLanguage=\"\"\r\n selectedTimezone=\"\"\r\n isTOSAccepted={true}\r\n isProfileCompleted={isProfileCompleted}\r\n isProfileExists={!!isProfileExists}\r\n selectedCountry=\"\"\r\n selectedPreferredEmail=\"\"\r\n isKoreaPrivacyAccepted={false}\r\n ></Preferences>\r\n </div>\r\n )}\r\n </React.Fragment>\r\n );\r\n};\r\n\r\nexport default Register;\r\n","import React from 'react';\r\n\r\nimport { useTitle } from '../../hooks';\r\nimport Register from '../Register/Register';\r\n\r\n/**\r\n * Registration Page\r\n */\r\nexport const AadLogin: React.FunctionComponent = () => {\r\n const pageTitle: string = process.env.REACT_APP_SITE_NAME + ': Register';\r\n useTitle(pageTitle);\r\n return (\r\n <div className=\"welcomeContainer\">\r\n <Register />\r\n </div>\r\n );\r\n};\r\n\r\nexport default AadLogin;\r\n"],"sourceRoot":""}