{"version":3,"sources":["webpack:///external \"_\"","webpack:///./portal/Components/Accounts/createNewUser.tsx","webpack:///./portal/Components/Accounts/advocateAndAttorneyFields.tsx","webpack:///./portal/Components/Accounts/forgotPassword.tsx","webpack:///./portal/Components/Home/requestClaimAccess.tsx","webpack:///external \"React\"","webpack:///./portal/Components/Shared/errorBoundary.tsx","webpack:///./portal/Components/Shared/401ErrorDialog.tsx","webpack:///./portal/Components/Shared/advocatePortalApp.tsx","webpack:///external \"ReactDOM\"","webpack:///./portal/Components/Accounts/accountsApiClient.ts","webpack:///./portal/Components/Shared/pureG.tsx","webpack:///./portal/Components/Shared/setErrorsFromResponse.ts","webpack:///./portal/Components/Shared/portalFullHeader.tsx","webpack:///./portal/Components/Shared/helpDialog.tsx","webpack:///./portal/Components/Accounts/changePasswordDialog.tsx","webpack:///./portal/Components/Accounts/updateProfileDialog.tsx","webpack:///./portal/Components/Shared/SiteNavigation/UserMenu.tsx","webpack:///./portal/Components/Shared/SiteNavigation/ClaimMenu.tsx","webpack:///./portal/Components/Shared/portalSiteNavigation.tsx","webpack:///./portal/Components/Shared/Layout/authenticatedUserLayout.ts","webpack:///./portal/Components/Shared/advocatePortalPage.tsx","webpack:///./portal/Components/Shared/advocatePortalFullPage.tsx","webpack:///./portal/Components/Home/dashboardApiClient.ts"],"names":["module","exports","_","Page","props","getRenderFunction","state","page","CreateUser","renderCreateUserPage","ConfirmCode","renderConfirmCodePage","SetupAccount","renderSetupAccountPage","recaptchaPublicSiteKey","signInPageUrl","userInfo","createUserInfo","errors","className","label","value","firstName","onChange","onFirstNameChanged","required","errorMessage","getErrorMessage","middleName","onMiddleNameChanged","lastName","onLastNameChanged","email","onEmailChanged","phone","onPhoneChange","onPhoneChanged","errorMessages","getErrorMessages","id","role","checked","type","disabled","onUserTypeChanged","userType","states","zipCodesApiClient","data","attorneyAdvocateData","onAttorneyAdvocateDataChange","ref","sitekey","onRecaptchaChanged","onClick","onCreateNewUserClicked","url","confirmCodeInfo","code","onConfirmCodeChanged","onConfirmCodeClicked","resendDidNotSend","onStartOverClicked","onResendEmailClicked","passwordPolicyRules","accountInfo","setupAccountInfo","password","onPasswordChanged","confirmPassword","onConfirmPasswordChanged","onSaveAccountClicked","produceState","recaptchaResponse","createNewUserRequest","phoneNumber","assistingOrganization","address","firmName","fax","taxId","accountsApiClient","createNewUser","then","response","success","countryCode","areaCode","number","extension","street","zipCode","city","county","country","confirmCodeRequest","confirmCreateCode","resendCreateCode","didSend","context","flashMessage","accountSetup","setWindowLocationHref","accountCreatedRedirectUrl","render","this","layout","headerContent","title","borderedHeader","appContext","csrfInfo","renderChildren","accountsApiClientUrls","serialFetcher","CreateNewUserPage","addressSuggestionUrl","document","getElementById","emptyAddressSuggestionState","cities","lastDefaults","lastDefaultedCity","lastDefaultedState","lastDefaultedCounty","lastDefaultedCountry","onAssistingOrganizationChanged","onAddressStreetChanged","onAddressZipChanged","onZipCodeBlur","autoFillAddressSuggestions","onAddressCityChanged","selectedOption","onAddressStateChanged","onFirmNameChanged","onFaxChanged","faxNumber","onTaxIdChanged","addressSuggestionState","cityOptions","map","c","text","stateOptions","s","stateName","concat","systemKey","name","addressFields","size","onBlur","options","allowCustomInput","getAddressSuggestion","suggestion","setState","defaultCity","defaultState","renderForgotPasswordPage","forgotPasswordInfo","userMatchNotFound","autoFocus","placeholder","onForgotPasswordNextClicked","renderResetPasswordPage","resetPasswordInfo","onResetPasswordClicked","ProduceState","info","forgotPasswordEmail","userMatchWasFound","portalUserId","ForgotPassword","defaultEmail","confirmPasswordResetCode","ChangePassword","resendPasswordResetCode","resetInfo","resetPassword","redirectUrl","component","produceFunc","Promise","resolve","ForgotPasswordPage","RequestClaimAccessDialog","closeDialog","portalUser","apiClient","claimNumberInputMask","claimNumber","setClaimNumber","victimName","setVictimName","representingClaimantName","setRepresentingClaimantName","setRecaptchaResponse","setErrors","singleTabText","mask","isVictimClaimant","color","createAccessRequest","userId","r","RequestClaimAccessSection","isRequestSubmitted","setIsRequestSubmitted","style","fontSize","AccessRequestSubmitted","onRequestAccessToAnotherClaim","RequestClaimAccessForm","onRequestSubmitted","React","error","errorInfo","children","componentDidCatch","Render401ErrorDialog","close","AdvocatePortalApp","openDialog","registerContextMenu","registerBeforeUnload","confirm","startSerialOperation","fetcher","handleNetworkError","handle500Error","handle404Error","handle401Error","handle403Error","getCsrfInfo","ReactDOM","signInUrl","signOutUrl","createNewUserUrl","confirmCreateCodeUrl","resendCreateCodeUrl","accountSetupUrl","getChangePasswordInfoUrl","changePasswordUrl","forgotPasswordEmailUrl","confirmPasswordResetCodeUrl","resendPasswordResetCodeUrl","resetPasswordUrl","getUpdateProfileUrl","getEditUserAccountInfoUrl","updateProfileUrl","editUserAccountInfoUrl","signIn","postJson","signOut","getChangePasswordInfo","getJson","undefined","changePassword","getUpdateProfile","updateProfile","alignRight","offset","sizeClass","offsetClass","inline","classes","styles","paddingBottom","setErrorsFromResponse","length","homeUrl","homeLinkText","siteLinksContent","navContent","bordered","logoImageUrl","width","organizationPhoneNumber","officeTollFreePhoneNumber","onCurrentPasswordChanged","currentPassword","onNewPasswordChanged","newPassword","onConfirmNewPasswordChanged","confirmNewPassword","onChangePasswordClicked","flashMessageCallback","tabs","key","selectedTabKey","onTabSelect","updateData","producer","onAttorneyAdvocateDataChanged","request","receivePortalTaskNotificationDigest","initialData","for","onToggle","d","UserMenu","iconClass","onUpdateProfileClicked","siteRootUrl","onLogoutClicked","ClaimMenu","claimOrApplicationNumberAndIds","dashboardApiClient","applicationNumber","createNewClaimApplicationAndRedirect","PortalSiteNavigation","user","selectedClaimOrApplicationKey","iconClassName","victimClaimantClaimOrApplications","ClaimMenuLink","UserMenuLink","userInformalDisplayName","informalDisplayName","openUserMenu","openContextMenu","openMenu","selectedItem","selectedText","isAuthenticatedUserLayout","loggedInUser","header","dashboardApiUrls","dangerouslySetInnerHTML","__html","pageTitle","urls","newClaimApplication","createClaimApplicationUrl","newSupplementalClaimApplication","matterId","createSupplementalClaimApplicationUrl","filterClaims","filter","concurrencyContext","getAdvocateAttorneyClaimsUrl","createNewSupplementalClaimApplicationAndRedirect","createAccessRequestUrl"],"mappings":"wGAAAA,EAAOC,QAAUC,G,iGC4CZC,E,yhBAAL,SAAKA,GACH,+BACA,iCACA,mCAHF,CAAKA,MAAI,KAmCT,kBACE,WAAYC,GAAZ,MACE,YAAMA,IAAM,K,OAuDN,EAAAC,kBAAoB,WAC1B,GAAI,EAAKC,MAAMC,OAASJ,EAAKK,WAC3B,OAAO,EAAKC,uBAET,GAAI,EAAKH,MAAMC,OAASJ,EAAKO,YAChC,OAAO,EAAKC,wBAET,GAAI,EAAKL,MAAMC,OAASJ,EAAKS,aAChC,OAAO,EAAKC,yBAGZ,KAAM,gBAIF,EAAAJ,qBAAuB,WACvB,MAAoD,EAAKL,MAAvDU,EAAsB,yBAAEC,EAAa,gBACvCC,GAD+C,SACpC,EAAKV,MAAMW,gBACtBC,EAASF,EAASE,OACxB,OAAO,gCACL,uBAAKC,UAAU,yBACb,gBAAC,gCAA6B,CAACD,OAAQA,IACvC,gBAAC,gBAAa,KACZ,sBAAIC,UAAU,oBAAkB,qBAElC,gBAAC,IAAY,KACX,gBAAC,mBAAgB,CAACC,MAAM,aACtBC,MAAOL,EAASM,UAChBC,SAAU,EAAKC,mBACfC,UAAQ,EACRC,aAAcR,EAAOS,gBAAgB,gBAEzC,gBAAC,IAAY,KACX,gBAAC,mBAAgB,CAACP,MAAM,cACtBC,MAAOL,EAASY,WAChBL,SAAU,EAAKM,oBACfH,aAAcR,EAAOS,gBAAgB,iBAEzC,gBAAC,IAAY,KACX,gBAAC,mBAAgB,CAACP,MAAM,YACtBC,MAAOL,EAASc,SAChBP,SAAU,EAAKQ,kBACfN,UAAQ,EACRC,aAAcR,EAAOS,gBAAgB,eAEzC,gBAAC,IAAY,KACX,gBAAC,mBAAgB,CAACP,MAAM,QACtBC,MAAOL,EAASgB,MAChBT,SAAU,EAAKU,eACfR,UAAQ,EACRC,aAAcR,EAAOS,gBAAgB,YAEzC,gBAAC,IAAY,KACX,gBAAC,oBAAiB,CAACP,MAAM,QACvBc,MAAOlB,EAASkB,MAChBC,cAAe,EAAKC,eACpBX,UAAQ,EACRY,cAAenB,EAAOoB,iBAAiB,kBAE3C,gBAAC,IAAY,KACX,yBAAOnB,UAAU,WAAWoB,GAAG,aAAW,+BAC1C,wBAAMC,KAAK,QAAO,kBAAiB,aACjC,gBAAC,IAAY,KACX,gBAAC,mBAAgB,CACfpB,MAAO,gCACL,wBAAMD,UAAU,YAAU,UAC1B,yDACA,wBAAMA,UAAU,YAAU,YAC1B,kHAEFE,MAAM,iBACNoB,QAA2B,mBAAlBzB,EAAS0B,KAClBC,UAAU,EACVpB,SAAU,EAAKqB,qBAEnB,gBAAC,IAAY,KACX,gBAAC,mBAAgB,CACfxB,MAAO,gCACL,wBAAMD,UAAU,YAAU,YAC1B,2HAEFE,MAAM,WACNoB,QAA2B,aAAlBzB,EAAS0B,KAClBC,UAAU,EACVpB,SAAU,EAAKqB,qBAEnB,gBAAC,IAAY,KACX,gBAAC,mBAAgB,CACfxB,MAAO,gCACL,wBAAMD,UAAU,YAAU,YAC1B,mEAEFE,MAAM,WACNoB,QAA2B,aAAlBzB,EAAS0B,KAClBC,UAAU,EACVpB,SAAU,EAAKqB,uBAIvB,gBAAC,IAAyB,CACxBC,SAAU,EAAKvC,MAAMW,eAAeyB,KACpCI,OAAQ,EAAK1C,MAAM0C,OACnBC,kBAAmB,EAAK3C,MAAM2C,kBAC9BC,KAAMhC,EAASiC,qBACf1B,SAAU,EAAK2B,6BACfhC,OAAQA,IAEV,gBAAC,IAAY,KACX,gBAAC,IAAS,CAACiC,IAAI,YAAYC,QAAStC,EAAwBS,SAAU,EAAK8B,sBAE7E,gBAAC,IAAY,KACX,0BAAQlC,UAAU,uDAAuDmC,QAAS,EAAKC,wBAAsB,YAC7G,wDACA,gBAAC,OAAI,CAACC,IAAKzC,EAAeI,UAAU,YAAU,cAM9C,EAAAR,sBAAwB,WAC9B,IAAM8C,EAAkB,EAAKnD,MAAMmD,gBAC7BvC,EAASuC,EAAgBvC,OAE/B,OAAO,gCACL,uBAAKC,UAAU,wBACb,gBAAC,gBAAa,KACZ,sBAAIA,UAAU,oBAAkB,wDAElC,qBAAGA,UAAU,8B,8CACiCsC,EAAgBzB,M,yGAG9D,gBAAC,gCAA6B,CAACd,OAAQA,IACvC,gBAAC,IAAY,KACX,gBAAC,mBAAgB,CAACE,MAAM,OACtBC,MAAOoC,EAAgBC,KACvBnC,SAAU,EAAKoC,qBACflC,UAAQ,EACRC,aAAcR,EAAOS,gBAAgB,WAEzC,gBAAC,IAAY,KACX,uBAAKR,UAAU,kBACb,0BAAQA,UAAU,qDAAqDmC,QAAS,EAAKM,sBAAoB,aAG7G,gBAAC,IAAY,KACPH,EAAgBI,kBAChB,uBAAK1C,UAAU,sB,sCACsB,gBAAC,OAAI,CAACmC,QAAS,EAAKQ,oBAAkB,iB,MAG1EL,EAAgBI,kBAAoB,gCACnC,uBAAK1C,UAAU,Y,gGAEmB,gBAAC,OAAI,CAACmC,QAAS,EAAKS,sBAAoB,oCAE1E,uBAAK5C,UAAU,W,0CAC0B,gBAAC,OAAI,CAACmC,QAAS,EAAKQ,oBAAkB,c,UASrF,EAAAjD,uBAAyB,WACvB,IAAAmD,EAAwB,EAAK5D,MAAK,oBACpC6D,EAAc,EAAK3D,MAAM4D,iBACzBhD,EAAS+C,EAAY/C,OAS3B,OAAO,gCACL,uBAAKC,UAAU,wBACb,gBAAC,gCAA6B,CAACD,OAAQA,IACvC,gBAAC,gBAAa,KACZ,sBAAIC,UAAU,oBAAkB,yBAElC,qBAAGA,UAAU,8BAA8B6C,GAC3C,gBAAC,IAAY,KACX,gBAAC,mBAAgB,CAAC5C,MAAM,WAAWsB,KAAK,WACtCrB,MAAO4C,EAAYE,SACnB5C,SAAU,EAAK6C,kBACf3C,UAAQ,EACRC,aAAcR,EAAOS,gBAAgB,eAEzC,gBAAC,IAAY,KACX,gBAAC,mBAAgB,CAACP,MAAM,mBAAmBsB,KAAK,WAC9CrB,MAAO4C,EAAYI,gBACnB9C,SAAU,EAAK+C,yBACf7C,UAAQ,EACRC,aAAcR,EAAOS,gBAAgB,sBAEzC,uBAAKR,UAAU,kBACb,0BAAQA,UAAU,qDAAqDmC,QAAS,EAAKiB,sBAxB7B,uDA8BxD,EAAAC,aAAe,uBAAa,GAE5B,EAAAtB,6BAA+B,SAACF,GACtC,EAAKwB,cAAa,SAAAlE,GAAWA,EAAMW,eAAegC,qBAAuBD,MAGnE,EAAAf,eAAiB,SAACZ,GACxB,EAAKmD,cAAa,SAAAlE,GAAWA,EAAMW,eAAee,MAAQX,MAEpD,EAAAG,mBAAqB,SAACH,GAC5B,EAAKmD,cAAa,SAAAlE,GAAWA,EAAMW,eAAeK,UAAYD,MAExD,EAAAQ,oBAAsB,SAACR,GAC7B,EAAKmD,cAAa,SAAAlE,GAAWA,EAAMW,eAAeW,WAAaP,MAEzD,EAAAU,kBAAoB,SAACV,GAC3B,EAAKmD,cAAa,SAAAlE,GAAWA,EAAMW,eAAea,SAAWT,MAEvD,EAAAe,eAAiB,SAACF,GACxB,EAAKsC,cAAa,SAAAlE,GAAWA,EAAMW,eAAeiB,MAAQA,MAEpD,EAAAU,kBAAoB,SAACC,GAC3B,EAAK2B,cAAa,SAAAlE,GAAWA,EAAMW,eAAeyB,KAAOG,MAEnD,EAAAQ,mBAAqB,SAAChC,GAC5B,EAAKmD,cAAa,SAAAlE,GAAWA,EAAMW,eAAewD,kBAAoBpD,MAEhE,EAAA+C,kBAAoB,SAAC/C,GAC3B,EAAKmD,cAAa,SAAAlE,GAAWA,EAAM4D,iBAAiBC,SAAW9C,MAEzD,EAAAiD,yBAA2B,SAACjD,GAClC,EAAKmD,cAAa,SAAAlE,GAAWA,EAAM4D,iBAAiBG,gBAAkBhD,MAEhE,EAAAkC,uBAAyB,WAC/B,IAAMvC,EAAW,EAAKV,MAAMW,eAEtByD,EAA6C,CACjD1C,MAAOhB,EAASgB,MAChBV,UAAWN,EAASM,UACpBM,WAAYZ,EAASY,WACrBE,SAAUd,EAASc,SACnB6C,YAAa3D,EAASkB,MACtBW,SAAU7B,EAAS0B,KACnBkC,sBAAuB5D,EAASiC,qBAAqB2B,sBACrDC,QAAS7D,EAASiC,qBAAqB4B,QACvCC,SAAU9D,EAASiC,qBAAqB6B,SACxCC,IAAK/D,EAASiC,qBAAqB8B,IACnCC,MAAOhE,EAASiC,qBAAqB+B,MACrCP,kBAAmBzD,EAASyD,mBAG9B,EAAKrE,MAAM6E,kBAAkBC,cAAcR,GAAsBS,MAC/D,SAAAC,GACMA,EAASC,QACX,EAAKb,cAAa,SAAAlE,GAChBA,EAAMC,KAAOJ,EAAKO,YAChBJ,EAAMmD,gBAAkB,CACtBzB,MAAOoD,EAASpD,MAChB0B,KAAM,GACNG,kBAAkB,EAClB3C,OAAQ,IAAI,YAAU,QAK5B,EAAKsD,cAAa,SAAAlE,GAChBA,EAAMW,eAAeC,OAAS,IAAI,YAAUkE,EAASlE,eAOvD,EAAAyC,qBAAuB,SAACtC,GAC9B,EAAKmD,cAAa,SAAAlE,GAAWA,EAAMmD,gBAAgBC,KAAOrC,MAGpD,EAAAyC,mBAAqB,WAC3B,EAAKU,cAAa,SAAAlE,GAChBA,EAAMC,KAAOJ,EAAKK,WAClBF,EAAMW,eAAiB,CACrBe,MAAO,GACPV,UAAW,GACXM,WAAY,GACZE,SAAU,GACVI,MAAO,CAAEoD,YAAa,GAAIC,SAAU,GAAIC,OAAQ,GAAIC,UAAW,IAC/D/C,KAAM,iBACNO,qBAAsB,CACpB2B,sBAAuB,GACvBC,QAAS,CAAEa,OAAQ,GAAIC,QAAS,GAAIC,KAAM,GAAItF,MAAO,GAAIuF,OAAQ,GAAIC,QAAS,IAC9EhB,SAAU,GACVC,IAAK,CAAEO,YAAa,GAAIC,SAAU,GAAIC,OAAQ,GAAIC,UAAW,IAC7DT,MAAO,IAETP,kBAAmB,GACnBvD,OAAQ,IAAI,YAAU,KAExBZ,EAAMmD,gBAAkB,CACtBzB,MAAO,GACP0B,KAAM,GACNG,kBAAkB,EAClB3C,OAAQ,IAAI,YAAU,SAKpB,EAAA0C,qBAAuB,WAC7B,IAAMH,EAAkB,EAAKnD,MAAMmD,gBAE7BsC,EAAgD,CACpD/D,MAAOyB,EAAgBzB,MACvB0B,KAAMD,EAAgBC,MAGxB,EAAKtD,MAAM6E,kBAAkBe,kBAAkBD,GAAoBZ,MACjE,SAAAC,GACMA,EAASC,QACX,EAAKb,cAAa,SAAAlE,GAChBA,EAAMC,KAAOJ,EAAKS,aAClBN,EAAM4D,iBAAmB,CACvBlC,MAAO1B,EAAMmD,gBAAgBzB,MAC7B0B,KAAMpD,EAAMmD,gBAAgBC,KAC5BS,SAAU,GACVE,gBAAiB,GACjBnD,OAAQ,IAAI,YAAU,QAK1B,EAAKsD,cAAa,SAAAlE,GAChBA,EAAMmD,gBAAgBvC,OAAS,IAAI,YAAUkE,EAASlE,eAOxD,EAAA6C,qBAAuB,WAC7B,EAAK3D,MAAM6E,kBAAkBgB,iBAAiB,EAAK3F,MAAMmD,gBAAgBzB,OAAOmD,MAC9E,SAAAC,GACMA,EAASc,QACX,EAAK9F,MAAM+F,QAAQC,aAAa,6BAGhC,EAAK5B,cAAa,SAAAlE,GAChBA,EAAMmD,gBAAgBI,kBAAmB,SAO3C,EAAAU,qBAAuB,WAC7B,IAAML,EAAmB,EAAK5D,MAAM4D,iBAC9BlB,EAA6B,CACjChB,MAAOkC,EAAiBlC,MACxB0B,KAAMQ,EAAiBR,KACvBS,SAAUD,EAAiBC,SAC3BE,gBAAiBH,EAAiBG,iBAEpC,EAAKjE,MAAM6E,kBAAkBoB,aAAarD,GAAMmC,MAC9C,SAAAC,GACOA,EAASC,QAMZ,EAAKjF,MAAM+F,QAAQG,sBAAsBlB,EAASmB,2BALlD,EAAK/B,cAAa,SAAAlE,GAChBA,EAAM4D,iBAAiBhD,OAAS,IAAI,YAAUkE,EAASlE,eAva/D,EAAKZ,MAAQ,CACXC,KAAMJ,EAAKK,WACXS,eAAgB,CACde,MAAO,GACPV,UAAW,GACXM,WAAY,GACZE,SAAU,GACVI,MAAO,CAAEoD,YAAa,GAAIC,SAAU,GAAIC,OAAQ,GAAIC,UAAW,IAC/D/C,KAAM,iBACNO,qBAAsB,CACpB2B,sBAAuB,GACvBC,QAAS,CAAEa,OAAQ,GAAIC,QAAS,GAAIC,KAAM,GAAItF,MAAO,GAAIuF,OAAQ,GAAIC,QAAS,IAC9EhB,SAAU,GACVC,IAAK,CAAEO,YAAa,GAAIC,SAAU,GAAIC,OAAQ,GAAIC,UAAW,IAC7DT,MAAO,IAETP,kBAAmB,GACnBvD,OAAQ,IAAI,YAAU,KAExBuC,gBAAiB,CACfzB,MAAO,GACP0B,KAAM,GACNG,kBAAkB,EAClB3C,OAAQ,IAAI,YAAU,KAExBgD,iBAAkB,CAChBlC,MAAO,GACP0B,KAAM,GACNS,SAAU,GACVE,gBAAiB,GACjBnD,OAAQ,IAAI,YAAU,M,EAkZ9B,OApbuC,OAuCrC,YAAAsF,OAAA,WACQ,MAAsBC,KAAKrG,MAAzB+F,EAAO,UAAEO,EAAM,SACjBC,EAAgB,6DAEtB,OAAO,gCACN,gBAAC,IAAc,CACZC,MAAM,kCACND,cAAeA,EACfE,gBAAgB,EAChBC,WAAYX,EACZO,OAAQA,GACN,uBAAKvF,UAAU,gBAAgBqB,KAAK,QACjCiE,KAAKpG,wBAiYlB,EApbA,CAAuC,aAsbvC,kBAAO,SAAC2C,GACN,SAAgB,gBAAC,IAAiB,CAAC+D,SAAU/D,EAAK0D,OAAOK,SAAUC,eAAgB,SAAAb,GACjF,IAAMlB,EAAoB,IAAI,IAAkBjC,EAAKiE,sBAAuBd,EAAQe,eACpF,OAAO,gBAACC,EAAiB,CACvBhB,QAASA,EACTO,OAAQ1D,EAAK0D,OACbzB,kBAAmBA,EACnBnE,uBAAwBkC,EAAKlC,uBAC7BC,cAAeiC,EAAKjC,cACpBiD,oBAAqBhB,EAAKgB,oBAC1BjB,kBAAmB,IAAI,oBAAkBC,EAAKoE,sBAC9CtE,OAAQE,EAAKF,YAEVuE,SAASC,eAAe,a,qpBCjfjC,cAYE,WAAYlH,GAAZ,MACE,YAAMA,IAAM,K,OAZN,EAAAmH,4BAAsD,CAC5DC,OAAQ,GACR1E,OAAQ,GACR2E,aAAc,CACZC,kBAAmB,GACnBC,mBAAoB,GACpBC,oBAAqB,GACrBC,qBAAsB,KA2GlB,EAAAC,+BAAiC,SAACzG,GACxC,EAAKjB,MAAMmB,SAAS,EAAD,KAAM,EAAKnB,MAAM4C,MAAI,CAAE4B,sBAAuBvD,MAG3D,EAAA0G,uBAAyB,SAAC1G,GAChC,EAAKjB,MAAMmB,SAAS,EAAD,KAAM,EAAKnB,MAAM4C,MAAI,CAAE6B,QAAS,EAAF,KAAO,EAAKzE,MAAM4C,KAAK6B,SAAO,CAAEa,OAAQrE,QAEnF,EAAA2G,oBAAsB,SAAC3G,GAC7B,EAAKjB,MAAMmB,SAAS,EAAD,KAAM,EAAKnB,MAAM4C,MAAI,CAAE6B,QAAS,EAAF,KAAO,EAAKzE,MAAM4C,KAAK6B,SAAO,CAAEc,QAAStE,QAGpF,EAAA4G,cAAgB,WACtB,EAAKC,2BAA2B,EAAK9H,MAAM4C,KAAK6B,QAAQc,UAqClD,EAAAwC,qBAAuB,SAACC,GAC9B,EAAKhI,MAAMmB,SAAS,EAAD,KAAM,EAAKnB,MAAM4C,MAAI,CAAE6B,QAAS,EAAF,KAAO,EAAKzE,MAAM4C,KAAK6B,SAAO,CAAEe,KAAMwC,EAAe/G,YAEhG,EAAAgH,sBAAwB,SAACD,GAC/B,EAAKhI,MAAMmB,SAAS,EAAD,KAAM,EAAKnB,MAAM4C,MAAI,CAAE6B,QAAS,EAAF,KAAO,EAAKzE,MAAM4C,KAAK6B,SAAO,CAAEvE,MAAO8H,EAAe/G,YAEjG,EAAAiH,kBAAoB,SAACjH,GAC3B,EAAKjB,MAAMmB,SAAS,EAAD,KAAM,EAAKnB,MAAM4C,MAAI,CAAE8B,SAAUzD,MAE9C,EAAAkH,aAAe,SAACC,GACtB,EAAKpI,MAAMmB,SAAS,EAAD,KAAM,EAAKnB,MAAM4C,MAAI,CAAE+B,IAAKyD,MAEzC,EAAAC,eAAiB,SAACpH,GACxB,EAAKjB,MAAMmB,SAAS,EAAD,KAAM,EAAKnB,MAAM4C,MAAI,CAAEgC,MAAO3D,MAlKjD,EAAKf,MAAQ,CACXoI,uBAAwB,EAAKnB,6B,EAmKnC,OAnL+C,OAoB7C,YAAAf,OAAA,WACQ,MAAuBC,KAAKrG,MAA1ByC,EAAQ,WAAE3B,EAAM,SAClB,EAA2DuF,KAAKrG,MAAM4C,KAApE4B,EAAqB,wBAAEC,EAAO,UAAEC,EAAQ,WAAEC,EAAG,MAAEC,EAAK,QACpD0D,EAA2BjC,KAAKnG,MAAK,uBAEvCqI,EAAcD,EAClBA,EAAuBlB,OAAOoB,KAAI,SAAAC,GAAO,MAAO,CAAExH,MAAOwH,EAAGC,KAAMD,MAClE,GACIE,EAAeL,EACjBA,EAAuB5F,OAAO8F,KAAI,SAAAI,GAAO,MAAO,CAAE3H,MAAO2H,EAAE1I,MAAOwI,KAAME,EAAEC,cAC1E,CAAC,CAAE5H,MAAO,GAAIyH,KAAM,KAAMI,OAAOzC,KAAKrG,MAAM0C,OAAO8F,KAAI,SAAAI,GAAO,MAAO,CAAE3H,MAAO2H,EAAEG,UAAWL,KAAME,EAAEI,UAE/FC,EAAgB,gCACtB,gBAAC,IAAY,KACX,gBAAC,mBAAgB,CACfjI,MAAM,iBACNC,MAAOwD,EAAQa,OACfnE,SAAUkF,KAAKsB,uBACftG,UAAQ,EACRC,aAAcR,EAAOS,gBAAgB,qBAEzC,gBAAC,IAAK,KACJ,gBAAC,IAAK,CAAC2H,KAAK,OACV,gBAAC,mBAAgB,CACflI,MAAM,MACNC,MAAOwD,EAAQc,QACfpE,SAAUkF,KAAKuB,oBACfuB,OAAQ9C,KAAKwB,cACbxG,UAAQ,EACRC,aAAcR,EAAOS,gBAAgB,sBAEzC,gBAAC,IAAK,CAAC2H,KAAK,OACV,gBAAC,qBAAkB,CACjBlI,MAAM,OACNC,MAAOwD,EAAQe,KAAO,CAAEvE,MAAOwD,EAAQe,KAAMkD,KAAMjE,EAAQe,MAAS,KACpE4D,QAASb,EACTc,kBAAgB,EAChBlI,SAAUkF,KAAK0B,qBACfzG,aAAcR,EAAOS,gBAAgB,mBAEzC,gBAAC,IAAK,CAAC2H,KAAK,OACV,gBAAC,qBAAkB,CACjBlI,MAAM,QACNC,MAAOwD,EAAQvE,MAAQ,CAAEe,MAAOwD,EAAQvE,MAAOwI,KAAMjE,EAAQvE,OAAU,KACvEkJ,QAAST,EACTxH,SAAUkF,KAAK4B,sBACf5G,UAAQ,EACRC,aAAcR,EAAOS,gBAAgB,sBAK7C,OAAO,gCACS,aAAbkB,GAA2B,gCACxB,gBAAC,IAAY,KACX,gBAAC,mBAAgB,CACfzB,MAAM,yBACNC,MAAOuD,EACPrD,SAAUkF,KAAKqB,+BACfrG,UAAQ,EACRC,aAAcR,EAAOS,gBAAgB,4BAExC0H,GAGS,aAAbxG,GAA2B,gCAC1B,gBAAC,IAAY,KACX,gBAAC,mBAAgB,CACfzB,MAAM,YACNC,MAAOyD,EACPvD,SAAUkF,KAAK6B,kBACf5G,aAAcR,EAAOS,gBAAgB,eAExC0H,EACD,gBAAC,IAAK,KACJ,gBAAC,IAAK,CAACC,KAAK,OACV,gBAAC,oBAAiB,CAChBlI,MAAM,MACNc,MAAO6C,EACP5C,cAAesE,KAAK8B,aACpBlG,cAAenB,EAAOoB,iBAAiB,UAE3C,gBAAC,IAAK,CAACgH,KAAK,OACV,gBAAC,mBAAgB,CACflI,MAAM,gBACNK,UAAQ,EACRJ,MAAO2D,EACPzD,SAAUkF,KAAKgC,eACf/G,aAAcR,EAAOS,gBAAgB,gBAsBzC,YAAAuG,2BAAR,SAAmCvC,GAAnC,WACE,+BAAqBA,GAAS,SAACA,GAC3B,OAAO,EAAKvF,MAAM2C,kBAAkB2G,qBAAqB/D,GAAS,iBAEpEc,KAAKrG,MAAM4C,KAAK6B,QAChB4B,KAAKnG,MAAMoI,uBAAuBjB,cACnCtC,MAAK,SAAAwE,GACJ,IAAMlC,EAAe,EAAKnH,MAAMoI,uBAAuBjB,aAEvD,EAAKmC,UAAS,SAAAtJ,GACZ,MAAO,CACLoI,uBAAwB,CACtBlB,OAAQmC,EAAWnC,OACnB1E,OAAQ6G,EAAW7G,OACnB2E,aAAc,CACZC,kBAAmBiC,EAAWE,YAAcF,EAAW/D,KAAO6B,EAAaC,kBAC3EC,mBAAoBgC,EAAWG,aAAeH,EAAWrJ,MAAQmH,EAAaE,mBAC9EE,qBAAsB,GACtBD,oBAAqB,SAI1B,WACC,EAAKxH,MAAMmB,SAAS,EAAD,KACd,EAAKnB,MAAM4C,MAAI,CAAE6B,QAAS,EAAF,KACtB,EAAKzE,MAAM4C,KAAK6B,SAAO,CAC1Be,KAAM+D,EAAWE,YAAcF,EAAW/D,KAAO6B,EAAaC,kBAC9DpH,MAAOqJ,EAAWG,aAAeH,EAAWrJ,MAAQmH,EAAaE,+BAsB/E,EAnLA,CAA+C,c,sKCG1CxH,E,2dAAL,SAAKA,GACH,uCACA,iCACA,uCAHF,CAAKA,MAAI,KA6BT,kBACE,WAAYC,GAAZ,MACE,YAAMA,IAAM,K,OA0CN,EAAA2J,yBAA2B,WAC3B,MAA8C,EAAK3J,MAAjD+F,EAAO,UAAEO,EAAM,SAAE5F,EAAsB,yBACvCkJ,EAAuB,EAAK1J,MAAK,mBACnCY,EAAS8I,EAAmB9I,OAE5ByF,EAAgB,6CAEtB,OAAO,gBAAC,IAAc,CACpBC,MAAM,iBACND,cAAeA,EACfE,gBAAgB,EAChBC,WAAYX,EACZO,OAAQA,GACR,uBAAKvF,UAAU,0BACb,qBAAGA,UAAU,8BAA4B,kHAGzC,gBAAC,gCAA6B,CAACD,OAAQA,IACrC8I,EAAmBC,mBACnB,qBAAG9I,UAAU,qBAAmB,mEAElC,gBAAC,IAAY,KACX,gBAAC,mBAAgB,CAACC,MAAM,QAAQ8I,WAAS,EACvC7I,MAAO2I,EAAmBhI,MAC1BT,SAAU,EAAKU,eACfR,UAAQ,EACR0I,YAAa,mBACbzI,aAAcR,EAAOS,gBAAgB,YAEzC,gBAAC,IAAY,KACX,gBAAC,IAAS,CAACwB,IAAI,YAAYC,QAAStC,EAAwBS,SAAU,EAAK8B,sBAE7E,gBAAC,IAAK,KACJ,gBAAC,IAAK,CAACiG,KAAK,IAAInI,UAAU,kBACxB,0BAAQA,UAAU,kCAAkCmC,QAAS,EAAK8G,6BAA2B,aAO/F,EAAAzJ,sBAAwB,WACxB,MAAsB,EAAKP,MAAzB+F,EAAO,UAAEO,EAAM,SACjBjD,EAAkB,EAAKnD,MAAMmD,gBAC7BvC,EAASuC,EAAgBvC,OAEzByF,EAAgB,2CAEtB,OAAO,gBAAC,IAAc,CACpBC,MAAM,gBACND,cAAeA,EACfE,gBAAgB,EAChBC,WAAYX,EACZO,OAAQA,GAER,uBAAKvF,UAAU,wBACb,iFACA,qBAAGA,UAAU,8B,8CACiCsC,EAAgBzB,M,yGAG9D,gBAAC,gCAA6B,CAACd,OAAQA,IACvC,gBAAC,IAAY,KACX,gBAAC,mBAAgB,CAACE,MAAM,OAAO8I,WAAS,EACtC7I,MAAOoC,EAAgBC,KACvBnC,SAAU,EAAKoC,qBACflC,UAAQ,EACRC,aAAcR,EAAOS,gBAAgB,WAEzC,gBAAC,IAAK,KACJ,gBAAC,IAAK,CAACR,UAAU,kBACf,0BAAQA,UAAU,qDAAqDmC,QAAS,EAAKM,sBAAoB,aAG7G,gBAAC,IAAY,KACTH,EAAgBI,kBAChB,uBAAK1C,UAAU,sB,sCACsB,gBAAC,OAAI,CAACmC,QAAS,EAAKQ,oBAAkB,iB,MAG1EL,EAAgBI,kBAAoB,gCACnC,uBAAK1C,UAAU,Y,gGAEmB,gBAAC,OAAI,CAACmC,QAAS,EAAKS,sBAAoB,oCAE1E,uBAAK5C,UAAU,W,wDACwC,gBAAC,OAAI,CAACmC,QAAS,EAAKQ,oBAAkB,c,UASjG,EAAAuG,wBAA0B,WAC1B,MAA2C,EAAKjK,MAA9C+F,EAAO,UAAEO,EAAM,SAAE1C,EAAmB,sBACtCsG,EAAoB,EAAKhK,MAAMgK,kBAC/BpJ,EAASoJ,EAAkBpJ,OAE3ByF,EAAgB,4CAEtB,OAAO,gBAAC,IAAc,CACpBC,MAAM,iBACND,cAAeA,EACfE,gBAAgB,EAChBC,WAAYX,EACZO,OAAQA,GAER,uBAAKvF,UAAU,0BACb,gBAAC,gCAA6B,CAACD,OAAQA,IACvC,qBAAGC,UAAU,8BAA8B6C,GAC3C,gBAAC,IAAY,KACX,gBAAC,mBAAgB,CAAC5C,MAAM,WAAWsB,KAAK,WACtCrB,MAAOiJ,EAAkBnG,SACzB5C,SAAU,EAAK6C,kBACf3C,UAAQ,EACRC,aAAcR,EAAOS,gBAAgB,eAEzC,gBAAC,IAAY,KACX,gBAAC,mBAAgB,CAACP,MAAM,mBAAmBsB,KAAK,WAC9CrB,MAAOiJ,EAAkBjG,gBACzB9C,SAAU,EAAK+C,yBACf7C,UAAQ,EACRC,aAAcR,EAAOS,gBAAgB,sBAGzC,gBAAC,IAAK,KACJ,gBAAC,IAAK,CAAC2H,KAAK,IAAInI,UAAU,kBACxB,0BAAQA,UAAU,wDAAwDmC,QAAS,EAAKiH,wBAAsB,uBAOhH,EAAA/F,aAAegG,EAAa,GAE5B,EAAAvI,eAAiB,SAACD,GACxB,EAAKwC,cAAa,SAAAlE,GAAWA,EAAM0J,mBAAmBhI,MAAQA,MAGxD,EAAAqB,mBAAqB,SAAChC,GAC5B,EAAKmD,cAAa,SAAAlE,GAAWA,EAAM0J,mBAAmBvF,kBAAoBpD,MAGpE,EAAA+I,4BAA8B,WACpC,IAAMK,EAAO,EAAKnK,MAAM0J,mBAClBhH,EAAoC,CACxChB,MAAOyI,EAAKzI,MACZyC,kBAAmBgG,EAAKhG,mBAE1B,EAAKrE,MAAM6E,kBAAkByF,oBAAoB1H,GAAMmC,MACrD,SAAAC,GACMA,EAASC,QACPD,EAASuF,kBACX,EAAKnG,cAAa,SAAAlE,GAChBA,EAAMC,KAAOJ,EAAKO,YAClBJ,EAAMmD,gBAAkB,CACtBC,KAAM,GACNkH,aAAcxF,EAASwF,aACvB5I,MAAOoD,EAASpD,MAChB6B,kBAAkB,EAClB3C,OAAQ,IAAI,YAAU,QAK1B,EAAKsD,cAAa,SAAAlE,GAChBA,EAAM0J,mBAAmBC,mBAAoB,EAC7C3J,EAAM0J,mBAAmB9I,OAAS,IAAI,YAAU,OAKpD,EAAKsD,cAAa,SAAAlE,GAChBA,EAAM0J,mBAAmBC,mBAAoB,EAC7C3J,EAAM0J,mBAAmB9I,OAAS,IAAI,YAAUkE,EAASlE,eAO3D,EAAAyC,qBAAuB,SAACtC,GAC9B,EAAKmD,cAAa,SAAAlE,GAAWA,EAAMmD,gBAAgBC,KAAOrC,MAGpD,EAAAyC,mBAAqB,WAC3B,EAAKU,cAAa,SAAAlE,GAChBA,EAAMC,KAAOJ,EAAK0K,eAClBvK,EAAM0J,mBAAqB,CACzBhI,MAAkC,MAA3B,EAAK5B,MAAM0K,aAAuB,EAAK1K,MAAM0K,aAAe,GACnErG,kBAAmB,GACnBwF,mBAAmB,EACnB/I,OAAQ,IAAI,YAAU,KAExBZ,EAAMmD,gBAAkB,CACtBzB,MAAO,GACP4I,aAAc,KACdlH,KAAM,GACNG,kBAAkB,EAClB3C,OAAQ,IAAI,YAAU,SAKpB,EAAA0C,qBAAuB,WAC7B,IAAMH,EAAkB,EAAKnD,MAAMmD,gBACnC,GAAqC,OAAjCA,EAAgBmH,aAClB,KAAM,2DAGR,IAAM7E,EAAuD,CAC3D6E,aAAcnH,EAAgBmH,aAC9BlH,KAAMD,EAAgBC,MAGxB,EAAKtD,MAAM6E,kBAAkB8F,yBAAyBhF,GAAoBZ,MACxE,SAAAC,GACMA,EAASC,QACX,EAAKb,cAAa,SAAAlE,GAChBA,EAAMC,KAAOJ,EAAK6K,eAClB1K,EAAMgK,kBAAoB,CACxBM,aAActK,EAAMmD,gBAAgBmH,aACpClH,KAAMpD,EAAMmD,gBAAgBC,KAC5BS,SAAU,GACVE,gBAAiB,GACjBnD,OAAQ,IAAI,YAAU,QAK1B,EAAKsD,cAAa,SAAAlE,GAChBA,EAAMmD,gBAAgBvC,OAAS,IAAI,YAAUkE,EAASlE,eAOxD,EAAA6C,qBAAuB,WAC7B,GAAgD,OAA5C,EAAKzD,MAAMmD,gBAAgBmH,aAC7B,KAAM,2DAGR,IAAM5H,EAAwC,CAC5C4H,aAAc,EAAKtK,MAAMmD,gBAAgBmH,cAE3C,EAAKxK,MAAM6E,kBAAkBgG,wBAAwBjI,GAAMmC,MACzD,SAAAC,GACMA,EAASc,QACX,EAAK9F,MAAM+F,QAAQC,aAAa,6BAGhC,EAAK5B,cAAa,SAAAlE,GAChBA,EAAMmD,gBAAgBI,kBAAmB,SAO3C,EAAAO,kBAAoB,SAAC/C,GAC3B,EAAKmD,cAAa,SAAAlE,GAAWA,EAAMgK,kBAAkBnG,SAAW9C,MAG1D,EAAAiD,yBAA2B,SAACjD,GAClC,EAAKmD,cAAa,SAAAlE,GAAWA,EAAMgK,kBAAkBjG,gBAAkBhD,MAGjE,EAAAkJ,uBAAyB,WAC/B,IAAMW,EAAY,EAAK5K,MAAMgK,kBAC7B,GAA+B,OAA3BY,EAAUN,aACZ,KAAM,6DAGR,IAAM5H,EAA6B,CACjC4H,aAAcM,EAAUN,aACxBlH,KAAMwH,EAAUxH,KAChBS,SAAU+G,EAAU/G,SACpBE,gBAAiB6G,EAAU7G,iBAE7B,EAAKjE,MAAM6E,kBAAkBkG,cAAcnI,GAAMmC,MAC/C,SAAAC,GACOA,EAASC,QAMZ,EAAKjF,MAAM+F,QAAQG,sBAAsBlB,EAASgG,aALlD,EAAK5G,cAAa,SAAAlE,GAChBA,EAAMgK,kBAAkBpJ,OAAS,IAAI,YAAUkE,EAASlE,eAvUhE,EAAKZ,MAAQ,CACXC,KAAMJ,EAAK0K,eACXb,mBAAoB,CAClBhI,MAAkC,MAA3B,EAAK5B,MAAM0K,aAAuB,EAAK1K,MAAM0K,aAAe,GACnErG,kBAAmB,GACnBwF,mBAAmB,EACnB/I,OAAQ,IAAI,YAAU,KAExBuC,gBAAiB,CACfzB,MAAO,GACP4I,aAAc,KACdlH,KAAM,GACNG,kBAAkB,EAClB3C,OAAQ,IAAI,YAAU,KAExBoJ,kBAAmB,CACjBM,aAAc,KACdlH,KAAM,GACNS,SAAU,GACVE,gBAAiB,GACjBnD,OAAQ,IAAI,YAAU,M,EA4T9B,OApVwC,OA6BtC,YAAAsF,OAAA,WACE,GAAIC,KAAKnG,MAAMC,OAASJ,EAAK0K,eAC3B,OAAOpE,KAAKsD,2BAET,GAAItD,KAAKnG,MAAMC,OAASJ,EAAKO,YAChC,OAAO+F,KAAK9F,wBAET,GAAI8F,KAAKnG,MAAMC,OAASJ,EAAK6K,eAChC,OAAOvE,KAAK4D,0BAGZ,KAAM,eA4SZ,EApVA,CAAwC,aAyWjC,SAASG,EAAqBa,GACnC,OAAO,SAACC,GACN,OAAO,IAAIC,SAAQ,SAAAC,GAAW,OAAAH,EAAUzB,SAAS,YAAQ0B,GAAcE,OArB3E,kBAAO,SAACxI,GACR,SAAgB,gBAAC,IAAiB,CAAC+D,SAAU/D,EAAK0D,OAAOK,SAAUC,eAAgB,SAAAb,GACjF,IAAMlB,EAAoB,IAAI,IAAkBjC,EAAKiE,sBAAuBd,EAAQe,eACpF,OAAO,gBAACuE,EAAkB,CACxBX,aAAc9H,EAAK8H,aACnB3E,QAASA,EACTO,OAAQ1D,EAAK0D,OACbzB,kBAAmBA,EACnBnE,uBAAwBkC,EAAKlC,uBAC7BC,cAAeiC,EAAKjC,cACpBiD,oBAAqBhB,EAAKgB,yBACvBqD,SAASC,eAAe,a,kCCla/B,gMAeO,SAASoE,EAAyBtL,GAQ/B,IAAAuL,EAAiGvL,EAAK,YAAzFwL,EAAoFxL,EAAK,WAA7EyL,EAAwEzL,EAAK,UAAlE0G,EAA6D1G,EAAK,WAAtD0L,EAAiD1L,EAAK,qBAAhCU,EAA2BV,EAAK,uBACxG,EAAkC,mBAAS,IAAzC2L,EAAW,KAAEC,EAAc,KAC7B,EAAgC,mBAAS,IAAvCC,EAAU,KAAEC,EAAa,KAC3B,EAA4D,mBAAS,IAAnEC,EAAwB,KAAEC,EAA2B,KACvD,EAA8C,mBAAS,IAArD3H,EAAiB,KAAE4H,EAAoB,KACzC,EAAwB,mBAAS,IAAI,YAAU,KAA7CnL,EAAM,KAAEoL,EAAS,KAEzB,OAAO,gCACL,gBAAC,SAAM,CAACC,cAAc,kBACtB,gBAAC,IAAK,KACJ,gBAAC,IAAK,CAACjD,KAAK,KACV,gBAAC,gCAA6B,CAACpI,OAAQA,MAG3C,gBAAC,IAAK,CAACC,UAAU,eACf,gBAAC,IAAK,CAACmI,KAAK,OACV,gBAAC,yBAAsB,CAAClI,MAAM,eAAeK,UAAQ,EAACJ,MAAO0K,EAAaS,KAAMV,EAAsBvK,SAAUyK,KAGhHJ,EAAWa,iBACP,gBAAC,IAAK,CAACnD,KAAK,OACV,gBAAC,mBAAgB,CAAClI,MAAM,cAAcK,UAAQ,EAACJ,MAAO4K,EAAY1K,SAAU2K,KAE9E,gCACA,gBAAC,IAAK,CAAC5C,KAAK,OACV,gBAAC,mBAAgB,CAAClI,MAAM,cAAcK,UAAQ,EAACJ,MAAO4K,EAAY1K,SAAU2K,KAE9E,gBAAC,IAAK,CAAC5C,KAAK,OACV,gBAAC,mBAAgB,CAAClI,MAAM,6BAA6BK,UAAQ,EAACJ,MAAO8K,EAA0B5K,SAAU6K,OAKnH,gBAAC,IAAY,KACX,gBAAC,IAAS,CAAChJ,QAAStC,EAAwBS,SAAU8K,KAExD,uBAAKlL,UAAU,2BACb,gBAAC,SAAM,CAACuL,MAAM,cAAcpJ,QAASqI,GAAW,UAGhD,gBAAC,SAAM,CACLe,MAAM,UACNpJ,QAAS,WACPuI,EAAUc,oBAAoB,CAC5B/B,aAAcgB,EAAWgB,OACzBb,YAAaA,EACbE,WAAYA,EACZE,yBAA0BA,EAC1B1H,kBAAmBA,IAEpBU,MAAK,SAAC0H,GACF,YAAsBP,EAAWO,KAGpC/F,EAAWV,aAAa,6BACxBuF,UAEH,qBAQF,SAASmB,EAA0B1M,GAOhC,IAAAwL,EAAoFxL,EAAK,WAA7EyL,EAAwEzL,EAAK,UAAlE0G,EAA6D1G,EAAK,WAAtD0L,EAAiD1L,EAAK,qBAAhCU,EAA2BV,EAAK,uBAC3F,EAAgD,oBAAS,GAAvD2M,EAAkB,KAAEC,EAAqB,KAEjD,OAAO,gCACL,2BACE,qDACA,qBAAGC,MAAO,CAACC,SAAU,WAEjBtB,EAAWa,iBACP,mSACA,qVAKV,mCAAe,UAEVM,EASG,gBAACI,EAAsB,CACrBC,8BAA+B,WAAM,OAAAJ,GAAsB,MAT7D,gBAACK,EAAsB,CACrBzB,WAAYA,EACZ9E,WAAYA,EACZ+E,UAAWA,EACXC,qBAAsBA,EACtBhL,uBAAwBA,EACxBwM,mBAAoB,WAAM,OAAAN,GAAsB,QAUvD,SAASG,EAAuB/M,GAGrC,OAAO,gCACL,uBAAKe,UAAU,YACb,sBAAIA,UAAU,YAAU,2CAGxB,gBAAC,SAAM,CACLuL,MAAM,UACNpJ,QAASlD,EAAMgN,+BAA6B,qCAO7C,SAASC,EAAuBjN,GAQ7B,IAAAwL,EAAwGxL,EAAK,WAAjGyL,EAA4FzL,EAAK,UAAtF0G,EAAiF1G,EAAK,WAA1E0L,EAAqE1L,EAAK,qBAApDkN,EAA+ClN,EAAK,mBAAhCU,EAA2BV,EAAK,uBAC/G,EAAkC,mBAAS,IAAzC2L,EAAW,KAAEC,EAAc,KAC7B,EAAgC,mBAAS,IAAvCC,EAAU,KAAEC,EAAa,KAC3B,EAA4D,mBAAS,IAAnEC,EAAwB,KAAEC,EAA2B,KACvD,EAA8C,mBAAS,IAArD3H,EAAiB,KAAE4H,EAAoB,KACzC,EAAwB,mBAAS,IAAI,YAAU,KAA7CnL,EAAM,KAAEoL,EAAS,KAEzB,OAAO,gCACL,gBAAC,IAAK,KACJ,gBAAC,IAAK,CAAChD,KAAK,KACV,gBAAC,gCAA6B,CAACpI,OAAQA,MAG3C,gBAAC,IAAK,CAACC,UAAU,eACf,gBAAC,IAAK,CAACmI,KAAK,OACV,gBAAC,yBAAsB,CAAClI,MAAM,eAAeK,UAAQ,EAACJ,MAAO0K,EAAaS,KAAMV,EAAsBvK,SAAUyK,KAGhHJ,EAAWa,iBACP,gBAAC,IAAK,CAACnD,KAAK,OACV,gBAAC,mBAAgB,CAAClI,MAAM,cAAcK,UAAQ,EAACJ,MAAO4K,EAAY1K,SAAU2K,KAE9E,gCACA,gBAAC,IAAK,CAAC5C,KAAK,OACV,gBAAC,mBAAgB,CAAClI,MAAM,cAAcK,UAAQ,EAACJ,MAAO4K,EAAY1K,SAAU2K,KAE9E,gBAAC,IAAK,CAAC5C,KAAK,OACV,gBAAC,mBAAgB,CAAClI,MAAM,6BAA6BK,UAAQ,EAACJ,MAAO8K,EAA0B5K,SAAU6K,OAKnH,gBAAC,IAAY,KACX,gBAAC,IAAS,CAAChJ,QAAStC,EAAwBS,SAAU8K,KAExD,uBAAKlL,UAAU,WAAWqB,KAAK,cAC7B,gBAAC,SAAM,CACLkK,MAAM,UACNpJ,QAAS,WACPuI,EAAUc,oBAAoB,CAC5B/B,aAAcgB,EAAWgB,OACzBb,YAAaA,EACbE,WAAYA,EACZE,yBAA0BA,EAC1B1H,kBAAmBA,IAEpBU,MAAK,SAAC0H,GACF,YAAsBP,EAAWO,KAGpC/F,EAAWV,aAAa,6BACxBkH,UAEH,sB,mBC/MTtN,EAAOC,QAAUsN,O,sZCUjB,cACE,WAAYnN,GAAZ,MACE,YAAMA,IAAM,K,OACZ,EAAKE,MAAQ,CACXkN,MAAO,KACPC,UAAW,M,EAoBjB,OAzBmC,OASjC,YAAAjH,OAAA,WACE,OAAIC,KAAKnG,MAAMmN,UACN,gCACL,8D,iKAKGhH,KAAKrG,MAAMsN,UAGpB,YAAAC,kBAAA,SAAmBH,EAAcC,GAC/BhH,KAAKmD,SAAS,CAAE4D,MAAK,EAAEC,UAAS,KAIpC,EAzBA,CAAmC,a,4DCP5B,SAASG,EAAqBC,GACrC,OACE,gBAAC,eAAY,CAACtB,cAAc,eAAesB,MAAOA,GAChD,0F,sCCcG,SAASC,EAAkB1N,GAChC,OACE,gBAAC,EAAa,KACZ,gBAAC,MAAG,CAAC4G,eAAgB,SAAC+G,EAAYC,EAAqBC,EAAsB7H,EAAc8H,EAASC,EAAsB7H,GACxH,IAKM8H,EAAU,IAAI,iCAA+B,CACjDC,mBAN6B,WAAQN,EAAW,6BAOhDO,eANyB,WAAQP,EAAW,yBAO5CQ,eANyB,WAAQR,EAAW,yBAO5CS,eANyB,WAAQT,EAAWH,IAO5Ca,eANyB,WAAQV,EAAW,yBAO5CW,YAAa,WAAM,OAAAtO,EAAM2G,YAIrBZ,EAAuB,CAC3B6H,oBAAmB,EACnBI,QAAO,EACPlH,cALoB,IAAI,mCAAiCiH,EAAsBC,GAM/EL,WAAU,EACVG,QAAO,EACP9H,aAAY,EACZ6H,qBAAoB,EACpB3H,sBAAqB,GAGvB,OAAOlG,EAAM4G,eAAeb,S,mBClDpCnG,EAAOC,QAAU0O,U,yDCwMjB,mDAkBE,WAAY1H,EAA8CmH,GACxD3H,KAAKmI,UAAY3H,EAAsB2H,UACvCnI,KAAKoI,WAAa5H,EAAsB4H,WACxCpI,KAAKqI,iBAAmB7H,EAAsB6H,iBAC9CrI,KAAKsI,qBAAuB9H,EAAsB8H,qBAClDtI,KAAKuI,oBAAsB/H,EAAsB+H,oBACjDvI,KAAKwI,gBAAkBhI,EAAsBgI,gBAC7CxI,KAAKyI,yBAA2BjI,EAAsBiI,yBACtDzI,KAAK0I,kBAAoBlI,EAAsBkI,kBAC/C1I,KAAK2I,uBAAyBnI,EAAsBmI,uBACpD3I,KAAK4I,4BAA8BpI,EAAsBoI,4BACzD5I,KAAK6I,2BAA6BrI,EAAsBqI,2BACxD7I,KAAK8I,iBAAmBtI,EAAsBsI,iBAC9C9I,KAAK+I,oBAAsBvI,EAAsBwI,0BACjDhJ,KAAKiJ,iBAAmBzI,EAAsB0I,uBAE9ClJ,KAAK2H,QAAUA,EA0DnB,OAvDS,YAAAwB,OAAP,SAAc5M,GACZ,OAAOyD,KAAK2H,QAAQyB,SAASpJ,KAAKmI,UAAW5L,IAGxC,YAAA8M,QAAP,WACE,OAAOrJ,KAAK2H,QAAQyB,SAASpJ,KAAKoI,WAAY,OAGzC,YAAA3J,cAAP,SAAqBlC,GACnB,OAAOyD,KAAK2H,QAAQyB,SAASpJ,KAAKqI,iBAAkB9L,IAG/C,YAAAgD,kBAAP,SAAyBhD,GACvB,OAAOyD,KAAK2H,QAAQyB,SAASpJ,KAAKsI,qBAAsB/L,IAGnD,YAAAiD,iBAAP,SAAwBjE,GACtB,OAAOyE,KAAK2H,QAAQyB,SAASpJ,KAAKuI,oBAAqB,CAAEhN,MAAK,KAGzD,YAAAqE,aAAP,SAAoBrD,GAClB,OAAOyD,KAAK2H,QAAQyB,SAASpJ,KAAKwI,gBAAiBjM,IAG9C,YAAA+M,sBAAP,WACE,OAAOtJ,KAAK2H,QAAQ4B,QAAQvJ,KAAKyI,8BAA0Be,IAGtD,YAAAC,eAAP,SAAsBlN,GACpB,OAAOyD,KAAK2H,QAAQyB,SAASpJ,KAAK0I,kBAAmBnM,IAGhD,YAAA0H,oBAAP,SAA2B1H,GACzB,OAAOyD,KAAK2H,QAAQyB,SAASpJ,KAAK2I,uBAAwBpM,IAGrD,YAAA+H,yBAAP,SAAgC/H,GAC9B,OAAOyD,KAAK2H,QAAQyB,SAASpJ,KAAK4I,4BAA6BrM,IAG1D,YAAAiI,wBAAP,SAA+BjI,GAC7B,OAAOyD,KAAK2H,QAAQyB,SAASpJ,KAAK6I,2BAA4BtM,IAGzD,YAAAmI,cAAP,SAAqBnI,GACnB,OAAOyD,KAAK2H,QAAQyB,SAASpJ,KAAK8I,iBAAkBvM,IAG/C,YAAAmN,iBAAP,WACE,OAAO1J,KAAK2H,QAAQ4B,QAAQvJ,KAAK+I,sBAG5B,YAAAY,cAAP,SAAqBpN,GACnB,OAAOyD,KAAK2H,QAAQyB,SAASpJ,KAAKiJ,iBAAkB1M,IAExD,EA5FA,I,0iBCpJA,2B,+CAMA,OAN2B,OACzB,YAAAwD,OAAA,WACE,OAAO,uBAAKrF,UAAW,EAAW,SAAUsF,KAAKrG,MAAMe,YACpDsF,KAAKrG,MAAMsN,WAGlB,EANA,CAA2B,aAgB3B,2B,+CASA,OAT2B,OACzB,YAAAlH,OAAA,WACQ,MAAyCC,KAAKrG,MAA5CkJ,EAAI,OAAEoE,EAAQ,WAAE2C,EAAU,aAAEC,EAAM,SACpCC,EAAYjH,EAAO,UAAUA,EAAS,WACtCkH,EAAcF,EAAS,eAAeA,OAAWL,EACvD,OAAO,uBAAK9O,UAAW,EAAWoP,EAAWC,EAAa/J,KAAKrG,MAAMe,UAAW,CAAE,cAAekP,KAC9F3C,IAGP,EATA,CAA2B,aAgB3B,2B,+CAiBA,OAjB2B,OACzB,YAAAlH,OAAA,WACQ,MAA0EC,KAAKrG,MAA7EqQ,EAAM,SAAEnH,EAAI,OAAEoE,EAAQ,WAAET,EAAK,QAAEoD,EAAU,aAAEC,EAAM,SAAEnP,EAAS,YAAEyF,EAAK,QAIrE8J,EAAU,EAAW,QAAS,UAHlBpH,EAAO,UAAUA,EAAS,WACxBgH,EAAS,eAAeA,OAAWL,EACnCQ,EAAS,eAAiB,GACsC,CAAE,cAAeJ,GAAclP,GAE/GwP,EAAS1D,EAKb,OAJIwD,IACFE,EAAS1D,EAAQ,YAAQA,GAAO,SAAAA,GAAWA,EAAM2D,cAAgB,UAAa,CAAEA,cAAe,SAG1F,uBAAKzP,UAAWuP,EAASzD,MAAO0D,EAAQ/J,MAAOA,GAAgB,IACnE8G,IAGP,EAjBA,CAA2B,aAmB3B,2B,+CAQA,OARkC,OAChC,YAAAlH,OAAA,WACE,OAAO,uBAAKrF,UAAU,UACpB,uBAAKA,UAAU,0BACZsF,KAAKrG,MAAMsN,YAIpB,EARA,CAAkC,aAWlC,2B,+CAQA,OAR6B,OAC3B,YAAAlH,OAAA,WACE,OAAO,uBAAKrF,UAAU,UACpB,uBAAKA,UAAU,YACZsF,KAAKrG,MAAMsN,YAIpB,EARA,CAA6B,c,kCClH7B,kDAGO,SAASmD,EAAsBvE,EAA2ClH,G,MAC/E,OAAmB,QAAhB,EAACA,EAASlE,cAAM,eAAE4P,SAKrBxE,EAAU,IAAI,YAAUlH,EAASlE,UAC1B,IALLoL,EAAU,IAAI,YAAU,MACjB,K,qcCUX,2B,+CAmBA,OAnBsC,OACpC,YAAA9F,OAAA,WACE,IAAMpG,EAAQqG,KAAKrG,MACnB,OAAO,2BACL,2BAASmC,GAAG,WAAWpB,UAAU,YACjC,uBAAKA,UAAU,qBACb,gBAAC,OAAI,CAACqC,IAAKpD,EAAM2Q,QAAS5P,UAAU,gCACjCf,EAAM4Q,eAGT,uBAAK7P,UAAU,uBACb,uBAAKA,UAAU,6BACb,gBAAC,iBAAc,CAAC8P,iBAAkB,iCAAOC,WAAYzK,KAAKrG,MAAM8Q,gBAItE,gBAAC,aAAU,CAACH,QAAS3Q,EAAM2Q,QAASI,SAAU/Q,EAAM+Q,SAAUC,aAAchR,EAAMgR,cAAehR,EAAMsN,YAG7G,EAnBA,CAAsC,a,2XCLtC,2B,+CAiEA,OAjEgC,OAC9B,YAAAlH,OAAA,WACE,OACE,gBAAC,SAAM,CAAC+F,cAAc,OAAO8E,MAAM,SACjC,gBAAC,IAAY,KACX,iD,4PAKF,gBAAC,IAAY,KACX,6D,oLAGF,gBAAC,IAAY,KACX,+CACA,0BACE,mZAKA,+RAIA,qNAGA,kOAKJ,gBAAC,IAAY,KACX,kD,iZAIF,gBAAC,IAAY,KACX,oE,OAGF,gBAAC,IAAY,KACX,kF,uDAGF,gBAAC,IAAY,KACX,8C,kQAGF,gBAAC,IAAY,KACX,sBAAIlQ,UAAU,gB,mBAAgCsF,KAAKrG,MAAMkR,wB,OAA6B7K,KAAKrG,MAAMmR,4BAEnG,uBAAKpQ,UAAU,UACb,uBAAKA,UAAU,YACb,uBAAKA,UAAU,kBACb,gBAAC,SAAM,CAACuL,MAAM,UAAUpJ,QAASmD,KAAKrG,MAAMuL,aAAW,cAQrE,EAjEA,CAAgC,a,+ZCahC,cACE,WAAYvL,GAAZ,MACE,YAAMA,IAAM,K,OA6CN,EAAAoR,yBAA2B,SAACC,GAClC,EAAK7H,SAAS,CAAC6H,gBAAe,KAGxB,EAAAC,qBAAuB,SAACC,GAC9B,EAAK/H,SAAS,CAAC+H,YAAW,KAGpB,EAAAC,4BAA8B,SAACC,GACrC,EAAKjI,SAAS,CAACiI,mBAAkB,KAG3B,EAAAC,wBAA0B,WAChC,EAAK1R,MAAM6E,kBAAkBiL,eAAe,CAC1CuB,gBAAiB,EAAKnR,MAAMmR,gBAC5BE,YAAa,EAAKrR,MAAMqR,YACxBE,mBAAoB,EAAKvR,MAAMuR,qBAC9B1M,MACD,SAAAC,GACMA,EAASC,SACX,EAAKjF,MAAMuL,cACX,EAAKvL,MAAM2R,qBAAqB,sBAGhC,EAAKnI,SAAS,CACZ1I,OAAQ,IAAI,YAAUkE,EAASlE,cApEvC,EAAKZ,MAAQ,CACXmR,gBAAiB,GACjBE,YAAa,GACbE,mBAAoB,GACpB3Q,OAAQ,IAAI,YAAU,K,EAsE5B,OA9E0C,OAYxC,YAAAsF,OAAA,WACE,IAAMlG,EAAQmG,KAAKnG,MACX0D,EAAwByC,KAAKrG,MAAK,oBACpCc,EAASZ,EAAMY,OAGf8Q,EAAO,CACX,CACEC,IAHW,iBAIXnJ,KAAM,oBAIV,OAAO,gBAAC,SAAM,CAACuI,MAAM,QACnB,gBAAC,UAAO,CAACa,eATI,iBASoBF,KAAMA,EAAMG,YAAa,eAC1D,gBAAC,gCAA6B,CAACjR,OAAQA,IACvC,gBAAC,IAAY,KACX,gBAAC,mBAAgB,CAACE,MAAM,mBAAmBsB,KAAK,WAAWjB,UAAQ,EAACyI,WAAS,EAAC7I,MAAOf,EAAMmR,gBAAiBlQ,SAAUkF,KAAK+K,yBAA0B9P,aAAcR,EAAOS,gBAAgB,sBAE5L,qBAAGR,UAAU,8BAA8B6C,GAC3C,gBAAC,IAAY,KACX,gBAAC,mBAAgB,CAAC5C,MAAM,eAAesB,KAAK,WAAWjB,UAAQ,EAACJ,MAAOf,EAAMqR,YAAapQ,SAAUkF,KAAKiL,qBAAsBhQ,aAAcR,EAAOS,gBAAgB,kBAEtK,gBAAC,IAAY,KACX,gBAAC,mBAAgB,CAACP,MAAM,uBAAuBsB,KAAK,WAAWjB,UAAQ,EAACJ,MAAOf,EAAMuR,mBAAoBtQ,SAAUkF,KAAKmL,4BAA6BlQ,aAAcR,EAAOS,gBAAgB,yBAE5L,uBAAKR,UAAU,YACb,uBAAKA,UAAU,kBACb,0BAAQA,UAAU,sCAAsCmC,QAASmD,KAAKrG,MAAMuL,aAAW,UACvF,0BAAQxK,UAAU,kCAAkCmC,QAASmD,KAAKqL,yBAAuB,uBAqCnG,EA9EA,CAA0C,a,8jBC0B1C,cACE,WAAY1R,GAAZ,MACE,YAAMA,IAAM,K,OAmFN,EAAAgS,WAAa,SAACC,GACpB,OAAO,EAAKzI,UAAS,SAAAtJ,GACnB,MAAO,CAAE0C,KAAMqP,EAAS/R,EAAM0C,WAI1B,EAAAxB,mBAAqB,SAACF,GAAsB,SAAK8Q,YAAW,SAACpP,GAAW,OAAO,EAAP,KAAYA,GAAI,CAAE1B,UAAWA,QACrG,EAAAO,oBAAsB,SAACD,GAAuB,SAAKwQ,YAAW,SAACpP,GAAW,OAAO,EAAP,KAAYA,GAAI,CAAEpB,WAAYA,QACxG,EAAAG,kBAAoB,SAACD,GAAqB,SAAKsQ,YAAW,SAACpP,GAAW,OAAO,EAAP,KAAYA,GAAI,CAAElB,SAAUA,QAClG,EAAAG,eAAiB,SAACZ,GAAkB,SAAK+Q,YAAW,SAACpP,GAAW,OAAO,EAAP,KAAYA,GAAI,CAAEhB,MAAOX,QACzF,EAAAe,eAAiB,SAACF,GAAuB,SAAKkQ,YAAW,SAACpP,GAAW,OAAO,EAAP,KAAYA,GAAI,CAAEd,MAAOA,QAE9F,EAAAoQ,8BAAgC,SAACtP,GACvC,EAAKoP,YAAW,SAAA9R,GACd,OAAO,EAAP,KACKA,GAAK,CACRsE,sBAAuB5B,EAAK4B,sBAC5BC,QAAS7B,EAAK6B,QACdC,SAAU9B,EAAK8B,SACfC,IAAK/B,EAAK+B,IACVC,MAAOhC,EAAKgC,YAKV,EAAAT,qBAAuB,WAC7B,IAAMvB,EAAO,EAAK1C,MAAM0C,KAClBuP,EAAiC,CACrCjR,UAAW0B,EAAK1B,UAChBM,WAAYoB,EAAKpB,WACjBE,SAAUkB,EAAKlB,SACfE,MAAOgB,EAAKhB,MACZE,MAAOc,EAAKd,MACZW,SAAUG,EAAKH,SACf+B,sBAAuB5B,EAAK4B,sBAC5BC,QAAS7B,EAAK6B,QACdC,SAAU9B,EAAK8B,SACfC,IAAK/B,EAAK+B,IACVC,MAAOhC,EAAKgC,MACZwN,oCAAqCxP,EAAKwP,qCAE5C,EAAKpS,MAAM6E,kBAAkBmL,cAAcmC,GAASpN,MAClD,SAAAC,GACOA,EAASC,SAIZ,EAAKjF,MAAM+F,QAAQC,aAAa,mBAChC,EAAKhG,MAAMuL,eAJX,EAAK/B,SAAS,CAAE1I,OAAQ,IAAI,YAAUkE,EAASlE,cAU/C,EAAA4Q,wBAA0B,WAChC,EAAK1R,MAAM6E,kBAAkB8K,wBAAwB5K,MACnD,SAAAC,GACE,EAAKhF,MAAM+F,QAAQ4H,YAAW,SAAApC,GAC5B,OAAO,gBAAC,EAAoB,CAC1BA,YAAaA,EACb3H,oBAAqBoB,EAASpB,oBAC9BiB,kBAAmB,EAAK7E,MAAM6E,kBAC9B8M,qBAAsB,EAAK3R,MAAM+F,QAAQC,sBA/IjD,EAAK9F,MAAQ,CACX0C,KAAM5C,EAAMqS,YACZvR,OAAQ,IAAI,YAAU,K,EAkJ5B,OAxJyC,OAUvC,YAAAsF,OAAA,sBACQxD,EAAOyD,KAAKnG,MAAM0C,KAClB9B,EAASuF,KAAKnG,MAAMY,OAE1B,OAAO,gBAAC,SAAM,CAACmQ,MAAM,OAAO9E,cAAc,kBACxC,2BACE,gBAAC,gCAA6B,CAACrL,OAAQA,IACvC,gBAAC,IAAY,KACX,gBAAC,mBAAgB,CAACO,UAAQ,EAACyI,WAAS,EAAC9I,MAAM,aACzCC,MAAO2B,EAAK1B,UACZC,SAAUkF,KAAKjF,mBACfE,aAAcR,EAAOS,gBAAgB,gBAGzC,gBAAC,IAAY,KACX,gBAAC,mBAAgB,CAACP,MAAM,cACtBC,MAAO2B,EAAKpB,WACZL,SAAUkF,KAAK5E,uBAGnB,gBAAC,IAAY,KACX,gBAAC,mBAAgB,CAACJ,UAAQ,EAACL,MAAM,YAC/BC,MAAO2B,EAAKlB,SACZP,SAAUkF,KAAK1E,kBACfL,aAAcR,EAAOS,gBAAgB,eAGzC,gBAAC,IAAY,KACX,gBAAC,mBAAgB,CAACF,UAAQ,EAACL,MAAM,QAC/BC,MAAO2B,EAAKhB,MACZT,SAAUkF,KAAKxE,eACfP,aAAcR,EAAOS,gBAAgB,YAEzC,gBAAC,IAAY,KACX,gBAAC,oBAAiB,CAACF,UAAQ,EAACL,MAAM,QAChCc,MAAOc,EAAKd,MACZC,cAAesE,KAAKrE,eACpBC,cAAenB,EAAOoB,iBAAiB,YAE3C,gBAAC,IAAyB,CACxBO,SAAUG,EAAKH,SACfC,OAAQ2D,KAAKrG,MAAM0C,OACnBC,kBAAmB0D,KAAKrG,MAAM2C,kBAC9BC,KAAMA,EACNzB,SAAUkF,KAAK6L,8BACfpR,OAAQA,IAEV,gBAAC,IAAY,KACX,gBAAC,aAAU,CACT4H,KACA,gC,0CAEE,wBAAM3H,UAAU,4BAA4ByF,MAAM,wGAGpD8L,IAAI,wCAEN,gBAAC,aAAU,CACTnQ,GAAG,sCACHlB,MAAO2B,EAAKwP,oCACZG,SAAU,WAAQ,EAAKP,YAAW,SAAAQ,GAAO,OAAO,EAAP,KAAWA,GAAC,CAAEJ,qCAAsCI,EAAEJ,8CAGrG,gBAAC,IAAK,KACJ,gBAAC,IAAK,CAACrR,UAAU,kBACf,0BAAQA,UAAU,sCAAsCmC,QAASmD,KAAKrG,MAAMuL,aAAW,UACvF,0BAAQxK,UAAU,kCAAkCmC,QAASmD,KAAKlC,sBAAoB,kBAG1F,2B,gBACe,gBAAC,OAAI,CAACjB,QAASmD,KAAKqL,yBAAuB,wB,OAwEhE,EAxJA,CAAyC,aC1ClC,SAASe,EAASzS,GAIhB,IAAA0G,EAAiC1G,EAAK,WAA1B6E,EAAqB7E,EAAK,kBAC7C,OAAO,gCACL,gBAAC,cAAW,KACV,gBAAC,kBAAe,CAAC0S,UAAU,aAAahK,KAAK,iBAAiBxF,QAAS,WAAM,OA8BnF,SAAgCwD,EAAyB7B,GACvDA,EAAkBkL,mBAAmBhL,MACnC,SAAAC,GACE0B,EAAWiH,YAAW,SAAApC,GACpB,OAAO,gBAAC,EAAmB,CACzBA,YAAaA,EACb1G,kBAAmBA,EACnBkB,QAASW,EACT2L,YAAa,CACXnR,UAAW8D,EAAS9D,UACpBM,WAAYwD,EAASxD,WACrBE,SAAUsD,EAAStD,SACnBE,MAAOoD,EAASpD,MAChBE,MAAOkD,EAASlD,MAChBW,SAAUuC,EAASvC,SACnB+B,sBAAuBQ,EAASR,sBAChCC,QAASO,EAASP,QAClBC,SAAUM,EAASN,SACnBC,IAAKK,EAASL,IACdC,MAAOI,EAASJ,MAChBwN,oCAAqCpN,EAASoN,qCAEhD1P,OAAQsC,EAAStC,OACjBC,kBAAmB,IAAI,oBAAkBqC,EAASgC,8BArDuB2L,CAAuBjM,EAAY7B,MAChH,gBAAC,kBAAe,CAAC6N,UAAU,gBAAgBhK,KAAK,kBAAkBxF,QAAS,WAAM,OAOvF,SAAiCwD,EAAyB7B,GACxDA,EAAkB8K,wBAAwB5K,MACxC,SAAAC,GACE0B,EAAWiH,YAAW,SAAApC,GACpB,OAAO,gBAAC,EAAoB,CAC1BA,YAAaA,EACb3H,oBAAqBoB,EAASpB,oBAC9BiB,kBAAmBA,EACnB8M,qBAAsBjL,EAAWV,qBAf4C0L,CAAwBhL,EAAY7B,MACrH,gBAAC,kBAAe,CAAC6N,UAAU,cAAchK,KAAK,SAASxF,QAAS,WAAM,OAoB5E,SAAyBwD,EAAyB7B,GAChDA,EAAkB6K,UAAU3K,MAC1B,SAACC,GACE0B,EAAWR,sBAAsBlB,EAAS4N,gBAvB2BC,CAAgBnM,EAAY7B,Q,gBCVjG,SAASiO,EAAU9S,GAOhB,IAAA0G,EAAuG1G,EAAK,WAAhG+S,EAA2F/S,EAAK,+BAAhEgT,EAA2DhT,EAAK,mBAA5CwL,EAAuCxL,EAAK,WAAhCU,EAA2BV,EAAK,uBAEpH,OAAO,gCACP,gBAAC,cAAW,KACT+S,EAA+BvK,KAAI,SAAAC,GAClC,uBAAC,0BAAuB,CAACC,KAAMD,EAAEkD,aAAelD,EAAEwK,kBAAmB7P,IAAKqF,EAAErF,IAAKsP,UAAU,iBAE7F,gBAAC,kBAAe,CAAChK,KAAM,yBACrBgK,UAAU,WACVxP,QAAS,WAAQ8P,EAAmBE,qCAAqCxM,MAE3E,gBAAC,kBAAe,CAACgC,KAAM,0BACrBgK,UAAU,WACVxP,QAAS,WACPwD,EAAWiH,YAAW,SAACpC,GACrB,OAAO,gBAAC,IAAwB,CAC9BA,YAAaA,EACb7E,WAAYA,EACZ+E,UAAWuH,EACXxH,WAAYA,EACZ9K,uBAAwBA,EACxBgL,qBAAqB,sB,gBCP1B,SAASyH,EAAqBnT,G,MAC3BoT,EAAuKpT,EAAK,KAAtK0G,EAAiK1G,EAAK,WAA1J6E,EAAqJ7E,EAAK,kBAAvIqT,EAAkIrT,EAAK,8BAAxGgT,EAAmGhT,EAAK,mBAApFU,EAA+EV,EAAK,uBAA5DkR,EAAuDlR,EAAK,wBAAnCmR,EAA8BnR,EAAK,0BAMpL,OAAO,gCACL,gBAAC,qBAAkB,CACjBwG,MAAM,OACN8M,cAAc,0CACd5K,KAAK,OACLxF,QAVmB,WAErBlD,EAAM0G,WAAWiH,YADI,SAACpC,GAA4B,uBAAC,EAAU,CAACA,YAAaA,EAAa2F,wBAAyBA,EAAyBC,0BAA2BA,WAWnKiC,aAAI,EAAJA,EAAM/G,oBAA2D,QAAvC,EAAA+G,aAAI,EAAJA,EAAMG,yCAAiC,eAAE7C,QAAS,GAC1E,gBAAC8C,EAAa,CACZ9M,WAAYA,EACZsM,mBAAoBA,EACpBK,8BAA+BA,EAC/BN,+BAAgCK,EAAKG,kCACrC/H,WAAY4H,EACZ1S,uBAAwBA,IAI5B0S,GACC,gBAACK,EAAY,CACZ/M,WAAYA,EACZ7B,kBAAmBA,EACnB6O,wBAAyBN,EAAKO,uBAKtC,SAASF,EAAazT,GAKZ,IAAA0T,EAA2D1T,EAAK,wBAAvC0G,EAAkC1G,EAAK,WAA3B6E,EAAsB7E,EAAK,kBAClE4T,EAAelN,EAAWkH,qBAAoB,WAClD,uBAAC6E,EAAQ,CAAC/L,WAAY1G,EAAM0G,WAAY7B,kBAAmBA,OAG7D,OAAO,gCACL,gBAAC,qBAAkB,CAACgP,gBAAiBD,GACrC,qBAAG7S,UAAU,+CACX8L,MAAO,CAAEoE,MAAO,QAChBzK,MAAOkN,EAAuB,aACnB,QACVA,KAMP,SAASF,EAAcxT,G,QAQb0G,EAAsI1G,EAAK,WAA/H+S,EAA0H/S,EAAK,+BAA/FqT,EAA0FrT,EAAK,8BAAhEgT,EAA2DhT,EAAK,mBAA5CwL,EAAuCxL,EAAK,WAAhCU,EAA2BV,EAAK,uBAE7I8T,EAAWpN,EAAWkH,qBAAoB,WAC9C,uBAACkF,EAAS,CACRpM,WAAYA,EACZsM,mBAAoBA,EACpBD,+BAAgCA,EAChCvH,WAAYA,EACZ9K,uBAAwBA,OAItBqT,EAAe,eAAKhB,GAAgC,SAAAtK,GAAK,OAAAA,EAAEoJ,KAAOwB,KAClEW,EAA6E,QAA7D,EAAyB,QAA1B,EAACD,aAAY,EAAZA,EAAcpI,mBAAW,QAAIoI,aAAY,EAAZA,EAAcd,yBAAkB,QAAI,SACvF,OAAO,gCACL,gBAAC,qBAAkB,CAACY,gBAAiBC,GACnC,qBAAG/S,UAAU,+CACX8L,MAAO,CAAEoE,MAAO,QAChBzK,MAAOwN,EAAY,aACR,UAERA,KCjFJ,SAASC,EAA0B3N,GACxC,QAAUA,EAAmC4N,a,2VCa/C,GA3BA,yB,+CAAgC,OAE9B,YAAA9N,OAAA,WACE,IAAMI,EAAQH,KAAKrG,MAAMwG,MAAWH,KAAKrG,MAAMwG,MAAK,2BAA6B,wBACjF,OAAO,gBAAC,OAAI,CACV2N,OAAQ,gBAAC,EAAc,CACrBzN,WAAYL,KAAKrG,MAAM0G,WACvBJ,OAAQD,KAAKrG,MAAMsG,OACnBE,MAAOH,KAAKrG,MAAMwG,MAClBD,cAAeF,KAAKrG,MAAMuG,cAC1BE,eAAgBJ,KAAKrG,MAAMyG,eAC3B4M,8BAA+BY,EAA0B5N,KAAKrG,MAAMsG,QAAUD,KAAKrG,MAAMsG,OAAO+M,8BAAgC,OAElI7M,MAAOA,EACP8G,SAAUjH,KAAKrG,MAAMsN,YAd3B,CAAgC,aA2BhC,yB,+CA8BA,OA9BoC,OAClC,YAAAlH,OAAA,WACQ,MAAwDC,KAAKrG,MAA3D0G,EAAU,aAAEJ,EAAM,SAAE+M,EAA6B,gCAEnDvC,EAAa,gBAACqC,EAAoB,CACtCzM,WAAYA,EACZ0M,KAAMa,EAA0B3N,GAAUA,EAAO4N,aAAe,KAChEb,8BAA+BA,EAC/BL,mBAAoBiB,EAA0B3N,GAAU,IAAI,IAAmBA,EAAO8N,iBAAkB1N,EAAWI,cAAeJ,EAAWsH,SAAW,KACxJnJ,kBAAmB,IAAI,IAAkByB,EAAOO,sBAAuBH,EAAWI,eAClFpG,uBAAwB4F,EAAO5F,uBAC/ByQ,0BAA2B7K,EAAO6K,0BAClCD,wBAAyB5K,EAAO4K,0BAGlC,OAAO,gCACL,yBAAOmD,wBAAyB,CAC9BC,OAAQ,wDAGV,uBAAKnS,GAAG,mBACR,gBAAC,EAAgB,CACf4O,SAAU1K,KAAKrG,MAAMyG,eACrBkK,QAASrK,EAAOqK,QAChBC,aAActK,EAAOsK,aACrBE,WAAYA,EACZE,aAAc1K,EAAO0K,aACrB1D,SAAUjH,KAAKrG,MAAMuG,kBAG7B,EA9BA,CAAoC,kB,2UC9BpC,2B,+CAmBA,OAnB4C,OAC1C,YAAAH,OAAA,WACU,IAAAI,EAAUH,KAAKrG,MAAK,MACtBuU,EAAY/N,EAAWA,EAAK,2BAA6B,wBAE/D,OAAO,gBAAC,WAAQ,CACdA,MAAO+N,EACPJ,OACE,gBAAC,EAAc,CACbzN,WAAYL,KAAKrG,MAAM0G,WACvBF,MAAOH,KAAKrG,MAAMwG,MAClBD,cAAeF,KAAKrG,MAAMuG,cAC1BE,eAAgBJ,KAAKrG,MAAMyG,eAC3BH,OAAQD,KAAKrG,MAAMsG,OACnB+M,8BAA+BY,EAA0B5N,KAAKrG,MAAMsG,QAAUD,KAAKrG,MAAMsG,OAAO+M,8BAAgC,OAGpI/F,SAAUjH,KAAKrG,MAAMsN,YAE3B,EAnBA,CAA4C,a,yCCgJ5C,mDAKE,WAAYkH,EAAwB1N,EAAiDkH,GACnF3H,KAAKmO,KAAOA,EACZnO,KAAKS,cAAgBA,EACrBT,KAAK2H,QAAUA,EA4CnB,OAzCE,YAAAyG,oBAAA,WACE,OAAOpO,KAAKS,cAAc2I,SAASpJ,KAAKmO,KAAKE,0BAA2B,KAG1E,YAAAC,gCAAA,SAAgCC,GAC9B,OAAOvO,KAAKS,cAAc2I,SAASpJ,KAAKmO,KAAKK,sCAAuC,CAAED,SAAQ,KAGhG,YAAAE,aAAA,SAAaC,EAAsBC,GACjC,OAAO3O,KAAK2H,QAAQyB,SAASpJ,KAAKmO,KAAKS,6BAA8BF,EAAQC,IAG/E,YAAA9B,qCAAA,SAAqCxM,GACnCL,KAAKoO,sBAAsB1P,MACzB,SAAAC,GACMA,EAASC,QACXyB,EAAWR,sBAAsBlB,EAASgG,aAG1CtE,EAAWV,aAAa,2CAMhC,YAAAkP,iDAAA,SAAiDN,EAAkBlO,GACjEL,KAAKsO,gCAAgCC,GAAU7P,MAC7C,SAAAC,GACMA,EAASC,QACXyB,EAAWR,sBAAsBlB,EAASgG,aAG1CtE,EAAWV,aAAa,2CAMhC,YAAAuG,oBAAA,SAAoB4F,GAClB,OAAO9L,KAAKS,cAAc2I,SAASpJ,KAAKmO,KAAKW,uBAAwBhD,IAEzE,EApDA,K","file":"createNewUser/createNewUser.d6dddcddd5efa5ccbba3.js","sourcesContent":["module.exports = _;","import * as React from \"react\";\r\nimport * as ReactDOM from 'react-dom';\r\nimport ReCAPTCHA from \"react-google-recaptcha\";\r\n\r\nimport { onLoad } from 'spry-react/utils/onLoad';\r\nimport { ErrorList } from \"spry-react/Errors/errorList\";\r\nimport { PhoneNumber, LabeledPhoneField } from \"spry-react/Phone/phoneField\";\r\nimport { ErrorDisplayListAutoScrolling } from \"spry-react/Errors/errorDisplayListAutoScrolling\";\r\nimport { LabeledTextField } from \"spry-react/Text/textField\";\r\nimport { Link } from \"spry-react/Link/link\";\r\nimport { RadioButtonField } from 'spry-react/RadioButton/radioButtonField';\r\nimport { ZipCodesApiClient } from 'spry-react/Address/zipCodesApiClient';\r\nimport { KeyedCode } from \"spry-react/utils/apiTypes\";\r\n\r\nimport PortalFullPage from 'Components/Shared/advocatePortalFullPage';\r\nimport { AdvocatePortalApp } from 'Components/Shared/advocatePortalApp';\r\nimport { IAppContext } from 'Components/Shared/appContext';\r\nimport { AccountsApiClient, CreateNewUserPageResponse, CreateNewUserRequest, ConfirmCreateCodeRequest, AccountSetupRequest, PortalUserType } from \"./accountsApiClient\";\r\nimport { PureGU1Field } from \"Components/Shared/pureG\";\r\nimport { ProduceState } from \"./forgotPassword\";\r\nimport { AdvocateAndAttorneyFields, AdvocateAndAttorneyData } from \"./advocateAndAttorneyFields\";\r\n\r\nimport \"./createNewUser.less\";\r\nimport { Layout } from \"Components/Shared/Layout/layout\";\r\nimport { FocusOnRender } from \"spry-react/Focus/focusOnRender\";\r\n\r\nexport interface Props {\r\n context: IAppContext;\r\n layout: Layout;\r\n accountsApiClient: AccountsApiClient;\r\n recaptchaPublicSiteKey: string;\r\n signInPageUrl: string;\r\n passwordPolicyRules: string[];\r\n zipCodesApiClient: ZipCodesApiClient;\r\n states: KeyedCode[];\r\n}\r\n\r\ninterface State {\r\n page: Page;\r\n createUserInfo: CreateUserInfo;\r\n confirmCodeInfo: ConfirmCodeInfo;\r\n setupAccountInfo: SetupAccountInfo;\r\n}\r\n\r\nenum Page {\r\n CreateUser,\r\n ConfirmCode,\r\n SetupAccount\r\n}\r\n\r\ninterface CreateUserInfo {\r\n email: string;\r\n firstName: string;\r\n middleName: string;\r\n lastName: string;\r\n phone: PhoneNumber;\r\n type: PortalUserType;\r\n\r\n attorneyAdvocateData: AdvocateAndAttorneyData;\r\n\r\n recaptchaResponse: string;\r\n errors: ErrorList;\r\n}\r\n\r\ninterface ConfirmCodeInfo {\r\n email: string;\r\n code: string;\r\n resendDidNotSend: boolean;\r\n errors: ErrorList;\r\n}\r\n\r\ninterface SetupAccountInfo {\r\n email: string;\r\n code: string;\r\n password: string;\r\n confirmPassword: string;\r\n errors: ErrorList;\r\n}\r\n\r\nexport class CreateNewUserPage extends React.Component {\r\n constructor(props: Props) {\r\n super(props);\r\n\r\n this.state = {\r\n page: Page.CreateUser,\r\n createUserInfo: {\r\n email: '',\r\n firstName: '',\r\n middleName: '',\r\n lastName: '',\r\n phone: { countryCode: '', areaCode: '', number: '', extension: '' },\r\n type: 'VictimClaimant',\r\n attorneyAdvocateData: {\r\n assistingOrganization: '',\r\n address: { street: '', zipCode: '', city: '', state: '', county: '', country: '' },\r\n firmName: '',\r\n fax: { countryCode: '', areaCode: '', number: '', extension: '' },\r\n taxId: ''\r\n },\r\n recaptchaResponse: '',\r\n errors: new ErrorList([])\r\n },\r\n confirmCodeInfo: {\r\n email: '',\r\n code: '',\r\n resendDidNotSend: false,\r\n errors: new ErrorList([])\r\n },\r\n setupAccountInfo: {\r\n email: '',\r\n code: '',\r\n password: '',\r\n confirmPassword: '',\r\n errors: new ErrorList([])\r\n }\r\n };\r\n }\r\n\r\n render() {\r\n const { context, layout } = this.props;\r\n const headerContent =

Crime Victims User Registration

;\r\n\r\n return <>\r\n \r\n
\r\n {this.getRenderFunction()}\r\n
\r\n \r\n ;\r\n }\r\n\r\n private getRenderFunction = () => {\r\n if (this.state.page === Page.CreateUser) {\r\n return this.renderCreateUserPage();\r\n }\r\n else if (this.state.page === Page.ConfirmCode) {\r\n return this.renderConfirmCodePage();\r\n }\r\n else if (this.state.page === Page.SetupAccount) {\r\n return this.renderSetupAccountPage();\r\n }\r\n else {\r\n throw \"Unknown page\";\r\n }\r\n }\r\n\r\n private renderCreateUserPage = () => {\r\n const { recaptchaPublicSiteKey, signInPageUrl, layout } = this.props;\r\n const userInfo = this.state.createUserInfo;\r\n const errors = userInfo.errors;\r\n return <>\r\n
\r\n \r\n \r\n

Your Information

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Victim\r\n of a violent crime or a \r\n Claimant\r\n (a claimant is someone who has incurred expenses on behalf of a victim of crime)\r\n }\r\n value=\"VictimClaimant\"\r\n checked={userInfo.type === \"VictimClaimant\"}\r\n disabled={false}\r\n onChange={this.onUserTypeChanged} />\r\n \r\n \r\n \r\n Advocate\r\n representative from a government agency, or other service, assisting a victim or claimant\r\n }\r\n value=\"Advocate\"\r\n checked={userInfo.type === \"Advocate\"}\r\n disabled={false}\r\n onChange={this.onUserTypeChanged} />\r\n \r\n \r\n \r\n Attorney\r\n representing a victim or claimant\r\n }\r\n value=\"Attorney\"\r\n checked={userInfo.type === \"Attorney\"}\r\n disabled={false}\r\n onChange={this.onUserTypeChanged} />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Already have an account?\r\n Log in\r\n \r\n
\r\n ;\r\n }\r\n\r\n private renderConfirmCodePage = () => {\r\n const confirmCodeInfo = this.state.confirmCodeInfo;\r\n const errors = confirmCodeInfo.errors;\r\n\r\n return <>\r\n
\r\n \r\n

Keep this window open while you check your email...

\r\n
\r\n

\r\n We sent a 6 character confirmation code to {confirmCodeInfo.email}. It will expire in 30 minutes,\r\n so enter it soon. Keep this window open while checking for your code.\r\n

\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n { confirmCodeInfo.resendDidNotSend &&\r\n
\r\n Your code could not be resent, try starting over.\r\n
\r\n }\r\n { !confirmCodeInfo.resendDidNotSend && <>\r\n
\r\n Didn't get the email? Make sure you check your spam folder,\r\n and if you still can't find it, click here to resend the email.\r\n
\r\n
\r\n Code expired or something not working? Start over.\r\n
\r\n \r\n }\r\n
\r\n
\r\n ;\r\n }\r\n\r\n private renderSetupAccountPage = () => {\r\n const { passwordPolicyRules } = this.props;\r\n const accountInfo = this.state.setupAccountInfo;\r\n const errors = accountInfo.errors;\r\n\r\n // Craig says:\r\n // Button text is dynamic. If user clicked \"Register and File Online\" from the public CVS page then it reads as shown above (longer version).\r\n // If user clicked \"login\" from the public CVS page and then clicked the register link because\r\n // they realized that they don't actually have an account, then the button will say \"COMPLETE REGISTRATION\".\r\n const userNavigatedHereFromPublicCVSPage = true;\r\n const submitButtonText = userNavigatedHereFromPublicCVSPage ? \"Complete Registration & Begin Claim Application\" : \"Complete Registration\";\r\n\r\n return <>\r\n
\r\n \r\n \r\n

Create your password

\r\n
\r\n

{passwordPolicyRules}

\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n ;\r\n }\r\n\r\n private produceState = ProduceState(this);\r\n\r\n private onAttorneyAdvocateDataChange = (data: AdvocateAndAttorneyData) => {\r\n this.produceState(state => { state.createUserInfo.attorneyAdvocateData = data; });\r\n }\r\n\r\n private onEmailChanged = (value: string) => {\r\n this.produceState(state => { state.createUserInfo.email = value; });\r\n }\r\n private onFirstNameChanged = (value: string) => {\r\n this.produceState(state => { state.createUserInfo.firstName = value; });\r\n }\r\n private onMiddleNameChanged = (value: string) => {\r\n this.produceState(state => { state.createUserInfo.middleName = value; });\r\n }\r\n private onLastNameChanged = (value: string) => {\r\n this.produceState(state => { state.createUserInfo.lastName = value; });\r\n }\r\n private onPhoneChanged = (phone: PhoneNumber) => {\r\n this.produceState(state => { state.createUserInfo.phone = phone; });\r\n }\r\n private onUserTypeChanged = (userType: PortalUserType) => {\r\n this.produceState(state => { state.createUserInfo.type = userType; });\r\n }\r\n private onRecaptchaChanged = (value: string) => {\r\n this.produceState(state => { state.createUserInfo.recaptchaResponse = value; });\r\n }\r\n private onPasswordChanged = (value: string) => {\r\n this.produceState(state => { state.setupAccountInfo.password = value; });\r\n }\r\n private onConfirmPasswordChanged = (value: string) => {\r\n this.produceState(state => { state.setupAccountInfo.confirmPassword = value; });\r\n }\r\n private onCreateNewUserClicked = () => {\r\n const userInfo = this.state.createUserInfo;\r\n\r\n const createNewUserRequest: CreateNewUserRequest = {\r\n email: userInfo.email,\r\n firstName: userInfo.firstName,\r\n middleName: userInfo.middleName,\r\n lastName: userInfo.lastName,\r\n phoneNumber: userInfo.phone,\r\n userType: userInfo.type,\r\n assistingOrganization: userInfo.attorneyAdvocateData.assistingOrganization,\r\n address: userInfo.attorneyAdvocateData.address,\r\n firmName: userInfo.attorneyAdvocateData.firmName,\r\n fax: userInfo.attorneyAdvocateData.fax,\r\n taxId: userInfo.attorneyAdvocateData.taxId,\r\n recaptchaResponse: userInfo.recaptchaResponse\r\n };\r\n\r\n this.props.accountsApiClient.createNewUser(createNewUserRequest).then(\r\n response => {\r\n if (response.success) {\r\n this.produceState(state => {\r\n state.page = Page.ConfirmCode,\r\n state.confirmCodeInfo = {\r\n email: response.email,\r\n code: '',\r\n resendDidNotSend: false,\r\n errors: new ErrorList([])\r\n };\r\n });\r\n }\r\n else {\r\n this.produceState(state => {\r\n state.createUserInfo.errors = new ErrorList(response.errors);\r\n });\r\n }\r\n }\r\n );\r\n }\r\n\r\n private onConfirmCodeChanged = (value: string) => {\r\n this.produceState(state => { state.confirmCodeInfo.code = value; });\r\n }\r\n\r\n private onStartOverClicked = () => {\r\n this.produceState(state => {\r\n state.page = Page.CreateUser;\r\n state.createUserInfo = {\r\n email: '',\r\n firstName: '',\r\n middleName: '',\r\n lastName: '',\r\n phone: { countryCode: '', areaCode: '', number: '', extension: '' },\r\n type: 'VictimClaimant',\r\n attorneyAdvocateData: {\r\n assistingOrganization: '',\r\n address: { street: '', zipCode: '', city: '', state: '', county: '', country: '' },\r\n firmName: '',\r\n fax: { countryCode: '', areaCode: '', number: '', extension: '' },\r\n taxId: ''\r\n },\r\n recaptchaResponse: '',\r\n errors: new ErrorList([])\r\n };\r\n state.confirmCodeInfo = {\r\n email: '',\r\n code: '',\r\n resendDidNotSend: false,\r\n errors: new ErrorList([])\r\n };\r\n });\r\n }\r\n\r\n private onConfirmCodeClicked = () => {\r\n const confirmCodeInfo = this.state.confirmCodeInfo;\r\n\r\n const confirmCodeRequest : ConfirmCreateCodeRequest = {\r\n email: confirmCodeInfo.email,\r\n code: confirmCodeInfo.code\r\n };\r\n\r\n this.props.accountsApiClient.confirmCreateCode(confirmCodeRequest).then(\r\n response => {\r\n if (response.success) {\r\n this.produceState(state => {\r\n state.page = Page.SetupAccount;\r\n state.setupAccountInfo = {\r\n email: state.confirmCodeInfo.email,\r\n code: state.confirmCodeInfo.code,\r\n password: '',\r\n confirmPassword: '',\r\n errors: new ErrorList([])\r\n };\r\n });\r\n }\r\n else {\r\n this.produceState(state => {\r\n state.confirmCodeInfo.errors = new ErrorList(response.errors);\r\n });\r\n }\r\n }\r\n );\r\n }\r\n\r\n private onResendEmailClicked = () => {\r\n this.props.accountsApiClient.resendCreateCode(this.state.confirmCodeInfo.email).then(\r\n response => {\r\n if (response.didSend) {\r\n this.props.context.flashMessage(\"Confirmation email resent\");\r\n }\r\n else {\r\n this.produceState(state => {\r\n state.confirmCodeInfo.resendDidNotSend = true;\r\n });\r\n }\r\n }\r\n );\r\n }\r\n\r\n private onSaveAccountClicked = () => {\r\n const setupAccountInfo = this.state.setupAccountInfo;\r\n const data : AccountSetupRequest = {\r\n email: setupAccountInfo.email,\r\n code: setupAccountInfo.code,\r\n password: setupAccountInfo.password,\r\n confirmPassword: setupAccountInfo.confirmPassword\r\n };\r\n this.props.accountsApiClient.accountSetup(data).then(\r\n response => {\r\n if (!response.success) {\r\n this.produceState(state => {\r\n state.setupAccountInfo.errors = new ErrorList(response.errors);\r\n });\r\n }\r\n else {\r\n this.props.context.setWindowLocationHref(response.accountCreatedRedirectUrl);\r\n }\r\n }\r\n );\r\n }\r\n}\r\n\r\nonLoad((data: CreateNewUserPageResponse) => {\r\n ReactDOM.render( {\r\n const accountsApiClient = new AccountsApiClient(data.accountsApiClientUrls, context.serialFetcher);\r\n return ;\r\n }} />, document.getElementById('root'));\r\n});","import * as React from \"react\";\r\nimport { LabeledTextField } from \"spry-react/Text/textField\";\r\nimport { PortalUserType, AddressSuggestionState } from \"./accountsApiClient\";\r\nimport { Address } from \"spry-react/Address/addressField\";\r\nimport { PhoneNumber, LabeledPhoneField } from \"spry-react/Phone/phoneField\";\r\nimport { ErrorList } from \"spry-react/Errors/errorList\";\r\nimport { ZipCodesApiClient } from \"spry-react/Address/zipCodesApiClient\";\r\nimport { KeyedCode } from \"spry-react/utils/apiTypes\";\r\nimport { LabeledSelectField, SelectFieldOption } from \"spry-react/Select/selectField\";\r\nimport { getAddressSuggestion } from 'spry-react/Address/addressSuggestion';\r\nimport { PureGU1Field, Field, PureG } from \"Components/Shared/pureG\";\r\n\r\nexport interface AdvocateAndAttorneyData {\r\n assistingOrganization: string; // adv only\r\n address: Address; // both adv/attorney\r\n firmName: string; // atty only\r\n fax: PhoneNumber; // atty only\r\n taxId: string; // atty only\r\n}\r\n\r\nexport interface Props {\r\n zipCodesApiClient: ZipCodesApiClient;\r\n states: KeyedCode[];\r\n userType: PortalUserType;\r\n data: AdvocateAndAttorneyData;\r\n onChange: (data: AdvocateAndAttorneyData) => void;\r\n errors: ErrorList;\r\n}\r\n\r\nexport interface State {\r\n addressSuggestionState: AddressSuggestionState | null;\r\n}\r\n\r\nexport class AdvocateAndAttorneyFields extends React.Component {\r\n private emptyAddressSuggestionState: AddressSuggestionState = {\r\n cities: [],\r\n states: [],\r\n lastDefaults: {\r\n lastDefaultedCity: '',\r\n lastDefaultedState: '',\r\n lastDefaultedCounty: '',\r\n lastDefaultedCountry: ''\r\n }\r\n };\r\n\r\n constructor(props: Props) {\r\n super(props);\r\n\r\n this.state = {\r\n addressSuggestionState: this.emptyAddressSuggestionState\r\n };\r\n }\r\n\r\n render() {\r\n const { userType, errors } = this.props;\r\n const { assistingOrganization, address, firmName, fax, taxId } = this.props.data;\r\n const { addressSuggestionState } = this.state;\r\n\r\n const cityOptions = addressSuggestionState\r\n ? addressSuggestionState.cities.map(c => { return { value: c, text: c }; })\r\n : [];\r\n const stateOptions = addressSuggestionState\r\n ? addressSuggestionState.states.map(s => { return { value: s.state, text: s.stateName }; })\r\n : [{ value: \"\", text: \"\" }].concat(this.props.states.map(s => { return { value: s.systemKey, text: s.name }; }));\r\n\r\n const addressFields = <>\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n ;\r\n\r\n return <>\r\n {userType === \"Advocate\" && <>\r\n \r\n \r\n \r\n {addressFields}\r\n }\r\n\r\n {userType === \"Attorney\" && <>\r\n \r\n \r\n \r\n {addressFields}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n }\r\n ;\r\n }\r\n\r\n private onAssistingOrganizationChanged = (value: string) => {\r\n this.props.onChange({ ...this.props.data, assistingOrganization: value });\r\n\r\n }\r\n private onAddressStreetChanged = (value: string) => {\r\n this.props.onChange({ ...this.props.data, address: { ...this.props.data.address, street: value } });\r\n }\r\n private onAddressZipChanged = (value: string) => {\r\n this.props.onChange({ ...this.props.data, address: { ...this.props.data.address, zipCode: value } });\r\n }\r\n\r\n private onZipCodeBlur = () => {\r\n this.autoFillAddressSuggestions(this.props.data.address.zipCode);\r\n }\r\n\r\n private autoFillAddressSuggestions(zipCode: string) {\r\n getAddressSuggestion(zipCode, (zipCode: string) => {\r\n return this.props.zipCodesApiClient.getAddressSuggestion(zipCode, () => {/* silently fail here */});\r\n },\r\n this.props.data.address,\r\n this.state.addressSuggestionState.lastDefaults)\r\n .then(suggestion => {\r\n const lastDefaults = this.state.addressSuggestionState.lastDefaults;\r\n\r\n this.setState(state => {\r\n return {\r\n addressSuggestionState: {\r\n cities: suggestion.cities,\r\n states: suggestion.states,\r\n lastDefaults: {\r\n lastDefaultedCity: suggestion.defaultCity ? suggestion.city : lastDefaults.lastDefaultedCity,\r\n lastDefaultedState: suggestion.defaultState ? suggestion.state : lastDefaults.lastDefaultedState,\r\n lastDefaultedCountry: '',\r\n lastDefaultedCounty: ''\r\n }\r\n }\r\n };\r\n }, () => {\r\n this.props.onChange({\r\n ...this.props.data, address: {\r\n ...this.props.data.address,\r\n city: suggestion.defaultCity ? suggestion.city : lastDefaults.lastDefaultedCity,\r\n state: suggestion.defaultState ? suggestion.state : lastDefaults.lastDefaultedState\r\n }\r\n });\r\n });\r\n });\r\n }\r\n\r\n private onAddressCityChanged = (selectedOption: SelectFieldOption) => {\r\n this.props.onChange({ ...this.props.data, address: { ...this.props.data.address, city: selectedOption.value } });\r\n }\r\n private onAddressStateChanged = (selectedOption: SelectFieldOption) => {\r\n this.props.onChange({ ...this.props.data, address: { ...this.props.data.address, state: selectedOption.value } });\r\n }\r\n private onFirmNameChanged = (value: string) => {\r\n this.props.onChange({ ...this.props.data, firmName: value });\r\n }\r\n private onFaxChanged = (faxNumber: PhoneNumber) => {\r\n this.props.onChange({ ...this.props.data, fax: faxNumber });\r\n }\r\n private onTaxIdChanged = (value: string) => {\r\n this.props.onChange({ ...this.props.data, taxId: value });\r\n }\r\n}","import * as React from \"react\";\r\nimport * as ReactDOM from 'react-dom';\r\nimport ReCAPTCHA from \"react-google-recaptcha\";\r\nimport produce, { Draft } from \"immer\";\r\n\r\nimport { onLoad } from 'spry-react/utils/onLoad';\r\nimport { LabeledTextField } from \"spry-react/Text/textField\";\r\nimport { Link } from \"spry-react/Link/link\";\r\nimport { ErrorList } from \"spry-react/Errors/errorList\";\r\nimport { ErrorDisplayListAutoScrolling } from \"spry-react/Errors/errorDisplayListAutoScrolling\";\r\n\r\nimport PortalFullPage from 'Components/Shared/advocatePortalFullPage';\r\nimport { AdvocatePortalApp } from 'Components/Shared/advocatePortalApp';\r\nimport { IAppContext } from 'Components/Shared/appContext';\r\nimport { ForgotPasswordPageResponse, AccountsApiClient, ForgotPasswordEmailRequest, ConfirmPasswordResetCodeRequest, ResendPasswordResetCodeRequest, ResetPasswordRequest } from \"./accountsApiClient\";\r\nimport { PureGU1Field, PureG, Field } from \"Components/Shared/pureG\";\r\n\r\nimport './forgotPassword.less';\r\nimport { Layout } from \"Components/Shared/Layout/layout\";\r\n\r\nexport interface Props {\r\n defaultEmail: string | null;\r\n context: IAppContext;\r\n layout: Layout;\r\n accountsApiClient: AccountsApiClient;\r\n recaptchaPublicSiteKey: string;\r\n signInPageUrl: string;\r\n passwordPolicyRules: string[];\r\n}\r\n\r\nexport interface State {\r\n page: Page;\r\n forgotPasswordInfo: ForgotPasswordInfo;\r\n confirmCodeInfo: ConfirmCodeInfo;\r\n resetPasswordInfo: ResetPasswordInfo;\r\n}\r\nenum Page {\r\n ForgotPassword,\r\n ConfirmCode,\r\n ChangePassword\r\n}\r\n\r\ninterface ForgotPasswordInfo {\r\n email: string;\r\n recaptchaResponse: string;\r\n userMatchNotFound: boolean;\r\n errors: ErrorList;\r\n}\r\n\r\ninterface ConfirmCodeInfo {\r\n email: string;\r\n portalUserId: number | null;\r\n code: string;\r\n resendDidNotSend: boolean;\r\n errors: ErrorList;\r\n}\r\n\r\ninterface ResetPasswordInfo {\r\n portalUserId: number | null;\r\n code: string;\r\n password: string;\r\n confirmPassword: string;\r\n errors: ErrorList;\r\n}\r\n\r\nexport class ForgotPasswordPage extends React.Component {\r\n constructor(props: Props) {\r\n super(props);\r\n\r\n this.state = {\r\n page: Page.ForgotPassword,\r\n forgotPasswordInfo: {\r\n email: this.props.defaultEmail != null ? this.props.defaultEmail : '',\r\n recaptchaResponse: '',\r\n userMatchNotFound: false,\r\n errors: new ErrorList([])\r\n },\r\n confirmCodeInfo: {\r\n email: '',\r\n portalUserId: null,\r\n code: '',\r\n resendDidNotSend: false,\r\n errors: new ErrorList([])\r\n },\r\n resetPasswordInfo: {\r\n portalUserId: null,\r\n code: '',\r\n password: '',\r\n confirmPassword: '',\r\n errors: new ErrorList([])\r\n }\r\n };\r\n }\r\n\r\n render() {\r\n if (this.state.page === Page.ForgotPassword) {\r\n return this.renderForgotPasswordPage();\r\n }\r\n else if (this.state.page === Page.ConfirmCode) {\r\n return this.renderConfirmCodePage();\r\n }\r\n else if (this.state.page === Page.ChangePassword) {\r\n return this.renderResetPasswordPage();\r\n }\r\n else {\r\n throw \"Uknown page\";\r\n }\r\n }\r\n\r\n private renderForgotPasswordPage = () => {\r\n const { context, layout, recaptchaPublicSiteKey } = this.props;\r\n const { forgotPasswordInfo } = this.state;\r\n const errors = forgotPasswordInfo.errors;\r\n\r\n const headerContent =

Forgot Password

;\r\n\r\n return \r\n
\r\n

\r\n Forgot your password? Enter your email below and after verifying your email we'll let you set a new password.\r\n

\r\n \r\n { forgotPasswordInfo.userMatchNotFound &&\r\n

The information you entered did not match any existing account.

\r\n }\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n ;\r\n }\r\n\r\n private renderConfirmCodePage = () => {\r\n const { context, layout } = this.props;\r\n const confirmCodeInfo = this.state.confirmCodeInfo;\r\n const errors = confirmCodeInfo.errors;\r\n\r\n const headerContent =

Confirm Email

;\r\n\r\n return \r\n\r\n
\r\n

Keep this browser window open and check your email!

\r\n

\r\n We sent a 6 character confirmation code to {confirmCodeInfo.email}. It will expire in 30 minutes,\r\n so enter it soon. Keep this window open while checking for your code.\r\n

\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n { confirmCodeInfo.resendDidNotSend &&\r\n
\r\n Your code could not be resent, try starting over.\r\n
\r\n }\r\n { !confirmCodeInfo.resendDidNotSend && <>\r\n
\r\n Didn't get the email? Make sure you check your spam folder,\r\n and if you still can't find it, click here to resend the email.\r\n
\r\n
\r\n Code expired, email wrong, or something not working? Start over.\r\n
\r\n \r\n }\r\n
\r\n
\r\n ;\r\n }\r\n\r\n private renderResetPasswordPage = () => {\r\n const { context, layout, passwordPolicyRules } = this.props;\r\n const resetPasswordInfo = this.state.resetPasswordInfo;\r\n const errors = resetPasswordInfo.errors;\r\n\r\n const headerContent =

Reset Password

;\r\n\r\n return \r\n\r\n
\r\n \r\n

{passwordPolicyRules}

\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n
\r\n ;\r\n }\r\n\r\n private produceState = ProduceState(this);\r\n\r\n private onEmailChanged = (email: string) => {\r\n this.produceState(state => { state.forgotPasswordInfo.email = email; });\r\n }\r\n\r\n private onRecaptchaChanged = (value: string) => {\r\n this.produceState(state => { state.forgotPasswordInfo.recaptchaResponse = value; });\r\n }\r\n\r\n private onForgotPasswordNextClicked = () => {\r\n const info = this.state.forgotPasswordInfo;\r\n const data : ForgotPasswordEmailRequest = {\r\n email: info.email,\r\n recaptchaResponse: info.recaptchaResponse\r\n };\r\n this.props.accountsApiClient.forgotPasswordEmail(data).then(\r\n response => {\r\n if (response.success) {\r\n if (response.userMatchWasFound) {\r\n this.produceState(state => {\r\n state.page = Page.ConfirmCode;\r\n state.confirmCodeInfo = {\r\n code: \"\",\r\n portalUserId: response.portalUserId,\r\n email: response.email,\r\n resendDidNotSend: false,\r\n errors: new ErrorList([])\r\n };\r\n });\r\n }\r\n else {\r\n this.produceState(state => {\r\n state.forgotPasswordInfo.userMatchNotFound = true;\r\n state.forgotPasswordInfo.errors = new ErrorList([]);\r\n });\r\n }\r\n }\r\n else {\r\n this.produceState(state => {\r\n state.forgotPasswordInfo.userMatchNotFound = false;\r\n state.forgotPasswordInfo.errors = new ErrorList(response.errors);\r\n });\r\n }\r\n }\r\n );\r\n }\r\n\r\n private onConfirmCodeChanged = (value: string) => {\r\n this.produceState(state => { state.confirmCodeInfo.code = value; });\r\n }\r\n\r\n private onStartOverClicked = () => {\r\n this.produceState(state => {\r\n state.page = Page.ForgotPassword;\r\n state.forgotPasswordInfo = {\r\n email: this.props.defaultEmail != null ? this.props.defaultEmail : '',\r\n recaptchaResponse: \"\",\r\n userMatchNotFound: false,\r\n errors: new ErrorList([])\r\n };\r\n state.confirmCodeInfo = {\r\n email: \"\",\r\n portalUserId: null,\r\n code: \"\",\r\n resendDidNotSend: false,\r\n errors: new ErrorList([])\r\n };\r\n });\r\n }\r\n\r\n private onConfirmCodeClicked = () => {\r\n const confirmCodeInfo = this.state.confirmCodeInfo;\r\n if (confirmCodeInfo.portalUserId === null) {\r\n throw \"portalUserId must be set before confirm code can be used\";\r\n }\r\n\r\n const confirmCodeRequest : ConfirmPasswordResetCodeRequest = {\r\n portalUserId: confirmCodeInfo.portalUserId,\r\n code: confirmCodeInfo.code\r\n };\r\n\r\n this.props.accountsApiClient.confirmPasswordResetCode(confirmCodeRequest).then(\r\n response => {\r\n if (response.success) {\r\n this.produceState(state => {\r\n state.page = Page.ChangePassword;\r\n state.resetPasswordInfo = {\r\n portalUserId: state.confirmCodeInfo.portalUserId,\r\n code: state.confirmCodeInfo.code,\r\n password: \"\",\r\n confirmPassword: \"\",\r\n errors: new ErrorList([])\r\n };\r\n });\r\n }\r\n else {\r\n this.produceState(state => {\r\n state.confirmCodeInfo.errors = new ErrorList(response.errors);\r\n });\r\n }\r\n }\r\n );\r\n }\r\n\r\n private onResendEmailClicked = () => {\r\n if (this.state.confirmCodeInfo.portalUserId === null) {\r\n throw \"portalUserId must be set before confirm code can be used\";\r\n }\r\n\r\n const data : ResendPasswordResetCodeRequest = {\r\n portalUserId: this.state.confirmCodeInfo.portalUserId\r\n };\r\n this.props.accountsApiClient.resendPasswordResetCode(data).then(\r\n response => {\r\n if (response.didSend) {\r\n this.props.context.flashMessage(\"Confirmation email resent\");\r\n }\r\n else {\r\n this.produceState(state => {\r\n state.confirmCodeInfo.resendDidNotSend = true;\r\n });\r\n }\r\n }\r\n );\r\n }\r\n\r\n private onPasswordChanged = (value: string) => {\r\n this.produceState(state => { state.resetPasswordInfo.password = value; });\r\n }\r\n\r\n private onConfirmPasswordChanged = (value: string) => {\r\n this.produceState(state => { state.resetPasswordInfo.confirmPassword = value; });\r\n }\r\n\r\n private onResetPasswordClicked = () => {\r\n const resetInfo = this.state.resetPasswordInfo;\r\n if (resetInfo.portalUserId === null) {\r\n throw \"portalUserId must be set before reset password can be used\";\r\n }\r\n\r\n const data: ResetPasswordRequest = {\r\n portalUserId: resetInfo.portalUserId,\r\n code: resetInfo.code,\r\n password: resetInfo.password,\r\n confirmPassword: resetInfo.confirmPassword\r\n };\r\n this.props.accountsApiClient.resetPassword(data).then(\r\n response => {\r\n if (!response.success) {\r\n this.produceState(state => {\r\n state.resetPasswordInfo.errors = new ErrorList(response.errors);\r\n });\r\n }\r\n else {\r\n this.props.context.setWindowLocationHref(response.redirectUrl);\r\n }\r\n }\r\n );\r\n }\r\n}\r\n\r\nonLoad((data: ForgotPasswordPageResponse) => {\r\nReactDOM.render( {\r\n const accountsApiClient = new AccountsApiClient(data.accountsApiClientUrls, context.serialFetcher);\r\n return ;\r\n}} />, document.getElementById('root'));\r\n});\r\n\r\n// TODO: extract (note - diff from lic - I had to add Draft<> to the type def below... we're on Immer 1.7.2, they're on 1.3.0)\r\ntype ProduceFunc = (state: Draft) => void;\r\n\r\nexport type ProduceStateFunc = (produceFunc: ProduceFunc) => Promise;\r\n\r\nexport function ProduceState(component: React.Component) : ProduceStateFunc {\r\n return (produceFunc: ProduceFunc) => {\r\n return new Promise(resolve => component.setState(produce(produceFunc), resolve));\r\n };\r\n}","import * as React from \"react\";\r\nimport { DashboardApiClient } from \"Components/Home/dashboardApiClient\";\r\nimport { Dialog } from \"spry-react/Dialog/dialog\";\r\nimport { ErrorDisplayListAutoScrolling } from \"spry-react/Errors/errorDisplayListAutoScrolling\";\r\nimport { LabeledMaskedTextField } from \"spry-react/Text/maskedTextField\";\r\nimport { useState } from \"react\";\r\nimport { ErrorList } from \"spry-react/Errors/errorList\";\r\nimport { LabeledTextField } from \"spry-react/Text/textField\";\r\nimport { Button } from \"spry-react/Buttons/button\";\r\nimport { IAppContext } from \"Components/Shared/appContext\";\r\nimport { LoggedInUser } from \"Components/Shared/Layout/authenticatedUserLayout\";\r\nimport { PureG, PureU, Field, PureGU1Field } from \"Components/Shared/pureG\";\r\nimport { setErrorsFromResponse } from \"Components/Shared/setErrorsFromResponse\";\r\nimport ReCAPTCHA from \"react-google-recaptcha\";\r\n\r\nexport function RequestClaimAccessDialog(props: {\r\n closeDialog: () => void;\r\n appContext: IAppContext;\r\n apiClient: DashboardApiClient;\r\n portalUser: LoggedInUser;\r\n claimNumberInputMask: string;\r\n recaptchaPublicSiteKey: string;\r\n}){\r\n const { closeDialog, portalUser, apiClient, appContext, claimNumberInputMask, recaptchaPublicSiteKey } = props;\r\n const [ claimNumber, setClaimNumber ] = useState(\"\");\r\n const [ victimName, setVictimName ] = useState(\"\")\r\n const [ representingClaimantName, setRepresentingClaimantName ] = useState(\"\");\r\n const [ recaptchaResponse, setRecaptchaResponse ] = useState(\"\");\r\n const [ errors, setErrors ] = useState(new ErrorList([]));\r\n\r\n return <>\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {\r\n portalUser.isVictimClaimant \r\n ? \r\n \r\n \r\n : <>\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n }\r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n}\r\n\r\nexport function RequestClaimAccessSection(props: { \r\n portalUser: LoggedInUser,\r\n apiClient: DashboardApiClient,\r\n appContext: IAppContext,\r\n claimNumberInputMask: string;\r\n recaptchaPublicSiteKey: string;\r\n}){\r\n const { portalUser, apiClient, appContext, claimNumberInputMask, recaptchaPublicSiteKey } = props;\r\n const [ isRequestSubmitted, setIsRequestSubmitted ] = useState(false);\r\n\r\n return <>\r\n
\r\n

Request access to claim

\r\n

\r\n {\r\n portalUser.isVictimClaimant \r\n ? \"If you previsouly mailed in your claim application and want to track its progress online, add supporting information or file a supplemental claim, enter the claim number and the name of the victim. Then click Request Access. An investigator will review your request and respond shortly.\"\r\n : \"If you previsouly mailed in your claim application and want to track its progress online, add supporting information or file a supplemental claim, enter the claim number, the name of the victim, and the name of the claimant you are representing. Then click Request Access. An investigator will review your request and respond shortly.\"\r\n }\r\n \r\n

\r\n
\r\n
\r\n {\r\n !isRequestSubmitted \r\n ? setIsRequestSubmitted(true)}\r\n />\r\n : setIsRequestSubmitted(false)} \r\n />\r\n }\r\n
\r\n \r\n}\r\n\r\nexport function AccessRequestSubmitted(props: {\r\n onRequestAccessToAnotherClaim: () => void\r\n}){\r\n return <>\r\n
\r\n

\r\n Your access request has been submitted.\r\n

\r\n \r\n
\r\n \r\n}\r\n\r\nexport function RequestClaimAccessForm(props: { \r\n portalUser: LoggedInUser,\r\n apiClient: DashboardApiClient,\r\n appContext: IAppContext,\r\n claimNumberInputMask: string;\r\n recaptchaPublicSiteKey: string;\r\n onRequestSubmitted: () => void;\r\n}){\r\n const { portalUser, apiClient, appContext, claimNumberInputMask, onRequestSubmitted, recaptchaPublicSiteKey } = props;\r\n const [ claimNumber, setClaimNumber ] = useState(\"\");\r\n const [ victimName, setVictimName ] = useState(\"\")\r\n const [ representingClaimantName, setRepresentingClaimantName ] = useState(\"\");\r\n const [ recaptchaResponse, setRecaptchaResponse ] = useState(\"\");\r\n const [ errors, setErrors ] = useState(new ErrorList([]));\r\n\r\n return <>\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {\r\n portalUser.isVictimClaimant \r\n ? \r\n \r\n \r\n : <>\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n }\r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n}\r\n","module.exports = React;","import * as React from \"react\";\r\n\r\ninterface Props {\r\n}\r\n\r\ninterface State {\r\n error: any;\r\n errorInfo: any;\r\n}\r\n\r\nexport class ErrorBoundary extends React.Component {\r\n constructor(props: Props) {\r\n super(props);\r\n this.state = {\r\n error: null,\r\n errorInfo: null\r\n };\r\n }\r\n\r\n render() {\r\n if (this.state.errorInfo) {\r\n return <>\r\n

An unexpected error has occurred

\r\n The details of the error have been logged. Try refreshing the page and trying the operation again. If the problem persists please contact technical support.\r\n ;\r\n }\r\n\r\n return this.props.children;\r\n }\r\n\r\n componentDidCatch?(error: Error, errorInfo: React.ErrorInfo): void {\r\n this.setState({ error, errorInfo });\r\n\r\n /* todo: log error to server */\r\n }\r\n}","import * as React from \"react\";\r\nimport { SimpleDialog } from \"spry-react/Dialog/dialog\";\r\n\r\nexport function Render401ErrorDialog(close: () => void) {\r\nreturn (\r\n \r\n

Your session has expired. Please refresh the page and login.

\r\n
\r\n );\r\n}","import * as React from \"react\";\r\nimport { App } from \"spry-react/App/app\";\r\nimport { ErrorBoundary } from \"./errorBoundary\";\r\nimport { IAppContext } from \"./appContext\";\r\nimport { RenderNetworkErrorDialog } from \"spry-react/Errors/networkErrorDialog\";\r\nimport { Render500ErrorDialog } from \"spry-react/Errors/500ErrorDialog\";\r\nimport { Render404ErrorDialog } from \"spry-react/Errors/404ErrorDialog\";\r\nimport { Render403ErrorDialog } from \"spry-react/Errors/403ErrorDialog\";\r\nimport { Render401ErrorDialog } from \"./401ErrorDialog\";\r\nimport { FetchWithStandardErrorHandling } from \"spry-react/utils/fetchWithStandardErrorHandling\";\r\nimport { FetchWithSerialOperationHandling } from 'spry-react/utils/fetchWithSerialOperationHandling';\r\n\r\nimport \"./site.less\";\r\nimport { CrossSiteRequestForgeryTokenInfo } from \"spry-react/utils/fetchExtensions\";\r\n\r\nexport interface Props {\r\n renderChildren: (appContext: IAppContext) => React.ReactElement | React.ReactElement[] | React.ReactPortal | string | number | null | false;\r\n csrfInfo: CrossSiteRequestForgeryTokenInfo;\r\n}\r\n\r\nexport function AdvocatePortalApp(props: Props){\r\n return (\r\n \r\n {\r\n const openNetworkErrorDialog = () => { openDialog(RenderNetworkErrorDialog); };\r\n const open500ErrorDialog = () => { openDialog(Render500ErrorDialog); };\r\n const open404ErrorDialog = () => { openDialog(Render404ErrorDialog); };\r\n const open401ErrorDialog = () => { openDialog(Render401ErrorDialog); };\r\n const open403ErrorDialog = () => { openDialog(Render403ErrorDialog); };\r\n const fetcher = new FetchWithStandardErrorHandling({\r\n handleNetworkError: openNetworkErrorDialog,\r\n handle500Error: open500ErrorDialog,\r\n handle404Error: open404ErrorDialog,\r\n handle401Error: open401ErrorDialog,\r\n handle403Error: open403ErrorDialog,\r\n getCsrfInfo: () => props.csrfInfo\r\n });\r\n const serialFetcher = new FetchWithSerialOperationHandling(startSerialOperation, fetcher);\r\n\r\n const context: IAppContext = {\r\n registerContextMenu,\r\n fetcher,\r\n serialFetcher,\r\n openDialog,\r\n confirm,\r\n flashMessage,\r\n registerBeforeUnload,\r\n setWindowLocationHref\r\n };\r\n\r\n return props.renderChildren(context);\r\n }} />\r\n \r\n );\r\n}","module.exports = ReactDOM;","import { IFetcher } from \"spry-react/utils/IFetcher\";\r\nimport { PhoneNumber } from \"spry-react/Phone/phoneField\";\r\nimport { SimpleCode, KeyedCode } from \"spry-react/utils/apiTypes\";\r\nimport { ApiEditResponse } from \"shared/DTOs/ApiEditResponse\";\r\nimport { ApiValidationResponse } from \"shared/DTOs/ApiValidationResponse\";\r\nimport { Address } from \"spry-react/Address/addressField\";\r\nimport { SuggestionState } from \"spry-react/Address/addressSuggestion\";\r\nimport { FetchWithSerialOperationHandling } from \"spry-react/utils/fetchWithSerialOperationHandling\";\r\nimport { Layout } from \"Components/Shared/Layout/layout\";\r\n\r\nexport interface AccountsApiClientUrls {\r\n signInUrl: string;\r\n signOutUrl: string;\r\n createNewUserUrl: string;\r\n confirmCreateCodeUrl: string;\r\n resendCreateCodeUrl: string;\r\n accountSetupUrl: string;\r\n getChangePasswordInfoUrl: string;\r\n changePasswordUrl: string;\r\n forgotPasswordEmailUrl: string;\r\n confirmPasswordResetCodeUrl: string;\r\n resendPasswordResetCodeUrl: string;\r\n resetPasswordUrl: string;\r\n getEditUserAccountInfoUrl: string;\r\n editUserAccountInfoUrl: string;\r\n}\r\n\r\nexport interface SignInRequest {\r\n email: string;\r\n password: string;\r\n returnUrl: string;\r\n recaptchaResponse: string;\r\n}\r\n\r\nexport interface SignInResponse extends ApiEditResponse {\r\n requiresCaptcha: boolean;\r\n redirectUrl: string;\r\n}\r\n\r\nexport interface SignInPageResponse {\r\n accountsApiClientUrls: AccountsApiClientUrls;\r\n createNewUserPageUrl: string;\r\n forgotPasswordPageUrl: string;\r\n forgotUsernamePageUrl: string;\r\n recaptchaPublicSiteKey: string;\r\n returnUrl: string;\r\n layout: Layout;\r\n}\r\n\r\nexport interface SignOutResponse {\r\n siteRootUrl: string;\r\n}\r\n\r\nexport interface CreateNewUserPageResponse {\r\n accountsApiClientUrls: AccountsApiClientUrls;\r\n signInPageUrl: string;\r\n addressSuggestionUrl: string;\r\n states: KeyedCode[];\r\n recaptchaPublicSiteKey: string;\r\n passwordPolicyRules: string[];\r\n layout: Layout;\r\n}\r\n\r\nexport interface CreateNewUserRequest {\r\n firstName: string;\r\n middleName: string;\r\n lastName: string;\r\n email: string;\r\n phoneNumber: PhoneNumber;\r\n recaptchaResponse: string;\r\n userType: PortalUserType;\r\n assistingOrganization: string; // adv only\r\n address: Address; // both adv/attorney\r\n firmName: string; // atty only\r\n fax: PhoneNumber; // atty only\r\n taxId: string; // atty only\r\n}\r\n\r\nexport interface AddressSuggestionState {\r\n cities: string[];\r\n states: { state: string; stateName: string; }[];\r\n lastDefaults: SuggestionState;\r\n}\r\n\r\nexport type PortalUserType = 'VictimClaimant' | 'Advocate' | 'Attorney';\r\n\r\nexport interface CreateNewUserResponse extends ApiEditResponse {\r\n email: string;\r\n expiresOn: string;\r\n}\r\n\r\nexport interface ConfirmCreateCodeRequest {\r\n email: string;\r\n code: string;\r\n}\r\n\r\nexport interface ResendCreateCodeResponse {\r\n didSend: boolean;\r\n}\r\n\r\nexport interface AccountSetupRequest {\r\n email: string;\r\n code: string;\r\n password: string;\r\n confirmPassword: string;\r\n}\r\n\r\nexport interface AccountSetupResponse extends ApiValidationResponse {\r\n accountCreatedRedirectUrl: string;\r\n}\r\n\r\nexport interface GetChangePasswordInfoResponse {\r\n passwordPolicyRules: string[];\r\n}\r\n\r\nexport interface ChangePasswordRequest {\r\n currentPassword: string;\r\n newPassword: string;\r\n confirmNewPassword: string;\r\n}\r\n\r\nexport interface ForgotPasswordEmailRequest {\r\n email: string;\r\n recaptchaResponse: string;\r\n}\r\n\r\nexport interface ForgotPasswordPageResponse {\r\n defaultEmail: string | null;\r\n accountsApiClientUrls: AccountsApiClientUrls;\r\n signInPageUrl: string;\r\n recaptchaPublicSiteKey: string;\r\n passwordPolicyRules: string[];\r\n layout: Layout;\r\n}\r\n\r\nexport interface ForgotPasswordEmailResponse extends ApiValidationResponse {\r\n userMatchWasFound: boolean;\r\n portalUserId: number | null;\r\n email: string;\r\n expiresOn: string;\r\n}\r\n\r\nexport interface ConfirmPasswordResetCodeRequest {\r\n portalUserId: number;\r\n code: string;\r\n}\r\n\r\nexport interface ResendPasswordResetCodeRequest {\r\n portalUserId: number;\r\n}\r\n\r\nexport interface ResendPasswordResetCodeResponse {\r\n didSend: boolean;\r\n}\r\n\r\nexport interface ResetPasswordRequest {\r\n portalUserId: number;\r\n code: string;\r\n password: string;\r\n confirmPassword: string;\r\n}\r\n\r\nexport interface ResetPasswordResponse extends ApiValidationResponse {\r\n redirectUrl: string;\r\n}\r\n\r\nexport interface GetUpdateProfileResponse {\r\n firstName: string;\r\n middleName: string;\r\n lastName: string;\r\n email: string;\r\n phone: PhoneNumber;\r\n userType: PortalUserType;\r\n assistingOrganization: string;\r\n address: Address;\r\n firmName: string;\r\n fax: PhoneNumber;\r\n taxId: string;\r\n receivePortalTaskNotificationDigest: boolean;\r\n namePrefixes: SimpleCode[];\r\n nameSuffixes: SimpleCode[];\r\n states: KeyedCode[];\r\n addressSuggestionUrl: string;\r\n}\r\n\r\nexport interface UpdateProfileRequest {\r\n firstName: string;\r\n middleName: string;\r\n lastName: string;\r\n email: string;\r\n phone: PhoneNumber;\r\n userType: PortalUserType;\r\n assistingOrganization: string;\r\n address: Address;\r\n firmName: string;\r\n fax: PhoneNumber;\r\n taxId: string;\r\n receivePortalTaskNotificationDigest: boolean;\r\n}\r\n\r\nexport class AccountsApiClient {\r\n private readonly signInUrl: string;\r\n private readonly signOutUrl: string;\r\n private readonly createNewUserUrl: string;\r\n private readonly confirmCreateCodeUrl: string;\r\n private readonly resendCreateCodeUrl: string;\r\n private readonly accountSetupUrl: string;\r\n private readonly getChangePasswordInfoUrl: string;\r\n private readonly changePasswordUrl: string;\r\n private readonly forgotPasswordEmailUrl: string;\r\n private readonly confirmPasswordResetCodeUrl: string;\r\n private readonly resendPasswordResetCodeUrl: string;\r\n private readonly resetPasswordUrl: string;\r\n private readonly getUpdateProfileUrl: string;\r\n private readonly updateProfileUrl: string;\r\n\r\n private readonly fetcher: FetchWithSerialOperationHandling;\r\n\r\n constructor(accountsApiClientUrls: AccountsApiClientUrls, fetcher: FetchWithSerialOperationHandling) {\r\n this.signInUrl = accountsApiClientUrls.signInUrl;\r\n this.signOutUrl = accountsApiClientUrls.signOutUrl;\r\n this.createNewUserUrl = accountsApiClientUrls.createNewUserUrl;\r\n this.confirmCreateCodeUrl = accountsApiClientUrls.confirmCreateCodeUrl;\r\n this.resendCreateCodeUrl = accountsApiClientUrls.resendCreateCodeUrl;\r\n this.accountSetupUrl = accountsApiClientUrls.accountSetupUrl;\r\n this.getChangePasswordInfoUrl = accountsApiClientUrls.getChangePasswordInfoUrl;\r\n this.changePasswordUrl = accountsApiClientUrls.changePasswordUrl;\r\n this.forgotPasswordEmailUrl = accountsApiClientUrls.forgotPasswordEmailUrl;\r\n this.confirmPasswordResetCodeUrl = accountsApiClientUrls.confirmPasswordResetCodeUrl;\r\n this.resendPasswordResetCodeUrl = accountsApiClientUrls.resendPasswordResetCodeUrl;\r\n this.resetPasswordUrl = accountsApiClientUrls.resetPasswordUrl;\r\n this.getUpdateProfileUrl = accountsApiClientUrls.getEditUserAccountInfoUrl;\r\n this.updateProfileUrl = accountsApiClientUrls.editUserAccountInfoUrl;\r\n\r\n this.fetcher = fetcher;\r\n }\r\n\r\n public signIn(data: SignInRequest): Promise {\r\n return this.fetcher.postJson(this.signInUrl, data);\r\n }\r\n\r\n public signOut(): Promise {\r\n return this.fetcher.postJson(this.signOutUrl, null);\r\n }\r\n\r\n public createNewUser(data: CreateNewUserRequest) : Promise {\r\n return this.fetcher.postJson(this.createNewUserUrl, data);\r\n }\r\n\r\n public confirmCreateCode(data: ConfirmCreateCodeRequest) : Promise {\r\n return this.fetcher.postJson(this.confirmCreateCodeUrl, data);\r\n }\r\n\r\n public resendCreateCode(email: string) : Promise {\r\n return this.fetcher.postJson(this.resendCreateCodeUrl, { email });\r\n }\r\n\r\n public accountSetup(data: AccountSetupRequest) : Promise {\r\n return this.fetcher.postJson(this.accountSetupUrl, data);\r\n }\r\n\r\n public getChangePasswordInfo() : Promise {\r\n return this.fetcher.getJson(this.getChangePasswordInfoUrl, undefined);\r\n }\r\n\r\n public changePassword(data: ChangePasswordRequest) : Promise {\r\n return this.fetcher.postJson(this.changePasswordUrl, data);\r\n }\r\n\r\n public forgotPasswordEmail(data: ForgotPasswordEmailRequest) : Promise {\r\n return this.fetcher.postJson(this.forgotPasswordEmailUrl, data);\r\n }\r\n\r\n public confirmPasswordResetCode(data: ConfirmPasswordResetCodeRequest) : Promise {\r\n return this.fetcher.postJson(this.confirmPasswordResetCodeUrl, data);\r\n }\r\n\r\n public resendPasswordResetCode(data: ResendPasswordResetCodeRequest) : Promise {\r\n return this.fetcher.postJson(this.resendPasswordResetCodeUrl, data);\r\n }\r\n\r\n public resetPassword(data: ResetPasswordRequest) : Promise {\r\n return this.fetcher.postJson(this.resetPasswordUrl, data);\r\n }\r\n\r\n public getUpdateProfile(): Promise {\r\n return this.fetcher.getJson(this.getUpdateProfileUrl);\r\n }\r\n\r\n public updateProfile(data: UpdateProfileRequest): Promise {\r\n return this.fetcher.postJson(this.updateProfileUrl, data);\r\n }\r\n}","import * as React from \"react\";\r\nimport * as classNames from \"classnames\";\r\nimport { produce } from \"immer\";\r\n\r\nexport type PureSize =\r\n'1'\r\n| '1-1'\r\n| '1-5'\r\n| '2-5'\r\n| '3-5'\r\n| '4-5'\r\n| '5-5'\r\n| '1-24'\r\n| '1-12'\r\n| '2-24'\r\n| '3-24'\r\n| '1-8'\r\n| '4-24'\r\n| '1-6'\r\n| '5-24'\r\n| '1-4'\r\n| '6-24'\r\n| '7-24'\r\n| '1-3'\r\n| '8-24'\r\n| '3-8'\r\n| '9-24'\r\n| '5-12'\r\n| '10-24'\r\n| '11-24'\r\n| '1-2'\r\n| '12-24'\r\n| '13-24'\r\n| '7-12'\r\n| '14-24'\r\n| '5-8'\r\n| '15-24'\r\n| '2-3'\r\n| '16-24'\r\n| '17-24'\r\n| '3-4'\r\n| '18-24'\r\n| '19-24'\r\n| '5-6'\r\n| '20-24'\r\n| '7-8'\r\n| '21-24'\r\n| '11-12'\r\n| '22-24'\r\n| '23-24'\r\n| '24-24';\r\n\r\nexport class PureG extends React.Component<{className?: string}, {}> {\r\n render() {\r\n return
\r\n {this.props.children}\r\n
;\r\n }\r\n}\r\n\r\nexport interface PureUProps {\r\n size?: PureSize;\r\n offset?: PureSize;\r\n alignRight?: boolean;\r\n className?: string;\r\n title?: string;\r\n}\r\n\r\nexport class PureU extends React.Component {\r\n render() {\r\n const { size, children, alignRight, offset } = this.props;\r\n const sizeClass = size ? `pure-u-${size}` : 'pure-u-1';\r\n const offsetClass = offset ? `pure-offset-${offset}` : undefined;\r\n return
\r\n {children}\r\n
;\r\n }\r\n}\r\n\r\nexport interface FieldProps extends PureUProps {\r\n inline?: boolean;\r\n style?: React.CSSProperties;\r\n}\r\n\r\nexport class Field extends React.Component {\r\n render() {\r\n const { inline, size, children, style, alignRight, offset, className, title } = this.props;\r\n const sizeClass = size ? `pure-u-${size}` : 'pure-u-1';\r\n const offsetClass = offset ? `pure-offset-${offset}` : undefined;\r\n const inlineClass = inline ? 'field-inline' : '';\r\n const classes = classNames('field', 'field-h', sizeClass, offsetClass, inlineClass, { 'align-right': alignRight }, className);\r\n\r\n let styles = style;\r\n if (inline) {\r\n styles = style ? produce(style, style => { style.paddingBottom = '1rem'; }) : { paddingBottom: '1rem' };\r\n }\r\n\r\n return
\r\n {children}\r\n
;\r\n }\r\n}\r\n\r\nexport class PureGU1Field extends React.Component<{}, {}> {\r\n render() {\r\n return
\r\n
\r\n {this.props.children}\r\n
\r\n
;\r\n }\r\n}\r\n\r\n\r\nexport class PureGU1 extends React.Component<{}, {}> {\r\n render() {\r\n return
\r\n
\r\n {this.props.children}\r\n
\r\n
;\r\n }\r\n}","import { ErrorList } from \"spry-react/Errors/errorList\";\r\nimport { ApiEditResponse } from \"shared/DTOs/ApiEditResponse\";\r\n\r\nexport function setErrorsFromResponse(setErrors: (errorList: ErrorList) => void, response: ApiEditResponse): boolean {\r\n if(!response.errors?.length){\r\n setErrors(new ErrorList([]));\r\n return false;\r\n }\r\n \r\n setErrors(new ErrorList(response.errors));\r\n return true;\r\n}","import * as React from \"react\";\r\nimport { SiteHeader } from \"spry-react/Page/siteHeader\";\r\nimport { SiteNavigation } from \"spry-react/Page/siteNavigation\";\r\nimport { Link } from \"spry-react/Link/link\";\r\n\r\nimport './portalFullHeader.less';\r\n\r\nexport interface Props {\r\n homeUrl: string;\r\n homeLinkText: string;\r\n logoImageUrl: string;\r\n bordered?: boolean;\r\n navContent?: React.ReactNode;\r\n children?: React.ReactNode;\r\n}\r\n\r\nexport class PortalFullHeader extends React.Component {\r\n render() {\r\n const props = this.props;\r\n return
\r\n
\r\n
\r\n \r\n {props.homeLinkText}\r\n \r\n
\r\n
\r\n
\r\n } navContent={this.props.navContent} />\r\n
\r\n
\r\n
\r\n {props.children}\r\n
;\r\n }\r\n}","import * as React from \"react\";\r\nimport { Dialog } from \"spry-react/Dialog/dialog\";\r\nimport { PureGU1Field } from \"./pureG\";\r\nimport { Button } from \"spry-react/Buttons/button\";\r\n\r\nexport interface Props {\r\n officeTollFreePhoneNumber: string;\r\n organizationPhoneNumber: string;\r\n closeDialog: () => void;\r\n}\r\n\r\nexport class HelpDialog extends React.Component {\r\n render() {\r\n return (\r\n \r\n \r\n

Why should I apply?

\r\n If you were the victim of a violent crime and you have related expenses, we may be able to help.\r\n We pay for a wide range of expenses such as medical or counseling bills, work loss, and funeral expenses.\r\n We generally can't pay for property expenses.\r\n
\r\n \r\n

If you have previously applied:

\r\n If you have previously applied for compensation and are filing for additional compensation as a result of the same incident, please provide your claim number on the first page.\r\n
\r\n \r\n

What will I need?

\r\n
    \r\n
  1. \r\n Want help applying? \r\n If you want help with this form you should contact us, a local victim advocate, or an attorney (If you decide to have an attorney assist you with filing an application, that attorney cannot charge you. The attorney must send their bill to Crime Victim Services for consideration.).\r\n The more information you provide, the faster we can process your claim.\r\n
  2. \r\n
  3. \r\n Information about you. You will need personal information for the victim (such as name, Social Security Number, date of birth, and address). \r\n If you're not the victim, you're a \"claimant,\" and you'll need to provide information for both you and the victim.\r\n
  4. \r\n
  5. \r\n Information about the crime. You should also try to gather information about the crime (date it occurred, law enforcement agency you reported to, criminal offense that was committed).\r\n
  6. \r\n
  7. \r\n Expenses. You'll want to get as much information about your expenses as possible. By law, we need to verify any claim you file, so we'll probably be requesting additional documentation from you.\r\n
  8. \r\n
\r\n
\r\n \r\n

When should I apply?

\r\n You can apply whenever you want, so apply when you feel comfortable and ready to begin the process. If you don't have all the information in these forms, you can still apply and we can help you work through the process.\r\n If you have expenses later (such as unexpected medical complications), you can apply again anytime within 6 years of the last time we granted or denied any of your applications.\r\n
\r\n \r\n

Do I need to complete this whole form?

\r\n No.\r\n
\r\n \r\n

Can I fill out one application for multiple victims?

\r\n No. You must file a seperate claim for each victim.\r\n
\r\n \r\n

Emergency Award:

\r\n After an application has been filed, if a final award is likely, the law may provide for payment of an emergency award of up to $2,000 to qualified victims/claimants who, because of the crime, will suffer undue hardship without immediate economic relief.\r\n
\r\n \r\n

Need help? Call {this.props.organizationPhoneNumber} or {this.props.officeTollFreePhoneNumber}

\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n );\r\n }\r\n\r\n}","import * as React from 'react';\r\nimport { Dialog } from 'spry-react/Dialog/dialog';\r\nimport { ErrorList } from 'spry-react/Errors/errorList';\r\nimport { TabList } from 'spry-react/Tabs/tabList';\r\nimport { LabeledTextField } from 'spry-react/Text/textField';\r\nimport { ErrorDisplayListAutoScrolling } from 'spry-react/Errors/errorDisplayListAutoScrolling';\r\nimport { FlashMessageCallback } from 'spry-react/App/app';\r\nimport { AccountsApiClient } from './accountsApiClient';\r\nimport { PureGU1Field } from 'Components/Shared/pureG';\r\n\r\ninterface Props {\r\n passwordPolicyRules: string[];\r\n closeDialog: () => void;\r\n accountsApiClient: AccountsApiClient;\r\n flashMessageCallback: FlashMessageCallback;\r\n}\r\n\r\ninterface State {\r\n currentPassword: string;\r\n newPassword: string;\r\n confirmNewPassword: string;\r\n errors: ErrorList;\r\n}\r\n\r\nexport class ChangePasswordDialog extends React.Component {\r\n constructor(props: Props) {\r\n super(props);\r\n\r\n this.state = {\r\n currentPassword: \"\",\r\n newPassword: \"\",\r\n confirmNewPassword: \"\",\r\n errors: new ErrorList([])\r\n };\r\n }\r\n\r\n render() {\r\n const state = this.state;\r\n const { passwordPolicyRules } = this.props;\r\n const errors = state.errors;\r\n\r\n const tabKey = \"changePassword\";\r\n const tabs = [\r\n {\r\n key: tabKey,\r\n text: \"Change Password\"\r\n }\r\n ];\r\n\r\n return \r\n { }} />\r\n \r\n \r\n \r\n \r\n

{passwordPolicyRules}

\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
;\r\n }\r\n\r\n private onCurrentPasswordChanged = (currentPassword: string) => {\r\n this.setState({currentPassword});\r\n }\r\n\r\n private onNewPasswordChanged = (newPassword: string) => {\r\n this.setState({newPassword});\r\n }\r\n\r\n private onConfirmNewPasswordChanged = (confirmNewPassword: string) => {\r\n this.setState({confirmNewPassword});\r\n }\r\n\r\n private onChangePasswordClicked = () => {\r\n this.props.accountsApiClient.changePassword({\r\n currentPassword: this.state.currentPassword,\r\n newPassword: this.state.newPassword,\r\n confirmNewPassword: this.state.confirmNewPassword\r\n }).then(\r\n response => {\r\n if (response.success) {\r\n this.props.closeDialog();\r\n this.props.flashMessageCallback(\"Password changed.\");\r\n }\r\n else {\r\n this.setState({\r\n errors: new ErrorList(response.errors)\r\n });\r\n }\r\n }\r\n );\r\n }\r\n}","import * as React from 'react';\r\n\r\nimport { PhoneNumber, LabeledPhoneField } from 'spry-react/Phone/phoneField';\r\nimport { Dialog } from 'spry-react/Dialog/dialog';\r\nimport { ErrorDisplayListAutoScrolling } from 'spry-react/Errors/errorDisplayListAutoScrolling';\r\nimport { ErrorList } from 'spry-react/Errors/errorList';\r\nimport { toSelectFieldOptions } from 'spry-react/utils/ListUtils';\r\nimport { LabeledTextField } from 'spry-react/Text/textField';\r\nimport { Link } from 'spry-react/Link/link';\r\nimport { NamedCode, KeyedCode } from 'spry-react/utils/apiTypes';\r\nimport { Address } from 'spry-react/Address/addressField';\r\nimport { ZipCodesApiClient } from 'spry-react/Address/zipCodesApiClient';\r\n\r\nimport { PureGU1Field, PureG, Field } from 'Components/Shared/pureG';\r\nimport { AccountsApiClient, PortalUserType, UpdateProfileRequest } from './accountsApiClient';\r\nimport { ChangePasswordDialog } from './changePasswordDialog';\r\nimport { AdvocateAndAttorneyFields, AdvocateAndAttorneyData } from './advocateAndAttorneyFields';\r\nimport { IAppContext } from \"Components/Shared/appContext\";\r\nimport { YesNoField } from 'spry-react/YesNo/yesNoField';\r\nimport { FieldLabel } from 'spry-react/Label/fieldLabel';\r\n\r\ninterface Props {\r\n context: IAppContext;\r\n accountsApiClient: AccountsApiClient;\r\n closeDialog: () => void;\r\n initialData: Data;\r\n zipCodesApiClient: ZipCodesApiClient;\r\n states: KeyedCode[];\r\n}\r\n\r\ninterface State {\r\n data: Data;\r\n errors: ErrorList;\r\n}\r\n\r\ninterface Data {\r\n firstName: string;\r\n middleName: string;\r\n lastName: string;\r\n email: string;\r\n phone: PhoneNumber;\r\n userType: PortalUserType;\r\n assistingOrganization: string;\r\n address: Address;\r\n firmName: string;\r\n fax: PhoneNumber;\r\n receivePortalTaskNotificationDigest: boolean;\r\n taxId: string;\r\n}\r\n\r\nexport class UpdateProfileDialog extends React.Component {\r\n constructor(props: Props) {\r\n super(props);\r\n\r\n this.state = {\r\n data: props.initialData,\r\n errors: new ErrorList([])\r\n };\r\n }\r\n\r\n render() {\r\n const data = this.state.data;\r\n const errors = this.state.errors;\r\n\r\n return \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Receive Portal Task Notification Digest\r\n \r\n \r\n }\r\n for=\"receivePortalTaskNotificationDigest\" \r\n />\r\n { this.updateData(d => { return {...d, receivePortalTaskNotificationDigest: !d.receivePortalTaskNotificationDigest }}) }} />\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n You can also change your password.\r\n
\r\n
;\r\n }\r\n\r\n private updateData = (producer: (data : Data) => Data ) => {\r\n return this.setState(state => {\r\n return { data: producer(state.data) };\r\n });\r\n }\r\n\r\n private onFirstNameChanged = (firstName: string) => this.updateData((data) => { return { ...data, firstName: firstName }; });\r\n private onMiddleNameChanged = (middleName: string) => this.updateData((data) => { return { ...data, middleName: middleName }; });\r\n private onLastNameChanged = (lastName: string) => this.updateData((data) => { return { ...data, lastName: lastName }; });\r\n private onEmailChanged = (value: string) => this.updateData((data) => { return { ...data, email: value }; });\r\n private onPhoneChanged = (phone: PhoneNumber) => this.updateData((data) => { return { ...data, phone: phone }; });\r\n\r\n private onAttorneyAdvocateDataChanged = (data: AdvocateAndAttorneyData) => {\r\n this.updateData(state => {\r\n return {\r\n ...state,\r\n assistingOrganization: data.assistingOrganization,\r\n address: data.address,\r\n firmName: data.firmName,\r\n fax: data.fax,\r\n taxId: data.taxId\r\n };\r\n });\r\n }\r\n\r\n private onSaveAccountClicked = () => {\r\n const data = this.state.data;\r\n const request : UpdateProfileRequest = {\r\n firstName: data.firstName,\r\n middleName: data.middleName,\r\n lastName: data.lastName,\r\n email: data.email,\r\n phone: data.phone,\r\n userType: data.userType,\r\n assistingOrganization: data.assistingOrganization,\r\n address: data.address,\r\n firmName: data.firmName,\r\n fax: data.fax,\r\n taxId: data.taxId,\r\n receivePortalTaskNotificationDigest: data.receivePortalTaskNotificationDigest\r\n };\r\n this.props.accountsApiClient.updateProfile(request).then(\r\n response => {\r\n if (!response.success) {\r\n this.setState({ errors: new ErrorList(response.errors) });\r\n }\r\n else {\r\n this.props.context.flashMessage(\"Profile updated\");\r\n this.props.closeDialog();\r\n }\r\n }\r\n )\r\n }\r\n\r\n private onChangePasswordClicked = () => {\r\n this.props.accountsApiClient.getChangePasswordInfo().then(\r\n response => {\r\n this.props.context.openDialog(closeDialog => {\r\n return ;\r\n });\r\n }\r\n );\r\n }\r\n}","import * as React from \"react\";\r\nimport { ContextMenu, ContextMenuItem } from \"spry-react/ContextMenu/contextMenu\";\r\nimport { ZipCodesApiClient } from \"spry-react/Address/zipCodesApiClient\";\r\nimport { UpdateProfileDialog } from \"Components/Accounts/updateProfileDialog\";\r\nimport { AccountsApiClient } from \"Components/Accounts/accountsApiClient\";\r\nimport { ChangePasswordDialog } from \"Components/Accounts/changePasswordDialog\";\r\nimport { IAppContext } from \"../appContext\";\r\n\r\nexport function UserMenu(props: { \r\n appContext: IAppContext,\r\n accountsApiClient: AccountsApiClient \r\n}){\r\n const {appContext, accountsApiClient} = props;\r\n return <>\r\n \r\n onUpdateProfileClicked(appContext, accountsApiClient)} />\r\n onChangePasswordClicked(appContext, accountsApiClient)} />\r\n onLogoutClicked(appContext, accountsApiClient)} />\r\n \r\n ;\r\n}\r\n\r\n\r\nfunction onChangePasswordClicked(appContext: IAppContext, accountsApiClient: AccountsApiClient) {\r\n accountsApiClient.getChangePasswordInfo().then(\r\n response => {\r\n appContext.openDialog(closeDialog => {\r\n return ;\r\n });\r\n }\r\n );\r\n}\r\n\r\nfunction onLogoutClicked(appContext: IAppContext, accountsApiClient: AccountsApiClient) {\r\n accountsApiClient.signOut().then(\r\n (response) => {\r\n appContext.setWindowLocationHref(response.siteRootUrl);\r\n }\r\n );\r\n}\r\n\r\nfunction onUpdateProfileClicked(appContext: IAppContext, accountsApiClient: AccountsApiClient) {\r\n accountsApiClient.getUpdateProfile().then(\r\n response => {\r\n appContext.openDialog(closeDialog => {\r\n return ;\r\n });\r\n }\r\n );\r\n}\r\n","import { IAppContext } from \"../appContext\";\r\nimport { ContextMenu, ContextMenuItem, NavigateContextMenuItem } from \"spry-react/ContextMenu/contextMenu\";\r\nimport * as React from \"react\";\r\nimport { ClaimOrApplicationNumberAndId, LoggedInUser } from \"../Layout/authenticatedUserLayout\";\r\nimport { DashboardApiClient } from \"Components/Home/dashboardApiClient\";\r\nimport { RequestClaimAccessDialog } from \"Components/Home/requestClaimAccess\";\r\n\r\nexport function ClaimMenu(props: {\r\n appContext: IAppContext;\r\n dashboardApiClient: DashboardApiClient;\r\n claimOrApplicationNumberAndIds: ClaimOrApplicationNumberAndId[],\r\n portalUser: LoggedInUser;\r\n recaptchaPublicSiteKey: string;\r\n}){\r\n const { appContext, claimOrApplicationNumberAndIds, dashboardApiClient, portalUser, recaptchaPublicSiteKey } = props;\r\n\r\n return <>\r\n \r\n {claimOrApplicationNumberAndIds.map(c => \r\n \r\n )}\r\n { dashboardApiClient.createNewClaimApplicationAndRedirect(appContext) }\r\n } />\r\n { \r\n appContext.openDialog((closeDialog) => {\r\n return ;\r\n })\r\n }} />\r\n \r\n ;\r\n}\r\n","import * as React from \"react\";\r\nimport { SiteNavigationLink } from \"spry-react/Page/siteNavigation\";\r\nimport { HelpDialog } from \"./helpDialog\";\r\nimport { IAppContext } from \"Components/Shared/appContext\";\r\nimport { Link } from \"spry-react/Link/link\";\r\nimport { OpenContextMenuCallback } from \"spry-react/App/app\";\r\nimport { ContextMenu, ContextMenuItem, ContextMenuTrigger } from \"spry-react/ContextMenu/contextMenu\";\r\nimport { UpdateProfileDialog } from \"Components/Accounts/updateProfileDialog\";\r\nimport { ChangePasswordDialog } from \"Components/Accounts/changePasswordDialog\";\r\nimport { ZipCodesApiClient } from \"spry-react/Address/zipCodesApiClient\";\r\nimport { AccountsApiClient } from \"Components/Accounts/accountsApiClient\";\r\nimport { UserMenu } from \"./SiteNavigation/UserMenu\";\r\nimport { ClaimMenu } from \"./SiteNavigation/ClaimMenu\";\r\nimport { find } from \"spry-react/utils/arrayExtensions\";\r\nimport { LoggedInUser, ClaimOrApplicationNumberAndId } from \"./Layout/authenticatedUserLayout\";\r\nimport { DashboardApiClient } from \"Components/Home/dashboardApiClient\";\r\n\r\nexport interface Props {\r\n appContext: IAppContext;\r\n user?: LoggedInUser;\r\n dashboardApiClient: DashboardApiClient;\r\n selectedClaimOrApplicationKey: string;\r\n accountsApiClient: AccountsApiClient;\r\n recaptchaPublicSiteKey: string;\r\n officeTollFreePhoneNumber: string;\r\n organizationPhoneNumber: string;\r\n}\r\n\r\nexport function PortalSiteNavigation(props: Props) {\r\n const { user, appContext, accountsApiClient, selectedClaimOrApplicationKey, dashboardApiClient, recaptchaPublicSiteKey, organizationPhoneNumber, officeTollFreePhoneNumber } = props;\r\n const openHelpDialog = () => {\r\n const renderDialog = (closeDialog: () => void) => ;\r\n props.appContext.openDialog(renderDialog);\r\n };\r\n\r\n return <>\r\n \r\n { \r\n user?.isVictimClaimant && user?.victimClaimantClaimOrApplications?.length > 0 && \r\n \r\n }\r\n {\r\n user &&\r\n \r\n }\r\n ;\r\n}\r\n\r\nfunction UserMenuLink(props: { \r\n appContext: IAppContext,\r\n accountsApiClient: AccountsApiClient,\r\n userInformalDisplayName: string,\r\n}){\r\n const { userInformalDisplayName, appContext, accountsApiClient } = props;\r\n const openUserMenu = appContext.registerContextMenu(() => \r\n \r\n );\r\n\r\n return <> \r\n \r\n \r\n {userInformalDisplayName}\r\n \r\n \r\n ;\r\n}\r\n\r\nfunction ClaimMenuLink(props: {\r\n appContext: IAppContext,\r\n selectedClaimOrApplicationKey: string,\r\n dashboardApiClient: DashboardApiClient;\r\n claimOrApplicationNumberAndIds: ClaimOrApplicationNumberAndId[],\r\n portalUser: LoggedInUser,\r\n recaptchaPublicSiteKey: string\r\n}) {\r\n const { appContext, claimOrApplicationNumberAndIds, selectedClaimOrApplicationKey, dashboardApiClient, portalUser, recaptchaPublicSiteKey } = props;\r\n\r\n const openMenu = appContext.registerContextMenu(() => \r\n \r\n );\r\n\r\n const selectedItem = find(claimOrApplicationNumberAndIds, c => c.key == selectedClaimOrApplicationKey);\r\n const selectedText = (selectedItem?.claimNumber ?? selectedItem?.applicationNumber) ?? \"Claims\";\r\n return <>\r\n \r\n \r\n {selectedText}\r\n \r\n \r\n ;\r\n}\r\n","import { Layout } from \"./layout\";\r\nimport { DashboardApiUrls } from \"Components/Home/dashboardApiClient\";\r\n\r\nexport interface AuthenticatedUserLayout extends Layout {\r\n loggedInUser: LoggedInUser;\r\n selectedClaimOrApplicationKey: string | null;\r\n dashboardApiUrls: DashboardApiUrls;\r\n advocateAttorneyAddClaimPageUrl: string | null;\r\n}\r\n\r\nexport interface LoggedInUser {\r\n userId: number;\r\n informalDisplayName: string;\r\n formalDisplayName: string;\r\n phoneNumber: string;\r\n email: string;\r\n isVictimClaimant: boolean;\r\n victimClaimantClaimOrApplications: ClaimOrApplicationNumberAndId[];\r\n}\r\n\r\nexport type ClaimOrApplication = \"Claim\" | \"Application\";\r\n\r\nexport interface ClaimOrApplicationNumberAndId {\r\n claimId: number | null;\r\n claimApplicationId: number;\r\n applicationNumber: string;\r\n claimNumber: string | null;\r\n type: ClaimOrApplication;\r\n key: string;\r\n url: string;\r\n}\r\n\r\nexport function isAuthenticatedUserLayout(layout: Layout | AuthenticatedUserLayout): layout is AuthenticatedUserLayout {\r\n return !!(layout as AuthenticatedUserLayout).loggedInUser;\r\n}\r\n","import * as React from \"react\";\r\nimport { Page } from \"spry-react/Page/page\";\r\nimport { IAppContext } from \"Components/Shared/appContext\";\r\nimport { PortalFullHeader } from \"./portalFullHeader\";\r\nimport { AccountsApiClientUrls, AccountsApiClient } from \"Components/Accounts/accountsApiClient\";\r\nimport { PortalSiteNavigation } from \"./portalSiteNavigation\";\r\nimport { AuthenticatedUserLayout, isAuthenticatedUserLayout } from 'Components/Shared/Layout/authenticatedUserLayout';\r\nimport { Layout } from \"./Layout/layout\";\r\nimport { DashboardApiClient } from \"Components/Home/dashboardApiClient\";\r\n\r\ninterface Props {\r\n appContext: IAppContext;\r\n title?: string;\r\n headerContent?: React.ReactNode;\r\n children?: React.ReactNode;\r\n borderedHeader?: boolean;\r\n layout: Layout | AuthenticatedUserLayout\r\n}\r\n\r\nexport class PortalPage extends React.Component {\r\n\r\n render() {\r\n const title = this.props.title ? `${this.props.title} - MatrixAdvocate Portal` : \"MatrixAdvocate Portal\";\r\n return }\r\n title={title}\r\n children={this.props.children}\r\n />;\r\n }\r\n}\r\n\r\nexport interface AdvocateHeaderProps {\r\n appContext: IAppContext;\r\n layout: Layout | AuthenticatedUserLayout;\r\n title?: string;\r\n headerContent?: React.ReactNode;\r\n borderedHeader?: boolean;\r\n selectedClaimOrApplicationKey: string | null;\r\n}\r\nexport class AdvocateHeader extends React.PureComponent {\r\n render() {\r\n const { appContext, layout, selectedClaimOrApplicationKey } = this.props;\r\n\r\n const navContent = ;\r\n\r\n return <>\r\n