{"version":3,"file":"709.bundle.js","mappings":"oLAkBAA,OAAOC,UAAYC,SAASC,qBAAqB,eAAe,IAAIC,UACpEJ,OAAOK,SAAWH,SAASC,qBAAqB,cAAc,IAAIC,UAClEJ,OAAOM,iBAAmBJ,SAASC,qBAAqB,uBAAuB,IAAIC,UACnFJ,OAAOO,0BAA4BL,SAASC,qBAAqB,gCAAgC,IAAIC,UACrGJ,OAAOQ,aAAeN,SAASC,qBAAqB,qBAAqB,IAAIC,U,cCL7E,EATwB,SAAUK,EAAoBC,GAC7CA,GAAmBD,EAAKE,mBAI7BX,OAAOY,KAAKC,KAAK,CAAC,OAAQH,IAC1BV,OAAOY,KAAKC,KAAK,CAAC,QAAS,YAC/B,E,UCXO,SAASC,GAAe,eAAEC,EAAc,aAAEC,EAAY,WAAEC,EAAU,UAAEC,EAAS,gBAAEC,EAAe,aAAEC,EAAY,mBAAEC,EAAkB,uBAAEC,EAAsB,eAAEZ,IAE/J,MAAMa,EAAqBF,EAAqB,UAAY,UAE5D,OACM,8BACEJ,GAQF,gBAAKO,UAAU,2BAA0B,UACrC,+BAAkB,aAAaT,EAAeU,YAAaD,UAAU,aAAY,UAC5ET,EAAeW,gBAAkBV,IAAgB,SAACW,EAAiB,CAACZ,eAAgBA,EAAgBL,eAAgBA,KACrH,SAACkB,EAAgB,CAACb,eAAgBA,EAAgBC,aAAcA,EAAcC,YAAY,EAAME,gBAAiBA,EAAiBC,aAAcA,EAAcE,uBAAwBA,EAAwBZ,eAAgBA,UAVtO,gBAAKc,UAAW,QAAQD,KAAsBP,EAAe,oBAAoB,WAAU,UACvF,+BAAkB,aAAaD,EAAeU,YAAaD,UAAU,0BAAyB,UACzFT,EAAeW,iBAAmBV,IAAiBE,KAAc,SAACS,EAAiB,CAACZ,eAAgBA,EAAgBL,eAAgBA,KACrI,SAACkB,EAAgB,CAACb,eAAgBA,EAAgBC,aAAcA,EAAcC,YAAY,EAAOC,UAAWA,EAAWC,gBAAiBA,EAAiBC,aAAcA,EAAcE,uBAAwBA,EAAwBZ,eAAgBA,UAarQ,CAEO,SAASiB,GAAkB,eAAEZ,EAAc,eAAEL,IAChD,OACI,gBAAKc,UAAU,oBAAmB,UAC9B,6BAAe,aAAaA,UAAU,wBAAwBK,KAAMd,EAAee,UAAWC,SAAU,EAAGC,QAAS,IAAM,EAAgBjB,EAAgBL,GAAe,WACrK,gBAAKc,UAAU,kCAAiC,UAC5C,gBAAKA,UAAU,yBAAyBS,MAAO,CAAEC,gBAAiB,OAAOnB,EAAeW,kBAAmBS,cAAe,UAAU,UAChI,gBAAKC,IAAK,GAAGrB,EAAesB,QAASb,UAAU,aAAac,IAAKvB,EAAeW,sBAGxF,SAACa,EAAS,CAACC,UAAWzB,EAAe0B,eAIrD,CACO,SAASb,GAAiB,eAAEb,EAAc,aAAEC,EAAY,WAAEC,EAAU,UAAEC,GAAY,EAAK,gBAAEC,GAAkB,EAAK,aAAEC,GAAe,EAAK,uBAAEE,GAAyB,EAAK,eAAEZ,IAC3K,IAAIgC,EAAqD,WAA3B3B,EAAe0B,SAAwB,cAAgB,iBACrF,MAAME,EAAmD,MAAjC5B,EAAeW,iBAA4BR,EACnE,OACE,iCACE,gBAAKM,UAAU,qBAAoB,cAAa,gBAAe,SAC1DF,GACK,iBAAME,UAAU,0BAAyB,UACvC,iBAAMA,UAAU,eAAc,SAAET,EAAe6B,cAEjD,cAAGpB,UAAU,0BAA0BK,KAAMd,EAAe8B,YAAW,UACrE,iBAAMrB,UAAU,eAAc,SAAET,EAAe6B,gBAI3D,gBAAKpB,UAAU,oBAAmB,UAC1B,4BAAe,aAAaA,UAAU,wBAAwBsB,OAAQ/B,EAAegC,aAAe,SAAW,QAASlB,KAAMd,EAAee,UAAWE,QAAS,IAAM,EAAgBjB,EAAgBL,GAAe,UAC1N,eAAIc,UAAU,OAAM,SAAET,EAAesB,YAGxCrB,GACC,gCAC4B,OAAzBD,EAAeiC,QACd,kBAAMxB,UAAU,8BAA6B,UAC1CT,EAAeiC,MAAK,gBAGxBjC,EAAekC,SAAWlC,EAAekC,QAAQC,OAAS,GACzD,8BACqC,OAAlCnC,EAAekC,QAAQ,GAAGE,KAAkD,KAAlCpC,EAAekC,QAAQ,GAAGE,KACnE,6BAAgBT,EAAyBlB,UAAU,wBAAwBK,KAAMd,EAAekC,QAAQ,GAAGE,IAAKpB,SAAU,EAAC,WACzH,iBAAMP,UAAU,sCAAqC,SAClDT,EAAekC,QAAQ,GAAGG,QAE7B,iBAAM5B,UAAU,sCAAqC,SAClDT,EAAekC,QAAQ,GAAGZ,YAI/B,iBAAKb,UAAU,OAAM,cAAckB,EAAuB,WACxD,iBAAMlB,UAAU,sCAAqC,SAClDT,EAAekC,QAAQ,GAAGG,QAE7B,iBAAM5B,UAAU,sCAAqC,SAClDT,EAAekC,QAAQ,GAAGZ,cAKnC,4BAGJ,wBAEAlB,GAAoBwB,GAIhB,yBAHA,4BAAe,YAAYnB,UAAW,iCAAgCR,GAAgBD,EAAesC,gBAAkBpC,EAAa,OAAS,QAAQ,SAClJF,EAAeuC,uBAItBlC,GAAiBuB,IAAkB3B,GAAiBC,IAAcF,EAAesC,eAE7E,yBADA,4BAAe,YAAY7B,UAAU,oCAAmC,SAAET,EAAesC,gBAG7D,MAAjCtC,EAAeW,iBAA2BR,GAAaH,EAAewC,aACnE,+BAAiB,gBAAgB/B,UAAU,kBAAiB,eAAG,QAAMT,EAAewC,aAAY,QAChG,0BAIZ,CAEO,SAAShB,GAAU,UAAEC,EAAS,SAAEgB,IACnC,OAAQhB,GACJ,IAAK,QACD,OAAQ,gBAAKhB,UAAuB,0BAAZgC,EAAsC,kDAAkD,wBAAuB,UACnI,8BAAiB,OAAOC,UAAU,QAAO,cAAa,MAAK,YAAW,cAAcjC,UAAU,mDAAmDkC,KAAK,MAAMC,MAAM,6BAA6BC,QAAQ,YAAW,UAC9M,iBAAMC,KAAK,eAAeC,EAAE,62BAIxC,IAAK,UACD,OAAQ,gBAAKtC,UAAwB,0BAAbgC,EAAuC,kDAAoD,wBAAuB,UACtI,8BAAiB,OAAOC,UAAU,QAAO,cAAa,MAAK,YAAW,iBAAiBjC,UAAU,sDAAsDkC,KAAK,MAAMC,MAAM,6BAA6BC,QAAQ,gBAAe,UACxN,iBAAMC,KAAK,eAAeC,EAAE,y3EAIxC,IAAK,OACD,OAAQ,gBAAKtC,UAAwB,0BAAbgC,EAAuC,kDAAoD,wBAAuB,UACtI,8BAAiB,OAAOC,UAAU,QAAO,cAAa,MAAK,YAAW,OAAOjC,UAAU,4CAA4CkC,KAAK,MAAMC,MAAM,6BAA6BC,QAAQ,YAAW,UAChM,iBAAMC,KAAK,eAAeC,EAAE,8mDAIxC,IAAK,UACD,OAAQ,gBAAKtC,UAAwB,0BAAbgC,EAAuC,kDAAoD,wBAAuB,UACtI,8BAAiB,OAAOC,UAAU,QAAO,cAAa,MAAK,YAAW,oBAAoBjC,UAAU,yDAAyDkC,KAAK,MAAMC,MAAM,6BAA6BC,QAAQ,YAAW,UAC1N,iBAAMC,KAAK,eAAeC,EAAE,ojCAIxC,QACI,OAAQ,wBAEpB,CCtDA,MAzFqC,EAAGC,kBAAiB/C,eAAcG,kBAAiBC,eAAcE,yBAAwBZ,qBAC1H,MAAMsD,EAAS,SAAkB,OAC1BC,EAAYC,IAAiB,IAAAC,UAAS,IACtCC,EAAiBC,IAAsB,IAAAF,UAA6B,IACpEG,EAAgBC,IAAqB,IAAAJ,WAAS,GAC/CK,EAAaT,GAAmBA,EAAgBb,OAEhDuB,EAAgBC,IAClB,GAAGA,GAAgBF,EAEjB,YADAD,GAAkB,GAGpBA,GAAkB,GAClB,MAAMI,EAAeX,EAAOY,QAAQC,YAAYC,MAAMH,aACtDN,EAAmBM,EAAeD,GAClCR,EAAcS,EAAa,EAAE,EAG3BI,EAAqB,CACvBL,aAAc,EACdM,eAAgB,EAChBC,UAAU,EACVC,QAAQ,EACRC,OAAO,IAAId,EAAmBU,EAASL,cACvCU,SAAU,IAAKX,EAAa,GAC5BY,WAAY,CACV,CACEC,WAAY,IACZP,SAAU,CACRL,aAAc,EACdM,eAAgB,EAChBO,aAAc,EACdH,SAAU,IAAKX,EAAa,KAGhC,CACEa,WAAY,IACZP,SAAU,CACRL,aAAc,EACdM,eAAgB,EAChBI,SAAU,IAAKX,EAAa,OAMtC,OACI,iBAAKjD,UAAU,iGAAgG,WAC3G,SAAC,IAAM,CAACgE,IAAKxB,KAAYe,EAAQ,SAC5BhB,GAAmBA,EAAgB0B,KAAI,CAAChF,EAAoBiF,KAErD,SAAC5E,EAAc,CAACC,eAAgBN,EAAgBO,aAAcA,EAAcC,YAAY,EAAME,gBAAiBA,EAAiBC,aAAcA,EAAcE,uBAAwBA,EAAwBZ,eAAgBA,GAAjLgF,QAIvD,iBAAKlE,UAAU,uCAAsC,WACjD,iBAAKA,UAAU,sDAAqD,WACpE,yBAAIyC,EAAYG,IAAoBH,EAAY,MAAQG,EAAiB,MAAQ,IAAG,OAAI,0BAAOI,QAE/F,iBAAKhD,UAAU,wCAAuC,WACxD,mBACUA,UAAW,kEACF,IAAfyC,EAAmB,kBAAoB,IAEzC0B,KAAK,SAAQ,aACF,cAAa,gBACV,OACd3D,QAAS,IAAMgC,GAAQY,SAASgB,YAAW,SAE1CC,KAEH,mBACUrE,UAAW,kEACjB4C,IAAoBI,EAAa,kBAAoB,IAEvDmB,KAAK,SAAQ,aACF,eAAc,gBACX,QAAO,cACT,aACZ3D,QAAS,IAAMgC,GAAQY,SAASkB,YAAW,SAE1CC,YAKZ,EAML,MAAMF,GACF,8BACc,OACZpC,UAAU,QAAO,cACL,MAAK,YACP,eACVjC,UAAU,oDACVkC,KAAK,MACLC,MAAM,6BACNC,QAAQ,YAAW,UAEnB,iBACEC,KAAK,eACLC,EAAE,sKAKKiC,GACX,8BACc,OACZtC,UAAU,QAAO,cACL,MAAK,YACP,gBACVjC,UAAU,qDACVkC,KAAK,MACLC,MAAM,6BACNC,QAAQ,YAAW,UAEnB,iBACEC,KAAK,eACLC,EAAE,sKC5HH,SAASkC,EAA0BC,GACtC,MAAM,gBAAElC,EAAe,SAAEmC,EAAQ,MAAE7D,EAAK,SAAE8D,EAAQ,kBAAEC,EAAiB,eAAEC,GAAmBJ,EACpFjF,EAA2B,qBAAZkF,GAA+C,8BAAZA,EAClDjF,EAAyB,8BAAZiF,EACbI,KAAuBF,IAAqBA,EAAkBG,SAAS,eACvEnF,KAAegF,IAAqBA,EAAkBG,SAAS,cAC/DpF,KAAkBiF,IAAqBA,EAAkBG,SAAS,iBAClEC,KAAcJ,IAAqBA,EAAkBG,SAAS,+BAC9DlF,KAAqB+E,IAAqBA,EAAkBG,SAAS,yBAErEE,EAAepF,EAAqB,GAAK,OAE/C,OACI,iBAAKG,UAAW,GAAGR,EAAe,sBAAwB,uBAAuByF,KAAgBL,IAAmB,cAAc,aAAY,WAC1I,gBAAK5E,UAAW,sEAAsE2E,IAAU,UAC3FnF,GAAiBwF,GAAgBvF,GAE7B,6BAAgB,mBAAmBO,UAAU,eAAc,SAAEa,KAD9D,6BAAgB,mBAAmBb,UAAU,kCAAiC,SAAEa,MAItFpB,GAOF,gBAAKO,UAAU,iCAAgC,UAC7C,SAAC,EAA4B,CAACuC,gBAAiBA,EAAiB/C,aAAcA,EAAcG,gBAAiBA,EAAiBC,aAAcA,EAAcE,uBAAwBkF,EAAa9F,eAAgB2F,OAPjN,gBAAK7E,UAAU,MAAK,SACfuC,EAAgB0B,KAAI,CAAC1E,EAAgB2F,KAClC,SAAC5F,EAAc,CAACC,eAAgBA,EAA4BC,aAAcA,EAAcC,YAAY,EAAOC,UAAWoF,EAAsBnF,gBAAiBA,EAAiBC,aAAcA,EAAcC,mBAAoBA,EAAqBC,uBAAwBkF,EAAa9F,eAAgB2F,GAAnPK,SAUzE,CC/BO,SAASC,EAAyBV,GACrC,MAAM,gBAAElC,EAAe,SAAEmC,EAAQ,MAAEU,EAAK,eAAEC,EAAc,aAAEC,EAAY,MAACzE,EAAK,eAAEgE,GAAmBJ,EAC3Fc,EAAsBhD,GAAmBA,EAAgBb,OAEzD8D,EAA2B,KAC7B,MAAMC,EAAe/G,SAASgH,iBAAiB,6BAS/C,GAPAD,EAAaE,SAAQC,IACjB,MAAMC,EAAOD,EAASE,cAAc,kCAChCD,GACAA,EAAKE,UAAUC,OAAO,wB,IAI1BP,EAAa/D,OAAS,EAAG,CACzB,MACMuE,EADYR,EAAaA,EAAa/D,OAAS,GACvBoE,cAAc,kCACxCG,GACAA,EAAYF,UAAUG,IAAI,wB,GAKhC3C,EAAqB,CACvBL,aAAciD,KAAKC,IAAI,EAAGb,GAC1B/B,eAAgB2C,KAAKC,IAAI,EAAGb,GAC5B9B,UAAU,EACVC,QAAQ,EACR2C,MAAM,EACNxC,WAAY,CACR,CACIC,WAAY,IACZP,SAAU,CACNL,aAAc,EACdM,eAAgB,EAChBO,aAAc,IAGtB,CACID,WAAY,IACZP,SAAU,CACNL,aAAciD,KAAKC,IAAI,EAAGb,GAC1B/B,eAAgB2C,KAAKC,IAAI,EAAGb,GAC5BxB,aAAc,EACduC,YAAa,IAAMd,IACnB5B,SAAU,IAAM4B,IAChB7B,OAAQ,IAAM6B,MAGtB,CACI1B,WAAY,KACZP,SAAU,CACNL,aAAciD,KAAKC,IAAI,EAAGb,GAC1B/B,eAAgB2C,KAAKC,IAAI,EAAGb,GAC5BxB,aAAc,EACduC,YAAa,IAAMd,IACnB5B,SAAU,IAAM4B,IAChB7B,OAAQ,IAAM6B,QAM9B,OACI,iBAAKxF,UAAU,GAAE,WACb,6BAAgB,mBAAmBA,UAAU,+BAA8B,SAAEa,KAC7E,iBAAKb,UAAU,iCAAgC,WAC3C,eAAIA,UAAU,UAAS,SAAEa,KAGzB,gBAAKb,UAAU,wCAAwCS,MAAO,CAAE,gBAAmB,OAAO2E,SAC1F,gBAAKpF,UAAU,wCAAwCS,MAAO,CAAE,gBAAmB,OAAO4E,SAC1F,gBAAKrF,UAAU,kDAAkDS,MAAO,CAAE,gBAAmB,OAAO6E,SACpG,gBAAKtF,UAAU,kDAAkDS,MAAO,CAAE,gBAAmB,OAAO6E,KAAiB,mBAAsB,YAC3I,gBAAKtF,UAAU,4CAA2C,UACtD,0BACI,SAAC,IAAM,IAAKuD,EAAQ,SACnBhB,GAAmBA,EAAgB0B,KAAI,CAAChF,EAAoBiF,KAEjD,gBAAKlE,UAAW,uBAAsB,UACtC,gBAAKA,UAAU,wBAAuB,UAClC,cAAGA,UAAU,qDAAqDK,KAAMpB,EAAKqB,UAAWE,QAAS,IAAM,EAAgBvB,EAAM4F,GAAe,UACxI,iBAAK7E,UAAU,iCAAgC,WAC3C,cAAGA,UAAU,mCAAmCK,KAAMpB,EAAKqB,UAAS,UAChE,eAAIN,UAAU,8BAA6B,SAAEf,GAAM4B,UAGtD5B,GAAMuC,OACH,kBAAMxB,UAAU,8BAA6B,UACxCf,GAAMuC,MAAK,iBAEhB,yBACJ,oBAAQxB,UAAU,4BAA2B,cAAsB,SAAnBf,GAAMgC,SAAsB,YAAiC,UAAnBhC,GAAMgC,SAAuB,cAAmC,YAAnBhC,GAAMgC,SAAyB,gBAAkBhC,EAAKgC,SAAQ,QAErM,SAACF,EAAS,CAACC,UAAW/B,GAAMgC,SAAUe,SAAU0C,0BAahG,CCjGA,MAX2CD,IACvC,MAAM,gBAAElC,EAAe,SAAEmC,EAAQ,MAAE7D,EAAK,SAAE8D,EAAQ,kBAAEC,EAAiB,aAAE2B,EAAY,eAAE1B,GAAmBJ,EAClGO,KAAcJ,IAAqBA,EAAkBG,SAAS,+BACpE,OACI,iBAAK/E,UAAW,GAAG4E,6BAA4C,WAC3D,SAAC4B,EAAmB,CAACC,MAAO5F,EAAOmE,YAAaA,EAAauB,aAAcA,GAAgBA,KAC3F,SAACG,EAAmB,CAACC,gBAAiBpE,EAAiBrD,eAAgB2F,EAAgBG,YAAaA,MAE3G,EAKL,SAASwB,GAAqB,MAACC,EAAK,aAAEF,EAAY,YAAEvB,IAChD,OACE,oBAAShF,UAAU,WAAU,UAC3B,iBAAKA,UAAU,aAAY,WACzB,8BAAgB,2BAA2BA,UAAU,gGAA+F,cAAa,eAAc,WAC7K,gBAAKA,UAAU,qEAAoE,UACjF,6BAAgB,mBAAmBA,UAAU,kCAAiC,SAC3EyG,MAGJF,GAAgBA,EAAa7E,OAAS,IACrC,gBAAI1B,UAAU,wCAAuC,WACjDgF,IAAe,eAAIhF,UAAU,0BAAyB,UACtD,iBAAMA,UAAU,4BAA2B,uBAE5CuG,EAAatC,KAAI,CAAChF,EAAoBiG,KACrC,eAAIlF,UAAU,oBAAmB,UAC/B,cAAGA,UAAU,4BAA4BK,KAAM,GAAGpB,EAAK2H,QAAO,SAC3D3H,EAAK4H,OAF6B3B,SAQ7C,gBAAKlF,UAAU,2BAEjB,iBACEA,UAAU,sCAAqC,cACnC,eAAc,WAE1B,gBAAKA,UAAU,qEAAoE,UACjF,6BAAgB,mBAAmBA,UAAU,kCAAiC,SAC3EyG,OAGL,iBAAKzG,UAAU,+CAA8C,WAC3D,oCACgB,OAAM,gBACN,QACdA,UAAU,2DAA0D,cACxD,WACZ8G,GAAG,eACH3C,KAAK,SAAQ,WAEb,iBAAMnE,UAAU,kBAAiB,qBACjC,8BACc,OACZiC,UAAU,QAAO,cACL,MAAK,YACP,eACVjC,UAAU,uFACVkC,KAAK,MACLC,MAAM,6BACNC,QAAQ,YAAW,UAEnB,iBACEC,KAAK,eACLC,EAAE,yKAIR,gBACEtC,UAAU,4CACVkC,KAAK,OAAM,SAEVqE,GAAgBA,EAAatC,KAAI,CAAChF,EAAoBiG,KACrD,cAAelF,UAAU,4CAA4CK,KAAM,GAAGpB,EAAK2H,QAAS1E,KAAK,WAAU,SACxGjD,EAAK4H,KADA3B,iBAW1B,CAEA,SAASwB,GAAqB,gBAACC,EAAe,eAAEzH,EAAc,YAAE8F,IAC5D,OACI,gBAAKhF,UAAU,oDAAmD,UAC9D,gBAAKA,UAAU,MAAK,SACf2G,GAAmBA,EAAgB1C,KAAI,CAAChF,EAAoBiG,KACzD,gBAAKlF,UAAU,0BAAyB,UACpC,iBAAKA,UAAU,kDAAiD,WAC5D,gBAAKA,UAAU,WAAU,UACrB,gBAAKA,UAAU,0CAAyC,UACpD,gBAAKA,UAAU,sCAAqC,UAChD,gBAAKA,UAAU,yBAAyBS,MAAO,CAACC,gBAAgB,OAAOzB,EAAKmG,SAASzE,cAAc,UAAS,UACxG,gBAAKC,IAAK3B,EAAK4B,MAAOb,UAAU,aAAac,IAAK7B,EAAKmG,iBAMvE,iBAAKpF,UAAU,2BAA0B,cAAa,2BAA0B,WAC5E,gBAAKA,UAAU,qBAAoB,cAAa,gBAAe,SAC1DgF,GACK,iBAAMhF,UAAU,0BAAyB,cAAa,gBAAe,UACnE,iBAAMA,UAAU,eAAc,SAAEf,EAAKmC,cAEvC,cAAGpB,UAAU,0BAAyB,cAAa,gBAAgBK,KAAMpB,EAAKoC,YAAW,UACvF,iBAAMrB,UAAU,eAAc,SAAEf,EAAKmC,gBAIjD,gBAAKpB,UAAU,oBAAmB,UAC9B,cAAGA,UAAU,wBAAuB,cAAa,aAAaK,KAAMpB,EAAKqB,UAAWE,QAAS,IAAM,EAAgBvB,EAAMC,GAAe,UACpI,eAAIc,UAAU,OAAM,SAAEf,EAAK4B,YAGlCmE,GACA,gBAAKhF,UAAU,iCAAgC,UAAC,wBAAI,QAAMf,EAAK8C,kBAC/D,eAAG/B,UAAU,mDAAkD,eAAIf,EAAK6C,yBACzE,gBAAK9B,UAAU,2CA/BmBkF,QAuClE,CCnEA,MAhEuBT,IACrB,MAAMsC,EAAUtC,EAAMuC,YAChBC,EAAUF,EAAQG,QAAQC,QAC1BC,EAASL,EAAQG,QAAQG,QAExBC,EAAQC,IAAa,IAAA5E,WAC1B,gBAAK3C,UAAU,oBAAmB,8BAIpC,GCbF,SAAyB+G,GACvB,MAAOS,EAAQC,IAAa,IAAA9E,UAAS,IAErC,IAAA+E,YAAU,KACRX,GAAWU,EAAUV,EAAQY,yBAAyBH,OAAO,GAC5D,CAACT,KAEJ,IAAAa,kBAAgB,KACd,IAAKb,IAAYS,EAAQ,OACzB,MAAMK,EAAmBd,EAAQY,wBAE3BG,EADYD,EAAiBL,OACAA,EAG/BK,EAAiBE,IAAM,IACzBvJ,OAAOwJ,SAAS,EAAGF,GAGrBL,GAAWD,GAAWA,EAASM,GAAe,GAElD,CDRE,CAAgBf,GACZkB,MAAMhB,GAAU,OAAO,qDAE3B,MAAOiB,GEPF,SAAgCzD,GACnC,MAAM,QAAEwC,EAAO,OAAEG,EAAM,UAAEG,GAAc9C,GAChCyD,EAAWC,IAAgB,IAAAxF,UAA6C,MACzEyF,EAAM1J,SAAS2J,SAAShI,KAC9B,IAAIiI,EAAa5J,SAASoH,cAAc,2BAAgDyC,MAEnFD,IACDA,EAAa5J,SAASoH,cAAc,wBAA6CyC,MAAMC,eAE3F,IAAItE,EAAM,GACV,OAAQoE,GACJ,IAAK,SACDpE,EAAM,yBACN,MACJ,IAAK,QACDA,EAAM,uBACN,MACJ,IAAK,KACDA,EAAM,uBACN,MACJ,QACIA,EAAM,oBAId,MAAMuE,EAASC,aAAaC,QAAQzE,GAC9B0E,GAAeH,GAASI,SAASJ,GAAU,EAC3CK,EAAcpK,SAASoH,cAAc,sBAAsCoB,QAAQ6B,WACnFC,EA8BV,SAAmBC,GACf,MACMC,EADQ,KAAKxK,SAASyK,SACRC,MAAM,SAC1B,GAAqB,IAAjBF,EAAMxH,OAAc,OAAOwH,EAAMG,OAAOD,MAAM,KAAKE,OAC3D,CAlCqBC,IAAmB,GA2BtC,OAzBE,IAAA7B,YAAU,KACN,WACI,IAAI8B,EAAmB,GACnBV,IACAU,GAAoB,eAAiBV,GAErCF,IACAY,GAAoB,iBAAmBZ,GAE3C,MAAMa,QTxBXC,gBAA8B,IAAEtB,EAAG,OAAEuB,GAAS,EAAI,UAAEpC,EAAY,OAErE,IACE,IAAIiC,EAAmBhL,OAAOM,kBAAoBN,OAAOO,0BACrD,gBAAgBP,OAAOM,2BAA2BN,OAAOO,4BACzD,GACDP,OAAOQ,eACNwK,GAAoB,gBAAgBhL,OAAOQ,gBAE/C,MAAM4K,QAAgBC,MAAM,GAAGzB,KAA4B,IAAtBA,EAAI0B,QAAQ,KAAc,IAAM,gBAAgBtL,OAAOC,sBAAsBD,OAAOK,WAAW2K,KAGpI,OAF+BG,QAAeC,EAAQG,OAASH,C,CAG/D,MAAOI,GAOP,MANEC,QAAQC,IAAI,yCAAyC9B,KAE9B,mBAAhB,GAA8Bb,GACnC,gBAAKvH,UAAU,wBAAuB,kDAGpC,IAAImK,MAAMH,E,CAEpB,CSEmEI,CAAe,CAClEhC,IAAK,kDAAkDnB,YAAkBG,QAAa4B,oBAA2BZ,IAAMoB,IACvHG,QAAQ,EACRpC,UAAWA,IAEf0C,QAAQC,IAAI,mCAAoC,oCAChDD,QAAQC,IAAI,oCAAqCT,GACjDtB,EAAasB,EAASY,MACtB9C,GAAU,EACb,EAjBD,EAiBI,GACL,KAEH,IAAAK,kBAAgB,KACZlJ,SAAS4L,cAAc,IAAIC,YAAY,qBAAqB,IAG3D,CAACrC,EACV,CFjDsBsC,CAAuB,CACzCvD,QAASA,EACTG,OAAQA,EACRG,UAAWA,IAUb,OAPE,IAAAG,YAAU,KACFX,EAAQ0D,eAAe1E,UAAU2E,SAAS,eAC1C3D,EAAQ0D,eAAe1E,UAAUG,IAAI,UACrCa,EAAQ0D,eAAe1E,UAAUG,IAAI,Q,GAE1C,KAGH,2BACGoB,EACIY,GAAaA,EAAU3F,iBAAmB2F,EAAU3F,gBAAgBb,OAAS,IAAK,8BAEvD,0BAAvBwG,EAAUxD,SAA8D,0BAAvBwD,EAAUxD,UAC3D,SAACS,EAAwB,CACtB5C,gBAAiB2F,EAAU3F,gBAC3B1B,MAAOqH,EAAUrH,MACjB8D,SAAUuD,EAAUvD,SACpBC,kBAAmBsD,EAAUtD,kBAC7BF,SAAUwD,EAAUxD,SACpBU,MAAO8C,EAAU9C,MACjBC,eAAgB6C,EAAU7C,eAC1BC,aAAc4C,EAAU5C,aACxBT,eAAgBqD,EAAUrD,kBAE9B,SAACL,EAAyB,CACtBjC,gBAAiB2F,EAAU3F,gBAC3B1B,MAAOqH,EAAUrH,MACjB8D,SAAUuD,EAAUvD,SACpBC,kBAAmBsD,EAAUtD,kBAC7BF,SAAUwD,EAAUxD,SACpBG,eAAgBqD,EAAUrD,kBAE9B,SAAC,EAAiC,CAChCtC,gBAAiB2F,EAAU3F,gBAC3B1B,MAAOqH,EAAUrH,MACjB8D,SAAUuD,EAAUvD,SACpBC,kBAAmBsD,EAAUtD,kBAC7BF,SAAUwD,EAAUxD,SACpB6B,aAAc2B,EAAU3B,aACxB1B,eAAgBqD,EAAUrD,qBAIvC,C","sources":["webpack://vaneckreact/./ReactUS/services/fetchDataService.tsx","webpack://vaneckreact/./ReactUS/Components/RecommendationsBlock/trackConversion.tsx","webpack://vaneckreact/./ReactUS/Components/RecommendationsBlock/RecommendationsCommonBlocks.tsx","webpack://vaneckreact/./ReactUS/Components/RecommendationsBlock/RecommendationsCarouselBlock.tsx","webpack://vaneckreact/./ReactUS/Components/RecommendationsBlock/RecommendationsBlockInner.tsx","webpack://vaneckreact/./ReactUS/Components/RecommendationsBlock/RecommendationsFundBlock.tsx","webpack://vaneckreact/./ReactUS/Components/RecommendationsBlock/RecommendationsTrendingBlockInner.tsx","webpack://vaneckreact/./ReactUS/Components/RecommendationsBlock/RecommendationsBlock.tsx","webpack://vaneckreact/./ReactUS/core/customHooks/useAutoScollUp.tsx","webpack://vaneckreact/./ReactUS/Components/RecommendationsBlock/useRecommendationsBlock.tsx"],"sourcesContent":["import React from \"react\";\r\n\r\nexport interface FetchBlockDataInterface {\r\n url: string,\r\n isJson?: Boolean,\r\n setMarkup?: Function | null\r\n}\r\n\r\ndeclare global {\r\n interface Window {\r\n reactlang: string | null | undefined;\r\n reactctr: string | null | undefined;\r\n isapiepieditmode: string | null | undefined;\r\n isapilatestversionpreview: string | null | undefined;\r\n epiprojectid: string | null | undefined;\r\n }\r\n}\r\n\r\nwindow.reactlang = document.getElementsByTagName(\"ve-language\")[0]?.innerHTML;\r\nwindow.reactctr = document.getElementsByTagName(\"ve-country\")[0]?.innerHTML;\r\nwindow.isapiepieditmode = document.getElementsByTagName(\"ve-is-epi-edit-mode\")[0]?.innerHTML;\r\nwindow.isapilatestversionpreview = document.getElementsByTagName(\"ve-is-latest-version-preview\")[0]?.innerHTML;\r\nwindow.epiprojectid = document.getElementsByTagName(\"ve-epi-project-id\")[0]?.innerHTML;\r\n\r\n/**\r\n * Fetches data for a given API endpoint. Expects any get parameters to be encoded in the url.\r\n * If JSON is expected, returns the JSON object. If not returns the result object.\r\n * @param {FetchBlockDataInterface} options\r\n * @returns {any|Response}\r\n */\r\nexport async function fetchBlockData({ url, isJson = true, setMarkup = null }: FetchBlockDataInterface): Promise {\r\n\r\n try {\r\n let additionalParams = window.isapiepieditmode || window.isapilatestversionpreview\r\n ? `&epieditmode=${window.isapiepieditmode}&latest=${window.isapilatestversionpreview}`\r\n : '';\r\n if(window.epiprojectid){\r\n additionalParams += `&epiprojects=${window.epiprojectid}`;\r\n }\r\n const request = await fetch(`${url}${url.indexOf('?') !== -1 ? '&' : '?'}reactlang=${window.reactlang}&reactctr=${window.reactctr}${additionalParams}`);\r\n const response: Response|any = isJson ? await request.json() : request;\r\n \r\n return response;\r\n } catch (err) {\r\n console.log(`Error while fetching block data! URL: ${url}`);\r\n\r\n typeof (setMarkup) === \"function\" && setMarkup(\r\n
An error occured when loading data.
\r\n );\r\n\r\n throw new Error(err as string);\r\n }\r\n}","import { MediaPreview } from \"../../interfaces/MediaPreview\";\r\n\r\ndeclare global {\r\n interface Window {\r\n _iaq: any[];\r\n }\r\n}\r\n\r\nconst trackConversion = function (item: MediaPreview, conversionGoal: string | null | undefined) {\r\n if (!conversionGoal || !item.IsRecommendation) {\r\n return;\r\n }\r\n \r\n window._iaq.push(['goal', conversionGoal]);\r\n window._iaq.push(['track', 'convert']);\r\n}\r\n\r\nexport default trackConversion;","import { MediaPreview } from \"../../interfaces/MediaPreview\";\r\nimport trackConversion from \"./trackConversion\";\r\nimport parse from \"html-react-parser\";\r\n\r\nexport function Recommendation({ recommendation, isHorizontal, isCarousel, hideImage, hidePublishDate, hideReadTime, removeExtraSpacing, disableCapabilityLinks, conversionGoal }: { recommendation: MediaPreview, isHorizontal: boolean, isCarousel: boolean, hideImage?: boolean, hidePublishDate?: boolean, hideReadTime?: boolean, removeExtraSpacing?: boolean, disableCapabilityLinks?: boolean, conversionGoal?: string | null | undefined }) {\r\n\r\n const itemDesktopMargins = removeExtraSpacing ? \"mb-lg-0\" : \"mb-lg-4\";\r\n\r\n return (\r\n <>\r\n {!isCarousel ?\r\n
\r\n
\r\n {recommendation.PostSmallImage && (isHorizontal || !hideImage) && }\r\n \r\n
\r\n
\r\n :\r\n
\r\n
\r\n {recommendation.PostSmallImage && isHorizontal && }\r\n \r\n
\r\n
\r\n }\r\n \r\n )\r\n}\r\n\r\nexport function RelatedMediaImage({ recommendation, conversionGoal }: { recommendation: MediaPreview, conversionGoal?: string | null | undefined }) {\r\n return (\r\n
\r\n trackConversion(recommendation, conversionGoal)}>\r\n
\r\n
\r\n {`${recommendation.Title}`}\r\n
\r\n
\r\n \r\n
\r\n
\r\n )\r\n}\r\nexport function RelatedMediaBody({ recommendation, isHorizontal, isCarousel, hideImage = false, hidePublishDate = false, hideReadTime = false, disableCapabilityLinks = false, conversionGoal }: { recommendation: MediaPreview, isHorizontal: boolean, isCarousel: boolean, hideImage?: boolean, hidePublishDate?: boolean, hideReadTime?: boolean, disableCapabilityLinks?: boolean, conversionGoal?: string | null | undefined }) {\r\n let authorGtmAttributeValue = recommendation.TypeName != \"Webinar\" ? \"item-author\" : \"item-presenter\";\r\n const imageToBeShown = (recommendation.PostSmallImage != null) && !hideImage;\r\n return (\r\n <>\r\n
\r\n {disableCapabilityLinks\r\n ? \r\n {recommendation.Category}\r\n \r\n : \r\n {recommendation.Category}\r\n \r\n }\r\n
\r\n
\r\n trackConversion(recommendation, conversionGoal)}>\r\n

