{"version":3,"file":"js/browse-event-bundle-9d7e161276d40d3c3f8c.js","mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAA0B;AACc;AACuB;AAC5B;AACwB;AACsB;AAQjF,MAAM,oBAAoB,eAAe,CAAmB;AAAA,EAA5D;AAAA;AACE,uBAAc,MACZ,KAAK,MAAM,QAAQ,KAAK,MAAM,KAAK,SAC/B,KAAK,MAAM,KAAM,OAAO,SACxB;AAAA;AAAA,EAYN,SAAS;AACP,WACE,oCAAC,SAAI,WAAU,qBACb,oCAAC,OAAE,MAAK,2BAA0B,QAAO,YACvC,oCAAC,SAAI,WAAU,kBAAiB,CAClC,GAEA,oCAAC,SAAI,WAAU,oBACb,oCAAC,UAAK,WAAU,iBACd,oCAAC,gBAAS,IAAC,UAAS,SAAQ,OAAO,KAAK,YAAY,GAAG,CACzD,GACA;AAAA,MAAC;AAAA;AAAA,QACC,MAAM,yCAAe;AAAf,UACJ;AAAA,UACA,KAAK,QAAQ;AAAA,UACb,KAAK,QAAQ;AAAA,QACf;AAAA,QACA,QAAQ,KAAK,QAAQ,UAAU,WAAW;AAAA,QAC1C,WAAU;AAAA;AAAA,MAEV;AAAA,QAAC,sCAAgB;AAAhB;AAAA,UACC,OAAO,wCAAyB,CAAC;AAAA,YAC/B,KAAK,QAAQ,kBAAkB;AAAA,UACjC;AAAA;AAAA,MACF;AAAA,MAAG;AAAA,MAAI;AAAA,MAEP,oCAAC,UAAK,WAAU,YAAS,SAAQ,KAAK,YAAY,GAAE,GAAC;AAAA,IACvD,CACF,CACF;AAAA,EAEJ;AACF;AAhDM,YAMG,eAAe;AAAA,EACpB,QAAQ,6BAAgB;AAAN,EAClB,SAAS,2BAAc;AAAJ,EACnB,mBAAmB,0BAAe,CAAC;AAAA,IACjC,cAAc,6BAAgB;AAAN,IACxB,gBAAgB,6BAAgB;AAAN,IAC1B,aAAa,6BAAgB;AAAN,EACzB,CAAC;AACH;AAoCF,2DAAe,WAAW,EAAC;;;;;;;;;;;;;;;AC/DD;AAC1B,MAAM,WAAW,mBAAO,CAAC,KAAoB;AAC7C,MAAM,eAAe,mBAAO,CAAC,KAAwB;AAErD,MAAM,cAAc,CAAC;AAAA,EACnB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,MAWM;AACJ,QAAM,oBAAoB;AAAA;AAAA,IAExB,EAAE,uCAAuC,EAAE,QAAQ;AAAA;AAErD,QAAM,eAAe,CAAC,QACpB,EAAE,uCAAuC,EACtC,KAAK,uBAAuB,GAAG,GAAG,EAAE,EAEpC,QAAQ,MAAM;AACnB,SACE,oCAAC,SAAI,WAAU,eACb,oCAAC,SAAI,WAAU,qBAAkB,6BAA2B,GAC5D,oCAAC,SAAI,WAAU,wBACZ,gBACC,oCAAC,UAAK,WAAU,2BACd,oCAAC,WAAM,SAAQ,kBAAiB,WAAU,0BACxC;AAAA,IAAC;AAAA;AAAA,MACC,IAAG;AAAA,MACH,MAAK;AAAA,MACL,SAAS;AAAA,MACT,WAAU;AAAA,MACV,UAAU,MAAM,iBAAiB;AAAA;AAAA,EACnC,GACA,oCAAC,UAAK,WAAU,SAAQ,GACxB,oCAAC,UAAK,WAAU,YAAS,oBAAkB,CAC7C,CACF,GAGF;AAAA,IAAC;AAAA;AAAA,MACC,WAAU;AAAA,MACV,SAAS,MAAM,gBAAgB;AAAA,MAC/B,UAAU,cAAc,SAAS;AAAA,MACjC,OAAO,EAAE,OAAO,cAAc,aAAa,GAAG;AAAA;AAAA,IAC/C;AAAA,EAED,GACA,0DACE,oCAAC,SAAI,IAAG,kBACN;AAAA,IAAC;AAAA;AAAA,MACC,WAAU;AAAA,MACV,SAAS,MAAM,aAAa;AAAA,MAC5B,UAAU,cAAc,SAAS;AAAA,MACjC,OAAO,EAAE,aAAa,IAAI,OAAO,aAAa;AAAA,MAC9C,eAAY;AAAA,MACZ,kBAAe;AAAA,MACf,cAAc,MACZ;AAAA,QACE;AAAA,MACF;AAAA,MAEF,cAAc,MAAM,kBAAkB;AAAA;AAAA,IAErC;AAAA,EACH,CACF,GACC,mBACC;AAAA,IAAC;AAAA;AAAA,MACC,WAAU;AAAA,MACV,SAAS,MAAM,cAAc;AAAA,MAC7B,UAAU,cAAc,SAAS;AAAA,MACjC,OAAO,EAAE,OAAO,aAAa;AAAA;AAAA,IAC9B;AAAA,EAED,CAEJ,CAOF,CACF;AAEJ;AAEA,2DAAe,WAAW,EAAC;;;;;ACzGD;AAE1B,MAAM,YAAY,CAAC,UAAyC;AAC1D,SACE;AAAA,IAAC;AAAA;AAAA,MACC,OAAM;AAAA,MACN,QAAO;AAAA,MACP,SAAQ;AAAA,MACR,MAAK;AAAA,MACL,OAAM;AAAA;AAAA,IAEN,oCAAC,YAAO,IAAG,MAAK,IAAG,MAAK,GAAE,QAAO,QAAQ,MAAM,OAAO;AAAA,IACtD;AAAA,MAAC;AAAA;AAAA,QACC,GAAE;AAAA,QACF,MAAM,MAAM;AAAA;AAAA,IACd;AAAA,EACF;AAEJ;AACA,sDAAe,SAAS,EAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;ACnBC;AAC1B,MAAM,WAAW,mBAAO,CAAC,KAAsD;AAQ/E,MAAM,yBAAyB,CAAC;AAAA,EAC9B;AAAA,EACA;AAAA,EACA;AACF,MAAmC;AACjC,SACE,oCAAC,aACC;AAAA,IAAC;AAAA;AAAA,MACC,IAAG;AAAA,MACH,WAAU;AAAA,MACV,MAAK;AAAA;AAAA,IAEL,oCAAC,SAAI,WAAU,wCACb,oCAAC,SAAI,WAAU,kBAAe,QAE5B;AAAA,MAAC;AAAA;AAAA,QACC,MAAK;AAAA,QACL,WAAU;AAAA,QACV,SAAS,MAAM;AACb,qBAAW;AAAA,QACb;AAAA;AAAA,MAEA,oCAAC,cAAK,MAAO;AAAA,IACf,CACF,GACA,oCAAC,SAAI,WAAU,6CACb;AAAA,MAAC;AAAA;AAAA,QACC,WAAU;AAAA,QACV,KAAK;AAAA,QACL,KAAI;AAAA;AAAA,IACN,GACA,oCAAC,YAAG,oCAAkC,CACxC,GACA,oCAAC,SAAI,WAAU,qBACZ,gBAAgB,WACf,oCAAC,WAAE,yEAGH,IAEA,oCAAC,WAAE,yGAGH,CAEJ,GACA,oCAAC,SAAI,WAAU,gDACb;AAAA,MAAC;AAAA;AAAA,QACC,WAAU;AAAA,QACV,OAAO,EAAE,iBAAiB,WAAW,OAAO,QAAQ;AAAA,QACpD,SAAS,MAAM;AACb,qBAAW;AAAA,QACb;AAAA;AAAA,MACD;AAAA,IAED,GACA;AAAA,MAAC;AAAA;AAAA,QACC,WAAU;AAAA,QACV,OAAO,EAAE,SAAS,aAAa,YAAY,OAAO;AAAA,QAClD,SAAS,MAAY;AACnB,gBAAM,UAAU;AAChB,qBAAW;AAAA,QACb;AAAA;AAAA,MACD;AAAA,IAED,CACF,CACF;AAAA,EACF,GACA,oCAAC,SAAI,WAAU,0BAAyB,CAC1C;AAEJ;AAEA,wEAAe,sBAAsB,EAAC;;;ACnFZ;AAE1B,MAAM,UAAU,CAAC,EAAE,MAAM,MAAyB;AAChD,SACE;AAAA,IAAC;AAAA;AAAA,MACC,OAAM;AAAA,MACN,QAAO;AAAA,MACP,SAAQ;AAAA,MACR,MAAK;AAAA,MACL,OAAM;AAAA;AAAA,IAEN,oCAAC,OAAE,UAAS,wBACV;AAAA,MAAC;AAAA;AAAA,QACC,UAAS;AAAA,QACT,UAAS;AAAA,QACT,GAAE;AAAA,QACF,MAAM;AAAA;AAAA,IACR,GACA;AAAA,MAAC;AAAA;AAAA,QACC,GAAE;AAAA,QACF,MAAM;AAAA;AAAA,IACR,GACA;AAAA,MAAC;AAAA;AAAA,QACC,GAAE;AAAA,QACF,MAAM;AAAA;AAAA,IACR,CACF;AAAA,IACA,oCAAC,cACC,oCAAC,cAAS,IAAG,kBACX;AAAA,MAAC;AAAA;AAAA,QACC,OAAM;AAAA,QACN,QAAO;AAAA,QACP,MAAK;AAAA,QACL,WAAU;AAAA;AAAA,IACZ,CACF,CACF;AAAA,EACF;AAEJ;AACA,4CAAe,OAAO,EAAC;;;ACxCG;AAE1B,MAAM,YAAY,CAAC,EAAE,MAAM,MAAyB;AAClD,SACE;AAAA,IAAC;AAAA;AAAA,MACC,OAAM;AAAA,MACN,QAAO;AAAA,MACP,SAAQ;AAAA,MACR,MAAK;AAAA,MACL,OAAM;AAAA;AAAA,IAEN;AAAA,MAAC;AAAA;AAAA,QACC,GAAE;AAAA,QACF,MAAM;AAAA;AAAA,IACR;AAAA,IACA;AAAA,MAAC;AAAA;AAAA,QACC,GAAE;AAAA,QACF,MAAM;AAAA;AAAA,IACR;AAAA,EACF;AAEJ;AACA,sDAAe,SAAS,EAAC;;;ACtBC;AACc;AACI;AAS5C,MAAM,yBAAgE,CAAC;AAAA,EACrE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,MAAM;AACJ,SAAO,YACL,oCAAC,SAAI,WAAU,mBACZ,KACD,oCAAC,SAAI,WAAU,2BACb,oCAAC,iBAAS,IAAC,OAAO,SAAS,GAC3B,oCAAC,SAAI,WAAU,uBACb,oCAAC,UAAK,WAAU,WACb,oBAAoB,oBAAoB,iBAC3C,GACA;AAAA,IAAC;AAAA;AAAA,MACC,WAAU;AAAA,MACV,MAAM,UAAU,YAAY;AAAA;AAAA,IAE3B;AAAA,EACH,CACF,CACF,GACA;AAAA,IAAC;AAAA;AAAA,MACC,WAAU;AAAA,MACV,IAAG;AAAA,MACH,SAAS,OACP,UAAU,UAAU,UAAU,GAAG,YAAY,EAAE;AAAA,MAC/C,OAAO,QAAQ,QAAQ;AAAA;AAAA,IAGzB,oCAAC,OAAO,IAAC,OAAO,SAAS;AAAA,EAC3B,CACF,IACE;AACN;AAEA,sEAAe,sBAAsB,EAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AChDG;AACX;AACP;AACM;AACO;AACU;AACN;AAC0B;AACpB;AACnB;AAMW;AACa;AAChB;AACyB;AAED;AACnB;AAE0B;AACtB;AACI;AACQ;AACmB;AACb;AACd;AAC2B;AACf;AAC5D,MAAM,OAAO,mBAAO,CAAC,IAA8B;AAsHpC,MAAM,oBAAoB,eAAS,CAGhD;AAAA,EA8DA,YAAY,OAAyB;AACnC,UAAM,KAAK;AAkDb,8BAAqB,MAAM,KAAK,SAAS,EAAE,aAAa,MAAM,CAAC;AAC/D,+BAAsB,CAAC,QACrB,KAAK,SAAS;AAAA,MACZ,iBAAiB;AAAA,IACnB,CAAC;AAEH,qCAA4B,MAAM;AAChC,UAAI,CAAC,KAAK,MAAM,gBAAiB,QAAO;AACxC,UAAI,CAAC,KAAK,MAAM,MAAM,iCAAkC,QAAO;AAE/D,UAAI,KAAK,kBAAkB,GAAG;AAC5B,YAAI,KAAK,MAAM;AACb,iBACE,KAAK,MAAM,KAAK,cAAc,SAC9B,KAAK,MAAM,MAAM,6BACf,KAAK,MAAM;AAAA,aAEZ;AACH,iBACE,KAAK,MAAM,KAAK,cAAc,SAC9B,KAAK,MAAM,MAAM;AAAA,QAErB;AAAA,MACF;AACA,aACE,KAAK,MAAM,KAAK,cAAc,SAC9B,KAAK,MAAM,gBAAgB;AAAA,IAE/B;AAgEA,uCAA8B,MAC5B,KAAK,MAAM,MAAM,oCAAoC,YACrD,KAAK,MAAM,MAAM,2BACjB,KAAK,MAAM,QACX,KAAK,MAAM,KAAK,OAAO,SAAS;AAElC,sCAA6B,MAAM;AACjC,UAAI,KAAK,MAAM,MAAM,oCAAoC,UAAU;AACjE,YAAI,KAAK,MAAM,gBAAiB,QAAO;AAAA,MACzC;AACA,aAAO;AAAA,IACT;AAEA,qBAAY,CAAC,QAAa;AACxB,WAAK,SAAS;AAAA,QACZ,eAAe;AAAA,MACjB,CAAC;AAAA,IACH;AAEA,kCAAyB,MAAM;AAC7B,WAAK,SAAS;AAAA,QACZ,uBAAuB;AAAA,MACzB,CAAC;AAAA,IACH;AAEA,wBAAe,MAAM,KAAK,SAAS,EAAE,WAAW,MAAM,CAAC;AAEvD,2BAAkB,CAAC,QAAiB,KAAK,SAAS,EAAE,cAAc,IAAI,CAAC;AAEvE,gCAAuB,CAAC,UAAmB;AACzC,WAAK,SAAS,EAAE,mBAAmB,MAAM,CAAC;AAAA,IAC5C;AAEA,2BAAkB,MAAM;AACtB,UAAI,KAAK,MAAM,MAAM,aAAa;AAChC,4BACM;AAAH,UACC,yCAAe;AAAf,YACE,KAAK,MAAM,MAAM;AAAA,YACjB,KAAK,MAAM,OAAO,KAAK,MAAM,KAAK,KAAK;AAAA,UACzC;AAAA,QACF,EACC,KAAK,SAAO;AACX,eAAK,SAAS;AAAA,YACZ,iBAAiB,IAAI,KAAK;AAAA,YAC1B,eAAe,IAAI,KAAK;AAAA,YACxB,qBAAqB,IAAI,KAAK;AAAA,YAC9B,iBAAiB,IAAI,KAAK;AAAA,UAC5B,CAAC;AAAA,QACH,CAAC;AAAA,MACL;AAAA,IACF;AAEA,qCAA4B,MAAM;AAChC,UAAI,KAAK,MAAM,MAAM,aAAa;AAChC,aAAK,gBAAgB;AAAA,MACvB;AAAA,IACF;AAwBA,iDAAwC,CAAC,UACvC,KAAK,MAAM,QACX,KAAK,MAAM,KAAK,8BAChB,KAAK,MAAM,KAAK,8BAA8B,MAAM,MAAM;AAE5D,8BAAqB,MAAM;AACzB,UACE,KAAK,MAAM,QACX,KAAK,MAAM,MAAM,aAAa,KAAK,MAAM,KAAK,YAC9C,KAAK,MAAM,KAAK,OAAO,SAAS,GAChC;AAEA,eAAO;AAAA,UACL,+DAA+D,KAAK,MAAM,MAAM,QAAQ;AAAA,QAC1F;AACA,eAAO;AAAA,MACT;AACA,aAAO;AAAA,IACT;AAEA,sCAA6B,CAAC,UAAiB;AAC7C,UACE,KAAK,sCAAsC,KAAK,KAChD,KAAK,MAAM,QACX,KAAK,MAAM,KAAK,OAAO,SAAS,GAChC;AAEA,eAAO;AAAA,UACL;AAAA,UACA,EAAE,SAAS,KAAK;AAAA,QAClB;AACA,eAAO;AAAA,MACT;AACA,aAAO;AAAA,IACT;AAEA,iCAAwB,MAAM;AAC5B,UACE,KAAK,MAAM,mBACX,KAAK,MAAM,MAAM,OAAO,KAAK,MAAM,gBAAgB,SACnD;AAEA,eAAO;AAAA,UACL;AAAA,QACF;AACA,eAAO;AAAA,MACT;AACA,aAAO;AAAA,IACT;AAEA,sCAA6B,MAAM;AACjC,aACE,KAAK,MAAM,QACX,KAAK,MAAM,KAAK,SAAS,UAAU,KACnC,CAAC,KAAK,MAAM,KAAK,SAAS,SAAS,KAAK,MAAM,MAAM,EAAE,KACtD,KAAK,kBAAkB;AAAA,IAE3B;AAEA,wCAA+B,MAAM;AACnC,aACE,KAAK,MAAM,MAAM,2BACjB,KAAK,MAAM,MAAM,oCAAoC,YACrD,CAAC,KAAK,MAAM;AAAA,IAEhB;AAEA,wBAAe,CACb,eACA,UACA,oBACG;AACH,YAAM,WAAqB,CAAC;AAC5B,eAAS,QAAQ,CAAC,UAAiB;AACjC,iBAAS,KAAK,MAAM,EAAE;AAAA,MACxB,CAAC;AACD,UACE,KAAK,mBAAmB,KACxB,KAAK,2BAA2B,SAAS,CAAC,CAAC,GAC3C;AACA,wBAAgB,KAAK;AACrB;AAAA,MACF;AAEA,UAAI,KAAK,2BAA2B,GAAG;AACrC,wBAAgB,KAAK;AAErB,aAAK,SAAS,EAAE,uBAAuB,KAAK,CAAC;AAC7C;AAAA,MACF,OAAO;AACL,YAAI,KAAK,6BAA6B,GAAG;AACvC,gBAAM,WAAW,MAAM,KAAK,oCAAoC;AAChE,cAAI,UAAU;AACZ,iBAAK,SAAS,EAAE,kBAAkB,SAAS,CAAC,EAAE,CAAC;AAAA,UACjD;AAAA,QACF;AACA,6BACO,CAAC,KAAK,MAAM,eAAe,EAC/B,KAAK;AAAA,UACJ,WAAW;AAAA,UACX;AAAA,UACA,SAAS,KAAK,MAAM,OAAO,KAAK,MAAM,KAAK,KAAK;AAAA,QAClD,CAAC,EACA,KAAK,SAAO;AACX,eAAK;AAAA,YACH;AAAA,cACE,MAAM,IAAI,KAAK;AAAA,YACjB;AAAA,YACA,MAAM;AACJ,iDAAS,CAAC,MAAM,iCAAiC;AAAA,gBAC/C,SAAS,KAAK,MAAM,MAAM;AAAA,gBAC1B,WAAW,KAAK,MAAM,MAAM;AAAA,gBAC5B,QAAQ,IAAI,KAAK,KAAK;AAAA,cACxB,CAAC;AACD,8BAAgB,KAAK;AAErB,qBAAO,QAAQ,iBAAiB,MAAM,EAAE,SAAS,IAAK,CAAC;AACvD,mBAAK,0BAA0B;AAC/B,gBAAE;AAAA,gBACA,yCAAe,CAAC,qBAAqB,KAAK,MAAM,KAAK,EAAE;AAAA,cACzD;AAAA,YACF;AAAA,UACF;AAAA,QACF,CAAC,EACA,MAAM,SAAO;AACZ,iBAAO,CAAC,IAAI,GAAG;AACf,0BAAgB,KAAK;AAAA,QACvB,CAAC;AACH,YAAI,KAAK,sCAAsC,SAAS,CAAC,CAAC,GAAG;AAC3D,eAAK;AAAA,YACH;AAAA,cACE,MAAM,iCACD,KAAK,MAAM,OADV;AAAA,gBAEJ,4BAA4B;AAAA,cAC9B;AAAA,YACF;AAAA,YACA,MAAM,KAAK,0BAA0B;AAAA,UACvC;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAEA,uBAAc,MAAM;AArkBtB;AAskBI,UAAI,KAAK,MAAM,SAAS,KAAM,QAAO;AACrC,eAAO,UAAK,MAAM,KAAK,WAAhB,mBAAwB,WAAU;AAAA,IAC3C;AAEA,+BAAsB,MACpB,aAAa,QAAQ,+BAA+B,IAChD,KAAK;AAAA,MACH,aAAa,QAAQ,+BAA+B;AAAA,IACtD,IACA;AAEN,6BAAoB,MAAM;AACxB,YAAM,EAAE,0BAA0B,cAAc,MAAM,IAAI,KAAK;AAC/D,YAAM,EAAE,YAAY,IAAI,KAAK;AAE7B,YAAM,kBACJ,4BACA,CAAC,eACD,KAAK,YAAY,KACjB,CAAC;AAEH,UAAI,KAAK,kBAAkB,GAAG;AAC5B,eAAO;AAAA,MACT,OAAO;AACL,eACE,mBACA,CAAC,KAAK,oBAAoB,KAC1B,CAAC,MAAM;AAAA,MAEX;AAAA,IACF;AAEA,0BAAiB,MAAM;AACrB,WAAK,0BAA0B;AAC/B,QAAE,UAAU,yCAAe,CAAC,qBAAqB,KAAK,MAAM,KAAK,EAAE,CAAC;AACpE,WAAK,kBAAkB,KAAK,KAAK,oCAAoC;AAAA,IACvE;AAEA,6BAAoB,MAClB,KAAK,MAAM,MAAM,qCAAqC;AAExD,sCAA6B,CAAC,cAAsB;AAClD,yCAAS,CAAC,MAAM,WAAW;AAAA,QACzB,SAAS,KAAK,MAAM,MAAM;AAAA,QAC1B,WAAW,KAAK,MAAM,MAAM;AAAA,QAC5B,QAAQ,KAAK,MAAM,OAAO,KAAK,MAAM,KAAK,KAAK;AAAA,MACjD,CAAC;AAAA,IACH;AAEA,0BAAiB,CAAC,OAAY,kBAAuB;AACnD,UAAI,KAAK,mBAAmB,KAAK,KAAK,2BAA2B,KAAK,GAAG;AACvE;AAAA,MACF;AACA,UAAI,KAAK,2BAA2B,GAAG;AACrC,aAAK,SAAS,EAAE,uBAAuB,KAAK,CAAC;AAC7C;AAAA,MACF,WAAW,KAAK,kBAAkB,GAAG;AACnC,aAAK,SAAS;AAAA,UACZ,mBAAmB;AAAA,UACnB,kBAAkB;AAAA,UAClB,iBAAiB;AAAA,QACnB,CAAC;AAAA,MACH,OAAO;AACL,6BACO,CAAC,KAAK,MAAM,YAAY,EAC5B,KAAK;AAAA,UACJ,UAAU,MAAM;AAAA,UAChB;AAAA,UACA,SAAS,KAAK,MAAM,OAAO,KAAK,MAAM,KAAK,KAAK;AAAA,QAClD,CAAC,EACA,KAAK,SAAO;AACX,eAAK;AAAA,YACH;AAAA,cACE,MAAM,IAAI,KAAK;AAAA,YACjB;AAAA,YACA,MAAM;AACJ,mBAAK,eAAe;AACpB,mBAAK;AAAA,gBACH;AAAA,cACF;AAAA,YACF;AAAA,UACF;AAAA,QACF,CAAC;AACH,YAAI,KAAK,sCAAsC,KAAK,GAAG;AACrD,eAAK;AAAA,YACH;AAAA,cACE,MAAM,iCACD,KAAK,MAAM,OADV;AAAA,gBAEJ,4BAA4B;AAAA,cAC9B;AAAA,YACF;AAAA,YACA,MAAM,KAAK,0BAA0B;AAAA,UACvC;AAAA,QACF;AAEA,SAAC,OAAO,aAAa,CAAC,GAAG,KAAK,EAAE,OAAO,YAAY,CAAC;AACpD,+BAAI,CAAC,MAAM,oBAAoB;AAAA,UAC7B,gBAAgB;AAAA,UAChB,UAAU,MAAM;AAAA,UAChB,UAAU,MAAM,MAAM;AAAA,UACtB,UAAU,KAAK,MAAM,MAAM;AAAA,QAC7B,CAAC;AAAA,MACH;AAAA,IACF;AAEA,+BAAsB,CAAC,UAAe;AACpC,UAAI,yBACF,yBAAU,CAAC,KAAK,MAAM,KAAK,eAAe,MAAM,EAAE,KAClD,qBAAM;AAAJ,QACA,2BAAY,CAAC,KAAK,MAAM,KAAK,QAAQ,KAAK,MAAM,KAAK,aAAa;AAAA,MACpE;AAEF,WAAK,SAAS;AAAA,QACZ,MAAM,iCACD,KAAK,MAAM,OADV;AAAA,UAEJ,QAAQ,wBAAS,CAAC,KAAK,MAAM,KAAK,QAAQ,MAAM,EAAE;AAAA,UAClD,eAAe,uBAAQ;AAAN,YACf,wBAAS,CAAC,KAAK,MAAM,KAAK,eAAe,MAAM,EAAE;AAAA,YACjD,0BAA0B,CAAC;AAAA,UAC7B;AAAA,QACF;AAAA,MACF,CAAC;AAED,gCACS,CAAC,KAAK,MAAM,iBAAiB,EACnC,KAAK,EAAE,UAAU,MAAM,IAAI,SAAS,KAAK,MAAM,KAAK,GAAG,CAAC,EACxD,KAAK,CAAAA,OAAK;AAET,eAAO,QAAQ,qBAAqB,MAAM;AAAA,UACxC,SAAS;AAAA,QACX,CAAC;AACD,aAAK,0BAA0B;AAC/B,UAAE,UAAU,yCAAe,CAAC,qBAAqB,KAAK,MAAM,KAAK,EAAE,CAAC;AAAA,MACtE,CAAC;AAAA,IACL;AAEA,+BAAsB,MAAY;AAChC,UAAI,WAAW,MAAM,0BAAW,CAAC,KAAK,MAAM,YAAY,EAAE,KAAK;AAAA,QAC7D,SAAS,KAAK,MAAM,OAAO,KAAK,MAAM,KAAK,KAAK;AAAA,MAClD,CAAC;AACD,UAAI,SAAS,WAAW,KAAK;AAC3B,aAAK,SAAS;AAAA,UACZ,MAAM,SAAS,KAAK;AAAA,QACtB,CAAC;AACD,UAAE,UAAU,yCAAe,CAAC,qBAAqB,KAAK,MAAM,KAAK,EAAE,CAAC;AAAA,MACtE;AAAA,IACF;AAEA,sCAA6B,MAAM;AACjC,gCACS,CAAC,KAAK,MAAM,YAAY,EAC9B,KAAK;AAAA,QACJ,SAAS,KAAK,MAAM,OAAO,KAAK,MAAM,KAAK,KAAK;AAAA,MAClD,CAAC,EACA,KAAK,CAAC,aAAkB;AACvB,aAAK,SAAS;AAAA,UACZ,MAAM,SAAS,KAAK;AAAA,QACtB,CAAC;AACD,UAAE,UAAU,yCAAe,CAAC,qBAAqB,KAAK,MAAM,KAAK,EAAE,CAAC;AAGpE,eAAO,QAAQ,qCAAqC;AAAA,MACtD,CAAC;AAAA,IACL;AAEA,oCAA2B,MAAY;AACrC,UAAI,KAAK,MAAM,QAAQ,KAAK,MAAM,KAAK,IAAI;AACzC,cAAM,KAAK,oBAAoB;AAAA,MACjC;AACA,2BACO,CAAC,KAAK,MAAM,2BAA2B,EAC3C,KAAK;AAAA,QACJ,SAAS,KAAK,MAAM,OAAO,KAAK,MAAM,KAAK,KAAK;AAAA,QAChD,UAAU,KAAK,MAAM,MAAM;AAAA,MAC7B,CAAC,EACA,KAAK,SAAO;AACX,aAAK,SAAS;AAAA,UACZ,MAAM,kCACD,KAAK,MAAM,OACX,IAAI,KAAK;AAAA,QAEhB,CAAC;AAAA,MACH,CAAC;AAAA,IACL;AAEA,qCAA4B,MAAY;AACtC,YAAM,qBACC,CAAC,KAAK,MAAM,8BAA8B,EAC9C,KAAK;AAAA,QACJ,SAAS,KAAK,MAAM,KAAK;AAAA,QACzB,UAAU,KAAK,MAAM,MAAM;AAAA,MAC7B,CAAC,EACA,KAAK,SAAO;AACX,aAAK,SAAS;AAAA,UACZ,MAAM,kCACD,KAAK,MAAM,OACX,IAAI,KAAK;AAAA,QAEhB,CAAC;AAAA,MACH,CAAC,EACA,MAAM,SAAO,OAAO,CAAC,IAAI,GAAG,CAAC;AAAA,IAClC;AAEA,+CAAsC,CAAC,sBAA8B;AACnE,WAAK;AAAA,QACH;AAAA,UACE,qBAAqB;AAAA,QACvB;AAAA,QACA,MAAM;AACJ,+BACO,CAAC,KAAK,MAAM,wBAAwB,EACxC,KAAK;AAAA,YACJ,qBAAqB;AAAA,UACvB,CAAC,EACA,KAAK,SAAO;AACX,iBAAK,SAAS;AAAA,cACZ,MAAM,IAAI,KAAK;AAAA,cACf,iBAAiB,IAAI,KAAK;AAAA,cAC1B,qBAAqB,IAAI,KAAK,kBAC1B,cACA;AAAA,YACN,CAAC;AAAA,UACH,CAAC;AAAA,QACL;AAAA,MACF;AAAA,IACF;AAEA,+CAAsC,MAAY;AAChD,UAAI,CAAC,KAAK,MAAM,wBAAwB,CAAC,KAAK,MAAM,iBAAiB;AACnE,YAAI;AACF,gBAAM,MAAM,MAAM,qBAAS,CAAC,KAAK,MAAM,wBAAwB,EAAE,KAAK;AAAA,YACpE,OAAO,KAAK,MAAM,eAAe,KAAK,MAAM;AAAA,UAC9C,CAAC;AAED,iBAAO,IAAI,QAAQ,aAAW;AAC5B,iBAAK;AAAA,cACH;AAAA,gBACE,MAAM,IAAI,KAAK;AAAA,gBACf,iBAAiB,IAAI,KAAK;AAAA,cAC5B;AAAA,cACA,MAAM;AACJ,wBAAQ,IAAI;AAAA,cACd;AAAA,YACF;AAAA,UACF,CAAC;AAAA,QACH,SAAS,OAAO;AACd,iBAAO,CAAC,MAAM,iDAAiD,KAAK;AACpE,iBAAO;AAAA,QACT;AAAA,MACF;AACA,aAAO;AAAA,IACT;AAEA,uCAA8B,MAAM;AAClC,gCACS;AAAN,QACC,yCAAe,CAAC,KAAK,MAAM,0BAA0B,KAAK,MAAM,KAAK,EAAE;AAAA,MACzE,EACC,KAAK,SAAO;AACX,aAAK,SAAS;AAAA,UACZ,MAAM,IAAI,KAAK;AAAA,UACf,iBAAiB,IAAI,KAAK;AAAA,UAC1B,qBAAqB;AAAA,QACvB,CAAC;AAAA,MACH,CAAC;AAAA,IACL;AAEA,6BAAoB,MAAM;AAExB,cAAQ,UAAU;AAAA,QAChB,SAAS;AAAA,UACP,SAAS;AAAA,QACX;AAAA,MACF,CAAC;AAED,cAAQ,MAAM,kCAAkC;AAAA,QAC9C,UAAU,KAAK,MAAM;AAAA,MACvB,CAAC;AAED,aAAO;AAAA,IACT;AAEA,iCAAwB,CAAO,qBAA8B;AAE3D,aAAO,QAAQ,wBAAwB;AACvC,YAAM,0BACG;AAAN,QACC,yCAAe,CAAC,KAAK,MAAM,0BAA0B,KAAK,MAAM,KAAK,EAAE;AAAA,MACzE,EACC,KAAK,cAAY;AAChB,aAAK,SAAS;AAAA,UACZ,iBAAiB,CAAC;AAAA,QACpB,CAAC;AACD,YAAI,oBAAoB,KAAK,MAAM,KAAK,OAAO,SAAS,GAAG;AAEzD,eAAK,SAAS,EAAE,gBAAgB,KAAK,CAAC;AAAA,QACxC,WACE,oBACA,CAAC,mCAAS,CAAC,2BAA2B,GACtC;AACA,eAAK,SAAS,EAAE,mBAAmB,KAAK,CAAC;AAAA,QAC3C;AAAA,MACF,CAAC,EACA;AAAA,QAAM;AAAA;AAAA,UAEL,OAAO,QAAQ,sCAAsC;AAAA;AAAA,MACvD;AAAA,IACJ;AAEA,yBAAgB,MAAM,KAAK,SAAS,EAAE,eAAe,CAAC,EAAE,CAAC;AAEzD,sBAAa,CACX,OACA,OACA,WACG;AACH,YAAM,YAAY,CAAC,GAAG,KAAK,MAAM,aAAa;AAC9C,YAAM,cAAc,CAAC,GAAG,MAAM;AAC9B,kBAAY,KAAK,EAAE,aAAa;AAChC,YAAM,YAAY,UAAU,OAAO,OAAK,EAAE,OAAO,MAAM,EAAE;AACzD,UAAI,UAAU,WAAW,GAAG;AAC1B,kBAAU,KAAK,EAAE,IAAI,MAAM,IAAI,QAAQ,MAAM,OAAO,CAAC;AACrD,aAAK,SAAS,EAAE,eAAe,UAAU,CAAC;AAAA,MAC5C,OAAO;AACL,YAAI,YAAY;AAChB,kBAAU,QAAQ,CAAC,GAAGC,WAAU;AAC9B,cAAI,EAAE,OAAO,MAAM,IAAI;AACrB,wBAAYA;AAAA,UACd;AAAA,QACF,CAAC;AACD,oBAAY,KAAK,EAAE,aAAa;AAChC,kBAAU,OAAO,WAAW,CAAC;AAC7B,aAAK,SAAS,EAAE,eAAe,UAAU,CAAC;AAAA,MAC5C;AAAA,IACF;AAEA,4BAAmB,MAAM;AACvB,UAAI,YAAmB,CAAC;AACxB,UAAI,CAAC,KAAK,MAAM,WAAW;AACzB,aAAK,MAAM,cAAc,QAAQ,CAAC,YAAiB;AACjD,kBAAQ,aAAa;AACrB,oBAAU,KAAK,EAAE,IAAI,QAAQ,IAAI,QAAQ,QAAQ,OAAO,CAAC;AAAA,QAC3D,CAAC;AAAA,MACH,OAAO;AACL,aAAK,MAAM,cAAc,QAAQ,CAAC,YAAiB;AACjD,kBAAQ,aAAa;AAAA,QACvB,CAAC;AACD,oBAAY,CAAC;AAAA,MACf;AAEA,WAAK,SAAS;AAAA,QACZ,eAAe;AAAA,QACf,WAAW,CAAC,KAAK,MAAM;AAAA,MACzB,CAAC;AAAA,IACH;AAEA,wBAAe,MAAY;AACzB,YAAM,EAAE,cAAc,IAAI,KAAK;AAC/B,YAAM,aAAa,cAAc,IAAI,UAAQ,KAAK,EAAE;AACpD,UAAI;AACF,cAAM,MAAM,MAAM,EAAE,KAAK;AAAA,UACvB,KAAK,kBAAkB,KAAK,iBAAiB,CAAC;AAAA,UAC9C,MAAM;AAAA,UACN,MAAM;AAAA,YACJ,WAAW;AAAA,YACX,UAAU,KAAK,MAAM,MAAM;AAAA,UAC7B;AAAA,QACF,CAAC;AAGD,eAAO,QAAQ,sBAAsB;AACrC,2CAAS,CAAC,MAAM,wBAAwB,KAAK,iBAAiB,CAAC,SAAS;AACxE,aAAK,SAAS;AAAA,UACZ,eAAe,CAAC;AAAA,UAChB,mBAAmB;AAAA,UACnB,WAAW;AAAA,UACX,OAAO;AAAA,QACT,CAAC;AAAA,MACH,SAAS,KAAK;AAEZ,eAAO,MAAM,kBAAkB;AAC/B,eAAO,CAAC,MAAM,GAAG;AAAA,MACnB;AAAA,IACF;AAEA,wBAAe,MAAY;AACzB,YAAM,EAAE,cAAc,IAAI,KAAK;AAC/B,YAAM,aAAa,cAAc,IAAI,UAAQ,KAAK,EAAE;AACpD,UAAI;AACF,cAAM,MAAM,MAAM,EAAE,KAAK;AAAA,UACvB,KAAK;AAAA,UACL,MAAM;AAAA,UACN,MAAM;AAAA,YACJ,WAAW;AAAA,YACX,UAAU,KAAK,MAAM,MAAM;AAAA,UAC7B;AAAA,QACF,CAAC;AAGD,eAAO,QAAQ,sBAAsB;AACrC,2CAAS,CAAC,MAAM,qCAAqC;AACrD,aAAK,SAAS;AAAA,UACZ,eAAe,CAAC;AAAA,UAChB,WAAW;AAAA,UACX,OAAO;AAAA,UACP,mBAAmB;AAAA,QACrB,CAAC;AAAA,MACH,SAAS,KAAK;AAEZ,eAAO,MAAM,kBAAkB;AAC/B,eAAO,CAAC,MAAM,GAAG;AAAA,MACnB;AAAA,IACF;AAEA,6BAAoB,MAAM;AACxB,WAAK,SAAS,EAAE,OAAO,KAAK,CAAC;AAAA,IAC/B;AAEA,4BAAmB,MAAM;AACvB,UAAI,KAAK,MAAM,cAAc,WAAW,EAAG,QAAO;AAClD,YAAM,eAAe,KAAK,MAAM,cAAc;AAAA,QAAO,OACnD,EAAE,UAAU,OAAO,OAAO;AAAA,MAC5B;AACA,aAAO,aAAa,SAAS,IAAI,SAAS;AAAA,IAC5C;AAEA,4BAAmB,CAAC,QAAgB,WAAmB,SAAe;AACpE,WAAK;AAAA,QACH,EAAE,aAAa,QAAQ,gBAAgB,WAAW,KAAW;AAAA,QAC7D,MAAM;AACJ,eAAK,2BAA2B,mCAAmC;AACnE,cAAI,KAAK,MAAM,kBAAkB;AAC/B,iBAAK;AAAA,cACH,KAAK,MAAM;AAAA,cACX,KAAK,MAAM;AAAA,YACb;AAAA,UACF;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAEA,6BAAoB,MAAM;AACxB,YAAM,SAAS,mCAAS,CAAC,2BAA2B;AACpD,YAAM,CAAC,SAAS,cAAc,IAAI,SAAS,OAAO,MAAM,YAAY,IAAI,CAAC;AACzE,YAAM,gBAAgB,UAAU,SAAS,OAAO,IAAI;AAEpD,UAAI,UAAU,iBAAiB,KAAK,MAAM,MAAM,IAAI;AAElD,eAAO;AAAA,MACT,WAAW,kBAAkB,KAAK,MAAM,MAAM,MAAM,gBAAgB;AAElE,eAAO;AAAA,MACT;AACA,aAAO;AAAA,IACT;AAEA,8BAAqB,MAAM;AACzB,aACG,CAAC,KAAK,MAAM,eAAe,CAAC,KAAK,MAAM,MAAM,aAC7C,CAAC,KAAK,MAAM,eACX,KAAK,MAAM,MAAM,aACjB,KAAK,MAAM,mBACX,KAAK,MAAM,gBAAgB;AAAA,IAEjC;AAEA,8BAAqB,MAAY;AAC/B,UAAI,KAAK,MAAM,oBAAoB,CAAC,KAAK,kBAAkB,GAAG;AAC5D,cAAM,KAAK;AAAA,UACT,KAAK,MAAM;AAAA,UACX,KAAK,MAAM;AAAA,QACb;AAAA,MACF;AACA,WAAK,SAAS,EAAE,mBAAmB,MAAM,CAAC;AAAA,IAC5C;AAEA,kCAAyB,MACvB,aAAa,QAAQ,iCAAiC,MAAM;AAE9D,yBAAgB,MAAM;AACpB,WAAK;AAAA,QACH,gBAAc,EAAE,eAAe,CAAC,UAAU,cAAc;AAAA,QACxD,MAAM;AACJ,gBAAM,gBAAgB,SAAS,eAAe,iBAAiB;AAC/D,gBAAM,aAAa,SAAS,eAAe,sBAAsB;AACjE,cAAI,iBAAiB,YAAY;AAC/B,gBAAI,KAAK,MAAM,eAAe;AAC5B,4BAAc,UAAU,IAAI,iBAAiB;AAC7C,yBAAW,UAAU,IAAI,MAAM;AAAA,YACjC,OAAO;AACL,4BAAc,UAAU,OAAO,iBAAiB;AAChD,yBAAW,UAAU,OAAO,MAAM;AAAA,YACpC;AAAA,UACF;AAAA,QACF;AAAA,MACF;AAAA,IACF;AA71BE,SAAK,QAAQ;AAAA,MACX,MAAM,MAAM;AAAA,MACZ,WAAW;AAAA,MACX,eAAe,CAAC;AAAA,MAChB,iBAAiB,KAAK,MAAM;AAAA,MAC5B,mBAAmB;AAAA,MACnB,iBAAiB;AAAA,MACjB,uBAAuB;AAAA,MACvB,iBAAiB;AAAA,MACjB,cAAc;AAAA,MACd,cAAc;AAAA,MACd,mBAAmB;AAAA,MACnB,eAAe,CAAC;AAAA,MAChB,cAAc,KAAK,MAAM,MAAM;AAAA,MAC/B,OAAO;AAAA,MACP,cAAc;AAAA,MACd,aAAa;AAAA,MACb,aAAa;AAAA,MACb,mBACE,4CAAkB,CAAC,cAAc,KAChC,KAAK,MAAM,MAAM,2BAChB,CAAC,KAAK,MAAM,mBACZ,KAAK,MAAM;AAAA,MACf,qBAAqB,KAAK,2BAA2B;AAAA,MACrD,uBAAuB;AAAA,MACvB,gBAAgB;AAAA,MAChB,gBACE,OAAO,SAAS,KAAK,SAAS,wBAAwB,KAAK;AAAA,MAC7D,aAAa,KAAK,MAAM,MAAM;AAAA,MAC9B,iBAAiB,EAAE,gBAAgB,KAAK,kBAAkB,EAAE;AAAA,MAC5D,OAAO;AAAA,MACP,mBAAmB;AAAA,MACnB,iBAAiB;AAAA,MACjB,eAAe;AAAA,MACf,gBAAgB;AAAA,IAClB;AAEA,MAAE,MAAM,EAAE,GAAG,eAAe,SAAU,GAAG;AACvC,aAAO;AAAA,IACT,CAAC;AAED,2BAAI,CAAC,UAAU;AAAA,MACb,WAAW,MAAM;AAAA,MACjB,WAAW,MAAM;AAAA,MACjB,aAAa;AAAA,IACf,CAAC;AAED,2BAAI,CAAC,UAAU,EAAE,UAAU,MAAM,MAAM,GAAG,CAAC;AAAA,EAC7C;AAAA,EA+BA,kBAAkB;AAChB,WAAO;AAAA,MACL,8BAA8B,KAAK,MAAM;AAAA,MACzC,cAAc,MAAM,KAAK,aAAa;AAAA,MACtC,oBAAoB,KAAK,MAAM;AAAA,MAC/B,sBAAsB,KAAK,MAAM;AAAA,MACjC,UAAU,KAAK,MAAM,YAAY,KAAK,MAAM;AAAA,MAC5C,kBAAkB,KAAK,MAAM;AAAA,MAC7B,iBAAiB,KAAK,MAAM;AAAA,MAC5B,WAAW,KAAK,MAAM;AAAA,MACtB,mBAAmB,KAAK,MAAM,OAAO,KAAK,MAAM,KAAK,gBAAgB;AAAA,MACrE,YAAY,KAAK,MAAM,OAAO,KAAK,MAAM,KAAK,SAAS,CAAC;AAAA,MACxD,2BAA2B,MAAM,KAAK,0BAA0B;AAAA,MAChE,mBAAmB,KAAK,MAAM;AAAA,MAC9B,QAAQ,KAAK,MAAM,OAAO,KAAK,MAAM,KAAK,KAAK;AAAA,MAC/C,SAAS,KAAK,MAAM;AAAA,MACpB,OAAO,KAAK,MAAM;AAAA,MAClB,mBAAmB,MAAM,KAAK,kBAAkB;AAAA,MAChD,aAAa,MAAM,KAAK,SAAS,EAAE,OAAO,MAAM,CAAC;AAAA,MACjD,4BAA4B,KAAK,MAAM,OACnC,KAAK,MAAM,KAAK,6BAChB;AAAA,MACJ,yBAAyB,KAAK,MAAM,MAAM;AAAA,MAC1C,sBAAsB,KAAK,MAAM;AAAA,MACjC,gCAAgC,KAAK,MAAM;AAAA,MAC3C,QAAQ,KAAK,MAAM;AAAA,MACnB,eAAe,KAAK,MAAM;AAAA,MAC1B,8BAA8B,KAAK,MAAM;AAAA,MACzC,mBAAmB,KAAK,MAAM;AAAA,MAC9B,gBAAgB,KAAK,MAAM;AAAA,MAC3B,eAAe,KAAK,MAAM;AAAA,MAC1B,eAAe,MAAM,KAAK,cAAc;AAAA,MACxC,cAAc,KAAK,MAAM;AAAA,MACzB,eAAe,KAAK,MAAM;AAAA,MAC1B,cAAc,MAAM,KAAK,aAAa;AAAA,MACtC,WAAW,CAAC,QAAa,KAAK,UAAU,GAAG;AAAA,MAC3C,YAAY,CACV,OAIA,OACA,WACG,KAAK,WAAW,OAAO,OAAO,MAAM;AAAA,MACzC,qBAAqB,KAAK,MAAM;AAAA,MAChC,6BAA6B,KAAK,4BAA4B;AAAA,MAC9D,wBAAwB,KAAK;AAAA,MAC7B,cAAc,KAAK;AAAA,MACnB,kBAAkB,KAAK,MAAM;AAAA,MAC7B,oBAAoB,KAAK;AAAA,MACzB,qBAAqB,KAAK;AAAA,MAC1B,aAAa,KAAK,MAAM;AAAA,MACxB,sBAAsB,KAAK,MAAM;AAAA,MACjC,4BAA4B,KAAK,MAAM;AAAA,MACvC,wBAAwB,KAAK,MAAM;AAAA,MACnC,6BAA6B,KAAK,MAAM;AAAA,MACxC,aAAa,KAAK,MAAM;AAAA,MACxB,kBAAkB,KAAK;AAAA,MACvB,sBAAsB,KAAK,MAAM;AAAA,IACnC;AAAA,EACF;AAAA,EA6DA,oBAAoB;AAElB,SAAK,SAAS,EAAE,aAAa,6BAAU,CAAC,EAAE,CAAC;AAC3C,SAAK,MAAM,gBACT,4CAAkB,CAAC,SAAS,KAC5B,OAAO,aAAa,OACpB,KAAK,cAAc;AACrB,SAAK,0BAA0B;AAC/B,MAAE,eAAe,EAAE,MAAM,MAAM;AAC7B,QAAE,2BAA2B,EAAE,KAAK;AAAA,IACtC,CAAC;AACD,QAAI,KAAK,MAAM,sBAAsB;AACnC,WAAK,SAAS,EAAE,aAAa,KAAK,MAAM,qBAAqB,CAAC;AAAA,IAChE;AACA,QAAI,KAAK,MAAM,6BAA6B;AAC1C,yCAAS,CAAC,MAAM,wDAAwD;AAAA,IAC1E;AACA,QAAI,KAAK,mBAAmB,KAAK,KAAK,MAAM,eAAe;AACzD,yCAAS,CAAC,MAAM,kBAAkB;AAAA,IACpC;AAAA,EACF;AAAA,EAmoBA,SAAS;AACP,WACE,oCAAC,SAAI,IAAG,kBACN,oCAAC,aACE,KAAK,MAAM,iBAAiB,iBAC3B,KAAK,MAAM,MAAM,oBACf;AAAA,MAAC,4BAAa;AAAb;AAAA,QACC,kBAAkB,MAAM,KAAK,SAAS,EAAE,cAAc,KAAK,CAAC;AAAA;AAAA,IAC9D,GAEJ,oCAAC,SAAI,WAAU,qBACb,oCAAC,YACC,oCAAC,UAAK,WAAU,iBACb,KAAK,MAAM,cACR,KAAK,MAAM,QACT,KAAK,MAAM,MAAM,CAAC,EAAE,OACpB,KACF,KAAK,MAAM,MAAM,MAAM,KAC3B;AAAA,MAAC;AAAA;AAAA,QACC,OAAO,EAAE,QAAQ,UAAU;AAAA,QAC3B,SAAS,MAAM,KAAK,SAAS,EAAE,uBAAuB,KAAK,CAAC;AAAA;AAAA,MAE5D;AAAA,QAAC,iBAAS;AAAT;AAAA,UACC,OAAO,KAAK,MAAM,kBAAkB;AAAA;AAAA,MACtC;AAAA,IACF,CACF,CACF,GACA,oCAAC,SAAI,WAAU,qBACZ,KAAK,mBAAmB,KAAK,KAAK,MAAM,gBACvC,oCAAC,SAAI,WAAU,kBACZ,KACD;AAAA,MAAC;AAAA;AAAA,QACC,WAAU;AAAA,QACV,OAAO,EAAE,aAAa,EAAE;AAAA;AAAA,MACzB;AAAA,IAED,GACA,oCAAC,WAAM,WAAU,6BACf;AAAA,MAAC;AAAA;AAAA,QACC,MAAK;AAAA,QACL,WAAU;AAAA,QACV,UAAU,MACR,KAAK;AAAA,UACH,EAAE,cAAc,CAAC,KAAK,MAAM,aAAa;AAAA,UACzC,MACE,KAAK,MAAM,eACP,KAAK,oBAAoB,IACzB,KAAK,cAAc;AAAA,QAC3B;AAAA;AAAA,IAEJ,GACA;AAAA,MAAC;AAAA;AAAA,QACC,WAAU;AAAA,QACV,OACE,KAAK,MAAM,eACP;AAAA,UACE,YACE,KAAK,MAAM,kBAAkB;AAAA,QACjC,IACA,CAAC;AAAA;AAAA,MAGP,oCAAC,UAAK,WAAU,oBAAmB;AAAA,IACrC,CACF,CACF,IAEA,KAAK,MAAM,+BACT;AAAA,MAAC;AAAA;AAAA,QACC,WAAU;AAAA,QACV,SAAS,MAAM;AACb,6CAAS,CAAC;AAAA,YACR;AAAA,UACF;AACA,eAAK,SAAS,EAAE,iBAAiB,KAAK,CAAC;AAAA,QACzC;AAAA;AAAA,MAEA,oCAAC,SAAI,KAAK,MAAM;AAAA,MAChB,oCAAC,aACE,KAAI,cACK,oCAAC,UAAG,GAAE,eAElB;AAAA,IACF,CAGN,CACF,GACA,oCAAC,QAAG,WAAU,iBAAc,iBACZ,KAAK,MAAM,MAAM,MAC/B,oCAAC,SAAI,WAAU,wBACZ,KAAK,MAAM,MAAM,gBAChB;AAAA,MAAC;AAAA;AAAA,QACC,WAAU;AAAA,QACV,SAAS,MAAM,KAAK,SAAS,EAAE,gBAAgB,KAAK,CAAC;AAAA;AAAA,MAErD;AAAA,QAAC;AAAA;AAAA,UACC,OAAO;AAAA,YACL,OAAO,KAAK,MAAM,kBAAkB;AAAA,UACtC;AAAA;AAAA,QAEC,KAAK,MAAM,MAAM,oBACd,KAAK,MAAM,MAAM,oBACjB;AAAA,MACN;AAAA,IACF,GAED,KAAK,MAAM,kBACV,oCAAC,SAAI,WAAU,oCACb;AAAA,MAAC;AAAA;AAAA,QACC,WAAU;AAAA,QACV,SAAS,MAAM,KAAK,SAAS,EAAE,gBAAgB,MAAM,CAAC;AAAA;AAAA,MACvD;AAAA,IAED,GACA,oCAAC,SAAI,WAAU,uBACb;AAAA,MAAC,iCAAsB;AAAtB;AAAA,QACC,WAAW,KAAK,MAAM;AAAA,QACtB,YAAY,MACV,KAAK,SAAS,EAAE,gBAAgB,MAAM,CAAC;AAAA,QAEzC,mBAAmB,KAAK,MAAM,MAAM;AAAA,QACpC,cAAc,KAAK,MAAM,MAAM;AAAA;AAAA,IACjC,CACF,CACF,CAEJ,CACF,GACC,KAAK,MAAM,qBACV;AAAA,MAAC,uCAAwB;AAAxB;AAAA,QACC,OAAO,KAAK,MAAM;AAAA,QAClB,gCACE,KAAK,MAAM;AAAA,QAEb,oBAAoB,CAAC,oBAAyB;AAC5C,eAAK;AAAA,YACH;AAAA,cACE;AAAA,cACA,mBAAmB;AAAA,YACrB;AAAA,YACA,MAAM,KAAK,gBAAgB;AAAA,UAC7B;AAAA,QACF;AAAA,QACA,gBAAgB,CAAC,gBAAqB;AACpC,eAAK,SAAS,EAAE,MAAM,YAAY,CAAC;AAAA,QACrC;AAAA,QACA,mBAAmB,MACjB,KAAK;AAAA,UAAS,EAAE,mBAAmB,MAAM;AAAA,UAAG,MAC1C,qCAAW,CAAC,gBAAgB,OAAO,SAAS,IAAI;AAAA,QAClD;AAAA,QAEF,QAAQ,KAAK,MAAM,OAAO,KAAK,MAAM,KAAK,KAAK;AAAA;AAAA,IACjD,GAED,KAAK,mBAAmB,KAAK,KAAK,MAAM,gBACvC;AAAA,MAAC,sBAAW;AAAX;AAAA,QACC,iBAAiB,MAAM,KAAK,SAAS,EAAE,iBAAiB,KAAK,CAAC;AAAA,QAC9D,eAAe,MAAM,KAAK,SAAS,EAAE,mBAAmB,KAAK,CAAC;AAAA,QAC9D,cAAc,KAAK;AAAA,QACnB,kBAAkB,KAAK,iBAAiB;AAAA,QACxC,kBAAkB,KAAK;AAAA,QACvB,eAAe,KAAK,MAAM;AAAA,QAC1B,cAAc,KAAK,MAAM;AAAA,QACzB,YAAY,KAAK,MAAM;AAAA,QACvB,iBAAiB,KAAK,MAAM;AAAA,QAC5B,cAAc,KAAK,MAAM,kBAAkB;AAAA;AAAA,IAC7C,GAEF;AAAA,MAAC,6BAAc;AAAd;AAAA,QACC,OAAO,KAAK,MAAM;AAAA,QAClB,WAAW,KAAK,MAAM;AAAA,QACtB,yBAAyB,KAAK,MAAM;AAAA,QACpC,cAAc,KAAK,MAAM;AAAA,QACzB,QAAQ,KAAK,MAAM;AAAA,QACnB,WAAW,KAAK,MAAM;AAAA,QACtB,MAAM,KAAK,MAAM;AAAA,QACjB,gBAAgB,KAAK;AAAA,QACrB,qBAAqB,KAAK;AAAA,QAC1B,gBAAgB,KAAK,MAAM;AAAA,QAC3B,gBAAgB,KAAK,MAAM;AAAA,QAC3B,iBAAiB,KAAK,MAAM;AAAA,QAC5B,eAAe,KAAK,MAAM;AAAA,QAC1B,qBAAqB,KAAK,MAAM;AAAA,QAChC,iBAAiB,KAAK,MAAM;AAAA,QAC5B,2BAA2B,MACzB,KAAK,SAAS,EAAE,mBAAmB,KAAK,CAAC;AAAA,QAE3C,qBAAqB,KAAK;AAAA,QAC1B,yBAAyB,KAAK,MAAM,MAAM;AAAA,QAC1C,qCACE,KAAK;AAAA,QAEP,uBAAuB,KAAK;AAAA,QAC5B,sBAAsB,KAAK,MAAM;AAAA,QACjC,8BACE,KAAK,MAAM;AAAA,QAEb,2BAA2B,KAAK;AAAA,QAChC,sBAAsB,KAAK;AAAA,QAC3B,mBAAmB,KAAK,MAAM;AAAA,QAC9B,iBAAiB,KAAK,MAAM;AAAA,QAC5B,cAAc,KAAK,MAAM;AAAA,QACzB,eAAe,KAAK,MAAM;AAAA,QAC1B,iBAAiB,KAAK;AAAA,QACtB,6BAA6B,KAAK;AAAA,QAClC,gBAAgB,KAAK,MAAM;AAAA,QAC3B,mBAAmB,CAAC,QAClB,KAAK,SAAS,EAAE,gBAAgB,IAAI,CAAC;AAAA,QAEvC,aAAa,KAAK,MAAM;AAAA,QACxB,0BAA0B,KAAK;AAAA,QAC/B,oBAAoB,KAAK;AAAA,QACzB,UAAU,CAAC,QAAa,KAAK,SAAS,EAAE,OAAO,IAAI,CAAC;AAAA,QACpD,OAAO,KAAK,MAAM;AAAA;AAAA,IACpB,GACC,KAAK,MAAM,WAAW,oCAAC,sBAAW,IAAC,MAAM,KAAK,MAAM,MAAM,IAAK,MAChE;AAAA,MAAC,6BAAc;AAAd;AAAA,QACC,cAAc,KAAK,MAAM,kBAAkB;AAAA,QAC3C,gBAAgB,KAAK,MAAM,kBAAkB;AAAA;AAAA,IAC/C,GACC,KAAK,MAAM,wBACV;AAAA,MAAC,+BAAgB;AAAhB;AAAA,QACC,YAAY,KAAK,MAAM;AAAA,QACvB,uBAAuB,MACrB,KAAK,SAAS,EAAE,uBAAuB,MAAM,CAAC;AAAA,QAEhD,MAAM;AAAA;AAAA,IACR,IACE,MACH,KAAK,MAAM,mBACV;AAAA,MAAC,gCAAiB;AAAjB;AAAA,QACC,eAAe,KAAK,MAAM;AAAA,QAC1B,YAAY,KAAK,MAAM,cAAc;AAAA,QACrC,aAAa,CAAC;AAAA,QACd,gBAAgB;AAAA,QAChB,aAAa,MAAM,KAAK,SAAS,EAAE,iBAAiB,MAAM,CAAC;AAAA,QAC3D,gBAAgB,OACd,KAAK,cAAc,GACnB,KAAK,SAAS,EAAE,eAAe,CAAC,GAAG,WAAW,MAAM,CAAC;AAAA;AAAA,IAEzD,GAED,KAAK,MAAM,qBACV;AAAA,MAAC,uCAAwB;AAAxB;AAAA,QACC,YAAY,MAAM,KAAK,SAAS,EAAE,mBAAmB,MAAM,CAAC;AAAA,QAC5D,cAAc,KAAK;AAAA;AAAA,IACrB,GAED,KAAK,MAAM,yBACV;AAAA,MAAC,mCAAsB;AAAtB;AAAA,QACC,YAAY,MAAM,KAAK,SAAS,EAAE,uBAAuB,MAAM,CAAC;AAAA,QAChE,WAAW,MAAM;AACf,eAAK,2BAA2B;AAAA,QAClC;AAAA,QACA,aAAa,KAAK,MAAM,MAAM;AAAA;AAAA,IAChC,GAED,KAAK,MAAM,gBACV;AAAA,MAAC,gCAAiB;AAAjB;AAAA,QACC,YAAY,MAAM,KAAK,SAAS,EAAE,cAAc,MAAM,CAAC;AAAA,QACvD,oBAAoB,CAAC,IAAY,QAC/B,KAAK,SAAS,EAAE,cAAc,IAAI,aAAa,CAAC;AAAA,QAElD,YAAY,KAAK,MAAM;AAAA,QACvB,WAAW;AAAA,UACT,IAAI,KAAK,MAAM,MAAM;AAAA,UACrB,MAAM,KAAK,MAAM,MAAM;AAAA,UACvB,KAAK,KAAK,MAAM;AAAA,UAChB,aAAa,KAAK,MAAM,MAAM;AAAA,UAC9B,UAAU;AAAA,QACZ;AAAA;AAAA,IACF,GAED,KAAK,MAAM,oBACV;AAAA,MAAC,iCAAQ;AAAR;AAAA,QACC,oBAAoB,KAAK;AAAA,QACzB,wBAAwB,KAAK;AAAA,QAC7B,kBAAkB,KAAK;AAAA,QACvB,4BAA4B,KAAK;AAAA,QACjC,gBAAgB,KAAK,kBAAkB;AAAA;AAAA,IACzC,IACE,MACH,KAAK,MAAM,mBACV;AAAA,MAAC,sCAAuB;AAAvB;AAAA,QACC,kBAAkB,MAAM,KAAK,SAAS,EAAE,iBAAiB,MAAM,CAAC;AAAA,QAChE,MAAM;AAAA;AAAA,IACR,CAEJ,CACF;AAAA,EAEJ;AACF;AAxsCqB,YAIZ,oBAAoB;AAAA,EACzB,8BAA8B,2BAAc;AAAJ,EACxC,oBAAoB,2BAAc;AAAJ,EAC9B,sBAAsB,6BAAgB;AAAN,EAChC,UAAU,2BAAc;AAAJ,EACpB,kBAAkB,2BAAc;AAAJ,EAC5B,iBAAiB,0BAAe,CAAC;AAAA,IAC/B,WAAW,6BAAgB;AAAN,IACrB,UAAU,6BAAgB;AAAN,IACpB,OAAO,6BAAgB;AAAN,IACjB,SAAS,6BAAgB;AAAN,IACnB,qBAAqB,6BAAgB;AAAN,EACjC,CAAC;AAAA,EACD,mBAAmB,4BAAe;AAAL,EAC7B,YAAY,4BAAe;AAAL,EACtB,2BAA2B,2BAAc;AAAJ,EACrC,mBAAmB,0BAAe,CAAC;AAAA,IACjC,cAAc,6BAAgB;AAAN,IACxB,gBAAgB,6BAAgB;AAAN,IAC1B,aAAa,6BAAgB;AAAN,EACzB,CAAC;AAAA,EACD,QAAQ,6BAAgB;AAAN,EAClB,SAAS,2BAAc;AAAJ,EACnB,cAAc,2BAAc;AAAJ,EACxB,mBAAmB,2BAAc;AAAJ,EAC7B,4BAA4B,6BAAgB;AAAN,EACtC,yBAAyB,2BAAc;AAAJ,EACnC,sBAAsB,2BAAc;AAAJ,EAChC,gCAAgC,2BAAc;AAAJ,EAC1C,QAAQ,6BAAgB;AAAN,EAClB,eAAe,6BAAgB;AAAN,EACzB,8BAA8B,6BAAgB;AAAN,EACxC,mBAAmB,2BAAc;AAAJ,EAC7B,gBAAgB,2BAAc;AAAJ,EAC1B,eAAe,2BAAc;AAAJ,EACzB,eAAe,2BAAc;AAAJ,EACzB,WAAW,2BAAc;AAAJ,EACrB,eAAe,4BAAe;AAAL,EACzB,YAAY,2BAAc;AAAJ,EACtB,WAAW,2BAAc;AAAJ,EACrB,OAAO,2BAAc;AAAJ,EACjB,aAAa,2BAAc;AAAJ,EACvB,cAAc,2BAAc;AAAJ,EACxB,cAAc,2BAAc;AAAJ,EACxB,qBAAqB,6BAAgB;AAAN,EAC/B,6BAA6B,2BAAc;AAAJ,EACvC,wBAAwB,2BAAc;AAAJ,EAClC,cAAc,2BAAc;AAAJ,EACxB,kBAAkB,2BAAc;AAAJ,EAC5B,oBAAoB,2BAAc;AAAJ,EAC9B,qBAAqB,2BAAc;AAAJ,EAC/B,aAAa,6BAAgB;AAAN,EACvB,0BAA0B,2BAAc;AAAJ,EACpC,sBAAsB,2BAAc;AAAJ,EAChC,4BAA4B,6BAAgB;AAAN,EACtC,wBAAwB,6BAAgB;AAAN,EAClC,6BAA6B,6BAAgB;AAAN,EACvC,aAAa,6BAAgB;AAAN,EACvB,kBAAkB,2BAAc;AAAJ,EAC5B,sBAAsB,6BAAgB;AACxC;;;;;ACnNwC;AACwB;AACH;AAG/D,2BAAY,CAAC,SAAS;AAAA,EACpB,WAAW;AACb,CAAC;AAGD,2BAAY,CAAC,SAAS;AAAA,EACpB,kBAAkB;AACpB,CAAC","sources":["webpack://geosnapshot/./client/bundles/BrowseEvent/components/EmbedHeader.tsx","webpack://geosnapshot/./client/bundles/BrowseEvent/components/BulkTagging.tsx","webpack://geosnapshot/./client/bundles/BrowseEvent/components/vectors/ShareIcon.tsx","webpack://geosnapshot/./client/bundles/BrowseEvent/components/offerBanners/PromptClearPrepaidCart.tsx","webpack://geosnapshot/./client/bundles/BrowseEvent/components/vectors/CopyBtn.tsx","webpack://geosnapshot/./client/bundles/BrowseEvent/components/vectors/EmailIcon.tsx","webpack://geosnapshot/./client/bundles/BrowseEvent/components/EventSupportEmailPopup.tsx","webpack://geosnapshot/./client/bundles/BrowseEvent/components/index.tsx","webpack://geosnapshot/./client/packs/browse-event-bundle.js"],"sourcesContent":["import React from \"react\";\nimport Pluralize from \"react-pluralize\";\nimport { withCartIdParam } from \"../../../utils/BrowserHelper\";\nimport PropTypes from \"prop-types\";\nimport { LightBoxViewCart } from \"./vectors/AddToCartIcon\";\nimport ContrastForegroundUtility from \"../../../utils/ContrastForegroundUtility\";\n\ninterface EmbedHeaderProps {\n cart: {\n photos: Array<{}>;\n };\n}\n\nclass EmbedHeader extends React.Component {\n photosCount = () =>\n this.props.cart && this.props.cart.photos\n ? this.props.cart!.photos.length\n : 0;\n\n static contextTypes = {\n cartId: PropTypes.number,\n isEmbed: PropTypes.bool,\n pageConfiguration: PropTypes.shape({\n primaryColor: PropTypes.string,\n secondaryColor: PropTypes.string,\n accentColor: PropTypes.string\n })\n };\n\n render() {\n return (\n
\n \n
\n
\n\n
\n \n \n \n \n {\" \"}\n View Cart\n  ({this.photosCount()})\n \n
\n
\n );\n }\n}\n\nexport default EmbedHeader;\n","import React from \"react\";\nconst saveIcon = require(\"../styles/save.svg\");\nconst downloadIcon = require(\"../styles/download.svg\");\n\nconst BulkTagging = ({\n showBulkTagging,\n selectAllVisible,\n listOfMediaId,\n filterActive,\n allVisible,\n curatePhotos,\n hideOrUnhideText,\n confirmDelete,\n canDeletePhotos,\n colorStyling\n}: {\n showBulkTagging: Function;\n selectAllVisible: Function;\n curatePhotos: Function;\n confirmDelete: Function;\n listOfMediaId: Array<{ id: number; hidden: boolean }>;\n filterActive: boolean;\n allVisible: boolean;\n hideOrUnhideText: string;\n canDeletePhotos: boolean;\n colorStyling: string;\n}) => {\n const handleHideTooltip = () =>\n //@ts-ignore\n $('#hide-tooltip [data-toggle=\"tooltip\"]').tooltip();\n\n const handleToggle = (msg: string) =>\n $(`#hide-tooltip [data-toggle=\"tooltip\"]`)\n .attr(\"data-original-title\", `${msg}`)\n //@ts-ignore\n .tooltip(\"show\");\n return (\n
\n
Select photos to apply tags
\n
\n {filterActive && (\n \n \n \n )}\n\n showBulkTagging()}\n disabled={listOfMediaId.length < 1}\n style={{ color: colorStyling, marginRight: 10 }}\n >\n Tag\n \n <>\n
\n curatePhotos()}\n disabled={listOfMediaId.length < 1}\n style={{ marginRight: 10, color: colorStyling }}\n data-toggle=\"tooltip\"\n data-placement=\"top\"\n onMouseEnter={() =>\n handleToggle(\n \"Hidden photos will not display in a published gallery\"\n )\n }\n onMouseLeave={() => handleHideTooltip()}\n >\n {hideOrUnhideText}\n \n
\n {canDeletePhotos && (\n confirmDelete()}\n disabled={listOfMediaId.length < 1}\n style={{ color: colorStyling }}\n >\n Delete\n \n )}\n \n {/* \n */}\n
\n
\n );\n};\n\nexport default BulkTagging;\n","import React from \"react\";\n\nconst ShareIcon = (props: { color: string | undefined }) => {\n return (\n \n \n \n \n );\n};\nexport default ShareIcon;\n","import React from \"react\";\nconst warnIcon = require(\"../../../EventGalleryMobile/styles/icon-red-warn.svg\");\n\ninterface PromptClearPrepaidCartProps {\n clearCart: Function;\n closePopup: Function;\n primaryAuth: string;\n}\n\nconst PromptClearPrepaidCart = ({\n clearCart,\n closePopup,\n primaryAuth\n}: PromptClearPrepaidCartProps) => {\n return (\n
\n \n
\n
\n  \n {\n closePopup();\n }}\n >\n ×\n \n
\n
\n \n

