File: /sites/nuofama.com/wp-content/themes/blocksy/static/bundle/167.fd81135b71bdeae94258.js.map
{"version":3,"file":"167.fd81135b71bdeae94258.js","mappings":"o9BAAO,MAAMA,EAAmB,SAACC,EAAMC,GACrC,MAA0C,aAAtCA,EAAcC,QAAQC,YACjBH,EAAKI,IAAMJ,EAAKK,OAGlBL,EAAKM,OAGDC,EAAe,SAACP,EAAMC,GACjC,MAA0C,aAAtCA,EAAcC,QAAQC,YACjBH,EAAKI,IAGPJ,EAAKQ,MAGDC,EAAkB,SAACT,EAAMC,GACpC,MAA0C,aAAtCA,EAAcC,QAAQC,YACjBH,EAAKK,OAGPL,EAAKU,OCRDC,EAA2B,SACtCV,EACAW,GAGG,IAFHC,EAEG,uDAFsB,OACzBC,EACG,uDADc,YAEjB,MAAMC,EAAkBd,EAAcc,gBACtC,IAAIC,EAAgB,EAEpB,GAA+B,SAA3BH,EAAmC,CACrC,IAAII,EAAiB,IAAIF,EAAgBG,UAAUC,QACjD,SAACC,EAAYC,GACX,IAAIb,EAAOD,EACTe,EACEF,EACAnB,EAAcC,QAAQqB,oBAExBtB,GAWF,OARkBM,EAChBe,EACED,EACApB,EAAcC,QAAQqB,oBAExBtB,GAGmBO,EAAOa,EAAYD,IAE1C,CACEI,sBAAuB,iBAAO,CAC5BhB,KAAM,KACNiB,OAAQ,KACRrB,IAAK,KACLE,MAAO,SAMXC,EACEe,EACEL,EACAhB,EAAcC,QAAQqB,oBAExBtB,IAEkB,cAAnBa,EACGP,EACEe,EACEP,EACAd,EAAcC,QAAQqB,oBAExBtB,GAEF,KAEJe,GACG,EACDP,EACEa,EACEP,EAAgBW,kBAChBzB,EAAcC,QAAQqB,oBAExBtB,GAGJW,EACEA,IAAqBG,EAAgBG,SAASS,OAC1C,EACAf,EAAmB,GAI7B,GAA+B,UAA3BC,EAAoC,CACtC,IAAIe,EAAkB,IAAIb,EAAgBG,UAAUC,QAClD,SAACU,EAAaR,GAiBZ,OAhBYtB,EACVuB,EACEO,EACA5B,EAAcC,QAAQqB,oBAExBtB,GAGiBF,EACjBuB,EACED,EACApB,EAAcC,QAAQqB,oBAExBtB,GAG4B4B,EAAcR,IAE9C,CACEG,sBAAuB,iBAAO,CAC5BhB,MAAO,EACPiB,QAAS,cACTrB,KAAM,EACNE,OAAQ,MAMZP,EACEuB,EACEM,EACA3B,EAAcC,QAAQqB,oBAExBtB,IAEkB,cAAnBa,EACGf,EACEuB,EACEP,EACAd,EAAcC,QAAQqB,oBAExBtB,GAEF6B,OAAOC,cAEXf,EAAgBP,EACda,EACEP,EAAgBW,kBAChBzB,EAAcC,QAAQqB,oBAExBtB,GAEFW,EACuB,IAArBA,EACIG,EAAgBG,SAASS,OACzBf,EAAmB,GAI7B,MAAO,CAAEI,gBAAeJ,qBAGnB,SAASU,EAAkBU,GAA4B,IAAxBC,EAAwB,uDAAN,KACtD,IAAKD,EAAI,OAAO,KAChB,GAAIA,EAAGR,wBAA0BQ,EAAGN,kBAClC,OAAOM,EAAGR,wBAGPS,IACHA,EAAkBD,GAKpB,IAAI,IAAE5B,EAAF,KAAOI,EAAP,MAAaF,EAAb,MAAoBI,EAApB,OAA2BL,GAAW2B,EAAGR,wBAEzCU,EAAeJ,OAChBK,iBAAiBF,GACjBG,UAAUC,MAAM,WAChBC,MAAM,GAAI,GACVC,KAAKC,SAAAA,GAAD,OAAOC,WAAWD,MAEzB,GAA2B,GAAvBN,EAAaP,OACf,OAAOK,EAAGR,wBAMZ,IAAIkB,EAAIR,EACR,IAAIS,EAAMD,EAAE,GAAKA,EAAE,GAAKA,EAAE,GAAKA,EAAE,GAMjC,MAAO,CACLhC,MAAOA,EAAQgC,EAAE,GACjBrC,OAAQA,EAASqC,EAAE,GACnBlC,MAAOA,EAAOkC,EAAE,GAAKtC,EAAMsC,EAAE,GAAKA,EAAE,GAAKA,EAAE,GAAKA,EAAE,GAAKA,EAAE,IAAMC,EAC/DrC,OAAQA,EAAQoC,EAAE,GAAKtC,EAAMsC,EAAE,GAAKA,EAAE,GAAKA,EAAE,GAAKA,EAAE,GAAKA,EAAE,IAAMC,EACjEvC,MAAOI,EAAOkC,EAAE,GAAKtC,EAAMsC,EAAE,GAAKA,EAAE,GAAKA,EAAE,GAAKA,EAAE,GAAKA,EAAE,IAAMC,GC9L5D,MAAMC,EAAkB3C,SAAAA,GAC7B,GAAKA,EAAcC,QAAQ2C,yBAC3B5C,EAAcC,QAAQ2C,uBAAuBC,cAAc,YACzD7C,EAAcC,QAAQ2C,uBACnBC,cAAc,WACdC,UAAUC,OAAO,UAEtB/C,EAAcC,QAAQ2C,uBAAuB3B,SAC3CjB,EAAcgD,MAAMC,sBACpBH,UAAUI,IAAI,UAEZlD,EAAcC,QAAQkD,oBAAoB,CAC5C,IAAIC,EAAqBpD,EAAcC,QAAQkD,mBAAmBE,MAC9DC,EAAW,IAAItD,EAAcC,QAAQ2C,uBAAuB3B,UAE5DsC,EAAY,IAAIH,EAAmBtC,gBAAgBG,UAAUuC,QAC/D,IAAIJ,EAAmBtC,gBAAgBG,UAAUC,QAC/C,SAACC,EAAYC,GACX,IAAIb,EAAOD,EACTe,EACEF,EACAiC,EAAmBnD,QAAQqB,oBAE7B8B,GAGEK,EAAcnD,EAChBe,EACED,EACAgC,EAAmBnD,QAAQqB,oBAE7B8B,GAGF,OAAOM,KAAKC,IACVF,EACEnD,EACEe,EACE+B,EAAmBtC,gBACnBsC,EAAmBnD,QAAQqB,oBAE7B8B,IAGJM,KAAKC,IACHpD,EACED,EACEe,EACE+B,EAAmBtC,gBACnBsC,EAAmBnD,QAAQqB,oBAE7B8B,IAGJhC,EACAD,IAEN,CACEI,sBAAuB,iBAAO,CAC5BhB,KAAM,KACNJ,IAAK,UAMTyD,EAAU,EAEd,GAA+C,eAA3CR,EAAmBnD,QAAQC,YAA8B,CAC3D,IAAI2D,EAAUH,KAAKI,MACjBzC,EAAkB+B,EAAmBtC,iBAAiBL,MACpDY,EACE+B,EAAmBtC,gBAAgBW,mBACnChB,OAGNmD,EAAU5D,EAAcgD,MAAMC,qBAEd,IAAZY,IACE7D,EAAcgD,MAAMC,qBAAuB,IAC7CW,EAAU5D,EAAcgD,MAAMC,qBAAuB,GAIrDK,EAAS5B,OAAS,EAAI1B,EAAcgD,MAAMC,qBAC1C,IAEAW,EAAUN,EAAS5B,OAAS,IAIhB,IAAZmC,IACE7D,EAAcgD,MAAMC,sBAAwB,IAC9CW,EAAU5D,EAAcgD,MAAMC,qBAAuB,GAIrDK,EAAS5B,OAAS,EAAI1B,EAAcgD,MAAMC,qBAC1C,IAEAW,EAAUN,EAAS5B,OAAS,SAIhCkC,EAAU5D,EAAcgD,MAAMC,qBAGhC,IAAIc,EAAkBL,KAAKC,IAAIC,EAAUL,GACrCS,EACFN,KAAKO,IAAIV,EAAWK,IACnBN,EAAS5B,OAASgC,KAAKQ,IAAIX,EAAWK,IAErCO,EACFT,KAAKO,IAAIF,EAAiBC,IACzBA,GAAoBD,EACjBR,EAAYK,EACV,GACC,EACHL,EAAYK,GACX,EACD,GAEFQ,EAYA,IAXDV,KAAKI,MACkC,IAArCV,EAAmBJ,MAAMqB,UACxB7D,EACEa,EACE+B,EAAmBtC,gBAAgBW,kBACnC2B,EAAmBnD,QAAQqB,oBAE7B8B,GAEF,KAGF5C,EACEa,EACE+B,EAAmBtC,gBAAgBW,kBACnC2B,EAAmBnD,QAAQqB,oBAE7B8B,GAEF,IACF5C,EACEa,EACE+B,EAAmBtC,gBAAgBW,kBACnC2B,EAAmBnD,QAAQqB,oBAE7B8B,GAEAe,EAEJf,EAAmBJ,MAAnBI,EAAAA,EAAAA,GACKA,EAAmBJ,OADxBI,GAAAA,CAEEkB,eAAgBF,MCzJhBG,EAAiB,SAACvE,EAAewE,GACrC,IAAIjB,EAAY,IAAIvD,EAAcc,gBAAgBG,UAAUuC,QAC1D,IAAIxD,EAAcc,gBAAgBG,UAAUC,QAC1C,SAACC,EAAYC,GACX,IAAIb,EAAOD,EACTe,EACEF,EACAnB,EAAcC,QAAQqB,oBAExBtB,GAGEyD,EAAcnD,EAChBe,EACED,EACApB,EAAcC,QAAQqB,oBAExBtB,GAGF,OAAO0D,KAAKC,IACVF,EACEnD,EACEe,EACErB,EAAcc,gBACdd,EAAcC,QAAQqB,oBAExBtB,IAGJ0D,KAAKC,IACHpD,EACED,EACEe,EACErB,EAAcc,gBACdd,EAAcC,QAAQqB,oBAExBtB,IAGJoB,EACAD,IAEN,CACEI,sBAAuB,iBAAO,CAC5BhB,KAAM,KACNJ,IAAK,UAMTyD,EAAUY,EAAGjB,GAEbK,EAAU,IACZA,EAAU5D,EAAcc,gBAAgBG,SAASS,OAAS,GAGxDkC,EAAU5D,EAAcc,gBAAgBG,SAASS,OAAS,IAC5DkC,EAAU,GAGZ,IAAIG,EAAkBL,KAAKC,IAAIC,EAAUL,GACrCS,EACFN,KAAKO,IAAIV,EAAWK,IACnB5D,EAAcc,gBAAgBG,SAASS,OACtCgC,KAAKQ,IAAIX,EAAWK,IAEpBO,EACFT,KAAKO,IAAIF,EAAiBC,IACzBA,EAAmBD,EAChBR,EAAYK,EACV,GACC,EACHL,EAAYK,GACX,EACD,GAEFQ,EAYA,IAXDV,KAAKI,MAC6B,IAAhC9D,EAAcgD,MAAMqB,UACnB7D,EACEa,EACErB,EAAcc,gBAAgBW,kBAC9BzB,EAAcC,QAAQqB,oBAExBtB,GAEF,KAGFQ,EACEa,EACErB,EAAcc,gBAAgBW,kBAC9BzB,EAAcC,QAAQqB,oBAExBtB,GAEF,IACFQ,EACEa,EACErB,EAAcc,gBAAgBW,kBAC9BzB,EAAcC,QAAQqB,oBAExBtB,GAEAmE,EAEJnE,EAAcgD,MAAdhD,EAAAA,EAAAA,GACKA,EAAcgD,OADnBhD,GAAAA,CAEEsE,eAAgBF,KClHPK,EAA4BzE,SAAAA,GACvC,IAAKA,EAAcC,QAAQyE,aAAc,OAEzC,IAAIC,EACF3E,EAAcc,gBAAgBG,SAC5BjB,EAAcgD,MAAMC,sBAGxBjD,EAAcc,gBAAgB8D,MAAMC,YAClC,iBACC,IACEF,EAAalD,mBAAqBkD,GAAcpD,wBAC9CnB,aCCH0E,EAAQ,SAACC,EAAGd,EAAKC,GAAT,OAAiBR,KAAKO,IAAIP,KAAKQ,IAAIa,EAAGd,GAAMC,IAEpDc,EAAY,gBAEX,MAAMC,EAqEXC,YAAYpE,GAA+B,eAAdb,EAAc,uDAAJ,GFgCJD,IAAAA,EEhCQmF,EAAAA,KAAAA,mBApEzB,iBAAO,CACvBxE,iBAAkB,EAElByE,iBAAkB,EAClBf,UAAW,EAKXC,eAAgB,EAEhBe,SAAU,EAEVC,oBAAqB,EAAKxE,gBACtBN,EACEa,EAAkB,EAAKP,gBAAiB,EAAKQ,oBAC7C,GAEF,EAEJiE,WAAY,EAAKzE,gBACbN,EACEa,EACE,EAAKP,gBAAgBW,kBACrB,EAAKX,iBAEP,GAEF,EAEJmC,qBAAsB,EAEtBuC,OAAQ,EACRC,KAAM,EACNC,WAAW,EAEXC,iBAAkBC,QAgCuBT,EAAAA,KAAAA,QA7BnCU,KAAKC,mBA6B8BX,EAAAA,KAAAA,UA3BjC,CACRY,YAAa,aACbC,UAAU,EACVC,mBAAmB,EACnBrD,uBAAwB,KACxBO,mBAAoB,KACpB+C,iBAAkB,KAElBC,iBAAkB,KAElBzB,cAAc,EAGd7D,eAAgB,YAGhBX,YAAa,aAEboB,mBAAoB,KAEpB8E,2BAA4B,GAE5BC,gBAAgB,IAKyBlB,EAAAA,KAAAA,kBAFzB,MAEyBA,EAAAA,KAAAA,YAyIhC,WAAqC,IAApCmB,EAAoC,wDAC1CC,EAAeD,EAA0BV,IAAW,EAAK5C,MAAMqB,UAGnE,GAAI,EAAKrB,MAAMwD,kBAAoBxB,EAAnC,CAcO,IAYEK,EA0DT,GA/EE,EAAKrC,MAAMsC,sBACXjE,EAAkB,EAAKP,gBAAiB,EAAKQ,oBAAoBb,OAEjE,EAAKgG,oBAGP,EAAKzD,MAAL,WACK,EAAKA,OACJ,EAAKA,MAAMwD,gBAaM,CACbnB,SAAqB,KADtBA,EAXD,EAAKrC,MAAMqC,UAIR,EAAKrC,MAAM0C,UACR,EAAK1C,MAAMoC,kBACV,EAAKpC,MAAMyC,KAAO,EAAKzC,MAAMwC,QAC9B,EAAKxC,MAAMqB,UACX,EAAKrB,MAAMqC,SAC0C,KAApD,EAAKrC,MAAMsB,eAAiB,EAAKtB,MAAMqB,aAI5CA,UAAW,EAAKrB,MAAMqB,UAAYgB,GAGtC,IACA,EAAKrC,MAAMwD,iBACf9C,KAAKC,IACH,EAAKX,MAAMsC,oBACT9E,EACEa,EAAkB,EAAKP,gBAAiB,EAAKQ,oBAC7C,IAEF,EACA,CACE+C,UAAWX,KAAKI,MACbtD,EACCa,EACE,EAAKP,gBAAgBW,kBACrB,EAAKxB,QAAQqB,oBAEf,IAGE,IADDoC,KAAKI,MAAM,EAAKd,MAAMqB,UAAY,EAAKrB,MAAMuC,aAE9C,KAEJjB,eAAgBZ,KAAKI,MAClBtD,EACCa,EACE,EAAKP,gBAAgBW,kBACrB,EAAKxB,QAAQqB,oBAEf,IAGE,IADDoC,KAAKI,MAAM,EAAKd,MAAMqB,UAAY,EAAKrB,MAAMuC,aAE9C,MAGN,IAvDN,IAwDEmB,eAAgB,CACdC,EAAG9E,OAAO+E,YACVC,EAAGhF,OAAOiF,aAEZxB,oBAAqB9E,EACnBa,EAAkB,EAAKP,gBAAiB,EAAKQ,oBAC7C,GAEFiE,WAAY/E,EACVa,EACE,EAAKP,gBAAgBW,kBACrB,EAAKxB,QAAQqB,oBAEf,MAKDiF,IAAiB,EAAKvD,MAAMqB,WAC3BX,KAAKC,IAAI,EAAKX,MAAMqB,UAAY,EAAKrB,MAAMsB,gBAAkB,MAC9DgC,GAEG,EAAKtD,MAAMwD,gBAAiB,CAC9B,IAAI,cAAEzF,EAAF,iBAAiBJ,GAAqBD,EACxC,EACA,EAAKsC,MAAMrC,iBACX,EAAKqC,MAAM0C,UACP,EAAK1C,MAAMyC,MAAQ,EAAKzC,MAAMwC,OAC5B,QACA,OACF,EAAKxC,MAAMqB,WAAa,EAAKrB,MAAMsB,eACnC,QACA,OAEJ,EAAKrE,QAAQY,gBAGf,EAAKmC,MAAL,OACK,EAAKA,OADV,IAEErC,mBACA2D,eAAgB,EAAKtB,MAAMsB,eAAiBvD,EAC5CsD,UAAW,EAAKrB,MAAMqB,UAAYtD,EAClCqE,iBAAkB,EAAKpC,MAAMoC,iBAAmBrE,IA6BtD,GAxBI,EAAKd,QAAQ+F,UAAY,EAAKhD,MAAMwD,iBAClC9C,KAAKC,IAAI,EAAKX,MAAMqB,UAAY,EAAKrB,MAAMsB,gBAAkB,KAE7D,IAAIyC,MAAOC,UAAY,IAAO,EAAKhE,MAAM2C,iBAAmB,KAC3DnD,WAAW,EAAKvC,QAAQ+F,SAAU,IAC/BxD,WAAW,EAAKvC,QAAQ+F,SAAU,IAClC,KAEJ,EAAKhD,MAAL,OACK,EAAKA,OADV,IAEEsB,eACE,EAAKtB,MAAMqB,UACX7D,EACEa,EACE,EAAKP,gBAAgBW,kBACrB,EAAKxB,QAAQqB,oBAEf,OAOP,EAAK0B,MAAM0C,WAAa,EAAK1C,MAAMwD,gBAAiB,CACnD9C,KAAKC,IAAI,EAAKX,MAAMqB,UAAY,EAAKrB,MAAMsB,gBAAkB,KAC/D,EAAKtB,MAAL,OACK,EAAKA,OADV,IAEEqB,UAAW,EAAKrB,MAAMsB,eACtBe,SAAU,KAId,IAAI4B,EAAW,EAAKjE,MAAMC,qBAE1B,EAAKD,MAAL,OACK,EAAKA,OADV,IAEEC,qBAAsB6B,EACpB,EAAK9B,MAAMrC,iBACT+C,KAAKI,MACHJ,KAAKC,IAAI,EAAKX,MAAMsB,gBAClB9D,EACEa,EACE,EAAKP,gBAAgBW,kBACrB,EAAKxB,QAAQqB,oBAEf,IAGJoC,KAAKI,MACHJ,KAAKC,IAAI,EAAKX,MAAMsB,gBAClB9D,EACEa,EACE,EAAKP,gBAAgBW,kBACrB,EAAKxB,QAAQqB,oBAEf,KAGH,EAAKR,gBAAgBG,SAASS,OAC7B,EAAKsB,MAAMrC,kBACf+C,KAAKC,IACHD,KAAKI,MACHJ,KAAKC,IAAI,EAAKX,MAAMsB,gBAClB9D,EACEa,EACE,EAAKP,gBAAgBW,kBACrB,EAAKxB,QAAQqB,oBAEf,IAEF,EAAK0B,MAAMrC,kBAErB,EACA,EAAKG,gBAAgBG,SAASS,OAAS,KAIvCuF,IAAa,EAAKjE,MAAMC,uBAC1BN,EAAe,GACf8B,EAAyB,GACxB,IAAI,EAAK3D,gBAAgBoG,iBAAiB,UAAU5E,KAAK6E,SAAAA,GACxDA,EAAMC,WAEP,IAAI,EAAKtG,gBAAgBoG,iBAAiB,yBAAyB5E,KACjE+E,SAAAA,GACCA,EAAEC,cAAcC,YACd,mDACA,QAIL,IACI,EAAKzG,gBAAgBoG,iBACtB,+BAEF5E,KAAK+E,SAAAA,GACL,MAAMG,EAASH,EAAEI,IACjBJ,EAAEI,IAAM,GACRJ,EAAEI,IAAMD,MAKV,EAAKxE,MAAMqB,YAAckC,GAAgB,EAAKvD,MAAMwD,kBACtD,EAAKkB,SAIL,EAAK1E,MAAL,OACK,EAAKA,OADV,IAEE2C,kBAAkB,IAAIoB,MAAOC,aAIjCW,uBAAsB,kBAAM,EAAKC,kBAjXjC/B,KAAK5F,QAAL,OACK4F,KAAK5F,SADV,IAEEiG,iBAAkBpF,EAClBQ,mBAAoBR,GACjBb,GAGL4F,KAAK/E,gBAAkBA,EHoESd,SAAAA,GAClC,IAAKA,EAAcC,QAAQ2C,uBAAwB,OAEnD,IAAIU,EAAW,IAAItD,EAAcC,QAAQ2C,uBAAuB3B,UAEhE,MAAM4G,EAAmBC,SAAAA,GACvB,IAAIvE,EAAY,IAAIvD,EAAcc,gBAAgBG,UAAUuC,QAC1D,IAAIxD,EAAcc,gBAAgBG,UAAUC,QAC1C,SAACC,EAAYC,GACX,IAAIb,EAAOD,EACTe,EACEF,EACAnB,EAAcC,QAAQqB,oBAExBtB,GAGEyD,EAAcnD,EAChBe,EACED,EACApB,EAAcC,QAAQqB,oBAExBtB,GAGF,OAAO0D,KAAKC,IACVF,EACEnD,EACEe,EACErB,EAAcc,gBACdd,EAAcC,QAAQqB,oBAExBtB,IAGJ0D,KAAKC,IACHpD,EACED,EACEe,EACErB,EAAcc,gBACdd,EAAcC,QAAQqB,oBAExBtB,IAGJoB,EACAD,IAEN,CACEI,sBAAuB,iBAAO,CAC5BhB,KAAM,UAMVqD,EAAUN,EAASE,QAAQsE,GAE/B9H,EAAcC,QAAQ2C,uBAAuBC,cAAc,YACzD7C,EAAcC,QAAQ2C,uBACnBC,cAAc,WACdC,UAAUC,OAAO,UAEtB+E,EAAWhF,UAAUI,IAAI,UAEzB,IAAIa,EAAkBL,KAAKC,IAAIC,EAAUL,GACrCS,EACFN,KAAKO,IAAIV,EAAWK,IACnBN,EAAS5B,OAASgC,KAAKQ,IAAIX,EAAWK,IAErCO,EACFT,KAAKO,IAAIF,EAAiBC,IACzBA,GAAoBD,EACjBR,EAAYK,EACV,GACC,EACHL,EAAYK,GACX,EACD,GAEFQ,EAYA,IAXDV,KAAKI,MAC6B,IAAhC9D,EAAcgD,MAAMqB,UACnB7D,EACEa,EACErB,EAAcc,gBAAgBW,kBAC9BzB,EAAcC,QAAQqB,oBAExBtB,GAEF,KAGFQ,EACEa,EACErB,EAAcc,gBAAgBW,kBAC9BzB,EAAcC,QAAQqB,oBAExBtB,GAEF,IACFQ,EACEa,EACErB,EAAcc,gBAAgBW,kBAC9BzB,EAAcC,QAAQqB,oBAExBtB,GAEAmE,EAEJnE,EAAcgD,MAAdhD,EAAAA,EAAAA,GACKA,EAAcgD,OADnBhD,GAAAA,CAEEsE,eAAgBF,KAKlBpE,EAAcC,QAAQkG,kBACtBnG,EAAcC,QAAQkG,iBAAiB4B,OAAOC,QAC5C,yBAGFC,YAAW,WACTJ,EACE7H,EAAcC,QAAQkG,iBAAiB4B,OAAOC,QAC5C,4BAMR1E,EAAShB,KAAKwF,SAAAA,GAAD,OACXA,EAAWI,iBAAiB,SAAUC,SAAAA,GACpCN,EAAgBC,GAChBK,EAAEC,uBGxMJC,CAAoBxC,OFsBa7F,EErBZ6F,MFsBT5F,QAAQqI,WACpBtI,EAAcC,QAAQqI,UAAUJ,iBAAiB,SAAUC,SAAAA,GACzDA,EAAEC,iBACF7D,EAAevE,GAAgBuD,SAAAA,GAAD,OAAeA,EAAY,QAG7DvD,EAAcC,QAAQsI,YACpBvI,EAAcC,QAAQsI,WAAWL,iBAAiB,SAAUC,SAAAA,GAC1DA,EAAEC,iBACF7D,EAAevE,GAAgBuD,SAAAA,GAAD,OAAeA,EAAY,QGhI3BvD,SAAAA,GAClC,MAAMc,EAAkBd,EAAcc,gBAEjCd,EAAcC,QAAQ+F,WAE3BlF,EAAgBoH,iBACd,cACA,kBACGlI,EAAcC,QAAdD,EAAAA,EAAAA,GACIA,EAAcC,SADlBD,GAAAA,CAECgG,UAAU,EACVwC,UAAWxI,EAAcC,QAAQ+F,cAIvClF,EAAgBoH,iBAAiB,cAAc,WAC7ClI,EAAcC,QAAdD,EAAAA,EAAAA,GACKA,EAAcC,SADnBD,GAAAA,CAEEgG,SAAUhG,EAAcC,QAAQuI,UAChCA,WAAW,IAGbxI,EAAcgD,MAAdhD,EAAAA,EAAAA,GACKA,EAAcgD,OADnBhD,GAAAA,CAEE2F,kBAAkB,IAAIoB,MAAOC,gBD0E/ByB,CAAoB5C,MEhGK,SAAC7F,EAAe0I,EAAUC,GACrD,IAAK3I,EAAcC,QAAQoG,eACzB,OAGF,MAAMvF,EAAkBd,EAAcc,gBAEhC8H,EAAcT,SAAAA,GAClB,IAAKO,IAAWlC,gBAAiB,OAEjC,GACExG,EAAcC,QAAQmG,2BAA2BlF,QAC/C,SAAC2H,EAAgBC,GAAjB,QACED,GAEIV,EAAEJ,OAAOgB,QAAQD,IAAaX,EAAEJ,OAAOC,QAAQc,MAErD,GAGF,OAIFX,EAAEa,kBAEa,eAAXb,EAAEc,MACJd,EAAEC,iBAGJpI,EAAcC,QAAQ8F,YAAYoC,GAElCQ,EAAS,EAAD,KACHD,KADG,IAENlD,OAAQ2C,EAAEe,OAASf,EAAEgB,QAAQ,GAAGD,MAChCzD,KAAM0C,EAAEe,OAASf,EAAEgB,QAAQ,GAAGD,MAC9BxD,WAAW,EACX0D,mBAAoB,CAClBzC,EAAG9E,OAAO+E,YACVC,EAAGhF,OAAOiF,aAEZ1B,iBAAkBsD,IAAWrE,aAG/B,MAAMgF,EAAiBlB,SAAAA,GACrB,IAAKO,IAAWhD,UAAW,OAE3ByC,EAAEa,kBAEFL,EAAS,EAAD,KACHD,KADG,IAENhD,WAAW,KAGb4D,SAASC,oBAAoB,YAAaC,GAC1CF,SAASC,oBAAoB,UAAWF,GAExCC,SAASC,oBAAoB,YAAaC,GAC1CF,SAASC,oBAAoB,WAAYF,GAEzC,IAAIrG,EAAQ0F,IAERe,EACiB,IAAlBzG,EAAMqB,UACPhD,EACEP,EAAgBW,kBAChBzB,EAAcC,QAAQqB,oBACtBb,MAEJkI,EAAS,EAAD,KACHD,KADG,IAENpE,eACGjD,EACCP,EAAgBW,kBAChBzB,EAAcC,QAAQqB,oBACtBb,OACCiD,KAAKC,IAAIX,EAAMyC,KAAOzC,EAAMwC,QAAU,GACnCxC,EAAMyC,KAAOzC,EAAMwC,OAAS,EACS,IAAnC9B,KAAKgG,MAAMD,EAAiB,KACM,IAAlC/F,KAAKiG,KAAKF,EAAiB,KACM,IAAnC/F,KAAKI,MAAM2F,EAAiB,MAClC,QAIAD,EAAmBrB,SAAAA,GACvB,IAAMe,MAAOzD,GAAS0C,EAMtB,GAJK1C,IACHA,EAAO0C,EAAEgB,QAAQ,GAAGD,QAGjBR,IAAWhD,UAAW,OAE3B,IAAI1C,EAAQ0F,IAIZC,EAAS,EAAD,KACH3F,GADG,IAENyC,WAIA/B,KAAKC,IAAIX,EAAMoG,mBAAmBzC,EAAI3D,EAAM0D,eAAeC,GAAK,GAChEjD,KAAKC,IAAIX,EAAMoG,mBAAmBvC,EAAI7D,EAAM0D,eAAeG,GAAK,IAEhEwC,EAAclB,IAIlBmB,SAASpB,iBAAiB,YAAasB,GACvCF,SAASpB,iBAAiB,UAAWmB,GAErCC,SAASpB,iBAAiB,YAAasB,GACvCF,SAASpB,iBAAiB,WAAYmB,IAGxCvI,EAAgBoH,iBAAiB,YAAaU,GAC9C9H,EAAgBoH,iBAAiB,aAAcU,GAG7C5I,EAAcC,QAAQkG,mBACrBnG,EAAcC,QAAQkG,iBAAiB4B,OAAOC,QAC7C,yBAGFL,uBAAsB,WACpBiB,EAAW5I,EAAcC,QAAQkG,qBF9BnCyD,CACE/D,MACA,kBAAM,EAAK7C,SACV6G,SAAAA,GAAD,OAAe,EAAK7G,MAAQ6G,KAE7B,IAAIhE,KAAK/E,gBAAgBG,UAAUqB,KAAKwH,SAAAA,GAAD,OACtCA,EAAY5B,iBACV,SACCC,SAAAA,GAAD,OACEzE,KAAKC,IAAI,EAAKX,MAAMwC,OAAS,EAAKxC,MAAMyC,MAAQ,GAChD0C,EAAEC,uBAIR,IAAIzH,EAAmB,EACnBoJ,EAAY,EAEZC,EAAwB9H,iBAAiB2D,KAAK5F,QAAQiG,kBAEtD8D,EAAsBC,iBAAiB,oBACzCF,EAAYG,SACVF,EAAsBC,iBAAiB,mBAGzCtJ,EAAmBkF,KAAK/E,gBAAgBG,SAASS,QAGnDmE,KAAK7C,MAAL,OACK6C,KAAK7C,OADV,IAEErC,iBAAAA,EACA0D,UACE7D,EACEa,EACEwE,KAAK/E,gBAAgBW,kBACrBoE,KAAK5F,QAAQqB,oBAEfuE,MAEFkE,GACC,EACHzF,eACE9D,EACEa,EACEwE,KAAK/E,gBAAgBW,kBACrBoE,KAAK5F,QAAQqB,oBAEfuE,MAEFkE,GACC,EACHzE,oBAAqB9E,EACnBa,EAAkBwE,KAAK/E,gBAAiB+E,KAAKvE,oBAC7CuE,MAEFN,WAAY/E,EACVa,EACEwE,KAAK/E,gBAAgBW,kBACrBoE,KAAK5F,QAAQqB,oBAEfuE,QAIJA,KAAKY,oBACLkB,uBAAsB,kBAAM,EAAKC,UAAS,MAC1CnD,EAAyBoB,MAG3BsE,UACEtE,KAAK7C,MAAL,OACK6C,KAAK7C,OADV,IAEEwD,gBAAiBxB,IAIrByB,oBACE,IAAI2D,EACF5J,EACEa,EACEwE,KAAK/E,gBAAgBG,SAAS,GAC9B4E,KAAK5F,QAAQqB,qBACV,CACHb,MAAO,EACPL,OAAQ,GAEVyF,MACEA,KAAK/E,gBAAgBG,SAASS,OAEpCmE,KAAK7C,MAAL,OACK6C,KAAK7C,OADV,IAEEwD,kBAAiBX,KAAK/E,kBAGX,IAFPoB,iBAAiB2D,KAAK/E,gBAAiB,UAAUuJ,QAAQ7G,QACvD,aAEF4G,EACE5J,EACEa,EAC+B,aAA7BwE,KAAK5F,QAAQC,YACT2F,KAAK/E,gBAAgBwJ,WACrBzE,KAAK/E,gBACT+E,KAAK5F,QAAQqB,oBAEfuE,MAEA,KASNA,KAAK7C,MAAMwD,gBACbX,KAAK5F,QAAQiG,iBAAiBqE,QAAQlH,MAAQ,IAE9CwC,KAAK5F,QAAQiG,iBAAiBsE,gBAAgB,cAC7C,IAAI3E,KAAK/E,gBAAgBG,UAAUqB,KAAKP,SAAAA,GAAD,OACtCA,EAAGyI,gBAAgB,aAiPzB9C,SAAS,WACN,IAAI7B,KAAK/E,gBAAgBG,UAAUqB,KAAKP,SAAAA,GACN,aAA7B,EAAK9B,QAAQC,YACf6B,EAAG6C,MAAMzC,UAAa,kBAAiB,EAAKa,MAAMqB,kBAElDtC,EAAG6C,MAAMzC,UAAa,eAAc,EAAKa,MAAMqB,wBAI/CwB,KAAK7C,MAAM0C,UACbG,KAAK5F,QAAQiG,iBAAiBqE,QAAQE,cAAgB,GAEtD5E,KAAK5F,QAAQiG,iBAAiBsE,gBAAgB,uBAG5C3E,KAAK7C,MAAMrC,iBAAmB,GAC/B,IAAIkF,KAAK/E,gBAAgBG,UACvBoB,MAAM,GAAkC,EAA/BwD,KAAK7C,MAAMrC,kBACpB2B,KAAKP,SAAAA,GAAD,OAASA,EAAG6C,MAAM8F,MAAQ,KAChC,IAAI7E,KAAK/E,gBAAgBG,UACvBoB,OAAqC,EAA/BwD,KAAK7C,MAAMrC,kBACjB2B,KAAKP,SAAAA,GAAD,OAASA,EAAG6C,MAAM8F,MAAQ,MAEhC,IAAI7E,KAAK/E,gBAAgBG,UAAUqB,KAAKP,SAAAA,GAAD,OAASA,EAAG6C,MAAM8F,MAAQ,M,stBG7djE,MAAMC,EAAQ,SAACC,EAAUC,GAG/B,GAAID,EAASvH,MACZ,OAGD,IAAIyH,EAAmBF,EAAS/H,cAAc,6BAE9C,MAAMkI,EAAO,IAAI9F,EAAM2F,EAAS/H,cAAc,gBAAjC,OACZqD,iBAAkB0E,EAClBxE,2BAA4B,CAAC,wBAC7B1B,eAAgBkG,EAAS/H,cAAc,gBAAgB0H,QAAQnK,QAE3DyK,EAAKG,MAAQ,CAAE7E,iBAAkB0E,EAAKG,OAAU,IALxC,IAOZhF,YACCiF,OAAOC,KAAKN,EAASL,SAAS/G,QAAQ,aAAe,GACrD0G,SAASU,EAASL,QAAQvE,SAAU,MACjC4E,EAASL,QAAQvE,UAGjB4E,EAAS/H,cAAc,gBACxB,CACAD,uBAAwBgI,EAAS/H,cAChC,gBACCpB,mBAEF,IAnBS,IAoBZ6G,UAAWsC,EAAS/H,cAAc,4BAClC0F,WAAYqC,EAAS/H,cAAc,4BACnCoD,mBAAmB,EAEnBF,YAAa,SAACoC,GACRA,EAAEJ,OAAOC,QAAQ,iBAItBmD,MAAMC,KACLjD,EAAEJ,OAAOC,QAAQ,gBAAgBd,iBAAiB,aACjD5E,KAAI,SAAC+I,GACNC,IAAED,GAAKE,OAAOC,OAAO,IAAK,OAK5B3K,eAC2B,aAA1B+J,EAASL,QAAQkB,KAAsB,WAAa,aAEjDX,EACD,CACA3H,mBAAoB2H,GAEpB,KAGJ,GAAIA,EAAkB,CACrB,MAAMC,EAAO,IAAI9F,EAAM6F,EAAV,GACZ1E,2BAA4B,CAAC,wBAE7BvF,eACmC,aAAlCiK,EAAiBP,QAAQkB,KACtB,WACA,YAEJnD,UAAWwC,EAAiBR,WAAWzH,cACtC,qBAED0F,WAAYuC,EAAiBR,WAAWzH,cACvC,qBAEDwD,gBAAgB,GAEZyE,EAAiB9C,QAAQ,iBACc,YAA3C0D,EAAAA,EAAAA,GAAiB,CAAEC,YAAY,IAC5B,CACAzL,YAAa,YAEb,KAGJ4K,EAAiBzH,MAAQ0H,EAG1BH,EAASvH,MAAQ0H,GAGlBa,IAAAA,GAAY,0BAA0B,WACpC,IAAItC,SAASpC,iBAAiB,qBAAqB5E,KAAI,SAACP,GACnDA,EAAGsB,OAIRoB,EAAyB1C,EAAGsB","sources":["webpack://ctFrontend/../src/direction-helpers.js","webpack://ctFrontend/../src/helpers.js","webpack://ctFrontend/../src/pills.js","webpack://ctFrontend/../src/arrows.js","webpack://ctFrontend/../src/dynamic-height.js","webpack://ctFrontend/../src/flexy.js","webpack://ctFrontend/../src/hover-state.js","webpack://ctFrontend/../src/drag.js","webpack://ctFrontend/./static/js/frontend/flexy.js"],"sourcesContent":["export const getRightOrBottom = (rect, flexyInstance) => {\n if (flexyInstance.options.orientation === \"vertical\") {\n return rect.top + rect.height\n }\n\n return rect.right\n}\n\nexport const getLeftOrTop = (rect, flexyInstance) => {\n if (flexyInstance.options.orientation === \"vertical\") {\n return rect.top\n }\n\n return rect.left\n}\n\nexport const getDimensionFor = (rect, flexyInstance) => {\n if (flexyInstance.options.orientation === \"vertical\") {\n return rect.height\n }\n\n return rect.width\n}\n","import {\n getDimensionFor,\n getLeftOrTop,\n getRightOrBottom,\n} from \"./direction-helpers\"\n\n/**\n * Develop a suggestion-based mechanism.\n * That is, ignore a checking for a specific side when we do not have a need\n * for it. Also, when we don't care about that particular side.\n *\n * TODO: implement _both_ strategy for wrapAround\n */\nexport const fetchWrapAroundStatusFor = (\n flexyInstance,\n elementsOnBehind,\n theSideWeAreMovingOnto = \"left\",\n wrapAroundMode = \"container\"\n) => {\n const sliderContainer = flexyInstance.sliderContainer\n let relativeDelta = 0\n\n if (theSideWeAreMovingOnto === \"left\") {\n let leftmostOffset = [...sliderContainer.children].reduce(\n (leftmostEl, currentEl) => {\n let left = getLeftOrTop(\n nullifyTransforms(\n leftmostEl,\n flexyInstance.options.nullifyTransformEl\n ),\n flexyInstance\n )\n\n let currentLeft = getLeftOrTop(\n nullifyTransforms(\n currentEl,\n flexyInstance.options.nullifyTransformEl\n ),\n flexyInstance\n )\n\n return currentLeft < left ? currentEl : leftmostEl\n },\n {\n getBoundingClientRect: () => ({\n left: 100000000000,\n bottom: 100000000000,\n top: 100000000000,\n right: 100000000000,\n }),\n }\n )\n\n if (\n getLeftOrTop(\n nullifyTransforms(\n leftmostOffset,\n flexyInstance.options.nullifyTransformEl\n ),\n flexyInstance\n ) >\n (wrapAroundMode === \"container\"\n ? getLeftOrTop(\n nullifyTransforms(\n sliderContainer,\n flexyInstance.options.nullifyTransformEl\n ),\n flexyInstance\n )\n : 0)\n ) {\n relativeDelta =\n -1 *\n getDimensionFor(\n nullifyTransforms(\n sliderContainer.firstElementChild,\n flexyInstance.options.nullifyTransformEl\n ),\n flexyInstance\n )\n\n elementsOnBehind =\n elementsOnBehind === sliderContainer.children.length\n ? 1\n : elementsOnBehind + 1\n }\n }\n\n if (theSideWeAreMovingOnto === \"right\") {\n let rightmostOffset = [...sliderContainer.children].reduce(\n (rightmostEl, currentEl) => {\n let right = getRightOrBottom(\n nullifyTransforms(\n rightmostEl,\n flexyInstance.options.nullifyTransformEl\n ),\n flexyInstance\n )\n\n let currentRight = getRightOrBottom(\n nullifyTransforms(\n currentEl,\n flexyInstance.options.nullifyTransformEl\n ),\n flexyInstance\n )\n\n return right > currentRight ? rightmostEl : currentEl\n },\n {\n getBoundingClientRect: () => ({\n left: -1,\n bottom: -9999999999999,\n top: -1,\n right: -1,\n }),\n }\n )\n\n if (\n getRightOrBottom(\n nullifyTransforms(\n rightmostOffset,\n flexyInstance.options.nullifyTransformEl\n ),\n flexyInstance\n ) <\n (wrapAroundMode === \"container\"\n ? getRightOrBottom(\n nullifyTransforms(\n sliderContainer,\n flexyInstance.options.nullifyTransformEl\n ),\n flexyInstance\n )\n : window.innerWidth)\n ) {\n relativeDelta = getDimensionFor(\n nullifyTransforms(\n sliderContainer.firstElementChild,\n flexyInstance.options.nullifyTransformEl\n ),\n flexyInstance\n )\n elementsOnBehind =\n elementsOnBehind === 1\n ? sliderContainer.children.length\n : elementsOnBehind - 1\n }\n }\n\n return { relativeDelta, elementsOnBehind }\n}\n\nexport function nullifyTransforms(el, elementToLookAt = null) {\n if (!el) return null\n if (el.getBoundingClientRect && !el.firstElementChild) {\n return el.getBoundingClientRect()\n }\n\n if (!elementToLookAt) {\n elementToLookAt = el\n }\n\n //add sanity checks and default values\n\n let { top, left, right, width, height } = el.getBoundingClientRect()\n\n let transformArr = window\n .getComputedStyle(elementToLookAt)\n .transform.split(/\\(|,|\\)/)\n .slice(1, -1)\n .map((v) => parseFloat(v))\n\n if (transformArr.length != 6) {\n return el.getBoundingClientRect()\n }\n\n // 2D matrix\n // need some math to apply inverse of matrix\n // That is the matrix of the transformation of the element\n var t = transformArr\n let det = t[0] * t[3] - t[1] * t[2]\n\n /*if (transformArr.length > 6)*/\n //3D matrix\n //haven't done the calculation to apply inverse of 4x4 matrix\n\n return {\n width: width / t[0],\n height: height / t[3],\n left: (left * t[3] - top * t[2] + t[2] * t[5] - t[4] * t[3]) / det,\n right: (right * t[3] - top * t[2] + t[2] * t[5] - t[4] * t[3]) / det,\n top: (-left * t[1] + top * t[0] + t[4] * t[1] - t[0] * t[5]) / det,\n }\n}\n","import { nullifyTransforms } from \"./helpers\"\nimport { getDimensionFor, getLeftOrTop } from \"./direction-helpers\"\n\nexport const renderPillsFor = (flexyInstance) => {\n if (!flexyInstance.options.pillsContainerSelector) return\n flexyInstance.options.pillsContainerSelector.querySelector(\".active\") &&\n flexyInstance.options.pillsContainerSelector\n .querySelector(\".active\")\n .classList.remove(\"active\")\n\n flexyInstance.options.pillsContainerSelector.children[\n flexyInstance.state.previousCurrentIndex\n ].classList.add(\"active\")\n\n if (flexyInstance.options.pillsFlexyInstance) {\n let localFlexyInstance = flexyInstance.options.pillsFlexyInstance.flexy\n let allPills = [...flexyInstance.options.pillsContainerSelector.children]\n\n let fromIndex = [...localFlexyInstance.sliderContainer.children].indexOf(\n [...localFlexyInstance.sliderContainer.children].reduce(\n (leftmostEl, currentEl) => {\n let left = getLeftOrTop(\n nullifyTransforms(\n leftmostEl,\n localFlexyInstance.options.nullifyTransformEl\n ),\n localFlexyInstance\n )\n\n let currentLeft = getLeftOrTop(\n nullifyTransforms(\n currentEl,\n localFlexyInstance.options.nullifyTransformEl\n ),\n localFlexyInstance\n )\n\n return Math.abs(\n currentLeft -\n getLeftOrTop(\n nullifyTransforms(\n localFlexyInstance.sliderContainer,\n localFlexyInstance.options.nullifyTransformEl\n ),\n localFlexyInstance\n )\n ) <\n Math.abs(\n left -\n getLeftOrTop(\n nullifyTransforms(\n localFlexyInstance.sliderContainer,\n localFlexyInstance.options.nullifyTransformEl\n ),\n localFlexyInstance\n )\n )\n ? currentEl\n : leftmostEl\n },\n {\n getBoundingClientRect: () => ({\n left: 100000000000,\n top: 100000000000,\n }),\n }\n )\n )\n\n let toIndex = 0\n\n if (localFlexyInstance.options.orientation === \"horizontal\") {\n let perPage = Math.round(\n nullifyTransforms(localFlexyInstance.sliderContainer).width /\n nullifyTransforms(\n localFlexyInstance.sliderContainer.firstElementChild\n ).width\n )\n\n toIndex = flexyInstance.state.previousCurrentIndex\n\n if (perPage === 5) {\n if (flexyInstance.state.previousCurrentIndex > 2) {\n toIndex = flexyInstance.state.previousCurrentIndex - 2\n }\n\n if (\n allPills.length - 1 - flexyInstance.state.previousCurrentIndex <\n 3\n ) {\n toIndex = allPills.length - 5\n }\n }\n\n if (perPage === 3) {\n if (flexyInstance.state.previousCurrentIndex >= 1) {\n toIndex = flexyInstance.state.previousCurrentIndex - 1\n }\n\n if (\n allPills.length - 1 - flexyInstance.state.previousCurrentIndex <\n 1\n ) {\n toIndex = allPills.length - 3\n }\n }\n } else {\n toIndex = flexyInstance.state.previousCurrentIndex\n }\n\n let amountToTheLeft = Math.abs(toIndex - fromIndex)\n let amountToTheRight =\n Math.min(fromIndex, toIndex) +\n (allPills.length - Math.max(fromIndex, toIndex))\n\n let p =\n Math.min(amountToTheLeft, amountToTheRight) *\n (amountToTheRight >= amountToTheLeft\n ? fromIndex > toIndex\n ? 1\n : -1\n : fromIndex > toIndex\n ? -1\n : 1)\n\n let resultTarget =\n (Math.round(\n (localFlexyInstance.state.positionX * 100) /\n getDimensionFor(\n nullifyTransforms(\n localFlexyInstance.sliderContainer.firstElementChild,\n localFlexyInstance.options.nullifyTransformEl\n ),\n localFlexyInstance\n ) /\n 100\n ) *\n 100 *\n getDimensionFor(\n nullifyTransforms(\n localFlexyInstance.sliderContainer.firstElementChild,\n localFlexyInstance.options.nullifyTransformEl\n ),\n localFlexyInstance\n )) /\n 100 +\n getDimensionFor(\n nullifyTransforms(\n localFlexyInstance.sliderContainer.firstElementChild,\n localFlexyInstance.options.nullifyTransformEl\n ),\n localFlexyInstance\n ) *\n p\n\n localFlexyInstance.state = {\n ...localFlexyInstance.state,\n positionTarget: resultTarget,\n }\n }\n}\n\nexport const mountPillsListeners = (flexyInstance) => {\n if (!flexyInstance.options.pillsContainerSelector) return\n\n let allPills = [...flexyInstance.options.pillsContainerSelector.children]\n\n const handlePillEvent = (singlePill) => {\n let fromIndex = [...flexyInstance.sliderContainer.children].indexOf(\n [...flexyInstance.sliderContainer.children].reduce(\n (leftmostEl, currentEl) => {\n let left = getLeftOrTop(\n nullifyTransforms(\n leftmostEl,\n flexyInstance.options.nullifyTransformEl\n ),\n flexyInstance\n )\n\n let currentLeft = getLeftOrTop(\n nullifyTransforms(\n currentEl,\n flexyInstance.options.nullifyTransformEl\n ),\n flexyInstance\n )\n\n return Math.abs(\n currentLeft -\n getLeftOrTop(\n nullifyTransforms(\n flexyInstance.sliderContainer,\n flexyInstance.options.nullifyTransformEl\n ),\n flexyInstance\n )\n ) <\n Math.abs(\n left -\n getLeftOrTop(\n nullifyTransforms(\n flexyInstance.sliderContainer,\n flexyInstance.options.nullifyTransformEl\n ),\n flexyInstance\n )\n )\n ? currentEl\n : leftmostEl\n },\n {\n getBoundingClientRect: () => ({\n left: 100000000000,\n }),\n }\n )\n )\n\n let toIndex = allPills.indexOf(singlePill)\n\n flexyInstance.options.pillsContainerSelector.querySelector(\".active\") &&\n flexyInstance.options.pillsContainerSelector\n .querySelector(\".active\")\n .classList.remove(\"active\")\n\n singlePill.classList.add(\"active\")\n\n let amountToTheLeft = Math.abs(toIndex - fromIndex)\n let amountToTheRight =\n Math.min(fromIndex, toIndex) +\n (allPills.length - Math.max(fromIndex, toIndex))\n\n let p =\n Math.min(amountToTheLeft, amountToTheRight) *\n (amountToTheRight >= amountToTheLeft\n ? fromIndex > toIndex\n ? 1\n : -1\n : fromIndex > toIndex\n ? -1\n : 1)\n\n let resultTarget =\n (Math.round(\n (flexyInstance.state.positionX * 100) /\n getDimensionFor(\n nullifyTransforms(\n flexyInstance.sliderContainer.firstElementChild,\n flexyInstance.options.nullifyTransformEl\n ),\n flexyInstance\n ) /\n 100\n ) *\n 100 *\n getDimensionFor(\n nullifyTransforms(\n flexyInstance.sliderContainer.firstElementChild,\n flexyInstance.options.nullifyTransformEl\n ),\n flexyInstance\n )) /\n 100 +\n getDimensionFor(\n nullifyTransforms(\n flexyInstance.sliderContainer.firstElementChild,\n flexyInstance.options.nullifyTransformEl\n ),\n flexyInstance\n ) *\n p\n\n flexyInstance.state = {\n ...flexyInstance.state,\n positionTarget: resultTarget,\n }\n }\n\n if (\n flexyInstance.options.initialDragEvent &&\n flexyInstance.options.initialDragEvent.target.closest(\n \".flexy-pills > * > *\"\n )\n ) {\n setTimeout(() => {\n handlePillEvent(\n flexyInstance.options.initialDragEvent.target.closest(\n \".flexy-pills > * > *\"\n )\n )\n })\n }\n\n allPills.map((singlePill) =>\n singlePill.addEventListener(\"click\", (e) => {\n handlePillEvent(singlePill)\n e.preventDefault()\n })\n )\n}\n","import { getDimensionFor, getLeftOrTop } from \"./direction-helpers\"\n\nimport { nullifyTransforms } from \"./helpers\"\n\nconst moveToIndexFor = (flexyInstance, cb) => {\n let fromIndex = [...flexyInstance.sliderContainer.children].indexOf(\n [...flexyInstance.sliderContainer.children].reduce(\n (leftmostEl, currentEl) => {\n let left = getLeftOrTop(\n nullifyTransforms(\n leftmostEl,\n flexyInstance.options.nullifyTransformEl\n ),\n flexyInstance\n )\n\n let currentLeft = getLeftOrTop(\n nullifyTransforms(\n currentEl,\n flexyInstance.options.nullifyTransformEl\n ),\n flexyInstance\n )\n\n return Math.abs(\n currentLeft -\n getLeftOrTop(\n nullifyTransforms(\n flexyInstance.sliderContainer,\n flexyInstance.options.nullifyTransformEl\n ),\n flexyInstance\n )\n ) <\n Math.abs(\n left -\n getLeftOrTop(\n nullifyTransforms(\n flexyInstance.sliderContainer,\n flexyInstance.options.nullifyTransformEl\n ),\n flexyInstance\n )\n )\n ? currentEl\n : leftmostEl\n },\n {\n getBoundingClientRect: () => ({\n left: 100000000000,\n top: 100000000000,\n }),\n }\n )\n )\n\n let toIndex = cb(fromIndex)\n\n if (toIndex < 0) {\n toIndex = flexyInstance.sliderContainer.children.length - 1\n }\n\n if (toIndex > flexyInstance.sliderContainer.children.length - 1) {\n toIndex = 0\n }\n\n let amountToTheLeft = Math.abs(toIndex - fromIndex)\n let amountToTheRight =\n Math.min(fromIndex, toIndex) +\n (flexyInstance.sliderContainer.children.length -\n Math.max(fromIndex, toIndex))\n\n let p =\n Math.min(amountToTheLeft, amountToTheRight) *\n (amountToTheRight > amountToTheLeft\n ? fromIndex > toIndex\n ? 1\n : -1\n : fromIndex > toIndex\n ? -1\n : 1)\n\n let resultTarget =\n (Math.round(\n (flexyInstance.state.positionX * 100) /\n getDimensionFor(\n nullifyTransforms(\n flexyInstance.sliderContainer.firstElementChild,\n flexyInstance.options.nullifyTransformEl\n ),\n flexyInstance\n ) /\n 100\n ) *\n 100 *\n getDimensionFor(\n nullifyTransforms(\n flexyInstance.sliderContainer.firstElementChild,\n flexyInstance.options.nullifyTransformEl\n ),\n flexyInstance\n )) /\n 100 +\n getDimensionFor(\n nullifyTransforms(\n flexyInstance.sliderContainer.firstElementChild,\n flexyInstance.options.nullifyTransformEl\n ),\n flexyInstance\n ) *\n p\n\n flexyInstance.state = {\n ...flexyInstance.state,\n positionTarget: resultTarget,\n }\n}\n\nexport const mountArrowsListeners = (flexyInstance) => {\n flexyInstance.options.leftArrow &&\n flexyInstance.options.leftArrow.addEventListener(\"click\", (e) => {\n e.preventDefault()\n moveToIndexFor(flexyInstance, (fromIndex) => fromIndex - 1)\n })\n\n flexyInstance.options.rightArrow &&\n flexyInstance.options.rightArrow.addEventListener(\"click\", (e) => {\n e.preventDefault()\n moveToIndexFor(flexyInstance, (fromIndex) => fromIndex + 1)\n })\n}\n","export const adjustContainerHeightFor = (flexyInstance) => {\n if (!flexyInstance.options.adjustHeight) return\n\n let currentChild =\n flexyInstance.sliderContainer.children[\n flexyInstance.state.previousCurrentIndex\n ]\n\n flexyInstance.sliderContainer.style.setProperty(\n \"--sliderHeight\",\n `${\n (currentChild.firstElementChild || currentChild).getBoundingClientRect()\n .height\n }px`\n )\n}\n","import { fetchWrapAroundStatusFor, nullifyTransforms } from \"./helpers\"\n\n// import { handleScaleRotateEffectFor } from \"./rotate-effect\"\nimport { renderPillsFor, mountPillsListeners } from \"./pills\"\nimport { mountArrowsListeners } from \"./arrows\"\nimport { handleHoverStateFor } from \"./hover-state\"\nexport { adjustContainerHeightFor } from \"./dynamic-height\"\nimport { adjustContainerHeightFor } from \"./dynamic-height\"\n\nimport { getDimensionFor } from \"./direction-helpers\"\n\nimport { handleDragFor } from \"./drag\"\n\nconst clamp = (n, min, max) => Math.min(Math.max(n, min), max)\n\nconst DESTROYED = \"__DESTROYED__\"\n\nexport class Flexy {\n getDefaultState = () => ({\n elementsOnBehind: 1,\n\n positionSnapshot: 0,\n positionX: 0,\n\n /**\n * The thing the algorithm tends to move the slides to\n */\n positionTarget: 0,\n\n velocity: 0,\n\n containerInnerWidth: this.sliderContainer\n ? getDimensionFor(\n nullifyTransforms(this.sliderContainer, this.nullifyTransformEl),\n this\n )\n : 0,\n\n slideWidth: this.sliderContainer\n ? getDimensionFor(\n nullifyTransforms(\n this.sliderContainer.firstElementChild,\n this.sliderContainer\n ),\n this\n )\n : 0,\n\n previousCurrentIndex: 0,\n\n startX: 0,\n endX: 0,\n mouseDown: false,\n\n lastTimeAnimated: Infinity,\n })\n\n state = this.getDefaultState()\n\n options = {\n onDragStart: () => {},\n autoplay: false,\n scaleRotateEffect: false,\n pillsContainerSelector: null,\n pillsFlexyInstance: null,\n flexyAttributeEl: null,\n\n initialDragEvent: null,\n\n adjustHeight: false,\n\n // container | viewport\n wrapAroundMode: \"container\",\n\n // horizontal | vertical\n orientation: \"horizontal\",\n\n nullifyTransformEl: null,\n\n elementsThatDoNotStartDrag: [],\n\n hasDragAndDrop: true,\n }\n\n sliderContainer = null\n\n constructor(sliderContainer, options = {}) {\n this.options = {\n ...this.options,\n flexyAttributeEl: sliderContainer,\n nullifyTransformEl: sliderContainer,\n ...options,\n }\n\n this.sliderContainer = sliderContainer\n\n mountPillsListeners(this)\n mountArrowsListeners(this)\n handleHoverStateFor(this)\n\n handleDragFor(\n this,\n () => this.state,\n (newState) => (this.state = newState)\n )\n ;[...this.sliderContainer.children].map((singleSlide) =>\n singleSlide.addEventListener(\n \"click\",\n (e) =>\n Math.abs(this.state.startX - this.state.endX) > 3 &&\n e.preventDefault()\n )\n )\n\n let elementsOnBehind = 1\n let firstItem = 1\n\n let flexyAttributeElStyle = getComputedStyle(this.options.flexyAttributeEl)\n\n if (flexyAttributeElStyle.getPropertyValue(\"--current-item\")) {\n firstItem = parseInt(\n flexyAttributeElStyle.getPropertyValue(\"--current-item\")\n )\n\n elementsOnBehind = this.sliderContainer.children.length\n }\n\n this.state = {\n ...this.state,\n elementsOnBehind,\n positionX:\n getDimensionFor(\n nullifyTransforms(\n this.sliderContainer.firstElementChild,\n this.options.nullifyTransformEl\n ),\n this\n ) *\n firstItem *\n -1,\n positionTarget:\n getDimensionFor(\n nullifyTransforms(\n this.sliderContainer.firstElementChild,\n this.options.nullifyTransformEl\n ),\n this\n ) *\n firstItem *\n -1,\n containerInnerWidth: getDimensionFor(\n nullifyTransforms(this.sliderContainer, this.nullifyTransformEl),\n this\n ),\n slideWidth: getDimensionFor(\n nullifyTransforms(\n this.sliderContainer.firstElementChild,\n this.options.nullifyTransformEl\n ),\n this\n ),\n }\n\n this.refreshActivation()\n requestAnimationFrame(() => this.drawLoop(true))\n adjustContainerHeightFor(this)\n }\n\n destroy() {\n this.state = {\n ...this.state,\n sliderActivated: DESTROYED,\n }\n }\n\n refreshActivation() {\n let totalSlidesWidth =\n getDimensionFor(\n nullifyTransforms(\n this.sliderContainer.children[0],\n this.options.nullifyTransformEl\n ) || {\n width: 0,\n height: 0,\n },\n this\n ) * this.sliderContainer.children.length\n\n this.state = {\n ...this.state,\n sliderActivated: this.sliderContainer\n ? getComputedStyle(this.sliderContainer, \":after\").content.indexOf(\n \"no-flexy\"\n ) === -1 &&\n totalSlidesWidth >\n getDimensionFor(\n nullifyTransforms(\n this.options.orientation === \"vertical\"\n ? this.sliderContainer.parentNode\n : this.sliderContainer,\n this.options.nullifyTransformEl\n ),\n this\n ) +\n 10\n : false,\n\n /*\n &&\n totalSlidesWidth > window.innerWidth\n */\n }\n\n if (this.state.sliderActivated) {\n this.options.flexyAttributeEl.dataset.flexy = \"\"\n } else {\n this.options.flexyAttributeEl.removeAttribute(\"data-flexy\")\n ;[...this.sliderContainer.children].map((el) =>\n el.removeAttribute(\"style\")\n )\n }\n }\n\n drawLoop = (fallThroughTheFirstDraw = false) => {\n let oldPositionX = fallThroughTheFirstDraw ? Infinity : this.state.positionX\n\n // TODO: maybe do a smarter destroy\n if (this.state.sliderActivated === DESTROYED) {\n return\n }\n\n if (\n this.state.containerInnerWidth !==\n nullifyTransforms(this.sliderContainer, this.nullifyTransformEl).width\n ) {\n this.refreshActivation()\n }\n\n this.state = {\n ...this.state,\n ...(this.state.sliderActivated\n ? ((t, c) => c(t))(\n this.state.velocity +\n /**\n * Apply different forces based on the conditions\n */\n (this.state.mouseDown\n ? this.state.positionSnapshot +\n (this.state.endX - this.state.startX) -\n this.state.positionX -\n this.state.velocity\n : (this.state.positionTarget - this.state.positionX) * 0.02),\n\n (velocity) => ({\n velocity: velocity * 0.72,\n positionX: this.state.positionX + velocity,\n })\n )\n : {}),\n ...(this.state.sliderActivated &&\n Math.abs(\n this.state.containerInnerWidth -\n getDimensionFor(\n nullifyTransforms(this.sliderContainer, this.nullifyTransformEl),\n this\n )\n ) > 1\n ? {\n positionX: Math.round(\n (getDimensionFor(\n nullifyTransforms(\n this.sliderContainer.firstElementChild,\n this.options.nullifyTransformEl\n ),\n this\n ) *\n (Math.round(this.state.positionX / this.state.slideWidth) *\n 100)) /\n 100\n ),\n positionTarget: Math.round(\n (getDimensionFor(\n nullifyTransforms(\n this.sliderContainer.firstElementChild,\n this.options.nullifyTransformEl\n ),\n this\n ) *\n (Math.round(this.state.positionX / this.state.slideWidth) *\n 100)) /\n 100\n ),\n }\n : {}),\n scrollPosition: {\n x: window.pageXOffset,\n y: window.pageYOffset,\n },\n containerInnerWidth: getDimensionFor(\n nullifyTransforms(this.sliderContainer, this.nullifyTransformEl),\n this\n ),\n slideWidth: getDimensionFor(\n nullifyTransforms(\n this.sliderContainer.firstElementChild,\n this.options.nullifyTransformEl\n ),\n this\n ),\n }\n\n if (\n (oldPositionX !== this.state.positionX ||\n Math.abs(this.state.positionX - this.state.positionTarget) > 0.1) &&\n !fallThroughTheFirstDraw\n ) {\n if (this.state.sliderActivated) {\n let { relativeDelta, elementsOnBehind } = fetchWrapAroundStatusFor(\n this,\n this.state.elementsOnBehind,\n this.state.mouseDown\n ? this.state.endX <= this.state.startX\n ? \"right\"\n : \"left\"\n : this.state.positionX >= this.state.positionTarget\n ? \"right\"\n : \"left\",\n\n this.options.wrapAroundMode\n )\n\n this.state = {\n ...this.state,\n elementsOnBehind,\n positionTarget: this.state.positionTarget + relativeDelta,\n positionX: this.state.positionX + relativeDelta,\n positionSnapshot: this.state.positionSnapshot + relativeDelta,\n }\n }\n }\n\n if (this.options.autoplay && this.state.sliderActivated) {\n if (Math.abs(this.state.positionX - this.state.positionTarget) < 0.5) {\n if (\n new Date().getTime() / 1000 - this.state.lastTimeAnimated / 1000 >\n (parseFloat(this.options.autoplay, 10)\n ? parseFloat(this.options.autoplay, 10)\n : 3)\n ) {\n this.state = {\n ...this.state,\n positionTarget:\n this.state.positionX -\n getDimensionFor(\n nullifyTransforms(\n this.sliderContainer.firstElementChild,\n this.options.nullifyTransformEl\n ),\n this\n ),\n }\n }\n }\n }\n\n if (!this.state.mouseDown && this.state.sliderActivated) {\n if (Math.abs(this.state.positionX - this.state.positionTarget) < 0.2) {\n this.state = {\n ...this.state,\n positionX: this.state.positionTarget,\n velocity: 0,\n }\n }\n\n let oldIndex = this.state.previousCurrentIndex\n\n this.state = {\n ...this.state,\n previousCurrentIndex: clamp(\n this.state.elementsOnBehind >\n Math.round(\n Math.abs(this.state.positionTarget) /\n getDimensionFor(\n nullifyTransforms(\n this.sliderContainer.firstElementChild,\n this.options.nullifyTransformEl\n ),\n this\n )\n )\n ? Math.round(\n Math.abs(this.state.positionTarget) /\n getDimensionFor(\n nullifyTransforms(\n this.sliderContainer.firstElementChild,\n this.options.nullifyTransformEl\n ),\n this\n )\n ) +\n (this.sliderContainer.children.length -\n this.state.elementsOnBehind)\n : Math.abs(\n Math.round(\n Math.abs(this.state.positionTarget) /\n getDimensionFor(\n nullifyTransforms(\n this.sliderContainer.firstElementChild,\n this.options.nullifyTransformEl\n ),\n this\n )\n ) - this.state.elementsOnBehind\n ),\n 0,\n this.sliderContainer.children.length - 1\n ),\n }\n\n if (oldIndex !== this.state.previousCurrentIndex) {\n renderPillsFor(this)\n adjustContainerHeightFor(this)\n ;[...this.sliderContainer.querySelectorAll(\"video\")].map((video) => {\n video.pause()\n })\n ;[...this.sliderContainer.querySelectorAll('iframe[src*=\"youtu\"]')].map(\n (i) => {\n i.contentWindow.postMessage(\n '{\"event\":\"command\",\"func\":\"stopVideo\",\"args\":\"\"}',\n \"*\"\n )\n }\n )\n ;[\n ...this.sliderContainer.querySelectorAll(\n 'iframe:not([src*=\"youtu\"])'\n ),\n ].map((i) => {\n const source = i.src\n i.src = \"\"\n i.src = source\n })\n }\n }\n\n if (this.state.positionX !== oldPositionX && this.state.sliderActivated) {\n this.render()\n\n // handleScaleRotateEffectFor(this)\n\n this.state = {\n ...this.state,\n lastTimeAnimated: new Date().getTime(),\n }\n }\n\n requestAnimationFrame(() => this.drawLoop())\n }\n\n render() {\n ;[...this.sliderContainer.children].map((el) => {\n if (this.options.orientation === \"vertical\") {\n el.style.transform = `translate3d(0, ${this.state.positionX}px, 0)`\n } else {\n el.style.transform = `translate3d(${this.state.positionX}px, 0, 0)`\n }\n })\n\n if (this.state.mouseDown) {\n this.options.flexyAttributeEl.dataset.flexyDragging = \"\"\n } else {\n this.options.flexyAttributeEl.removeAttribute(\"data-flexy-dragging\")\n }\n\n if (this.state.elementsOnBehind > 0) {\n ;[...this.sliderContainer.children]\n .slice(0, this.state.elementsOnBehind * -1)\n .map((el) => (el.style.order = 2))\n ;[...this.sliderContainer.children]\n .slice(this.state.elementsOnBehind * -1)\n .map((el) => (el.style.order = 1))\n } else {\n ;[...this.sliderContainer.children].map((el) => (el.style.order = 1))\n }\n }\n}\n","export const handleHoverStateFor = (flexyInstance) => {\n const sliderContainer = flexyInstance.sliderContainer\n\n if (!flexyInstance.options.autoplay) return\n\n sliderContainer.addEventListener(\n \"mouseenter\",\n () =>\n (flexyInstance.options = {\n ...flexyInstance.options,\n autoplay: false,\n _autoplay: flexyInstance.options.autoplay,\n })\n )\n\n sliderContainer.addEventListener(\"mouseleave\", () => {\n flexyInstance.options = {\n ...flexyInstance.options,\n autoplay: flexyInstance.options._autoplay,\n _autoplay: false,\n }\n\n flexyInstance.state = {\n ...flexyInstance.state,\n lastTimeAnimated: new Date().getTime(),\n }\n })\n}\n","import { nullifyTransforms } from \"./helpers\"\n\nexport const handleDragFor = (flexyInstance, getState, setState) => {\n if (!flexyInstance.options.hasDragAndDrop) {\n return\n }\n\n const sliderContainer = flexyInstance.sliderContainer\n\n const handleDown = (e) => {\n if (!getState().sliderActivated) return\n\n if (\n flexyInstance.options.elementsThatDoNotStartDrag.reduce(\n (shouldSkipDrag, selector) =>\n shouldSkipDrag\n ? true\n : e.target.matches(selector) || e.target.closest(selector),\n\n false\n )\n ) {\n return\n }\n\n // e.preventDefault()\n e.stopPropagation()\n\n if (e.type !== \"touchstart\") {\n e.preventDefault()\n }\n\n flexyInstance.options.onDragStart(e)\n\n setState({\n ...getState(),\n startX: e.pageX || e.touches[0].pageX,\n endX: e.pageX || e.touches[0].pageX,\n mouseDown: true,\n downScrollPosition: {\n x: window.pageXOffset,\n y: window.pageYOffset,\n },\n positionSnapshot: getState().positionX,\n })\n\n const handleMouseUp = (e) => {\n if (!getState().mouseDown) return\n\n e.stopPropagation()\n\n setState({\n ...getState(),\n mouseDown: false,\n })\n\n document.removeEventListener(\"mousemove\", handleMouseMove)\n document.removeEventListener(\"mouseup\", handleMouseUp)\n\n document.removeEventListener(\"touchmove\", handleMouseMove)\n document.removeEventListener(\"touchend\", handleMouseUp)\n\n let state = getState()\n\n let fromPercentage =\n (state.positionX * 100) /\n nullifyTransforms(\n sliderContainer.firstElementChild,\n flexyInstance.options.nullifyTransformEl\n ).width\n\n setState({\n ...getState(),\n positionTarget:\n (nullifyTransforms(\n sliderContainer.firstElementChild,\n flexyInstance.options.nullifyTransformEl\n ).width *\n (Math.abs(state.endX - state.startX) > 50\n ? state.endX - state.startX < 0\n ? Math.floor(fromPercentage / 100) * 100\n : Math.ceil(fromPercentage / 100) * 100\n : Math.round(fromPercentage / 100) * 100)) /\n 100,\n })\n }\n\n const handleMouseMove = (e) => {\n let { pageX: endX } = e\n\n if (!endX) {\n endX = e.touches[0].pageX\n }\n\n if (!getState().mouseDown) return\n\n let state = getState()\n\n let { startX, positionSnapshot } = state\n\n setState({\n ...state,\n endX,\n })\n\n if (\n Math.abs(state.downScrollPosition.x - state.scrollPosition.x) > 3 ||\n Math.abs(state.downScrollPosition.y - state.scrollPosition.y) > 5\n ) {\n handleMouseUp(e, false)\n }\n }\n\n document.addEventListener(\"mousemove\", handleMouseMove)\n document.addEventListener(\"mouseup\", handleMouseUp)\n\n document.addEventListener(\"touchmove\", handleMouseMove)\n document.addEventListener(\"touchend\", handleMouseUp)\n }\n\n sliderContainer.addEventListener(\"mousedown\", handleDown)\n sliderContainer.addEventListener(\"touchstart\", handleDown)\n\n if (\n flexyInstance.options.initialDragEvent &&\n !flexyInstance.options.initialDragEvent.target.closest(\n \".flexy-pills > * > *\"\n )\n ) {\n requestAnimationFrame(() => {\n handleDown(flexyInstance.options.initialDragEvent)\n })\n }\n}\n","import $ from 'jquery'\nimport { Flexy, adjustContainerHeightFor } from 'flexy'\nimport ctEvents from 'ct-events'\nimport { getCurrentScreen } from '../frontend/helpers/current-screen'\n\nexport const mount = (sliderEl, args) => {\n\t// sliderEl = sliderEl.parentNode\n\n\tif (sliderEl.flexy) {\n\t\treturn\n\t}\n\n\tlet maybePillsSlider = sliderEl.querySelector('.flexy-pills [data-flexy]')\n\n\tconst inst = new Flexy(sliderEl.querySelector('.flexy-items'), {\n\t\tflexyAttributeEl: sliderEl,\n\t\telementsThatDoNotStartDrag: ['.twentytwenty-handle'],\n\t\tadjustHeight: !!sliderEl.querySelector('.flexy-items').dataset.height,\n\n\t\t...(args.event ? { initialDragEvent: args.event } : {}),\n\n\t\tautoplay:\n\t\t\tObject.keys(sliderEl.dataset).indexOf('autoplay') > -1 &&\n\t\t\tparseInt(sliderEl.dataset.autoplay, 10)\n\t\t\t\t? sliderEl.dataset.autoplay\n\t\t\t\t: false,\n\n\t\t...(sliderEl.querySelector('.flexy-pills')\n\t\t\t? {\n\t\t\t\t\tpillsContainerSelector: sliderEl.querySelector(\n\t\t\t\t\t\t'.flexy-pills'\n\t\t\t\t\t).firstElementChild,\n\t\t\t }\n\t\t\t: {}),\n\t\tleftArrow: sliderEl.querySelector('.flexy .flexy-arrow-prev'),\n\t\trightArrow: sliderEl.querySelector('.flexy .flexy-arrow-next'),\n\t\tscaleRotateEffect: false,\n\n\t\tonDragStart: (e) => {\n\t\t\tif (!e.target.closest('.flexy-items')) {\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tArray.from(\n\t\t\t\te.target.closest('.flexy-items').querySelectorAll('.zoomImg')\n\t\t\t).map((img) => {\n\t\t\t\t$(img).stop().fadeTo(120, 0)\n\t\t\t})\n\t\t},\n\n\t\t// viewport | container\n\t\twrapAroundMode:\n\t\t\tsliderEl.dataset.wrap === 'viewport' ? 'viewport' : 'container',\n\n\t\t...(maybePillsSlider\n\t\t\t? {\n\t\t\t\t\tpillsFlexyInstance: maybePillsSlider,\n\t\t\t }\n\t\t\t: {}),\n\t})\n\n\tif (maybePillsSlider) {\n\t\tconst inst = new Flexy(maybePillsSlider, {\n\t\t\telementsThatDoNotStartDrag: ['.twentytwenty-handle'],\n\t\t\t// viewport | container\n\t\t\twrapAroundMode:\n\t\t\t\tmaybePillsSlider.dataset.wrap === 'viewport'\n\t\t\t\t\t? 'viewport'\n\t\t\t\t\t: 'container',\n\n\t\t\tleftArrow: maybePillsSlider.parentNode.querySelector(\n\t\t\t\t'.flexy-arrow-prev'\n\t\t\t),\n\t\t\trightArrow: maybePillsSlider.parentNode.querySelector(\n\t\t\t\t'.flexy-arrow-next'\n\t\t\t),\n\t\t\thasDragAndDrop: false,\n\n\t\t\t...(maybePillsSlider.closest('.thumbs-left') &&\n\t\t\tgetCurrentScreen({ withTablet: true }) !== 'mobile'\n\t\t\t\t? {\n\t\t\t\t\t\torientation: 'vertical',\n\t\t\t\t }\n\t\t\t\t: {}),\n\t\t})\n\n\t\tmaybePillsSlider.flexy = inst\n\t}\n\n\tsliderEl.flexy = inst\n}\n\nctEvents.on('ct:flexy:update-height', () => {\n\t;[...document.querySelectorAll('.flexy-container')].map((el) => {\n\t\tif (!el.flexy) {\n\t\t\treturn\n\t\t}\n\n\t\tadjustContainerHeightFor(el.flexy)\n\t})\n})\n"],"names":["getRightOrBottom","rect","flexyInstance","options","orientation","top","height","right","getLeftOrTop","left","getDimensionFor","width","fetchWrapAroundStatusFor","elementsOnBehind","theSideWeAreMovingOnto","wrapAroundMode","sliderContainer","relativeDelta","leftmostOffset","children","reduce","leftmostEl","currentEl","nullifyTransforms","nullifyTransformEl","getBoundingClientRect","bottom","firstElementChild","length","rightmostOffset","rightmostEl","window","innerWidth","el","elementToLookAt","transformArr","getComputedStyle","transform","split","slice","map","v","parseFloat","t","det","renderPillsFor","pillsContainerSelector","querySelector","classList","remove","state","previousCurrentIndex","add","pillsFlexyInstance","localFlexyInstance","flexy","allPills","fromIndex","indexOf","currentLeft","Math","abs","toIndex","perPage","round","amountToTheLeft","amountToTheRight","min","max","p","resultTarget","positionX","positionTarget","moveToIndexFor","cb","adjustContainerHeightFor","adjustHeight","currentChild","style","setProperty","clamp","n","DESTROYED","Flexy","constructor","_defineProperty","positionSnapshot","velocity","containerInnerWidth","slideWidth","startX","endX","mouseDown","lastTimeAnimated","Infinity","this","getDefaultState","onDragStart","autoplay","scaleRotateEffect","flexyAttributeEl","initialDragEvent","elementsThatDoNotStartDrag","hasDragAndDrop","fallThroughTheFirstDraw","oldPositionX","sliderActivated","refreshActivation","scrollPosition","x","pageXOffset","y","pageYOffset","Date","getTime","oldIndex","querySelectorAll","video","pause","i","contentWindow","postMessage","source","src","render","requestAnimationFrame","drawLoop","handlePillEvent","singlePill","target","closest","setTimeout","addEventListener","e","preventDefault","mountPillsListeners","leftArrow","rightArrow","_autoplay","handleHoverStateFor","getState","setState","handleDown","shouldSkipDrag","selector","matches","stopPropagation","type","pageX","touches","downScrollPosition","handleMouseUp","document","removeEventListener","handleMouseMove","fromPercentage","floor","ceil","handleDragFor","newState","singleSlide","firstItem","flexyAttributeElStyle","getPropertyValue","parseInt","destroy","totalSlidesWidth","content","parentNode","dataset","removeAttribute","flexyDragging","order","mount","sliderEl","args","maybePillsSlider","inst","event","Object","keys","Array","from","img","$","stop","fadeTo","wrap","getCurrentScreen","withTablet","ctEvents"],"sourceRoot":""}