{recommendation.Title}

\r\n
\r\n
\r\n {isHorizontal ? (\r\n <>\r\n {recommendation.Badge !== null ?? (\r\n \r\n {recommendation.Badge} CE Credit\r\n \r\n )}\r\n {recommendation.Authors && recommendation.Authors.length > 0 ? (\r\n <>\r\n {recommendation.Authors[0].Url !== null || recommendation.Authors[0].Url !== \"\" ? (\r\n \r\n \r\n {recommendation.Authors[0].Name}\r\n \r\n \r\n {recommendation.Authors[0].Title}\r\n \r\n \r\n ) : (\r\n
\r\n \r\n {recommendation.Authors[0].Name}\r\n \r\n \r\n {recommendation.Authors[0].Title}\r\n \r\n
\r\n )}\r\n \r\n ):<>}\r\n \r\n ) : (\r\n <>\r\n )}\r\n {!hidePublishDate && !imageToBeShown\r\n ?

\r\n {recommendation.FormattedPublishDate}\r\n

\r\n : <>\r\n }\r\n {!hideReadTime && !imageToBeShown && isHorizontal && !isCarousel && recommendation.FormattedTime\r\n ?

{recommendation.FormattedTime}

\r\n : <>\r\n }\r\n {recommendation.PostSmallImage == null && !hideImage && recommendation.Description //No image and image not intentially hidden (i.e. Right Rail)\r\n ?
{parse(recommendation.Description)}
\r\n : <>\r\n }\r\n \r\n );\r\n}\r\n\r\nexport function ImageIcon({ mediaType, template }: { mediaType: string, template?: string }) {\r\n switch (mediaType) {\r\n case \"Video\":\r\n return (
\r\n \r\n \r\n \r\n \r\n
);\r\n case \"Webinar\":\r\n return (
\r\n \r\n \r\n \r\n \r\n
);\r\n case \"Blog\":\r\n return (
\r\n \r\n \r\n \r\n \r\n
);\r\n case \"Podcast\":\r\n return (
\r\n \r\n \r\n \r\n \r\n
);\r\n default:\r\n return (<>)\r\n }\r\n}","import { MediaPreview } from '../../interfaces/MediaPreview';\r\nimport React, { useState } from 'react';\r\nimport Slider, { Settings } from 'react-slick';\r\nimport { Recommendation } from './RecommendationsCommonBlocks';\r\n\r\nconst RecommendationsCarouselBlock = ({ Recommendations, isHorizontal, hidePublishDate, hideReadTime, disableCapabilityLinks, conversionGoal }: { Recommendations: MediaPreview[], isHorizontal: boolean, hidePublishDate?: boolean, hideReadTime?: boolean, disableCapabilityLinks?: boolean, conversionGoal?: string | null | undefined }) => {\r\n const slider = React.useRef(null);\r\n const [slideIndex, setSlideIndex] = useState(1)\r\n const [slideRangeIndex, setSlideRangeIndex] = useState(1)\r\n const [hidePagination, setHidePagination] = useState(false)\r\n const totalCards = Recommendations && Recommendations.length\r\n\r\n const handleReinit = (slidesToShow: number) =>{\r\n if(slidesToShow >= totalCards ){\r\n setHidePagination(true)\r\n return\r\n }\r\n setHidePagination(false)\r\n const currentSlide = slider.current.innerSlider.state.currentSlide\r\n setSlideRangeIndex(currentSlide + slidesToShow)\r\n setSlideIndex(currentSlide+1)\r\n }\r\n\r\n const settings: Settings = {\r\n slidesToShow: 3,\r\n slidesToScroll: 3,\r\n infinite: false,\r\n arrows: true,\r\n onInit:()=>setSlideRangeIndex(settings.slidesToShow),\r\n onReInit: ()=> handleReinit(3),\r\n responsive: [\r\n {\r\n breakpoint: 991,\r\n settings: {\r\n slidesToShow: 2,\r\n slidesToScroll: 2,\r\n initialSlide: 2,\r\n onReInit: ()=> handleReinit(2)\r\n },\r\n },\r\n {\r\n breakpoint: 640,\r\n settings: {\r\n slidesToShow: 1,\r\n slidesToScroll: 1,\r\n onReInit: ()=> handleReinit(1)\r\n }\r\n },\r\n ],\r\n };\r\n\r\n return (\r\n
\r\n \r\n {Recommendations && Recommendations.map((item: MediaPreview, key: number) => {\r\n return (\r\n \r\n );\r\n })}\r\n \r\n
\r\n
\r\n {slideIndex}{slideRangeIndex !== slideIndex? \" - \" + slideRangeIndex: \"\"}{\" \"}of {totalCards}\r\n
\r\n
\r\n slider?.current?.slickPrev()}\r\n >\r\n {LeftArrowButtonSvg}\r\n \r\n slider?.current?.slickNext()}\r\n >\r\n {RightArrowButtonSvg}\r\n \r\n
\r\n
\r\n
\r\n );\r\n};\r\n\r\nexport default RecommendationsCarouselBlock;\r\n\r\n\r\nconst LeftArrowButtonSvg = (\r\n \r\n \r\n \r\n );\r\n \r\n export const RightArrowButtonSvg = (\r\n \r\n \r\n \r\n );","import { MediaPreview, RecommendationsBlockViewModel } from \"../../interfaces/MediaPreview\";\r\nimport RecommendationsCarouselBlock from \"./RecommendationsCarouselBlock\";\r\nimport { Recommendation } from \"./RecommendationsCommonBlocks\";\r\n\r\nexport function RecommendationsBlockInner(props: RecommendationsBlockViewModel) {\r\n const { Recommendations, Template, Title, CssClass, ContainerCssClass, ConversionGoal } = props;\r\n const isHorizontal = Template == \"horizontal-layout\" || Template == \"horizontal-carousel-layout\" ? true: false;\r\n const isCarousel = Template == \"horizontal-carousel-layout\" ? true: false;\r\n const hideRecommendedImage = ContainerCssClass && ContainerCssClass.includes(\"hide-image\") ? true : false;\r\n const hideReadTime = ContainerCssClass && ContainerCssClass.includes(\"hide-read\") ? true : false;\r\n const hidePublishDate = ContainerCssClass && ContainerCssClass.includes(\"hide-publish\") ? true : false;\r\n const isAustralia = ContainerCssClass && ContainerCssClass.includes(\"australian-recommendations\")? true: false;\r\n const removeExtraSpacing = ContainerCssClass && ContainerCssClass.includes(\"remove-extra-spacing\")? true: false;\r\n\r\n const paddingClass = removeExtraSpacing ? \"\" : \"py-3\";\r\n\r\n return (\r\n
\r\n
\r\n {isHorizontal && !isAustralia && !isCarousel? \r\n

{Title}

\r\n :

{Title}

\r\n }\r\n
\r\n {!isCarousel ? \r\n
\r\n {Recommendations.map((recommendation, index) => (\r\n \r\n ))}\r\n
\r\n :\r\n
\r\n \r\n
\r\n }\r\n
\r\n );\r\n}","import { MediaPreview, RecommendationsBlockViewModel } from \"../../interfaces/MediaPreview\";\r\nimport trackConversion from \"./trackConversion\";\r\nimport { ImageIcon } from \"./RecommendationsCommonBlocks\";\r\nimport React from 'react';\r\nimport Slider, { Settings } from 'react-slick';\r\n\r\nexport function RecommendationsFundBlock(props: RecommendationsBlockViewModel) {\r\n const { Recommendations, Template, Image, SecondaryImage, ImageOverlay,Title, ConversionGoal } = props;\r\n const noOfRecommendations = Recommendations && Recommendations.length;\r\n \r\n const removeBorderFromLastItem = () => {\r\n const lastNodeList = document.querySelectorAll('.slick-slide.slick-active');\r\n \r\n lastNodeList.forEach(lastNode => {\r\n const list = lastNode.querySelector('.billboard-block__link-content')\r\n if (list) {\r\n list.classList.remove('billboard-fund-border');\r\n }\r\n })\r\n\r\n if (lastNodeList.length > 0) {\r\n const lastChild = lastNodeList[lastNodeList.length - 1] as HTMLElement;\r\n const lastElement = lastChild.querySelector('.billboard-block__link-content') as HTMLElement;\r\n if (lastElement) {\r\n lastElement.classList.add('billboard-fund-border');\r\n }\r\n }\r\n };\r\n\r\n const settings: Settings = {\r\n slidesToShow: Math.min(3, noOfRecommendations),\r\n slidesToScroll: Math.min(3, noOfRecommendations),\r\n infinite: false,\r\n arrows: false,\r\n dots: true,\r\n responsive: [\r\n {\r\n breakpoint: 575,\r\n settings: {\r\n slidesToShow: 1,\r\n slidesToScroll: 1,\r\n initialSlide: 1,\r\n }\r\n },\r\n {\r\n breakpoint: 991,\r\n settings: {\r\n slidesToShow: Math.min(2, noOfRecommendations),\r\n slidesToScroll: Math.min(2, noOfRecommendations),\r\n initialSlide: 2,\r\n afterChange: () => removeBorderFromLastItem(),\r\n onReInit: () => removeBorderFromLastItem(),\r\n onInit: () => removeBorderFromLastItem()\r\n },\r\n },\r\n {\r\n breakpoint: 4500,\r\n settings: {\r\n slidesToShow: Math.min(3, noOfRecommendations),\r\n slidesToScroll: Math.min(3, noOfRecommendations),\r\n initialSlide: 3,\r\n afterChange: () => removeBorderFromLastItem(),\r\n onReInit: () => removeBorderFromLastItem(),\r\n onInit: () => removeBorderFromLastItem()\r\n },\r\n }\r\n ]\r\n };\r\n\r\n return (\r\n
\r\n

