{"version":3,"sources":["Lib/client.js","Components/Spinner/spinner.svg","Components/Spinner/index.jsx","Components/Button/index.jsx","Components/Error/index.jsx","Lib/moment-locales.js","Components/Note/index.jsx","Components/PromocodeForm/index.jsx","Calendar/Tickets.jsx","Calendar/TicketsAccordion.jsx","Calendar/TimeSlots.jsx","Calendar/Capacities.jsx","Calendar/App.jsx"],"names":["client","endpoint","body","customConfig","headers","config","method","credentials","Error","JSON","stringify","rejectDebug","window","Promise","reject","fetch","then","response","a","json","data","ok","_style","_g","_excluded","_extends","Object","assign","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","this","_objectWithoutProperties","excluded","sourceKeys","keys","indexOf","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","propertyIsEnumerable","SvgSpinner","_ref","svgRef","title","titleId","props","width","height","stroke","viewBox","xmlns","ref","id","className","cx","cy","r","fill","strokeWidth","ForwardRef","Spinner","VARIANTS","Button","children","variant","as","href","type","onClick","fullWidth","style","loading","disabled","classes","Component","undefined","PrimaryButton","SecondaryButton","message","name","marginTop","marginBottom","role","Note","state","note","egumaReact","noteValue","eventId","values","lang","value","onChange","e","setState","padding","map","index","cols","rows","noteEnabled","noteFieldName","renderInput","React","polyglot","Polyglot","phrases","translations","actions","reducer","action","promoCode","error","PromocodeForm","callback","selectedDate","useReducer","dispatch","addPromocode","console","log","Date","parse","alert","payload","code","mandantId","success","t","messageLabel","newTickets","placeholder","autoComplete","dangerouslySetInnerHTML","__html","Tickets","handleChange","selectedTickets","tickets","textAlign","minWidth","fontSize","ticket","description","priceFormatted","isSoldOut","color","nameForSelectTag","quantities","qty","TicketsAccordion","groups","matchedGroups","forEach","g","group","push","mapTicketstoGroups","Accordion","defaultActiveKey","isOpenInShop","Toggle","Card","Header","eventKey","Collapse","TimeSlots","hasPromocodeForm","currentDate","onSelect","selectedTimeSlot","timeSlots","isAllDay","display","flexWrap","time","enabled","isFullyBooked","capacity","slotId","showAvailability","Capacities","capacities","selectedCapacity","hasMultipleCapacities","capacityId","App","componentDidMount","date","onChangeDate","getDates","month","fetchingDates","shortId","dateTime","toISOString","url","all","resolve","setTimeout","availableDates","entirelyBookedDates","Set","scrollTo","getTimeSlots","updatedUrl","URL","location","formattedDate","moment","format","searchParams","set","history","replaceState","toString","getTickets","resetNewTickets","fetchingTickets","scroller","duration","smooth","offset","getCapacities","fetchingTimeSlots","isPurchaseClosed","userCanEnterPromocode","onContinue","preventDefault","runCustomValidator","refNote","current","getNote","noteMandatory","noteMandatoryMessage","quantity","redirect","onTicketTypeChange","ticketTypeId","newSelectedTickets","parseInt","appliedPromocode","getPromocodeMessage","updateLocale","week","dow","locale","createRef","fetchingCapacities","onCalendarValidate","lineItems","Fragment","position","zIndex","justifyContent","alignItems","top","left","bottom","right","backgroundColor","DotLoader","sizeUnit","size","focused","initialVisibleMonth","next","onDateChange","isOutsideRange","d","has","isDayBlocked","isWaitingList","isDayHighlighted","onNextMonthClick","onPrevMonthClick","borderStyle","borderWidth","fontWeight","link","pathname","onSubmit","n"],"mappings":"gKAyCeA,IApCA,SAACC,GAA4C,IAAD,yDAAP,GAAzBC,EAAgC,EAAhCA,KAASC,EAAuB,iBACnDC,EAAU,CAAC,eAAgB,oBAC3BC,EAAM,yBACVC,OAAQJ,EAAO,OAAS,MACxBK,YAAa,eACVJ,GAHO,IAIVC,QAAQ,2BACHA,GACAD,EAAaC,WAIpB,GAAIF,EAAM,CACR,GAAoB,kBAATA,EAAmB,MAAM,IAAIM,MAAM,6BAE9CH,EAAOH,KAAOO,KAAKC,UAAUR,GAG/B,IAAMS,EAAcC,OAAOD,cAAe,EAE1C,OAAIA,EACKE,QAAQC,OAAO,2BAGjBF,OACJG,MAAMd,EAAUI,GAChBW,KAFI,uCAEC,WAAMC,GAAN,eAAAC,EAAA,sEACeD,EAASE,OADxB,UACEC,EADF,QAEAH,EAASI,GAFT,yCAGKD,GAHL,gCAKKP,QAAQC,OAAOM,IALpB,2CAFD,yD,yGC7BLE,EAAQC,E,0CAERC,EAAY,CAAC,QAAS,WAE1B,SAASC,IAA2Q,OAA9PA,EAAWC,OAAOC,QAAU,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcN,OAAOQ,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkBH,EAASY,MAAMC,KAAMR,WAEhT,SAASS,EAAyBP,EAAQQ,GAAY,GAAc,MAAVR,EAAgB,MAAO,GAAI,IAAkEC,EAAKJ,EAAnED,EAEzF,SAAuCI,EAAQQ,GAAY,GAAc,MAAVR,EAAgB,MAAO,GAAI,IAA2DC,EAAKJ,EAA5DD,EAAS,GAAQa,EAAaf,OAAOgB,KAAKV,GAAqB,IAAKH,EAAI,EAAGA,EAAIY,EAAWV,OAAQF,IAAOI,EAAMQ,EAAWZ,GAAQW,EAASG,QAAQV,IAAQ,IAAaL,EAAOK,GAAOD,EAAOC,IAAQ,OAAOL,EAFxMgB,CAA8BZ,EAAQQ,GAAuB,GAAId,OAAOmB,sBAAuB,CAAE,IAAIC,EAAmBpB,OAAOmB,sBAAsBb,GAAS,IAAKH,EAAI,EAAGA,EAAIiB,EAAiBf,OAAQF,IAAOI,EAAMa,EAAiBjB,GAAQW,EAASG,QAAQV,IAAQ,GAAkBP,OAAOQ,UAAUa,qBAAqBX,KAAKJ,EAAQC,KAAgBL,EAAOK,GAAOD,EAAOC,IAAU,OAAOL,EAMne,SAASoB,EAAWC,EAAMC,GACxB,IAAIC,EAAQF,EAAKE,MACbC,EAAUH,EAAKG,QACfC,EAAQd,EAAyBU,EAAMzB,GAE3C,OAAoB,gBAAoB,MAAOC,EAAS,CACtD6B,MAAO,GACPC,OAAQ,GACRC,OAAQ,OACRC,QAAS,YACTC,MAAO,6BACPC,IAAKT,EACL,kBAAmBE,GAClBC,GAAQF,EAAqB,gBAAoB,QAAS,CAC3DS,GAAIR,GACHD,GAAS,KAAM7B,IAAWA,EAAsB,gBAAoB,QAAS,KAAM,yZAA0ZC,IAAOA,EAAkB,gBAAoB,IAAK,CAChiBsC,UAAW,gBACG,gBAAoB,SAAU,CAC5CC,GAAI,GACJC,GAAI,GACJC,EAAG,IACHC,KAAM,OACNC,YAAa,OAIjB,IAAIC,EAA0B,aAAiBnB,G,GAChC,I,MCjCAoB,EAJC,WACZ,OAAO,cAAC,EAAD,K,uCCELC,EACK,UADLA,EAEO,YAGPC,EAAS,SAAC,GAWT,IAVLC,EAUI,EAVJA,SACAC,EASI,EATJA,QASI,IARJC,UAQI,MARC,SAQD,MAPJC,YAOI,MAPG,KAOH,MANJC,YAMI,MANG,SAMH,EALJC,EAKI,EALJA,QAKI,IAJJC,iBAII,SAHJC,EAGI,EAHJA,MACAC,EAEI,EAFJA,QAEI,IADJC,gBACI,SACEC,EAAUnB,IAAG,iBAAkB,CACnC,iBAAkBU,IAAYH,EAC9B,mBAAoBG,IAAYH,EAChC,mBAAoBQ,IAGhBK,EAAYT,EAElB,OACE,eAACS,EAAD,CACEP,KAAa,WAAPF,EAAkBE,EAAO,KAC/BD,KAAMA,EACNb,UAAWoB,EACXL,QAASA,EACTE,MAAOA,EACPE,SAAUD,GAAWC,EANvB,UAQGD,GACC,sBAAMlB,UAAU,UAAhB,SACE,cAAC,EAAD,MAGJ,sBAAMA,UAAWkB,EAAU,+BAA4BI,EAAvD,SACGZ,QAMHa,EAAgB,SAAC,GAAD,IAAGb,EAAH,EAAGA,SAAalB,EAAhB,wBACpB,cAAC,EAAD,yBAAQmB,QAASH,GAAsBhB,GAAvC,aACGkB,MAICc,EAAkB,SAAC,GAAD,IAAGd,EAAH,EAAGA,SAAalB,EAAhB,wBACtB,cAAC,EAAD,yBAAQmB,QAASH,GAAwBhB,GAAzC,aACGkB,O,uDC3DL,yBAiBe/D,IAdD,SAAC,GAAiB,IAAf8E,EAAc,EAAdA,QACf,OACE,cAAC,UAAD,CAASC,KAAK,QAAd,SACE,qBACE1B,UAAU,oBACViB,MAAO,CAAEU,UAAW,GAAIC,aAAc,GACtCC,KAAK,QAHP,SAKGJ,Q,iCCXT,oC,6GCGMK,E,kDACJ,WAAYtC,GAAQ,IAAD,8BACjB,cAAMA,IAEDuC,MAAQ,CACXC,KAAMC,IAAWC,WAJF,E,2CAQnB,WACE,OAAOzD,KAAKsD,MAAMC,O,yBAGpB,WAAe,IAAD,OAEZ,GAA2B,6BAAvBC,IAAWE,QAAwC,CACrD,IAAIC,EAAS,CACX,oBACA,4CACA,YACA,cACA,WACA,2BACA,SACA,iBACA,eACA,SA+BF,MA5BwB,OAApBH,IAAWI,KACbD,EAAS,CACP,qBACA,oCACA,YACA,cACA,WACA,yBACA,SACA,iBACA,eACA,aAE2B,OAApBH,IAAWI,OACpBD,EAAS,CACP,4BACA,kCACA,YACA,cACA,WACA,4BACA,SACA,iBACA,eACA,UAKF,yBACEE,MAAO7D,KAAKsD,MAAMC,KAClBO,SAAU,SAAAC,GAAC,OAAI,EAAKC,SAAS,CAAET,KAAMQ,EAAEzE,OAAOuE,SAC9CrB,MAAO,CAAEyB,QAAS,MAAOf,UAAW,GAHtC,UAKE,wBAAQW,MAAM,KACbF,EAAOO,KAAI,SAACL,EAAOM,GAAR,OACV,wBAAoBN,MAAOA,EAA3B,SACGA,GADUM,SAQrB,OACE,0BACEN,MAAO7D,KAAKsD,MAAMC,KAClBO,SAAU,SAAAC,GAAC,OAAI,EAAKC,SAAS,CAAET,KAAMQ,EAAEzE,OAAOuE,SAC9CO,KAAK,KACLC,KAAK,IACL7B,MAAO,CAAEvB,OAAQ,Q,oBAKvB,WACE,OAAKuC,IAAWc,YAKd,sBAAK9B,MAAO,CAAEU,UAAW,IAAzB,UACE,8BACE,iCAASM,IAAWe,kBAErBvE,KAAKwE,iBARD,4B,GAtFMC,IAAM7B,WAoGVS,O,gJClGTqB,EAAW,IAAIC,IAAS,CAAEC,QAASpB,IAAWqB,eAE9CC,EACW,eADXA,EAEa,iBAFbA,EAGO,WAHPA,EAIS,aAGTC,EAAU,SAACzB,EAAO0B,GACtB,OAAQA,EAAO3C,MACb,KAAKyC,EACH,OAAO,2BAAKxB,GAAZ,IAAmB2B,UAAWD,EAAOC,YACvC,KAAKH,EACH,OAAO,2BAAKxB,GAAZ,IAAmB2B,UAAW,KAChC,KAAKH,EACH,OAAO,2BAAKxB,GAAZ,IAAmB4B,MAAOF,EAAOE,QACnC,KAAKJ,EACH,OAAO,2BAAKxB,GAAZ,IAAmB4B,OAAO,IAC5B,QACE,MAAM,IAAIhH,MAAM,4BA0GPiH,IAtGO,SAAC,GAAkD,IAAD,IAA/CC,gBAA+C,MAApC,aAAoC,MAA1BC,oBAA0B,MAAX,KAAW,EACtE,EAA0BC,qBAAWP,EAAS,CAC5CE,UAAW,GACXC,OAAO,IAFT,mBAAO5B,EAAP,KAAciC,EAAd,KAKQL,EAAqB5B,EAArB4B,MAAOD,EAAc3B,EAAd2B,UAETO,EAAY,uCAAG,8BAAA5G,EAAA,kEAEjB6G,QAAQC,IAAIL,KAMa,6BAAvB7B,IAAWE,SACM,OAAjB2B,GACAA,GAAgBM,KAAKC,MAAM,eAC3BP,EAAeM,KAAKC,MAAM,eAXX,uBAafC,MAAM,oEAbS,iCAiBXC,EAAU,CACdpC,QAASF,IAAWE,QACpBqC,KAAMd,GAnBS,SAsBEvH,YAAO,QAAD,OACf8F,IAAWwC,UADI,YACSxC,IAAWI,KADpB,iBAEvB,CAAEhG,KAAMkI,IAxBO,WAsBXhH,EAtBW,QA2BPmH,QA3BO,wBA4BfV,EAAS,CACPlD,KAAMyC,EACNI,MAAOpG,EAAKkE,SAAW0B,EAASwB,EAAEpH,EAAKqH,gBA9B1B,2BAmCjBZ,EAAS,CAAElD,KAAMyC,IAEjBM,EAAStG,EAAKsH,YArCG,kDAuCjBX,QAAQC,IAAR,MACAH,EAAS,CACPlD,KAAMyC,EACNI,MAAOR,EAASwB,EAAE,4CA1CH,0DAAH,qDA+ClB,OACE,sBAAK1D,MAAO,CAAEU,UAAW,IAAzB,UACE,qBAAK3B,UAAU,MAAf,SACE,qBACED,GAAG,gCACHC,UAAU,YACViB,MAAO,CAAEW,aAAc,IAHzB,SAKGuB,EAASwB,EAAE,6CAGhB,sBAAK3E,UAAU,MAAf,UACE,qBAAKA,UAAU,WAAWiB,MAAO,CAAEW,aAAc,IAAjD,SACE,uBACEd,KAAK,OACLf,GAAG,YACH2B,KAAK,OACLoD,YAAa3B,EAASwB,EAAE,eACxBrC,MAAOoB,EACPnB,SAAU,SAAAC,GAAC,OACTwB,EAAS,CACPlD,KAAMyC,EACNG,UAAWlB,EAAEzE,OAAOuE,SAGxByC,aAAa,UAGjB,qBAAK/E,UAAU,WAAWiB,MAAO,CAAEW,aAAc,IAAjD,SACE,cAAC,IAAD,CAAiBZ,WAAS,EAACD,QAASkD,EAApC,SACGd,EAASwB,EAAE,qCAIjBhB,GACC,qBACE5D,GAAG,gBACHC,UAAU,sBACViB,MAAO,CAAEW,aAAc,GACvBC,KAAK,QACLmD,wBAAyB,CAAEC,OAAQtB,U,8TCzHvCR,EAAW,IAAIC,IAAS,CAAEC,QAASpB,IAAWqB,eAiFrC4B,MA/Ef,YAA8D,IAA3CC,EAA0C,EAA1CA,aAAcC,EAA4B,EAA5BA,gBAAiBC,EAAW,EAAXA,QAChD,OAAuB,IAAnBA,EAAQnH,OACH,KAIL,wBAAO8B,UAAU,QAAQiB,MAAO,CAAEU,UAAW,IAA7C,UACE,gCACE,qBAAIV,MAAO,CAAEvB,OAAQ,IAArB,UACE,6BACE,iCACE,sBAAMK,GAAG,kCAAT,SACGoD,EAASwB,EAAE,yBAIlB,oBAAI1D,MAAO,CAAEqE,UAAW,QAASC,SAAU,KAA3C,SACE,uBAAMvF,UAAU,sBAAhB,UACE,iCAASmD,EAASwB,EAAE,kBACpB,uBAAM1D,MAAO,CAAEuE,SAAU,SAAzB,UACG,IACArC,EAASwB,EAAE,4BAIlB,oBAAI1D,MAAO,CAAEqE,UAAW,SAAxB,SACE,iCAASnC,EAASwB,EAAE,4BAI1B,gCACGU,EAAQ1C,KAAI,SAAC8C,GAAD,OACX,qBAAoBxE,MAAO,CAAEvB,OAAQ,IAArC,UACE,+BACE,qBAAKsF,wBAAyB,CAAEC,OAAQQ,EAAO/D,QAC/C,qBACE3B,GAAG,0BACHkB,MAAO,CACLU,UAAW,EACX6D,SAAU,SAEZR,wBAAyB,CAAEC,OAAQQ,EAAOC,kBAI9C,oBAAI1F,UAAU,yBAAd,SACE,sBAAMA,UAAU,sBAAhB,SACGyF,EAAOE,mBAIZ,oBAAI3F,UAAU,aAAd,SACGyF,EAAOG,UACN,sBAAM3E,MAAO,CAAE4E,MAAO,WAAtB,SACE,iCAAS1C,EAASwB,EAAE,sBAGtB,wBACE5E,GAAI0F,EAAO1F,GACX2B,KAAM+D,EAAOK,iBACbvD,SAAU,SAACC,GAAD,OAAO2C,EAAaM,EAAO1F,GAAIyC,EAAEzE,OAAOuE,QAClDrB,MAAO,CAAEvB,OAAQ,GAAID,MAAO,OAAQ8F,SAAU,IAC9CjD,MAAO8C,EAAgBK,EAAO1F,IALhC,SAOG0F,EAAOM,WAAWpD,KAAI,SAACqD,GAAD,OACrB,wBAAqC1D,MAAO0D,EAA5C,SACGA,GADU,iBAAmBA,YAjCjCP,EAAO1F,a,kBC9BtBoD,G,OAAW,IAAIC,IAAS,CAAEC,QAASpB,IAAWqB,gBAkJrC2C,EAzIU,SAAC,GAKnB,IAJLd,EAII,EAJJA,aACAC,EAGI,EAHJA,gBACAC,EAEI,EAFJA,QACAa,EACI,EADJA,OAEA,GAAuB,IAAnBb,EAAQnH,OACV,OAAO,KAGT,IAAMiI,EAjBmB,SAACd,EAASa,GACnC,IAAMC,EAAgB,GAGtB,OAFAD,EAAOE,SAAQ,SAAAC,GAAC,OAAKF,EAAcE,EAAEtG,IAAM,CAAEuG,MAAOD,EAAGhB,QAAS,OAChEA,EAAQe,SAAQ,SAAAzB,GAAC,OAAIwB,EAAcxB,EAAE2B,OAAhB,QAAkCC,KAAK5B,MACrD9G,OAAOuE,OAAO+D,GAaCK,CAAmBnB,EAASa,GAElD,OACE,eAAC,WAAD,WACE,qBAAKlG,UAAU,sBAAf,SACGmD,EAASwB,EAAE,sBAEbwB,EAAcxD,KACb,SAAA0D,GAAC,OACCA,EAAEhB,QAAQnH,OAAS,GACjB,qBACE8B,UAAU,oCADZ,SAIE,eAACyG,EAAA,EAAD,CAAWC,iBAAkBL,EAAEC,MAAMK,aAAe,IAAM,KAA1D,UACE,eAACF,EAAA,EAAUG,OAAX,CACEhG,GAAIiG,IAAKC,OACTC,SAAS,IACT/G,UACE,uFAJJ,UAOE,mBAAGA,UAAU,yBAAyB,cAAY,SAAY,IAC9D,sBAAMgF,wBAAyB,CAAEC,OAAQoB,EAAEC,MAAM5E,WAEnD,cAAC+E,EAAA,EAAUO,SAAX,CAAoBD,SAAS,IAA7B,SACE,qBAAK/G,UAAU,+BAAf,SACE,wBACEA,UAAU,QACViB,MAAO,CAAEU,UAAW,EAAGC,aAAc,GAFvC,UAIE,gCACE,qBAAIX,MAAO,CAAEvB,OAAQ,IAArB,UACE,6BACE,iCACE,sBAAMK,GAAG,kCAAT,SACGoD,EAASwB,EAAE,yBAIlB,oBAAI1D,MAAO,CAAEqE,UAAW,QAASC,SAAU,KAA3C,SACE,uBAAMvF,UAAU,sBAAhB,UACE,iCAASmD,EAASwB,EAAE,kBACpB,uBAAM1D,MAAO,CAAEuE,SAAU,SAAzB,UACG,IACArC,EAASwB,EAAE,4BAIlB,oBAAI1D,MAAO,CAAEqE,UAAW,SAAxB,SACE,iCAASnC,EAASwB,EAAE,4BAI1B,gCACG0B,EAAEhB,QAAQ1C,KAAI,SAAA8C,GAAM,OACnB,qBAAoBxE,MAAO,CAAEvB,OAAQ,IAArC,UACE,+BACE,qBACEsF,wBAAyB,CACvBC,OAAQQ,EAAO/D,QAGnB,qBACE3B,GAAG,0BACHkB,MAAO,CACLU,UAAW,EACX6D,SAAU,SAEZR,wBAAyB,CACvBC,OAAQQ,EAAOC,kBAKrB,oBAAI1F,UAAU,yBAAd,SACE,sBAAMA,UAAU,sBAAhB,SACGyF,EAAOE,mBAIZ,oBAAI3F,UAAU,aAAd,SACGyF,EAAOG,UACN,sBAAM3E,MAAO,CAAE4E,MAAO,WAAtB,SACE,iCACG1C,EAASwB,EAAE,sBAIhB,wBACE5E,GAAI0F,EAAO1F,GACX2B,KAAM+D,EAAOK,iBACbvD,SAAU,SAAAC,GAAC,OACT2C,EAAaM,EAAO1F,GAAIyC,EAAEzE,OAAOuE,QAEnCrB,MAAO,CACLvB,OAAQ,GACRD,MAAO,OACP8F,SAAU,IAEZjD,MAAO8C,EAAgBK,EAAO1F,IAXhC,SAaG0F,EAAOM,WAAWpD,KAAI,SAAAqD,GAAG,OACxB,wBAEE1D,MAAO0D,EAFT,SAIGA,GAHI,iBAAmBA,YAhD3BP,EAAO1F,oBA5CvB,SAAWsG,EAAEC,MAAMvG,WCjChCoD,EAAW,IAAIC,IAAS,CAAEC,QAASpB,IAAWqB,eAmFrC2D,MAjFf,YAMI,IALFC,EAKC,EALDA,iBACAC,EAIC,EAJDA,YACAC,EAGC,EAHDA,SACAC,EAEC,EAFDA,iBACAC,EACC,EADDA,UAEA,OAAKH,GAAelF,IAAWsF,SACtB,KAGJD,GAAkC,IAArBA,EAAUpJ,OAa1B,cAAC,UAAD,CAASwD,KAAK,YAAd,SACE,qBAAKT,MAAO,CAAEU,UAAW,IAAzB,SACE,gCACGwB,EAASwB,EAAE,+CACZ,qBACE1D,MAAO,CACLuG,QAAS,OACTC,SAAU,OACV9F,UAAW,IAJf,SAOG2F,EAAU3E,KACT,WAAiDC,GAAjD,IAAG7C,EAAH,EAAGA,GAAI2H,EAAP,EAAOA,KAAMC,EAAb,EAAaA,QAASC,EAAtB,EAAsBA,cAAeC,EAArC,EAAqCA,SAArC,OACE,qBAEE9G,QAAS,kBAAO4G,EAAUP,EAAS,CAAEU,OAAQ/H,IAAQ,MAFvD,SAIE,sBACEC,UAAS,4BACP2H,EACI,8BACA,gCAHG,OAKPN,GAAoBA,IAAqBtH,EACrC,+BACA,IARR,UAWG2H,EACAzF,IAAW8F,kBACV,eAAC,WAAD,WACE,uBACA,qBAAK/H,UAAU,+BAAf,SACG2H,EACGxE,EAASwB,EACP,sCACA,CACEkD,aAGJD,EACAzE,EAASwB,EAAE,kBACXxB,EAASwB,EAAE,8BA5BlB/B,eAzBjB,cAAC,UAAD,CAASlB,KAAK,YAAd,SACE,qBAAKT,MAAO,CAAEU,UAAW,IAAzB,SACGuF,EACG/D,EAASwB,EAAE,0CACXxB,EAASwB,EAAE,sCCnBnBxB,EAAW,IAAIC,IAAS,CAAEC,QAASpB,IAAWqB,eA0DrC0E,MAxDf,YAAmF,IAA7DC,EAA4D,EAA5DA,WAAYC,EAAgD,EAAhDA,iBAAkBb,EAA8B,EAA9BA,iBAAkBD,EAAY,EAAZA,SACpE,OAAKC,GAAqBpF,IAAWkG,sBAKnC,cAAC,UAAD,CAASzG,KAAK,aAAd,SACE,qBAAKT,MAAO,CAAEU,UAAW,IAAzB,SACE,gCACGwB,EAASwB,EAAE,mDACZ,qBACE1D,MAAO,CACLuG,QAAS,OACTC,SAAU,OACV9F,UAAW,IAJf,SAOGsG,EAAWtF,KAAI,WAAmCC,GAAnC,IAAG7C,EAAH,EAAGA,GAAI4H,EAAP,EAAOA,QAASrI,EAAhB,EAAgBA,MAAOuI,EAAvB,EAAuBA,SAAvB,OACd,qBAEE9G,QAAS,kBAAO4G,EAAUP,EAAS,CAAEU,OAAQT,EAAkBe,WAAYrI,IAAQ,MAFrF,SAIE,sBACEC,UAAS,4BACP2H,EACI,8BACA,gCAHG,OAKPO,GAAoBA,IAAqBnI,EACrC,+BACA,IARR,UAWGT,EACA2C,IAAW8F,kBACV,eAAC,WAAD,WACE,uBACA,qBAAK/H,UAAU,+BAAf,SACG2H,EACGxE,EAASwB,EAAE,sCAAuC,CAClDkD,aAEA1E,EAASwB,EAAE,2BAvBlB/B,eAjBV,M,oCCgBLO,EAAW,IAAIC,IAAS,CAAEC,QAASpB,IAAWqB,eAO9C+E,E,kDACJ,WAAY7I,GAAQ,IAAD,8BACjB,cAAMA,IAkCR8I,kBAAoB,WACM,OAApB,EAAKvG,MAAMwG,MACb,EAAKC,aAAa,EAAKzG,MAAMwG,MAAM,IArCpB,EAyCnBE,SAzCmB,uCAyCR,WAAMC,GAAN,6BAAArL,EAAA,6DACT,EAAKoF,SAAS,CACZkG,eAAe,IAGXpE,EAAU,CACdqE,QAAS3G,IAAW2G,QACpBC,SAAUH,EAAMI,eAEZC,EATG,eASW9G,IAAWwC,UATtB,YASmCxC,IAAWI,KAT9C,uBAYDjF,EAAWjB,YAAO4M,EAAK,CAAE1M,KAAMkI,IAZ9B,SAciDvH,QAAQgM,IAAI,CAClE5L,EA7DN,IAAIJ,SAAQ,SAAAiM,GACV,OAAOC,YAAW,kBAAMD,MAAW,UA6C1B,0CAcEE,EAdF,EAcEA,eAAgBC,EAdlB,EAckBA,oBAKzB,EAAK3G,SAAS,CACZ0G,eAAgB,IAAIE,IAAJ,sBACXF,GADW,YAEX,EAAKpH,MAAMoH,kBAEhBC,oBAAqB,IAAIC,IAAJ,sBAChBD,GADgB,YAEhB,EAAKrH,MAAMqH,uBAEhBT,eAAe,IA5BV,kDA+BPzE,QAAQC,IAAR,MACA,EAAK1B,SAAS,CAAEkG,eAAe,IAhCxB,0DAzCQ,wDA6EnBH,aAAe,SAACD,GAA2B,IAArBe,IAAoB,yDACxC,EAAK7G,SAAS,CAAE8F,OAAM1D,WAAY,KAAM,WACtC,EAAK0E,aAAaD,GAClB,IAAME,EAAa,IAAIC,IAAI1M,OAAO2M,SAAS7I,MACrC8I,EAAgBC,IAAOrB,GAAMsB,OAAO,cAC1CL,EAAWM,aAAaC,IAAI,OAAQJ,GACpC5M,OAAOiN,QAAQC,aACb,CAAE1B,KAAMoB,GACR,GACAH,EAAWU,gBAtFE,EA2FnBC,WA3FmB,uCA2FN,+DAAA9M,EAAA,6DACTyK,EADS,EACTA,OADS,IACDM,kBADC,MACY,KADZ,MACkBgC,uBADlB,SAEXd,IAFW,iCAIX,EAAK7G,SAAS,CACZkB,MAAO,KACP0G,iBAAiB,EACjBhD,iBAAkBS,EAClBI,iBAAkBE,EAClBhD,gBAAiB,GACjBC,QAAS,KAGLd,EAAU,CACdqE,QAAS3G,IAAW2G,QACpBd,SACAM,cAGIW,EAnBK,eAmBS9G,IAAWwC,UAnBpB,YAmBiCxC,IAAWI,KAnB5C,uCAsByBlG,YAAO4M,EAAK,CAAE1M,KAAMkI,IAtB7C,gBAsBDc,EAtBC,EAsBDA,QAASa,EAtBR,EAsBQA,OAEbd,EAAkB,GAEtBC,EAAQe,SAAQ,SAAAX,GACVA,EAAOM,WAAW7H,OAAS,GAAKuH,EAAOM,WAAW,GAAK,IACzDX,EAAgBK,EAAO1F,IAAM0F,EAAOM,WAAW,OAInD,EAAKtD,SAAS,CAAE2C,gBAAiBA,EAAiBc,WAElD,EAAKzD,SAAS,CAAE4H,iBAAiB,EAAOhF,YAAW,WAC7CiE,GACFgB,WAAShB,SAAS,UAAW,CAC3BiB,SAAU,IACVC,QAAQ,EACRC,QAAS,QAKXL,GACF,EAAK3H,SAAS,CAAEoC,WAAY,KA7CrB,kDAgDTX,QAAQC,IAAR,MACA,EAAK1B,SAAS,CAAE4H,iBAAiB,EAAOhF,QAAS,KAjDxC,0DA3FM,wDAgJnBqF,cAhJmB,uCAgJH,mDAAArN,EAAA,6DAASyK,EAAT,EAASA,OAAUwB,IAAnB,iCACd,EAAK7G,SAAS,CACZkB,MAAO,KACP0G,iBAAiB,EACjBhD,iBAAkBS,EAClB1C,gBAAiB,GACjBC,QAAS,GACT6C,iBAAkB,OAGd3D,EAAU,CACduD,SACAc,QAAS3G,IAAW2G,SAGhBG,EAfQ,eAeM9G,IAAWwC,UAfjB,YAe8BxC,IAAWI,KAfzC,qCAkBiBlG,YAAO4M,EAAK,CAAE1M,KAAMkI,IAlBrC,gBAoBc,KAFlB0D,EAlBI,EAkBJA,YAEO/J,SACb,EAAKuE,SAAS,CAAEyF,iBAAkBD,EAAW,GAAGlI,KAChD,EAAKoK,WAAW,CAAErC,SAAQM,WAAYH,EAAW,GAAGlI,IAAMuJ,IAG5D,EAAK7G,SAAS,CAAEwF,eAAc,WACxBqB,GACFgB,WAAShB,SAAS,aAAc,CAC9BiB,SAAU,IACVC,QAAQ,EACRC,QAAS,QA9BH,kDAmCZvG,QAAQC,IAAR,MACA,EAAK1B,SAAS,CAAE4H,iBAAiB,EAAOhF,QAAS,KApCrC,0DAhJG,wDAwLnBkE,aAxLmB,sBAwLJ,kDAAAlM,EAAA,6DAAOiM,IAAP,iCACb,EAAK7G,SAAS,CACZkB,MAAO,KACPgH,mBAAmB,EACnBtD,iBAAkB,KAClBC,UAAW,GACXjC,QAAS,KAELd,EAAU,CACdqE,QAAS3G,IAAW2G,QACpBL,KAAM,EAAKxG,MAAMwG,KAAKsB,OAAO,eAGzBd,EAbO,eAaO9G,IAAWwC,UAblB,YAa+BxC,IAAWI,KAb1C,qCAgBmClG,YAAO4M,EAAK,CACxD1M,KAAMkI,IAjBG,gBAgBH+C,EAhBG,EAgBHA,UAAWsD,EAhBR,EAgBQA,iBAInB,EAAKnI,SAAS,CAAEkI,mBAAmB,EAAOrD,cAAa,WACrD,OAAIrF,IAAWsF,WAAatF,IAAWkG,sBACZ,IAArBb,EAAUpJ,YACZ,EAAKuE,SACH,CACEkB,OACGiH,GAAoB3I,IAAW4I,sBAC5B1H,EAASwB,EAAE,0CACXxB,EAASwB,EAAE,gDAEnB,WACE2F,WAAShB,SAAS,QAAS,CACzBiB,SAAU,IACVC,QAAQ,EACRC,QAAS,SAMjB,EAAKN,WACH,CACErC,OAAQR,EAAU,GAAGvH,GACrBqI,WAAYd,EAAU,GAAGW,WAAW,IAEtCqB,QAEF,EAAK7G,SAAS,CAAE4E,iBAAkBC,EAAU,GAAGvH,MAEtCkC,IAAWsF,UAAYtF,IAAWkG,uBAC3C,EAAKuC,cAAc,CAAE5C,OAAQR,EAAU,GAAGvH,IAAMuJ,QAChD,EAAK7G,SAAS,CAAE4E,iBAAkBC,EAAU,GAAGvH,WAI7CuJ,GACFgB,WAAShB,SAAS,YAAa,CAC7BiB,SAAU,IACVC,QAAQ,EACRC,QAAS,SA3DJ,kDAgEXvG,QAAQC,IAAR,MACA,EAAK1B,SAAS,CACZkI,mBAAmB,IAlEV,0DAxLI,EA2RnBG,WA3RmB,uCA2RN,WAAMtI,GAAN,qBAAAnF,EAAA,yDACXmF,EAAEuI,iBACF,EAAKtI,SAAS,CAAEoC,WAAY,QAEtBO,EAAkBvH,OAAOgB,KAAK,EAAKkD,MAAMqD,kBAE3BlH,QAAU,GANnB,uBAOT,EAAKuE,SACH,CACEkB,MAAOR,EAASwB,EAAE,iCAEpB,WACE2F,WAAShB,SAAS,QAAS,CACzBiB,SAAU,IACVC,QAAQ,EACRC,QAAS,QAfN,6BAsBN,EAAKO,qBAtBC,oDA0BLhJ,EAAO,EAAKiJ,QAAQC,QAAQC,WAE9BlJ,IAAWc,cAAed,IAAWmJ,eAA0B,KAATpJ,EA5B/C,wBA6BT,EAAKS,SACH,CACEkB,MAAO1B,IAAWoJ,uBAEpB,WACEf,WAAShB,SAAS,QAAS,CACzBiB,SAAU,IACVC,QAAQ,EACRC,QAAS,QArCN,kCA6CLlG,EAAU,CACdpC,QAASF,IAAWE,QACpB2F,OAAQ,EAAK/F,MAAMsF,iBACnBe,WAAY,EAAKrG,MAAMmG,iBACvB7C,QAASD,EAAgBzC,KAAI,SAAA5C,GAAE,MAAK,CAClCA,KACAuL,SAAU,EAAKvJ,MAAMqD,gBAAgBrF,OAEvCiC,KAAMA,GArDG,UAwDQ7F,YAAO,QAAD,OACf8F,IAAWwC,UADI,YACSxC,IAAWI,KADpB,0BAEvB,CAAEhG,KAAMkI,IA1DC,SAwDLhH,EAxDK,QA6DFmH,QACP3H,OAAO2M,SAAS7I,KAAOtD,EAAKgO,SAE5B,EAAK9I,SAAS,CAAEkB,MAAOpG,EAAKkE,QAASoD,WAAY,KAAM,WACrDyF,WAAShB,SAAS,QAAS,CACzBiB,SAAU,IACVC,QAAQ,EACRC,QAAS,QApEJ,4CA3RM,wDAqWnBe,mBAAqB,SAACC,EAAcH,GAClC,IAAMI,EAAkB,eACnB,EAAK3J,MAAMqD,iBAEZuG,SAASL,EAAU,KAAO,SACrBI,EAAmBD,GAE1BC,EAAmBD,GAAgBH,EAErC,EAAK7I,SAAS,CAAE2C,gBAAiBsG,KA9WhB,EAiXnBE,iBAjXmB,uCAiXA,WAAM/G,GAAN,SAAAxH,EAAA,0DACb,EAAK0E,MAAMmG,iBADE,gCAET,EAAKiC,WAAW,CACpBrC,OAAQ,EAAK/F,MAAMsF,iBACnBe,WAAY,EAAKrG,MAAMmG,mBAJV,kCAMN,EAAKnG,MAAMsF,iBANL,iCAOT,EAAKqD,cAAc,CAAE5C,OAAQ,EAAK/F,MAAMsF,mBAP/B,mCAQN,EAAKtF,MAAMwG,KARL,kCAST,EAAKgB,eATI,QAYjB,EAAK9G,SAAS,CAAEoC,eAZC,4CAjXA,wDAgYnBgH,oBAAsB,WACpB,OAAI5J,IAAWsF,SACNpE,EAASwB,EACd,yEAGKxB,EAASwB,EACd,4EAnYJiF,IAAOkC,aAAa,KAAM,CACxBC,KAAM,CACJC,IAAK,KAITpC,IAAOqC,OAAOhK,IAAWI,MAEzB,EAAK4I,QAAU/H,IAAMgJ,YAErB,EAAKnK,MAAQ,CACXoH,eAAgB,IAAIE,IAAJ,YAAYpH,IAAWkH,iBACvCZ,KACsB,OAApBtG,IAAWsG,KAAgBqB,IAAO3H,IAAWsG,KAAM,cAAgB,KACrE5E,MAAO,KACPyF,oBAAqB,IAAIC,IAAJ,YAAYpH,IAAWmH,sBAC5CT,eAAe,EACf0B,iBAAiB,EACjBM,mBAAmB,EACnBwB,oBAAoB,EACpB/G,gBAAiB,GACjBc,OAAQ,GACRmB,iBAAkB,KAClBhC,QAAS,GACTiC,UAAW,GACXW,WAAY,GACZC,iBAAkB,KAClBrD,WAAY,IA/BG,E,sDA+PnB,WACE,IACE,GAAyC,qBAA9B9H,OAAOqP,mBAAoC,CACpD,IADoD,EAC9CC,EAAY,GADkC,cAGjC5N,KAAKsD,MAAMsD,SAHsB,IAGpD,2BAAuC,CAAC,IAA/BI,EAA8B,QAErC,QAAYnE,IADA7C,KAAKsD,MAAMqD,gBAAgBK,EAAO1F,IAC9C,CAIA,IAAMiG,EAAM2F,SAASlN,KAAKsD,MAAMqD,gBAAgBK,EAAO1F,IAAK,IACxDiG,EAAM,GACRqG,EAAU9F,KAAK,CAAExG,GAAI0F,EAAO1F,GAAI2B,KAAM+D,EAAO/D,KAAMsE,IAAKA,MAXR,8BAepD,OAAOjJ,OAAOqP,mBAAmBnK,IAAWE,QAASkK,IAEvD,MAAO1I,GAGP,OAFAO,QAAQP,MAAMA,GACdW,MAAM,mCACC,EAGT,OAAO,I,oBAoHT,WACE,MAWI7F,KAAKsD,MAVPoH,EADF,EACEA,eACAC,EAFF,EAEEA,oBACAT,EAHF,EAGEA,cACAgC,EAJF,EAIEA,kBACAwB,EALF,EAKEA,mBACA/G,EANF,EAMEA,gBACAC,EAPF,EAOEA,QACAR,EARF,EAQEA,WACAqB,EATF,EASEA,OACAqC,EAVF,EAUEA,KAGF,OACE,cAAC,IAAM+D,SAAP,UACE,qBAAKtM,UAAU,MAAf,SACE,sBAAKA,UAAU,YAAf,UACE,qBAAKD,GAAG,cAAckB,MAAO,CAAEU,UAAW,GAAIC,aAAc,IAA5D,SACGuB,EAASwB,EAAE,iDAEd,sBAAK1D,MAAO,CAAEsL,SAAU,WAAY9M,MAAO,eAA3C,UACGkJ,GACC,qBACE1H,MAAO,CACLsL,SAAU,WACVC,OAAQ,IACRhF,QAAS,OACTiF,eAAgB,SAChBC,WAAY,SACZC,IAAK,EACLC,KAAM,EACNC,OAAQ,EACRC,MAAO,EACPC,gBAAiB,4BAXrB,SAcE,cAACC,EAAA,EAAD,CACEC,SAAU,KACVC,KAAM,GACNrH,MAAO,wBACP3E,SAAS,MAKf,cAAC,gCAAD,CACEiM,SAAO,EACPC,oBAAqB,kBACnBjE,EAAe+D,KAAO,EAClBtD,IAAOT,EAAe/G,SAASiL,OAAO/K,OACtCsH,OAENrB,KAAMA,EACN+E,aAAc7O,KAAK+J,aACnB+E,eAAgB,SAAAC,GAAC,OACdrE,EAAesE,IAAID,EAAE3D,OAAO,gBAE/B6D,aAAc,SAAAF,GAAC,QACXvL,IAAW0L,eAAiB1L,IAAWsF,WACzC6B,EAAoBqE,IAAID,EAAE3D,OAAO,gBAEnC+D,iBAAkB,SAAAJ,GAChB,OAAO,GAETK,iBAAkBpP,KAAKgK,SACvBqF,iBAAkBrP,KAAKgK,eAIzBkC,GACA,cAAC,EAAD,CACExD,YAAa1I,KAAKsD,MAAMwG,KACxBnB,SAAU3I,KAAKiM,cACfrD,iBAAkB5I,KAAKsD,MAAMsF,iBAC7BC,UAAW7I,KAAKsD,MAAMuF,UACtBJ,iBAAkBjF,IAAW4I,yBAI/BsB,GACA,cAAC,EAAD,CACElE,WAAYxJ,KAAKsD,MAAMkG,WACvBZ,iBAAkB5I,KAAKsD,MAAMsF,iBAC7Ba,iBAAkBzJ,KAAKsD,MAAMmG,iBAC7Bd,SAAU3I,KAAK0L,aAIlB1L,KAAKsD,MAAMwG,MACZtG,IAAWsF,UACXtF,IAAW0L,eACXvE,EAAoBqE,IAAIhP,KAAKsD,MAAMwG,KAAKsB,OAAO,eAC7C,qBACE7J,UAAU,eACViB,MAAO,CACL8M,YAAa,QACbC,YAAa,EACbC,WAAY,OACZvL,QAAS,GACTf,UAAW,GACXC,aAAc,GARlB,SAWE,sBACEoD,wBAAyB,CACvBC,OAAQ9B,EAASwB,EACf,qDACA,CACEuJ,KAAK,GAAD,OAAKnR,OAAO2M,SAASyE,SAArB,+BAAoD1P,KAAKsD,MAAMsF,yBAO7E,uBAAM+G,SAAU3P,KAAKqM,WAArB,UACE,eAAC,UAAD,CAASpJ,KAAK,UAAd,UACGmD,EAAW3G,OAAS,GACnB,sBACE8B,UAAU,mCACViB,MAAO,CAAEU,UAAW,GAAIC,aAAc,GAFxC,UAIGuB,EAASwB,EACR,qDAEF,oBAAI1D,MAAO,CAAEU,UAAW,GAAIC,aAAc,GAA1C,SACGiD,EAAWlC,KAAI,SAAA0L,GAAC,OACf,6BAAkBA,EAAE3M,MAAX2M,EAAE3M,WAIf,qBAAKT,MAAO,CAAEU,UAAW,IAAzB,SACGlD,KAAKoN,2BAKXpN,KAAKsD,MAAM4B,OAAS,cAAChH,EAAA,EAAD,CAAO8E,QAAShD,KAAKsD,MAAM4B,QAE7B,IAAlBuC,EAAOhI,OACN,cAAC,EAAD,CACEiH,aAAc1G,KAAK+M,mBACnBpG,gBAAiBA,EACjBC,QAASA,IAGX,cAAC,EAAD,CACEF,aAAc1G,KAAK+M,mBACnBpG,gBAAiBA,EACjBC,QAASA,EACTa,OAAQA,OAKbzH,KAAKsD,MAAMsD,QAAQnH,OAAS,GAAK,cAAC4D,EAAA,EAAD,CAAMhC,IAAKrB,KAAKwM,UAEjDhJ,IAAW4I,uBACV,cAACjH,EAAA,EAAD,CAAeC,SAAUpF,KAAKmN,mBAG/BnN,KAAKsD,MAAMsD,QAAQnH,OAAS,GAC3B,cAAC,IAAD,CACE8C,WAAS,EACTC,MAAO,CAAEU,UAAW,IACpBb,KAAK,SAHP,SAKGqC,EAASwB,EAAE,oC,GArjBdzB,IAAM7B,WAikBTgH","file":"static/js/14.98b37e66.chunk.js","sourcesContent":["/*\r\n* Use this implementation to fetch data from the server\r\n* You can set rejectDebug = true in the console to test your error handling\r\n*/\r\n\r\nconst client = (endpoint, {body, ...customConfig} = {}) => {\r\n const headers = {'Content-Type': 'application/json'}\r\n const config = {\r\n method: body ? 'POST' : 'GET',\r\n credentials: \"same-origin\", // has to be set in order to use cookies: https://github.com/github/fetch#sending-cookies\r\n ...customConfig,\r\n headers: {\r\n ...headers,\r\n ...customConfig.headers,\r\n },\r\n }\r\n\r\n if (body) {\r\n if (typeof body !== \"object\") throw new Error(\"Body muss ein Objekt sein\");\r\n\r\n config.body = JSON.stringify(body)\r\n }\r\n\r\n const rejectDebug = window.rejectDebug || false;\r\n\r\n if (rejectDebug) {\r\n return Promise.reject(\"Rejecting for debugging\");\r\n }\r\n\r\n return window\r\n .fetch(endpoint, config)\r\n .then(async response => {\r\n const data = await response.json()\r\n if (response.ok) {\r\n return data\r\n } else {\r\n return Promise.reject(data)\r\n }\r\n })\r\n}\r\n\r\nexport default client;\r\n","var _style, _g;\n\nvar _excluded = [\"title\", \"titleId\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgSpinner(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, _excluded);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: 24,\n height: 24,\n stroke: \"#fff\",\n viewBox: \"0 0 24 24\",\n xmlns: \"http://www.w3.org/2000/svg\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _style || (_style = /*#__PURE__*/React.createElement(\"style\", null, \".spinner_V8m1{transform-origin:center;animation:spinner_zKoa 2s linear infinite}.spinner_V8m1 circle{stroke-linecap:round;animation:spinner_YpZS 1.5s ease-in-out infinite}@keyframes spinner_zKoa{100%{transform:rotate(360deg)}}@keyframes spinner_YpZS{0%{stroke-dasharray:0 150;stroke-dashoffset:0}47.5%{stroke-dasharray:42 150;stroke-dashoffset:-16}95%,100%{stroke-dasharray:42 150;stroke-dashoffset:-59}}\")), _g || (_g = /*#__PURE__*/React.createElement(\"g\", {\n className: \"spinner_V8m1\"\n }, /*#__PURE__*/React.createElement(\"circle\", {\n cx: 12,\n cy: 12,\n r: 9.5,\n fill: \"none\",\n strokeWidth: 3\n }))));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgSpinner);\nexport default __webpack_public_path__ + \"static/media/spinner.71395300.svg\";\nexport { ForwardRef as ReactComponent };","import { ReactComponent as ReactSpinner } from './spinner.svg';\r\n\r\nconst Spinner = () => {\r\n return \r\n}\r\n\r\nexport default Spinner;","import React from \"react\";\r\nimport cx from \"classnames\";\r\nimport Spinner from \"../../Components/Spinner\";\r\nimport \"./styles.css\";\r\n\r\nconst VARIANTS = {\r\n PRIMARY: \"primary\",\r\n SECONDARY: \"secondary\"\r\n};\r\n\r\nconst Button = ({\r\n children,\r\n variant,\r\n as = \"button\",\r\n href = null,\r\n type = \"button\",\r\n onClick,\r\n fullWidth = false,\r\n style,\r\n loading,\r\n disabled = false\r\n}) => {\r\n const classes = cx(\"button-default\", {\r\n \"button-primary\": variant === VARIANTS.PRIMARY,\r\n \"button-secondary\": variant === VARIANTS.SECONDARY,\r\n \"button-fullwidth\": fullWidth\r\n });\r\n\r\n const Component = as;\r\n\r\n return (\r\n \r\n {loading && (\r\n \r\n \r\n \r\n )}\r\n \r\n {children}\r\n \r\n \r\n );\r\n};\r\n\r\nconst PrimaryButton = ({ children, ...props }) => (\r\n \r\n);\r\n\r\nconst SecondaryButton = ({ children, ...props }) => (\r\n \r\n);\r\n\r\nconst PrimaryLinkButton = ({ children, ...props }) => (\r\n \r\n);\r\n\r\nconst SecondaryLinkButton = ({ children, ...props }) => (\r\n \r\n);\r\n\r\nexport {\r\n PrimaryButton,\r\n SecondaryButton,\r\n PrimaryLinkButton,\r\n SecondaryLinkButton\r\n};\r\n","import React from \"react\";\r\nimport { Element } from \"react-scroll\";\r\n\r\nconst Error = ({ message }) => {\r\n return (\r\n \r\n \r\n {message}\r\n
\r\n \r\n );\r\n}\r\n\r\nexport default Error;\r\n","// EN is already included\r\nimport \"moment/locale/de\";\r\nimport \"moment/locale/fr\";\r\nimport \"moment/locale/es\";\r\nimport \"moment/locale/it\";\r\nimport \"moment/locale/pt\";\r\n","import egumaReact from \"egumaReact\"; // added in externals in webpack\r\nimport React from \"react\";\r\n\r\nclass Note extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n\r\n this.state = {\r\n note: egumaReact.noteValue\r\n };\r\n }\r\n\r\n getNote() {\r\n return this.state.note;\r\n }\r\n\r\n renderInput() {\r\n // elmira / Fine-Dining-Erlebnis\r\n if (egumaReact.eventId === \"6634c62a973b9316789d21a6\") {\r\n var values = [\r\n \"I already knew it\",\r\n \"Recommendation from friends/acquaintances\",\r\n \"Instagram\",\r\n \"TripAdvisor\",\r\n \"LinkedIn\",\r\n \"Newspaper article / Blog\",\r\n \"Google\",\r\n \"Guide Michelin\",\r\n \"Gault&Millau\",\r\n \"Other\"\r\n ];\r\n\r\n if (egumaReact.lang === \"de\") {\r\n values = [\r\n \"Kannte ich bereits\",\r\n \"Empfehlung durch Freunde/Bekannte\",\r\n \"Instagram\",\r\n \"TripAdvisor\",\r\n \"LinkedIn\",\r\n \"Zeitungsartikel / Blog\",\r\n \"Google\",\r\n \"Guide Michelin\",\r\n \"Gault&Millau\",\r\n \"Sonstiges\"\r\n ];\r\n } else if (egumaReact.lang === \"fr\") {\r\n values = [\r\n \"Je connaissais déjà\",\r\n \"Recommandation de connaissances\",\r\n \"Instagram\",\r\n \"TripAdvisor\",\r\n \"LinkedIn\",\r\n \"Article de journal / Blog\",\r\n \"Google\",\r\n \"Guide Michelin\",\r\n \"Gault&Millau\",\r\n \"Autre\"\r\n ];\r\n }\r\n\r\n return (\r\n \r\n );\r\n }\r\n\r\n return (\r\n \r\n );\r\n }\r\n\r\n render() {\r\n if (!egumaReact.noteEnabled) {\r\n return
;\r\n }\r\n\r\n return (\r\n \r\n
\r\n {egumaReact.noteFieldName}\r\n
\r\n {this.renderInput()}\r\n
\r\n );\r\n }\r\n}\r\n\r\nexport default Note;\r\n","import React, { useReducer } from \"react\";\r\nimport egumaReact from \"egumaReact\"; // added in externals in webpack\r\nimport { SecondaryButton } from \"../Button\";\r\nimport Polyglot from \"node-polyglot\";\r\nimport client from \"../../Lib/client\";\r\nconst polyglot = new Polyglot({ phrases: egumaReact.translations });\r\n\r\nconst actions = {\r\n SET_PROMOCODE: \"setPromocode\",\r\n RESET_PROMOCODE: \"resetPromocode\",\r\n SET_ERROR: \"setError\",\r\n RESET_ERROR: \"resetError\"\r\n};\r\n\r\nconst reducer = (state, action) => {\r\n switch (action.type) {\r\n case actions.SET_PROMOCODE:\r\n return { ...state, promoCode: action.promoCode };\r\n case actions.RESET_PROMOCODE:\r\n return { ...state, promoCode: \"\" };\r\n case actions.SET_ERROR:\r\n return { ...state, error: action.error };\r\n case actions.RESET_ERROR:\r\n return { ...state, error: false };\r\n default:\r\n throw new Error(\"Action not implemented\");\r\n }\r\n};\r\n\r\nconst PromocodeForm = ({ callback = () => {}, selectedDate = null }) => {\r\n const [state, dispatch] = useReducer(reducer, {\r\n promoCode: \"\",\r\n error: false\r\n });\r\n\r\n const { error, promoCode } = state;\r\n\r\n const addPromocode = async () => {\r\n try {\r\n console.log(selectedDate);\r\n\r\n // Bergbahnen Meiringen-Hasliberg\r\n // 1-Tagespass Ski Winter 2023/2024\r\n // The promocode is only valid for some days.\r\n if (\r\n egumaReact.eventId === \"5dd287746588552984d8e8eb\" &&\r\n selectedDate !== null &&\r\n selectedDate >= Date.parse(\"2024-01-27\") &&\r\n selectedDate < Date.parse(\"2024-02-26\")\r\n ) {\r\n alert(\"Der Promo-Code ist für das gewählte Datum nicht gültig.\");\r\n return;\r\n }\r\n\r\n const payload = {\r\n eventId: egumaReact.eventId,\r\n code: promoCode\r\n };\r\n\r\n const data = await client(\r\n `/api/${egumaReact.mandantId}/${egumaReact.lang}/addpromocode`,\r\n { body: payload }\r\n );\r\n\r\n if (!data.success) {\r\n dispatch({\r\n type: actions.SET_ERROR,\r\n error: data.message || polyglot.t(data.messageLabel)\r\n });\r\n return;\r\n }\r\n\r\n dispatch({ type: actions.RESET_PROMOCODE });\r\n\r\n callback(data.newTickets);\r\n } catch (e) {\r\n console.log(e);\r\n dispatch({\r\n type: actions.SET_ERROR,\r\n error: polyglot.t(\"Promocode.Message.ErrorAddingPromocode\")\r\n });\r\n }\r\n };\r\n\r\n return (\r\n \r\n
\r\n
\r\n {polyglot.t(\"Promocode.Message.DoYouHaveAPromocode\")}\r\n
\r\n
\r\n
\r\n
\r\n \r\n dispatch({\r\n type: actions.SET_PROMOCODE,\r\n promoCode: e.target.value\r\n })\r\n }\r\n autoComplete=\"off\"\r\n />\r\n
\r\n
\r\n \r\n {polyglot.t(\"Shop.Action.ApplyPromocode\")}\r\n \r\n
\r\n
\r\n {error && (\r\n
\r\n )}\r\n
\r\n );\r\n};\r\n\r\nexport default PromocodeForm;\r\n","import React from \"react\";\r\nimport Polyglot from \"node-polyglot\";\r\nimport egumaReact from \"egumaReact\"; // added in externals in webpack\r\nconst polyglot = new Polyglot({ phrases: egumaReact.translations });\r\n\r\nfunction Tickets({ handleChange, selectedTickets, tickets }) {\r\n if (tickets.length === 0) {\r\n return null;\r\n }\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n {polyglot.t(\"Common.Category\")}\r\n \r\n \r\n | \r\n \r\n \r\n {polyglot.t(\"Common.Price\")}\r\n \r\n {\" \"}\r\n {polyglot.t(\"Bill.VatIncluded\")}\r\n \r\n \r\n | \r\n \r\n {polyglot.t(\"Common.Quantity\")}\r\n | \r\n
\r\n \r\n \r\n {tickets.map((ticket) => (\r\n \r\n \r\n \r\n \r\n | \r\n\r\n \r\n \r\n {ticket.priceFormatted}\r\n \r\n | \r\n\r\n \r\n {ticket.isSoldOut ? (\r\n \r\n {polyglot.t(\"Common.SoldOut\")}\r\n \r\n ) : (\r\n \r\n )}\r\n | \r\n
\r\n ))}\r\n \r\n
\r\n );\r\n}\r\n\r\nexport default Tickets;\r\n","import egumaReact from \"egumaReact\"; // added in externals in webpack\r\nimport React, { Fragment } from \"react\";\r\nimport Polyglot from \"node-polyglot\";\r\nimport Accordion from \"react-bootstrap/Accordion\";\r\nimport Card from \"react-bootstrap/Card\";\r\nimport \"./styles.css\";\r\n\r\nconst polyglot = new Polyglot({ phrases: egumaReact.translations });\r\n\r\nconst mapTicketstoGroups = (tickets, groups) => {\r\n const matchedGroups = {};\r\n groups.forEach(g => (matchedGroups[g.id] = { group: g, tickets: [] }));\r\n tickets.forEach(t => matchedGroups[t.group][\"tickets\"].push(t));\r\n return Object.values(matchedGroups);\r\n};\r\n\r\nconst TicketsAccordion = ({\r\n handleChange,\r\n selectedTickets,\r\n tickets,\r\n groups\r\n}) => {\r\n if (tickets.length === 0) {\r\n return null;\r\n }\r\n\r\n const matchedGroups = mapTicketstoGroups(tickets, groups);\r\n\r\n return (\r\n \r\n \r\n {polyglot.t(\"Common.Selection\")}\r\n
\r\n {matchedGroups.map(\r\n g =>\r\n g.tickets.length > 0 && (\r\n \r\n
\r\n \r\n {\" \"}\r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n {polyglot.t(\"Common.Category\")}\r\n \r\n \r\n | \r\n \r\n \r\n {polyglot.t(\"Common.Price\")}\r\n \r\n {\" \"}\r\n {polyglot.t(\"Bill.VatIncluded\")}\r\n \r\n \r\n | \r\n \r\n {polyglot.t(\"Common.Quantity\")}\r\n | \r\n
\r\n \r\n \r\n {g.tickets.map(ticket => (\r\n \r\n \r\n \r\n \r\n | \r\n\r\n \r\n \r\n {ticket.priceFormatted}\r\n \r\n | \r\n\r\n \r\n {ticket.isSoldOut ? (\r\n \r\n \r\n {polyglot.t(\"Common.SoldOut\")}\r\n \r\n \r\n ) : (\r\n \r\n )}\r\n | \r\n
\r\n ))}\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n )\r\n )}\r\n \r\n );\r\n};\r\n\r\nexport default TicketsAccordion;\r\n","import egumaReact from \"egumaReact\"; // added in externals in webpack\r\nimport { Element } from \"react-scroll\";\r\nimport React, { Fragment } from \"react\";\r\n\r\nimport Polyglot from \"node-polyglot\";\r\nconst polyglot = new Polyglot({ phrases: egumaReact.translations });\r\n\r\nfunction TimeSlots({\r\n hasPromocodeForm,\r\n currentDate,\r\n onSelect,\r\n selectedTimeSlot,\r\n timeSlots\r\n}) {\r\n if (!currentDate || egumaReact.isAllDay) {\r\n return null;\r\n }\r\n\r\n if (!timeSlots || timeSlots.length === 0) {\r\n return (\r\n \r\n \r\n {hasPromocodeForm\r\n ? polyglot.t(\"Shop.Error.NoTicketsAvailablePromocode\")\r\n : polyglot.t(\"Shop.Error.NoTicketsAvailable\")}\r\n
\r\n \r\n );\r\n }\r\n\r\n return (\r\n \r\n \r\n
\r\n {polyglot.t(\"Backend.Ticketing.Calendar.PleaseChooseTime\")}\r\n
\r\n {timeSlots.map(\r\n ({ id, time, enabled, isFullyBooked, capacity }, index) => (\r\n
(enabled ? onSelect({ slotId: id }) : null)}\r\n >\r\n
\r\n {time}\r\n {egumaReact.showAvailability && (\r\n
\r\n
\r\n \r\n {enabled\r\n ? polyglot.t(\r\n \"Shop.Calendar.TicketAmountAvailable\",\r\n {\r\n capacity\r\n }\r\n )\r\n : isFullyBooked\r\n ? polyglot.t(\"Common.SoldOut\")\r\n : polyglot.t(\"Common.SaleClosed\")}\r\n
\r\n \r\n )}\r\n
\r\n
\r\n )\r\n )}\r\n
\r\n
\r\n
\r\n \r\n );\r\n}\r\n\r\nexport default TimeSlots;\r\n","import egumaReact from \"egumaReact\"; // added in externals in webpack\r\nimport { Element } from \"react-scroll\";\r\nimport React, { Fragment } from \"react\";\r\n\r\nimport Polyglot from \"node-polyglot\";\r\nconst polyglot = new Polyglot({ phrases: egumaReact.translations });\r\n\r\nfunction Capacities({ capacities, selectedCapacity, selectedTimeSlot, onSelect }) {\r\n if (!selectedTimeSlot || !egumaReact.hasMultipleCapacities) {\r\n return null;\r\n }\r\n\r\n return (\r\n \r\n \r\n
\r\n {polyglot.t(\"Backend.Ticketing.Calendar.PleaseChooseCapacity\")}\r\n
\r\n {capacities.map(({ id, enabled, title, capacity }, index) => (\r\n
(enabled ? onSelect({ slotId: selectedTimeSlot, capacityId: id }) : null)}\r\n >\r\n
\r\n {title}\r\n {egumaReact.showAvailability && (\r\n
\r\n
\r\n \r\n {enabled\r\n ? polyglot.t(\"Shop.Calendar.TicketAmountAvailable\", {\r\n capacity\r\n })\r\n : polyglot.t(\"Common.SoldOut\")}\r\n
\r\n \r\n )}\r\n
\r\n
\r\n ))}\r\n
\r\n
\r\n
\r\n \r\n );\r\n}\r\n\r\nexport default Capacities;\r\n","import egumaReact from \"egumaReact\"; // added in externals in webpack\r\nimport React from \"react\";\r\nimport { DayPickerSingleDateController } from \"react-dates\";\r\n\r\nimport { Element } from \"react-scroll\";\r\nimport Error from \"../Components/Error\";\r\n\r\nimport moment from \"moment\";\r\nimport \"../Lib/moment-locales\";\r\n\r\nimport \"react-dates/initialize\";\r\nimport \"react-dates/lib/css/_datepicker.css\";\r\nimport \"./react_dates_overrides.css\";\r\nimport { scroller } from \"react-scroll\";\r\nimport { DotLoader } from \"react-spinners\";\r\nimport Tickets from \"./Tickets\";\r\nimport TicketsAccordion from \"./TicketsAccordion\";\r\nimport TimeSlots from \"./TimeSlots\";\r\nimport Capacities from \"./Capacities\";\r\nimport Note from \"../Components/Note\";\r\n\r\nimport Polyglot from \"node-polyglot\";\r\nimport PromocodeForm from \"../Components/PromocodeForm\";\r\nimport { PrimaryButton } from \"../Components/Button\";\r\nimport client from \"../Lib/client\";\r\nconst polyglot = new Polyglot({ phrases: egumaReact.translations });\r\n\r\nconst delay = () =>\r\n new Promise(resolve => {\r\n return setTimeout(() => resolve(), 500);\r\n });\r\n\r\nclass App extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n\r\n // display \"monday\" as first day of week for en locale\r\n moment.updateLocale(\"en\", {\r\n week: {\r\n dow: 1\r\n }\r\n });\r\n\r\n moment.locale(egumaReact.lang);\r\n\r\n this.refNote = React.createRef();\r\n\r\n this.state = {\r\n availableDates: new Set([...egumaReact.availableDates]),\r\n date:\r\n egumaReact.date !== null ? moment(egumaReact.date, \"DD-MM-YYYY\") : null,\r\n error: null,\r\n entirelyBookedDates: new Set([...egumaReact.entirelyBookedDates]),\r\n fetchingDates: false,\r\n fetchingTickets: false,\r\n fetchingTimeSlots: false,\r\n fetchingCapacities: false,\r\n selectedTickets: {},\r\n groups: [],\r\n selectedTimeSlot: null,\r\n tickets: [],\r\n timeSlots: [],\r\n capacities: [],\r\n selectedCapacity: null,\r\n newTickets: []\r\n };\r\n }\r\n\r\n componentDidMount = () => {\r\n if (this.state.date !== null) {\r\n this.onChangeDate(this.state.date, false);\r\n }\r\n };\r\n\r\n getDates = async month => {\r\n this.setState({\r\n fetchingDates: true\r\n });\r\n\r\n const payload = {\r\n shortId: egumaReact.shortId,\r\n dateTime: month.toISOString()\r\n };\r\n const url = `/api/${egumaReact.mandantId}/${egumaReact.lang}/get_dates`;\r\n\r\n try {\r\n const response = client(url, { body: payload });\r\n\r\n const [{ availableDates, entirelyBookedDates }] = await Promise.all([\r\n response,\r\n delay()\r\n ]);\r\n\r\n this.setState({\r\n availableDates: new Set([\r\n ...availableDates,\r\n ...this.state.availableDates\r\n ]),\r\n entirelyBookedDates: new Set([\r\n ...entirelyBookedDates,\r\n ...this.state.entirelyBookedDates\r\n ]),\r\n fetchingDates: false\r\n });\r\n } catch (error) {\r\n console.log(error);\r\n this.setState({ fetchingDates: false });\r\n }\r\n };\r\n\r\n onChangeDate = (date, scrollTo = true) => {\r\n this.setState({ date, newTickets: [] }, () => {\r\n this.getTimeSlots(scrollTo);\r\n const updatedUrl = new URL(window.location.href);\r\n const formattedDate = moment(date).format(\"DD-MM-YYYY\");\r\n updatedUrl.searchParams.set(\"date\", formattedDate);\r\n window.history.replaceState(\r\n { date: formattedDate },\r\n \"\",\r\n updatedUrl.toString()\r\n );\r\n });\r\n };\r\n\r\n getTickets = async (\r\n { slotId, capacityId = null, resetNewTickets = true },\r\n scrollTo = true\r\n ) => {\r\n this.setState({\r\n error: null,\r\n fetchingTickets: true,\r\n selectedTimeSlot: slotId,\r\n selectedCapacity: capacityId,\r\n selectedTickets: {},\r\n tickets: []\r\n });\r\n\r\n const payload = {\r\n shortId: egumaReact.shortId,\r\n slotId,\r\n capacityId\r\n };\r\n\r\n const url = `/api/${egumaReact.mandantId}/${egumaReact.lang}/get_ticket_types`;\r\n\r\n try {\r\n const { tickets, groups } = await client(url, { body: payload });\r\n\r\n var selectedTickets = {};\r\n\r\n tickets.forEach(ticket => {\r\n if (ticket.quantities.length > 0 && ticket.quantities[0] > 0) {\r\n selectedTickets[ticket.id] = ticket.quantities[0];\r\n }\r\n });\r\n\r\n this.setState({ selectedTickets: selectedTickets, groups });\r\n\r\n this.setState({ fetchingTickets: false, tickets }, () => {\r\n if (scrollTo) {\r\n scroller.scrollTo(\"tickets\", {\r\n duration: 300,\r\n smooth: true,\r\n offset: -20\r\n });\r\n }\r\n });\r\n\r\n if (resetNewTickets) {\r\n this.setState({ newTickets: [] });\r\n }\r\n } catch (error) {\r\n console.log(error);\r\n this.setState({ fetchingTickets: false, tickets: [] });\r\n }\r\n };\r\n\r\n getCapacities = async ({ slotId }, scrollTo = true) => {\r\n this.setState({\r\n error: null,\r\n fetchingTickets: true,\r\n selectedTimeSlot: slotId,\r\n selectedTickets: {},\r\n tickets: [],\r\n selectedCapacity: null\r\n });\r\n\r\n const payload = {\r\n slotId,\r\n shortId: egumaReact.shortId\r\n };\r\n\r\n const url = `/api/${egumaReact.mandantId}/${egumaReact.lang}/get_capacities`;\r\n\r\n try {\r\n const { capacities } = await client(url, { body: payload });\r\n\r\n if (capacities.length === 1) {\r\n this.setState({ selectedCapacity: capacities[0].id });\r\n this.getTickets({ slotId, capacityId: capacities[0].id }, scrollTo);\r\n }\r\n\r\n this.setState({ capacities }, () => {\r\n if (scrollTo) {\r\n scroller.scrollTo(\"capacities\", {\r\n duration: 300,\r\n smooth: true,\r\n offset: -20\r\n });\r\n }\r\n });\r\n } catch (error) {\r\n console.log(error);\r\n this.setState({ fetchingTickets: false, tickets: [] });\r\n }\r\n };\r\n\r\n getTimeSlots = async (scrollTo = true) => {\r\n this.setState({\r\n error: null,\r\n fetchingTimeSlots: true,\r\n selectedTimeSlot: null,\r\n timeSlots: [],\r\n tickets: []\r\n });\r\n const payload = {\r\n shortId: egumaReact.shortId,\r\n date: this.state.date.format(\"YYYY-MM-DD\")\r\n };\r\n\r\n const url = `/api/${egumaReact.mandantId}/${egumaReact.lang}/get_time_slots`;\r\n\r\n try {\r\n const { timeSlots, isPurchaseClosed } = await client(url, {\r\n body: payload\r\n });\r\n\r\n this.setState({ fetchingTimeSlots: false, timeSlots }, () => {\r\n if (egumaReact.isAllDay && !egumaReact.hasMultipleCapacities) {\r\n if (timeSlots.length === 0) {\r\n this.setState(\r\n {\r\n error:\r\n !isPurchaseClosed && egumaReact.userCanEnterPromocode\r\n ? polyglot.t(\"Shop.Error.NoTicketsAvailablePromocode\")\r\n : polyglot.t(\"Shop.Calendar.NoTicketsAvailableForThisDay\")\r\n },\r\n () => {\r\n scroller.scrollTo(\"error\", {\r\n duration: 300,\r\n smooth: true,\r\n offset: -20\r\n });\r\n }\r\n );\r\n return;\r\n }\r\n this.getTickets(\r\n {\r\n slotId: timeSlots[0].id,\r\n capacityId: timeSlots[0].capacities[0]\r\n },\r\n scrollTo\r\n );\r\n this.setState({ selectedTimeSlot: timeSlots[0].id });\r\n return;\r\n } else if (egumaReact.isAllDay && egumaReact.hasMultipleCapacities) {\r\n this.getCapacities({ slotId: timeSlots[0].id }, scrollTo);\r\n this.setState({ selectedTimeSlot: timeSlots[0].id });\r\n return;\r\n }\r\n\r\n if (scrollTo) {\r\n scroller.scrollTo(\"timeSlots\", {\r\n duration: 300,\r\n smooth: true,\r\n offset: -20\r\n });\r\n }\r\n });\r\n } catch (error) {\r\n console.log(error);\r\n this.setState({\r\n fetchingTimeSlots: false\r\n });\r\n }\r\n };\r\n\r\n runCustomValidator() {\r\n try {\r\n if (typeof window.onCalendarValidate !== \"undefined\") {\r\n const lineItems = [];\r\n\r\n for (let ticket of this.state.tickets) {\r\n const sel = this.state.selectedTickets[ticket.id];\r\n if (sel === undefined) {\r\n continue;\r\n }\r\n\r\n const qty = parseInt(this.state.selectedTickets[ticket.id], 10);\r\n if (qty > 0) {\r\n lineItems.push({ id: ticket.id, name: ticket.name, qty: qty });\r\n }\r\n }\r\n\r\n return window.onCalendarValidate(egumaReact.eventId, lineItems);\r\n }\r\n } catch (error) {\r\n console.error(error);\r\n alert(\"Es ist ein Fehler aufgetreten.\");\r\n return false;\r\n }\r\n\r\n return true;\r\n }\r\n\r\n onContinue = async e => {\r\n e.preventDefault();\r\n this.setState({ newTickets: [] });\r\n\r\n const selectedTickets = Object.keys(this.state.selectedTickets);\r\n\r\n if (selectedTickets.length <= 0) {\r\n this.setState(\r\n {\r\n error: polyglot.t(\"Shop.Error.NoTicketSelected\")\r\n },\r\n () => {\r\n scroller.scrollTo(\"error\", {\r\n duration: 300,\r\n smooth: true,\r\n offset: -20\r\n });\r\n }\r\n );\r\n return;\r\n }\r\n\r\n if (!this.runCustomValidator()) {\r\n return;\r\n }\r\n\r\n const note = this.refNote.current.getNote();\r\n\r\n if (egumaReact.noteEnabled && egumaReact.noteMandatory && note === \"\") {\r\n this.setState(\r\n {\r\n error: egumaReact.noteMandatoryMessage\r\n },\r\n () => {\r\n scroller.scrollTo(\"error\", {\r\n duration: 300,\r\n smooth: true,\r\n offset: -20\r\n });\r\n }\r\n );\r\n\r\n return;\r\n }\r\n\r\n const payload = {\r\n eventId: egumaReact.eventId,\r\n slotId: this.state.selectedTimeSlot,\r\n capacityId: this.state.selectedCapacity,\r\n tickets: selectedTickets.map(id => ({\r\n id,\r\n quantity: this.state.selectedTickets[id]\r\n })),\r\n note: note\r\n };\r\n\r\n const data = await client(\r\n `/api/${egumaReact.mandantId}/${egumaReact.lang}/add_time_slot_tickets`,\r\n { body: payload }\r\n );\r\n\r\n if (data.success) {\r\n window.location.href = data.redirect;\r\n } else {\r\n this.setState({ error: data.message, newTickets: [] }, () => {\r\n scroller.scrollTo(\"error\", {\r\n duration: 300,\r\n smooth: true,\r\n offset: -20\r\n });\r\n });\r\n }\r\n };\r\n\r\n onTicketTypeChange = (ticketTypeId, quantity) => {\r\n const newSelectedTickets = {\r\n ...this.state.selectedTickets\r\n };\r\n if (parseInt(quantity, 10) <= 0) {\r\n delete newSelectedTickets[ticketTypeId];\r\n } else {\r\n newSelectedTickets[ticketTypeId] = quantity;\r\n }\r\n this.setState({ selectedTickets: newSelectedTickets });\r\n };\r\n\r\n appliedPromocode = async newTickets => {\r\n if (this.state.selectedCapacity) {\r\n await this.getTickets({\r\n slotId: this.state.selectedTimeSlot,\r\n capacityId: this.state.selectedCapacity\r\n });\r\n } else if (this.state.selectedTimeSlot) {\r\n await this.getCapacities({ slotId: this.state.selectedTimeSlot });\r\n } else if (this.state.date) {\r\n await this.getTimeSlots();\r\n }\r\n\r\n this.setState({ newTickets });\r\n };\r\n\r\n getPromocodeMessage = () => {\r\n if (egumaReact.isAllDay) {\r\n return polyglot.t(\r\n \"Core.Promocode.YouHaveUnlockedFollowingCategories.Hint.CalendarAllDay\"\r\n );\r\n } else {\r\n return polyglot.t(\r\n \"Core.Promocode.YouHaveUnlockedFollowingCategories.Hint.CalendarTimeSlot\"\r\n );\r\n }\r\n };\r\n\r\n render() {\r\n const {\r\n availableDates,\r\n entirelyBookedDates,\r\n fetchingDates,\r\n fetchingTimeSlots,\r\n fetchingCapacities,\r\n selectedTickets,\r\n tickets,\r\n newTickets,\r\n groups,\r\n date\r\n } = this.state;\r\n\r\n return (\r\n \r\n \r\n
\r\n
\r\n {polyglot.t(\"Backend.Ticketing.Calendar.PleaseChooseDate\")}\r\n
\r\n
\r\n {fetchingDates && (\r\n
\r\n \r\n
\r\n )}\r\n\r\n
\r\n availableDates.size > 0\r\n ? moment(availableDates.values().next().value)\r\n : moment()\r\n }\r\n date={date}\r\n onDateChange={this.onChangeDate}\r\n isOutsideRange={d =>\r\n !availableDates.has(d.format(\"YYYY-MM-DD\"))\r\n }\r\n isDayBlocked={d =>\r\n !(egumaReact.isWaitingList && egumaReact.isAllDay) &&\r\n entirelyBookedDates.has(d.format(\"YYYY-MM-DD\"))\r\n }\r\n isDayHighlighted={d => {\r\n return false;\r\n }}\r\n onNextMonthClick={this.getDates}\r\n onPrevMonthClick={this.getDates}\r\n />\r\n \r\n\r\n {!fetchingTimeSlots && (\r\n
\r\n )}\r\n\r\n {!fetchingCapacities && (\r\n
\r\n )}\r\n\r\n {this.state.date &&\r\n egumaReact.isAllDay &&\r\n egumaReact.isWaitingList &&\r\n entirelyBookedDates.has(this.state.date.format(\"YYYY-MM-DD\")) ? (\r\n
\r\n \r\n
\r\n ) : (\r\n
\r\n )}\r\n
\r\n
\r\n \r\n );\r\n }\r\n}\r\n\r\nexport default App;\r\n"],"sourceRoot":""}