{"version":3,"sources":["models/index.ts","models/insurance.ts","models/allergy.ts","models/appointment.ts","models/audit.ts","models/cda.ts","models/vital-sign.ts","components/layout/AccountInfo/CDAAudit/AuditItem.tsx","components/layout/AccountInfo/CDAAudit/CDAAudit.tsx","components/layout/AccountInfo/HealthixConsentInfo/ViewHealthixConsent.tsx","components/layout/AccountInfo/HealthixConsentInfo/HealthixConsentList.tsx","components/layout/AccountInfo/HealthixConsentInfo/HealthixConsentInfo.tsx","components/layout/AccountInfo/Logout.tsx","apis/cda.ts","components/layout/AccountInfo/PatientCDA/TransmitCDA.tsx","components/layout/AccountInfo/PatientCDA/PatientCDA.tsx","components/layout/AccountInfo/AccountInfo.tsx","components/layout/Clock/Clock.tsx","components/layout/Header/MenuButton.tsx","components/layout/Header/Header.tsx","components/global/LockScreen/LockScreen.tsx","components/layout/Menu/AppNavLink.tsx","components/layout/Menu/MenuWrapper.tsx","components/layout/Menu/Menu.tsx","pages/patient-portal/PatientPortal.tsx","pages/patient-portal/index.ts"],"names":["Insurance","id","insuranceType","relationship","firstName","lastName","dob","gender","address","city","state","zipcode","idNumber","policyNumber","planName","payerId","payer","expectedCopay","specCopay","startDate","endDate","insuranceValidationSchema","yup","shape","required","impsPayerId","moreThan","IMPSBaseModel","allergyId","reactionConceptId","AppointmentVisitStatusEnum","AppointmentVisitTypeEnum","BookingAppointmentStatus","primaryComplaint","visitType","facilityId","when","is","then","phoneNumber","notOneOf","AuditType","AuditCDAAction","CDATransmitRouteType","CDATransmitRequest","routeType","Email","email","subject","content","AuditItem","React","memo","audit","index","metadata","convertPascalCaseToCamelCase","JSON","parse","action","transmit","Direct","className","actor","representative","formatDate","date","createdDate","destFormat","CDAAudit","useState","audits","setAudits","loading","setLoading","show","setShow","init","useCallback","a","getAudits","CDA","response","sort","b","window","console","log","useEffect","handleShowHide","onClick","Modal","backdrop","centered","keyboard","enforceFocus","size","onHide","Header","Body","style","height","overflow","map","x","i","key","colSpan","length","Footer","type","ViewHealthixConsent","healthixConsentId","pdfBase64","setPdfBase64","handleHide","handleShow","getHealthixConsentPdfByHealthixConsentIdAsync","alert","disabled","scrollable","allowFullScreen","src","title","width","HealthixConsentList","healthixConsents","setHealthixConsents","getHealthixConsents","effectiveDate","yes","HealthixConsentInfo","Logout","handleLogout","logout","location","href","getPatientCDA","axios","get","params","from","to","data","substr","transmitPatientCDA","request","post","getXSLCDAAsync","validationSchema","matches","emailRegExp","TransmitCDA","onClose","initialValues","enableReinitialize","onSubmit","values","actions","Number","setSubmitting","render","errors","isSubmitting","submitCount","handleChange","handleSubmit","FormGroup","FormControl","as","name","value","String","onChange","FormLabel","opacity","autoFocus","label","validationMessage","placeholder","rows","options","getKeyFromRequest","keySet","has","join","PatientCDA","transmitParams","setTransmitParams","els","document","getElementsByClassName","item","setAttribute","handleHideTransmit","undefined","Set","srcFormat","zip","JSZip","file","generateAsync","generatedZip","saveAs","setFieldValue","Form","minHeight","groupClassName","inputClassName","aria-label","classNamePrefix","isMulti","filter","selectedOptions","url","open","focus","AccountInfo","xmlns","xmlnsXlink","viewBox","version","transform","fill","d","Clock","moment","dateTime","setDateTime","format","time","intervalId","setInterval","clearInterval","connect","appStateSelectors","getMenuState","appStates","dispatch","toggleMenuState","classnames","tabIndex","alt","unlockValidationSchema","password","min","appLockTimeout","getAppLockTimeout","identity","accountSelectors","getAccountIdentity","accounts","locked","getAccountLocked","patientId","getPatientId","lockAccount","passwordRef","useRef","timeoutId","resetTimer","clearTimeout","current","setTimeout","pathname","startsWith","addEventListener","removeEventListener","backdropClassName","emptyFunction","unlock","submitted","Input","inputRef","children","props","handleClick","Collapse","in","Menu","exact","points","Appointment","lazy","Conference","Dashboard","InsuranceBilling","LiveHelpRequest","MedicalInformation","MedicationRefill","Message","PrintView","Main","usersActions","useDispatch","users","getUsersAsync","Suspense","fallback","Loading","path","component","setAppConfig","updateAccount","update","history","checkingAuthenticate","setCheckingAuthenticate","getStatus","Promise","all","getAccountInfoAsync","getAppConfig","info","appConfig","replace","getAccountInfo","maxWidth","xlinkHref","stroke","strokeWidth","fillRule","cx","cy","r"],"mappings":"kIAAA,8Y,qHCGaA,EAAb,sCACIC,GAAa,EADjB,KAGIC,cAAwB,GAH5B,KAIIC,aAAuB,GAJ3B,KAKIC,eALJ,OAMIC,cANJ,OAOIC,SAPJ,OAQIC,YARJ,OASIC,aATJ,OAUIC,UAVJ,OAWIC,WAXJ,OAYIC,aAZJ,OAaIC,cAbJ,OAcIC,kBAdJ,OAeIC,cAfJ,OAiBIC,QAAkB,EAjBtB,KAkBIC,WAlBJ,OAoBIC,cAAwB,EApB5B,KAqBIC,UAAoB,EArBxB,KAsBIC,eAtBJ,OAuBIC,aAvBJ,GAuCaC,EAA4BC,WAAaC,MAAM,CACxDrB,cAAeoB,WAEVE,SAAS,+BACdC,YAAaH,WAERI,SAAS,EAAG,sBACZF,SAAS,sBACdZ,SAAUU,WAELE,SAAS,kCACdL,UAAWG,WAENE,SAAS,mCACdrB,aAAcmB,WAETE,SAAS,gC,mFC9CWG,EASUL,WAAaC,MAAM,CACtDK,UAAWN,WAENI,SAAS,EAAG,wBACZF,SAAS,wBACdK,kBAAmBP,WAEdE,SAAS,4B,qGCxBNM,EAgBAC,E,0DAhBAD,O,eAAAA,I,iDAAAA,I,2CAAAA,I,uCAAAA,I,2BAAAA,I,yDAAAA,I,qCAAAA,I,6BAAAA,I,6BAAAA,I,yCAAAA,I,qCAAAA,I,uCAAAA,I,mDAAAA,M,cAgBAC,O,+DAAAA,I,iDAAAA,I,+CAAAA,I,6CAAAA,I,qDAAAA,I,6CAAAA,I,sBAAAA,M,KAUL,IAiHKC,EAjHqBL,IA2CUL,WAAaC,MAAM,CAC1DU,iBAAkBX,WAEbE,SAAS,0CACdL,UAAWG,WAENE,SAAS,2BACdU,UAAWZ,WAENE,SAAS,2BACdW,WAAYb,WAEPE,SAAS,2BAGgCF,WAAaC,MAAM,CACjEnB,UAAWkB,WAENc,KACG,iBACA,CACIC,IAAI,EACJC,KAAMhB,WAEDE,SAAS,6BAG1BnB,SAAUiB,WAELc,KACG,iBACA,CACIC,IAAI,EACJC,KAAMhB,WAEDE,SAAS,4BAG1BlB,IAAKgB,WAEAc,KACG,iBACA,CACIC,IAAI,EACJC,KAAMhB,WAEDE,SAAS,gCAG1Be,YAAajB,WAERkB,SAAS,CAAC,kBAAmB,2BAC7BJ,KACG,iBACA,CACIC,IAAI,EACJC,KAAMhB,WAEDE,SAAS,gC,SAYlBQ,O,eAAAA,I,uBAAAA,I,yBAAAA,I,qBAAAA,I,oBAAAA,M,uCC/HL,IAAKS,EAIAC,EAJZ,gC,SAAYD,O,cAAAA,M,cAIAC,K,oBAAAA,E,aAAAA,M,2GCpBAC,E,kBAAAA,O,mBAAAA,I,kBAAAA,M,KAKL,IAAMC,EAAb,sCACIC,UAAkCF,EAAqBG,MAD3D,KAEIC,MAAgB,GAFpB,KAGIC,QAAkB,GAHtB,KAIIC,QAAkB,K,6PCSStB,IAcUL,Y,+ICyB1B4B,EA1CVC,IAAMC,KAAK,YAGT,IAFHC,EAEE,EAFFA,MACAC,EACE,EADFA,MAEMC,EAAWF,EAAME,UAAYC,YAA6BC,KAAKC,MAAML,EAAME,WAEjF,OACI,4BACI,4BAAKD,EAAQ,EAAb,KACA,4BAAKD,EAAMM,QACVJ,GAAYA,EAASK,SAClB,4BACI,8BAAOL,EAASK,SAASb,OACzB,6BACI,+BACI,uCACCQ,EAASK,SAASf,YAAcF,uBAAqBkB,OAAS,SAAW,QAC1E,oCAEJ,2BAAOC,UAAU,QACZP,EAASK,SAASZ,WAI/B,6BAEJ,4BACMK,EAAMU,OAASV,EAAMW,eACnB,8BAAOX,EAAMU,OAASV,EAAMW,gBAC5B,kBAAC,IAAD,OAGR,4BACKC,YAAW,CACRC,KAAMb,EAAMc,YACZC,WAAY,sB,SCkFjBC,EA3HYlB,IAAMC,KAAK,WAAO,IAAD,EACZD,IAAMmB,SAAkB,IADZ,mBACjCC,EADiC,KACzBC,EADyB,OAEVrB,IAAMmB,UAAS,GAFL,mBAEjCG,EAFiC,KAExBC,EAFwB,OAGhBvB,IAAMmB,UAAS,GAHC,mBAGjCK,EAHiC,KAG3BC,EAH2B,KAKlCC,EAAO1B,IAAM2B,YAAN,qBACT,4BAAAC,EAAA,qEAEQL,GAAW,GAFnB,SAG+BM,YAAUvC,YAAUwC,KAHnD,OAGcC,EAHd,OAIQV,EAAUU,EAASC,KAAK,SAACJ,EAAGK,GAAJ,OAAUL,EAAEZ,YAAciB,EAAEjB,YAAc,GAAK,KAJ/E,gDAMQkB,OAAOC,QAAQC,IAAf,MANR,QAQIb,GAAW,GARf,uDAUA,IAGJvB,IAAMqC,UACF,WACQb,EACAE,IAEAL,EAAU,KAGlB,CACIG,EACAE,IAIR,IAAMY,EAAiB,WACnBb,GAASD,IAGb,OACI,oCACI,4BACIb,UAAU,gBACV4B,QAASD,GAET,uBAAG3B,UAAU,mBACb,uDAEJ,kBAAC6B,EAAA,EAAD,CACIhB,KAAMA,EACNiB,UAAU,EACVC,UAAU,EACVC,UAAU,EACVC,cAAc,EACdC,KAAK,KACLC,OAAQR,GAER,kBAACE,EAAA,EAAMO,OAAP,KACI,wBAAIpC,UAAU,yBACV,yBAAKA,UAAU,cACX,yDAIZ,kBAAC6B,EAAA,EAAMQ,KAAP,CACIC,MAAO,CACHC,OAAQ,sBACRC,SAAU,SAGd,2BAAOxC,UAAU,oCACb,+BACI,4BACI,6BACA,sCACA,kCACA,sCACA,sCAGR,+BACKS,EAAOgC,IAAI,SAACC,EAAGC,GAAJ,OACR,kBAAC,EAAD,CACIC,IAAKF,EAAEvG,GACPoD,MAAOmD,EACPlD,MAAOmD,MAGdhC,GACG,4BACI,wBACIkC,QAAS,EACT7C,UAAU,eAEV,uBAAGA,UAAU,4BAIN,IAAlBS,EAAOqC,SAAiBnC,GACrB,4BACI,wBACIkC,QAAS,EACT7C,UAAU,eAEV,2DAOxB,kBAAC6B,EAAA,EAAMkB,OAAP,KACI,4BACI/C,UAAU,wBACVgD,KAAK,SACLpB,QAASD,GAET,mD,SC9BTsB,EAvFV5D,IAAMC,KAAK,YAET,IADH4D,EACE,EADFA,kBACE,EAIE7D,IAAMmB,UAAS,GAJjB,mBAEEG,EAFF,KAGEC,EAHF,OAQEvB,IAAMmB,SAAS,IARjB,mBAME2C,EANF,KAOEC,EAPF,KAUIC,EAAahE,IAAM2B,YACrB,WACIoC,EAAa,KAEjB,IAGEE,EAAajE,IAAM2B,YAAN,qBACf,4BAAAC,EAAA,4DACIL,GAAW,GADf,kBAG+B2C,YAA8CL,GAH7E,QAGc9B,EAHd,QAKYgC,EAAahC,GAEbG,OAAOiC,MAAM,yBAPzB,gDAUQjC,OAAOiC,MAAM,yBAVrB,QAYI5C,GAAW,GAZf,uDAcA,CAACsC,IAGL,OACI,oCACI,kBAAC,IAAD,CACIlD,UAAU,mBACVyD,SAAU9C,EACVA,QAASA,EACTiB,QAAS0B,GAJb,QAQA,kBAACzB,EAAA,EAAD,CACIhB,OAAQsC,EACRrB,UAAU,EACVC,UAAU,EACVC,UAAU,EACV0B,YAAY,EACZxB,KAAK,KACLC,OAAQkB,GAER,kBAACxB,EAAA,EAAMO,OAAP,KACI,wBAAIpC,UAAU,yBACV,yBAAKA,UAAU,cAAf,sBAKR,kBAAC6B,EAAA,EAAMQ,KAAP,CAAYC,MAAO,CAAEC,OAAQ,wBACxBY,GACG,4BACIQ,iBAAiB,EACjBpB,OAAO,OACPqB,IAAG,sCAAiCT,GACpCU,MAAM,mBACNC,MAAM,UAIlB,kBAACjC,EAAA,EAAMkB,OAAP,KACI,kBAAC,IAAD,CACI/C,UAAU,wBACV4B,QAASyB,GAFb,cCMLU,EAlFuB1E,IAAMC,KAAK,WAAO,IAAD,EAI/CD,IAAMmB,SAAiC,IAJQ,mBAE/CwD,EAF+C,KAG/CC,EAH+C,OAQ/C5E,IAAMmB,UAAS,GARgC,mBAM/CG,EAN+C,KAO/CC,EAP+C,KA4BnD,OAlBAvB,IAAMqC,UACF,YACc,sCAAG,4BAAAT,EAAA,4DACTL,GAAW,GADF,kBAGkBsD,cAHlB,OAGC9C,EAHD,OAIL6C,EAAoB7C,EAASC,KAAK,SAACJ,EAAGK,GAAJ,OAAUL,EAAEkD,cAAgB7C,EAAE6C,cAAgB,GAAK,KAJhF,gDAML5C,OAAOC,QAAQC,IAAf,MANK,QAQTb,GAAW,GARF,uDAAH,qDAWVG,IAEJ,IAIA,2BAAOf,UAAU,4CACb,+BACI,4BACI,6BACA,sCACA,oCACA,+BAGR,+BACKW,EACG,4BACI,wBACIX,UAAU,cACV6C,QAAS,GAET,uBAAG7C,UAAU,4BAGrB,oCACiC,IAA5BgE,EAAiBlB,QACd,4BACI,wBACI9C,UAAU,cACV6C,QAAS,GAFb,eAQPmB,EAAiBvB,IAAI,SAACC,EAAGC,GAAJ,OAClB,wBAAIC,IAAKF,EAAEvG,IACP,wBAAI6D,UAAU,cACT2C,EAAI,EADT,KAGA,4BAAKD,EAAE0B,IAAM,WAAa,UAC1B,4BACKjE,YAAW,CACRC,KAAMsC,EAAEyB,cACR7D,WAAY,wBAGpB,4BAAI,kBAAC,EAAD,CAAqB4C,kBAAmBR,EAAEvG,cCnB/DkI,EArDuBhF,IAAMC,KAAK,WAAO,IAAD,EAI/CD,IAAMmB,UAAS,GAJgC,mBAE/CK,EAF+C,KAG/CC,EAH+C,KAM7Ca,EAAiBtC,IAAM2B,YACzB,WACIF,GAASD,IAEb,CAACA,IAGL,OACI,oCACI,4BACIb,UAAU,gBACV4B,QAASD,GAET,uBAAG3B,UAAU,oBAJjB,qBAOA,kBAAC6B,EAAA,EAAD,CACIhB,KAAMA,EACNiB,UAAU,EACVC,UAAU,EACVC,UAAU,EACV0B,YAAY,EACZvB,OAAQR,GAER,kBAACE,EAAA,EAAMO,OAAP,KACI,wBAAIpC,UAAU,yBACV,yBAAKA,UAAU,cAAf,4BAKR,kBAAC6B,EAAA,EAAMQ,KAAP,KACI,kBAAC,EAAD,OAEJ,kBAACR,EAAA,EAAMkB,OAAP,KACI,kBAAC,IAAD,CACI/C,UAAU,wBACV4B,QAASD,GAFb,c,SC3BL2C,EAhBUjF,IAAMC,KAAK,WAChC,IAAMiF,EAAY,sCAAG,sBAAAtD,EAAA,8EAEPuD,cAFO,OAGbjD,OAAOkD,SAASC,KAAO,iBAHV,gDAKbnD,OAAOC,QAAQC,IAAf,MACAF,OAAOiC,MAAM,mBANA,uDAAH,qDAUlB,OACI,4BAAQxD,UAAU,gBAAgB4B,QAAS2C,GAAc,uBAAGvE,UAAU,oBAAtE,a,2qBCZD,IAAM2E,EAAa,sCAAG,WACzB/B,EACAxC,GAFyB,eAAAa,EAAA,qEAOF2D,IAAMC,IACzB,uBACA,CACIC,OAAO,EAAD,CACFlC,IAAKA,GACFxC,GAAI,KACAA,EAAK2E,MAAQ,CACZA,KAAM3E,EAAK2E,MAFZ,GAIA3E,EAAK4E,IAAM,CACVA,GAAI5E,EAAK4E,QAjBJ,cAOnB5D,EAPmB,yBAuBlBA,EAAS6D,KAAKC,OAAO,EAAG,IAAM,oDAAsD9D,EAAS6D,KAAKC,OAAO,KAvBvF,yCAAH,wDA0BbC,EAAkB,sCAAG,WAC9BC,EACAN,GAF8B,eAAA7D,EAAA,qEAQP2D,IAAMS,KACzB,gCACAD,EACA,CACIN,OAAO,EAAD,CACFlC,IAAKkC,EAAOlC,KACTkC,EAAOC,MAAQ,CACdA,KAAMD,EAAOC,MAHf,GAKCD,EAAOE,IAAM,CACZA,GAAIF,EAAOE,OAlBG,cAQxB5D,EARwB,yBAuBvBA,EAAS6D,MAvBc,yCAAH,wDA0BlBK,EAAc,sCAAG,4BAAArE,EAAA,qEACH2D,IAAMC,IAAI,uBADP,cACpBzD,EADoB,yBAEnBA,EAAS6D,MAFU,yCAAH,qD,mjBCnCpB,IAAMM,EAAmB/H,WAE3BC,MAAM,CACHwB,MAAOzB,WAEFE,SAAS,sBACT8H,QAAQC,IAAa,yBAC1BvG,QAAS1B,WAEJE,SAAS,0BAsJPgI,EA3IVrG,IAAMC,KAAK,gBACZuB,EADY,EACZA,KACAiE,EAFY,EAEZA,OACAa,EAHY,EAGZA,QAHY,OAKZ,kBAAC9D,EAAA,EAAD,CACIhB,KAAMA,EACNiB,UAAU,EACVC,UAAU,EACVC,UAAU,EACV0B,YAAY,EACZxB,KAAK,KACLC,OAAQwD,GAER,kBAAC9D,EAAA,EAAMO,OAAP,KACI,wBAAIpC,UAAU,yBACV,yBAAKA,UAAU,cACX,uDAIZ,kBAAC,IAAD,CACI4F,cAAe,IAAI9G,qBACnB+G,oBAAoB,EACpBN,iBAAkBA,EAClBO,SAAQ,sCAAE,WACNC,EACAC,GAFM,eAAA/E,EAAA,8EAKqBkE,EAAmB,KAE/BY,EAF8B,CAGjChH,UAAWkH,OAAOF,EAAOhH,aAE7B+F,GAVF,QAKI1D,EALJ,SAaE4E,EAAQE,eAAc,GACtB3E,OAAOiC,MAAMpC,IAEbuE,IAhBF,gDAmBFK,EAAQE,eAAc,GACtB3E,OAAOC,QAAQC,IAAf,MACAF,OAAOiC,MAAM,wDArBX,uDAAF,wDAwBR2C,OAAQ,gBACJC,EADI,EACJA,OACAC,EAFI,EAEJA,aACAC,EAHI,EAGJA,YACAP,EAJI,EAIJA,OACAQ,EALI,EAKJA,aACAC,EANI,EAMJA,aANI,OAQJ,kBAAC,IAAD,CAAMV,SAAUU,GACZ,kBAAC3E,EAAA,EAAMQ,KAAP,KACI,kBAACoE,EAAA,EAAD,CAAWzG,UAAU,YACjB,kBAAC0G,EAAA,EAAD,CACIC,GAAG,SACHC,KAAK,YACLC,MAAOC,OAAOf,EAAOhH,WACrBgI,SAAUR,GAEV,4BAAQM,MAAOhI,uBAAqBkB,QAApC,UACA,4BAAQ8G,MAAOhI,uBAAqBG,OAApC,UAEJ,kBAACgI,EAAA,EAAD,KACI,gDACA,0BAAMhH,UAAU,eAAhB,MAEJ,yBACIA,UAAU,mBACVsC,MAAO,CAAE2E,QAAS,IAElB,wCAGR,kBAAC,IAAD,eACIC,WAAW,EACXC,MAAM,QACNP,KAAK,QACLlJ,UAAU,GACN4I,EAAc,GAAK,CACnBc,kBAAmBhB,EAAOnH,OANlC,CAQI4H,MAAOd,EAAO9G,MACd8H,SAAUR,KAEd,kBAAC,IAAD,eACIY,MAAM,UACNP,KAAK,UACLlJ,UAAU,GACN4I,EAAc,GAAK,CACnBc,kBAAmBhB,EAAOlH,SALlC,CAOI2H,MAAOd,EAAO7G,QACd6H,SAAUR,KAEd,kBAACE,EAAA,EAAD,CAAWzG,UAAU,YACjB,kBAAC0G,EAAA,EAAD,CACIC,GAAG,WACHC,KAAK,UACLS,YAAY,kBACZC,KAAM,EACNT,MAAOd,EAAO5G,QACd4H,SAAUR,MAItB,kBAAC1E,EAAA,EAAMkB,OAAP,KACI,4BACI/C,UAAU,wBACVyD,SAAU4C,EACVrD,KAAK,SACLpB,QAAS+D,GAET,8CAEJ,4BACI3F,UAAU,cACVyD,SAAU4C,EACVrD,KAAK,UAEJqD,EACG,uBAAGrG,UAAU,+BACb,uBAAGA,UAAU,oBAEjB,qDCzJtBuH,EAAU,CACZ,CACIV,MAAO,2BACPM,MAAO,8BAEX,CACIN,MAAO,cACPM,MAAO,eAGX,CACIN,MAAO,UACPM,MAAO,WAGX,CACIN,MAAO,aACPM,MAAO,cAGX,CACIN,MAAO,gBACPM,MAAO,iBAGX,CACIN,MAAO,aACPM,MAAO,eAGX,CACIN,MAAO,gBACPM,MAAO,kBAGX,CACIN,MAAO,UACPM,MAAO,WAGX,CACIN,MAAO,mBACPM,MAAO,qBAGX,CACIN,MAAO,aACPM,MAAO,cAGX,CACIN,MAAO,kBACPM,MAAO,qBAGX,CACIN,MAAO,oBACPM,MAAO,uBAGX,CACIN,MAAO,QACPM,MAAO,SAGX,CACIN,MAAO,iBACPM,MAAO,mBAGX,CACIN,MAAO,mBACPM,MAAO,qBAGX,CACIN,MAAO,kBACPM,MAAO,qBAKTK,EAAoB,SACtBC,GADsB,OAEbF,EAAQ9E,IAAI,SAAAC,GAAC,OAAI+E,EAAOC,IAAIhF,EAAEmE,OAAS,IAAM,MAAKc,KAAK,KA8PrDC,EAtPcvI,IAAMC,KAAK,WAAO,IAAD,EAClBD,IAAMmB,UAAS,GADG,mBACnCK,EADmC,KAC7BC,EAD6B,OAEEzB,IAAMmB,WAFR,mBAEnCqH,EAFmC,KAEnBC,EAFmB,KAI1CzI,IAAMqC,UACF,WACI,GAAIb,EAEA,IADA,IAAMkH,EAAMC,SAASC,uBAAuB,SACnCtF,EAAI,EAAGA,EAAIoF,EAAIjF,OAAQH,IAC5BoF,EAAIG,KAAKvF,GAAIwF,aAAa,cAAe,UAIrD,CAACtH,IAGL,IAAMc,EAAiBtC,IAAM2B,YACzB,WACIF,GAASD,IAEb,CAACA,IAGCuH,EAAqB/I,IAAM2B,YAC7B,WACI8G,OAAkBO,IAEtB,IASJ,OACI,oCACI,4BACIrI,UAAU,gBACV4B,QAASD,GAET,uBAAG3B,UAAU,oBACb,mEAEJ,kBAAC6B,EAAA,EAAD,CACIhB,KAAMA,EACNiB,UAAU,EACVC,UAAU,EACVC,UAAU,EACV0B,YAAY,EACZvB,OAAQR,GAER,kBAACE,EAAA,EAAMO,OAAP,KACI,wBAAIpC,UAAU,yBACV,yBAAKA,UAAU,cACX,4DAIZ,kBAAC,IAAD,CACI4F,cAAe,CACXb,KAAM,GACNC,GAAI,GACJyC,OAAQ,IAAIa,IAAIf,EAAQ9E,IAAI,SAAAC,GAAC,OAAIA,EAAEmE,UAEvChB,oBAAoB,EACpBC,SAAQ,sCAAE,WACNC,EACAC,GAFM,mBAAA/E,EAAA,8EAKqB0D,EACnB6C,EAAkBzB,EAAO0B,QACzB,CACI1C,KAAM5E,YAAW,CACbC,KAAM2F,EAAOhB,KACbwD,UAAW,aACXjI,WAAY,eAEhB0E,GAAI7E,YAAW,CACXC,KAAM2F,EAAOf,GACbuD,UAAW,aACXjI,WAAY,iBAhBtB,cAKIc,EALJ,QAqBIoH,EAAM,IAAIC,KACZC,KAAK,UAAWtH,GAtBlB,KAuBFoH,EAvBE,SAuBwBlD,IAvBxB,+BAuBEoD,KAvBF,UAuBO,UAvBP,gBAyByBF,EAAIG,cAAc,CAAE3F,KAAM,SAzBnD,QAyBI4F,EAzBJ,OA0BFC,iBAAOD,EAAc,WA1BnB,kDA6BFrH,OAAOC,QAAQC,IAAf,MACAF,OAAOiC,MAAM,wDA9BX,QAgCNwC,EAAQE,eAAc,GAhChB,wDAAF,wDAkCRC,OAAQ,YAKD,IAJHE,EAIE,EAJFA,aACAN,EAGE,EAHFA,OACAS,EAEE,EAFFA,aACAsC,EACE,EADFA,cA2CA,OACI,kBAACC,EAAA,EAAD,CACI5M,GAAG,WACH2J,SAAUU,GAEV,kBAAC3E,EAAA,EAAMQ,KAAP,CAAYC,MAAO,CAAE0G,UAAW,MAC5B,yBAAKhJ,UAAU,OACX,yBAAKA,UAAU,SACX,kBAAC,IAAD,CACIiJ,eAAe,qBACfC,eAAe,kBACf/B,MAAM,OACNP,KAAK,OACLC,MAAOd,EAAOhB,KACdgC,SAAU+B,KAGlB,yBAAK9I,UAAU,SACX,kBAAC,IAAD,CACIiJ,eAAe,qBACfC,eAAe,kBACf/B,MAAM,KACNP,KAAK,KACLC,MAAOd,EAAOf,GACd+B,SAAU+B,MAItB,yBAAK9I,UAAU,OACX,yBAAKA,UAAU,UACX,kBAAC,IAAD,CACImJ,aAAW,WACXnJ,UAAU,qBACVoJ,gBAAgB,SAChBC,SAAS,EACT9B,QAASA,EACTF,YAAY,kBACZR,MAAOU,EAAQ+B,OAAO,SAAA5G,GAAC,OAAIqD,EAAO0B,OAAOC,IAAIhF,EAAEmE,SAC/CE,SA/EK,SACzBwC,GAEAT,EACI,SACA,IAAIR,IAAIiB,EAAgB9G,IAAI,SAAAC,GAAC,OAAIA,EAAEmE,gBA+EnC,kBAAChF,EAAA,EAAMkB,OAAP,KACI,4BACI/C,UAAU,wBACVyD,SAAU4C,EACVrD,KAAK,SACLpB,QAASD,GAET,8CAEJ,4BACI3B,UAAU,cACVyD,SAAU4C,EACVrD,KAAK,UAEJqD,EACG,uBAAGrG,UAAU,+BACb,uBAAGA,UAAU,oBAEjB,2CAEJ,4BACIA,UAAU,cACVyD,SAAU4C,EACVrD,KAAK,SACLpB,QA3FG,WACf,IAAI4H,EAAG,wCAAoChC,EAAkBzB,EAAO0B,SAEpE,GAAI1B,EAAOhB,KAAM,CACb,IAAMA,EAAO5E,YAAW,CACpBC,KAAM2F,EAAOhB,KACbwD,UAAW,aACXjI,WAAY,eAEhBkJ,GAAG,gBAAazE,GAGpB,GAAIgB,EAAOf,GAAI,CACX,IAAMA,EAAK7E,YAAW,CAClBC,KAAM2F,EAAOf,GACbuD,UAAW,aACXjI,WAAY,eAEhBkJ,GAAG,cAAWxE,GAGlBzD,OAAOkI,KAAKD,GAAME,UAwEN,uBAAG1J,UAAU,mBACb,uCAEJ,4BACIA,UAAU,cACVyD,SAAU4C,EACVrD,KAAK,SACLpB,QA5GgB,WAtFzB,IACvBkD,IAsFuC,CACflC,IAAK4E,EAAkBzB,EAAO0B,QAC9B1C,KAAMgB,EAAOhB,KACbC,GAAIe,EAAOf,IAvFnC8C,EAAkBhD,KAiMc,uBAAG9E,UAAU,oBACb,gDAOvB6H,GACG,kBAAC,EAAD,CACIhH,OAAQgH,EACR/C,OAAQ+C,EACRlC,QAASyC,Q,SCpTlBuB,EA/BetK,IAAMC,KAAK,kBACrC,wBAAIU,UAAU,oBACV,kBAAC,IAAD,CAAGA,UAAU,6BACT,yBAAKA,UAAU,qDACX,0BAAMA,UAAU,8BAAhB,gBACA,6BACA,gCAAQ,kBAAC,IAAD,QAEZ,6BACI,yBAAK4J,MAAM,6BAA6BC,WAAW,+BAA+B/F,MAAM,OAAOvB,OAAO,OAAOuH,QAAQ,YAAYC,QAAQ,OACrI,uBAAGC,UAAU,sCAAsCC,KAAK,WACpD,uBAAGD,UAAU,mCACT,uBAAGA,UAAU,oCACT,uBAAGA,UAAU,oCACT,0BAAME,EAAE,4zCAQpC,yBAAKlK,UAAU,qCACX,kBAAC,EAAD,MACA,kBAAC,EAAD,MACA,kBAAC,EAAD,MACA,kBAAC,EAAD,U,iBCJGmK,GA3BS9K,IAAMC,KAAK,WAAO,IAAD,EACLD,IAAMmB,SAAS4J,OADV,mBAC9BC,EAD8B,KACpBC,EADoB,KAE/BlK,EAAOiK,EAASE,OAAO,sBACvBC,EAAOH,EAASE,OAAO,MAgB7B,OAdAlL,IAAMqC,UACF,WACI,IAAM+I,EAAalJ,OAAOmJ,YACtB,WACIJ,EAAYF,QAEhB,KAGJ,OAAO,kBAAM7I,OAAOoJ,cAAcF,KAEtC,IAIA,yBAAKzK,UAAU,+DACX,0BAAMA,UAAU,QAAO,uBAAGA,UAAU,wBAAyBI,GAC7D,8BAAM,uBAAGJ,UAAU,wBAAyBwK,M,+BCczCI,eARE,SAAChO,GAAD,MAAmC,CAChD6M,KAAMoB,KAAkBC,aAAalO,EAAMmO,aAG3B,SAACC,GAAD,MAAwC,CACxDC,gBAAiBD,EAASD,UAAUE,kBAGzBL,CAtB0C,SAAC,GAA+B,IAA7BnB,EAA4B,EAA5BA,KAAMwB,EAAsB,EAAtBA,gBACxDjL,EAAYkL,KAAW,iBAAkBzB,EAAO,SAAW,aAMjE,OACI,4BAAQzJ,UAAWA,EAAWgD,KAAK,SAASpB,QAL5B,WAChBqJ,KAIkE9B,aAAW,qBACzE,0BAAMnJ,UAAU,aAAa,0BAAMA,UAAU,aAAa,0BAAMA,UAAU,gBCWvEoC,GA/BU/C,IAAMC,KAAK,kBAChC,yBAAKU,UAAU,gDACX,yBAAKA,UAAU,mBACX,kBAAC,GAAD,MACA,kBAAC,GAAD,MACA,uBACIA,UAAU,iCACV0E,KAAK,aACLyG,UAAW,GAEX,yBAAKC,IAAI,WAAWxH,IAAI,gCAE5B,wBAAI5D,UAAU,0BACV,4BACI,kBAAC,IAAD,CAAGA,UAAU,QACT,uBAAGA,UAAU,mBAIrB,4BACI,kBAAC,IAAD,CAAGA,UAAU,QACT,uBAAGA,UAAU,iBAGrB,wBAAIA,UAAU,aACd,kBAAC,EAAD,W,wCCVHqL,GAAyB7N,WAAaC,MAAM,CACrD6N,SAAU9N,WACLE,SAAS,yBACT6N,IAAI,EAAG,yCAoLDX,eAXE,SAAChO,GAAD,MAAmC,CAChD4O,eAAgBX,KAAkBY,kBAAkB7O,EAAMmO,WAC1DW,SAAUC,KAAiBC,mBAAmBhP,EAAMiP,UACpDC,OAAQH,KAAiBI,iBAAiBnP,EAAMiP,UAChDG,UAAWL,KAAiBM,aAAarP,EAAMiP,YAG/B,SAACb,GAAD,MAAwC,CACxDkB,YAAalB,EAASa,SAASK,cAGpBtB,CAtK0C,SAAC,GAMnD,IALHY,EAKE,EALFA,eACAE,EAIE,EAJFA,SACAI,EAGE,EAHFA,OACAE,EAEE,EAFFA,UACAE,EACE,EADFA,YAEMC,EAAc9M,IAAM+M,OAAyB,MAC7CC,EAAYhN,IAAM+M,OAAO,GAEzBE,EAAajN,IAAM2B,YACrB,WACSO,OAAOuK,SACRvK,OAAOgL,aAAaF,EAAUG,SAC9BH,EAAUG,QAAUjL,OAAOkL,WAAP,qBAChB,sBAAAxL,EAAA,yDACQM,OAAOkD,SAASiI,SAASC,WAAW,4BAD5C,gBAEQL,IAFR,gDAKkB9H,cALlB,OAMYjD,OAAOuK,QAAS,EAChBI,GAAY,GAPxB,kDASY3K,OAAOC,QAAQC,IAAf,MACA6K,IAVZ,wDAciB,IAAjBd,KAIZ,CACIA,EACAU,IAmCR,OA/BA7M,IAAMqC,UACF,WAKI,OAJA4K,IACAtE,SAAS4E,iBAAiB,YAAaN,GACvCtE,SAAS4E,iBAAiB,WAAYN,GAE/B,WACH/K,OAAOgL,aAAaF,EAAUG,SAC9BxE,SAAS6E,oBAAoB,YAAaP,GAC1CtE,SAAS6E,oBAAoB,WAAYP,KAGjD,CAACA,IAGLjN,IAAMqC,UACF,WACQoK,GACAvK,OAAOkL,WACH,WACQN,EAAYK,SACZL,EAAYK,QAAQ9C,SAG5B,MAIZ,CAACoC,IAID,kBAACjK,EAAA,EAAD,CACIhB,KAAMiL,EACNhK,UAAU,EACVgL,kBAAkB,OAClB/K,UAAU,EACVC,UAAU,EACV0B,YAAY,EACZzB,cAAc,EACdE,OAAQ4K,MAER,kBAAClL,EAAA,EAAMO,OAAP,CAAcpC,UAAU,iBACpB,wBAAIA,UAAU,yBACV,yBAAKA,UAAU,cAAf,YAGR,kBAAC,IAAD,CACI4F,cAAe,CACX0F,SAAU,IAEdzF,oBAAoB,EACpBC,SAAQ,sCAAE,WAAOC,EAAQC,GAAf,eAAA/E,EAAA,8EAEqB+L,YACnBtB,EACA3F,EAAOuF,SACPU,GALF,QAEI5K,EAFJ,QASEG,OAAOiC,MAAMpC,IAEbG,OAAOuK,QAAS,EAChBI,GAAY,GACZI,KAbF,gDAgBF/K,OAAOC,QAAQC,IAAf,MACAF,OAAOiC,MAAM,iBAjBX,QAmBNwC,EAAQE,eAAc,GAnBhB,uDAAF,wDAqBRX,iBAAkB8F,GAClBlF,OAAQ,gBACJC,EADI,EACJA,OACAC,EAFI,EAEJA,aACAC,EAHI,EAGJA,YACAP,EAJI,EAIJA,OACAQ,EALI,EAKJA,aACAC,EANI,EAMJA,aANI,OAQJ,kBAAC,KAAD,CACIyG,UAAW3G,EAAc,EACzBR,SAAUU,GAEV,kBAAC3E,EAAA,EAAMQ,KAAP,KACI,uBAAGrC,UAAU,eAAb,6GACA,yBAAKA,UAAU,QACX,kBAACkN,GAAA,EAAD,eACIC,SAAUhB,EACVvF,KAAK,WACLO,MAAM,WACNnE,KAAK,YACDsD,EAAc,GAAK,CAAEc,kBAAmBhB,EAAOkF,UALvD,CAMIzE,MAAOd,EAAOuF,SACdvE,SAAUR,OAItB,kBAAC1E,EAAA,EAAMkB,OAAP,KACI,4BACIC,KAAK,SACLhD,UAAU,cACVyD,SAAU4C,GAEV,wCAAcA,GAAgB,uBAAGrG,UAAU,oC,oBC5I5D4K,oBAAQvC,EANH,SAChB2C,GADgB,MAEC,CACjBC,gBAAiBD,EAASD,UAAUE,kBAGzBL,CA7BwC,SAAC,GAIjD,IAHHwC,EAGE,EAHFA,SACAnC,EAEE,EAFFA,gBACGoC,EACD,+CACIC,EAAcjO,IAAM2B,YACtB,WACIiK,GAAgB,IAEpB,CAACA,IAGL,OACI,kBAAC,KAAD,iBACQoC,EADR,CAEIlC,UAAW,EACXvJ,QAAS0L,IAERF,K,UCRExC,eANE,SACbhO,GADa,MAEC,CACd6M,KAAMoB,KAAkBC,aAAalO,EAAMmO,aAGhCH,CAd2B,SAAC,GAAD,IACtCwC,EADsC,EACtCA,SAAU3D,EAD4B,EAC5BA,KAD4B,OAGtC,kBAAC8D,GAAA,EAAD,CAAUC,GAAI/D,GACT2D,KC0GMK,GAnHQpO,IAAMC,KAAK,kBAC9B,yBAAKU,UAAU,uCACX,6BACI,kBAAC,GAAD,KACI,yBACIA,UAAU,sCACV7D,GAAG,0BAEH,wBAAI6D,UAAU,0CACV,wBAAIA,UAAU,YACV,kBAAC,GAAD,CACIA,UAAU,WACV0N,OAAO,EACP1I,GAAG,KAEH,uBAAGhF,UAAU,gCACb,0BAAMA,UAAU,iBAAhB,eAKR,wBAAIA,UAAU,YACV,kBAAC,GAAD,CACIA,UAAU,WACVgF,GAAG,gBAEH,uBAAGhF,UAAU,iCACb,0BAAMA,UAAU,iBAAhB,kBAKR,wBAAIA,UAAU,YACV,kBAAC,GAAD,CACIA,UAAU,WACVgF,GAAG,iBAEH,uBAAGhF,UAAU,oBACT,yBACI4J,MAAM,6BACNC,WAAW,+BACX/F,MAAM,OACNvB,OAAO,OACPuH,QAAQ,YACRC,QAAQ,MACRE,KAAK,QAEL,0BAAMC,EAAE,20DACR,6BAASyD,OAAO,0FAChB,0BAAMzD,EAAE,8TACR,0BAAMA,EAAE,mVAGhB,0BAAMlK,UAAU,iBAAhB,kBAaR,wBAAIA,UAAU,YACV,kBAAC,GAAD,CACIA,UAAU,WACVgF,GAAG,wBAEH,uBAAGhF,UAAU,+BACb,0BAAMA,UAAU,6BAAhB,4BAKR,wBAAIA,UAAU,YACV,kBAAC,GAAD,CACIA,UAAU,WACVgF,GAAG,sBAEH,uBAAGhF,UAAU,8BACb,0BAAMA,UAAU,iBAAhB,4BAcR,wBAAIA,UAAU,YACV,kBAAC,GAAD,CACIA,UAAU,WACVgF,GAAG,YAEH,uBAAGhF,UAAU,mCACb,0BAAMA,UAAU,iBAAhB,8B,SC/E1B4N,GAAcvO,IAAMwO,KAAK,kBAAM,iCAC/BC,GAAazO,IAAMwO,KAAK,kBAAM,iCAC9BE,GAAY1O,IAAMwO,KAAK,kBAAM,iCAC7BG,GAAmB3O,IAAMwO,KAAK,kBAAM,iCACpCI,GAAkB5O,IAAMwO,KAAK,kBAAM,iCACnCK,GAAqB7O,IAAMwO,KAAK,kBAAM,uDACtCM,GAAmB9O,IAAMwO,KAAK,kBAAM,iCACpCO,GAAU/O,IAAMwO,KAAK,kBAAM,iCAC3BQ,GAAYhP,IAAMwO,KAAK,kBAAM,gCA2H7BS,GAAOjP,IAAMC,KAAK,WAAO,IACZiP,EAAiBC,cAAxBC,MASR,OAPApP,IAAMqC,UACF,WACI6M,EAAaG,iBAEjB,CAACH,IAID,oCACI,kBAAC,GAAD,MACA,0BAAMpS,GAAG,OAAO6D,UAAU,UACtB,yBAAKA,UAAU,eACX,kBAAC,GAAD,MACA,yBAAKA,UAAU,qCACX,yBAAKA,UAAU,qBACX,kBAAC,IAAM2O,SAAP,CAAgBC,SAAU,kBAACC,GAAA,EAAD,OACtB,kBAAC,IAAD,KACI,kBAAC,IAAD,CAAOnB,OAAO,EAAMoB,KAAK,IAAIC,UAAWhB,KACxC,kBAAC,IAAD,CAAOe,KAAI,mCAAsCC,UAAWnB,KAC5D,kBAAC,IAAD,CAAOkB,KAAK,qBAAqBC,UAAWf,KAC5C,kBAAC,IAAD,CAAOc,KAAK,WAAWC,UAAWd,KAClC,kBAAC,IAAD,CAAOa,KAAK,uBAAuBC,UAAWb,KAC9C,kBAAC,IAAD,CAAOY,KAAK,qBAAqBC,UAAWZ,KAC5C,kBAAC,IAAD,CAAOW,KAAK,WAAWC,UAAWX,QAI9C,yBAAKpO,UAAU,kEACX,sCAASG,YAAW,CAAEqM,SAAS,EAAMlM,WAAY,SAAjD,uBAKhB,kBAAC,GAAD,SAUGsK,oBAAQvC,EALH,SAAC2C,GAAD,MAAwC,CACxDgE,aAAchE,EAASD,UAAUiE,aACjCC,cAAejE,EAASa,SAASqD,SAGtBtE,CAlKsD,SAAC,GAI/D,IAHHuE,EAGE,EAHFA,QACAH,EAEE,EAFFA,aACAC,EACE,EADFA,cACE,EACsD5P,IAAMmB,UAAS,GADrE,mBACK4O,EADL,KAC2BC,EAD3B,KAkDF,OA/CAhQ,IAAMqC,UACF,YACwB,sCAAG,kCAAAT,EAAA,8EAEeqO,cAFf,mDAIqBC,QAAQC,IAAI,CACxCC,cACAC,iBANO,mCAIJC,EAJI,KAIEC,EAJF,KASXZ,EAAaY,GAETD,IACAV,EAAcU,GACdN,GAAwB,IAbjB,wBAgBXF,EAAQU,QAAR,iCAA0CV,EAAQ1K,SAASiI,WAhBhD,0DAmBfnL,OAAOiC,MAAP,MAnBe,wDAAH,qDAuBpBsM,IAEJ,CACIX,EACAH,EACAC,IAiBJG,EAEI,yBAAKpP,UAAU,mBACX,0BAAMA,UAAU,UACZ,yBAAKA,UAAU,eACX,yBAAKA,UAAU,qCACX,yBAAKA,UAAU,qBACX,yBACIA,UAAU,YACVsC,MAAO,CAAEyN,SAAU,MAEnB,yBAAK/P,UAAU,aACX,yBAAKA,UAAU,iBACX,yBAAKA,UAAU,0BACX,yBAAKA,UAAU,OACX,yBACI4J,MAAM,6BACNoG,UAAU,+BACVlM,MAAM,OACNvB,OAAO,OACPuH,QAAQ,YACRC,QAAQ,OAER,uBAAG5N,GAAG,GAAG8T,OAAO,OAAOC,YAAY,IAAIjG,KAAK,OAAOkG,SAAS,WACxD,uBAAGhU,GAAG,GAAG6N,UAAU,uCACf,uBAAG7N,GAAG,GAAG6N,UAAU,qCACf,uBAAG7N,GAAG,GAAG6N,UAAU,oCACf,4BAAQ7N,GAAG,GAAG8T,OAAO,UAAUC,YAAY,IAAIE,GAAG,KAAKC,GAAG,KAAKC,EAAE,OACjE,6BAASnU,GAAG,GAAG8N,KAAK,UAAU0D,OAAO,wHAO7D,0CAEJ,uBAAG3N,UAAU,6BAAb,yDAYhC,yBAAKA,UAAU,QACX,kBAAC,IAAM2O,SAAP,CAAgBC,SAAU,kBAACC,GAAA,EAAD,OACtB,kBAAC,IAAD,KACI,kBAAC,IAAD,CAAOC,KAAK,cAAcC,UAAWV,KACrC,kBAAC,IAAD,CAAOS,KAAK,cAAcC,UAAWjB,KACrC,kBAAC,IAAD,CAAOiB,UAAWT,UCxJ1C","file":"static/js/6.094639c1.chunk.js","sourcesContent":["export * from './allergy';\r\nexport * from './appointment';\r\nexport * from './audit';\r\nexport * from './cda';\r\nexport * from './healthix-consent';\r\nexport * from './imaging-body-site';\r\nexport * from './imaging-result';\r\nexport * from './imaging-type';\r\nexport * from './insurance';\r\nexport * from './lab-result';\r\nexport * from './medical-information';\r\nexport * from './patient-history';\r\nexport * from './patient-receipt';\r\nexport * from './patient-rx';\r\nexport * from './phv';\r\nexport * from './pt-statement';\r\nexport * from './vital-sign';\r\n","import * as yup from 'yup';\r\nimport { Payer } from './payer';\r\n\r\nexport class Insurance {\r\n id: number = 0;\r\n\r\n insuranceType: string = '';\r\n relationship: string = '';\r\n firstName: Undefinable;\r\n lastName: Undefinable;\r\n dob: Undefinable;\r\n gender: Undefinable;\r\n address: Undefinable;\r\n city: Undefinable;\r\n state: Undefinable;\r\n zipcode: Undefinable;\r\n idNumber: Undefinable;\r\n policyNumber: Undefinable;\r\n planName: Undefinable;\r\n\r\n payerId: number = 0;\r\n payer?: Payer;\r\n\r\n expectedCopay: number = 0;\r\n specCopay: number = 0;\r\n startDate: Undefinable;\r\n endDate: Undefinable;\r\n}\r\n\r\nexport class InsuranceShort {\r\n id: number = 0;\r\n\r\n insuranceType: string = 'P';\r\n payerId: number = 0;\r\n payerName: Undefinable;\r\n memberNumber: Undefinable;\r\n groupNumber: Undefinable;\r\n fromDate: Undefinable;\r\n toDate: Undefinable;\r\n relationship: string = '';\r\n}\r\n\r\nexport const insuranceValidationSchema = yup.object().shape({\r\n insuranceType: yup\r\n .string()\r\n .required('Insurance type is required.'),\r\n impsPayerId: yup\r\n .number()\r\n .moreThan(0, 'Payer is required.')\r\n .required('Payer is required.'),\r\n idNumber: yup\r\n .string()\r\n .required('Subscriber number is required.'),\r\n startDate: yup\r\n .string()\r\n .required('Coverage date from is required.'),\r\n relationship: yup\r\n .string()\r\n .required('Relationship is required.')\r\n});\r\n","import * as yup from 'yup';\r\nimport IMPSBaseModel from './imps-base-model';\r\n\r\nexport class AllergyModel {\r\n id: number = 0;\r\n\r\n allergyId?: number;\r\n reactionConceptId?: string;\r\n severity: number;\r\n onsetDate?: string;\r\n}\r\n\r\nexport class Allergy extends IMPSBaseModel {\r\n allergyId: Undefinable;\r\n reactionConceptId: Undefinable;\r\n severity: number;\r\n onsetDate: Undefinable;\r\n\r\n appointmentId: Undefinable;\r\n}\r\n\r\nexport const allergyValidationSchema = yup.object().shape({\r\n allergyId: yup\r\n .number()\r\n .moreThan(0, 'Allergy is required.')\r\n .required('Allergy is required.'),\r\n reactionConceptId: yup\r\n .string()\r\n .required('Reaction is required.')\r\n});\r\n","import * as yup from 'yup';\r\nimport IMPSBaseModel from './imps-base-model';\r\nimport { ServiceResult } from './service-result';\r\n\r\nexport enum AppointmentVisitStatusEnum {\r\n None = 0,\r\n ScheduledNotConfirmed = 1,\r\n ScheduledConfirmed = 2,\r\n ArrivedCheckedIn = 3,\r\n CheckedOut = 4,\r\n CancelledDidNotReschedule = 5,\r\n CancelledNoShow = 6,\r\n Rescheduled = 7,\r\n InEncounter = 8,\r\n EncounterComplete = 9,\r\n CompletedInECW = 100,\r\n CheckInComplete = 1000,\r\n TelemedicineFinished = 1903 // fake status\r\n}\r\n\r\nexport enum AppointmentVisitTypeEnum {\r\n NewPatientComprehensiveVisit = 1,\r\n NewPatientUrgentVisit = 2,\r\n FollowUpRoutineVisit = 3,\r\n FollowUpUrgentVisit = 4,\r\n AnnualPhysicalExamVisit = 5,\r\n MedicalServiceVisit = 6,\r\n CCDNote = 7\r\n}\r\n\r\nexport class Appointment extends IMPSBaseModel {\r\n patientId: number = 0;\r\n primaryComplaint: Undefinable;\r\n startDate: Undefinable;\r\n endDate: Undefinable;\r\n visitType: Undefinable;\r\n visitStatus: AppointmentVisitStatusEnum = AppointmentVisitStatusEnum.None;\r\n providerId: Undefinable;\r\n facilityId: Undefinable;\r\n isTelemedicine: boolean = false;\r\n relatedId: Undefinable;\r\n checkInFinished: boolean = false;\r\n telemedicineFinished: boolean = false;\r\n}\r\n\r\nexport interface AppointmentModel {\r\n id: string;\r\n startDate: string;\r\n endDate: string;\r\n providerFirstName?: string;\r\n providerLastName?: string;\r\n providerSuffix?: string;\r\n medicalServiceName?: string;\r\n locationName: string;\r\n locationAddress?: string;\r\n locationCity?: string;\r\n locationState?: string;\r\n locationZip?: string;\r\n isTelemedicine: boolean;\r\n primaryComplaint: string;\r\n visitStatus: AppointmentVisitStatusEnum;\r\n visitType: AppointmentVisitTypeEnum;\r\n}\r\n\r\nexport class GatewayAppointment extends Appointment {\r\n noLoginContext: boolean = false;\r\n\r\n firstName: string = '';\r\n lastName: string = '';\r\n dob: string = '';\r\n phoneNumber: string = '';\r\n}\r\n\r\nexport const appointmentValidationSchema = yup.object().shape({\r\n primaryComplaint: yup\r\n .string()\r\n .required('Visit reason or complaint is required.'),\r\n startDate: yup\r\n .string()\r\n .required('Visit date is required.'),\r\n visitType: yup\r\n .number()\r\n .required('Visit type is required.'),\r\n facilityId: yup\r\n .number()\r\n .required('Location is required.')\r\n});\r\n\r\nexport const gatewayAppointmentValidationSchema = yup.object().shape({\r\n firstName: yup\r\n .string()\r\n .when(\r\n 'noLoginContext',\r\n {\r\n is: true,\r\n then: yup\r\n .string()\r\n .required('First name is required.')\r\n }\r\n ),\r\n lastName: yup\r\n .string()\r\n .when(\r\n 'noLoginContext',\r\n {\r\n is: true,\r\n then: yup\r\n .string()\r\n .required('Last name is required.')\r\n }\r\n ),\r\n dob: yup\r\n .string()\r\n .when(\r\n 'noLoginContext',\r\n {\r\n is: true,\r\n then: yup\r\n .string()\r\n .required('Date of birth is required.')\r\n }\r\n ),\r\n phoneNumber: yup\r\n .string()\r\n .notOneOf(['(___) ___-____'], 'Mobile tel is required.')\r\n .when(\r\n 'noLoginContext',\r\n {\r\n is: true,\r\n then: yup\r\n .string()\r\n .required('Mobile tel is required.')\r\n }\r\n )\r\n});\r\n\r\nexport type AppointmentResult = ServiceResult;\r\n\r\nexport type GatewayAppointmentResult = ServiceResult<{\r\n phone: string;\r\n status: BookingAppointmentStatus;\r\n}>;\r\n\r\nexport enum BookingAppointmentStatus {\r\n None = 0,\r\n Existing = 1,\r\n MissMatch = 2,\r\n Limited = 3,\r\n Booked = 4\r\n}\r\n\r\nexport interface AppointmentBilled {\r\n copay: number;\r\n visitFees: number;\r\n paid: number;\r\n}\r\n","import { CDATransmitRequest } from '.';\r\nexport interface Audit {\r\n id: number;\r\n type: AuditType;\r\n action: AuditCDAAction;\r\n metadata?: string;\r\n createdDate: string;\r\n\r\n representative?: string;\r\n actor?: string;\r\n}\r\n\r\nexport interface AuditCDAMetadata {\r\n transmit?: CDATransmitRequest;\r\n}\r\n\r\nexport enum AuditType {\r\n CDA\r\n}\r\n\r\nexport enum AuditCDAAction {\r\n Download = 'Download',\r\n View = 'View'\r\n}\r\n","export enum CDATransmitRouteType {\r\n Direct,\r\n Email\r\n}\r\n\r\nexport class CDATransmitRequest {\r\n routeType: CDATransmitRouteType = CDATransmitRouteType.Email;\r\n email: string = '';\r\n subject: string = '';\r\n content: string = '';\r\n}\r\n","import * as yup from 'yup';\r\nimport IMPSBaseModel from './imps-base-model';\r\nimport { formatDate } from '../utils/formatter';\r\n\r\nexport class VitalSignModel {\r\n id: number;\r\n\r\n heightInch?: number;\r\n heightFeet?: number;\r\n weight?: number;\r\n pulse?: number;\r\n systolic?: number;\r\n diastolic?: number;\r\n temperature?: number;\r\n respiratoryRate?: number;\r\n vitalSignDate: string = formatDate({ current: true });\r\n}\r\n\r\nexport class VitalSign extends IMPSBaseModel {\r\n heightInch: Undefinable;\r\n heightFeet: Undefinable;\r\n weight: Undefinable;\r\n pulse: Undefinable;\r\n systolic: Undefinable;\r\n diastolic: Undefinable;\r\n temperature: Undefinable;\r\n respiratoryRate: Undefinable;\r\n vitalSignDate: string = formatDate({ destFormat: 'YYYY-MM-DDTHH:mm:ss', current: true });\r\n\r\n appointmentId: Undefinable;\r\n}\r\n\r\nexport const vitalSignValidationSchema = yup.object();\r\n","import React from 'react';\r\nimport { AccountName } from '../../../shared/Entity';\r\nimport {\r\n Audit,\r\n AuditCDAMetadata,\r\n CDATransmitRouteType\r\n} from '../../../../models';\r\nimport {\r\n convertPascalCaseToCamelCase,\r\n formatDate\r\n} from '../../../../utils';\r\n\r\nconst AuditItem: React.FC<{\r\n audit: Audit;\r\n index: number;\r\n}> = React.memo(({\r\n audit,\r\n index\r\n}) => {\r\n const metadata = audit.metadata && convertPascalCaseToCamelCase(JSON.parse(audit.metadata)) as AuditCDAMetadata;\r\n\r\n return (\r\n \r\n {index + 1}.\r\n {audit.action}\r\n {metadata && metadata.transmit ?\r\n \r\n {metadata.transmit.email}\r\n
\r\n \r\n (Via \r\n {metadata.transmit.routeType === CDATransmitRouteType.Direct ? 'Direct' : 'Email'}\r\n )\r\n \r\n \r\n {metadata.transmit.subject}\r\n \r\n
\r\n :\r\n \r\n }\r\n \r\n {(audit.actor || audit.representative) ?\r\n {audit.actor || audit.representative} :\r\n \r\n }\r\n \r\n \r\n {formatDate({\r\n date: audit.createdDate,\r\n destFormat: 'MM/DD/YYYY LT'\r\n })}\r\n \r\n \r\n );\r\n});\r\n\r\nexport default AuditItem;\r\n","import React from 'react';\r\nimport { Modal } from 'react-bootstrap';\r\nimport AuditItem from './AuditItem';\r\nimport {\r\n Audit,\r\n AuditType\r\n} from '../../../../models';\r\nimport { getAudits } from '../../../../apis';\r\n\r\nconst CDAAudit: React.FC = React.memo(() => {\r\n const [audits, setAudits] = React.useState([]);\r\n const [loading, setLoading] = React.useState(true);\r\n const [show, setShow] = React.useState(false);\r\n\r\n const init = React.useCallback(\r\n async () => {\r\n try {\r\n setLoading(true);\r\n const response = await getAudits(AuditType.CDA);\r\n setAudits(response.sort((a, b) => a.createdDate < b.createdDate ? 1 : -1));\r\n } catch (e) {\r\n window.console.log(e);\r\n }\r\n setLoading(false);\r\n },\r\n []\r\n );\r\n\r\n React.useEffect(\r\n () => {\r\n if (show) {\r\n init();\r\n } else {\r\n setAudits([]);\r\n }\r\n },\r\n [\r\n show,\r\n init\r\n ]\r\n );\r\n\r\n const handleShowHide = () => {\r\n setShow(!show);\r\n };\r\n\r\n return (\r\n <>\r\n \r\n \r\n <>View CCD Audit\r\n \r\n \r\n \r\n
\r\n
\r\n <>View CCD Audit\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 {audits.map((x, i) =>\r\n \r\n )}\r\n {loading &&\r\n \r\n \r\n \r\n \r\n \r\n }\r\n {audits.length === 0 && !loading &&\r\n \r\n \r\n <>No information\r\n \r\n \r\n }\r\n \r\n
\r\n ActionToAuthorDate
\r\n \r\n \r\n \r\n <>Close\r\n \r\n \r\n \r\n \r\n );\r\n});\r\n\r\nexport default CDAAudit;\r\n","import React from 'react';\r\nimport { Modal } from 'react-bootstrap';\r\nimport { Button } from '../../../shared';\r\nimport { getHealthixConsentPdfByHealthixConsentIdAsync } from '../../../../apis';\r\n\r\nconst ViewHealthixConsent: React.FC<{\r\n healthixConsentId: string;\r\n}> = React.memo(({\r\n healthixConsentId\r\n}) => {\r\n const [\r\n loading,\r\n setLoading\r\n ] = React.useState(false);\r\n const [\r\n pdfBase64,\r\n setPdfBase64\r\n ] = React.useState('');\r\n\r\n const handleHide = React.useCallback(\r\n () => {\r\n setPdfBase64('');\r\n },\r\n []\r\n );\r\n\r\n const handleShow = React.useCallback(\r\n async () => {\r\n setLoading(true);\r\n try {\r\n const response = await getHealthixConsentPdfByHealthixConsentIdAsync(healthixConsentId);\r\n if (response) {\r\n setPdfBase64(response);\r\n } else {\r\n window.alert('Can not load consent.');\r\n }\r\n } catch {\r\n window.alert('Can not load consent.');\r\n }\r\n setLoading(false);\r\n },\r\n [healthixConsentId]\r\n );\r\n\r\n return (\r\n <>\r\n \r\n view\r\n \r\n \r\n \r\n
\r\n
\r\n Healthix Consent\r\n
\r\n
\r\n
\r\n \r\n {pdfBase64 &&\r\n \r\n }\r\n \r\n \r\n \r\n Close\r\n \r\n \r\n \r\n \r\n );\r\n});\r\n\r\nexport default ViewHealthixConsent;\r\n","import React from 'react';\r\nimport ViewHealthixConsent from './ViewHealthixConsent';\r\nimport { HealthixConsentModel } from '../../../../models';\r\nimport { formatDate } from '../../../../utils';\r\nimport { getHealthixConsents } from '../../../../apis';\r\n\r\nconst HealthixConsentList: React.FC = React.memo(() => {\r\n const [\r\n healthixConsents,\r\n setHealthixConsents\r\n ] = React.useState([]);\r\n const [\r\n loading,\r\n setLoading\r\n ] = React.useState(false);\r\n\r\n React.useEffect(\r\n () => {\r\n const init = async () => {\r\n setLoading(true);\r\n try {\r\n const response = await getHealthixConsents();\r\n setHealthixConsents(response.sort((a, b) => a.effectiveDate < b.effectiveDate ? 1 : -1));\r\n } catch (e) {\r\n window.console.log(e);\r\n }\r\n setLoading(false);\r\n };\r\n\r\n init();\r\n },\r\n []\r\n );\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {loading ?\r\n \r\n \r\n \r\n \r\n :\r\n <>\r\n {healthixConsents.length === 0 &&\r\n \r\n \r\n No history\r\n \r\n \r\n }\r\n {healthixConsents.map((x, i) =>\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 StatusDate\r\n
\r\n {i + 1}.\r\n {x.yes ? 'accepted' : 'denied'}\r\n {formatDate({\r\n date: x.effectiveDate,\r\n destFormat: 'MM/DD/YYYY hh:mm A'\r\n })}\r\n
\r\n );\r\n});\r\n\r\nexport default HealthixConsentList;\r\n","import React from 'react';\r\nimport { Modal } from 'react-bootstrap';\r\nimport HealthixConsentList from './HealthixConsentList';\r\nimport { Button } from '../../../shared';\r\n\r\nconst HealthixConsentInfo: React.FC = React.memo(() => {\r\n const [\r\n show,\r\n setShow\r\n ] = React.useState(false);\r\n\r\n const handleShowHide = React.useCallback(\r\n () => {\r\n setShow(!show);\r\n },\r\n [show]\r\n );\r\n\r\n return (\r\n <>\r\n \r\n \r\n Healthix consents\r\n \r\n \r\n \r\n
\r\n
\r\n View Healthix Consents\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n Close\r\n \r\n \r\n \r\n \r\n );\r\n});\r\n\r\nexport default HealthixConsentInfo;\r\n","import React from 'react';\r\nimport { logout } from '../../../apis/account';\r\n\r\nconst Logout: React.FC = React.memo(() => {\r\n const handleLogout = async () => {\r\n try {\r\n await logout();\r\n window.location.href = '/account/login';\r\n } catch (e) {\r\n window.console.log(e);\r\n window.alert('Can not logout.');\r\n }\r\n };\r\n\r\n return (\r\n \r\n );\r\n});\r\n\r\nexport default Logout;\r\n","import axios from 'axios';\r\nimport { CDATransmitRequest } from '../models';\r\n\r\nexport const getPatientCDA = async (\r\n key: string,\r\n date?: {\r\n from?: string;\r\n to?: string;\r\n }\r\n): Promise => {\r\n const response = await axios.get(\r\n '/api/cda/patient-cda',\r\n {\r\n params: {\r\n key: key,\r\n ...date && {\r\n ...date.from && {\r\n from: date.from\r\n },\r\n ...date.to && {\r\n to: date.to\r\n }\r\n }\r\n }\r\n }\r\n );\r\n return response.data.substr(0, 21) + '' + response.data.substr(21);\r\n};\r\n\r\nexport const transmitPatientCDA = async (\r\n request: CDATransmitRequest,\r\n params: {\r\n key: string;\r\n from?: string;\r\n to?: string;\r\n }\r\n): Promise => {\r\n const response = await axios.post(\r\n '/api/cda/transmit-patient-cda',\r\n request,\r\n {\r\n params: {\r\n key: params.key,\r\n ...params.from && {\r\n from: params.from\r\n },\r\n ...params.to && {\r\n to: params.to\r\n }\r\n }\r\n }\r\n );\r\n return response.data;\r\n};\r\n\r\nexport const getXSLCDAAsync = async (): Promise => {\r\n const response = await axios.get('/assets/xsl/cda.xsl');\r\n return response.data;\r\n};\r\n","import React from 'react';\r\nimport {\r\n FormControl,\r\n FormGroup,\r\n FormLabel,\r\n Modal\r\n} from 'react-bootstrap';\r\nimport { Formik } from 'formik';\r\nimport * as yup from 'yup';\r\nimport {\r\n Form,\r\n Input\r\n} from '../../../../components/shared';\r\nimport {\r\n CDATransmitRequest,\r\n CDATransmitRouteType\r\n} from '../../../../models';\r\nimport { emailRegExp } from '../../../../utils/regex';\r\nimport { transmitPatientCDA } from '../../../../apis/cda';\r\n\r\nexport const validationSchema = yup\r\n .object()\r\n .shape({\r\n email: yup\r\n .string()\r\n .required('Email is required.')\r\n .matches(emailRegExp, 'Must be email format.'),\r\n subject: yup\r\n .string()\r\n .required('Subject is required.')\r\n });\r\n\r\nconst TransmitCDA: React.FC<{\r\n show: boolean;\r\n params: {\r\n key: string;\r\n from?: string;\r\n to?: string;\r\n };\r\n onClose: () => void;\r\n}> = React.memo(({\r\n show,\r\n params,\r\n onClose\r\n}) => (\r\n \r\n \r\n
\r\n
\r\n <>Transmit CCD\r\n
\r\n
\r\n
\r\n {\r\n try {\r\n const response = await transmitPatientCDA(\r\n {\r\n ...values,\r\n routeType: Number(values.routeType)\r\n },\r\n params\r\n );\r\n if (response) {\r\n actions.setSubmitting(false);\r\n window.alert(response);\r\n } else {\r\n onClose();\r\n }\r\n } catch (e) {\r\n actions.setSubmitting(false);\r\n window.console.log(e);\r\n window.alert('Request failed. Please try again or contact support.');\r\n }\r\n }}\r\n render={({\r\n errors,\r\n isSubmitting,\r\n submitCount,\r\n values,\r\n handleChange,\r\n handleSubmit\r\n }) =>\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n <>Send via\r\n *\r\n \r\n \r\n  \r\n \r\n \r\n 0 && {\r\n validationMessage: errors.email\r\n }}\r\n value={values.email}\r\n onChange={handleChange}\r\n />\r\n 0 && {\r\n validationMessage: errors.subject\r\n }}\r\n value={values.subject}\r\n onChange={handleChange}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n <>Close\r\n \r\n \r\n {isSubmitting ?\r\n :\r\n \r\n }\r\n <>Send\r\n \r\n \r\n \r\n }\r\n />\r\n \r\n));\r\n\r\nexport default TransmitCDA;\r\n","import React from 'react';\r\nimport {\r\n Form,\r\n Modal\r\n} from 'react-bootstrap';\r\nimport Select from 'react-select';\r\nimport { saveAs } from 'file-saver';\r\nimport { Formik } from 'formik';\r\nimport JSZip from 'jszip';\r\nimport TransmitCDA from './TransmitCDA';\r\nimport { Datepicker } from '../../../shared';\r\nimport { formatDate } from '../../../../utils';\r\nimport {\r\n getPatientCDA,\r\n getXSLCDAAsync\r\n} from '../../../../apis/cda';\r\n\r\nconst options = [\r\n {\r\n value: 'allergiesAndIntolerances',\r\n label: 'Allergies and Intolerances'\r\n },\r\n {\r\n value: 'medications',\r\n label: 'Medications'\r\n\r\n },\r\n {\r\n value: 'problem',\r\n label: 'Problem'\r\n\r\n },\r\n {\r\n value: 'procedures',\r\n label: 'Procedures'\r\n\r\n },\r\n {\r\n value: 'immunizations',\r\n label: 'Immunizations'\r\n\r\n },\r\n {\r\n value: 'vitalSigns',\r\n label: 'Vital Signs'\r\n\r\n },\r\n {\r\n value: 'socialHistory',\r\n label: 'Social History'\r\n\r\n },\r\n {\r\n value: 'results',\r\n label: 'Results'\r\n\r\n },\r\n {\r\n value: 'medicalEquipment',\r\n label: 'Medical Equipment'\r\n\r\n },\r\n {\r\n value: 'assessment',\r\n label: 'Assessment'\r\n\r\n },\r\n {\r\n value: 'planOfTreatment',\r\n label: 'Plan of Treatment'\r\n\r\n },\r\n {\r\n value: 'reasonForReferral',\r\n label: 'Reason for Referral'\r\n\r\n },\r\n {\r\n value: 'goals',\r\n label: 'Goals'\r\n\r\n },\r\n {\r\n value: 'healthConcerns',\r\n label: 'Health Concerns'\r\n\r\n },\r\n {\r\n value: 'functionalStatus',\r\n label: 'Functional Status'\r\n\r\n },\r\n {\r\n value: 'cognitiveStatus',\r\n label: 'Cognitive Status'\r\n\r\n }\r\n] as AppSelectOption[];\r\n\r\nconst getKeyFromRequest = (\r\n keySet: Set\r\n): string => options.map(x => keySet.has(x.value) ? '1' : '0').join('');\r\n\r\ninterface TransmitParams {\r\n key: string;\r\n from?: string;\r\n to?: string;\r\n}\r\n\r\nconst PatientCDA: React.FC = React.memo(() => {\r\n const [show, setShow] = React.useState(false);\r\n const [transmitParams, setTransmitParams] = React.useState();\r\n\r\n React.useEffect(\r\n () => {\r\n if (show) {\r\n const els = document.getElementsByClassName('modal');\r\n for (let i = 0; i < els.length; i++) {\r\n els.item(i)!.setAttribute('aria-hidden', 'false');\r\n }\r\n }\r\n },\r\n [show]\r\n );\r\n\r\n const handleShowHide = React.useCallback(\r\n () => {\r\n setShow(!show);\r\n },\r\n [show]\r\n );\r\n\r\n const handleHideTransmit = React.useCallback(\r\n () => {\r\n setTransmitParams(undefined);\r\n },\r\n []\r\n );\r\n\r\n const handleShowTransmit = (\r\n params: TransmitParams\r\n ) => {\r\n setTransmitParams(params);\r\n };\r\n\r\n return (\r\n <>\r\n \r\n \r\n <>Download/View/Transmit CCD\r\n \r\n \r\n \r\n
\r\n
\r\n <>Download/View CCD\r\n
\r\n
\r\n
\r\n x.value))\r\n }}\r\n enableReinitialize={true}\r\n onSubmit={async (\r\n values,\r\n actions\r\n ) => {\r\n try {\r\n const response = await getPatientCDA(\r\n getKeyFromRequest(values.keySet),\r\n {\r\n from: formatDate({\r\n date: values.from,\r\n srcFormat: 'MM/DD/YYYY',\r\n destFormat: 'YYYY-MM-DD'\r\n }),\r\n to: formatDate({\r\n date: values.to,\r\n srcFormat: 'MM/DD/YYYY',\r\n destFormat: 'YYYY-MM-DD'\r\n })\r\n }\r\n );\r\n\r\n const zip = new JSZip();\r\n zip.file('CCD.xml', response);\r\n zip.file('cda.xsl', await getXSLCDAAsync());\r\n\r\n const generatedZip = await zip.generateAsync({ type: 'blob' });\r\n saveAs(generatedZip, 'CCD.zip');\r\n\r\n } catch (e) {\r\n window.console.log(e);\r\n window.alert('Request failed. Please try again or contact support.');\r\n }\r\n actions.setSubmitting(false);\r\n }}\r\n render={({\r\n isSubmitting,\r\n values,\r\n handleSubmit,\r\n setFieldValue\r\n }) => {\r\n const handleChangeSections = (\r\n selectedOptions: AppSelectOption[]\r\n ) => {\r\n setFieldValue(\r\n 'keySet',\r\n new Set(selectedOptions.map(x => x.value))\r\n );\r\n };\r\n\r\n const handleClickShowTransmit = () => {\r\n handleShowTransmit({\r\n key: getKeyFromRequest(values.keySet),\r\n from: values.from,\r\n to: values.to\r\n });\r\n };\r\n\r\n const handleView = () => {\r\n let url = `/api/cda/view-patient-cda?key=${getKeyFromRequest(values.keySet)}`;\r\n\r\n if (values.from) {\r\n const from = formatDate({\r\n date: values.from,\r\n srcFormat: 'MM/DD/YYYY',\r\n destFormat: 'YYYY-MM-DD'\r\n });\r\n url += `&from=${from}`;\r\n }\r\n\r\n if (values.to) {\r\n const to = formatDate({\r\n date: values.to,\r\n srcFormat: 'MM/DD/YYYY',\r\n destFormat: 'YYYY-MM-DD'\r\n });\r\n url += `&to=${to}`;\r\n }\r\n\r\n window.open(url)!.focus();\r\n };\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 values.keySet.has(x.value))}\r\n onChange={handleChangeSections}\r\n />\r\n
\r\n
\r\n
\r\n \r\n \r\n <>Close\r\n \r\n \r\n {isSubmitting ?\r\n :\r\n \r\n }\r\n Download\r\n \r\n \r\n \r\n View\r\n \r\n \r\n \r\n Transmit\r\n \r\n \r\n \r\n );\r\n }}\r\n />\r\n {transmitParams &&\r\n \r\n }\r\n \r\n \r\n );\r\n});\r\n\r\nexport default PatientCDA;\r\n","import React from 'react';\r\nimport CDAAudit from './CDAAudit';\r\nimport HealthixConsentInfo from './HealthixConsentInfo';\r\nimport Logout from './Logout';\r\nimport PatientCDA from './PatientCDA';\r\nimport { AccountName } from '../../shared/Entity';\r\nimport { A } from '../../shared/Tag';\r\n\r\nconst AccountInfo: React.FC = React.memo(() => (\r\n
  • \r\n \r\n
    \r\n Your profile\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\n));\r\n\r\nexport default AccountInfo;\r\n","import React from 'react';\r\nimport moment from 'moment';\r\n\r\nconst Clock: React.FC = React.memo(() => {\r\n const [dateTime, setDateTime] = React.useState(moment());\r\n const date = dateTime.format('dddd, MMMM D, YYYY');\r\n const time = dateTime.format('LT');\r\n\r\n React.useEffect(\r\n () => {\r\n const intervalId = window.setInterval(\r\n () => {\r\n setDateTime(moment());\r\n },\r\n 1000\r\n );\r\n\r\n return () => window.clearInterval(intervalId);\r\n },\r\n []\r\n );\r\n\r\n return (\r\n
    \r\n {date}\r\n {time}\r\n
    \r\n );\r\n});\r\n\r\nexport default Clock;\r\n","import React from 'react';\r\nimport { connect } from 'react-redux';\r\nimport classnames from 'classnames';\r\nimport {\r\n Dispatch,\r\n RootState\r\n} from '../../../store';\r\nimport { appStateSelectors } from '../../../rematch-models/selector';\r\n\r\ninterface StateProps {\r\n open: boolean;\r\n}\r\n\r\ninterface DispatchProps {\r\n toggleMenuState: () => void;\r\n}\r\n\r\nconst MenuButton: React.FC = ({ open, toggleMenuState }) => {\r\n const className = classnames('navbar-toggler', open ? 'expand' : 'collapsed');\r\n\r\n const handleClick = () => {\r\n toggleMenuState();\r\n };\r\n\r\n return (\r\n \r\n );\r\n};\r\n\r\nconst mapState = (state: RootState): StateProps => ({\r\n open: appStateSelectors.getMenuState(state.appStates)\r\n});\r\n\r\nconst mapDispatch = (dispatch: Dispatch): DispatchProps => ({\r\n toggleMenuState: dispatch.appStates.toggleMenuState\r\n});\r\n\r\nexport default connect(mapState, mapDispatch)(MenuButton);\r\n","import React from 'react';\r\nimport AccountInfo from '../AccountInfo';\r\nimport Clock from '../Clock';\r\nimport MenuButton from './MenuButton';\r\nimport { A } from '../../shared/Tag';\r\n\r\nconst Header: React.FC = React.memo(() => (\r\n \r\n));\r\n\r\nexport default Header;\r\n","import React from 'react';\r\nimport { connect } from 'react-redux';\r\nimport { Modal } from 'react-bootstrap';\r\nimport { Formik } from 'formik';\r\nimport * as yup from 'yup';\r\nimport {\r\n Dispatch,\r\n RootState\r\n} from '../../../store';\r\nimport {\r\n accountSelectors,\r\n appStateSelectors\r\n} from '../../../rematch-models/selector';\r\nimport Form from '../../shared/Form';\r\nimport Input from '../../shared/Input';\r\nimport { emptyFunction } from '../../../utils/constant';\r\nimport {\r\n logout,\r\n unlock\r\n} from '../../../apis/account';\r\n\r\nexport const unlockValidationSchema = yup.object().shape({\r\n password: yup.string()\r\n .required('Password is required.')\r\n .min(8, 'Please enter at least 8 characters.')\r\n});\r\n\r\ninterface StateProps {\r\n appLockTimeout: number;\r\n identity: string;\r\n locked: boolean;\r\n patientId: number;\r\n}\r\n\r\ninterface DispatchProps {\r\n lockAccount: (locked: boolean) => void;\r\n}\r\n\r\nconst LockScreen: React.FC = ({\r\n appLockTimeout,\r\n identity,\r\n locked,\r\n patientId,\r\n lockAccount\r\n}) => {\r\n const passwordRef = React.useRef(null);\r\n const timeoutId = React.useRef(0);\r\n\r\n const resetTimer = React.useCallback(\r\n () => {\r\n if (!window.locked) {\r\n window.clearTimeout(timeoutId.current);\r\n timeoutId.current = window.setTimeout(\r\n async () => {\r\n if (window.location.pathname.startsWith('/conference/telemedicine')) {\r\n resetTimer();\r\n } else {\r\n try {\r\n await logout();\r\n window.locked = true;\r\n lockAccount(true);\r\n } catch (e) {\r\n window.console.log(e);\r\n resetTimer();\r\n }\r\n }\r\n },\r\n appLockTimeout * 60000 // lock idle time\r\n );\r\n }\r\n },\r\n [\r\n appLockTimeout,\r\n lockAccount\r\n ]\r\n );\r\n\r\n React.useEffect(\r\n () => {\r\n resetTimer();\r\n document.addEventListener('mousemove', resetTimer);\r\n document.addEventListener('keypress', resetTimer);\r\n\r\n return () => {\r\n window.clearTimeout(timeoutId.current);\r\n document.removeEventListener('mousemove', resetTimer);\r\n document.removeEventListener('keypress', resetTimer);\r\n };\r\n },\r\n [resetTimer]\r\n );\r\n\r\n React.useEffect(\r\n () => {\r\n if (locked) {\r\n window.setTimeout(\r\n () => {\r\n if (passwordRef.current) {\r\n passwordRef.current.focus();\r\n }\r\n },\r\n 500\r\n );\r\n }\r\n },\r\n [locked]\r\n );\r\n\r\n return (\r\n \r\n \r\n
    \r\n
    Locked
    \r\n
    \r\n
    \r\n {\r\n try {\r\n const response = await unlock(\r\n identity,\r\n values.password,\r\n patientId\r\n );\r\n\r\n if (response) {\r\n window.alert(response);\r\n } else {\r\n window.locked = false;\r\n lockAccount(false);\r\n resetTimer();\r\n }\r\n } catch (e) {\r\n window.console.log(e);\r\n window.alert('Unlock failed');\r\n }\r\n actions.setSubmitting(false);\r\n }}\r\n validationSchema={unlockValidationSchema}\r\n render={({\r\n errors,\r\n isSubmitting,\r\n submitCount,\r\n values,\r\n handleChange,\r\n handleSubmit\r\n }) =>\r\n 0}\r\n onSubmit={handleSubmit}\r\n >\r\n \r\n

    Due to a period of inactivity, your screen has been locked. Please enter password to resume your session.

    \r\n
    \r\n 0 && { validationMessage: errors.password }}\r\n value={values.password}\r\n onChange={handleChange}\r\n />\r\n
    \r\n
    \r\n \r\n \r\n Unlock {isSubmitting && }\r\n \r\n \r\n \r\n }\r\n />\r\n \r\n );\r\n};\r\n\r\nconst mapState = (state: RootState): StateProps => ({\r\n appLockTimeout: appStateSelectors.getAppLockTimeout(state.appStates),\r\n identity: accountSelectors.getAccountIdentity(state.accounts),\r\n locked: accountSelectors.getAccountLocked(state.accounts),\r\n patientId: accountSelectors.getPatientId(state.accounts)\r\n});\r\n\r\nconst mapDispatch = (dispatch: Dispatch): DispatchProps => ({\r\n lockAccount: dispatch.accounts.lockAccount\r\n});\r\n\r\nexport default connect(mapState, mapDispatch)(LockScreen);\r\n","import React from 'react';\r\nimport { connect } from 'react-redux';\r\nimport {\r\n NavLink,\r\n NavLinkProps\r\n} from 'react-router-dom';\r\nimport { Dispatch } from '../../../store';\r\n\r\ninterface DispatchProps {\r\n toggleMenuState: (open: boolean) => void;\r\n}\r\n\r\ntype OwnProps = NavLinkProps;\r\n\r\nconst AppNavLink: React.FC = ({\r\n children,\r\n toggleMenuState,\r\n ...props\r\n}) => {\r\n const handleClick = React.useCallback(\r\n () => {\r\n toggleMenuState(false);\r\n },\r\n [toggleMenuState]\r\n );\r\n\r\n return (\r\n \r\n {children}\r\n \r\n );\r\n};\r\n\r\nconst mapDispatch = (\r\n dispatch: Dispatch\r\n): DispatchProps => ({\r\n toggleMenuState: dispatch.appStates.toggleMenuState\r\n});\r\n\r\nexport default connect(undefined, mapDispatch)(AppNavLink);\r\n","import React from 'react';\r\nimport { connect } from 'react-redux';\r\nimport { Collapse } from 'react-bootstrap';\r\nimport { RootState } from '../../../store';\r\nimport { appStateSelectors } from '../../../rematch-models/selector';\r\n\r\ninterface StateProps {\r\n open: boolean;\r\n}\r\n\r\nconst MenuWrapper: React.FC = ({\r\n children, open\r\n}) => (\r\n \r\n {children}\r\n \r\n);\r\n\r\nconst mapState = (\r\n state: RootState\r\n): StateProps => ({\r\n open: appStateSelectors.getMenuState(state.appStates)\r\n});\r\n\r\nexport default connect(mapState)(MenuWrapper);\r\n","import React from 'react';\r\nimport AppNavLink from './AppNavLink';\r\nimport MenuWrapper from './MenuWrapper';\r\n// import { MessageTotalUnread } from '../../shared/Entity';\r\n\r\nconst Menu: React.FC = React.memo(() => (\r\n \r\n));\r\n\r\nexport default Menu;\r\n","import React from 'react';\r\nimport {\r\n connect,\r\n useDispatch\r\n} from 'react-redux';\r\nimport {\r\n Route,\r\n RouteComponentProps,\r\n Switch\r\n} from 'react-router-dom';\r\nimport { RematchDispatch } from '@rematch/core';\r\nimport { Dispatch } from '../../store';\r\n// import {\r\n// startSignalR,\r\n// stopSignalR\r\n// } from '../../signalR';\r\nimport Header from '../../components/layout/Header';\r\nimport Loading from '../../components/shared/Loading';\r\nimport LockScreen from '../../components/global/LockScreen';\r\nimport Menu from '../../components/layout/Menu';\r\nimport { AppConfig } from '../../models/app-config';\r\nimport { UserPatient } from '../../models/user-patient';\r\nimport { formatDate } from '../../utils';\r\nimport {\r\n getAccountInfo as getAccountInfoAsync,\r\n getStatus,\r\n} from '../../apis/account';\r\nimport { getAppConfig } from '../../apis/emr-data';\r\n\r\nconst Appointment = React.lazy(() => import('./appointment'));\r\nconst Conference = React.lazy(() => import('./conference'));\r\nconst Dashboard = React.lazy(() => import('./dashboard'));\r\nconst InsuranceBilling = React.lazy(() => import('./insurance-billing'));\r\nconst LiveHelpRequest = React.lazy(() => import('./live-help-request'));\r\nconst MedicalInformation = React.lazy(() => import('./medical-information'));\r\nconst MedicationRefill = React.lazy(() => import('./medication-refill'));\r\nconst Message = React.lazy(() => import('./message'));\r\nconst PrintView = React.lazy(() => import('./print-view'));\r\n\r\ninterface DispatchProps {\r\n setAppConfig: (appConfig: Undefinable) => void;\r\n updateAccount: (userPatient: UserPatient) => void;\r\n}\r\n\r\nconst PatientPortal: React.FC = ({\r\n history,\r\n setAppConfig,\r\n updateAccount\r\n}) => {\r\n const [checkingAuthenticate, setCheckingAuthenticate] = React.useState(true);\r\n\r\n React.useEffect(\r\n () => {\r\n const getAccountInfo = async () => {\r\n try {\r\n const isAuthenticated = await getStatus();\r\n if (isAuthenticated) {\r\n const [info, appConfig] = await Promise.all([\r\n getAccountInfoAsync(),\r\n getAppConfig()\r\n ]);\r\n\r\n setAppConfig(appConfig);\r\n\r\n if (info) {\r\n updateAccount(info);\r\n setCheckingAuthenticate(false);\r\n }\r\n } else {\r\n history.replace(`/account/login?context=${history.location.pathname}`);\r\n }\r\n } catch (e) {\r\n window.alert(e);\r\n }\r\n };\r\n\r\n getAccountInfo();\r\n },\r\n [\r\n history,\r\n setAppConfig,\r\n updateAccount\r\n ]\r\n );\r\n\r\n // React.useEffect(\r\n // () => {\r\n // if (!checkingAuthenticate) {\r\n // startSignalR();\r\n\r\n // return () => {\r\n // stopSignalR();\r\n // };\r\n // }\r\n // },\r\n // [checkingAuthenticate]\r\n // );\r\n\r\n if (checkingAuthenticate) {\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 \r\n \r\n
    \r\n
    Checking!
    \r\n
    \r\n

    We are checking your permission. Please wait!

    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n );\r\n } else {\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\nconst Main = React.memo(() => {\r\n const { users: usersActions } = useDispatch();\r\n\r\n React.useEffect(\r\n () => {\r\n usersActions.getUsersAsync();\r\n },\r\n [usersActions]\r\n );\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 © {formatDate({ current: true, destFormat: 'YYYY' })} Solid Practice\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n );\r\n});\r\n\r\nconst mapDispatch = (dispatch: Dispatch): DispatchProps => ({\r\n setAppConfig: dispatch.appStates.setAppConfig,\r\n updateAccount: dispatch.accounts.update\r\n});\r\n\r\nexport default connect(undefined, mapDispatch)(PatientPortal);\r\n","export { default } from './PatientPortal';\r\n"],"sourceRoot":""}