{Title}

\r\n
\r\n

{Title}

\r\n \r\n {/*
*/}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n {Recommendations && Recommendations.map((item: MediaPreview, key: number) => {\r\n return (\r\n
\r\n
\r\n trackConversion(item, ConversionGoal)}>\r\n
\r\n \r\n

{item?.Title}

\r\n
\r\n\r\n {item?.Badge ? (\r\n \r\n {item?.Badge} CE Credit\r\n \r\n ) : <>}\r\n {item?.TypeName === \"Blog\" ? \"READ BLOG\" : item?.TypeName === \"Video\" ? \"WATCH VIDEO\" : item?.TypeName === \"Webinar\" ? \"WATCH WEBINAR\" : item.TypeName} \r\n\r\n \r\n
\r\n \r\n
\r\n
\r\n )\r\n })}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n );\r\n}","import { RecommendationsBlockViewModel, MediaPreview, CapabilityKVP } from '../../interfaces/MediaPreview';\r\nimport trackConversion from './trackConversion';\r\nimport React from 'react';\r\nimport parse from \"html-react-parser\";\r\n\r\nconst RecommendationsTrendingBlockInner = (props: RecommendationsBlockViewModel) => {\r\n const { Recommendations, Template, Title, CssClass, ContainerCssClass, Capabilities, ConversionGoal } = props;\r\n const isAustralia = ContainerCssClass && ContainerCssClass.includes(\"australian-recommendations\")? true: false;\r\n return (\r\n
\r\n \r\n \r\n
\r\n );\r\n};\r\n\r\nexport default RecommendationsTrendingBlockInner;\r\n\r\nfunction RenderHeaderSection ({title, Capabilities, isAustralia}:{title:string, isAustralia: boolean, Capabilities?: CapabilityKVP[] |null}) {\r\n return (\r\n
\r\n
\r\n \r\n \r\n
\r\n

\r\n {title}\r\n

\r\n
\r\n
\r\n \r\n Topics\r\n \r\n \r\n \r\n \r\n \r\n {Capabilities && Capabilities.map((item:CapabilityKVP, index:number)=>(\r\n \r\n {item.Key}\r\n \r\n ))}\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n );\r\n}\r\n\r\nfunction RenderTrendingCards ({recommendations, conversionGoal, isAustralia}: {recommendations: MediaPreview[], conversionGoal: string | null | undefined, isAustralia: boolean}) {\r\n return (\r\n
\r\n
\r\n {recommendations && recommendations.map((item: MediaPreview, index: number)=>(\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n {item.Title}\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n {isAustralia\r\n ? \r\n {item.Category}\r\n \r\n : \r\n {item.Category}\r\n \r\n }\r\n
\r\n \r\n {isAustralia\r\n ?

{parse(item.Description)}

\r\n :

{item.FormattedPublishDate}

}\r\n
\r\n
\r\n
\r\n
\r\n ))}\r\n
\r\n
\r\n )\r\n}","import \"./RecommendationsBlock.scss\";\r\nimport useAutoScrollUp from \"../../core/customHooks/useAutoScollUp\";\r\nimport { useState,useEffect } from \"react\";\r\nimport { useRecommendatonsBlock } from \"./useRecommendationsBlock\";\r\nimport { RecommendationsBlockInner } from \"./RecommendationsBlockInner\";\r\nimport { RecommendationsFundBlock } from \"./RecommendationsFundBlock\";\r\nimport RecommendationsTrendingBlockInner from \"./RecommendationsTrendingBlockInner\";\r\n\r\nexport interface PersonUsBlockInterface extends ComponentInterface { }\r\n\r\nconst PersonUsBlock = (props: PersonUsBlockInterface) => {\r\n const element = props.rootElement;\r\n const blockID = element.dataset.blockid as unknown as number;\r\n const pageID = element.dataset.pageid as unknown as number;\r\n\r\n const [markup, setMarkup] = useState(\r\n
Loading Data...
\r\n );\r\n\r\n useAutoScrollUp(element);\r\n if (isNaN(blockID)) return

