{"version":3,"file":"LazyAddressPage.54f4dfd5d598b5b3.prod.js","mappings":"uKACA,IAAIA,EAEJA,EAAmB,MACjB,WAAAC,CAAYC,GACVA,EAAoBC,KAAKC,2BAA2BF,GACpDC,KAAKE,KAAOF,KAAKG,iBAAiBJ,EAAkB,KACnDC,KAAKI,QAASJ,KAAKK,QAASL,KAAKM,QAASN,KAAKO,cAAgBR,EAAkBS,IAAIC,KAAKC,IAC7F,CAEA,0BAAAT,CAA2BF,GACzB,IAAIY,EAAeC,EAAGC,EAAGC,EAAKC,EAE9B,IADAA,EAAoB,CAAC,EAAG,EAAG,EAAG,GACzBH,EAAIC,EAAI,EAAGC,EAAMf,EAAkBiB,OAAQH,EAAIC,EAAKF,IAAMC,EAC7DF,EAAgBZ,EAAkBa,GAClCG,EAAkBH,GAAKK,WAAWN,GAEpC,OAAOI,CACT,CAEA,gBAAAZ,CAAiBe,GACf,OAAIA,GAAU,EACL,GAEC,CAEZ,CAEA,oBAAAC,GACE,GAAInB,KAAKoB,sBAAuB,CAC9B,GAAIpB,KAAKqB,2BACP,OAAOrB,KAAKsB,wBACP,GAAItB,KAAKuB,uCACd,OAAOvB,KAAKwB,oCACP,GAAIxB,KAAKyB,gCACd,OAAOzB,KAAK0B,4BAEhB,CACF,CAEA,mBAAAN,GACE,IAAIO,EAKJ,OAJAA,GAAQ,EACH3B,KAAKK,SAAYL,KAAKM,UACzBqB,GAAQ,GAEHA,CACT,CAEA,wBAAAN,GAOE,OALIrB,KAAKI,QAAU,MAMrB,CAEA,qBAAAkB,GAEE,OADAtB,KAAKO,aAAeP,KAAKI,QAClBJ,KAAKI,QAAU,CACxB,CAEA,oCAAAmB,GAOE,OALIvB,KAAKI,QAAU,IAMrB,CAEA,iCAAAoB,GACE,IAAII,EAIJ,OAHAA,EAAanB,KAAKoB,MAAM7B,KAAKI,QAAU,KACvCJ,KAAKK,QAAUI,KAAKoB,OAAO7B,KAAKI,QAAuB,IAAbwB,GAAsB,KAChE5B,KAAKM,QAAUG,KAAKoB,MAAM7B,KAAKI,QAAuB,IAAbwB,EAAoC,IAAf5B,KAAKK,SAC5DL,KAAKI,QAAUwB,CACxB,CAEA,6BAAAH,GAOE,OALIzB,KAAKI,QAAU,GAMrB,CAEA,0BAAAsB,GACE,IAAIE,EAGJ,OAFAA,EAAanB,KAAKoB,MAAM7B,KAAKI,QAAU,KACvCJ,KAAKK,QAAUL,KAAKI,QAAuB,IAAbwB,EACvB5B,KAAKI,QAAUwB,CACxB,CAEA,SAAAE,GAGE,OADoB9B,KAAKE,MAAQF,KAAKI,QAAUJ,KAAKK,QAAU,GAAKL,KAAKM,QAAU,KAAON,KAAKO,aAAe,KAEhH,GAIFwB,EAAOC,QAAUnC,C,8DC1GjB,IAAIA,EAAkBoC,EAAaC,EAEnCA,EAAY,EAAQ,iDAEpBrC,EAAmB,EAAQ,yDAE3BoC,EAAc,MACZ,WAAAnC,CAAYqC,GACVnC,KAAKoC,YAAcD,EACnBnC,KAAKqC,gBAAkB,KACvBrC,KAAKsC,iBAAmB,KACxBtC,KAAKuC,WACLvC,KAAKwC,OACP,CAEA,QAAAD,GAGE,OADY,IAAIL,GACCK,SAASvC,KAAKoC,YACjC,CAEA,KAAAI,GAGE,OAFAxC,KAAKyC,yBACLzC,KAAK0C,SAAW1C,KAAK2C,kBACd3C,KAAK4C,UAAY5C,KAAK6C,kBAC/B,CAEA,sBAAAJ,GACE,IAAI1C,EAAmB+C,EAIvB,OAFAA,GADA/C,EAAoBC,KAAK+C,yBAAyB/C,KAAKoC,cACTpB,OAAS,EACvDhB,KAAKqC,gBAAkBtC,EAAkBiD,MAAM,EAAGF,GAC3C9C,KAAKsC,iBAAmBvC,EAAkBiD,MAAO,EAAIF,EAC9D,CAEA,wBAAAC,CAAyBX,GACvB,OAAOA,EAAYa,MAAM,iBAC3B,CAEA,eAAAN,GACE,IAAID,EAKJ,OAJAA,EAAW1C,KAAKkD,2BAA2BlD,KAAKqC,iBAC5CrC,KAAKmD,uBACPT,IAAuB,GAElBA,CACT,CAEA,gBAAAG,GACE,IAAID,EAKJ,OAJAA,EAAY5C,KAAKkD,2BAA2BlD,KAAKsC,kBAC7CtC,KAAKoD,wBACPR,IAAyB,GAEpBA,CACT,CAEA,0BAAAM,CAA2BnD,GACzB,IAAIsD,EAIJ,OAHAA,EAAa,IAAIxD,EAAiBE,IACvBoB,uBACSkC,EAAWvB,WAEjC,CAEA,kBAAAqB,GAGE,OADanD,KAAKoC,YAAYa,MAAM,KAEtC,CAEA,mBAAAG,GAGE,OADapD,KAAKoC,YAAYa,MAAM,KAEtC,CAEA,WAAAK,GACE,OAAOtD,KAAK0C,QACd,CAEA,YAAAa,GACE,OAAOvD,KAAK4C,SACd,GAIFb,EAAOC,QAAUC,C,sDCvFjB,IAAIC,EAEJA,EAAY,MACV,OAAAsB,CAAQpB,GACN,IAAIoB,EACJA,GAAU,EACV,IAEE,OADAxD,KAAKuC,SAASH,GACPoB,CACT,CAAE,MAAOC,GAGP,OAFkBA,EAClBD,GAAU,CAEZ,CACF,CAEA,QAAAjB,CAASH,GAGP,OAFApC,KAAK0D,uBAAuBtB,GAC5BpC,KAAK2D,sBAAsBvB,GACpBpC,KAAK4D,aAAaxB,EAC3B,CAEA,sBAAAsB,CAAuBtB,GAGrB,GADkB,oBAAoByB,KAAKzB,GAEzC,MAAM,IAAI0B,MAAM,uDAEpB,CAEA,qBAAAH,CAAsBvB,GAGpB,IADmB,wCAAwCyB,KAAKzB,GAE9D,MAAM,IAAI0B,MAAM,8BAEpB,CAEA,YAAAF,CAAaxB,GACX,IAAIrC,EAIJ,OAHAA,EAAoBqC,EAAYa,MAAM,kBACtCjD,KAAK+D,0BAA0BhE,GAC/BC,KAAKgE,2BAA2BjE,GACzBC,KAAKiE,8BAA8BlE,EAC5C,CAEA,yBAAAgE,CAA0BhE,GACxB,GAAiC,IAA7BA,EAAkBiB,OACpB,MAAM,IAAI8C,MAAM,uCAEpB,CAEA,0BAAAE,CAA2BjE,GAGzB,GADkBA,EAAkBiB,OAAS,EAE3C,MAAM,IAAI8C,MAAM,6CAEpB,CAEA,6BAAAG,CAA8BlE,GAC5B,GAAIA,EAAkBiB,OAAS,EAC7B,MAAM,IAAI8C,MAAM,8BAEpB,GAIF/B,EAAOC,QAAUE,C,6RCjEV,MAAMgC,EAAoD,IAAIC,KACnE,MAAMC,GAAY,OAAa,OAC/B,IAAAC,YAAU,KACRD,GAAWE,QAAQH,EAAM,GACxB,CAACC,EAAWD,GAAO,C,sWCRxB,MCIMI,EAAgB,UAAOC,IAAG;;ECE1BC,EAAiB,UAAOC,IAAG;;;;;;;EAS3BC,EAAc,UAAOD,IAAG,+DAAmD;;;;WAItE,IAAOE;;;;eAIH,EAAGC,UAASC,aACvB,2BAA2BA,cAAoBD;EAG7CE,EAAgB,UAAOL,IAAG,kEAAmD;;;;;;WAMxE,EAAGG,UAASC,aAAc,SAASA,cAAoBD;YACtD,EAAGA,UAASC,aAAc,SAASA,cAAoBD;;EAI7DG,EAAoB,UAAON,IAAG;;;;;;;EAS9BO,EAAiB,UAAOP,IAAG;;;;;;;EASjC,IAAYQ,GAAZ,SAAYA,GACV,2BACA,yBACA,gBACD,CAJD,CAAYA,IAAAA,EAAkB,KAa9B,MAAMC,EAAS,UAAOT,IAAG,0DAAc;;;;;YAK3B,EAAGU,gBAAiBA,GAAc;WACnC,EAAGC,cAAeA;YACjB,EAAGA,cAAeA;gBACd,EAAGC,gBAAiBA;eACrB,EAAGC,iBAAkBA,GAAe,aAAaA,OAAiBA;EAG3EC,EAAc,KACX,SAACL,EAAM,CAACG,WAAW,wBAAwBD,SAAU,IAAKD,YAAU,IAGvEK,EAAc,KAEhB,SAACN,EAAM,CACLG,WAAW,4BACXD,SAAU,GACVE,YAAa,GACbH,YAAY,IAKZM,EAA0B,KACvB,SAACP,EAAM,CAACG,WAAY,IAAOK,SAAUN,SAAU,GAAIE,YAAa,IAAKH,YAAY,IAGpFQ,EAAgB,EAAGC,OAAO,KAAeC,iBAC7C,SAACb,EAAc,WACb,SAAC,KAAU,CAACc,UAAU,QAAQC,KAAMH,EAAMI,KAAM,OAI9CC,EAAO,EACXrB,UACAC,UACAqB,WAEA,SAACnB,EAAiB,WAChB,SAACL,EAAW,CAACE,QAASA,EAASC,QAASA,EAAO,SAC5CqB,MAKDC,GACJ,SAACnB,EAAc,WACb,UDjH0B,EAAGgB,OAAO,OAC/B,SAAC1B,EAAa,CAAC8B,IAAI,mBAAmBC,IDR/C,y6BCQyEC,MAAON,KCgH7D,MAUbO,EAAiB,EAAG3B,UAASC,UAASe,WAExC,UAACd,EAAa,CAACF,QAASA,EAASC,QAASA,EAAO,WAC/C,SAACU,EAAW,KACZ,SAACC,EAAW,KACZ,SAACC,EAAuB,KACxB,SAACE,EAAa,CAACC,KAAMA,OAKrBY,EAAkB,EAAG5B,UAASC,UAASe,WAEzC,UAACd,EAAa,CAACF,QAASA,EAASC,QAASA,EAAO,WAC/C,SAACY,EAAuB,KACxB,SAACE,EAAa,CAACC,KAAMA,OAada,EAAiB,EAC5Bb,OACAf,UAAU,QACVD,UAAU,QACV8B,qBAAqBzB,EAAmB0B,QACxCT,WAEA,MAAMU,EAAW,CACf,CAAC3B,EAAmB4B,UAAWL,EAAgB,CAAEZ,OAAMhB,UAASC,YAChE,CAACI,EAAmB0B,SAAUJ,EAAe,CAAEX,OAAMhB,UAASC,YAC9D,CAACI,EAAmB6B,KAAMX,GAG5B,OACE,UAAC3B,EAAc,WACZoC,EAASF,GACTR,IAAQ,SAACD,EAAI,CAACC,KAAMA,EAAMtB,QAASA,EAASC,QAASA,MAEzD,C,4WCzKI,MAAMkC,EAAkB,EAAAC,GAAG;;;;;;;;;;;;;;wBAcV,IAAOC;qBACV;;aAER,IAAOC;;;;;oBAKA,IAAOC;;0BAED,IAAOF;eAClB,IAAOG;;;;;0BAKI,IAAOC;;;;eAIlB,IAAOC;;;;;;;;;;;;;;;;wBAgBE,IAAOC;;;;0BAIL,IAAOF;;;;;;;;;;;;;;;;;;;;;;;;;;iBA0BhB,IAAOD;;;;EAMXI,EAA8B,EAAAR,GAAG;;;;wBAItB,IAAOS;;aAElB,IAAOP;;;;;;;;;;SAUX;;;EAK2C,EAAAF,GAAG;;;;;;;wBAO/B,IAAOU;;;;;;;;;;;;;;EAgBE,EAAAV,GAAG;IAChCD;IACAS;+hCCtIJ,MAAMG,EAAiB,CAAC,EAUXC,EAAoC,IAAG;;;;;;;;;;;;;;;;;;;;;;;;;6ICF7C,SAASC,GAAQ,kBAAEC,EAAiB,WAAEC,IAC3C,OACE,UAAC,IAAU,eAXoB,sBAa7BC,UAAWD,EACXE,OAAQ,IAAiBC,cACzBC,QAASL,EAAiB,WAE1B,SAAC,KAAU,CAAC/B,KAAM,KAAeqC,YAfnB,SAmBpB,C,ICzBYC,E,+EAAZ,SAAYA,GACV,oBACA,4DACA,4DACA,oBACA,gCACA,4BACA,qBACD,CARD,CAAYA,IAAAA,EAA+B,K,0HCApC,MAAMC,EACX,qG,ICGUC,E,q8BCiBRC,EAAyB,SAAUC,GAEnC,SAASD,IACL,IAAIE,EAAmB,OAAXD,GAAmBA,EAAOE,MAAM5I,KAAM6I,YAAc7I,KAqIhE,OApIA2I,EAAMG,MAAQ,CACVC,OAAqC,MAA5BJ,EAAMxE,MAAM6E,cAAwBL,EAAMxE,MAAM6E,aAAaD,SAAW,EACjFE,aAAcN,EAAMO,0BAExBP,EAAMQ,eAAiB,IAAUC,SACjCT,EAAMU,MAAQ,KACdV,EAAMW,UAAY,KAClBX,EAAMY,YAAc,CAChBF,MAAO,SAAUG,GACbb,EAAMU,MAAQG,EACd,IAAuBb,EAAMxE,MAAMsF,WAAY,WAAYD,EAC/D,EACAF,UAAW,SAAUE,GAAO,OAAQb,EAAMW,UAAYE,CAAM,GAEhEb,EAAMe,gBAAkB,SAAUC,GAC9B,IAAIC,EAAKjB,EAAMxE,MAAO0F,EAAOD,EAAGC,KAAMC,EAAKF,EAAGH,WAAYA,OAAoB,IAAPK,EAAgB,CAAC,EAAIA,EAAIC,EAAKH,EAAGZ,aAAcA,OAAsB,IAAPe,EAAgB,CAAC,EAAIA,EACtJC,EAAKrB,EAAMG,MAAOC,EAASiB,EAAGjB,OAAQE,EAAee,EAAGf,aACxDgB,EAAgBN,EAAUM,cAAeC,EAAcP,EAAUO,YACjEC,EAAKV,EAAWW,aAAcA,OAAsB,IAAPD,EAAgB,MAAQA,EAAIE,EAAKZ,EAAWa,YAAaA,OAAqB,IAAPD,EAAgB,YAAcA,EAClJE,EAAmBtB,EAAeN,EAAMxE,MAAMqG,mBAAmBvB,GAAgB,GAEjFwB,EAAmB1B,GAAUwB,EAAmBA,EAAmBD,EAGnEI,EAAa3B,EACXY,EAAUgB,MACVJ,IAAqB5B,EAAMxE,MAAMyG,aAAe,GAAKjB,EAAUgB,OAKrE,OAJId,IACAb,EAAaa,MAAO,EACpBJ,EAAWI,MAAO,GAEd,gBAAoB,MAAS,QAAS,CAAEgB,WAAW,EAAOC,cAAc,EAAO/B,OAAQA,EAAQgC,SAAU,KAASC,aAAehC,EAAc,CAAEiC,UAAW,IAAWtB,EAAUsB,UAAWjC,EAAaiC,WAAYC,cAAevC,EAAMwC,yBAA0BC,iBAAkB,IAAW,KAAwBpC,EAAaoC,kBAAmBC,UAAW1C,EAAM2C,qBAAsBC,SAAU5C,EAAM6C,sBACpZ,gBAAoB,MAAY,QAAS,CAAEpB,aAAcA,EAAcnC,SAAUU,EAAMxE,MAAM8D,UAAYwB,EAAY,CAAEgC,SAAU9C,EAAMY,YAAYF,MAAOqC,SAAU/B,EAAUgC,kBAAmBC,QAASjD,EAAMkD,iBAAkBC,UAAWnD,EAAMoD,wBAAwB9B,GAAgB+B,QAASrD,EAAMsD,sBAAsB/B,GAAcI,YAAaG,EAAkByB,MAAOxB,KACpX,gBAAoB,MAAO,CAAEoB,UAAW7B,EAAe+B,QAAS9B,GAAeP,EAAUwC,UACjG,EACAxD,EAAMyD,WAAa,WAEfC,uBAAsB,WACC,MAAf1D,EAAMU,OACNV,EAAMU,MAAMiD,kBAAkB,EAAG3D,EAAMU,MAAM6C,MAAMlL,OAE3D,GACJ,EACA2H,EAAMkD,iBAAmB,SAAUU,GAC/B5D,EAAMyD,aAEDzD,EAAMxE,MAAMqI,eACb7D,EAAM8D,SAAS,CAAE1D,QAAQ,IAE7B,IAAuBJ,EAAMxE,MAAMsF,WAAY,UAAW8C,EAC9D,EACA5D,EAAM+D,iBAAmB,SAAUC,EAAMJ,GACrC,IAAIK,EACCjE,EAAMxE,MAAM0I,eAQM,MAAflE,EAAMU,OACNV,EAAMU,MAAMyD,OAEhBF,GAAgB,IAVG,MAAfjE,EAAMU,OACNV,EAAMU,MAAM0D,QAEhBpE,EAAMyD,aACNQ,GAAgB,QASaI,IAA7BrE,EAAMxE,MAAM8E,aACZN,EAAM8D,SAAS,CACX1D,OAAQ6D,EACR3D,aAAc0D,IAKlBhE,EAAM8D,SAAS,CAAE1D,OAAQ6D,IAE7B,KAAiBjE,EAAMxE,MAAM8I,aAAcN,EAAMJ,EACrD,EACA5D,EAAMwC,yBAA2B,SAAUyB,GACvC,OAAOP,uBAAsB,WACN,MAAf1D,EAAMU,OAAiBV,EAAMU,QAAU6D,SAASC,eAEhDxE,EAAM8D,SAAS,CAAE1D,QAAQ,IAE7B,IAAuBJ,EAAMxE,MAAM6E,aAAc,gBAAiB4D,EACtE,GACJ,EACAjE,EAAM2C,qBAAuB,SAAU8B,GAG/BzE,EAAMxE,MAAMyG,cAAgBjC,EAAMW,WAClCX,EAAMW,UAAU+D,SAAS,IAAI,GAEjC,IAAuB1E,EAAMxE,MAAM6E,aAAc,YAAaoE,EAClE,EACAzE,EAAM6C,oBAAsB,SAAU4B,GAEX,MAAnBzE,EAAMW,WACNX,EAAMW,UAAUgE,2BAEpB,IAAuB3E,EAAMxE,MAAM6E,aAAc,WAAYoE,EACjE,EACAzE,EAAMoD,wBAA0B,SAAUwB,GACtC,OAAO,SAAUC,GACb,IAAIC,EAAQD,EAAIC,MACZA,IAAU,MAAeA,IAAU,MAChB,MAAf9E,EAAMU,OACNV,EAAMU,MAAMyD,OAEhBnE,EAAM8D,SAAS,CAAE1D,QAAQ,KAEpBJ,EAAMxE,MAAMqI,eACjBiB,IAAU,MACVA,IAAU,MACVA,IAAU,MACV9E,EAAM8D,SAAS,CAAE1D,QAAQ,IAEzBJ,EAAMG,MAAMC,QACZ,KAAiBwE,EAAwBC,GAE7C,IAAuB7E,EAAMxE,MAAMsF,WAAY,YAAa+D,EAChE,CACJ,EACA7E,EAAMsD,sBAAwB,SAAUyB,GACpC,OAAO,SAAUF,GACT7E,EAAMG,MAAMC,QACZ,KAAiB2E,EAAsBF,GAE3C,IAAuB7E,EAAMxE,MAAMsF,WAAY,UAAW+D,EAC9D,CACJ,EACO7E,CACX,CAsDA,OA9LA,QAAUF,EAASC,GAyInBD,EAAQW,OAAS,WACb,OAAOX,CACX,EACAA,EAAQkF,UAAUC,OAAS,WACvB,IAAIhE,EAEAE,EAAK9J,KAAKmE,MAA2F0J,GAAzE/D,EAAG7B,SAAuB6B,EAAGL,WAA2BK,EAAGd,cAA0B,QAAOc,EAAI,CAAC,WAAY,aAAc,kBAC3J,OAAQ,gBAAoB9J,KAAKmJ,gBAAgB,QAAS,CAAC,EAAG0E,EAAW,CAAEC,mBAAoBlE,EAAK5J,KAAKmE,MAAM8E,aAAeW,QAA+BA,OAAKoD,GAAaC,aAAcjN,KAAK0M,iBAAkBlD,IAAKxJ,KAAKuJ,YAAYD,UAAWyE,SAAU/N,KAAK0J,kBACxQ,EACAjB,EAAQkF,UAAUK,mBAAqB,SAAUC,EAAYC,GACzD,IACItE,EAAIE,EADJnB,EAAQ3I,UAGoBgN,IAA5BhN,KAAKmE,MAAM8E,cAA8BjJ,KAAKmE,MAAM8E,eAAiBjJ,KAAK8I,MAAMG,cAChFjJ,KAAKyM,SAAS,CAAExD,aAAcjJ,KAAKmE,MAAM8E,gBAEnB,IAAtBjJ,KAAK8I,MAAMC,SAAyC,IAArBmF,EAAUnF,QAGzCoF,YAAW,WACPxF,EAAMyF,oCACV,GAAqGtE,OAAjGA,EAAwC,QAAlCF,EAAK5J,KAAKmE,MAAM6E,oBAAiC,IAAPY,OAAgB,EAASA,EAAGyE,oBAAoDvE,EAAK,KAAQwE,aAAaD,oBAE9JrO,KAAK8I,MAAMC,SAAWmF,EAAUnF,QAA4B,MAAlB/I,KAAKsJ,WAC/CtJ,KAAKsJ,UAAUgE,0BAEvB,EACA7E,EAAQkF,UAAUzE,uBAAyB,WAEvC,YAAgC8D,IAA5BhN,KAAKmE,MAAM8E,aACJjJ,KAAKmE,MAAM8E,kBAEsB+D,IAAnChN,KAAKmE,MAAMoK,oBACTvO,KAAKmE,MAAMoK,oBAGX,IAEf,EACA9F,EAAQkF,UAAUS,mCAAqC,WACnD,IAAIxE,EACA4E,OAAgExB,IAA1BhN,KAAKmE,MAAMsK,YAAwD,OAA5BzO,KAAK8I,MAAMG,eAA0BjJ,KAAKmE,MAAMuK,cAC1G,OAAnB1O,KAAKsJ,WAAsBkF,GAC3BxO,KAAKsJ,UAAUqF,cAA8C/E,OAA/BA,EAAK5J,KAAKmE,MAAM8E,cAA8CW,EAAK5J,KAAK8I,MAAMG,aAEpH,EACAR,EAAQmG,YAAc,IAAqB,WAC3CnG,EAAQ6F,aAAe,CACnBzB,eAAe,EACfhD,MAAM,EACN2C,eAAe,EACf5B,cAAc,GAEXnC,CACX,CAhM4B,CAgM1B,kBDjNF,SAAYD,GACV,yBACA,oCACD,CAHD,CAAYA,IAAAA,EAAY,KAKjB,MAAMqG,EAAmBC,IAC9B,MAAOC,EAAOC,IAAgB,IAAAC,UAAqC,OAC5DC,EAAsBC,IAC3B,IAAAF,UAAwD,OACnDG,EAAgBC,IAAoB,IAAAJ,UACzC,MAGIK,GAAS,OAAa,MAkB5B,OAhBA,IAAAjL,YAAU,KACR,GAAIiL,EAAQ,CACV,MAAM,uBAAEC,EAAsB,iBAAEC,EAAgB,KAAEC,GAASH,EAE3D,GADAN,EAAaS,IACRL,GAAkBN,GAAYY,SAASlH,EAAamH,QAAS,CAChE,MAAMC,EAAgBJ,IACtBH,EAAiBO,EACnB,CAEA,IAAKV,GAAwBJ,GAAYY,SAASlH,EAAaqH,cAAe,CAC5E,MAAMC,EAAsBP,IAC5BJ,EAAuBW,EACzB,CACF,IACC,CAACZ,EAAsBE,EAAgBN,EAAYQ,IAE/C,CACLQ,oBAAqBZ,EACrBO,KAAMV,EACNa,cAAeR,EAChB,E,+cElCI,MAAMW,EACX,CAACC,EAAcC,IAAkDC,GAC/DA,EAAQC,MACN,EAAAC,EAAA,GAAaJ,IACb,EAAAK,EAAA,IAAQC,KAAWA,KACnB,EAAAC,EAAA,IAAWD,IAAiB,SAAAE,EAAA,GAAKP,EAASK,IAAOH,MAAK,EAAAM,EAAA,GAAUP,EAAQC,MCTzDO,EDSmE,GCR7E,EAAAL,EAAA,IAAO,SAAUM,EAAGC,GAAS,OAAOF,GAASE,CAAO,QADxD,IAAcF,CDSwE,KEKvFG,GAAqB,aAAOpI,EAAQW,UAA8B;IACpE;EAGE0H,GAAc,aAAO,MAAS;;;oBAGhB,IAAOnJ;;;;eAIZ,IAAOhC;;;;oBAIF,IAAOgC;eACZ,IAAOhC;;;iBAGL,IAAOA;;;;aAIX,IAAOA;;EAWdoL,EAAkB,EAAGC,OAAMC,eAC/B,GAAGD,MAASC,I,ICjCFC,E,gJAWL,SAASC,IAAY,oBAAEC,EAAmB,WAAEpJ,IACjD,OACE,iCACE,SAAC,KAAQ,CAACqJ,MAAO,KAAcC,WAAW,SAASC,KAAK,WAAU,SAC/DvJ,EAAakJ,EAAUM,oBAAsBN,EAAUO,gBAE1D,SAAC,IAAa,WACZ,SAACC,GAAY,CACXC,gCAAiC,CAACrJ,EAAgCsJ,SAClEC,aAAc,CAAE/I,MAAO,CAAEgJ,aAAa,IACtCjI,MAAI,EACJkI,SAAUX,EACV9G,YAAa4G,EAAUc,wBAKjC,EA5BA,SAAYd,GACV,oCACA,oCACA,0CACD,CAJD,CAAYA,IAAAA,EAAS,KA8BrB,MAAMQ,IAAe,cDiB2D,EAC9EK,WACAlI,OACAoI,eACAJ,eACA,aAAcK,EAAY,wBAC1BjH,YACAX,cAAc,oBACdqH,kCACAQ,wCAEA,MAAM,aAAEC,EAAY,YAAEC,GE5Da,EACnCC,EACAH,KAEA,MAAM,oBAAErC,GAAwBjB,EAAgB,CAACrG,EAAaqH,gBACvDuC,EAAcG,IAAmB,IAAAtD,UAAgC,KACjEuD,IAAS,IAAAvD,UAAS,IAAIwD,EAAA,EAAwB,KAsDrD,OApDA,IAAApO,YAAU,KACR,GAAIyL,EAAqB,CACvB,MAAM4C,EAAqBpC,GAClB,IAAIqC,SAAgCC,IACzC9C,EAAoB+C,oBAClB,CACEC,sBAAuBX,EACvB9I,MAAOiH,EACPyC,MAAOT,IAERU,IACCJ,EACEI,EACIA,EAAQxS,KACN,EACEyS,WACAC,uBAAyBC,YAAWC,kBACpCL,YAEO,CACL/B,KAAMmC,EACNE,QAASJ,EACThC,UAAWmC,EACX7B,KAAMwB,EAAM,OAIlB,GACL,GAEJ,IAGCO,EAAed,EAClBrC,KAAKJ,EAAa,IAAK2C,IACvBa,WAAWC,GAASjB,EAAgBiB,KACvC,MAAO,KACLF,EAAaG,aAAa,CAE9B,CACgB,GACf,CACD3D,EACA0C,EACAF,EACAH,IAOK,CAAEC,eAAcC,YAJFnG,IACnBsG,EAAMgB,KAAKtH,EAAM,EAGiB,EFAEwH,CACpC/B,EACAQ,GAEIwB,EGzE0B,CAAC9B,IACjC,MAAM,cAAEjC,GAAkBf,EAAgB,CAACrG,EAAamH,SAoCxD,OAnCwB,IAAAiE,cACtBC,MAAOR,IACL,GAAqB,MAAjBzD,EACF,OAAO,KAET,MAAM,mBAAEkE,EAAkB,SAAEC,EAAQ,kBAAEC,SAC7B,IAAIrB,SAAgDC,IACzDhD,EAAcqE,WACZ,CACEC,OAAQ,CAAC,qBAAsB,WAAY,qBAC3Cb,YAEDc,GAAWvB,EAAQuB,IACrB,KACI,CAAC,GAEJ,KAAEC,EAAI,QAAEC,EAAO,OAAEC,EAAM,WAAEC,EAAU,MAAEzL,EAAK,OAAE0L,EAAM,cAAEC,EAAa,aAAEC,GCVxC,EACrCC,EACA9C,EAA6B,CAAC,KAE9B,MAAM+C,EAAgB,CACpB,CAAEC,IAAK,UAAWC,UAAW,WAC7B,CAAED,IAAK,SAAUC,UAAW,+BAC5B,CAAED,IAAK,QAASC,UAAW,+BAC3B,CAAED,IAAK,OAAQC,UAAW,YAC1B,CAAED,IAAK,SAAUC,UAAW,SAC5B,CAAED,IAAK,eAAgBC,UAAW,iBAClC,CAAED,IAAK,gBAAiBC,UAAW,kBACnC,CAAED,IAAK,aAAcC,UAAW,gBAGlC,OAAOH,EAAkBI,QAEvB,CAACC,GAAkCC,aAAYlC,QAAOmC,gBACpD,MAAMC,EAAUP,EAAcQ,MAAK,EAAGN,eAAgB/B,EAAMrD,SAASoF,KACrE,IAAKK,EACH,OAAOH,EAIT,MAAM9I,EAAQ2F,EAAasD,EAAQN,MAAM/C,YAAcoD,EAAYD,EACnE,MAAO,IAAKD,EAAK,CAACG,EAAQN,KAAM3I,EAAO,GAEzC,CAAC,EACF,EDjBKmJ,CAAwBvB,GAAsB,GAAIjC,GAEpD,MAAO,CACLD,QAASoC,GAAqB,GAC9BI,OACAC,UACAC,SACA5R,SAAUqR,GAAUuB,UAAUC,OAAS,EACvC3S,UAAWmR,GAAUuB,UAAUE,OAAS,EACxCjB,aACAzL,QACA0L,SACAC,gBACAC,eACD,GAEH,CAAC9E,EAAeiC,GAEI,EHoCE4D,CAAmB5D,GACrC6D,GAAkB,IAAAC,QAAuB,OACxCC,EAAaC,IAAkB,IAAA5G,aAC/B6G,EAAgBC,IAAqB,IAAA9G,WAAS,IAErD,IAAA+G,kBAAgB,KACdH,EAAe5D,EAAa,GAC3B,CAACA,IAEJ,MAuCMgE,EAAgBH,GAA0C,IAAxB1D,EAAapR,QAAgC,KAAhB4U,EAErE,OACE,gBAAKpM,IAAKkM,EAAe,UACvB,SAAC7E,EAAkB,CACjB5F,UAAWA,EACXpB,KAAMA,EACNJ,WAAY,CACV,aAAcyI,EACdgE,GAAI,gBACJC,OAAO,EACPC,OAAQ,KACNL,GAAkB,EAAM,EAE1BnK,QAAS,KACPmK,GAAkB,EAAK,EAEzBzL,eAEFE,mBAlCsB0B,GAA+B6E,EAAgB7E,GAmCrEmK,aA3DkD,CACtDf,GACEgB,cAAaC,gBAGb,SAACzF,EAAW,CAEV3K,KAAMmP,EAAStE,KACfwF,OAAQD,EAAUC,OAAM,cACZ,eACZvO,SAAUsO,EAAUtO,SACpBpC,MAAM,SAAC,KAAU,CAACG,KAAM,KAAeyQ,0BACvCC,MAAOpB,EAASrE,UAChB0F,YAAaL,EACbM,KAAK,UARA7F,EAAgBuE,IAsDrBuB,MAAOzE,EACPnF,aA1CoB4G,MAAO3H,IAC/B,MAAM4K,QAAgBnD,EAAgBzH,EAAMmH,SAC5CwC,EAAe9E,EAAgB7E,IAC/B6F,EAAS+E,EAAQ,EAwCbC,cArCiB7K,IACrB,GAAI3D,EAAc1E,KAAKqI,GAAQ,CAC7B,MAAOxJ,EAAUE,IKjHKoU,ELiHoB9K,EKhH1C3D,EAAc1E,KAAKmT,GACdA,EAAOC,MAAM,KAAKzW,KAAK8U,GAAa4B,OAAOjW,WAAWqU,EAAS6B,QAAQ,SAAU,OAEnF,IL8GHpF,EAAS,CACPH,QAAS,GAAGlP,MAAaE,IACzBF,WACAE,aAEJ,MACEyP,EAAYnG,GACZ2J,EAAe3J,GKzHM,IAAC8K,CL0HxB,EA2BIhO,aAAc,CACZD,OAAQkN,EACRmB,SAAS,EACTb,UAAW,CACTc,gBAAiB,CACfC,kBAAmB,aAGvBC,WAAa/N,GAAQA,GAAKgO,aAAa,cAAe,iCAExD7M,MAAOiL,KAGZ,ICrH6C;;MAE1C;;;;MAIA;;;;MAIA;;oIK5CC,SAAS6B,IAAa,QAC3B7F,EAAO,YACP8F,EAAW,oBACXC,EAAmB,WACnBC,IAEA,OAAOhG,GACL,SAAC,KAAG,CAAC2D,IAAK3D,EAAQlP,SAAU8S,IAAK5D,EAAQhP,UAAWiV,gBAAiBF,KAErE,SAAC,KAAK,CAACD,YAAaA,EAAaE,WAAYA,GAEjD,CCCO,MAAME,GAAc,EAAGC,YAAWH,iBACvC,MAAMI,GAAa,OAAa,MAC1B5T,GAAY,OAAa,OAEzB,eAAE6T,EAAc,WAAEC,IAAe,UAEhCC,Gf8BF,SAA8CC,GAC7C,MAAMC,EAAU,IAAIzQ,KAAmBwQ,GACvC,OAAO,IAAkGvQ,EAAmCwQ,EAC9I,CejCqBC,IAElB1G,EAAS2G,IAAiB,IAAAtJ,YAC3BqG,GAAW,IAAAK,QAAO,CACtBJ,IAAK,EACLC,IAAK,KAGP,OAAsB,KAAmBgD,mBAAoB,CAC3DC,WAAYV,IAGd,MA0BMhQ,GAAoB,QACxB8L,UACE,GAAe,MAAXjC,EAAiB,OACrB,MAAM,KAAE8G,SAAeP,EAAe,CACpCQ,UAAW,CACTzC,GAAI6B,EACJzC,SAAU,CACR1D,QAASA,EAAQA,QACjB+C,kBAAmB/C,EACnBgH,WAAW,EACXlW,SAAU4S,EAASuD,QAAQtD,IAC3B3S,UAAW0S,EAASuD,QAAQrD,QAK5BsD,EAAaJ,GAAMK,0BAA0BzD,UAAU0D,eAEvD5U,GAAW6U,MAAM,KAAoBC,6BAA8B,CACvET,WAAYV,KAGdC,GAAYmB,SAAS,aAAapB,KAAae,EAAa,UAAY,iBAAkB,CACxF3B,SAAS,GACT,GAEJ,CAAC/S,EAAW4T,EAAYG,EAAgBvG,EAASmG,GACjD,MAGF,OACE,iCACE,SAAC,IAAO,CACNqB,cAAe,KAAgBC,QAC/BtB,UAAWA,EACXH,WAAYA,EACZM,WAAYA,KAEd,SAAC,IAAW,WACV,SAAC,IAAS,CACRoB,SAAS,SAACxR,EAAO,CAACC,kBAAmBA,EAAmBC,aAAc4J,IACtE2H,gBAAc,EACdC,aACE,SAACrI,GAAW,CAACC,oBAxDMqI,IAC3B,GAAuB,MAAnBA,EAAyB,OAE7B,MAAMC,EAAc,IAAKD,UAClBC,EAAYpF,OAEnBiE,EAAcmB,GACdpE,EAASuD,QAAQtD,IAAMmE,EAAYhX,SACnC4S,EAASuD,QAAQrD,IAAMkE,EAAY9W,UAEnCwB,GAAW6U,MAAM,KAAoBU,0BAA0B,EA8CA3R,aAAc4J,IAEvEgI,cACE,SAACnC,GAAY,CACX7F,QAASA,EACT8F,YAAaO,GAAgB4B,sBAC7BlC,oBA3EiBmC,IAC3BxE,EAASuD,QAAQtD,IAAMuE,EAAOvE,MAC9BD,EAASuD,QAAQrD,IAAMsE,EAAOtE,MAG5B5D,GACA0D,EAASuD,QAAQtD,MAAQ3D,EAAQlP,UACjC4S,EAASuD,QAAQrD,MAAQ5D,EAAQhP,WAEjCwB,GAAW6U,MAAM,KAAoBc,8BACvC,EAkEUnC,WAAYA,UAMvB,EAGH,K,0eCxHA,MAAMoC,EAAqB,UAAOtV,IAAG;;;;EAM/BuV,EAAe,UAAOvV,IAAG;;;;EAqBlBwV,EAAgC,EAC3C7B,UACA8B,WAAW,GACXC,kBACAC,gBAEA,MAAMC,GAAoBC,MAAMC,QAAQL,GAAYA,EAAW,CAACA,IAAW9J,QACxEoK,GAAWA,IAERC,GAAY,OAAa,OACxBla,EAAKma,IAAU,IAAA1L,eAAsCjC,GACtD4N,GAAkB,IAAAjF,QAA8B,MAEhDkF,GAAgB,IAAAlF,QAAO0C,GAyD7B,OAvDA,IAAAhU,YAAU,KACR,GAAW,MAAP7D,GAAkC,MAAnBka,GAAWjL,MAA2C,MAA3BmL,EAAgB/B,QAC5D,OAGF,MAAMiC,EAAS,IAAIJ,EAAUjL,KAAKsL,IAAIH,EAAgB/B,QAASgC,EAAchC,SAE7E8B,EAAOG,EAAO,GACb,CAACta,EAAKka,EAAWE,KAEpB,IAAAvW,YAAU,KACJgU,IAAYwC,EAAchC,SAC5BrY,GAAKwa,WAAW3C,EAClB,GACC,CAAC7X,EAAK6X,KAIT,IAAAhU,YAAU,KACR,GAAiB,MAAbgW,EACF,MAAO,OAIT,MAAMY,EAAWza,GAAK0a,YAAY,QAAQ,KACxC,MAAMpB,EAAStZ,EAAI2a,YACfrB,GACFO,EAAUP,EACZ,IAGF,MAAO,KACDmB,GACFP,GAAWjL,KAAKlD,MAAM6O,eAAeH,EACvC,CACD,GACA,CAACza,EAAKka,EAAWL,KAEpB,IAAAhW,YAAU,KACR,GAAuB,MAAnB+V,EACF,MAAO,OAET,MAAMa,EAAWza,GAAK0a,YAAY,kBAAkB,KAClD,MAAMpB,EAAStZ,EAAI2a,YACfrB,GACFM,EAAgBN,EAClB,IAEF,MAAO,KACDmB,GACFP,GAAWjL,KAAKlD,MAAM6O,eAAeH,EACvC,CACD,GACA,CAACza,EAAKka,EAAWN,KAGlB,UAACJ,EAAkB,YACjB,SAACC,EAAY,CAACzQ,IAAKoR,EAAiB3P,UAAU,mBAAkB,8BAC7DqP,EAAiB9Z,KAAI,CAAC6a,EAAOza,IAAM,eAAmBya,EAAO,CAAExG,IAAKjU,EAAGJ,YAEzE6X,EAAQiD,qBACP,SAAC,IAAc,CACbnV,KAAMkS,EAAQkD,mBACd5U,mBAAoB0R,EAAQ1R,uBAInC,E,0DC7GI,MAED6U,EAAa,UAAO9W,IAAG;;;EAahBqW,EAAM,EAAGxF,MAAKC,MAAKqC,kBAAiB4D,UAAS,EAAOC,YAAW,MAC1E,MAAMrD,GAAU,IAAAsD,UACd,KAAM,IACD,KACH7B,OAAQ,CAAEvE,MAAKC,OACfoG,WAAYF,EACZG,KAAMJ,EAAS,GAAK,EACpBK,aAAcL,KAEhB,CAAClG,EAAKC,EAAKiG,EAAQC,IAGrB,OACE,UAACF,EAAU,eA5BY,cA4Ba,WAClC,SAACtB,EAAS,CAACG,UAAYP,GAAWjC,IAAkBiC,GAASzB,QAASA,KACpEoD,IACA,SAAC,IAAc,CACbtV,KAAMuV,EAAW,GAAK,4BACtB7W,QAAQ,QACRC,QAAQ,YAIf,C","sources":["webpack://aurora-new-frontend/./node_modules/coordinate-parser/coordinate-number.js","webpack://aurora-new-frontend/./node_modules/coordinate-parser/coordinates.js","webpack://aurora-new-frontend/./node_modules/coordinate-parser/validator.js","webpack://aurora-new-frontend/./packages/common/packages/analytics/src/hook.ts","webpack://aurora-new-frontend/./packages/common/packages/core/src/location-map-pin/location-map-pin.svg","webpack://aurora-new-frontend/./packages/common/packages/core/src/location-map-pin/location-map-pin.tsx","webpack://aurora-new-frontend/./packages/common/packages/core/src/centering-guide/centering-guide.tsx","webpack://aurora-new-frontend/./packages/common/packages/core/src/input/base.tsx","webpack://aurora-new-frontend/./packages/lead-capture/src/pages/address/address.generated.tsx","webpack://aurora-new-frontend/./packages/lead-capture/src/pages/address/components/buttons.tsx","webpack://aurora-new-frontend/./packages/common/packages/google-map/src/address-autocomplete/types.ts","webpack://aurora-new-frontend/./packages/common/packages/core/src/utils/regex.ts","webpack://aurora-new-frontend/./packages/common/packages/google-map/src/use-google-map-api/use-google-map-api.ts","webpack://aurora-new-frontend/./node_modules/@blueprintjs/select/lib/esm/components/select/suggest.js","webpack://aurora-new-frontend/./packages/common/packages/google-map/src/address-autocomplete/autocomplete-operator.ts","webpack://aurora-new-frontend/./node_modules/rxjs/dist/esm5/internal/operators/skip.js","webpack://aurora-new-frontend/./packages/common/packages/google-map/src/address-autocomplete/address-autocomplete.tsx","webpack://aurora-new-frontend/./packages/lead-capture/src/pages/address/components/left-content.tsx","webpack://aurora-new-frontend/./packages/common/packages/google-map/src/address-autocomplete/use-google-autocomplete.ts","webpack://aurora-new-frontend/./packages/common/packages/google-map/src/address-autocomplete/use-get-place-details.ts","webpack://aurora-new-frontend/./packages/common/packages/google-map/src/address-autocomplete/utils.ts","webpack://aurora-new-frontend/./packages/common/packages/core/src/utils/parse-lat-lng.ts","webpack://aurora-new-frontend/./packages/lead-capture/src/pages/address/components/right-content.tsx","webpack://aurora-new-frontend/./packages/lead-capture/src/pages/address/address-page.tsx","webpack://aurora-new-frontend/./packages/common/packages/google-map/src/google-map/google-map.tsx","webpack://aurora-new-frontend/./packages/lead-capture/src/shared-components/map.tsx"],"sourcesContent":["// Generated by CoffeeScript 2.5.1\nvar CoordinateNumber;\n\nCoordinateNumber = class CoordinateNumber {\n constructor(coordinateNumbers) {\n coordinateNumbers = this.normalizeCoordinateNumbers(coordinateNumbers);\n this.sign = this.normalizedSignOf(coordinateNumbers[0]);\n [this.degrees, this.minutes, this.seconds, this.milliseconds] = coordinateNumbers.map(Math.abs);\n }\n\n normalizeCoordinateNumbers(coordinateNumbers) {\n var currentNumber, i, j, len, normalizedNumbers;\n normalizedNumbers = [0, 0, 0, 0];\n for (i = j = 0, len = coordinateNumbers.length; j < len; i = ++j) {\n currentNumber = coordinateNumbers[i];\n normalizedNumbers[i] = parseFloat(currentNumber);\n }\n return normalizedNumbers;\n }\n\n normalizedSignOf(number) {\n if (number >= 0) {\n return 1;\n } else {\n return -1;\n }\n }\n\n detectSpecialFormats() {\n if (this.degreesCanBeSpecial()) {\n if (this.degreesCanBeMilliseconds()) {\n return this.degreesAsMilliseconds();\n } else if (this.degreesCanBeDegreesMinutesAndSeconds()) {\n return this.degreesAsDegreesMinutesAndSeconds();\n } else if (this.degreesCanBeDegreesAndMinutes()) {\n return this.degreesAsDegreesAndMinutes();\n }\n }\n }\n\n degreesCanBeSpecial() {\n var canBe;\n canBe = false;\n if (!this.minutes && !this.seconds) {\n canBe = true;\n }\n return canBe;\n }\n\n degreesCanBeMilliseconds() {\n var canBe;\n if (this.degrees > 909090) {\n canBe = true;\n } else {\n canBe = false;\n }\n return canBe;\n }\n\n degreesAsMilliseconds() {\n this.milliseconds = this.degrees;\n return this.degrees = 0;\n }\n\n degreesCanBeDegreesMinutesAndSeconds() {\n var canBe;\n if (this.degrees > 9090) {\n canBe = true;\n } else {\n canBe = false;\n }\n return canBe;\n }\n\n degreesAsDegreesMinutesAndSeconds() {\n var newDegrees;\n newDegrees = Math.floor(this.degrees / 10000);\n this.minutes = Math.floor((this.degrees - newDegrees * 10000) / 100);\n this.seconds = Math.floor(this.degrees - newDegrees * 10000 - this.minutes * 100);\n return this.degrees = newDegrees;\n }\n\n degreesCanBeDegreesAndMinutes() {\n var canBe;\n if (this.degrees > 360) {\n canBe = true;\n } else {\n canBe = false;\n }\n return canBe;\n }\n\n degreesAsDegreesAndMinutes() {\n var newDegrees;\n newDegrees = Math.floor(this.degrees / 100);\n this.minutes = this.degrees - newDegrees * 100;\n return this.degrees = newDegrees;\n }\n\n toDecimal() {\n var decimalCoordinate;\n decimalCoordinate = this.sign * (this.degrees + this.minutes / 60 + this.seconds / 3600 + this.milliseconds / 3600000);\n return decimalCoordinate;\n }\n\n};\n\nmodule.exports = CoordinateNumber;\n","// Generated by CoffeeScript 2.5.1\nvar CoordinateNumber, Coordinates, Validator;\n\nValidator = require('./validator');\n\nCoordinateNumber = require('./coordinate-number');\n\nCoordinates = class Coordinates {\n constructor(coordinateString) {\n this.coordinates = coordinateString;\n this.latitudeNumbers = null;\n this.longitudeNumbers = null;\n this.validate();\n this.parse();\n }\n\n validate() {\n var validator;\n validator = new Validator();\n return validator.validate(this.coordinates);\n }\n\n parse() {\n this.groupCoordinateNumbers();\n this.latitude = this.extractLatitude();\n return this.longitude = this.extractLongitude();\n }\n\n groupCoordinateNumbers() {\n var coordinateNumbers, numberCountEachCoordinate;\n coordinateNumbers = this.extractCoordinateNumbers(this.coordinates);\n numberCountEachCoordinate = coordinateNumbers.length / 2;\n this.latitudeNumbers = coordinateNumbers.slice(0, numberCountEachCoordinate);\n return this.longitudeNumbers = coordinateNumbers.slice((0 - numberCountEachCoordinate));\n }\n\n extractCoordinateNumbers(coordinates) {\n return coordinates.match(/-?\\d+(\\.\\d+)?/g);\n }\n\n extractLatitude() {\n var latitude;\n latitude = this.coordinateNumbersToDecimal(this.latitudeNumbers);\n if (this.latitudeIsNegative()) {\n latitude = latitude * -1;\n }\n return latitude;\n }\n\n extractLongitude() {\n var longitude;\n longitude = this.coordinateNumbersToDecimal(this.longitudeNumbers);\n if (this.longitudeIsNegative()) {\n longitude = longitude * -1;\n }\n return longitude;\n }\n\n coordinateNumbersToDecimal(coordinateNumbers) {\n var coordinate, decimalCoordinate;\n coordinate = new CoordinateNumber(coordinateNumbers);\n coordinate.detectSpecialFormats();\n decimalCoordinate = coordinate.toDecimal();\n return decimalCoordinate;\n }\n\n latitudeIsNegative() {\n var isNegative;\n isNegative = this.coordinates.match(/s/i);\n return isNegative;\n }\n\n longitudeIsNegative() {\n var isNegative;\n isNegative = this.coordinates.match(/w/i);\n return isNegative;\n }\n\n getLatitude() {\n return this.latitude;\n }\n\n getLongitude() {\n return this.longitude;\n }\n\n};\n\nmodule.exports = Coordinates;\n","// Generated by CoffeeScript 2.5.1\nvar Validator;\n\nValidator = class Validator {\n isValid(coordinates) {\n var isValid, validationError;\n isValid = true;\n try {\n this.validate(coordinates);\n return isValid;\n } catch (error) {\n validationError = error;\n isValid = false;\n return isValid;\n }\n }\n\n validate(coordinates) {\n this.checkContainsNoLetters(coordinates);\n this.checkValidOrientation(coordinates);\n return this.checkNumbers(coordinates);\n }\n\n checkContainsNoLetters(coordinates) {\n var containsLetters;\n containsLetters = /(?![neswd])[a-z]/i.test(coordinates);\n if (containsLetters) {\n throw new Error('Coordinate contains invalid alphanumeric characters.');\n }\n }\n\n checkValidOrientation(coordinates) {\n var validOrientation;\n validOrientation = /^[^nsew]*[ns]?[^nsew]*[ew]?[^nsew]*$/i.test(coordinates);\n if (!validOrientation) {\n throw new Error('Invalid cardinal direction.');\n }\n }\n\n checkNumbers(coordinates) {\n var coordinateNumbers;\n coordinateNumbers = coordinates.match(/-?\\d+(\\.\\d+)?/g);\n this.checkAnyCoordinateNumbers(coordinateNumbers);\n this.checkEvenCoordinateNumbers(coordinateNumbers);\n return this.checkMaximumCoordinateNumbers(coordinateNumbers);\n }\n\n checkAnyCoordinateNumbers(coordinateNumbers) {\n if (coordinateNumbers.length === 0) {\n throw new Error('Could not find any coordinate number');\n }\n }\n\n checkEvenCoordinateNumbers(coordinateNumbers) {\n var isUnevenNumbers;\n isUnevenNumbers = coordinateNumbers.length % 2;\n if (isUnevenNumbers) {\n throw new Error('Uneven count of latitude/longitude numbers');\n }\n }\n\n checkMaximumCoordinateNumbers(coordinateNumbers) {\n if (coordinateNumbers.length > 6) {\n throw new Error('Too many coordinate numbers');\n }\n }\n\n};\n\nmodule.exports = Validator;\n","import { useEffect } from 'react';\n\nimport { Analytics, IAnalyticsProvider, useAppModule } from '@aurorasolar/common-module-loader';\n\nexport const useAnalyticsPageEvent: IAnalyticsProvider['page'] = (...props) => {\n const analytics = useAppModule(Analytics);\n useEffect(() => {\n analytics?.page(...props);\n }, [analytics, props]);\n};\n","export default \"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA0MCA0NyIgZmlsbD0ibm9uZSI+CjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMzEuNTcwMiAzNi4zMTU1QzM2LjY3MTYgMzIuNjkxMiA0MCAyNi43MzQzIDQwIDIwQzQwIDguOTU0MyAzMS4wNDU3IDAgMjAgMEM4Ljk1NDMgMCAwIDguOTU0MyAwIDIwQzAgMjYuNzMzOSAzLjMyNzk1IDMyLjY5MDUgOC40Mjg4NyAzNi4zMTQ4QzkuMzk3MTIgMzcuMTM1NiAxMC40NTgyIDM4LjAwMzIgMTEuNDc4MSAzOC44MzcxQzEyLjE4NjkgMzkuNDE2NyAxMi44NzU5IDM5Ljk4IDEzLjQ5OTkgNDAuNUMxNC42MjE2IDQxLjQzNDcgMTUuODEzMiA0My4xMzgzIDE2Ljg2NTYgNDQuOTA1MkMxOC4yMDQzIDQ3LjE1MjggMjEuNzk1NSA0Ny4xNTI4IDIzLjEzNDMgNDQuOTA1MkMyNC4xODY3IDQzLjEzODMgMjUuMzc4MiA0MS40MzQ3IDI2LjQ5OTkgNDAuNUMyNy4xMjQ0IDM5Ljk3OTYgMjcuODEzOSAzOS40MTU4IDI4LjUyMzMgMzguODM1OEMyOS41NDI0IDM4LjAwMjUgMzAuNjAyNiAzNy4xMzU3IDMxLjU3MDIgMzYuMzE1NVoiIGZpbGw9IiNERjQwOUQiLz4KPGNpcmNsZSByPSI1IiB0cmFuc2Zvcm09Im1hdHJpeCgxIDAgMCAtMSAyMCAyMCkiIGZpbGw9IiM4RTFDNjAiLz4KPC9zdmc+\"","import styled from 'styled-components';\n\nimport LocationMapPinImage from './location-map-pin.svg';\n\nconst DropShadowImg = styled.img`\n filter: drop-shadow(0 4px 4px rgba(0, 0, 0, 0.25));\n`;\nexport const LocationMapPin = ({ size = 32 }: { size?: number }) => {\n return ;\n};\n","import styled from 'styled-components';\n\nimport { Colors } from '../colors';\nimport { AuroraIcon, AuroraIconType } from '../icon';\nimport { LocationMapPin } from '../location-map-pin';\n\nconst OverlayWrapper = styled.div`\n pointer-events: none;\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n right: 0;\n`;\n\nconst TextWrapper = styled.div>`\n filter: drop-shadow(0 4px 4px rgba(0, 0, 0, 0.25));\n z-index: 11;\n text-align: center;\n color: ${Colors.WHITE};\n font-size: 16px;\n line-height: 20px;\n font-weight: 500;\n transform: ${({ maxSize, minSize }) =>\n `translate(0, calc(clamp(${minSize}, 18vmin, ${maxSize}) / 2 + clamp(5px, 2vmin, 15px)))`};\n`;\n\nconst CircleWrapper = styled.div>`\n pointer-events: none;\n z-index: 10;\n position: absolute;\n top: 50%;\n left: 50%;\n width: ${({ maxSize, minSize }) => `clamp(${minSize}, 18vmin, ${maxSize})`};\n height: ${({ maxSize, minSize }) => `clamp(${minSize}, 18vmin, ${maxSize})`};\n transform: translate(-50%, -50%);\n`;\n\nconst TextCenterWrapper = styled.div`\n pointer-events: none;\n z-index: 10;\n position: absolute;\n top: 50%;\n left: 0;\n width: 100%;\n`;\n\nconst PinIconWrapper = styled.div`\n z-index: 11;\n pointer-events: none;\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n`;\n\nexport enum CenteringGuideType {\n NoCircle,\n Default,\n Pin,\n}\n\ninterface ICircleProps {\n withBorder: boolean;\n diameter: number;\n translation?: number;\n background?: string;\n}\n\nconst Circle = styled.div`\n pointer-events: none;\n z-index: 10;\n position: absolute;\n border-radius: 50%;\n border: ${({ withBorder }) => withBorder && '1px solid #c9c9c9'};\n width: ${({ diameter }) => diameter}%;\n height: ${({ diameter }) => diameter}%;\n background: ${({ background }) => background};\n transform: ${({ translation }) => translation && `translate(${translation}%, ${translation}%)`};\n`;\n\nconst OuterCircle = () => {\n return ;\n};\n\nconst InnerCircle = () => {\n return (\n \n );\n};\n\nconst CenteringIconBackground = () => {\n return ;\n};\n\nconst CenteringIcon = ({ icon = AuroraIconType.LOCATION_PIN }: { icon?: AuroraIconType }) => (\n \n \n \n);\n\nconst Text = ({\n maxSize,\n minSize,\n text,\n}: Pick) => (\n \n \n {text}\n \n \n);\n\nconst pinContent = (\n \n \n \n);\n\ninterface CircleDefaultContentProps {\n icon?: AuroraIconType;\n maxSize: string;\n minSize: string;\n}\n\nconst defaultContent = ({ maxSize, minSize, icon }: CircleDefaultContentProps) => {\n return (\n \n \n \n \n \n \n );\n};\n\nconst noCircleContent = ({ maxSize, minSize, icon }: CircleDefaultContentProps) => {\n return (\n \n \n \n \n );\n};\n\nexport interface ICenteringGuideProps {\n icon?: AuroraIconType;\n minSize?: string;\n maxSize?: string;\n centeringGuideType?: CenteringGuideType;\n text?: string;\n}\n\nexport const CenteringGuide = ({\n icon,\n minSize = '170px',\n maxSize = '170px',\n centeringGuideType = CenteringGuideType.Default,\n text,\n}: ICenteringGuideProps) => {\n const guideMap = {\n [CenteringGuideType.NoCircle]: noCircleContent({ icon, maxSize, minSize }),\n [CenteringGuideType.Default]: defaultContent({ icon, maxSize, minSize }),\n [CenteringGuideType.Pin]: pinContent,\n };\n\n return (\n \n {guideMap[centeringGuideType]}\n {text && }\n \n );\n};\n","import { css } from 'styled-components';\n\nimport { Classes } from '@blueprintjs/core';\n\nimport { Colors } from '../colors';\nimport { defaultButtonBorderRadius } from '../layout';\n\nexport const DefaultInputCSS = css`\n .bp3-tag {\n height: calc(100% - 2px);\n margin: 1px;\n }\n\n .bp3-input-action {\n top: 0;\n bottom: 0;\n }\n\n && .bp3-input {\n padding: 0 12px;\n padding-bottom: 1px;\n border: 1px solid ${Colors.GRAY_300};\n border-radius: ${defaultButtonBorderRadius}px;\n box-shadow: none;\n color: ${Colors.GRAY_700};\n height: 40px;\n min-width: 90px;\n\n :disabled {\n background: ${Colors.GRAY_100};\n box-shadow: none;\n border: 1px solid ${Colors.GRAY_300};\n color: ${Colors.GRAY_400};\n }\n\n :focus {\n box-shadow: none;\n border: 1px solid ${Colors.PRIMARY_GREEN};\n }\n\n ::placeholder {\n color: ${Colors.GRAY_500};\n font-size: 16px;\n line-height: 20px;\n font-weight: 400;\n }\n }\n .bp3-tag ~ .bp3-input {\n padding-left: 55px;\n\n :not(:last-child) {\n padding-left: 40px;\n }\n }\n && .bp3-intent-danger .bp3-input,\n &&.bp3-intent-danger .bp3-input {\n box-shadow: none;\n border: 1px solid ${Colors.RED};\n\n :focus {\n box-shadow: none;\n border: 1px solid ${Colors.PRIMARY_GREEN};\n }\n }\n\n && {\n .bp3-icon {\n position: absolute;\n height: 40px;\n margin: 0 0 0 16px;\n width: 20px;\n display: flex;\n align-items: center;\n\n &::after {\n display: block;\n position: static;\n font-size: 20px;\n }\n\n & ~ .bp3-input {\n padding-left: 44px;\n }\n }\n\n .bp3-disabled {\n .bp3-tag {\n color: ${Colors.GRAY_400};\n }\n }\n }\n`;\n\nexport const EProposalInputAdditionalCss = css`\n /* TODO: need triple ampersand to overwrite CSS in the DefaultInputCSS.\n Will rewrite once the whole design system uses this CSS. */\n &&& .bp3-input {\n background-color: ${Colors.LIGHT_NAVY};\n border: none;\n color: ${Colors.GRAY_700};\n border-radius: 6px;\n width: 100%;\n height: 48px;\n\n :focus {\n box-shadow: none;\n border: none;\n }\n }\n &&& .${Classes.ICON} {\n height: 48px;\n }\n`;\n\nexport const EProposalNumericalInputAdditionalCss = css`\n &&& .bp3-input {\n font-size: 16px;\n }\n\n &&& .bp3-tag {\n font-size: 16px;\n background-color: ${Colors.GRAY_200};\n height: 48px;\n border: none;\n border-radius: 6px 0 0 6px;\n margin: 0;\n padding: 0 12px;\n ~ .bp3-input {\n padding-left: 45px;\n }\n }\n\n &&& .bp3-input-action:last-child .bp3-tag {\n border-radius: 0 6px 6px 0;\n }\n`;\n\nexport const EProposalInputCss = css`\n ${DefaultInputCSS}\n ${EProposalInputAdditionalCss}\n`;\n","// @ts-ignore: Ignore unused { * as Types } import\nimport * as Types from '@aurorasolar/graphql-client-schema';\n\nimport { gql } from '@apollo/client';\nimport * as Apollo from '@apollo/client';\nconst defaultOptions = {} as const;\nexport type SubmitLeadCaptureLocationMutationVariables = Types.Exact<{\n id: Types.Scalars['ID'];\n location: Types.SubmittedLeadCaptureLocation;\n}>;\n\n\nexport type SubmitLeadCaptureLocationMutation = { __typename: 'Mutation', submitLeadCaptureLocation: { __typename: 'LeadCaptureProject', id: string, address?: string | null | undefined, addressComponents?: { __typename: 'LeadCaptureAddressComponents', address: string, city?: string | null | undefined, state?: string | null | undefined, latitude: number, longitude: number, postalCode?: string | null | undefined, country?: string | null | undefined, street?: string | null | undefined, streetAddress?: string | null | undefined, streetNumber?: string | null | undefined } | null | undefined, location?: { __typename: 'LeadCaptureLocation', latitude: number, longitude: number, confirmed?: boolean | null | undefined, serviced?: boolean | null | undefined } | null | undefined } };\n\n\nexport const SubmitLeadCaptureLocationDocument = gql`\n mutation SubmitLeadCaptureLocation($id: ID!, $location: SubmittedLeadCaptureLocation!) @trace_info(traceInfo: {pod: leads}) {\n submitLeadCaptureLocation(id: $id, location: $location) {\n id\n address\n addressComponents {\n address\n city\n state\n latitude\n longitude\n postalCode\n country\n street\n streetAddress\n streetNumber\n }\n location {\n latitude\n longitude\n confirmed\n serviced\n }\n }\n}\n `;\nexport type SubmitLeadCaptureLocationMutationFn = Apollo.MutationFunction;\n\n/**\n * __useSubmitLeadCaptureLocationMutation__\n *\n * To run a mutation, you first call `useSubmitLeadCaptureLocationMutation` within a React component and pass it any options that fit your needs.\n * When your component renders, `useSubmitLeadCaptureLocationMutation` returns a tuple that includes:\n * - A mutate function that you can call at any time to execute the mutation\n * - An object with fields that represent the current status of the mutation's execution\n *\n * @param baseOptions options that will be passed into the mutation, supported options are listed on: https://www.apollographql.com/docs/react/api/react-hooks/#options-2;\n *\n * @example\n * const [submitLeadCaptureLocationMutation, { data, loading, error }] = useSubmitLeadCaptureLocationMutation({\n * variables: {\n * id: // value for 'id'\n * location: // value for 'location'\n * },\n * });\n */\nexport function useSubmitLeadCaptureLocationMutation(baseOptions?: Apollo.MutationHookOptions) {\n const options = {...defaultOptions, ...baseOptions}\n return Apollo.useMutation(SubmitLeadCaptureLocationDocument, options);\n }\nexport type SubmitLeadCaptureLocationMutationHookResult = ReturnType;\nexport type SubmitLeadCaptureLocationMutationResult = Apollo.MutationResult;\nexport type SubmitLeadCaptureLocationMutationOptions = Apollo.BaseMutationOptions;","import { AuroraIcon, AuroraIconType } from '@aurorasolar/common-core/src/icon';\n\nimport { LCAIButton, LCAIButtonIntent } from '../../../typography';\n\nexport const NEXT_BUTTON_TEST_ID = 'next-button-test-id';\n\nconst BUTTON_TEXT = 'Next';\n\nexport interface ButtonsProps {\n handleAddressSave: () => void;\n hasAddress: boolean;\n}\n\nexport function Buttons({ handleAddressSave, hasAddress }: ButtonsProps) {\n return (\n \n \n {BUTTON_TEXT}\n \n );\n}\n","export enum AutocompleteRequestLocationType {\n address = 'address',\n administrative_area_level_1 = 'administrative_area_level_1', // state\n administrative_area_level_2 = 'administrative_area_level_2', // county\n cities = '(cities)',\n establishment = 'establishment',\n postal_code = 'postal_code',\n regions = '(regions)',\n}\n\nexport interface FullAddress {\n address: string;\n city?: string;\n country?: string;\n county?: string;\n latitude: number;\n longitude: number;\n postalCode?: string;\n state?: string;\n street?: string;\n streetAddress?: string;\n streetNumber?: string;\n}\n\nexport type FilteredAddressComponents = Pick<\n FullAddress,\n | 'city'\n | 'country'\n | 'county'\n | 'postalCode'\n | 'state'\n | 'street'\n | 'streetAddress'\n | 'streetNumber'\n>;\n\nexport interface AddressComponent {\n // Snake case is required to match how the google API returns address components\n // {\n // \"long_name\" : \"\",\n // \"short_name\" : \"\",\n // \"types\" : []\n // },\n long_name: string;\n short_name: string;\n types: string[];\n}\n\nexport type FieldOptions = {\n [_ in keyof FilteredAddressComponents]?: { useLongName?: boolean };\n};\n","export const isValidLatLng =\n /^[-+]?([1-8]?\\d(\\.\\d+)?|90(\\.0+)?)°?\\s*,\\s*[-+]?(180(\\.0+)?|((1[0-7]\\d)|([1-9]?\\d))(\\.\\d+)?)°?\\s*$/;\n","import { useEffect, useState } from 'react';\n\nimport { GoogleMaps, IGoogleMaps, useAppModule } from '@aurorasolar/common-module-loader';\n\nexport enum GoogleMapApi {\n Places = 'placesService',\n Autocomplete = 'autocompleteService',\n}\n\nexport const useGoogleMapApi = (apisToLoad?: Array) => {\n const [_maps, setGoogleMap] = useState(null);\n const [_autocompleteService, setAutocompleteService] =\n useState(null);\n const [_placesService, setPlacesService] = useState(\n null,\n );\n\n const google = useAppModule(GoogleMaps);\n\n useEffect(() => {\n if (google) {\n const { getAutocompleteService, getPlacesService, maps } = google;\n setGoogleMap(maps);\n if (!_placesService && apisToLoad?.includes(GoogleMapApi.Places)) {\n const placesService = getPlacesService();\n setPlacesService(placesService);\n }\n\n if (!_autocompleteService && apisToLoad?.includes(GoogleMapApi.Autocomplete)) {\n const autocompleteService = getAutocompleteService();\n setAutocompleteService(autocompleteService);\n }\n }\n }, [_autocompleteService, _placesService, apisToLoad, google]);\n\n return {\n autocompleteService: _autocompleteService,\n maps: _maps,\n placesService: _placesService,\n };\n};\n","/*\n * Copyright 2017 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport { __assign, __extends, __rest } from \"tslib\";\nimport classNames from \"classnames\";\nimport * as React from \"react\";\nimport { DISPLAYNAME_PREFIX, InputGroup, Keys, Popover, Position, Utils, } from \"@blueprintjs/core\";\nimport { Classes } from \"../../common\";\nimport { QueryList } from \"../query-list/queryList\";\nvar Suggest = /** @class */ (function (_super) {\n __extends(Suggest, _super);\n function Suggest() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this.state = {\n isOpen: (_this.props.popoverProps != null && _this.props.popoverProps.isOpen) || false,\n selectedItem: _this.getInitialSelectedItem(),\n };\n _this.TypedQueryList = QueryList.ofType();\n _this.input = null;\n _this.queryList = null;\n _this.refHandlers = {\n input: function (ref) {\n _this.input = ref;\n Utils.safeInvokeMember(_this.props.inputProps, \"inputRef\", ref);\n },\n queryList: function (ref) { return (_this.queryList = ref); },\n };\n _this.renderQueryList = function (listProps) {\n var _a = _this.props, fill = _a.fill, _b = _a.inputProps, inputProps = _b === void 0 ? {} : _b, _c = _a.popoverProps, popoverProps = _c === void 0 ? {} : _c;\n var _d = _this.state, isOpen = _d.isOpen, selectedItem = _d.selectedItem;\n var handleKeyDown = listProps.handleKeyDown, handleKeyUp = listProps.handleKeyUp;\n var _e = inputProps.autoComplete, autoComplete = _e === void 0 ? \"off\" : _e, _f = inputProps.placeholder, placeholder = _f === void 0 ? \"Search...\" : _f;\n var selectedItemText = selectedItem ? _this.props.inputValueRenderer(selectedItem) : \"\";\n // placeholder shows selected item while open.\n var inputPlaceholder = isOpen && selectedItemText ? selectedItemText : placeholder;\n // value shows query when open, and query remains when closed if nothing is selected.\n // if resetOnClose is enabled, then hide query when not open. (see handlePopoverOpening)\n var inputValue = isOpen\n ? listProps.query\n : selectedItemText || (_this.props.resetOnClose ? \"\" : listProps.query);\n if (fill) {\n popoverProps.fill = true;\n inputProps.fill = true;\n }\n return (React.createElement(Popover, __assign({ autoFocus: false, enforceFocus: false, isOpen: isOpen, position: Position.BOTTOM_LEFT }, popoverProps, { className: classNames(listProps.className, popoverProps.className), onInteraction: _this.handlePopoverInteraction, popoverClassName: classNames(Classes.SELECT_POPOVER, popoverProps.popoverClassName), onOpening: _this.handlePopoverOpening, onOpened: _this.handlePopoverOpened }),\n React.createElement(InputGroup, __assign({ autoComplete: autoComplete, disabled: _this.props.disabled }, inputProps, { inputRef: _this.refHandlers.input, onChange: listProps.handleQueryChange, onFocus: _this.handleInputFocus, onKeyDown: _this.getTargetKeyDownHandler(handleKeyDown), onKeyUp: _this.getTargetKeyUpHandler(handleKeyUp), placeholder: inputPlaceholder, value: inputValue })),\n React.createElement(\"div\", { onKeyDown: handleKeyDown, onKeyUp: handleKeyUp }, listProps.itemList)));\n };\n _this.selectText = function () {\n // wait until the input is properly focused to select the text inside of it\n requestAnimationFrame(function () {\n if (_this.input != null) {\n _this.input.setSelectionRange(0, _this.input.value.length);\n }\n });\n };\n _this.handleInputFocus = function (event) {\n _this.selectText();\n // TODO can we leverage Popover.openOnTargetFocus for this?\n if (!_this.props.openOnKeyDown) {\n _this.setState({ isOpen: true });\n }\n Utils.safeInvokeMember(_this.props.inputProps, \"onFocus\", event);\n };\n _this.handleItemSelect = function (item, event) {\n var nextOpenState;\n if (!_this.props.closeOnSelect) {\n if (_this.input != null) {\n _this.input.focus();\n }\n _this.selectText();\n nextOpenState = true;\n }\n else {\n if (_this.input != null) {\n _this.input.blur();\n }\n nextOpenState = false;\n }\n // the internal state should only change when uncontrolled.\n if (_this.props.selectedItem === undefined) {\n _this.setState({\n isOpen: nextOpenState,\n selectedItem: item,\n });\n }\n else {\n // otherwise just set the next open state.\n _this.setState({ isOpen: nextOpenState });\n }\n Utils.safeInvoke(_this.props.onItemSelect, item, event);\n };\n _this.handlePopoverInteraction = function (nextOpenState) {\n return requestAnimationFrame(function () {\n if (_this.input != null && _this.input !== document.activeElement) {\n // the input is no longer focused so we can close the popover\n _this.setState({ isOpen: false });\n }\n Utils.safeInvokeMember(_this.props.popoverProps, \"onInteraction\", nextOpenState);\n });\n };\n _this.handlePopoverOpening = function (node) {\n // reset query before opening instead of when closing to prevent flash of unfiltered items.\n // this is a limitation of the interactions between QueryList state and Popover transitions.\n if (_this.props.resetOnClose && _this.queryList) {\n _this.queryList.setQuery(\"\", true);\n }\n Utils.safeInvokeMember(_this.props.popoverProps, \"onOpening\", node);\n };\n _this.handlePopoverOpened = function (node) {\n // scroll active item into view after popover transition completes and all dimensions are stable.\n if (_this.queryList != null) {\n _this.queryList.scrollActiveItemIntoView();\n }\n Utils.safeInvokeMember(_this.props.popoverProps, \"onOpened\", node);\n };\n _this.getTargetKeyDownHandler = function (handleQueryListKeyDown) {\n return function (evt) {\n var which = evt.which;\n if (which === Keys.ESCAPE || which === Keys.TAB) {\n if (_this.input != null) {\n _this.input.blur();\n }\n _this.setState({ isOpen: false });\n }\n else if (_this.props.openOnKeyDown &&\n which !== Keys.BACKSPACE &&\n which !== Keys.ARROW_LEFT &&\n which !== Keys.ARROW_RIGHT) {\n _this.setState({ isOpen: true });\n }\n if (_this.state.isOpen) {\n Utils.safeInvoke(handleQueryListKeyDown, evt);\n }\n Utils.safeInvokeMember(_this.props.inputProps, \"onKeyDown\", evt);\n };\n };\n _this.getTargetKeyUpHandler = function (handleQueryListKeyUp) {\n return function (evt) {\n if (_this.state.isOpen) {\n Utils.safeInvoke(handleQueryListKeyUp, evt);\n }\n Utils.safeInvokeMember(_this.props.inputProps, \"onKeyUp\", evt);\n };\n };\n return _this;\n }\n Suggest.ofType = function () {\n return Suggest;\n };\n Suggest.prototype.render = function () {\n var _a;\n // omit props specific to this component, spread the rest.\n var _b = this.props, disabled = _b.disabled, inputProps = _b.inputProps, popoverProps = _b.popoverProps, restProps = __rest(_b, [\"disabled\", \"inputProps\", \"popoverProps\"]);\n return (React.createElement(this.TypedQueryList, __assign({}, restProps, { initialActiveItem: (_a = this.props.selectedItem, (_a !== null && _a !== void 0 ? _a : undefined)), onItemSelect: this.handleItemSelect, ref: this.refHandlers.queryList, renderer: this.renderQueryList })));\n };\n Suggest.prototype.componentDidUpdate = function (_prevProps, prevState) {\n var _this = this;\n var _a, _b;\n // If the selected item prop changes, update the underlying state.\n if (this.props.selectedItem !== undefined && this.props.selectedItem !== this.state.selectedItem) {\n this.setState({ selectedItem: this.props.selectedItem });\n }\n if (this.state.isOpen === false && prevState.isOpen === true) {\n // just closed, likely by keyboard interaction\n // wait until the transition ends so there isn't a flash of content in the popover\n setTimeout(function () {\n _this.maybeResetActiveItemToSelectedItem();\n }, (_b = (_a = this.props.popoverProps) === null || _a === void 0 ? void 0 : _a.transitionDuration, (_b !== null && _b !== void 0 ? _b : Popover.defaultProps.transitionDuration)));\n }\n if (this.state.isOpen && !prevState.isOpen && this.queryList != null) {\n this.queryList.scrollActiveItemIntoView();\n }\n };\n Suggest.prototype.getInitialSelectedItem = function () {\n // controlled > uncontrolled > default\n if (this.props.selectedItem !== undefined) {\n return this.props.selectedItem;\n }\n else if (this.props.defaultSelectedItem !== undefined) {\n return this.props.defaultSelectedItem;\n }\n else {\n return null;\n }\n };\n Suggest.prototype.maybeResetActiveItemToSelectedItem = function () {\n var _a;\n var shouldResetActiveItemToSelectedItem = this.props.activeItem === undefined && this.state.selectedItem !== null && !this.props.resetOnSelect;\n if (this.queryList !== null && shouldResetActiveItemToSelectedItem) {\n this.queryList.setActiveItem((_a = this.props.selectedItem, (_a !== null && _a !== void 0 ? _a : this.state.selectedItem)));\n }\n };\n Suggest.displayName = DISPLAYNAME_PREFIX + \".Suggest\";\n Suggest.defaultProps = {\n closeOnSelect: true,\n fill: false,\n openOnKeyDown: false,\n resetOnClose: false,\n };\n return Suggest;\n}(React.PureComponent));\nexport { Suggest };\n//# sourceMappingURL=suggest.js.map","import { from, Observable } from 'rxjs';\nimport { debounceTime, filter, skip, switchMap, takeUntil } from 'rxjs/operators';\n\n// Custom autocomplete operator https://blog.strongbrew.io/building-a-safe-autocomplete-operator-with-rxjs/\n// Accecpts a debounce time and a method to call for retrieving autocomplete results\nexport const autocomplete =\n (time: number, selector: (term: string) => Promise) => (source$: Observable) =>\n source$.pipe(\n debounceTime(time),\n filter((term) => !!term),\n switchMap((term: string) => from(selector(term)).pipe(takeUntil(source$.pipe(skip(1))))),\n );\n","import { filter } from './filter';\nexport function skip(count) {\n return filter(function (_, index) { return count <= index; });\n}\n//# sourceMappingURL=skip.js.map","import { FunctionComponent, useLayoutEffect, useRef, useState } from 'react';\nimport styled from 'styled-components';\n\nimport { Colors } from '@aurorasolar/common-core/src/colors';\nimport { AuroraIcon, AuroraIconType } from '@aurorasolar/common-core/src/icon';\nimport { DefaultInputCSS } from '@aurorasolar/common-core/src/input';\nimport { parseLatLng } from '@aurorasolar/common-core/src/utils/parse-lat-lng';\nimport { isValidLatLng } from '@aurorasolar/common-core/src/utils/regex';\nimport { MenuItem } from '@blueprintjs/core';\nimport { ItemRenderer, Suggest } from '@blueprintjs/select';\n\nimport { AutocompleteRequestLocationType, FieldOptions } from './types';\nimport { useGetPlaceDetails } from './use-get-place-details';\nimport { AutocompleteAddress, useGoogleAutocomplete } from './use-google-autocomplete';\n\nconst AutocompleteSelect = styled(Suggest.ofType())`\n ${DefaultInputCSS}\n`;\n\nconst AddressItem = styled(MenuItem)`\n && {\n :hover {\n background: ${Colors.GRAY_200};\n }\n\n .bp3-menu-item-label {\n color: ${Colors.GRAY_800};\n }\n\n &.bp3-active {\n background: ${Colors.GRAY_200};\n color: ${Colors.GRAY_800};\n\n .bp3-menu-item-label {\n color: ${Colors.GRAY_800};\n }\n }\n\n color: ${Colors.GRAY_800};\n }\n`;\n\ninterface FullAddress {\n address: string;\n state?: string;\n country?: string;\n latitude: number;\n longitude: number;\n}\nconst addressToString = ({ main, secondary }: AutocompleteAddress): string =>\n `${main}, ${secondary}`;\n\ninterface AddressAutocompleteProps {\n onSelect: (value: FullAddress | null) => void;\n fill?: boolean;\n /* Default value for input element */\n defaultValue?: string;\n fieldOptions?: FieldOptions;\n 'aria-label'?: string;\n className?: string;\n placeholder?: string;\n autoCompleteRequestLocationType?: AutocompleteRequestLocationType[];\n autocompleteComponentRestrictions?: google.maps.places.ComponentRestrictions;\n}\nexport const AddressAutocomplete: FunctionComponent = ({\n onSelect,\n fill,\n defaultValue,\n fieldOptions,\n 'aria-label': ariaLabel = 'address-auto-complete',\n className,\n placeholder = 'Search Address...',\n autoCompleteRequestLocationType,\n autocompleteComponentRestrictions,\n}) => {\n const { currentItems, updateQuery } = useGoogleAutocomplete(\n autoCompleteRequestLocationType,\n autocompleteComponentRestrictions,\n );\n const getPlaceDetails = useGetPlaceDetails(fieldOptions);\n const inputWrapperRef = useRef(null);\n const [queryString, setQueryString] = useState();\n const [inputIsFocused, setInputIsFocused] = useState(false);\n\n useLayoutEffect(() => {\n setQueryString(defaultValue);\n }, [defaultValue]);\n\n const itemRenderer: ItemRenderer = (\n location,\n { handleClick, modifiers },\n ) => {\n return (\n }\n label={location.secondary}\n onMouseDown={handleClick}\n role=\"option\"\n />\n );\n };\n\n const selectItemHandler = async (value: AutocompleteAddress) => {\n const details = await getPlaceDetails(value.placeId);\n setQueryString(addressToString(value));\n onSelect(details);\n };\n const inputValueRenderer = (value: AutocompleteAddress) => addressToString(value);\n const onQueryChange = (value: string) => {\n if (isValidLatLng.test(value)) {\n const [latitude, longitude] = parseLatLng(value);\n onSelect({\n address: `${latitude}, ${longitude}`,\n latitude,\n longitude,\n });\n } else {\n updateQuery(value);\n setQueryString(value);\n }\n };\n\n const popoverIsOpen = inputIsFocused && currentItems.length !== 0 && queryString !== '';\n\n return (\n \n
{\n setInputIsFocused(false);\n },\n onFocus: () => {\n setInputIsFocused(true);\n },\n placeholder,\n }}\n inputValueRenderer={inputValueRenderer}\n itemRenderer={itemRenderer}\n items={currentItems}\n onItemSelect={selectItemHandler}\n onQueryChange={onQueryChange}\n popoverProps={{\n isOpen: popoverIsOpen,\n minimal: true,\n modifiers: {\n preventOverflow: {\n boundariesElement: 'viewport',\n },\n },\n popoverRef: (ref) => ref?.setAttribute('data-testid', 'address-autocomplete-popover'),\n }}\n query={queryString}\n />\n \n );\n};\n","import styled from 'styled-components';\n\nimport {\n AddressAutocomplete,\n AutocompleteRequestLocationType,\n FullAddress,\n} from '@aurorasolar/common-google-map';\n\nimport { BoxWithMargin } from '../../../shared-components';\nimport { LCAIText } from '../../../typography';\nimport {\n HEADER_COLOR,\n INPUT_FOCUS_STYLE,\n INPUT_PLACEHOLDER_STYLE,\n INPUT_STYLE,\n} from '../../../utils/constants';\n\nexport enum Constants {\n ENTRY_HEADER = 'Where do you live?',\n ENTRY_PLACEHOLDER = 'Enter address',\n CONFIRMATION_HEADER = 'Is this your home?',\n}\n\nexport interface LeftContentProps {\n handleAddressSelect: (selectedAddress: FullAddress | null) => void;\n hasAddress: boolean;\n}\n\nexport function LeftContent({ handleAddressSelect, hasAddress }: LeftContentProps) {\n return (\n <>\n \n {hasAddress ? Constants.CONFIRMATION_HEADER : Constants.ENTRY_HEADER}\n \n \n \n \n >\n );\n}\n\nconst AddressEntry = styled(AddressAutocomplete)`\n .bp3-input-group input.bp3-input {\n ${INPUT_STYLE}\n }\n\n .bp3-input-group input.bp3-input::placeholder {\n ${INPUT_PLACEHOLDER_STYLE}\n }\n\n .bp3-input-group input.bp3-input:focus {\n ${INPUT_FOCUS_STYLE}\n }\n`;\n","/* eslint-disable camelcase */\nimport { useEffect, useState } from 'react';\nimport { BehaviorSubject } from 'rxjs';\n\nimport { GoogleMapApi, useGoogleMapApi } from '../use-google-map-api/use-google-map-api';\nimport { autocomplete } from './autocomplete-operator';\nimport { AutocompleteRequestLocationType } from './types';\n\nexport interface AutocompleteAddress {\n placeId: string;\n main: string;\n secondary: string;\n type: string;\n}\n\nexport const useGoogleAutocomplete = (\n autocompleteRequestLocationType?: AutocompleteRequestLocationType[],\n autocompleteComponentRestrictions?: google.maps.places.ComponentRestrictions,\n) => {\n const { autocompleteService } = useGoogleMapApi([GoogleMapApi.Autocomplete]);\n const [currentItems, setCurrentItems] = useState([]);\n const [term$] = useState(new BehaviorSubject(''));\n // TODO: Add session tokens to combine request cost\n useEffect(() => {\n if (autocompleteService) {\n const queryGooglePlaces = (term: string) => {\n return new Promise((resolve) => {\n autocompleteService.getPlacePredictions(\n {\n componentRestrictions: autocompleteComponentRestrictions,\n input: term,\n types: autocompleteRequestLocationType,\n },\n (results) => {\n resolve(\n results\n ? results.map(\n ({\n place_id,\n structured_formatting: { main_text, secondary_text },\n types,\n }): AutocompleteAddress => {\n return {\n main: main_text,\n placeId: place_id,\n secondary: secondary_text,\n type: types[0],\n };\n },\n )\n : [],\n );\n },\n );\n });\n };\n const subscription = term$\n .pipe(autocomplete(300, queryGooglePlaces))\n .subscribe((next) => setCurrentItems(next as AutocompleteAddress[]));\n return () => {\n subscription.unsubscribe();\n };\n }\n return undefined;\n }, [\n autocompleteService,\n term$,\n autocompleteRequestLocationType,\n autocompleteComponentRestrictions,\n ]);\n\n const updateQuery = (value: string) => {\n term$.next(value);\n };\n\n return { currentItems, updateQuery };\n};\n","import { useCallback } from 'react';\n\nimport { GoogleMapApi, useGoogleMapApi } from '../use-google-map-api/use-google-map-api';\nimport { FieldOptions, FullAddress } from './types';\nimport { filterAddressComponents } from './utils';\n\nexport const useGetPlaceDetails = (fieldOptions?: FieldOptions) => {\n const { placesService } = useGoogleMapApi([GoogleMapApi.Places]);\n const getPlaceDetails = useCallback(\n async (placeId: string): Promise => {\n if (placesService == null) {\n return null;\n }\n const { address_components, geometry, formatted_address } =\n (await new Promise((resolve) => {\n placesService.getDetails(\n {\n fields: ['address_components', 'geometry', 'formatted_address'],\n placeId,\n },\n (result) => resolve(result),\n );\n })) ?? {};\n\n const { city, country, county, postalCode, state, street, streetAddress, streetNumber } =\n filterAddressComponents(address_components ?? [], fieldOptions);\n\n return {\n address: formatted_address ?? '',\n city,\n country,\n county,\n latitude: geometry?.location?.lat() ?? 0,\n longitude: geometry?.location?.lng() ?? 0,\n postalCode,\n state,\n street,\n streetAddress,\n streetNumber,\n };\n },\n [placesService, fieldOptions],\n );\n return getPlaceDetails;\n};\n","import Coordinate from 'coordinate-parser';\n\nimport { AddressComponent, FieldOptions, FilteredAddressComponents } from './types';\n\nexport const isValidCoordinate = (coordinate: string) => {\n try {\n // eslint-disable-next-line no-new\n new Coordinate(coordinate);\n return true;\n } catch (_e) {\n return false;\n }\n};\n\nexport const filterAddressComponents = (\n addressComponents: AddressComponent[],\n fieldOptions: FieldOptions = {},\n): FilteredAddressComponents => {\n const fieldMappings = [\n { key: 'country', matchType: 'country' },\n { key: 'county', matchType: 'administrative_area_level_2' },\n { key: 'state', matchType: 'administrative_area_level_1' },\n { key: 'city', matchType: 'locality' },\n { key: 'street', matchType: 'route' },\n { key: 'streetNumber', matchType: 'street_number' },\n { key: 'streetAddress', matchType: 'street_address' },\n { key: 'postalCode', matchType: 'postal_code' },\n ] as const;\n\n return addressComponents.reduce(\n // eslint-disable-next-line camelcase, @typescript-eslint/naming-convention\n (all: FilteredAddressComponents, { short_name, types, long_name }) => {\n const mapping = fieldMappings.find(({ matchType }) => types.includes(matchType));\n if (!mapping) {\n return all;\n }\n\n // eslint-disable-next-line camelcase, @typescript-eslint/naming-convention\n const value = fieldOptions[mapping.key]?.useLongName ? long_name : short_name;\n return { ...all, [mapping.key]: value };\n },\n {} as FilteredAddressComponents,\n );\n};\n","import { isValidLatLng } from './regex';\n\nexport const parseLatLng = (latLng: string) => {\n if (isValidLatLng.test(latLng)) {\n return latLng.split(',').map((location) => Number.parseFloat(location.replace(/[\\s°]/g, '')));\n }\n return [];\n};\n","import { FullAddress } from '@aurorasolar/common-google-map';\n\nimport { CustomImageFragment } from '../../../lead-capture.generated';\nimport { Image, Map } from '../../../shared-components';\nimport { SourcePage } from '../../../utils/source-page';\n\nexport interface RightContentProps {\n address?: FullAddress;\n customImage?: CustomImageFragment | null;\n handleAddressChange: (center: google.maps.LatLng) => void;\n sourcePage: SourcePage;\n}\n\nexport function RightContent({\n address,\n customImage,\n handleAddressChange,\n sourcePage,\n}: RightContentProps) {\n return address ? (\n \n ) : (\n \n );\n}\n","import { useRef, useState } from 'react';\n\nimport { useAnalyticsPageEvent } from '@aurorasolar/common-analytics';\nimport { useDebouncedCallback } from '@aurorasolar/common-core/src/hooks';\nimport { FullAddress } from '@aurorasolar/common-google-map';\nimport {\n Analytics,\n AnalyticsEventTypes,\n AnalyticsPageTypes,\n AppRouterNavigation,\n useAppModule,\n} from '@aurorasolar/common-module-loader';\n\nimport { useRouteData } from '../../hooks';\nimport { AnimateView, SplitView, TopRail } from '../../shared-components';\nimport { DEBOUNCE_TIME, PROGRESS_VALUES } from '../../utils/constants';\nimport { SourcePage } from '../../utils/source-page';\nimport { useSubmitLeadCaptureLocationMutation } from './address.generated';\nimport { Buttons, LeftContent, RightContent } from './components';\n\nexport interface AddressPageProps {\n projectId: string;\n sourcePage: SourcePage;\n}\n\nexport const AddressPage = ({ projectId, sourcePage }: AddressPageProps) => {\n const navigation = useAppModule(AppRouterNavigation);\n const analytics = useAppModule(Analytics);\n\n const { customSettings, templateId } = useRouteData();\n\n const [submitLocation] = useSubmitLeadCaptureLocationMutation();\n\n const [address, updateAddress] = useState();\n const location = useRef({\n lat: 0,\n lng: 0,\n });\n\n useAnalyticsPageEvent(AnalyticsPageTypes.LeadCaptureAddress, {\n project_id: projectId,\n });\n\n const handleAddressChange = (center: google.maps.LatLng) => {\n location.current.lat = center.lat();\n location.current.lng = center.lng();\n\n if (\n address &&\n location.current.lat !== address.latitude &&\n location.current.lng !== address.longitude\n ) {\n analytics?.track(AnalyticsEventTypes.LeadCaptureChangedMapLocation);\n }\n };\n\n const handleAddressSelect = (selectedAddress: FullAddress | null) => {\n if (selectedAddress == null) return;\n\n const leadAddress = { ...selectedAddress };\n delete leadAddress.county;\n\n updateAddress(leadAddress);\n location.current.lat = leadAddress.latitude;\n location.current.lng = leadAddress.longitude;\n\n analytics?.track(AnalyticsEventTypes.LeadCaptureEnteredAddress);\n };\n\n const handleAddressSave = useDebouncedCallback(\n async () => {\n if (address == null) return;\n const { data } = await submitLocation({\n variables: {\n id: projectId,\n location: {\n address: address.address,\n addressComponents: address,\n confirmed: true,\n latitude: location.current.lat,\n longitude: location.current.lng,\n },\n },\n });\n\n const isServiced = data?.submitLeadCaptureLocation.location?.serviced;\n\n await analytics?.track(AnalyticsEventTypes.LeadCaptureConfirmedLocation, {\n project_id: projectId,\n });\n\n navigation?.navigate(`/projects/${projectId}/${isServiced ? 'utility' : 'drop/address'}`, {\n replace: true,\n });\n },\n [analytics, navigation, submitLocation, address, projectId],\n DEBOUNCE_TIME,\n );\n\n return (\n <>\n \n \n }\n hasProgressBar\n leftContent={\n \n }\n rightContent={\n \n }\n />\n \n >\n );\n};\n\nexport default AddressPage;\n","import React, { FC, ReactElement, useEffect, useRef, useState } from 'react';\nimport styled from 'styled-components';\n\nimport { CenteringGuide, CenteringGuideType } from '@aurorasolar/common-core/src/centering-guide';\nimport { GoogleMaps, useAppModule } from '@aurorasolar/common-module-loader';\n\nimport { MarkerProps } from './marker';\n\nconst MapPositionWrapper = styled.div`\n position: relative;\n width: 100%;\n height: 100%;\n`;\n\nconst MapContainer = styled.div`\n min-height: 100px;\n width: 100%;\n height: 100%;\n`;\ninterface CustomMapOptions {\n showCenteringGuide?: boolean;\n centeringGuideType?: CenteringGuideType;\n centeringGuideText?: string;\n}\n\ninterface GoogleMapProps extends GoogleMapEvents {\n options: google.maps.MapOptions & CustomMapOptions;\n children?: ReactElement | false | (ReactElement | false)[];\n}\n\ninterface GoogleMapEvents {\n onDragEnd?: (center: google.maps.LatLng) => void;\n onCenterChanged?: (center: google.maps.LatLng) => void;\n}\n\nexport const GoogleMap: FC = ({\n options,\n children = [],\n onCenterChanged,\n onDragEnd,\n}) => {\n const filteredChildren = (Array.isArray(children) ? children : [children]).filter(\n (marker) => marker,\n ) as ReactElement[];\n const googleMap = useAppModule(GoogleMaps);\n const [map, setMap] = useState(undefined);\n const mapContainerRef = useRef(null);\n\n const initialConfig = useRef(options);\n\n useEffect(() => {\n if (map != null || googleMap?.maps == null || mapContainerRef.current == null) {\n return;\n }\n\n const newMap = new googleMap.maps.Map(mapContainerRef.current, initialConfig.current);\n\n setMap(newMap);\n }, [map, googleMap, mapContainerRef]);\n\n useEffect(() => {\n if (options !== initialConfig.current) {\n map?.setOptions(options);\n }\n }, [map, options]);\n\n /** Listeners */\n\n useEffect(() => {\n if (onDragEnd == null) {\n return () => {};\n }\n\n // drag_end event fires\n const listener = map?.addListener('idle', () => {\n const center = map.getCenter();\n if (center) {\n onDragEnd(center);\n }\n });\n\n return () => {\n if (listener) {\n googleMap?.maps.event.removeListener(listener);\n }\n };\n }, [map, googleMap, onDragEnd]);\n\n useEffect(() => {\n if (onCenterChanged == null) {\n return () => {};\n }\n const listener = map?.addListener('center_changed', () => {\n const center = map.getCenter();\n if (center) {\n onCenterChanged(center);\n }\n });\n return () => {\n if (listener) {\n googleMap?.maps.event.removeListener(listener);\n }\n };\n }, [map, googleMap, onCenterChanged]);\n\n return (\n \n \n {filteredChildren.map((child, i) => React.cloneElement(child, { key: i, map }))}\n \n {options.showCenteringGuide && (\n \n )}\n \n );\n};\n","import { useMemo } from 'react';\nimport styled from 'styled-components';\n\nimport { CenteringGuide } from '@aurorasolar/common-core/src/centering-guide';\nimport { GoogleMap } from '@aurorasolar/common-google-map';\n\nimport { MAP_OPTIONS } from '../utils/constants';\n\nexport const MAP_TEST_ID = 'map-test-id';\n\nconst MapWrapper = styled.div`\n position: relative;\n height: 100%;\n`;\n\ninterface MapProps {\n lat: number;\n lng: number;\n onAddressChange?: (center: google.maps.LatLng) => void;\n tilt45?: boolean;\n viewOnly?: boolean;\n}\n\nexport const Map = ({ lat, lng, onAddressChange, tilt45 = false, viewOnly = false }: MapProps) => {\n const options = useMemo(\n () => ({\n ...MAP_OPTIONS,\n center: { lat, lng },\n draggable: !viewOnly,\n tilt: tilt45 ? 45 : 0,\n zoomControl: !tilt45,\n }),\n [lat, lng, tilt45, viewOnly],\n );\n\n return (\n \n onAddressChange?.(center)} options={options} />\n {!tilt45 && (\n \n )}\n \n );\n};\n"],"names":["CoordinateNumber","constructor","coordinateNumbers","this","normalizeCoordinateNumbers","sign","normalizedSignOf","degrees","minutes","seconds","milliseconds","map","Math","abs","currentNumber","i","j","len","normalizedNumbers","length","parseFloat","number","detectSpecialFormats","degreesCanBeSpecial","degreesCanBeMilliseconds","degreesAsMilliseconds","degreesCanBeDegreesMinutesAndSeconds","degreesAsDegreesMinutesAndSeconds","degreesCanBeDegreesAndMinutes","degreesAsDegreesAndMinutes","canBe","newDegrees","floor","toDecimal","module","exports","Coordinates","Validator","coordinateString","coordinates","latitudeNumbers","longitudeNumbers","validate","parse","groupCoordinateNumbers","latitude","extractLatitude","longitude","extractLongitude","numberCountEachCoordinate","extractCoordinateNumbers","slice","match","coordinateNumbersToDecimal","latitudeIsNegative","longitudeIsNegative","coordinate","getLatitude","getLongitude","isValid","error","checkContainsNoLetters","checkValidOrientation","checkNumbers","test","Error","checkAnyCoordinateNumbers","checkEvenCoordinateNumbers","checkMaximumCoordinateNumbers","useAnalyticsPageEvent","props","analytics","useEffect","page","DropShadowImg","img","OverlayWrapper","div","TextWrapper","WHITE","maxSize","minSize","CircleWrapper","TextCenterWrapper","PinIconWrapper","CenteringGuideType","Circle","withBorder","diameter","background","translation","OuterCircle","InnerCircle","CenteringIconBackground","GRAY_800","CenteringIcon","icon","LOCATION_PIN","fillColor","name","size","Text","text","pinContent","alt","src","width","defaultContent","noCircleContent","CenteringGuide","centeringGuideType","Default","guideMap","NoCircle","Pin","DefaultInputCSS","css","GRAY_300","GRAY_700","GRAY_100","GRAY_400","PRIMARY_GREEN","GRAY_500","RED","EProposalInputAdditionalCss","LIGHT_NAVY","GRAY_200","defaultOptions","SubmitLeadCaptureLocationDocument","Buttons","handleAddressSave","hasAddress","disabled","intent","PRIMARY_LIGHT","onClick","BTN_ARROW","AutocompleteRequestLocationType","isValidLatLng","GoogleMapApi","Suggest","_super","_this","apply","arguments","state","isOpen","popoverProps","selectedItem","getInitialSelectedItem","TypedQueryList","ofType","input","queryList","refHandlers","ref","inputProps","renderQueryList","listProps","_a","fill","_b","_c","_d","handleKeyDown","handleKeyUp","_e","autoComplete","_f","placeholder","selectedItemText","inputValueRenderer","inputPlaceholder","inputValue","query","resetOnClose","autoFocus","enforceFocus","position","BOTTOM_LEFT","className","onInteraction","handlePopoverInteraction","popoverClassName","onOpening","handlePopoverOpening","onOpened","handlePopoverOpened","inputRef","onChange","handleQueryChange","onFocus","handleInputFocus","onKeyDown","getTargetKeyDownHandler","onKeyUp","getTargetKeyUpHandler","value","itemList","selectText","requestAnimationFrame","setSelectionRange","event","openOnKeyDown","setState","handleItemSelect","item","nextOpenState","closeOnSelect","blur","focus","undefined","onItemSelect","document","activeElement","node","setQuery","scrollActiveItemIntoView","handleQueryListKeyDown","evt","which","handleQueryListKeyUp","prototype","render","restProps","initialActiveItem","renderer","componentDidUpdate","_prevProps","prevState","setTimeout","maybeResetActiveItemToSelectedItem","transitionDuration","defaultProps","defaultSelectedItem","shouldResetActiveItemToSelectedItem","activeItem","resetOnSelect","setActiveItem","displayName","useGoogleMapApi","apisToLoad","_maps","setGoogleMap","useState","_autocompleteService","setAutocompleteService","_placesService","setPlacesService","google","getAutocompleteService","getPlacesService","maps","includes","Places","placesService","Autocomplete","autocompleteService","autocomplete","time","selector","source$","pipe","debounceTime","filter","term","switchMap","from","takeUntil","count","_","index","AutocompleteSelect","AddressItem","addressToString","main","secondary","Constants","LeftContent","handleAddressSelect","color","fontWeight","type","CONFIRMATION_HEADER","ENTRY_HEADER","AddressEntry","autoCompleteRequestLocationType","address","fieldOptions","useLongName","onSelect","ENTRY_PLACEHOLDER","defaultValue","ariaLabel","autocompleteComponentRestrictions","currentItems","updateQuery","autocompleteRequestLocationType","setCurrentItems","term$","BehaviorSubject","queryGooglePlaces","Promise","resolve","getPlacePredictions","componentRestrictions","types","results","place_id","structured_formatting","main_text","secondary_text","placeId","subscription","subscribe","next","unsubscribe","useGoogleAutocomplete","getPlaceDetails","useCallback","async","address_components","geometry","formatted_address","getDetails","fields","result","city","country","county","postalCode","street","streetAddress","streetNumber","addressComponents","fieldMappings","key","matchType","reduce","all","short_name","long_name","mapping","find","filterAddressComponents","location","lat","lng","useGetPlaceDetails","inputWrapperRef","useRef","queryString","setQueryString","inputIsFocused","setInputIsFocused","useLayoutEffect","popoverIsOpen","id","large","onBlur","itemRenderer","handleClick","modifiers","active","PROJECT_ADDRESS_MAP_PIN","label","onMouseDown","role","items","details","onQueryChange","latLng","split","Number","replace","minimal","preventOverflow","boundariesElement","popoverRef","setAttribute","RightContent","customImage","handleAddressChange","sourcePage","onAddressChange","AddressPage","projectId","navigation","customSettings","templateId","submitLocation","baseOptions","options","useSubmitLeadCaptureLocationMutation","updateAddress","LeadCaptureAddress","project_id","data","variables","confirmed","current","isServiced","submitLeadCaptureLocation","serviced","track","LeadCaptureConfirmedLocation","navigate","progressValue","ADDRESS","buttons","hasProgressBar","leftContent","selectedAddress","leadAddress","LeadCaptureEnteredAddress","rightContent","addressEntryPageImage","center","LeadCaptureChangedMapLocation","MapPositionWrapper","MapContainer","GoogleMap","children","onCenterChanged","onDragEnd","filteredChildren","Array","isArray","marker","googleMap","setMap","mapContainerRef","initialConfig","newMap","Map","setOptions","listener","addListener","getCenter","removeListener","child","showCenteringGuide","centeringGuideText","MapWrapper","tilt45","viewOnly","useMemo","draggable","tilt","zoomControl"],"sourceRoot":""}