{"version":3,"file":"static/js/components-SiteWideDemoForm-SiteWideDemoForm.05f8c186c5464971be9a.js","mappings":"yKAGO,SAASA,EAAYC,GACxB,OACIC,EAAAA,EAAAA,GAAA,OACI,iBACAC,MAAM,6BACNC,QAAQ,eACRC,MAAM,SACNC,OAAO,WACHL,EAAKM,UAETC,EAAAA,EAAAA,IAAA,KAAG,YAAU,UAASD,SAAA,EAClBL,EAAAA,EAAAA,GAAA,QACIO,UAAU,YACVC,KAAMC,EAAAA,GAASC,KAAKC,OACpBC,EAAE,8uBAENZ,EAAAA,EAAAA,GAAA,WACIO,UAAU,YACVC,KAAMC,EAAAA,GAASC,KAAKC,OACpBE,OAAO,2MAEXb,EAAAA,EAAAA,GAAA,QACIO,UAAU,YACVC,KAAMC,EAAAA,GAASC,KAAKC,OACpBC,EAAE,qiBAENZ,EAAAA,EAAAA,GAAA,WACIO,UAAU,YACVC,KAAMC,EAAAA,GAASC,KAAKC,OACpBE,OAAO,4IAEXb,EAAAA,EAAAA,GAAA,QACIO,UAAU,YACVC,KAAMC,EAAAA,GAASC,KAAKC,OACpBC,EAAE,sJAENZ,EAAAA,EAAAA,GAAA,QACIO,UAAU,YACVC,KAAMC,EAAAA,GAASC,KAAKC,OACpBC,EAAE,ilBAENZ,EAAAA,EAAAA,GAAA,QACIO,UAAU,YACVC,KAAMC,EAAAA,GAASC,KAAKC,OACpBC,EAAE,0jBAKtB,C,yHCiCO,MAAME,EAAkDC,EAAAA,QAA0BC,KAAKC,QAE5F,CAACC,EAAKC,IAAcD,EAAIE,OAAOD,EAAUE,aAAa,IAkD3CC,EAAkD,CAC3DC,WAAY,GACZC,UAAW,GACXC,SAAU,GACVC,MAAO,GACPC,WAAY,GACZC,gBAAiB,GACjBC,QAAS,GACTC,SAAU,GACVC,gBAAiB,GACjBC,0BAA2B,GAC3BC,WAAY,GACZC,QAAS,GACTC,MAAO,GACPC,KAAM,GACNC,MAAO,GACPC,MAAO,GACPC,iCAAkC,GAClCC,QAAQ,EACRC,WAAY,GACZC,KAAM,EACNC,mBAAoB,GACpBC,UAAW,GACXC,UAAW,GACXC,SAAU,IAGDC,EAAoChC,EAAAA,QAA0BC,KAAKC,QAC3EC,IAAoBA,EAAI8B,MAAK,GAAO9B,IACrC,IAQS+B,EAA+CnC,EAAuBG,QAC/E,CAACC,EAA2BgC,IACH,0BAArBA,EAAYC,MAAoCD,EAAYE,oBAAsBF,EAAYG,MACvFnC,EAAI8B,KAAK,CACRM,SAAUJ,EAAYG,KACtBE,WAAYL,EAAYE,qBAE5BlC,GACEA,GACV,IAGSsC,EAAuBA,IAChC1C,EAAuBG,QAAO,CAACC,EAAegC,KACtCA,EAAYO,UAAYP,EAAYG,MACpCnC,EAAI8B,KAAKE,EAAYG,MAElBnC,IACR,IAEMwC,EAA4BA,CACrCC,EACAC,KAEA,MAAMC,EAA6B,GAanC,OAXAD,EAAkBE,SAASC,IACvB,MACMC,EADSD,EAAW1C,WACG4C,MAAMC,IAC/B,GAAIA,EAAMT,WAAaE,EAAkBO,EAAMb,MAC3C,OAAO,CACX,IAGJQ,EAAgBb,KAAKgB,EAAc,IAGhCH,CAAe,EAGbM,EAAoE,CAC7E,CAACC,EAAAA,EAAaC,IAAK,KACnB,CAACD,EAAAA,EAAaE,MAAO,QACrB,CAACF,EAAAA,EAAaG,MAAO,QACrB,CAACH,EAAAA,EAAaI,IAAK,KACnB,CAACJ,EAAAA,EAAaK,IAAK,KACnB,CAACL,EAAAA,EAAaM,MAAO,KACrB,CAACN,EAAAA,EAAaO,MAAO,QACrB,CAACP,EAAAA,EAAaQ,IAAK,KACnB,CAACR,EAAAA,EAAaS,MAAO,QACrB,CAACT,EAAAA,EAAaU,MAAO,QACrB,CAACV,EAAAA,EAAaW,IAAK,KACnB,CAACX,EAAAA,EAAaY,IAAK,KACnB,CAACZ,EAAAA,EAAaa,IAAK,KACnB,CAACb,EAAAA,EAAac,IAAK,KACnB,CAACd,EAAAA,EAAae,IAAK,QACnB,CAACf,EAAAA,EAAagB,MAAO,QACrB,CAAChB,EAAAA,EAAaiB,MAAO,KACrB,CAACjB,EAAAA,EAAakB,KAAM,KACpB,CAAClB,EAAAA,EAAamB,IAAK,M,mWCvOhB,MAAMC,EAAyB,CAClCC,UAAW,CACPC,SAAU,WACVC,WAAYlF,EAAAA,GAASkF,WAAWC,MAChCzF,MAAO,OACP0F,aAAc,OACdC,QAAS,mBACTC,UAAW,aACXC,UAAW,kCACX,CAAC,sBAAsBC,EAAAA,EAAYC,OAAQ,CACvCJ,QAAS,WAGjBK,KAAM,CAAEhG,MAAO,OAAQuF,SAAU,WAAYU,SAAU,SAAUC,cAAe,QAChFC,oBAAqB,CACjBC,cAAe,SACfC,WAAY,uBACZC,QAAS,GAEbC,UAAW,CACPC,aAAc,SAElBC,gBAAiB,CACbC,OAAQ,IACR,CAAC,sBAAsBZ,EAAAA,EAAYC,OAAQ,CACvCK,cAAe,gBAGvBO,WAAY,CACRC,QAAS,OACTJ,aAAc,SACd,CAAC,sBAAsBV,EAAAA,EAAYe,SAAU,CACzCD,QAAS,OACTE,eAAgB,WAGxBC,YAAa,CACTP,aAAc,OACdQ,SAAU,QACVhH,MAAO,QAEXiH,YAAa,CACTjH,MAAO,OACPwG,aAAc,OACdU,UAAW,UAEfC,OAAQ,CACJP,QAAS,QAEbQ,MAAO,CACHZ,aAAc,OACdU,UAAW,UAEfG,kBAAoBC,IAAwB,CAEpCC,UAAWD,EAAkB,qBAAuB,OACpD/B,SAAU,aAElBiC,iBAAkB,CACdD,UAAW,kBACXhC,SAAU,SACVtF,OAAQ,OACRwH,WAAY,WAEhBC,cAAgBJ,IAAwB,CAEhCC,UAAWD,EAAkB,oBAAsB,OACnD/B,SAAU,aAElBoC,QAAS,CACLrB,QAAS,eACTmB,WAAY,WAEhBG,UAAW,CACPtB,QAAS,EACTmB,WAAY,UAEhBI,WAAY,CACRjB,QAAS,UAEbkB,WAAY,CACRZ,UAAW,QAEfa,eAAgB,CACZzB,QAAS,EACTf,SAAU,WACVyC,MAAO1H,EAAAA,GAAS2H,KAAKC,eACrBC,SAAU,OACVC,WAAY,OACZC,IAAK,EACLC,MAAO,IACPrI,OAAQ,EACRD,MAAO,EACPuI,QAAS,KAEbC,OAAQ,CACJxI,MAAO,OACP,CAAC,sBAAsB8F,EAAAA,EAAYC,OAAQ,CACvCS,aAAc,WAGtBiC,SAAU,CACN9C,QAAS,SACTe,OAAQ,gBAEZgC,qBAAsB,CAClB/C,QAAS,2BAEbgD,4BAA6B,CACzB,0BAA2B,CACvBhD,QAAS,uBACT1F,OAAQ,QAEZ,yBAA0B,CACtB0F,QAAS,uBACT1F,OAAQ,QAEZ,CAAC,sBAAsB6F,EAAAA,EAAYC,OAAQ,CACvC,0BAA2B,CACvBJ,QAAS,UACT1F,OAAQ,QAEZ,yBAA0B,CACtB0F,QAAS,UACT1F,OAAQ,UAIpB2I,WAAaC,IAAwB,CAE7Bb,MAAOa,EACPC,WAAY,IACZ9I,MAAO,OACPmI,SAAU,SACV,CAAC,sBAAsBrC,EAAAA,EAAYiD,OAAQ,CACvCZ,SAAU,UAEd,CAAC,sBAAsBrC,EAAAA,EAAYe,OAAQ,CACvCsB,SAAU,UAEd3B,aAAc,SAEtBwC,cAAe,CACXxC,aAAc,UAElByC,eAAgB,CACZ1D,SAAU,WACV8C,IAAK,MACLC,KAAM,Q,qCC7Id,MAAMY,EAAU,CACZC,aAAc,CACVvC,QAAS,OACTR,cAAe,MACfU,eAAgB,SAChBsC,WAAY,UAEhBC,KAAM,CACFC,YAAa,WAId,SAASC,GAAW,MAAEC,IACzB,OACI3J,EAAAA,EAAAA,GAAA,OAAK4J,IAAKP,EAAQC,aAAajJ,SAC1BsJ,EAAME,KAAI,CAACC,EAAMC,IACS,WAAhBD,EAAKE,QACR1J,EAAAA,EAAAA,IAAA,OAEIL,MAAM,6BACN2J,IAAKP,EAAQG,KACbrJ,MAAM,KACNC,OAAO,KACPF,QAAQ,YACRM,KAAK,OAAMH,SAAA,EAEXL,EAAAA,EAAAA,GAAA,UAAQiK,GAAG,IAAIC,GAAG,IAAIC,EAAE,IAAI3J,KAAK,aACjCR,EAAAA,EAAAA,GAAA,UACIiK,GAAG,IACHC,GAAG,IACHC,EAAE,MACFC,OAAQ3J,EAAAA,GAASC,KAAK2J,WACtBC,cAAc,MACdC,YAAY,QAfXR,IAmBT/J,EAAAA,EAAAA,GAAA,OAEI4J,IAAKP,EAAQG,KACbvJ,MAAM,6BACNE,MAAM,IACNC,OAAO,IACPF,QAAQ,UACRM,KAAK,OAAMH,UAEXL,EAAAA,EAAAA,GAAA,UACIiK,GAAG,IACHC,GAAG,IACHC,EAAE,IACF3J,KAAsB,cAAhBsJ,EAAKE,OAAyBvJ,EAAAA,GAAS+J,OAAOH,WAAa5J,EAAAA,GAAS+J,OAAOC,YAZhFV,MAmB7B,C,eChEO,MAAMW,GAAkB,uBAcxB,SAASC,KACZ,MAAMC,GAAWC,EAAAA,EAAAA,IAAsBH,IAEvC,OAAOE,EAAWE,KAAKC,MAAMH,GAAY,IAC7C,CAEO,SAASI,GAAwBC,IACpCC,EAAAA,EAAAA,IAAsBR,GAAiBI,KAAKK,UAAUF,GAC1D,C,+ECsCA,MAAMG,GAAgD,CAACC,EAAAA,EAAaC,QAASD,EAAAA,EAAaE,aAAa,IAAAC,GAAA,CAAAnI,KAAA,SAAAoI,OAAA,yCAAAC,GAAA,CAAArI,KAAA,SAAAoI,OAAA,qBAAAE,GAAA,CAAAtI,KAAA,SAAAoI,OAAA,mBAExF,SAASG,IAAiB,OAAEC,EAAM,YAAEC,EAAW,QAAEC,IAC5D,MAAMC,GAAsBC,EAAAA,EAAAA,YAAWC,EAAAA,IAChCC,EAAYC,IAAiBC,EAAAA,EAAAA,UAAsC/K,GACpEgL,IAAWC,EAAAA,EAAAA,OACV7J,GAAM8J,KAAWH,EAAAA,EAAAA,UAAiB,IAClCI,GAASC,KAAcL,EAAAA,EAAAA,WAAkB,IACzCM,GAAUC,KAAeP,EAAAA,EAAAA,UAAiB,IAC1CQ,KAAoBC,EAAAA,EAAAA,IAAQC,EAAAA,KAC7B,4BAAEC,KAAgCC,EAAAA,EAAAA,KAClClM,GC/DH,WACH,MAAOA,EAA2BmM,IAAgCb,EAAAA,EAAAA,UAC9Dc,EAAAA,UAEGN,IAAoBC,EAAAA,EAAAA,IAAQC,EAAAA,IAE7BK,GAAiBC,EAAAA,EAAAA,UAAQ,IACL,SACkC,KAA0DlJ,EAAoC0I,OAGvJ,CAACA,IAUJ,OARAS,EAAAA,EAAAA,YAAU,KACNF,EACKG,MAAMC,IACHN,EAA6BM,EAAOC,QAAQ,IAE/CC,OAAOC,IAAUC,EAAAA,EAAAA,IAASD,EAAO,4BAA2B,GAClE,CAACP,IAEGrM,CACX,CDyCsC8M,IAC3BhK,GAAiBiK,KAAsBzB,EAAAA,EAAAA,UAAoBtJ,GAC5DgL,GAAiBC,GACnBF,GAAmBpK,EAA0BsK,EAAejN,GAA0BC,OACpFiN,GAAkBD,GACpBpB,IAAYsB,EAAAA,EAAAA,IAAmBF,EAAexK,IAAwB1C,IACpEqN,IAAaC,EAAAA,GAAAA,GAAiBvC,EAAQ,iBAAmB,oBACzDwC,IAAYD,EAAAA,GAAAA,GAAiBvC,EAAQ,cACrCyC,IAAeF,EAAAA,GAAAA,GAAiBvC,EAAQ,kBAAoB,GAC5D0C,GAAaC,QAAOJ,EAAAA,GAAAA,GAAiBvC,EAAQ,YAAc,IAC3D4C,IAAmBL,EAAAA,GAAAA,GAAiBvC,EAAQ,uBAAyB,qBACpE6C,GAAeC,KAAoBtC,EAAAA,EAAAA,WAAkB,IACrDuC,GAAgBC,KAAsBC,EAAAA,EAAAA,GAA2B1D,KACjE2D,KAAYjC,EAAAA,EAAAA,IAAQkC,EAAAA,IACrBC,IAAUC,EAAAA,EAAAA,QAAwB,MAExC,IAAIC,GAAY,GACZC,GAAU,GACVC,GAAc,GACdC,GAAa,GACbC,GAAY,GACZC,GAAQ,IAgCZ,WACI,GAAsB,qBAAXC,OAAwB,CAC/B,MAAMC,EAAQ,IAAIC,gBAAgBrD,GAASsD,QAC3CT,GAAYO,EAAMG,IAAI,eAAiB,GACvCR,GAAcK,EAAMG,IAAI,iBAAmB,GAC3CP,GAAaI,EAAMG,IAAI,gBAAkB,GACzCN,GAAYG,EAAMG,IAAI,eAAiB,GACvCT,GAAUM,EAAMG,IAAI,aAAe,GACnCL,GAAQE,EAAMG,IAAI,UAAY,EAClC,CACJ,CAxCAC,GAEA,MAAMC,IAA0B1C,EAAAA,EAAAA,UAC5B,KAAM2C,EAAAA,EAAAA,GAAehD,GAA6B,qBAClD,CAACA,KAECiD,IAAwB5C,EAAAA,EAAAA,UAC1B,KAAM2C,EAAAA,EAAAA,GAAehD,GAA6B,eAClD,CAACA,KAECkD,IAAyB7C,EAAAA,EAAAA,UAC3B,KAAM2C,EAAAA,EAAAA,GAAehD,GAA6B,qBAClD,CAACA,KAECmD,IAAmB9C,EAAAA,EAAAA,UAAQ,KACtB2C,EAAAA,EAAAA,GAAehD,GAA6B,eACpD,CAACA,MACE,iBAAEoD,KAAqBC,EAAAA,EAAAA,MACtBC,GAAiBC,GAAoBC,GAAOC,KAAWC,EAAAA,EAAAA,GAAaN,KACpE,CAAEO,GAAYC,GAAkBC,KAAgBC,EAAAA,EAAAA,GAAyB3E,EAAWjK,UACpF6O,GAAc,CAAGC,GAAgBC,KAAgBC,EAAAA,EAAAA,GAAiB/E,EAAW1K,WAC7E,CAAE0P,KAAmBC,EAAAA,EAAAA,MACrBC,GAAkBC,GAAwBC,IE/G9C,SAAgCzP,GACnC,MAAM,4BAAEkL,IAAgCC,EAAAA,EAAAA,KAClCuE,GAAmBnE,EAAAA,EAAAA,UAAQ,KACtB2C,EAAAA,EAAAA,GAAehD,EAA6B,qBACpD,CAACA,IACEyE,GAA0BpE,EAAAA,EAAAA,UAAQ,KAC7B2C,EAAAA,EAAAA,GAAehD,EAA6B,qBACpD,CAACA,IACEzF,EAAQiK,GAAkBE,aAAe,eACzCC,EAAcF,GAAyBH,wBAA0B,sCACjEM,GAAsBvE,EAAAA,EAAAA,UAAQ,IAAOvL,EAAW,EAAC+P,EAAAA,EAAAA,GAA2B/P,IAAa,IAAK,CAACA,KAC9FyP,IAAsBzC,EAAAA,EAAAA,GAA2B8C,GAExD,MAAO,CAACrK,EAAOoK,EAAaJ,GAAsB,GACtD,CFiG2EO,CAAuB3F,EAAWrK,UAsEzGiQ,eAAeC,GAAaC,GACxBA,EAAMC,iBACNpE,IAAoBqE,GAChBA,EAAwBtI,KAAI,CAACuI,EAAOrI,IAAWA,IAAUoI,EAAwBE,OAAS,GAAWD,MAEzG,MAAME,GAAelP,EAAAA,EAAAA,IAAmB+I,EAAYlJ,GAEpD,IACI0L,IAAiB,SACX4D,EAAAA,EAAAA,GAAuB9D,GAAkB6D,EAAc9B,KD1KrEgC,EAAAA,EAAAA,GAAyB9H,IC4KjB,MAAM+H,GAA8BrE,EAAAA,GAAAA,GAChCvC,EACJ6G,GAAAA,EAAcC,6BAEVF,SACMA,KAEVG,EAAAA,EAAAA,IAAmBvE,GAAWxB,GAAkB,CAC5C,CACIoF,MAAO,qBACP,UAAe,cAG3B,CAAE,MAAOtE,GACLgB,IAAiB,GACjB,MAAMkE,EAAelF,aAAiBmF,MAAQnF,EAAMoF,QAAUpF,EAC9D3B,EAAoBgH,KAAKH,EAAc,SACvCpC,KACA1C,GAAc5B,EAClB,CACJ,CAEA,SAAS8G,GAAe3P,EAAkB8O,GACtC,MAAMc,GAAgBC,EAAAA,EAAAA,IAAoB7P,EAAU8O,EAAO,CAACgB,EAAAA,GAAeC,EAAAA,GAAaC,EAAAA,KAClFC,EAAoB,IAAKpH,KAAe+G,GAE9CjF,GAAesF,GACfxF,GAAcwF,GAEdnH,EAAcmH,EAClB,EA3FAjG,EAAAA,EAAAA,YAAU,KACN,IACI,MAAMkG,EAAe7I,KACjB6I,IACApH,EAAcoH,GACdzF,GAAcyF,GACdhH,GAAQgH,EAAa9Q,MACrBuL,GAAeuF,IAEnBC,GAAiB,qBAAsBhE,OAAOnD,SAASoH,MACvDD,GAAiB,gBAAiBtE,IAClCsE,GAAiB,kBAAmBpE,IACpCoE,GAAiB,iBAAkBnE,IACnCmE,GAAiB,gBAAiBlE,IAClCkE,GAAiB,cAAerE,IAChCqE,GAAiB,WAAYjE,IAC7BiE,GACIE,EAAAA,GAAuBC,YACvBxF,EAAAA,GAAAA,GAAiBvC,EAAQgI,EAAAA,GAAyBD,aAC9CzD,GAAiB2D,2BAEzBL,GACIE,EAAAA,GAAuBI,6BACvB3F,EAAAA,GAAAA,GAAiBvC,EAAQgI,EAAAA,GAAyBE,8BAAgC,kBAEtFN,GACIE,EAAAA,GAAuBK,YACvB5F,EAAAA,GAAAA,GAAiBvC,EAAQgI,EAAAA,GAAyBG,aAAe,iCAErEP,GACIE,EAAAA,GAAuB/Q,WACvBwL,EAAAA,GAAAA,GAAiBvC,EAAQgI,EAAAA,GAAyBjR,YAAc,IAEpE6Q,GACIE,EAAAA,GAAuB9Q,WACvBuL,EAAAA,GAAAA,GAAiBvC,EAAQgI,EAAAA,GAAyBhR,YAAc,IAEpE4Q,GACIE,EAAAA,GAAuB7Q,UACvBsL,EAAAA,GAAAA,GAAiBvC,EAAQgI,EAAAA,GAAyB/Q,WAAa,IAEnE2Q,GAAiBE,EAAAA,GAAuBM,oBAAqB9D,GAAiB+D,aAClF,CAAE,MAAOvG,GACLwG,QAAQxG,MAAM,yCAA0CA,EAC5D,CAAC,QACGjB,IAAW,EACf,IAED,IAyDH,SAAS0H,GAAiBC,EAAoBC,GAC1C,MAAMC,EAAcF,EAAa,EAAIC,EAC/Bf,EAAoB,IAAKpH,EAAYzJ,KAAM6R,GAEjD/H,GAAQ+H,GACRnI,EAAcmH,GACdvI,GAAwBuI,EAC5B,CAEA,SAASE,GAAiBvP,EAAekO,GACrC,MAAMc,GAAgBC,EAAAA,EAAAA,IAAoBjP,EAAOkO,EAAO,CAACgB,EAAAA,GAAeC,EAAAA,KAExEjH,GAAezI,IAAiB,IAAWA,KAAsBuP,KACrE,CAEA,SAASsB,GAAoBtQ,EAA8BuQ,GACnDvQ,EAAMT,WAAagR,IACnBvQ,EAAMT,SAAWgR,EACjB1G,GAAc5B,GACd8B,GAAe9B,GAEvB,CAEA,SAASuI,GAAYxQ,EAA8B6F,GAC/C,MAAM4K,EAAgC,UAAbzQ,EAAM0Q,IAAkB/D,GAAawB,OACxDwC,EAAsC,gBAAb3Q,EAAM0Q,IAAwBrD,GAAmBc,OAC1E9K,EAAQrD,EAAM4Q,SAAW/E,GAAwBgF,UAAU7Q,EAAM4Q,UAAY,GAC7EE,EAAiB9Q,EAAM8Q,eAAiB9E,GAAuBhM,EAAM8Q,gBAAkB,GAE7F,OAAQ9Q,EAAMf,MACV,IAAK,OACL,IAAK,QACL,IAAK,MACD,OACInD,EAAAA,EAAAA,GAACiV,EAAAA,EAAK,CACFL,GAAI1Q,EAAM0Q,GACVvR,KAAMa,EAAMb,KACZ+O,MAAOjG,EAAWjI,EAAMb,OAASa,EAAMgR,aACvCzR,SAAUS,EAAMT,SAChB8D,MAAOA,EACPqC,IAAK1F,EAAMoD,OAAS+B,EAAQ/B,OAAS+B,EAAQjC,YAC7CuK,YAAaqD,EACb7R,KAAMe,EAAMf,KACZgS,aAAW,EACXC,SAAWnD,GAAUgB,GAAe/O,EAAMb,KAAM4O,EAAMoD,OAAOjD,OAC7DkD,QAAShF,GACTiF,SAAUrR,EAAMoD,SAG5B,IAAK,SACD,OACItH,EAAAA,EAAAA,GAACwV,EAAAA,EAAM,CAEHZ,GAAI1Q,EAAM0Q,GACVrN,MAAOA,EACPlE,KAAMa,EAAMb,KACZsO,YAAaqD,EACbvR,SAAUS,EAAMT,SAChBgS,OAAQ1G,GACR2G,OAAO,UACPP,aAAa,EACbvL,IAAKP,EAAQjC,YACbuO,QACkB,aAAbzR,EAAM0Q,IAAqBzD,IACd,eAAbjN,EAAM0Q,IAAuBgB,EAAAA,kBAChB,YAAb1R,EAAM0Q,IAAoBhG,IACb,UAAb1K,EAAM0Q,IAAkB3D,IACX,qBAAb/M,EAAM0Q,IAA6B/F,IACpC,GAEJuD,MACkB,aAAblO,EAAM0Q,IAAqBzD,GAAgBkB,OAAS,GACvC,eAAbnO,EAAM0Q,IAAuBgB,EAAiB,iBAAAvD,OAAS,GAC1C,YAAbnO,EAAM0Q,IAAoBhG,GAAeyD,OAAS,GACrC,UAAbnO,EAAM0Q,IAAkB3D,GAAaoB,OAAS,GACjC,qBAAbnO,EAAM0Q,IAA6B/F,GAAmBwD,OAAS,EAC1DlG,EAAWjI,EAAMb,MACjB,GAEV+R,SAAWhD,GAAUa,GAAe/O,EAAMb,KAAM+O,GAChDkD,QAAShF,IA5BJ,GAAGvG,IAAQ7F,EAAM0Q,KAAK1Q,EAAMb,QA+B7C,IAAK,qBACD,OAAIsR,GACAH,GAAoBtQ,GAAO,IAEvBlE,EAAAA,EAAAA,GAACwV,EAAAA,EAAM,CACHjO,MAAOoJ,GACPgB,YAAaf,GACb+E,QAAS9E,GAET+D,GAAI1Q,EAAM0Q,GACVvR,KAAMa,EAAMb,KACZI,SAAUS,EAAMT,SAChBgS,OAAQ1G,GACR2G,OAAO,UACP9L,IAAKP,EAAQjC,YACbgL,MAAOjG,EAAWjI,EAAMb,MACxB+R,SAAWhD,GAAUa,GAAe/O,EAAMb,KAAM+O,GAChDkD,QAAShF,GACT6E,aAAW,GAVN,GAAGpL,IAAQ7F,EAAM0Q,KAAK1Q,EAAMb,SAezCwR,GACAL,GAAoBtQ,GAAO,IAEvBlE,EAAAA,EAAAA,GAACwV,EAAAA,EAAM,CAEHZ,GAAI1Q,EAAM0Q,GACVvR,KAAMa,EAAMb,KACZI,SAAUS,EAAMT,SAChBgS,OAAQ1G,GACRnF,IAAKP,EAAQjC,YACbgO,SAAWhD,GAAUa,GAAe/O,EAAMb,KAAM+O,GAChDkD,QAAShF,GACToF,OAAO,UACPnO,MAAO8J,GACPM,YAAaL,GACbqE,QAASpE,GACTa,MAAOjG,EAAWjI,EAAMb,MACxB8R,aAAW,GAbN,GAAGpL,IAAQ7F,EAAM0Q,KAAK1Q,EAAMb,UAkB7CmR,GAAoBtQ,GAAO,GACpB,MAEX,IAAK,oBACD,OAAI6M,IACAyD,GAAoBtQ,GAAO,IAEvBlE,EAAAA,EAAAA,GAACiV,EAAAA,EAAK,IAEEjE,GACJvN,SAAUS,EAAMT,SAChBmG,IAAKP,EAAQjC,YACbgL,MAAOjG,EAAWjI,EAAMb,OAAS,GACjC+R,SAAWnD,GAAUgB,GAAe/O,EAAMb,KAAM4O,EAAMoD,OAAOjD,OAC7D+C,aAAW,EACXG,QAAShF,IAPJ,GAAGvG,IAAQ7F,EAAM0Q,KAAK1Q,EAAMb,UAWzCmR,GAAoBtQ,GAAO,GACpB,MAEf,IAAK,WACD,OACIlE,EAAAA,EAAAA,GAAC6V,EAAAA,EAAQ,CACLtO,OACIvH,EAAAA,EAAAA,GAAC8V,EAAAA,EAAI,CACDC,QAAQ,QACRC,wBAAyB,CACrBC,QAAQC,EAAAA,GAAAA,GAAmB,CACvBC,QAAS,GAAG5O,IAAQrD,EAAMT,SAAW,KAAO,KAC5C2S,cAAc,OAM9B/S,KAAMa,EAAMb,KACZgT,QAASlK,EAAWjI,EAAMb,MAC1B+R,SAAUA,KAnL9B,IAA8B9R,EAC1B2P,GAD0B3P,EAmL2BY,EAAMb,MAlLjC8I,EAAW7I,GAkL4B,EACjDgS,QAAShF,IAJJ,GAAGvG,IAAQ7F,EAAM0Q,KAAK1Q,EAAMb,QAO7C,IAAK,wBACD,OACI/C,EAAAA,EAAAA,IAACgW,EAAAA,EAAK,CAAC7Q,WAAS,EAAApF,SAAA,EACZL,EAAAA,EAAAA,GAACwV,EAAAA,EAAM,CAEHZ,GAAI1Q,EAAM0Q,GACVrN,MAAOA,EACPlE,KAAMa,EAAMb,KACZsO,YAAaqD,EACbvR,SAAUS,EAAMT,SAChBmG,IAAKP,EAAQjC,YACbmP,UAAQ,EACRnE,MAAOjG,EAAWjI,EAAMb,OAAS,GACjCiS,QAAShF,GACToF,OAAO,UACPP,aAAa,EACbQ,QACIa,MAAMC,QAAQvS,EAAMwS,cACdxS,EAAMwS,aAAa7M,KAAK8M,IAAc,CACpCvE,MAAOuE,EACPR,QAASQ,MAEX,GAEVvB,SAAWhD,GA3MHwE,EAC5BtT,EACA8O,KAGAa,GAAe3P,EADEkT,MAAMC,QAAQrE,GAASA,EAAkB,OAAVA,QAA4ByE,IAAVzE,EAAsB,CAACA,GAAmB,GAC1E,EAsMOwE,CAAwB1S,EAAMb,KAAM+O,GACzD,cAAalO,EAAMb,MArBd,GAAG0G,IAAQ7F,EAAM0Q,KAAK1Q,EAAMb,QAuBpCa,EAAM4S,gBAAmD,GAAjC3K,EAAWjI,EAAMb,MAAMgP,QAAenO,EAAM6S,eACjE/W,EAAAA,EAAAA,GAACgX,EAAAA,EAAc,CAACpN,IAAKP,EAAQN,WAAWtI,EAAAA,GAASC,KAAKuW,OAAO5W,SACxD0P,GAAwBhH,WAAW7E,EAAM6S,iBAE9C,OA7Bc,GAAGhN,IAAQ7F,EAAM0Q,KAAK1Q,EAAMb,QAiC1D,QACI,OAAO,KAEnB,CAEA,OACI/C,EAAAA,EAAAA,IAAA,OAAKsJ,IAAKP,EAAQ5D,UAAUpF,SAAA,CACP,cAAhByL,GACG9L,EAAAA,EAAAA,GAAA,OAAK4J,IAAG4B,GAAkDnL,UACtDL,EAAAA,EAAAA,GAACkX,EAAAA,EAAU,CAAC3P,MAAM,YAAY4P,KAAK,QAAQpB,QAAQ,QAAQqB,MAAM,QAAQC,QAAStL,EAAQ1L,UACtFL,EAAAA,EAAAA,GAACsX,EAAAA,EAAS,CAACnP,MAAO1H,EAAAA,GAAS2H,KAAKmP,eAGxC,KACH9K,IAAUzM,EAAAA,EAAAA,GAACwX,EAAAA,EAAgB,CAAC5N,IAAKP,EAAQD,iBAAqB,MAC/D9I,EAAAA,EAAAA,IAAA,QACImX,IAAKxI,GACLrF,IAAG,CAAGP,EAAQlD,KAAOsG,GAA4BpD,EAAQtB,UAA1BsB,EAAQvB,QAA2B,OAClE,cAAY,yBACZ4P,OAAO,OACP9C,GAAIzG,GACJwJ,SAAW1F,IACPD,GAAaC,GAAOvE,OAAOC,IAAUC,EAAAA,EAAAA,IAASD,EAAO,mCAAkC,EACzFtN,SAAA,CAED8L,EACKpL,GAA0BC,KAAK6I,KAAI,CAAC1I,EAAWkT,KAC7C,MAAMuD,EAAiBvD,EAAa,IAAM3R,GAC1C,OACI1C,EAAAA,EAAAA,GAAA,OAEI4J,IAAG,CACCP,EAAQ/C,oBACR5D,GAAO2R,EAAa,EACdhL,EAAQ7B,mBAAmBiF,IAC3BmL,EACIvO,EAAQ1B,iBACR0B,EAAQxB,eAAe4E,KAChCA,IAAWmL,EAAiBvO,EAAQvB,QAAUuB,EAAQtB,UAAS,OAClE1H,SAEDuX,GACGtX,EAAAA,EAAAA,IAACuX,EAAAA,EAAK,CAACC,QAAS,EAAEzX,SAAA,EACdC,EAAAA,EAAAA,IAAA,OAAAD,SAAA,EACIL,EAAAA,EAAAA,GAAA,OAAK4J,IAAKP,EAAQvC,WAAWzG,UACzBL,EAAAA,EAAAA,GAACF,GAAAA,EAAW,CAACK,MAAO,MAAOC,OAAQ,UAEvCJ,EAAAA,EAAAA,GAAC0J,EAAU,CAACC,MAvXzC5I,GAA0BC,KAAK6I,KAAI,CAACkO,EAAGhO,KAAK,CAC/CC,OAAQD,EAAQ,IAAMrH,GAAO,SAAWqH,EAAQrH,GAAO,YAAc,iBAuXrCpC,EAAAA,EAAAA,IAAA,OAAKsJ,IAAG8B,GAA0BrL,SAAA,EAC9BL,EAAAA,EAAAA,GAACgY,EAAAA,EAAO,CACJjC,QAAQ,KACR5N,MAAM,UACNyB,IAAKP,EAAQ3C,UACbuR,MAAM,SAAQ5X,SAEbiO,IAA8BnN,EAAU+W,sBAE7C5X,EAAAA,EAAAA,IAACuX,EAAAA,EAAK,CACFM,UAAU,MACV5O,WAAW,SACXtC,eAAe,SACf6Q,QAAS,EACTlO,IAAKP,EAAQF,cAAc9I,SAAA,EAE3BL,EAAAA,EAAAA,GAACoY,GAAAA,EAAY,CAACjY,MAAO,IAAK,cAAY,mBACtCH,EAAAA,EAAAA,GAAA,OAAK4J,IAAG+B,GAAwBtL,UAC5BL,EAAAA,EAAAA,GAACqY,GAAAA,EAAY,CACTC,OAAQ/J,GACRgK,UAAW9X,EAAAA,GAAS+J,OAAOgO,QAC3BC,SAAU,QAGlBzY,EAAAA,EAAAA,GAAC8V,EAAAA,EAAI,CAACC,QAAQ,QAAQL,OAAO,OAAOvN,MAAM,UAAS9H,SAC9CkO,YAIbvO,EAAAA,EAAAA,GAAC8V,EAAAA,EAAI,CACDC,QAAQ,QACR2C,UAAU,KACVvQ,MAAM,UACNyB,IAAKP,EAAQnB,eACb+P,MAAM,SAAQ5X,SAEb0P,GAAwB4I,uBAGjC3Y,EAAAA,EAAAA,GAACsW,EAAAA,EAAK,CAAC7Q,WAAS,EAAC8D,WAAW,MAAKlJ,SAC5Bc,EAAUE,WAAWgR,OAChBlR,EAAUE,WAAWwI,KAAI,CAAC3F,EAAO6F,KAC/B,MAAMnB,EAAW8L,GAAYxQ,EAAO6F,GACpC,OAAOnB,GACHtI,EAAAA,EAAAA,IAACgW,EAAAA,EAAK,CAEFa,KAAM,CAAEyB,GAAI,GAAIC,GAAI3U,EAAM/D,OAAS,IACnCyJ,IAAKP,EAAQT,SAASvI,SAAA,CAErB6D,GAAO4U,oBAAoBzG,OACtBnO,GAAO4U,oBAAoBjP,KACxBkP,IACG/Y,EAAAA,EAAAA,GAAC8V,EAAAA,EAAI,IAEGiD,EAAehZ,MACnBiZ,MAAO,CACH1Q,SACUyQ,EAAezQ,UACf,UACZjI,SAGE0P,GACIgJ,EAAeE,aAVlBF,EAAeE,cAgB9B,KACLrQ,IAzBI,GAAGmB,IAAQ7F,EAAM0Q,KAAK1Q,EAAMb,QA2BrC,IAAI,IAEV,OAETlC,EAAUwH,QACPrI,EAAAA,EAAAA,IAACgW,EAAAA,EAAK,CACF7Q,WAAS,EACT8D,WAAW,SACXtC,eAAe,SACf2C,IAAKP,EAAQzC,gBAAgBvG,SAAA,CAE5BgU,EAAa,EAAI,GACdrU,EAAAA,EAAAA,GAACsW,EAAAA,EAAK,CAACa,KAAM,CAAEyB,GAAI,GAAI1S,GAAI,GAAK0D,IAAKP,EAAQT,SAASvI,UAClDL,EAAAA,EAAAA,GAACkZ,EAAAA,EAAQ,CACLnD,QAAQ,YACRsB,QAASA,IAAMjD,GAAiBC,GAAa,GAC7C8C,KAAK,QACLhU,KAAK,SACLyG,IAAKP,EAAQV,OACbwQ,UAAUnZ,EAAAA,EAAAA,GAACoZ,EAAAA,EAAQ,IAAI/Y,SAEtB0P,GAAwBsJ,qBAGjC,MACJrZ,EAAAA,EAAAA,GAACsW,EAAAA,EAAK,CAACa,KAAM,CAAEyB,GAAI,GAAI1S,GAAI,GAAK0D,IAAKP,EAAQT,SAASvI,UAClDL,EAAAA,EAAAA,GAACkZ,EAAAA,EAAQ,CACLnD,QAAQ,UACRR,UAC+B,WAA1BpU,EAAUwH,OAAOxF,KACZU,GAAgBwQ,GACH,IAAb1H,KACJ+B,IACAvN,EAAUE,WAAW4C,MAChBC,GACkB,0BAAfA,EAAMf,MACNe,EAAM4S,gBAC6B,IAAnC3K,EAAWjI,EAAMb,OAAOgP,SAGtC,gBAC8B,WAA1BlR,EAAUwH,OAAOxF,KACXU,GAAgBwQ,GACH,IAAb1H,GAEVwK,KAAK,QACLhP,MAAM,OACNyB,IAAKP,EAAQV,OACb0O,QAASA,KACL,GAC8B,WAA1BlW,EAAUwH,OAAOxF,OACdU,GAAgBwQ,GACrB,CACE,GAAIpF,GAAQqK,QACR,IAAK,MAAMvE,KAAa5T,EAAUE,WAAY,CAC1C,MAAMkY,EACAtK,GAAQqK,QAAQE,cACZ,IAAIzE,EAAUH,MAGxB,GAE6B,oBADjB2E,GACFE,iBAEAF,EACFE,iBAEJ,MAER,CAGJrF,GAAiBC,EAAY,EACjC,GAEJ,cAAa,GAAGlT,EAAUwH,OAAOxF,QAAQkR,IACzClR,KAAMhC,EAAUwH,OAAOxF,KACvBuW,WAAW1Z,EAAAA,EAAAA,GAAC2Z,EAAAA,EAAW,IAAItZ,SAE1Bc,EAAUwH,OAAOP,YAI9B,MACJpI,EAAAA,EAAAA,GAAC8V,EAAAA,EAAI,CAACC,QAAQ,QAAQ5N,MAAM,UAAUyB,IAAKP,EAAQnB,eAAe7H,SAC7D,GAAG4P,GAAsBvN,QAAQ2R,EAAa,KAAKpE,GAAsB2J,MACpE7Y,GAA0BC,KAAKqR,cAI7C,MApLC,GAAGgC,IAAalT,EAAU+W,qBAqL7B,IAGZ,KACL3H,QAIjB,C,kGGvpBA,MAqMA,EArM6D,CACzDvP,KAAM,CACF,CACIkX,mBAAoB,aACpB7W,WAAY,CACR,CACIuT,GAAI,aACJvR,KAAM,aACNF,KAAM,OACNM,UAAU,EACVqR,SAAU,YACVE,eAAgB,uBAChBE,aAAc,GACd/U,MAAO,GAEX,CACIyU,GAAI,YACJvR,KAAM,YACNF,KAAM,OACNM,UAAU,EACVqR,SAAU,WACVE,eAAgB,sBAChBE,aAAc,GACd/U,MAAO,GAEX,CACIyU,GAAI,QACJvR,KAAM,WACNF,KAAM,SACN2R,SAAU,QACVE,eAAgB,mBAChBvR,UAAU,EACVyR,aAAc,GACd/U,MAAO,GAEX,CACIyU,GAAI,aACJvR,KAAM,QACNF,KAAM,oBACNM,UAAU,EACVyR,aAAc,GACd/U,MAAO,GAEX,CACIyU,GAAI,QACJvR,KAAM,QACNF,KAAM,QACNM,UAAU,EACVqR,SAAU,QACVE,eAAgB,mBAChBE,aAAc,GACd/U,MAAO,GAEX,CACIyU,GAAI,eACJvR,KAAM,QACNF,KAAM,MACNM,UAAU,EACVqR,SAAU,QACVE,eAAgB,mBAChBE,aAAc,GACd/U,MAAO,GAEX,CACIyU,GAAI,mBACJvR,KAAM,mCACNF,KAAM,SACNM,UAAU,EACVoW,oBAAqB,cACrB/E,SAAU,kBACVE,eAAgB,6BAChBE,aAAc,GACd/U,MAAO,GAEX,CACIyU,GAAI,UACJvR,KAAM,aACNF,KAAM,OACNmE,QAAQ,EACR4N,aAAc,IAElB,CACIN,GAAI,eACJvR,KAAM,kBACNF,KAAM,OACNmE,QAAQ,EACR4N,aAAc,KAGtBvM,OAAQ,CACJP,KAAM,WACNjF,KAAM,WAGd,CACI+U,mBAAoB,kBACpB7W,WAAY,CACR,CACIuT,GAAI,UACJvR,KAAM,UACNF,KAAM,OACNM,UAAU,EACVqR,SAAU,UACVE,eAAgB,yBAChBE,aAAc,GACd/U,MAAO,GAEX,CACIyU,GAAI,WACJvR,KAAM,WACNF,KAAM,SACNM,UAAU,EACVqR,SAAU,WACVE,eAAgB,sBAChBE,aAAc,GACd/U,MAAO,GAEX,CACIyU,GAAI,cACJvR,KAAM,kBACNF,KAAM,qBACNM,UAAU,EACVyR,aAAc,GACd/U,MAAO,GAEX,CACIyU,GAAI,aACJvR,KAAM,aACNF,KAAM,SACNM,UAAU,EACViT,aAAcd,EAAAA,iBACdd,SAAU,YACVE,eAAgB,yBAChBE,aAAc,GACd/U,MAAO,GAEX,CACIyU,GAAI,UACJvR,KAAM,UACNF,KAAM,SACNM,UAAU,EACVoW,oBAAqB,UACrB/E,SAAU,UACVE,eAAgB,qBAChBE,aAAc,GACd/U,MAAO,GAEX,CACIyU,GAAI,QACJvR,KAAM,QACNF,KAAM,qBACNM,UAAU,EACVyR,aAAc,GACdF,eAAgB,mBAChB7U,MAAO,GAEX,CACIyU,GAAI,OACJvR,KAAM,OACNF,KAAM,OACNM,UAAU,EACVqR,SAAU,OACVE,eAAgB,kBAChBE,aAAc,GACd/U,MAAO,GAEX,CACIyU,GAAI,kBACJvR,KAAM,4BACNF,KAAM,wBACNM,UAAU,EACViT,aAAcoD,EAAAA,sBACd5E,aAAc,GACd9R,mBAAoB,CAAC2W,EAAAA,GAAoBC,gBACzCC,cAAe,GACfnD,gBAAgB,EAChBhC,SAAU,qBACViC,cAAe,iBACf5W,MAAO,IAEX,CACIyU,GAAI,kBACJvR,KAAM,SACNF,KAAM,WACNM,UAAU,EACVqR,SAAU,cACVI,cAAc,IAGtBvM,OAAQ,CACJP,KAAM,SACNjF,KAAM,Y,8BClMf,SAASiL,EACZ8L,EAA2B,GAC3BC,EAAY,IAEZ,IAAK3D,MAAMC,QAAQyD,GACf,OAGJ,MAAME,EAAUF,EAAaG,MAAK,EAAGC,SAAUA,GAAOA,EAAIC,gBAAkBJ,EAAUI,gBAEtF,OAAIH,EACOA,EAAQhI,WADnB,CAKJ,C,mFCjBO,MAAM2H,EAAsB,CAC/BS,cAAe,UACfC,UAAW,YACXT,eAAgB,iBAChBU,iBAAkB,mBAClBC,iBAAkB,oBAGTzM,EAAqBA,CAACvK,EAAmBiX,EAAgBC,IAClEA,EAAc5Z,QAAO,CAACC,EAAKgD,IAAWA,EAAMT,UAAYE,EAAkBO,EAAMb,MAAQnC,EAAM,EAAIA,GAAM,GACxG0Z,EAAevI,OA4BZ,SAASjP,EAAmB0X,EAAoBC,GACnD,IAAIC,EAAiB,IAAKF,GAmC1B,OAjCAC,EAAoBjX,SAAQ,EAAGR,WAAUC,iBACrC,IAAI0X,EAAaD,EAAe1X,GAEhCC,EAAWO,SAASoX,IAChB,OAAQA,GACJ,KAAKnB,EAAoBS,cACrBS,EAAazE,MAAMC,QAAQwE,GAAcA,EAAWE,KAAK,MAAQF,EACjE,MAEJ,KAAKlB,EAAoBC,eACrBiB,EAAazE,MAAMC,QAAQwE,GAAcA,EAAWE,KAAK,KAAOF,EAChE,MAEJ,KAAKlB,EAAoBW,iBACrBO,EAAmC,kBAAfA,EAA0BA,EAAWV,cAAgBU,EACzE,MAEJ,KAAKlB,EAAoBY,iBACrBM,EAAmC,kBAAfA,EAA0BA,EAAWG,cAAgBH,EACzE,MAEJ,KAAKlB,EAAoBU,UACrBQ,EAAanQ,KAAKK,UAAU8P,GAKpC,IAGJD,EAAe1X,GAAY2X,CAAU,IAGlCD,CACX,C,+DCrEO,MAAMK,EAA6C,CACtD,0CAA2ChQ,EAAAA,EAAaiQ,YACxD,oCAAqCjQ,EAAAA,EAAakQ,aAClD,uBAAwBlQ,EAAAA,EAAamQ,UACrC,8CAA+CnQ,EAAAA,EAAaoQ,QAC5D,oCAAqCpQ,EAAAA,EAAaqQ,WAClD,4CAA6CrQ,EAAAA,EAAasQ,SAC1D,uCAAwCtQ,EAAAA,EAAauQ,cACrD,gDAAiDvQ,EAAAA,EAAawQ,UAC9D,sDAAuDxQ,EAAAA,EAAayQ,aACpE,6CAA8CzQ,EAAAA,EAAa0Q,WAC3D,iCAAkC1Q,EAAAA,EAAa2Q,gBAG5C,SAASnK,EAA2B/P,GACvC,OAAOuZ,EAAqBvZ,EAChC,C,4ECpBO,MAAMsR,EAAgB,CACzB6I,gBAAiB,UACjBC,cAAe,SAGN7I,EAAc,CACvB4I,gBAAiB,WACjBC,cAAe,SAGN5I,EAAiB,CAC1B2I,gBAAiB,WACjBC,cAAe,mBAQZ,SAAS/I,EACZjP,EACAkO,EACA+J,GAEA,MAAMjJ,EAAgB,CAAE,CAAChP,GAAQkO,GAEjC,SAASgK,EAAgBC,GACjBnY,IAAUmY,EAAWJ,kBACrB/I,EAAcmJ,EAAWH,eAAiB,GAElD,CAUA,OARI1F,MAAMC,QAAQ0F,GACdA,EAAYrY,SAASuY,IACjBD,EAAgBC,EAAW,IAG/BD,EAAgBD,GAGbjJ,CACX,C,2EC5CO,MAAM4G,EAAkC,CAC3C,iBACA,SACA,QACA,2BACA,gB,+FCSJ,MAAM1O,EAAgD,C,SAACC,EAAaiR,UAE7D,SAASlL,IACZ,MAAM,4BAAEpE,IAAgCC,EAAAA,EAAAA,KAClCuE,GAAmBnE,EAAAA,EAAAA,UAAQ,KACtB2C,EAAAA,EAAAA,GAAehD,EAA6B,qBACpD,CAACA,IACEyE,GAA0BpE,EAAAA,EAAAA,UAAQ,KAC7B2C,EAAAA,EAAAA,GAAehD,EAA6B,qBACpD,CAACA,KACGmE,IAAmBrC,EAAAA,EAAAA,GAA2B1D,GASrD,MAAO,CAPe,CAClBwJ,GAAI,WACJvR,KAAM,WACNkE,MAAOiK,EAAiB1P,UAAY,WACpC6P,YAAaF,EAAwB8K,qBAAuB,qCAGzCpL,EAC3B,C,gDC5BO,IAAKuB,EAAa,SAAbA,GAAa,OAAbA,EAAa,0DAAbA,CAAa,K,8CCLlB,MAAM8J,EAAoBC,IAC7BC,OAAOC,KAAKF,GAAa3Y,SAAS8Y,IAC9B,MAAMxK,EAAQqK,EAAYG,GACL,kBAAVxK,EACPqK,EAAYG,GAAKxK,EAAMyK,OACN,WAAVzK,IAGHqK,EAAYG,GAFF,OAAVxK,QAA4ByE,IAAVzE,EAEDoK,EAAiBpK,GAEjB,KAEzB,IAGGqK,G,0BCXJ1K,eAAeQ,EAClBuK,EACAC,EACAC,GAEA,MAAMC,EAA0C,IAAKT,EAAiBO,IAItE,GAFAE,EAAmBD,eAAiBA,EAErB,2BAAXF,GAAkD,sBAAXA,EAAgC,CACvE,MAAMI,GAA0BC,EAAAA,EAAAA,MAEhCF,EAAsC,kBAAIC,EACpCR,OAAOC,KAAKO,GACTrT,KAAKyQ,GAAQ,GAAGA,KAAO4C,EAAwB5C,OAC/Ca,OACH,EACV,OAEMiC,EAAAA,EAAAA,IAAS,uBAAuBN,KAAWhS,KAAKK,UAAU8R,GACpE,C,+BCzBO,SAAS/R,EAAsB7H,EAAM+O,GACxC,IACIiL,eAAeC,QAAQja,EAAM+O,EACjC,CAAE,MAAOzE,GACL,CAER,CAEO,SAAS9C,EAAsBxH,GAClC,IACI,OAAOga,eAAeE,QAAQla,EAClC,CAAE,MAAOsK,GACL,OAAO,IACX,CACJ,CAEO,SAAS6E,EAAyBnP,GACrC,IACIga,eAAeG,WAAWna,EAC9B,CAAE,MAAOsK,GACL,CAER,C,oDCtBA,IAAI9D,EAAM,CACT,OAAQ,CACP,MACA,MAED,UAAW,CACV,MACA,MAED,OAAQ,CACP,OAED,UAAW,CACV,MACA,MAED,aAAc,CACb,MACA,MAED,UAAW,CACV,MACA,MAED,aAAc,CACb,MACA,MAED,UAAW,CACV,MACA,MAED,aAAc,CACb,MACA,MAED,UAAW,CACV,MACA,MAED,aAAc,CACb,MACA,MAED,UAAW,CACV,OAED,OAAQ,CACP,MACA,MAED,UAAW,CACV,MACA,MAED,aAAc,CACb,MACA,MAED,UAAW,CACV,MACA,MAED,OAAQ,CACP,MACA,MAED,UAAW,CACV,MACA,MAED,aAAc,CACb,MACA,MAED,UAAW,CACV,MACA,MAED,OAAQ,CACP,MACA,MAED,UAAW,CACV,MACA,MAED,OAAQ,CACP,MACA,MAED,UAAW,CACV,MACA,MAED,UAAW,CACV,MACA,KAED,aAAc,CACb,MACA,MAGF,SAAS4T,EAAoBC,GAC5B,IAAIC,EAAoBC,EAAE/T,EAAK6T,GAC9B,OAAOG,QAAQC,UAAUvQ,MAAK,KAC7B,IAAIwQ,EAAI,IAAIjL,MAAM,uBAAyB4K,EAAM,KAEjD,MADAK,EAAEC,KAAO,mBACHD,CAAC,IAIT,IAAIE,EAAMpU,EAAI6T,GAAM9I,EAAKqJ,EAAI,GAC7B,OAAOJ,QAAQK,IAAID,EAAIE,MAAM,GAAGtU,IAAI8T,EAAoBI,IAAIxQ,MAAK,IACzDoQ,EAAoB/I,IAE7B,CACA6I,EAAoBd,KAAO,IAAOD,OAAOC,KAAK9S,GAC9C4T,EAAoB7I,GAAK,MACzBwJ,EAAOC,QAAUZ,C","sources":["components/IconComponents/GeotabWithR.tsx","components/SiteWideDemoForm/siteWideDemoFormHelpers.ts","components/styleObjects/siteWideDemoForm.ts","components/SiteWideDemoForm/StatusDots.tsx","services/siteWideDemoFormSessionService.ts","components/SiteWideDemoForm/SiteWideDemoForm.tsx","hooks/useLazyLoadedSiteWideDemoFormStructure.tsx","hooks/useSubindustryDropdown.ts","components/SiteWideDemoForm/siteWideDemoFormStructure/en.ts","helpers/formHelper.ts","helpers/formHelpers/formData.js","helpers/formHelpers/industryDropdownHelper.ts","helpers/formHelpers/staticForms.ts","helpers/selectOptions/regionsOperateOptions.ts","hooks/useIndustryDropdown.ts","models/form.ts","helpers/objectHelper.ts","services/marketingCloudPublicService.ts","services/sessionStorageService.js","components/SiteWideDemoForm/siteWideDemoFormStructure|lazy|/^/.//.*$/|chunkName: siteWideDemoFormStructure|groupOptions: {}|namespace object"],"sourcesContent":["import React from 'react';\nimport { v2Colors } from '@web-for-marketing/react-ui';\n\nexport function GeotabWithR(props: React.SVGProps): JSX.Element {\n return (\n \n \n \n \n \n \n \n \n \n \n \n );\n}\n","import { GridSize } from '@mui/material';\nimport { DefaultTextProps } from '@web-for-marketing/react-ui';\nimport siteWideDemoFormStructure from './siteWideDemoFormStructure/en';\nimport { LanguageCode } from '@models/languageCode';\n\ninterface BaseType {\n id: string;\n required?: boolean;\n labelKey?: string;\n placeholderKey?: string;\n hidden?: boolean;\n width?: GridSize;\n startAdornmentText?: {\n contentKey: string;\n props?: DefaultTextProps;\n fontSize?: string;\n }[];\n}\n\ninterface TextType extends BaseType {\n name: 'first_name' | 'last_name' | 'company' | 'city' | 'email' | 'phone' | 'AB_name__c' | 'AB_treatment__c';\n type: 'text' | 'email' | 'tel';\n initialValue: string;\n}\n\ninterface SelectType extends BaseType {\n name: 'Title__c' | 'industry' | 'fleet_size' | 'country' | 'How_Did_You_Hear_About_Geotab__c';\n type: 'select';\n initialValue: string;\n optionsArray?: string[];\n optionsComponentKey?: string;\n}\n\ninterface ConditionalInputType extends BaseType {\n name: 'user_title' | 'Title';\n type: 'conditional-input';\n initialValue: string;\n}\n\ninterface ConditionalSelectType extends BaseType {\n name: 'Sub_Industry__c' | 'state';\n type: 'conditional-select';\n initialValue: string;\n}\n\ninterface CheckboxType extends BaseType {\n name: 'opt_in';\n type: 'checkbox';\n initialValue: boolean;\n}\n\ninterface MultiSelectCheckboxType extends BaseType {\n name: 'multiple_region_select__c';\n type: 'multi-select-checkbox';\n optionsArray: string[];\n initialValue: string[];\n preSubmitTransform?: string[];\n helperTextKey?: string;\n checkBoxWidth?: GridSize;\n mobileCheckBoxWidth?: GridSize;\n forceMultiPick?: boolean;\n optionalText?: string;\n}\n\nexport type SiteWideDemoFormField =\n | TextType\n | SelectType\n | ConditionalInputType\n | ConditionalSelectType\n | CheckboxType\n | MultiSelectCheckboxType;\n\nexport interface SiteWideDemoFormStructureSection {\n sectionDescription: string;\n formFields: SiteWideDemoFormField[];\n button: {\n text: string;\n type: 'button' | 'reset' | 'submit' | undefined;\n };\n}\n\nexport interface SiteWideDemoFormStructure {\n tabs: SiteWideDemoFormStructureSection[];\n}\n\nexport const siteWideDemoFormFields: SiteWideDemoFormField[] = siteWideDemoFormStructure.tabs.reduce<\n SiteWideDemoFormField[]\n>((acc, formGroup) => acc.concat(formGroup.formFields), []);\n\ntype ExtractInitialValue = T extends { initialValue: infer R } ? R : never;\n\ntype InferTextTypeInitialValue = ExtractInitialValue;\ntype InferSelectTypeInitialValue = ExtractInitialValue;\ntype InferConditionalInputTypeInitialValue = ExtractInitialValue;\ntype InferConditionalSelectTypeInitialValue = ExtractInitialValue;\ntype InferCheckboxTypeInitialValue = ExtractInitialValue;\ntype InferMultiCheckboxTypeInitialValue = ExtractInitialValue;\n\nexport type SiteWideDemoFormFieldValues = {\n first_name: InferTextTypeInitialValue;\n last_name: InferTextTypeInitialValue;\n company: InferTextTypeInitialValue;\n city: InferTextTypeInitialValue;\n email: InferTextTypeInitialValue;\n phone: InferTextTypeInitialValue;\n AB_name__c: InferTextTypeInitialValue;\n AB_treatment__c: InferTextTypeInitialValue;\n How_Did_You_Hear_About_Geotab__c: InferSelectTypeInitialValue;\n Title__c: InferSelectTypeInitialValue;\n industry: InferSelectTypeInitialValue;\n fleet_size: InferSelectTypeInitialValue;\n country: InferSelectTypeInitialValue;\n user_title: InferConditionalInputTypeInitialValue;\n Title: InferConditionalInputTypeInitialValue;\n Sub_Industry__c: InferConditionalSelectTypeInitialValue;\n state: InferConditionalSelectTypeInitialValue;\n opt_in: InferCheckboxTypeInitialValue;\n multiple_region_select__c: InferMultiCheckboxTypeInitialValue;\n page: number;\n Lead_Source_URL__c: string;\n utm_campaign__c?: string;\n utm_content__c?: string;\n utm_medium__c?: string;\n utm_source__c?: string;\n utm_term__c?: string;\n GCLID__c?: string;\n recaptchaToken?: string;\n campaign_id?: string;\n Lead_Source_Additional_Details__c?: string;\n LeadSource?: string;\n Form_Language_Country__c?: string;\n assetName?: string;\n assetType?: string;\n assetUrl?: string;\n};\n\n/* eslint-disable camelcase */\nexport const initialEmptyObject: SiteWideDemoFormFieldValues = {\n first_name: '',\n last_name: '',\n Title__c: '',\n Title: '',\n AB_name__c: '',\n AB_treatment__c: '',\n company: '',\n industry: '',\n Sub_Industry__c: '',\n multiple_region_select__c: [],\n fleet_size: '',\n country: '',\n state: '',\n city: '',\n email: '',\n phone: '',\n How_Did_You_Hear_About_Geotab__c: '',\n opt_in: false,\n user_title: '',\n page: 0,\n Lead_Source_URL__c: '',\n assetName: '',\n assetType: '',\n assetUrl: '',\n};\n\nexport const initialDisabledButtons: boolean[] = siteWideDemoFormStructure.tabs.reduce(\n (acc: boolean[]) => (acc.push(true), acc),\n []\n);\n\ninterface PreSubmitTransform {\n fieldKey: string;\n transforms: string[];\n}\n\nexport const allPreSubmitTransforms: PreSubmitTransform[] = siteWideDemoFormFields.reduce(\n (acc: PreSubmitTransform[], fieldObject) =>\n fieldObject.type === 'multi-select-checkbox' && fieldObject.preSubmitTransform && fieldObject.name\n ? (acc.push({\n fieldKey: fieldObject.name,\n transforms: fieldObject.preSubmitTransform,\n }),\n acc)\n : acc,\n []\n);\n\nexport const getAllRequiredFields = (): string[] =>\n siteWideDemoFormFields.reduce((acc: string[], fieldObject) => {\n if (fieldObject.required && fieldObject.name) {\n acc.push(fieldObject.name);\n }\n return acc;\n }, []);\n\nexport const getCurrentDisabledButtons = (\n currentFormValues: SiteWideDemoFormFieldValues,\n baseStructureData: SiteWideDemoFormStructureSection[]\n): boolean[] => {\n const disabledButtons: boolean[] = [];\n\n baseStructureData.forEach((fieldGroup) => {\n const fields = fieldGroup.formFields;\n const shouldDisable = fields.some((field) => {\n if (field.required && !currentFormValues[field.name]) {\n return true;\n }\n });\n\n disabledButtons.push(shouldDisable);\n });\n\n return disabledButtons;\n};\n\nexport const translatedSiteWideDemoFormStructure: Record = {\n [LanguageCode.en]: 'en',\n [LanguageCode.enGb]: 'en-gb',\n [LanguageCode.frCa]: 'fr-ca',\n [LanguageCode.es]: 'es',\n [LanguageCode.it]: 'it',\n [LanguageCode.frFr]: 'fr',\n [LanguageCode.ptBr]: 'pt-br',\n [LanguageCode.de]: 'de',\n [LanguageCode.enAu]: 'en-au',\n [LanguageCode.esMx]: 'es-mx',\n [LanguageCode.pl]: 'en',\n [LanguageCode.nl]: 'nl',\n [LanguageCode.se]: 'en',\n [LanguageCode.ae]: 'en',\n [LanguageCode.ie]: 'en-ie',\n [LanguageCode.apac]: 'en-sg',\n [LanguageCode.enCb]: 'en',\n [LanguageCode.idn]: 'en',\n [LanguageCode.jp]: 'en',\n};\n","import { breakpoints, v2Colors } from '@web-for-marketing/react-ui';\n\nexport const siteWideDemoFormStyles = {\n container: {\n position: 'relative',\n background: v2Colors.background.white,\n width: '100%',\n borderRadius: '12px',\n padding: '2.8rem 3rem 4rem',\n boxSizing: 'border-box',\n boxShadow: '0 20px 40px rgba(0, 0, 0, 0.08)',\n [`@media (max-width: ${breakpoints.md})`]: {\n padding: '2.4rem',\n },\n },\n form: { width: '100%', position: 'relative', overflow: 'hidden', paddingBottom: '1rem' },\n formGroupContainers: {\n flexDirection: 'column',\n transition: 'transform 200ms ease',\n opacity: 0,\n },\n subtitles: {\n marginBottom: '.8rem',\n },\n buttonContainer: {\n margin: '0',\n [`@media (max-width: ${breakpoints.md})`]: {\n flexDirection: 'row-reverse',\n },\n },\n geotabLogo: {\n display: 'none',\n marginBottom: '1.6rem',\n [`@media (max-width: ${breakpoints.sm}px)`]: {\n display: 'flex',\n justifyContent: 'center',\n },\n },\n progressBar: {\n marginBottom: '1rem',\n maxWidth: '70rem',\n width: '100%',\n },\n selectInput: {\n width: '100%',\n marginBottom: '2rem',\n marginTop: '0.5rem',\n },\n hidden: {\n display: 'none',\n },\n label: {\n marginBottom: '2rem',\n marginTop: '0.5rem',\n },\n previousContainer: (enableAnimation: boolean) =>\n ({\n transform: enableAnimation ? 'translateX(-10rem)' : 'none',\n position: 'absolute',\n }) as const,\n currentContainer: {\n transform: 'none !important',\n position: 'static',\n height: 'auto',\n visibility: 'visible',\n },\n nextContainer: (enableAnimation: boolean) =>\n ({\n transform: enableAnimation ? 'translateX(10rem)' : 'none',\n position: 'absolute',\n }) as const,\n visible: {\n opacity: '1 !important',\n visibility: 'visible',\n },\n invisible: {\n opacity: 0,\n visibility: 'hidden',\n },\n inlineText: {\n display: 'inline',\n },\n spacedText: {\n marginTop: '1rem',\n },\n hiddenAllyText: {\n opacity: 0,\n position: 'absolute',\n color: v2Colors.text.inversePrimary,\n fontSize: '.1px',\n lineHeight: '.1px',\n top: 0,\n left: -999,\n height: 1,\n width: 1,\n zIndex: -999,\n },\n button: {\n width: '100%',\n [`@media (max-width: ${breakpoints.md})`]: {\n marginBottom: '1.2rem',\n },\n },\n formItem: {\n padding: '0 1rem',\n margin: '0 !important',\n },\n multiCheckBoxSpacing: {\n padding: '0 2.4rem 0 0 !important',\n },\n multiCheckBoxOutlineSpacing: {\n '&:nth-child(even) > div': {\n padding: '.6rem 0 .6rem 1.2rem',\n height: '100%',\n },\n '&:nth-child(odd) > div': {\n padding: '.6rem 1.2rem .6rem 0',\n height: '100%',\n },\n [`@media (max-width: ${breakpoints.md})`]: {\n '&:nth-child(even) > div': {\n padding: '.6rem 0',\n height: '100%',\n },\n '&:nth-child(odd) > div': {\n padding: '.6rem 0',\n height: '100%',\n },\n },\n },\n helperText: (helperTextColor?: string) =>\n ({\n color: helperTextColor,\n fontWeight: 400,\n width: '100%',\n fontSize: '1.4rem',\n [`@media (min-width: ${breakpoints.xl})`]: {\n fontSize: '1.6rem',\n },\n [`@media (max-width: ${breakpoints.sm})`]: {\n fontSize: '1.2rem',\n },\n marginBottom: '1rem',\n }) as const,\n logoContainer: {\n marginBottom: '0.8rem',\n },\n loadingSpinner: {\n position: 'absolute',\n top: '50%',\n left: '50%',\n },\n} as const;\n","import React from 'react';\nimport { v2Colors } from '@web-for-marketing/react-ui';\n\ninterface StatusDotsProps {\n steps: {\n status: 'completed' | 'active' | 'pending';\n }[];\n}\n\nconst classes = {\n dotContainer: {\n display: 'flex',\n flexDirection: 'row',\n justifyContent: 'center',\n alignItems: 'center',\n },\n dots: {\n marginRight: '1.6rem',\n },\n} as const;\n\nexport function StatusDots({ steps }: StatusDotsProps): JSX.Element {\n return (\n
\n {steps.map((step, index) => {\n return step.status === 'active' ? (\n \n \n \n \n ) : (\n \n \n \n );\n })}\n
\n );\n}\n","import { SiteWideDemoFormFieldValues } from '@components/SiteWideDemoForm/siteWideDemoFormHelpers';\nimport { getSessionStorageItem, removeSessionStorageItem, setSessionStorageItem } from './sessionStorageService';\nexport const demoFormDataKey = 'siteWideDemoFormData';\n\nexport function updateSiteWideDemoFormData(newFormData: SiteWideDemoFormFieldValues): void {\n let formStorage = getSiteWideDemoFormData();\n\n if (formStorage) {\n formStorage = { ...formStorage, ...newFormData };\n } else {\n formStorage = newFormData;\n }\n\n setSiteWideDemoFormData(formStorage);\n}\n\nexport function getSiteWideDemoFormData(): SiteWideDemoFormFieldValues {\n const formData = getSessionStorageItem(demoFormDataKey);\n\n return formData ? JSON.parse(formData) : null;\n}\n\nexport function setSiteWideDemoFormData(newFormData: SiteWideDemoFormFieldValues): void {\n setSessionStorageItem(demoFormDataKey, JSON.stringify(newFormData));\n}\n\nexport function clearSiteWideDemoFormData(): void {\n removeSessionStorageItem(demoFormDataKey);\n}\n","import { useTranslation } from '@stateManagement/TranslationContext';\nimport { useAtom } from 'jotai';\nimport React, { FormEvent, useContext, useEffect, useMemo, useRef, useState } from 'react';\nimport {\n SiteWideDemoFormField,\n SiteWideDemoFormFieldValues,\n allPreSubmitTransforms,\n getAllRequiredFields,\n getCurrentDisabledButtons,\n initialDisabledButtons,\n initialEmptyObject,\n siteWideDemoFormFields,\n} from './siteWideDemoFormHelpers';\nimport { getCurrentProgress, preSubmitTransform } from '@helpers/formHelpers/formData';\nimport { isMobileAtom, selectedLanguageAtom } from '@atoms/appSettings';\nimport { NotificationContext } from '@contexts/NotificationContext';\nimport { redirectToThankyou } from '@helpers/form';\nimport { LazyLoadedSelectOptionsTypes, useLazyLoadedSelectOptions } from '@hooks/useLazyLoadedSelectOptions';\nimport { DropdownType } from '@models/customForm';\nimport { getTranslation } from '@helpers/languageTranslations';\nimport { useStaticValues } from '@stateManagement/StaticValuesContext';\nimport { useProvinceStateDropdown } from '@hooks/useProvinceStateDropdown';\nimport { useTitleDropdown } from '@hooks/useTitleDropdown';\nimport { useIndustryDropdown } from '@hooks/useIndustryDropdown';\nimport { useSubindustryDropdown } from '@hooks/useSubindustryDropdown';\nimport { useLocation } from 'react-router-dom';\nimport { postMarketingCloudForm } from '@services/marketingCloudPublicService';\nimport {\n Heading,\n Select,\n Text,\n Input,\n ForwardIcon,\n BackIcon,\n Checkbox,\n V2Button,\n v2Colors,\n IconButton,\n CloseIcon,\n useRecaptcha,\n} from '@web-for-marketing/react-ui';\nimport { CircularProgress, FormHelperText, Stack, Grid2 } from '@mui/material';\nimport { countryValues, getResetFieldValues, industryValues, titleValues } from '@helpers/formHelpers/staticForms';\nimport { siteWideDemoFormStyles as classes } from '@components/styleObjects/siteWideDemoForm';\nimport { logError } from '@helpers/errors';\nimport { fleetSizeOptions } from '@helpers/selectOptions/fleetSizeOptions';\nimport { StatusDots } from './StatusDots';\nimport {\n clearSiteWideDemoFormData,\n getSiteWideDemoFormData,\n setSiteWideDemoFormData,\n} from '@services/siteWideDemoFormSessionService';\nimport { ParseAbbreviations } from '@components/ParseAbbreviations';\nimport { CustomSectionComponentProps } from '@models/customSection';\nimport { FormParamKeys } from '@models/form';\nimport { findSettingValue } from '@helpers/formHelper';\nimport { useLazyLoadedSiteWideDemoFormStructure } from '@hooks/useLazyLoadedSiteWideDemoFormStructure';\nimport { CapterraLogo } from '@icon/CapterraLogo';\nimport { GeotabWithR } from '@icon/GeotabWithR';\nimport { RatingSelect } from '@components/BlogSection/BlogComponents/Shared/RatingSelect';\nimport { standardFormFieldNames, standardFormSettingNames } from '@helpers/form';\n\nconst selectOptions: LazyLoadedSelectOptionsTypes[] = [DropdownType.Country, DropdownType.HearAboutUs];\n\nexport default function SiteWideDemoForm({ params, displayMode, onClose }: CustomSectionComponentProps): JSX.Element {\n const notificationContext = useContext(NotificationContext);\n const [formValues, setFormValues] = useState(initialEmptyObject);\n const location = useLocation();\n const [page, setPage] = useState(1);\n const [loading, setLoading] = useState(true);\n const [progress, setProgress] = useState(0);\n const [selectedLanguage] = useAtom(selectedLanguageAtom);\n const { selectedLanguageTranslation } = useTranslation();\n const siteWideDemoFormStructure = useLazyLoadedSiteWideDemoFormStructure();\n const [disabledButtons, setDisabledButtons] = useState(initialDisabledButtons);\n const updateButtons = (currentValues: SiteWideDemoFormFieldValues): void =>\n setDisabledButtons(getCurrentDisabledButtons(currentValues, siteWideDemoFormStructure.tabs));\n const updateProgress = (currentValues: SiteWideDemoFormFieldValues): void =>\n setProgress(getCurrentProgress(currentValues, getAllRequiredFields(), siteWideDemoFormFields));\n const htmlFormID = findSettingValue(params, 'html-form-id') || 'generic-lead-form';\n const returnURL = findSettingValue(params, 'return-url');\n const formSubtitle = findSettingValue(params, 'form-subtitle') || '';\n const formRating = Number(findSettingValue(params, 'rating')) || 4.5;\n const marketingCloudID = findSettingValue(params, 'marketing-cloud-id') || 'generic-lead-form';\n const [disableSubmit, setDisableSubmit] = useState(false);\n const [countryOptions, hearAboutUsOptions] = useLazyLoadedSelectOptions(selectOptions);\n const [isMobile] = useAtom(isMobileAtom);\n const formRef = useRef(null);\n\n let utmSource = '';\n let utmTerm = '';\n let utmCampaign = '';\n let utmContent = '';\n let utmMedium = '';\n let gclID = '';\n\n getQuery();\n\n const siteWideFormTranslation = useMemo(\n () => getTranslation(selectedLanguageTranslation, 'siteWideDemoForm'),\n [selectedLanguageTranslation]\n );\n const paginationTranslation = useMemo(\n () => getTranslation(selectedLanguageTranslation, 'pagination'),\n [selectedLanguageTranslation]\n );\n const placeholderTranslation = useMemo(\n () => getTranslation(selectedLanguageTranslation, 'formPlaceholders'),\n [selectedLanguageTranslation]\n );\n const pageLanguageCode = useMemo(() => {\n return getTranslation(selectedLanguageTranslation, 'salesforce');\n }, [selectedLanguageTranslation]);\n const { recaptchaSiteKey } = useStaticValues();\n const [enableRecaptcha, RecaptchaComponent, token, refresh] = useRecaptcha(recaptchaSiteKey);\n const [, stateLabel, statePlaceholder, stateOptions] = useProvinceStateDropdown(formValues.country);\n const [showUserTitle, , userTitleProps, titleOptions] = useTitleDropdown(formValues.Title__c);\n const [, industryOptions] = useIndustryDropdown();\n const [subIndustryLabel, subIndustryPlaceholder, subindustryOptions] = useSubindustryDropdown(formValues.industry);\n\n const getSteps = (): { status: 'completed' | 'active' | 'pending' }[] => {\n return siteWideDemoFormStructure.tabs.map((_, index) => ({\n status: index + 1 === page ? 'active' : index < page ? 'completed' : 'pending',\n }));\n };\n\n function getQuery(): void {\n if (typeof window !== 'undefined') {\n const query = new URLSearchParams(location.search);\n utmSource = query.get('utm_source') || '';\n utmCampaign = query.get('utm_campaign') || '';\n utmContent = query.get('utm_content') || '';\n utmMedium = query.get('utm_medium') || '';\n utmTerm = query.get('utm_term') || '';\n gclID = query.get('gclid') || '';\n }\n }\n\n useEffect(() => {\n try {\n const demoFormData = getSiteWideDemoFormData();\n if (demoFormData) {\n setFormValues(demoFormData);\n updateButtons(demoFormData);\n setPage(demoFormData.page);\n updateProgress(demoFormData);\n }\n updateFieldValue('Lead_Source_URL__c', window.location.href);\n updateFieldValue('utm_source__c', utmSource);\n updateFieldValue('utm_campaign__c', utmCampaign);\n updateFieldValue('utm_content__c', utmContent);\n updateFieldValue('utm_medium__c', utmMedium);\n updateFieldValue('utm_term__c', utmTerm);\n updateFieldValue('GCLID__c', gclID);\n updateFieldValue(\n standardFormFieldNames.campaignId,\n findSettingValue(params, standardFormSettingNames.campaignId) ||\n pageLanguageCode.demoFormDefaultCampaignId\n );\n updateFieldValue(\n standardFormFieldNames.leadSourceAdditionalDetails,\n findSettingValue(params, standardFormSettingNames.leadSourceAdditionalDetails) || 'Demo Requested'\n );\n updateFieldValue(\n standardFormFieldNames.leadSource,\n findSettingValue(params, standardFormSettingNames.leadSource) || 'Website - Request a Demo Form'\n );\n updateFieldValue(\n standardFormFieldNames.assetName,\n findSettingValue(params, standardFormSettingNames.assetName) || ''\n );\n updateFieldValue(\n standardFormFieldNames.assetType,\n findSettingValue(params, standardFormSettingNames.assetType) || ''\n );\n updateFieldValue(\n standardFormFieldNames.assetUrl,\n findSettingValue(params, standardFormSettingNames.assetUrl) || ''\n );\n updateFieldValue(standardFormFieldNames.formLanguageCountry, pageLanguageCode.formLanguage);\n } catch (error) {\n console.error('An error occurred retrieving form data', error);\n } finally {\n setLoading(false);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n async function handleSubmit(event: FormEvent): Promise {\n event.preventDefault();\n setDisabledButtons((previousDisabledButtons) =>\n previousDisabledButtons.map((value, index) => (index === previousDisabledButtons.length - 1 ? true : value))\n );\n const submitValues = preSubmitTransform(formValues, allPreSubmitTransforms);\n\n try {\n setDisableSubmit(true);\n await postMarketingCloudForm(marketingCloudID, submitValues, token);\n clearSiteWideDemoFormData();\n const onFormSubmitSuccessFunction = findSettingValue<() => Promise>(\n params,\n FormParamKeys.OnFormSubmitSuccessFunction\n );\n if (onFormSubmitSuccessFunction) {\n await onFormSubmitSuccessFunction();\n }\n redirectToThankyou(returnURL, selectedLanguage, [\n {\n event: 'custom_form_submit',\n ['form_name']: 'demo_form',\n },\n ]);\n } catch (error) {\n setDisableSubmit(false);\n const errorMessage = error instanceof Error ? error.message : error;\n notificationContext.show(errorMessage, 'error');\n refresh();\n updateButtons(formValues);\n }\n }\n\n function handleOnChange(fieldKey: string, value: string | boolean | string[] | number): void {\n const updatedValues = getResetFieldValues(fieldKey, value, [countryValues, titleValues, industryValues]);\n const updatedFormValues = { ...formValues, ...updatedValues };\n\n updateProgress(updatedFormValues);\n updateButtons(updatedFormValues);\n\n setFormValues(updatedFormValues);\n }\n\n function handleToggleOnChange(fieldKey: keyof SiteWideDemoFormFieldValues): void {\n handleOnChange(fieldKey, !formValues[fieldKey]);\n }\n\n const handleMultiSelectChange = (\n fieldKey: keyof SiteWideDemoFormFieldValues,\n value: string | string[] | number | null\n ): void => {\n const newValue = Array.isArray(value) ? value : value !== null && value !== undefined ? [value as string] : [];\n handleOnChange(fieldKey, newValue);\n };\n\n function handlePageChange(groupIndex: number, amount: number): void {\n const currentPage = groupIndex + 1 + amount;\n const updatedFormValues = { ...formValues, page: currentPage } as SiteWideDemoFormFieldValues;\n\n setPage(currentPage);\n setFormValues(updatedFormValues);\n setSiteWideDemoFormData(updatedFormValues);\n }\n\n function updateFieldValue(field: string, value: string | boolean | string[] | number | null): void {\n const updatedValues = getResetFieldValues(field, value, [countryValues, titleValues]);\n\n setFormValues((currentFormValues) => ({ ...currentFormValues, ...updatedValues }));\n }\n\n function updateRequiredField(field: SiteWideDemoFormField, requiredValue: boolean): void {\n if (field.required !== requiredValue) {\n field.required = requiredValue;\n updateButtons(formValues);\n updateProgress(formValues);\n }\n }\n\n function getFormItem(field: SiteWideDemoFormField, index: number): JSX.Element | null {\n const showStateOptions = field.id === 'state' && stateOptions.length;\n const showSubindustryOptions = field.id === 'subindustry' && subindustryOptions.length;\n const label = field.labelKey ? siteWideFormTranslation.formField[field.labelKey] : '';\n const placeholderKey = field.placeholderKey ? placeholderTranslation[field.placeholderKey] : '';\n\n switch (field.type) {\n case 'text':\n case 'email':\n case 'tel':\n return (\n handleOnChange(field.name, event.target.value)}\n onFocus={enableRecaptcha}\n disabled={field.hidden}\n />\n );\n case 'select':\n return (\n 0) ||\n (field.id === 'fleet-size' && fleetSizeOptions.length > 0) ||\n (field.id === 'country' && countryOptions.length > 0) ||\n (field.id === 'title' && titleOptions.length > 0) ||\n (field.id === 'self-attribution' && hearAboutUsOptions.length > 0)\n ? formValues[field.name]\n : ''\n }\n onChange={(value) => handleOnChange(field.name, value)}\n onFocus={enableRecaptcha}\n />\n );\n case 'conditional-select': {\n if (showStateOptions) {\n updateRequiredField(field, true);\n return (\n handleOnChange(field.name, value)}\n onFocus={enableRecaptcha}\n shrinkLabel\n />\n );\n }\n\n if (showSubindustryOptions) {\n updateRequiredField(field, true);\n return (\n handleOnChange(field.name, value)}\n onFocus={enableRecaptcha}\n weight='regular'\n label={subIndustryLabel}\n placeholder={subIndustryPlaceholder}\n options={subindustryOptions}\n value={formValues[field.name]}\n shrinkLabel\n />\n );\n }\n\n updateRequiredField(field, false);\n return null;\n }\n case 'conditional-input':\n if (showUserTitle) {\n updateRequiredField(field, true);\n return (\n handleOnChange(field.name, event.target.value)}\n shrinkLabel\n onFocus={enableRecaptcha}\n />\n );\n } else {\n updateRequiredField(field, false);\n return null;\n }\n case 'checkbox':\n return (\n \n }\n key={`${index}${field.id}${field.name}`}\n name={field.name}\n checked={formValues[field.name]}\n onChange={() => handleToggleOnChange(field.name)}\n onFocus={enableRecaptcha}\n />\n );\n case 'multi-select-checkbox': {\n return (\n \n ({\n value: option,\n content: option,\n }))\n : []\n }\n onChange={(value) => handleMultiSelectChange(field.name, value)}\n data-testid={field.name}\n />\n {field.forceMultiPick && formValues[field.name].length == 1 && field.helperTextKey ? (\n \n {siteWideFormTranslation.helperText[field.helperTextKey]}\n \n ) : null}\n \n );\n }\n default:\n return null;\n }\n }\n\n return (\n
\n {displayMode === 'bg-popout' ? (\n
\n \n \n \n
\n ) : null}\n {loading ? : null}\n {\n handleSubmit(event).catch((error) => logError(error, 'submitting site wide demo form'));\n }}\n >\n {formValues\n ? siteWideDemoFormStructure.tabs.map((formGroup, groupIndex) => {\n const isCurrentGroup = groupIndex + 1 === page;\n return (\n groupIndex + 1\n ? classes.previousContainer(!loading)\n : isCurrentGroup\n ? classes.currentContainer\n : classes.nextContainer(!loading),\n !loading && isCurrentGroup ? classes.visible : classes.invisible,\n ]}\n >\n {isCurrentGroup ? (\n \n
\n
\n \n
\n \n
\n \n {formSubtitle ? formSubtitle : formGroup.sectionDescription}\n \n \n \n
\n \n
\n \n {formRating}\n \n \n
\n \n {siteWideFormTranslation.a11yInstructions}\n \n
\n \n {formGroup.formFields.length\n ? formGroup.formFields.map((field, index) => {\n const formItem = getFormItem(field, index);\n return formItem ? (\n \n {field?.startAdornmentText?.length\n ? field?.startAdornmentText?.map(\n (startAdornment) => (\n \n {\n siteWideFormTranslation[\n startAdornment.contentKey\n ]\n }\n \n )\n )\n : null}\n {formItem}\n \n ) : null;\n })\n : null}\n \n {formGroup.button ? (\n \n {groupIndex + 1 > 1 ? (\n \n handlePageChange(groupIndex, -1)}\n size='large'\n type='button'\n css={classes.button}\n leftIcon={}\n >\n {siteWideFormTranslation.returnToPrevious}\n \n \n ) : null}\n \n \n field.type === 'multi-select-checkbox' &&\n field.forceMultiPick &&\n formValues[field.name]?.length === 1\n )\n }\n aria-disabled={\n formGroup.button.type === 'button'\n ? disabledButtons[groupIndex]\n : progress !== 1\n }\n size='large'\n color='blue'\n css={classes.button}\n onClick={() => {\n if (\n formGroup.button.type === 'button' &&\n !disabledButtons[groupIndex]\n ) {\n if (formRef.current) {\n for (const formField of formGroup.formFields) {\n const inputElement =\n formRef.current.querySelector(\n `#${formField.id}`\n );\n\n if (\n typeof (inputElement as HTMLInputElement)\n ?.reportValidity === 'function' &&\n !(\n inputElement as HTMLInputElement\n ).reportValidity()\n ) {\n return;\n }\n }\n }\n\n handlePageChange(groupIndex, +1);\n }\n }}\n data-testid={`${formGroup.button.type}-${groupIndex}`}\n type={formGroup.button.type}\n rightIcon={}\n >\n {formGroup.button.text}\n \n \n \n ) : null}\n \n {`${paginationTranslation.page} ${groupIndex + 1} ${paginationTranslation.of} ${\n siteWideDemoFormStructure.tabs.length\n }`}\n \n
\n ) : null}\n
\n );\n })\n : null}\n {RecaptchaComponent}\n \n \n );\n}\n","import { useEffect, useMemo, useState } from 'react';\nimport { useAtom } from 'jotai';\nimport { selectedLanguageAtom } from '@atoms/appSettings';\nimport { logError } from '@helpers/errors';\nimport {\n SiteWideDemoFormStructure,\n translatedSiteWideDemoFormStructure,\n} from '@components/SiteWideDemoForm/siteWideDemoFormHelpers';\nimport siteWideDemoFormStructureDefault from '@components/SiteWideDemoForm/siteWideDemoFormStructure/en';\n\nexport function useLazyLoadedSiteWideDemoFormStructure(): SiteWideDemoFormStructure {\n const [siteWideDemoFormStructure, setSiteWideDemoFormStructure] = useState(\n siteWideDemoFormStructureDefault\n );\n const [selectedLanguage] = useAtom(selectedLanguageAtom);\n\n const dynamicImports = useMemo(() => {\n const dynamicImport = import(\n /* webpackChunkName: \"siteWideDemoFormStructure\" */ `@components/SiteWideDemoForm/siteWideDemoFormStructure/${translatedSiteWideDemoFormStructure[selectedLanguage]}`\n );\n return dynamicImport;\n }, [selectedLanguage]);\n\n useEffect(() => {\n dynamicImports\n .then((loader) => {\n setSiteWideDemoFormStructure(loader.default);\n })\n .catch((error) => logError(error, 'get/set dynamic imports'));\n }, [dynamicImports]);\n\n return siteWideDemoFormStructure;\n}\n","import { useMemo } from 'react';\nimport { SelectOption } from '@web-for-marketing/react-ui';\nimport { getSubindustryDropdownType } from '@helpers/formHelpers/industryDropdownHelper';\nimport { getTranslation } from '@helpers/languageTranslations';\nimport { useTranslation } from '@stateManagement/TranslationContext';\nimport { useLazyLoadedSelectOptions, LazyLoadedSelectOptionsTypes } from '@hooks/useLazyLoadedSelectOptions';\n\nexport function useSubindustryDropdown(industry: string): [string, string, SelectOption[]] {\n const { selectedLanguageTranslation } = useTranslation();\n const formTranslations = useMemo(() => {\n return getTranslation(selectedLanguageTranslation, 'formTranslations');\n }, [selectedLanguageTranslation]);\n const placeholderTranslations = useMemo(() => {\n return getTranslation(selectedLanguageTranslation, 'formPlaceholders');\n }, [selectedLanguageTranslation]);\n const label = formTranslations?.subIndustry || 'Sub-Industry';\n const placeholder = placeholderTranslations?.subIndustryPlaceholder || 'Select a subindustry category\\u2026';\n const subindustryDropdown = useMemo(() => (industry ? [getSubindustryDropdownType(industry)] : []), [industry]);\n const [subindustryOptions] = useLazyLoadedSelectOptions(subindustryDropdown as LazyLoadedSelectOptionsTypes[]);\n\n return [label, placeholder, subindustryOptions || []];\n}\n","import { fleetSizeOptions } from '@helpers/selectOptions/fleetSizeOptions';\nimport { regionsOperateOptions } from '@helpers/selectOptions/regionsOperateOptions';\nimport { submitTransformKeys } from '@helpers/formHelpers/formData';\nimport { SiteWideDemoFormStructure } from '../siteWideDemoFormHelpers';\n\nconst siteWideDemoFormStructure: SiteWideDemoFormStructure = {\n tabs: [\n {\n sectionDescription: 'Get a demo',\n formFields: [\n {\n id: 'first-name',\n name: 'first_name',\n type: 'text',\n required: true,\n labelKey: 'firstName',\n placeholderKey: 'firstNamePlaceholder',\n initialValue: '',\n width: 6,\n },\n {\n id: 'last-name',\n name: 'last_name',\n type: 'text',\n required: true,\n labelKey: 'lastName',\n placeholderKey: 'lastNamePlaceholder',\n initialValue: '',\n width: 6,\n },\n {\n id: 'title',\n name: 'Title__c',\n type: 'select',\n labelKey: 'title',\n placeholderKey: 'titlePlaceholder',\n required: true,\n initialValue: '',\n width: 6,\n },\n {\n id: 'user_title',\n name: 'Title',\n type: 'conditional-input',\n required: false,\n initialValue: '',\n width: 6,\n },\n {\n id: 'email',\n name: 'email',\n type: 'email',\n required: true,\n labelKey: 'email',\n placeholderKey: 'emailPlaceholder',\n initialValue: '',\n width: 6,\n },\n {\n id: 'phone-number',\n name: 'phone',\n type: 'tel',\n required: true,\n labelKey: 'phone',\n placeholderKey: 'phonePlaceholder',\n initialValue: '',\n width: 6,\n },\n {\n id: 'self-attribution',\n name: 'How_Did_You_Hear_About_Geotab__c',\n type: 'select',\n required: true,\n optionsComponentKey: 'hearAboutUs',\n labelKey: 'selfAttribution',\n placeholderKey: 'selfAttributionPlaceholder',\n initialValue: '',\n width: 6,\n },\n {\n id: 'ab-name',\n name: 'AB_name__c',\n type: 'text',\n hidden: true,\n initialValue: '',\n },\n {\n id: 'ab-treatment',\n name: 'AB_treatment__c',\n type: 'text',\n hidden: true,\n initialValue: '',\n },\n ],\n button: {\n text: 'Continue',\n type: 'button',\n },\n },\n {\n sectionDescription: 'Company details',\n formFields: [\n {\n id: 'company',\n name: 'company',\n type: 'text',\n required: true,\n labelKey: 'company',\n placeholderKey: 'yourCompanyPlaceholder',\n initialValue: '',\n width: 6,\n },\n {\n id: 'industry',\n name: 'industry',\n type: 'select',\n required: true,\n labelKey: 'industry',\n placeholderKey: 'industryPlaceholder',\n initialValue: '',\n width: 6,\n },\n {\n id: 'subindustry',\n name: 'Sub_Industry__c',\n type: 'conditional-select',\n required: false,\n initialValue: '',\n width: 6,\n },\n {\n id: 'fleet-size',\n name: 'fleet_size',\n type: 'select',\n required: true,\n optionsArray: fleetSizeOptions,\n labelKey: 'fleetSize',\n placeholderKey: 'approxFleetPlaceholder',\n initialValue: '',\n width: 6,\n },\n {\n id: 'country',\n name: 'country',\n type: 'select',\n required: true,\n optionsComponentKey: 'country',\n labelKey: 'country',\n placeholderKey: 'countryPlaceholder',\n initialValue: '',\n width: 6,\n },\n {\n id: 'state',\n name: 'state',\n type: 'conditional-select',\n required: false,\n initialValue: '',\n placeholderKey: 'statePlaceholder',\n width: 6,\n },\n {\n id: 'city',\n name: 'city',\n type: 'text',\n required: true,\n labelKey: 'city',\n placeholderKey: 'cityPlaceholder',\n initialValue: '',\n width: 6,\n },\n {\n id: 'multiple_region',\n name: 'multiple_region_select__c',\n type: 'multi-select-checkbox',\n required: false,\n optionsArray: regionsOperateOptions,\n initialValue: [],\n preSubmitTransform: [submitTransformKeys.JOIN_WITH_SEMI],\n checkBoxWidth: 12,\n forceMultiPick: true,\n labelKey: 'multipleRegionText',\n helperTextKey: 'forceMultiPick',\n width: 12,\n },\n {\n id: 'email-subscribe',\n name: 'opt_in',\n type: 'checkbox',\n required: false,\n labelKey: 'consentText',\n initialValue: false,\n },\n ],\n button: {\n text: 'Submit',\n type: 'submit',\n },\n },\n ],\n};\n\nexport default siteWideDemoFormStructure;\n","import { FormParams, FormParamValueType } from '@models/form';\n\nexport function findSettingValue(\n settingArray: FormParams = [],\n searchKey = ''\n): T | undefined {\n if (!Array.isArray(settingArray)) {\n return undefined;\n }\n\n const setting = settingArray.find(({ key }) => key && key.toLowerCase() === searchKey.toLowerCase());\n\n if (setting) {\n return setting.value as T;\n }\n\n return undefined;\n}\n","export const submitTransformKeys = {\n FLATTEN_ARRAY: 'flatten',\n STRINGIFY: 'stringify',\n JOIN_WITH_SEMI: 'join-with-semi',\n LOWERCASE_STRING: 'lowercase-string',\n UPPERCASE_STRING: 'uppercase-string',\n};\n\nexport const getCurrentProgress = (currentFormValues, requiredFields, baseFieldData) =>\n baseFieldData.reduce((acc, field) => (field.required && currentFormValues[field.name] ? acc + 1 : acc), 0) /\n requiredFields.length;\n\nexport const getCurrentDisabledButtons = (currentFormValues, baseStructureData) => {\n const disabledButtons = [];\n\n baseStructureData.forEach((fieldGroup) => {\n const fields = fieldGroup.formFields;\n const shouldDisable = fields.some((field) => {\n const formValue = currentFormValues[field.name];\n\n if (field.type === 'multiple-select' && field.forceMultiPick) {\n const multiSelectValue = formValue ? formValue.split(';') : [];\n return field.required ? multiSelectValue.length <= 1 : multiSelectValue.length == 1;\n }\n\n if (field.required && !formValue) {\n return true;\n }\n });\n\n disabledButtons.push(shouldDisable);\n });\n\n return disabledButtons;\n};\n\nexport const getGroupFields = (groupKey, baseFieldData) => baseFieldData.filter((field) => field.groupKey === groupKey);\n\nexport function preSubmitTransform(currentFieldValues, preSubmitTransforms) {\n let newFieldValues = { ...currentFieldValues };\n\n preSubmitTransforms.forEach(({ fieldKey, transforms }) => {\n let fieldValue = newFieldValues[fieldKey];\n\n transforms.forEach((transformKey) => {\n switch (transformKey) {\n case submitTransformKeys.FLATTEN_ARRAY:\n fieldValue = Array.isArray(fieldValue) ? fieldValue.join(', ') : fieldValue;\n break;\n\n case submitTransformKeys.JOIN_WITH_SEMI:\n fieldValue = Array.isArray(fieldValue) ? fieldValue.join(';') : fieldValue;\n break;\n\n case submitTransformKeys.LOWERCASE_STRING:\n fieldValue = typeof fieldValue === 'string' ? fieldValue.toLowerCase() : fieldValue;\n break;\n\n case submitTransformKeys.UPPERCASE_STRING:\n fieldValue = typeof fieldValue === 'string' ? fieldValue.toUpperCase() : fieldValue;\n break;\n\n case submitTransformKeys.STRINGIFY:\n fieldValue = JSON.stringify(fieldValue);\n break;\n\n default:\n break;\n }\n });\n\n newFieldValues[fieldKey] = fieldValue;\n });\n\n return newFieldValues;\n}\n","import { DropdownType } from '@models/customForm';\n\ninterface IndustryModuleMapper {\n [key: string]: DropdownType;\n}\n\nexport const industryModuleMapper: IndustryModuleMapper = {\n 'Accommodations, Leisure, and Recreation': DropdownType.Hospitality,\n 'Construction and Specialty Trades': DropdownType.Construction,\n 'Educational Services': DropdownType.Education,\n 'Finance, Real Estate, Rental, and Insurance': DropdownType.Finance,\n 'Health Care and Social Assistance': DropdownType.Healthcare,\n 'Manufacturing, Retail and Wholesale Trade': DropdownType.Commerce,\n 'Media, Entertainment, and Technology': DropdownType.Entertainment,\n 'Natural Resources, Agriculture, and Utilities': DropdownType.Utilities,\n 'Professional, Administrative, and Consumer Services': DropdownType.AdminService,\n 'Public Administration and Waste Management': DropdownType.Government,\n 'Transportation and Warehousing': DropdownType.Transportation,\n};\n\nexport function getSubindustryDropdownType(industry: string): DropdownType {\n return industryModuleMapper[industry];\n}\n","import { FormValues } from '@models/form';\n\nexport const countryValues = {\n checkedFieldKey: 'country',\n resetFieldKey: 'state',\n};\n\nexport const titleValues = {\n checkedFieldKey: 'Title__c',\n resetFieldKey: 'Title',\n};\n\nexport const industryValues = {\n checkedFieldKey: 'industry',\n resetFieldKey: 'Sub_Industry__c',\n};\n\ninterface ResetField {\n checkedFieldKey: string;\n resetFieldKey: string;\n}\n\nexport function getResetFieldValues(\n field: string,\n value: string | boolean | string[] | number | null,\n resetFields: ResetField[] | ResetField\n): FormValues {\n const updatedValues = { [field]: value };\n\n function resetFieldValue(resetField: ResetField): void {\n if (field === resetField.checkedFieldKey) {\n updatedValues[resetField.resetFieldKey] = '';\n }\n }\n\n if (Array.isArray(resetFields)) {\n resetFields.forEach((resetField) => {\n resetFieldValue(resetField);\n });\n } else {\n resetFieldValue(resetFields);\n }\n\n return updatedValues;\n}\n","export const regionsOperateOptions: string[] = [\n 'Australia Asia',\n 'Europe',\n 'LatAm',\n 'MEA (Middle East Africa)',\n 'North America',\n];\n","import { getTranslation } from '@helpers/languageTranslations';\nimport { useTranslation } from '@stateManagement/TranslationContext';\nimport { SelectOption } from '@web-for-marketing/react-ui';\nimport { useMemo } from 'react';\nimport { LazyLoadedSelectOptionsTypes, useLazyLoadedSelectOptions } from './useLazyLoadedSelectOptions';\nimport { DropdownType } from '@models/customForm';\n\ninterface IndustryFieldProps {\n id: string;\n name: string;\n label: string;\n placeholder: string;\n}\n\nconst selectOptions: LazyLoadedSelectOptionsTypes[] = [DropdownType.Industry];\n\nexport function useIndustryDropdown(): [IndustryFieldProps, SelectOption[]] {\n const { selectedLanguageTranslation } = useTranslation();\n const formTranslations = useMemo(() => {\n return getTranslation(selectedLanguageTranslation, 'formTranslations');\n }, [selectedLanguageTranslation]);\n const placeholderTranslations = useMemo(() => {\n return getTranslation(selectedLanguageTranslation, 'formPlaceholders');\n }, [selectedLanguageTranslation]);\n const [industryOptions] = useLazyLoadedSelectOptions(selectOptions);\n\n const industryProps = {\n id: 'industry',\n name: 'industry',\n label: formTranslations.industry || 'Industry',\n placeholder: placeholderTranslations.industryPlaceholder || 'Select an industry category\\u2026',\n };\n\n return [industryProps, industryOptions];\n}\n","export type FormParamValueType = string | string[] | boolean | number | null | (() => void | Promise);\n\nexport type FormParams = { key: string; value: FormParamValueType }[];\n\nexport type FormValues = { [key: string]: string | string[] | boolean | number | null };\n\nexport enum FormParamKeys {\n OnFormSubmitSuccessFunction = 'onFormSubmitSuccessFunction',\n}\n","/* eslint-disable @typescript-eslint/no-explicit-any */\nexport const trimObjectValues = (inputObject: Record): Record => {\n Object.keys(inputObject).forEach((i) => {\n const value = inputObject[i];\n if (typeof value === 'string') {\n inputObject[i] = value.trim();\n } else if (value === 'object') {\n if (value !== null && value !== undefined) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n inputObject[i] = trimObjectValues(value as Record);\n } else {\n inputObject[i] = null;\n }\n }\n });\n\n return inputObject;\n};\n","/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { trimObjectValues } from '@helpers/objectHelper';\nimport { updateGeotabSourceCookie } from '@helpers/geotabSourceCookieHelper';\nimport { httpPost } from './apiService';\n\nexport async function postMarketingCloudForm(\n formId: string,\n jsonData: Record,\n recaptchaToken: string\n): Promise {\n const modifiedFormValues: Record = { ...trimObjectValues(jsonData) };\n\n modifiedFormValues.recaptchaToken = recaptchaToken;\n\n if (formId === 'generic-lead-form-test' || formId === 'generic-lead-form') {\n const geotabSourceCookieValue = updateGeotabSourceCookie();\n\n modifiedFormValues['Website_Cookie__c'] = geotabSourceCookieValue\n ? Object.keys(geotabSourceCookieValue)\n .map((key) => `${key}:${geotabSourceCookieValue[key as keyof typeof geotabSourceCookieValue]}`)\n .join()\n : '';\n }\n\n await httpPost(`/api/marketingcloud/${formId}/`, JSON.stringify(modifiedFormValues));\n}\n","export function setSessionStorageItem(name, value) {\n try {\n sessionStorage.setItem(name, value);\n } catch (error) {\n //\n }\n}\n\nexport function getSessionStorageItem(name) {\n try {\n return sessionStorage.getItem(name);\n } catch (error) {\n return null;\n }\n}\n\nexport function removeSessionStorageItem(name) {\n try {\n sessionStorage.removeItem(name);\n } catch (error) {\n //\n }\n}\n\nexport function clearSessionStorageItems() {\n try {\n sessionStorage.clear();\n } catch (error) {\n //\n }\n}\n","var map = {\n\t\"./de\": [\n\t\t10781,\n\t\t2153\n\t],\n\t\"./de.ts\": [\n\t\t10781,\n\t\t2153\n\t],\n\t\"./en\": [\n\t\t13697\n\t],\n\t\"./en-au\": [\n\t\t90796,\n\t\t4962\n\t],\n\t\"./en-au.ts\": [\n\t\t90796,\n\t\t4962\n\t],\n\t\"./en-gb\": [\n\t\t43420,\n\t\t8516\n\t],\n\t\"./en-gb.ts\": [\n\t\t43420,\n\t\t8516\n\t],\n\t\"./en-ie\": [\n\t\t86804,\n\t\t3974\n\t],\n\t\"./en-ie.ts\": [\n\t\t86804,\n\t\t3974\n\t],\n\t\"./en-sg\": [\n\t\t50104,\n\t\t7528\n\t],\n\t\"./en-sg.ts\": [\n\t\t50104,\n\t\t7528\n\t],\n\t\"./en.ts\": [\n\t\t13697\n\t],\n\t\"./es\": [\n\t\t95134,\n\t\t4450\n\t],\n\t\"./es-mx\": [\n\t\t34506,\n\t\t8843\n\t],\n\t\"./es-mx.ts\": [\n\t\t34506,\n\t\t8843\n\t],\n\t\"./es.ts\": [\n\t\t95134,\n\t\t4450\n\t],\n\t\"./fr\": [\n\t\t16162,\n\t\t5046\n\t],\n\t\"./fr-ca\": [\n\t\t33791,\n\t\t7855\n\t],\n\t\"./fr-ca.ts\": [\n\t\t33791,\n\t\t7855\n\t],\n\t\"./fr.ts\": [\n\t\t16162,\n\t\t5046\n\t],\n\t\"./it\": [\n\t\t30443,\n\t\t1649\n\t],\n\t\"./it.ts\": [\n\t\t30443,\n\t\t1649\n\t],\n\t\"./nl\": [\n\t\t62340,\n\t\t5043\n\t],\n\t\"./nl.ts\": [\n\t\t62340,\n\t\t5043\n\t],\n\t\"./pt-br\": [\n\t\t86143,\n\t\t661\n\t],\n\t\"./pt-br.ts\": [\n\t\t86143,\n\t\t661\n\t]\n};\nfunction webpackAsyncContext(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\treturn Promise.resolve().then(() => {\n\t\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\t\te.code = 'MODULE_NOT_FOUND';\n\t\t\tthrow e;\n\t\t});\n\t}\n\n\tvar ids = map[req], id = ids[0];\n\treturn Promise.all(ids.slice(1).map(__webpack_require__.e)).then(() => {\n\t\treturn __webpack_require__(id);\n\t});\n}\nwebpackAsyncContext.keys = () => (Object.keys(map));\nwebpackAsyncContext.id = 79958;\nmodule.exports = webpackAsyncContext;"],"names":["GeotabWithR","props","_jsx","xmlns","viewBox","width","height","children","_jsxs","className","fill","v2Colors","core","geotab","d","points","siteWideDemoFormFields","siteWideDemoFormStructure","tabs","reduce","acc","formGroup","concat","formFields","initialEmptyObject","first_name","last_name","Title__c","Title","AB_name__c","AB_treatment__c","company","industry","Sub_Industry__c","multiple_region_select__c","fleet_size","country","state","city","email","phone","How_Did_You_Hear_About_Geotab__c","opt_in","user_title","page","Lead_Source_URL__c","assetName","assetType","assetUrl","initialDisabledButtons","push","allPreSubmitTransforms","fieldObject","type","preSubmitTransform","name","fieldKey","transforms","getAllRequiredFields","required","getCurrentDisabledButtons","currentFormValues","baseStructureData","disabledButtons","forEach","fieldGroup","shouldDisable","some","field","translatedSiteWideDemoFormStructure","LanguageCode","en","enGb","frCa","es","it","frFr","ptBr","de","enAu","esMx","pl","nl","se","ae","ie","apac","enCb","idn","jp","siteWideDemoFormStyles","container","position","background","white","borderRadius","padding","boxSizing","boxShadow","breakpoints","md","form","overflow","paddingBottom","formGroupContainers","flexDirection","transition","opacity","subtitles","marginBottom","buttonContainer","margin","geotabLogo","display","sm","justifyContent","progressBar","maxWidth","selectInput","marginTop","hidden","label","previousContainer","enableAnimation","transform","currentContainer","visibility","nextContainer","visible","invisible","inlineText","spacedText","hiddenAllyText","color","text","inversePrimary","fontSize","lineHeight","top","left","zIndex","button","formItem","multiCheckBoxSpacing","multiCheckBoxOutlineSpacing","helperText","helperTextColor","fontWeight","xl","logoContainer","loadingSpinner","classes","dotContainer","alignItems","dots","marginRight","StatusDots","steps","css","map","step","index","status","cx","cy","r","stroke","curveLogic","strokeOpacity","strokeWidth","action","paleGray","demoFormDataKey","getSiteWideDemoFormData","formData","getSessionStorageItem","JSON","parse","setSiteWideDemoFormData","newFormData","setSessionStorageItem","stringify","selectOptions","DropdownType","Country","HearAboutUs","_ref","styles","_ref2","_ref3","SiteWideDemoForm","params","displayMode","onClose","notificationContext","useContext","NotificationContext","formValues","setFormValues","useState","location","useLocation","setPage","loading","setLoading","progress","setProgress","selectedLanguage","useAtom","selectedLanguageAtom","selectedLanguageTranslation","useTranslation","setSiteWideDemoFormStructure","siteWideDemoFormStructureDefault","dynamicImports","useMemo","useEffect","then","loader","default","catch","error","logError","useLazyLoadedSiteWideDemoFormStructure","setDisabledButtons","updateButtons","currentValues","updateProgress","getCurrentProgress","htmlFormID","findSettingValue","returnURL","formSubtitle","formRating","Number","marketingCloudID","disableSubmit","setDisableSubmit","countryOptions","hearAboutUsOptions","useLazyLoadedSelectOptions","isMobile","isMobileAtom","formRef","useRef","utmSource","utmTerm","utmCampaign","utmContent","utmMedium","gclID","window","query","URLSearchParams","search","get","getQuery","siteWideFormTranslation","getTranslation","paginationTranslation","placeholderTranslation","pageLanguageCode","recaptchaSiteKey","useStaticValues","enableRecaptcha","RecaptchaComponent","token","refresh","useRecaptcha","stateLabel","statePlaceholder","stateOptions","useProvinceStateDropdown","showUserTitle","userTitleProps","titleOptions","useTitleDropdown","industryOptions","useIndustryDropdown","subIndustryLabel","subIndustryPlaceholder","subindustryOptions","formTranslations","placeholderTranslations","subIndustry","placeholder","subindustryDropdown","getSubindustryDropdownType","useSubindustryDropdown","async","handleSubmit","event","preventDefault","previousDisabledButtons","value","length","submitValues","postMarketingCloudForm","removeSessionStorageItem","onFormSubmitSuccessFunction","FormParamKeys","OnFormSubmitSuccessFunction","redirectToThankyou","errorMessage","Error","message","show","handleOnChange","updatedValues","getResetFieldValues","countryValues","titleValues","industryValues","updatedFormValues","demoFormData","updateFieldValue","href","standardFormFieldNames","campaignId","standardFormSettingNames","demoFormDefaultCampaignId","leadSourceAdditionalDetails","leadSource","formLanguageCountry","formLanguage","console","handlePageChange","groupIndex","amount","currentPage","updateRequiredField","requiredValue","getFormItem","showStateOptions","id","showSubindustryOptions","labelKey","formField","placeholderKey","Input","initialValue","shrinkLabel","onChange","target","onFocus","disabled","Select","native","weight","options","fleetSizeOptions","Checkbox","Text","variant","dangerouslySetInnerHTML","__html","ParseAbbreviations","content","stringFormat","checked","Grid2","multiple","Array","isArray","optionsArray","option","handleMultiSelectChange","undefined","forceMultiPick","helperTextKey","FormHelperText","ember","IconButton","size","shape","onClick","CloseIcon","tertiary","CircularProgress","ref","method","onSubmit","isCurrentGroup","Stack","spacing","_","Heading","align","sectionDescription","direction","CapterraLogo","RatingSelect","rating","starColor","mustard","starSize","component","a11yInstructions","xs","lg","startAdornmentText","startAdornment","style","contentKey","V2Button","leftIcon","BackIcon","returnToPrevious","current","inputElement","querySelector","reportValidity","rightIcon","ForwardIcon","of","optionsComponentKey","regionsOperateOptions","submitTransformKeys","JOIN_WITH_SEMI","checkBoxWidth","settingArray","searchKey","setting","find","key","toLowerCase","FLATTEN_ARRAY","STRINGIFY","LOWERCASE_STRING","UPPERCASE_STRING","requiredFields","baseFieldData","currentFieldValues","preSubmitTransforms","newFieldValues","fieldValue","transformKey","join","toUpperCase","industryModuleMapper","Hospitality","Construction","Education","Finance","Healthcare","Commerce","Entertainment","Utilities","AdminService","Government","Transportation","checkedFieldKey","resetFieldKey","resetFields","resetFieldValue","resetField","Industry","industryPlaceholder","trimObjectValues","inputObject","Object","keys","i","trim","formId","jsonData","recaptchaToken","modifiedFormValues","geotabSourceCookieValue","updateGeotabSourceCookie","httpPost","sessionStorage","setItem","getItem","removeItem","webpackAsyncContext","req","__webpack_require__","o","Promise","resolve","e","code","ids","all","slice","module","exports"],"sourceRoot":""}