Error: BlockID not found.

;\r\n\r\n const [blockData] = useRecommendatonsBlock({\r\n blockID: blockID,\r\n pageID: pageID,\r\n setMarkup: setMarkup,\r\n });\r\n\r\n useEffect(() => {\r\n if (element.parentElement?.classList.contains('container')) {\r\n element.parentElement?.classList.add(\"col-12\");\r\n element.parentElement?.classList.add(\"px-0\");\r\n } \r\n }, [])\r\n\r\n return (\r\n
\r\n {markup}\r\n {blockData && blockData.Recommendations && blockData.Recommendations.length > 0 && <>\r\n {\r\n blockData.Template !== \"trending-block-layout\" ? blockData.Template === \"horizontal-fund-block\" ? \r\n :\r\n :\r\n }\r\n }\r\n
\r\n );\r\n};\r\n\r\nexport default PersonUsBlock;","import { useState, useEffect, useLayoutEffect } from \"react\";\r\n\r\n/**\r\n * When a component is rendered above the viewport, it results in the current scroll position being offset by the height difference.\r\n * This custom hook will adjust for the height of the component before every paint.\r\n * @param {HTMLElement} element\r\n */\r\nfunction useAutoScrollUp(element: HTMLElement) {\r\n const [height, setHeight] = useState(0);\r\n\r\n useEffect(() => {\r\n element && setHeight(element.getBoundingClientRect()?.height);\r\n }, [element]);\r\n\r\n useLayoutEffect(() => {\r\n if (!element || !height) return;\r\n const elemBoundingRect = element.getBoundingClientRect();\r\n const newHeight = elemBoundingRect.height;\r\n const heightIncrease = newHeight - height;\r\n\r\n //compensate scrolling only if elem above viewport (scrolling up)\r\n if (elemBoundingRect.top < 50) {\r\n window.scrollBy(0, heightIncrease);\r\n }\r\n\r\n setHeight((height) => height + heightIncrease);\r\n });\r\n}\r\n\r\nexport default useAutoScrollUp;","import { fetchBlockData } from \"../../services/fetchDataService\";\nimport { RecommendationsBlockViewModel } from \"../../interfaces/MediaPreview\";\nimport { useEffect, useLayoutEffect, useState } from \"react\";\n\nexport interface RecommendationsUsBlockResponse {\n data: RecommendationsBlockViewModel,\n blockid: number\n}\n\ninterface UseRecommentationUsBlockProps {\n blockID: Number;\n pageID: Number;\n setMarkup: Function;\n}\n\nexport function useRecommendatonsBlock(props: UseRecommentationUsBlockProps) {\n const { blockID, pageID, setMarkup } = props;\n const [blockData, setBlockData] = useState(null);\n const url = document.location.href;\n let microsite = (document.querySelector(\"#hdnCurrentMicrositeId\") as HTMLInputElement)?.value;\n // AU workaround\n if (!microsite) {\n microsite = (document.querySelector(\"#hdnSelectedCountry\") as HTMLInputElement)?.value.toLowerCase();\r\n }\n let key = \"\";\n switch (microsite) {\n case \"global\":\r\n key = \"ve-PageVisitCount-corp\";\r\n break;\r\n case \"ucits\":\r\n key = \"ve-PageVisitCount-eu\";\r\n break;\r\n case \"au\":\r\n key = \"ve-PageVisitCount-au\";\r\n break;\r\n default:\r\n key = \"ve-PageVisitCount\";\r\n break;\r\n }\n\n const visits = localStorage.getItem(key);\n const isFirstVisit = visits ? parseInt(visits) < 2 : true;\n const categoryId = (document.querySelector(\"[data-categoryid]\") as HTMLElement)?.dataset.categoryid;\n const ivcookie = getCookie(\"iv\") ?? \"\";\n\n useEffect(() => {\n (async () => {\n let additionalParams = \"\";\n if (categoryId) {\n additionalParams += \"&categoryId=\" + categoryId;\r\n }\n if (isFirstVisit) {\n additionalParams += \"&isFirstVisit=\" + isFirstVisit;\r\n }\n const response: RecommendationsUsBlockResponse = await fetchBlockData({\n url: `/main/recommendationsblock/getcontent/?blockid=${blockID}&pageid=${pageID}&iv=${ivcookie}¤tPageUrl=${url}${additionalParams}`,\n isJson: true,\n setMarkup: setMarkup,\n });\n console.log(\"%c *** RECOMMENDATIONS BLOCK ***\", \"background: #f28bff; color: #fff\");\n console.log(\"Recommendations loaded, response:\", response);\n setBlockData(response.data);\n setMarkup(false);\n })();\n }, [])\n\n useLayoutEffect(() => {\n document.dispatchEvent(new CustomEvent(\"reEvaluateSidebar\"));\n });\n\n return [blockData]\n}\n\nfunction getCookie(name: string) {\n const value = `; ${document.cookie}`;\n const parts = value.split(`; ${name}=`);\n if (parts.length === 2) return parts.pop()?.split(';').shift();\n}"],"names":["window","reactlang","document","getElementsByTagName","innerHTML","reactctr","isapiepieditmode","isapilatestversionpreview","epiprojectid","item","conversionGoal","IsRecommendation","_iaq","push","Recommendation","recommendation","isHorizontal","isCarousel","hideImage","hidePublishDate","hideReadTime","removeExtraSpacing","disableCapabilityLinks","itemDesktopMargins","className","Type","PostSmallImage","RelatedMediaImage","RelatedMediaBody","href","MediaLink","tabIndex","onClick","style","backgroundImage","paddingBottom","alt","Title","src","ImageIcon","mediaType","TypeName","authorGtmAttributeValue","imageToBeShown","Category","CategoryUrl","target","OpenInNewTab","Badge","Authors","length","Url","Name","FormattedTime","FormattedPublishDate","Description","template","focusable","role","xmlns","viewBox","fill","d","Recommendations","slider","slideIndex","setSlideIndex","useState","slideRangeIndex","setSlideRangeIndex","hidePagination","setHidePagination","totalCards","handleReinit","slidesToShow","currentSlide","current","innerSlider","state","settings","slidesToScroll","infinite","arrows","onInit","onReInit","responsive","breakpoint","initialSlide","ref","map","key","type","slickPrev","LeftArrowButtonSvg","slickNext","RightArrowButtonSvg","RecommendationsBlockInner","props","Template","CssClass","ContainerCssClass","ConversionGoal","hideRecommendedImage","includes","isAustralia","paddingClass","index","RecommendationsFundBlock","Image","SecondaryImage","ImageOverlay","noOfRecommendations","removeBorderFromLastItem","lastNodeList","querySelectorAll","forEach","lastNode","list","querySelector","classList","remove","lastElement","add","Math","min","dots","afterChange","Capabilities","RenderHeaderSection","title","RenderTrendingCards","recommendations","Value","Key","id","element","rootElement","blockID","dataset","blockid","pageID","pageid","markup","setMarkup","height","setHeight","useEffect","getBoundingClientRect","useLayoutEffect","elemBoundingRect","heightIncrease","top","scrollBy","isNaN","blockData","setBlockData","url","location","microsite","value","toLowerCase","visits","localStorage","getItem","isFirstVisit","parseInt","categoryId","categoryid","ivcookie","name","parts","cookie","split","pop","shift","getCookie","additionalParams","response","async","isJson","request","fetch","indexOf","json","err","console","log","Error","fetchBlockData","data","dispatchEvent","CustomEvent","useRecommendatonsBlock","parentElement","contains"],"sourceRoot":""}