Clear your cart to redeem the pack

\n
\n
\n {primaryAuth === \"cookie\" ? (\n

\n The pack can be applied only to this event, clear your cart to\n continue\n

\n ) : (\n

\n This offer applies to only one (1) selfie per event. Please\n clear the cart in order to upload a selfie.\n

\n )}\n
\n
\n {\n closePopup();\n }}\n >\n Cancel\n \n {\n await clearCart();\n closePopup();\n }}\n >\n Clear Cart\n \n
\n
\n
\n
\n
\n );\n};\n\nexport default PromptClearPrepaidCart;\n","import React from \"react\";\n\nconst CoptBtn = ({ color }: { color: string }) => {\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n );\n};\nexport default CoptBtn;\n","import React from \"react\";\n\nconst EmailIcon = ({ color }: { color: string }) => {\n return (\n \n \n \n \n );\n};\nexport default EmailIcon;\n","import React from \"react\";\nimport CopyBtn from \"./vectors/CopyBtn\";\nimport EmailIcon from \"./vectors/EmailIcon\";\n\ninterface EventSupportEmailPopupProps {\n showEmail: boolean;\n closePopup: () => void;\n eventSupportLabel: string;\n supportEmail: string;\n}\n\nconst EventSupportEmailPopup: React.FC = ({\n showEmail,\n closePopup,\n eventSupportLabel,\n supportEmail\n}) => {\n return showEmail ? (\n
\n {\" \"}\n
\n \n
\n \n {eventSupportLabel ? eventSupportLabel : \"Contact Support\"}\n \n \n {supportEmail}\n \n
\n
\n (\n navigator.clipboard.writeText(`${supportEmail}`), //@ts-ignore\n toastr.success(\"Copied\")\n )}\n >\n \n \n
\n ) : null;\n};\n\nexport default EventSupportEmailPopup;\n","import React, { Component } from \"react\";\nimport ajax from \"superagent\";\nimport _ from \"lodash\"; // TODO: load only what's needed form lodash-es\nimport \"../styles/style.css\";\nimport \"../styles/prepaid-auth.css\";\nimport EventContainer from \"./EventContainer\";\nimport EmbedHeader from \"./EmbedHeader\";\nimport PrepaidCustomerAuthPopup from \"./PrepaidCustomerAuthPopup\";\nimport StyleOverrides from \"./StyleOverrides\";\nimport ahoy from \"ahoy.js\";\nimport {\n getParameterByName,\n withCartIdParam,\n removeParam,\n getCookie\n} from \"../../../utils/BrowserHelper\";\nimport getAlbumId from \"../../../utils/GetAlbumId\";\nimport PropTypes from \"prop-types\";\nimport ShareSocialPopup from \"../../ShareSocialPopup/index\";\nimport { Album, Event, Cart } from \"./types\";\nimport BundleMediaSelect from \"./albums/BundleSelectMedia\";\nimport BulkTagging from \"./BulkTagging\";\nimport Photo from \"./albums/Photo\";\nimport DeletePhotosConfirmation from \"./DeletePhotosConfirmation\";\nimport ShareIcon from \"./vectors/ShareIcon\";\nimport PublishBanner from \"../../PublishBanner\";\nimport PublishingOptions from \"../../PublishingOptions\";\nimport PromptClearPrepaidCart from \"./offerBanners/PromptClearPrepaidCart\";\nimport EventSupportEmailPopup from \"./EventSupportEmailPopup\";\nimport SaveCart from \"../../SaveCartEmailPopup\";\nimport InvitePhotographerPopup from \"../../common/InvitePhotographerPopup\";\nimport Telemetry from \"../../../utils/rudderstackAnalytics\";\nconst wave = require(\"../../common/images/wave.svg\");\n\ninterface BrowseEventProps {\n event: Event;\n prepaidCustomer: {\n firstName: string;\n lastName: string;\n email: string;\n eventId: number;\n freePhotosAvailable: number;\n };\n userId: number;\n favoritesGuestUserId: number;\n albumsAPI: string;\n addToCartAPI: string;\n emptyCartAPI: string;\n removeFromCartAPI: string;\n registerCustomerLeadAPI: string;\n registerGuestUserAPI: string;\n addPhotoToFavoritesAPI: string;\n removePhotoFromFavoritesAPI: string;\n userSignedIn: boolean;\n userEmail: string;\n cart: Cart;\n initialFilters: object;\n currentUserHasPasswordAccess: boolean;\n enableFilterByText: boolean;\n selfieSearchS3Bucket: string;\n embedded: boolean;\n ios: boolean;\n mobile: boolean;\n photoTimeRange: {\n min: number;\n max: number;\n };\n cookieInjectURL: string;\n uploadInProgress: boolean;\n eventAnalyticsEventsAPI: string;\n eventAnalyticsVisitsAPI: string;\n authenticatePrepaidCustomerAPI: string;\n createPrepaidCustomerAPI: string;\n promptPrepaidAuth: boolean | string;\n logoutPrepaidCustomerAPI: string;\n unlinkPrepaidCustomerAPI: string;\n pageConfiguration: {\n primaryColor: string;\n secondaryColor: string;\n accentColor: string;\n };\n photoBundleDiscountAvailable: boolean;\n availPhotoBundleDiscountAPI: string;\n withdrawPhotoBundleDiscountAPI: string;\n bypassPasswordPrompt: boolean;\n photosAvailable: boolean;\n isAuthorizedForDirectDownloads: boolean;\n eventPassword: string | null;\n authenticateEventPasswordAPI: string;\n galleryURL: string;\n organizationId: number;\n canManageTags: boolean;\n canDeletePhotos: boolean;\n schoolUser: boolean;\n addAllToCartAPI: string;\n hideUploadSelfie: boolean;\n customerCartEmailEnabled: boolean;\n showInvitePhotographerModal: boolean;\n isCustomerOnly: boolean;\n cookiePrepaidAvailed: boolean;\n cookiePrepaidPhotosAvailed: number;\n}\n\ninterface BrowseEventState {\n cart: Cart;\n prepaidCustomer: {\n firstName: string;\n lastName: string;\n email: string;\n eventId: number;\n freePhotosAvailable: number;\n };\n selfieUploadPopup: boolean;\n promptPrepaidAuth: boolean | string;\n publishState: string;\n discountMessage: string;\n showShareGalleryModal: boolean;\n curationMode: boolean;\n listOfMediaId: Array<{ id: number; hidden: boolean }>;\n showBulkTagging: boolean;\n filterActive: boolean;\n visiblePhotos: Photo[];\n selectAll: boolean;\n deletePhotosPopup: boolean;\n reset: boolean;\n publishPopup: boolean;\n selfiePrepaidStatus: string;\n clearPrepaidCartPopup: boolean;\n clearCartPopup: boolean;\n showEmailpopup: boolean;\n cartFullPrice: string;\n cartDiscountedPrice: string;\n cartHasDiscount: boolean;\n guestUserId: null | number;\n isProtected: boolean;\n albumModeID: string | null;\n album: Album[] | null;\n filterSelection: null | {\n albums?: Array<{}>;\n referenceImage?: string | null;\n };\n showSaveCartModal: boolean;\n showInvitePopup: boolean;\n isSidebarOpen: boolean;\n guestUserEmail: string;\n // Currently photo is typed as any across the BrowseEvent component\n // TODO: Fix this\n photoAddedToCart: any;\n}\n\nexport default class BrowseEvent extends Component<\n BrowseEventProps,\n BrowseEventState\n> {\n static childContextTypes = {\n currentUserHasPasswordAccess: PropTypes.bool,\n enableFilterByText: PropTypes.bool,\n selfieSearchS3Bucket: PropTypes.string,\n iosEmbed: PropTypes.bool,\n uploadInProgress: PropTypes.bool,\n prepaidCustomer: PropTypes.shape({\n firstName: PropTypes.string,\n lastName: PropTypes.string,\n email: PropTypes.string,\n eventId: PropTypes.number,\n freePhotosAvailable: PropTypes.number\n }),\n cartPrepaidPhotos: PropTypes.array,\n cartPhotos: PropTypes.array,\n arePrepaidPhotosAvailable: PropTypes.func,\n pageConfiguration: PropTypes.shape({\n primaryColor: PropTypes.string,\n secondaryColor: PropTypes.string,\n accentColor: PropTypes.string\n }),\n cartId: PropTypes.number,\n isEmbed: PropTypes.bool,\n curatePhotos: PropTypes.func,\n reLoadAlbumPhotos: PropTypes.func,\n photoBundleDiscountEventId: PropTypes.number,\n hidePhotographersFilter: PropTypes.bool,\n bypassPasswordPrompt: PropTypes.bool,\n isAuthorizedForDirectDownloads: PropTypes.bool,\n userId: PropTypes.number,\n eventPassword: PropTypes.string,\n authenticateEventPasswordAPI: PropTypes.string,\n selfieUploadPopup: PropTypes.bool,\n organizationId: PropTypes.bool,\n canManageTags: PropTypes.bool,\n clearMediaIds: PropTypes.func,\n selectAll: PropTypes.bool,\n visiblePhotos: PropTypes.array,\n getPhotoId: PropTypes.func,\n setPhotos: PropTypes.func,\n reset: PropTypes.bool,\n resetPhotos: PropTypes.func,\n curationMode: PropTypes.bool,\n setSelectAll: PropTypes.func,\n selfiePrepaidStatus: PropTypes.string,\n showPrepaidClearCartWarning: PropTypes.bool,\n promptClearPrepaidCart: PropTypes.func,\n addAllToCart: PropTypes.func,\n hideUploadSelfie: PropTypes.bool,\n authenticationDone: PropTypes.func,\n setFilterSelections: PropTypes.func,\n albumModeID: PropTypes.string,\n customerCartEmailEnabled: PropTypes.bool,\n cookiePrepaidAvailed: PropTypes.bool,\n cookiePrepaidPhotosAvailed: PropTypes.number,\n addPhotoToFavoritesAPI: PropTypes.string,\n removePhotoFromFavoritesAPI: PropTypes.string,\n guestUserId: PropTypes.number,\n setGuestUserCart: PropTypes.func,\n registerGuestUserAPI: PropTypes.string\n };\n constructor(props: BrowseEventProps) {\n super(props);\n this.state = {\n cart: props.cart,\n selectAll: false,\n listOfMediaId: [],\n prepaidCustomer: this.props.prepaidCustomer,\n selfieUploadPopup: false,\n discountMessage: \"\",\n showShareGalleryModal: false,\n showBulkTagging: false,\n curationMode: false,\n filterActive: false,\n deletePhotosPopup: false,\n visiblePhotos: [],\n publishState: this.props.event.publishMode,\n reset: false,\n publishPopup: false,\n guestUserId: null,\n albumModeID: null,\n promptPrepaidAuth:\n getParameterByName(\"prepaid-auth\") ||\n (this.props.event.prepaidCustomersEnabled &&\n !this.props.prepaidCustomer &&\n this.props.promptPrepaidAuth),\n selfiePrepaidStatus: this.defaultSelfiePrepaidStatus(),\n clearPrepaidCartPopup: false,\n showEmailpopup: false,\n clearCartPopup:\n window.location.href.includes(\"clear-cart-prompt=true\") || false,\n isProtected: this.props.event.isProtected,\n filterSelection: { referenceImage: this.getReferenceImage() },\n album: null,\n showSaveCartModal: false,\n showInvitePopup: false,\n isSidebarOpen: false,\n guestUserEmail: \"\"\n };\n\n $(\"body\").on(\"contextmenu\", function (e) {\n return false;\n });\n\n ahoy.configure({\n eventsUrl: props.eventAnalyticsEventsAPI,\n visitsUrl: props.eventAnalyticsVisitsAPI,\n trackVisits: true\n });\n\n ahoy.trackView({ event_id: props.event.id });\n }\n authenticationDone = () => this.setState({ isProtected: false });\n setFilterSelections = (val: { referenceImage: string }) =>\n this.setState({\n filterSelection: val\n });\n\n arePrepaidPhotosAvailable = () => {\n if (!this.state.prepaidCustomer) return false;\n if (!this.props.event.prepaidCustomersHardLimitEnabled) return true;\n\n if (this.prepaidAuthCookie()) {\n if (this.props.cookiePrepaidPhotosAvailed)\n return (\n this.state.cart.prepaidPhotos.length <\n this.props.event.prepaidCustomersPhotoLimit -\n this.props.cookiePrepaidPhotosAvailed\n );\n else {\n return (\n this.state.cart.prepaidPhotos.length <\n this.props.event.prepaidCustomersPhotoLimit\n );\n }\n }\n return (\n this.state.cart.prepaidPhotos.length <\n this.state.prepaidCustomer.freePhotosAvailable\n );\n };\n\n getChildContext() {\n return {\n currentUserHasPasswordAccess: this.props.currentUserHasPasswordAccess,\n curatePhotos: () => this.curatePhotos(),\n enableFilterByText: this.props.enableFilterByText,\n selfieSearchS3Bucket: this.props.selfieSearchS3Bucket,\n iosEmbed: this.props.embedded && this.props.ios,\n uploadInProgress: this.props.uploadInProgress,\n prepaidCustomer: this.state.prepaidCustomer,\n selectAll: this.state.selectAll,\n cartPrepaidPhotos: this.state.cart ? this.state.cart.prepaidPhotos : null,\n cartPhotos: this.state.cart ? this.state.cart.photos : [],\n arePrepaidPhotosAvailable: () => this.arePrepaidPhotosAvailable(),\n pageConfiguration: this.props.pageConfiguration,\n cartId: this.state.cart ? this.state.cart.id : null,\n isEmbed: this.props.embedded,\n reset: this.state.reset,\n reLoadAlbumPhotos: () => this.reLoadAlbumPhotos(),\n resetPhotos: () => this.setState({ reset: false }),\n photoBundleDiscountEventId: this.state.cart\n ? this.state.cart.photoBundleDiscountEventId\n : null,\n hidePhotographersFilter: this.props.event.hidePhotographersFilter,\n bypassPasswordPrompt: this.props.bypassPasswordPrompt,\n isAuthorizedForDirectDownloads: this.props.isAuthorizedForDirectDownloads,\n userId: this.props.userId,\n eventPassword: this.props.eventPassword,\n authenticateEventPasswordAPI: this.props.authenticateEventPasswordAPI,\n selfieUploadPopup: this.state.selfieUploadPopup,\n organizationId: this.props.organizationId,\n canManageTags: this.props.canManageTags,\n clearMediaIds: () => this.clearMediaIds(),\n curationMode: this.state.curationMode,\n visiblePhotos: this.state.visiblePhotos,\n setSelectAll: () => this.setSelectAll(),\n setPhotos: (val: any) => this.setPhotos(val),\n getPhotoId: (\n photo: {\n id: number;\n hidden: boolean;\n },\n index: any,\n photos: any\n ) => this.getPhotoId(photo, index, photos),\n selfiePrepaidStatus: this.state.selfiePrepaidStatus,\n showPrepaidClearCartWarning: this.showPrepaidClearCartWarning(),\n promptClearPrepaidCart: this.promptClearPrepaidCart,\n addAllToCart: this.addAllToCart,\n hideUploadSelfie: this.props.hideUploadSelfie,\n authenticationDone: this.authenticationDone,\n setFilterSelections: this.setFilterSelections,\n albumModeID: this.state.albumModeID,\n cookiePrepaidAvailed: this.props.cookiePrepaidAvailed,\n cookiePrepaidPhotosAvailed: this.props.cookiePrepaidPhotosAvailed,\n addPhotoToFavoritesAPI: this.props.addPhotoToFavoritesAPI,\n removePhotoFromFavoritesAPI: this.props.removePhotoFromFavoritesAPI,\n guestUserId: this.state.guestUserId,\n setGuestUserCart: this.setGuestUserCart,\n registerGuestUserAPI: this.props.registerGuestUserAPI\n };\n }\n\n showPrepaidClearCartWarning = () =>\n this.props.event.prepaidCustomersPrimaryAuthField == \"selfie\" &&\n this.props.event.prepaidCustomersEnabled &&\n this.state.cart &&\n this.state.cart.photos.length > 0;\n\n defaultSelfiePrepaidStatus = () => {\n if (this.props.event.prepaidCustomersPrimaryAuthField == \"selfie\") {\n if (this.props.prepaidCustomer) return \"available\";\n }\n return \"unavailable\";\n };\n\n setPhotos = (val: any) => {\n this.setState({\n visiblePhotos: val\n });\n };\n\n promptClearPrepaidCart = () => {\n this.setState({\n clearPrepaidCartPopup: true\n });\n };\n\n setSelectAll = () => this.setState({ selectAll: false });\n\n setFilterActive = (val: boolean) => this.setState({ filterActive: val });\n\n setSelfieUploadPopup = (value: boolean) => {\n this.setState({ selfieUploadPopup: value });\n };\n\n discountMessage = () => {\n if (this.props.event.hasDiscount) {\n ajax\n .get(\n withCartIdParam(\n this.props.event.discountStatusPath,\n this.state.cart ? this.state.cart.id : null\n )\n )\n .then(res => {\n this.setState({\n discountMessage: res.body.message,\n cartFullPrice: res.body.cart_full_price,\n cartDiscountedPrice: res.body.cart_discounted_price,\n cartHasDiscount: res.body.cart_has_discount\n });\n });\n }\n };\n\n checkDiscountAndGetStatus = () => {\n if (this.props.event.hasDiscount) {\n this.discountMessage();\n }\n };\n\n componentDidMount() {\n // @ts-ignore\n this.setState({ albumModeID: getAlbumId() });\n this.props.userSignedIn &&\n getParameterByName(\"sidebar\") &&\n window.innerWidth > 992 &&\n this.toggleSideBar();\n this.checkDiscountAndGetStatus();\n $(\"#browse-event\").ready(() => {\n $(\"#browse-event-placeholder\").hide();\n });\n if (this.props.favoritesGuestUserId) {\n this.setState({ guestUserId: this.props.favoritesGuestUserId });\n }\n if (this.props.showInvitePhotographerModal) {\n Telemetry.track(\"internal-referrals:event-gallery-ph-referral-btn-shown\");\n }\n if (this.showGalleryActions() && this.props.canManageTags) {\n Telemetry.track(\"curate-btn-shown\");\n }\n }\n\n bundleDiscountAvailedFromAnotherEvent = (photo: any) =>\n this.state.cart &&\n this.state.cart.photoBundleDiscountAvailed &&\n this.state.cart.photoBundleDiscountEventId != photo.album.eventId;\n\n isCurrencyMismatch = () => {\n if (\n this.state.cart &&\n this.props.event.currency !== this.state.cart.currency &&\n this.state.cart.photos.length > 0\n ) {\n //@ts-ignore\n toastr.error(\n `The cart can only contain photos in one currency, currently ${this.props.event.currency}. Clear and try adding again.`\n );\n return true;\n }\n return false;\n };\n\n isBundleDiscountRestricted = (photo: Photo) => {\n if (\n this.bundleDiscountAvailedFromAnotherEvent(photo) &&\n this.state.cart &&\n this.state.cart.photos.length > 0\n ) {\n //@ts-ignore\n toastr.error(\n `You have an active package discount applied. This feature does not permit photos to be added from multiple events. Please clear cart or remove offer before proceeding.`,\n { timeOut: 9500 }\n );\n return true;\n }\n return false;\n };\n\n isPrepaidPhotoInvalid = () => {\n if (\n this.state.prepaidCustomer &&\n this.props.event.id !== this.state.prepaidCustomer.eventId\n ) {\n //@ts-ignore\n toastr.error(\n \"Your photo pack only applies to the event you purchased it for.\"\n );\n return true;\n }\n return false;\n };\n\n shouldShowPrepaidCartPopup = () => {\n return (\n this.state.cart &&\n this.state.cart.eventIds.length >= 1 &&\n !this.state.cart.eventIds.includes(this.props.event.id) &&\n this.prepaidAuthCookie()\n );\n };\n\n needsPrepaidCustomerCreation = () => {\n return (\n this.props.event.prepaidCustomersEnabled &&\n this.props.event.prepaidCustomersPrimaryAuthField == \"cookie\" &&\n !this.state.prepaidCustomer\n );\n };\n\n addAllToCart = async (\n activeFilters: any,\n valArray: Photo[],\n onLoadingChange: (isLoading: boolean) => void\n ) => {\n const photoIds: number[] = [];\n valArray.forEach((value: Photo) => {\n photoIds.push(value.id);\n });\n if (\n this.isCurrencyMismatch() ||\n this.isBundleDiscountRestricted(valArray[0])\n ) {\n onLoadingChange(false);\n return;\n }\n\n if (this.shouldShowPrepaidCartPopup()) {\n onLoadingChange(false);\n\n this.setState({ clearPrepaidCartPopup: true });\n return;\n } else {\n if (this.needsPrepaidCustomerCreation()) {\n const response = await this.handleCookiePrepaidCustomerCreation();\n if (response) {\n this.setState({ photoAddedToCart: valArray[0] });\n }\n }\n ajax\n .post(this.props.addAllToCartAPI)\n .send({\n photo_ids: photoIds,\n activeFilters: activeFilters,\n cart_id: this.state.cart ? this.state.cart.id : null\n })\n .then(res => {\n this.setState(\n {\n cart: res.body.cart\n },\n () => {\n Telemetry.track(\"event-gallery:add-all-to-cart\", {\n eventId: this.props.event.id,\n eventName: this.props.event.name,\n cartId: res.body.cart.id\n });\n onLoadingChange(false);\n //@ts-ignore\n toastr.success(\"Added to cart\", null, { timeOut: 1000 });\n this.checkDiscountAndGetStatus();\n $.getScript(\n withCartIdParam(\"/cart_sales_count\", this.state.cart.id)\n );\n }\n );\n })\n .catch(err => {\n console.log(err);\n onLoadingChange(false);\n });\n if (this.bundleDiscountAvailedFromAnotherEvent(valArray[0])) {\n this.setState(\n {\n cart: {\n ...this.state.cart,\n photoBundleDiscountAvailed: false\n }\n },\n () => this.removePhotoBundleDiscount()\n );\n }\n }\n };\n\n isCartEmpty = () => {\n if (this.state.cart === null) return true;\n return this.state.cart.photos?.length == 0;\n };\n\n isSaveCartPopupSeen = () =>\n localStorage.getItem(\"isUserAskedForEmailToSaveCart\")\n ? JSON.parse(\n localStorage.getItem(\"isUserAskedForEmailToSaveCart\") as string\n )\n : false;\n\n canShowEmailPopup = () => {\n const { customerCartEmailEnabled, userSignedIn, event } = this.props;\n const { guestUserId } = this.state;\n\n const isConditionsMet =\n customerCartEmailEnabled &&\n !guestUserId &&\n this.isCartEmpty() &&\n !userSignedIn;\n\n if (this.prepaidAuthCookie()) {\n return isConditionsMet;\n } else {\n return (\n isConditionsMet &&\n !this.isSaveCartPopupSeen() &&\n !event.prepaidCustomersEnabled\n );\n }\n };\n\n afterAddToCart = () => {\n this.checkDiscountAndGetStatus();\n $.getScript(withCartIdParam(\"/cart_sales_count\", this.state.cart.id));\n this.prepaidAuthCookie() && this.handleCookiePrepaidCustomerCreation();\n };\n\n prepaidAuthCookie = () =>\n this.props.event.prepaidCustomersPrimaryAuthField === \"cookie\";\n\n trackCartEmailPopupActions = (eventName: string) => {\n Telemetry.track(eventName, {\n eventId: this.props.event.id,\n eventName: this.props.event.name,\n cartId: this.state.cart ? this.state.cart.id : null\n });\n };\n\n addPhotoToCart = (photo: any, activeFilters: any) => {\n if (this.isCurrencyMismatch() || this.isBundleDiscountRestricted(photo)) {\n return;\n }\n if (this.shouldShowPrepaidCartPopup()) {\n this.setState({ clearPrepaidCartPopup: true });\n return;\n } else if (this.canShowEmailPopup()) {\n this.setState({\n showSaveCartModal: true,\n photoAddedToCart: photo,\n filterSelection: activeFilters\n });\n } else {\n ajax\n .post(this.props.addToCartAPI)\n .send({\n photo_id: photo.id,\n activeFilters: activeFilters,\n cart_id: this.state.cart ? this.state.cart.id : null\n })\n .then(res => {\n this.setState(\n {\n cart: res.body.cart\n },\n () => {\n this.afterAddToCart();\n this.trackCartEmailPopupActions(\n \"event-gallery:cart-email-popup-displayed\"\n );\n }\n );\n });\n if (this.bundleDiscountAvailedFromAnotherEvent(photo)) {\n this.setState(\n {\n cart: {\n ...this.state.cart,\n photoBundleDiscountAvailed: false\n }\n },\n () => this.removePhotoBundleDiscount()\n );\n }\n //@ts-ignore\n (window.dataLayer || []).push({ event: \"addToCart\" });\n ahoy.track(\"albumInteraction\", {\n secondary_type: \"addToCart\",\n photo_id: photo.id,\n album_id: photo.album.id,\n event_id: this.props.event.id\n });\n }\n };\n\n removePhotoFromCart = (photo: any) => {\n let substitutePrepaidPhoto =\n _.includes(this.state.cart.prepaidPhotos, photo.id) &&\n _.head(\n _.difference(this.state.cart.photos, this.state.cart.prepaidPhotos)\n );\n\n this.setState({\n cart: {\n ...this.state.cart,\n photos: _.without(this.state.cart.photos, photo.id),\n prepaidPhotos: _.concat(\n _.without(this.state.cart.prepaidPhotos, photo.id),\n substitutePrepaidPhoto || []\n )\n }\n });\n\n ajax\n .delete(this.props.removeFromCartAPI)\n .send({ photo_id: photo.id, cart_id: this.state.cart.id })\n .then(_ => {\n //@ts-ignore\n toastr.success(\"Removed from cart\", null, {\n timeOut: 1000\n });\n this.checkDiscountAndGetStatus();\n $.getScript(withCartIdParam(\"/cart_sales_count\", this.state.cart.id));\n });\n };\n\n emptyPhotosFromCart = async () => {\n let response = await ajax.delete(this.props.emptyCartAPI).send({\n cart_id: this.state.cart ? this.state.cart.id : null\n });\n if (response.status === 200) {\n this.setState({\n cart: response.body.cart\n });\n $.getScript(withCartIdParam(\"/cart_sales_count\", this.state.cart.id));\n }\n };\n\n emptyPhotosFromPrepaidCart = () => {\n ajax\n .delete(this.props.emptyCartAPI)\n .send({\n cart_id: this.state.cart ? this.state.cart.id : null\n })\n .then((response: any) => {\n this.setState({\n cart: response.body.cart\n });\n $.getScript(withCartIdParam(\"/cart_sales_count\", this.state.cart.id));\n\n // @ts-ignore\n toastr.success(\"Your current cart has been cleared.\");\n });\n };\n\n availPhotoBundleDiscount = async () => {\n if (this.state.cart && this.state.cart.id) {\n await this.emptyPhotosFromCart();\n }\n ajax\n .post(this.props.availPhotoBundleDiscountAPI)\n .send({\n cart_id: this.state.cart ? this.state.cart.id : null,\n event_id: this.props.event.id\n })\n .then(res => {\n this.setState({\n cart: {\n ...this.state.cart,\n ...res.body.cart\n }\n });\n });\n };\n\n removePhotoBundleDiscount = async () => {\n await ajax\n .post(this.props.withdrawPhotoBundleDiscountAPI)\n .send({\n cart_id: this.state.cart.id,\n event_id: this.props.event.id\n })\n .then(res => {\n this.setState({\n cart: {\n ...this.state.cart,\n ...res.body.cart\n }\n });\n })\n .catch(err => console.log(err));\n };\n\n handleSelfiePrepaidCustomerCreation = (referenceImageURL: string) => {\n this.setState(\n {\n selfiePrepaidStatus: \"unavailable\"\n },\n () => {\n ajax\n .post(this.props.createPrepaidCustomerAPI)\n .send({\n reference_image_url: referenceImageURL\n })\n .then(res => {\n this.setState({\n cart: res.body.updatedCart,\n prepaidCustomer: res.body.prepaidCustomer,\n selfiePrepaidStatus: res.body.prepaidCustomer\n ? \"available\"\n : \"availed\"\n });\n });\n }\n );\n };\n\n handleCookiePrepaidCustomerCreation = async () => {\n if (!this.props.cookiePrepaidAvailed && !this.state.prepaidCustomer) {\n try {\n const res = await ajax.post(this.props.createPrepaidCustomerAPI).send({\n email: this.state.guestUserId && this.state.guestUserEmail\n });\n\n return new Promise(resolve => {\n this.setState(\n {\n cart: res.body.updatedCart,\n prepaidCustomer: res.body.prepaidCustomer\n },\n () => {\n resolve(true);\n }\n );\n });\n } catch (error) {\n console.error(\"Error in handleCookiePrepaidCustomerCreation:\", error);\n return false;\n }\n }\n return true;\n };\n\n unlinkSelfiePrepaidCustomer = () => {\n ajax\n .delete(\n withCartIdParam(this.props.unlinkPrepaidCustomerAPI, this.state.cart.id)\n )\n .then(res => {\n this.setState({\n cart: res.body.updatedCart,\n prepaidCustomer: res.body.prepaidCustomer,\n selfiePrepaidStatus: \"unavailable\"\n });\n });\n };\n\n reportCookieIssue = () => {\n //@ts-ignore\n Rollbar.configure({\n payload: {\n context: \"BrowseEvent#event\"\n }\n });\n //@ts-ignore\n Rollbar.error(\"Cookies failing in BrowseEvent\", {\n embedded: this.props.embedded\n });\n\n return true;\n };\n\n logoutPrepaidCustomer = async (availBundleOffer: boolean) => {\n //@ts-ignore\n toastr.success(\"Logging you out now...\");\n await ajax\n .delete(\n withCartIdParam(this.props.logoutPrepaidCustomerAPI, this.state.cart.id)\n )\n .then(response => {\n this.setState({\n prepaidCustomer: {} as BrowseEventProps[\"prepaidCustomer\"]\n });\n if (availBundleOffer && this.state.cart.photos.length > 0) {\n //@ts-ignore\n this.setState({ clearCartPopup: true });\n } else if (\n availBundleOffer &&\n !getCookie(\"reference_image_for_event\")\n ) {\n this.setState({ selfieUploadPopup: true });\n }\n })\n .catch(() =>\n //@ts-ignore\n toastr.failure(\"Error logging out. Please try again.\")\n );\n };\n\n clearMediaIds = () => this.setState({ listOfMediaId: [] });\n\n getPhotoId = (\n photo: { id: number; hidden: boolean },\n index: any,\n photos: any\n ) => {\n const listofIDs = [...this.state.listOfMediaId];\n const listOfMedia = [...photos];\n listOfMedia[index].isSelected = true;\n const arrayOfId = listofIDs.filter(i => i.id === photo.id);\n if (arrayOfId.length === 0) {\n listofIDs.push({ id: photo.id, hidden: photo.hidden });\n this.setState({ listOfMediaId: listofIDs });\n } else {\n let indexOfId = -1;\n listofIDs.forEach((i, index) => {\n if (i.id === photo.id) {\n indexOfId = index;\n }\n });\n listOfMedia[index].isSelected = false;\n listofIDs.splice(indexOfId, 1);\n this.setState({ listOfMediaId: listofIDs });\n }\n };\n\n selectAllVisible = () => {\n let listofIDs: any[] = [];\n if (!this.state.selectAll) {\n this.state.visiblePhotos.forEach((element: any) => {\n element.isSelected = true;\n listofIDs.push({ id: element.id, hidden: element.hidden });\n });\n } else {\n this.state.visiblePhotos.forEach((element: any) => {\n element.isSelected = false;\n });\n listofIDs = [];\n }\n\n this.setState({\n listOfMediaId: listofIDs,\n selectAll: !this.state.selectAll\n });\n };\n\n curatePhotos = async () => {\n const { listOfMediaId } = this.state;\n const arrayOfIds = listOfMediaId.map(item => item.id);\n try {\n const res = await $.ajax({\n url: `/api/v1/photos/${this.hideOrUnhideText()}`,\n type: \"POST\",\n data: {\n photo_ids: arrayOfIds,\n event_id: this.props.event.id\n }\n });\n\n //@ts-ignore\n toastr.success(\"Successfully updated\");\n Telemetry.track(`event-gallery-curate:${this.hideOrUnhideText()}-photos`);\n this.setState({\n listOfMediaId: [],\n deletePhotosPopup: false,\n selectAll: false,\n reset: true\n });\n } catch (err) {\n //@ts-ignore\n toastr.error(\"Failed to update\");\n console.error(err);\n }\n };\n\n deletePhotos = async () => {\n const { listOfMediaId } = this.state;\n const arrayOfIds = listOfMediaId.map(item => item.id);\n try {\n const res = await $.ajax({\n url: `/api/v1/photos/delete`,\n type: \"DELETE\",\n data: {\n photo_ids: arrayOfIds,\n event_id: this.props.event.id\n }\n });\n\n //@ts-ignore\n toastr.success(\"Successfully updated\");\n Telemetry.track(\"event-gallery-curate:photos-deleted\");\n this.setState({\n listOfMediaId: [],\n selectAll: false,\n reset: true,\n deletePhotosPopup: false\n });\n } catch (err) {\n //@ts-ignore\n toastr.error(\"Failed to update\");\n console.error(err);\n }\n };\n\n reLoadAlbumPhotos = () => {\n this.setState({ reset: true });\n };\n\n hideOrUnhideText = () => {\n if (this.state.listOfMediaId.length === 0) return \"hide\";\n const hideOrUnhide = this.state.listOfMediaId.filter(i =>\n i.hidden != true ? true : false\n );\n return hideOrUnhide.length > 0 ? \"hide\" : \"unhide\";\n };\n\n setGuestUserCart = (userId: number, userEmail: string, cart: Cart) => {\n this.setState(\n { guestUserId: userId, guestUserEmail: userEmail, cart: cart },\n () => {\n this.trackCartEmailPopupActions(\"event-gallery:cart-email-provided\");\n if (this.state.photoAddedToCart) {\n this.addPhotoToCart(\n this.state.photoAddedToCart,\n this.state.filterSelection\n );\n }\n }\n );\n };\n\n getReferenceImage = () => {\n const cookie = getCookie(\"reference_image_for_event\");\n const [eventId, referenceImage] = cookie ? cookie.split(\"-imageURL-\") : [];\n const parsedEventId = eventId ? parseInt(eventId) : null;\n\n if (cookie && parsedEventId != this.props.event.id) {\n //return null if none of these exist or if cookie exists but the event ID doesn't match\n return null;\n } else if (parsedEventId === this.props.event.id && referenceImage) {\n //return reference image if either of the above conditions are true\n return referenceImage;\n }\n return null;\n };\n\n showGalleryActions = () => {\n return (\n (!this.state.isProtected && !this.props.event.isPrivate) ||\n (!this.state.isProtected &&\n this.props.event.isPrivate &&\n this.state.filterSelection &&\n this.state.filterSelection.referenceImage)\n );\n };\n\n closeSaveCartModal = async () => {\n if (this.state.photoAddedToCart && !this.prepaidAuthCookie()) {\n await this.addPhotoToCart(\n this.state.photoAddedToCart,\n this.state.filterSelection\n );\n }\n this.setState({ showSaveCartModal: false });\n };\n\n setSaveCartPromptShown = () =>\n localStorage.setItem(\"isUserAskedForEmailToSaveCart\", \"true\");\n\n toggleSideBar = () => {\n this.setState(\n prevState => ({ isSidebarOpen: !prevState.isSidebarOpen }),\n () => {\n const mainContainer = document.getElementById(\"event-container\");\n const fakeButton = document.getElementById(\"sidebar-arrow-circle\");\n if (mainContainer && fakeButton) {\n if (this.state.isSidebarOpen) {\n mainContainer.classList.add(\"container-small\");\n fakeButton.classList.add(\"open\");\n } else {\n mainContainer.classList.remove(\"container-small\");\n fakeButton.classList.remove(\"open\");\n }\n }\n }\n );\n };\n\n render() {\n return (\n
\n
\n {this.state.publishState === \"unpublished\" &&\n this.props.event.canUpdatePrivacy && (\n this.setState({ publishPopup: true })}\n />\n )}\n
\n

\n \n {this.state.albumModeID\n ? this.state.album\n ? this.state.album[0].name\n : \"\"\n : this.props.event.name}{\" \"}\n this.setState({ showShareGalleryModal: true })}\n >\n \n \n \n

\n
\n {this.showGalleryActions() && this.props.canManageTags ? (\n
\n {\" \"}\n \n Curate\n \n \n
\n ) : (\n this.props.showInvitePhotographerModal && (\n {\n Telemetry.track(\n \"internal-referrals:event-gallery-ph-referral\"\n );\n this.setState({ showInvitePopup: true });\n }}\n >\n \n
\n {\" \"}\n Are you a
\n photographer?\n
\n
\n )\n )}\n
\n
\n
\n Event date - {this.props.event.date}\n
\n {this.props.event.supportEmail && (\n this.setState({ showEmailpopup: true })}\n >\n \n {this.props.event.eventSupportLabel\n ? this.props.event.eventSupportLabel\n : \"Contact Support\"}\n \n \n )}\n {this.state.showEmailpopup && (\n
\n this.setState({ showEmailpopup: false })}\n >\n ×\n
\n
\n \n this.setState({ showEmailpopup: false })\n }\n eventSupportLabel={this.props.event.eventSupportLabel}\n supportEmail={this.props.event.supportEmail}\n />\n
\n
\n )}\n
\n \n {this.state.promptPrepaidAuth && (\n {\n this.setState(\n {\n prepaidCustomer: prepaidCustomer,\n promptPrepaidAuth: false\n },\n () => this.discountMessage()\n );\n }}\n setUpdatedCart={(updatedCart: any) => {\n this.setState({ cart: updatedCart });\n }}\n cancelPrepaidAuth={() =>\n this.setState({ promptPrepaidAuth: false }, () =>\n removeParam(\"prepaid-auth\", window.location.href)\n )\n }\n cartId={this.props.cart ? this.props.cart.id : null}\n />\n )}\n {this.showGalleryActions() && this.state.curationMode && (\n this.setState({ showBulkTagging: true })}\n confirmDelete={() => this.setState({ deletePhotosPopup: true })}\n curatePhotos={this.curatePhotos}\n hideOrUnhideText={this.hideOrUnhideText()}\n selectAllVisible={this.selectAllVisible}\n listOfMediaId={this.state.listOfMediaId}\n filterActive={this.state.filterActive}\n allVisible={this.state.selectAll}\n canDeletePhotos={this.props.canDeletePhotos}\n colorStyling={this.props.pageConfiguration.primaryColor}\n />\n )}\n \n this.setState({ promptPrepaidAuth: true })\n }\n emptyPhotosFromCart={this.emptyPhotosFromCart}\n prepaidCustomersEnabled={this.props.event.prepaidCustomersEnabled}\n handleSelfiePrepaidCustomerCreation={\n this.handleSelfiePrepaidCustomerCreation\n }\n logoutPrepaidCustomer={this.logoutPrepaidCustomer}\n selfieSearchS3Bucket={this.props.selfieSearchS3Bucket}\n photoBundleDiscountAvailable={\n this.props.photoBundleDiscountAvailable\n }\n removePhotoBundleDiscount={this.removePhotoBundleDiscount}\n setSelfieUploadPopup={this.setSelfieUploadPopup}\n selfieUploadPopup={this.state.selfieUploadPopup}\n photosAvailable={this.props.photosAvailable}\n curationMode={this.state.curationMode}\n listOfMediaId={this.state.listOfMediaId}\n setFilterActive={this.setFilterActive}\n unlinkSelfiePrepaidCustomer={this.unlinkSelfiePrepaidCustomer}\n clearCartPopup={this.state.clearCartPopup}\n setClearCartPopup={(val: boolean) =>\n this.setState({ clearCartPopup: val })\n }\n guestUserId={this.state.guestUserId}\n availPhotoBundleDiscount={this.availPhotoBundleDiscount}\n showGalleryActions={this.showGalleryActions}\n setAlbum={(val: any) => this.setState({ album: val })}\n album={this.state.album}\n />\n {this.props.embedded ? : null}\n \n {this.state.showShareGalleryModal ? (\n \n this.setState({ showShareGalleryModal: false })\n }\n text={\"Share with participants or just show off ;)\"}\n />\n ) : null}\n {this.state.showBulkTagging && (\n this.setState({ showBulkTagging: false })}\n handlePostCall={() => (\n this.clearMediaIds(),\n this.setState({ listOfMediaId: [], selectAll: false })\n )}\n />\n )}\n {this.state.deletePhotosPopup && (\n this.setState({ deletePhotosPopup: false })}\n deletePhotos={this.deletePhotos}\n />\n )}\n {this.state.clearPrepaidCartPopup && (\n this.setState({ clearPrepaidCartPopup: false })}\n clearCart={() => {\n this.emptyPhotosFromPrepaidCart();\n }}\n primaryAuth={this.props.event.prepaidCustomersPrimaryAuthField}\n />\n )}\n {this.state.publishPopup && (\n this.setState({ publishPopup: false })}\n updateEventPrivacy={(id: number, val: { publish_mode: string }) =>\n this.setState({ publishState: val.publish_mode })\n }\n schoolUser={this.props.schoolUser}\n eventData={{\n id: this.props.event.id,\n name: this.props.event.name,\n url: this.props.galleryURL,\n publishMode: this.props.event.publishMode,\n password: \"\"\n }}\n />\n )}\n {this.state.showSaveCartModal ? (\n \n ) : null}\n {this.state.showInvitePopup && (\n this.setState({ showInvitePopup: false })}\n type={\"desktop\"}\n />\n )}\n \n \n );\n }\n}\n","// import 'core-js/stable'\n// import 'regenerator-runtime/runtime'\n\nimport ReactOnRails from \"react-on-rails\";\nimport BrowseEvent from \"../bundles/BrowseEvent/components/index\";\nimport EventGalleryMobile from \"../bundles/EventGalleryMobile\";\n\n// This is how react_on_rails can see the BrowseEvent in the browser.\nReactOnRails.register({\n BrowseEvent\n});\n\n// TODO: put this out in its own bundle\nReactOnRails.register({\n EventGalleryMobile\n});\n"],"names":["_","index"],"sourceRoot":""}