{"version":3,"file":"js/incomes_register.08dafa07.js","mappings":"sFAAA,IAAIA,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAO,CAACE,WAAW,CAAC,CAACC,KAAK,oBAAoBC,QAAQ,sBAAsBC,MAAM,CAAGC,iBAAkBV,EAAIU,kBAAoBC,WAAW,2CAA2CC,YAAY,eAAeC,MAAM,CAAC,OAAS,MAAM,UAAU,eAAe,GAAKb,EAAIc,GAAG,KAAOd,EAAIO,MAAMQ,GAAG,CAAC,OAAS,SAASC,GAAgC,OAAxBA,EAAOC,iBAAwBjB,EAAIkB,SAASlB,EAAImB,MAAM,IAAI,CAAEnB,EAAa,UAAEI,EAAG,MAAM,CAACQ,YAAY,sBAAsBC,MAAM,CAAC,IAAM,eAAe,UAAU,qBAAqB,YAAcb,EAAIoB,OAAO,0BAA0B,aAAapB,EAAIoB,OAAO,4BAA4B,CAACpB,EAAIqB,GAAG,IAAIrB,EAAIsB,GAAGtB,EAAIoB,OAAO,2BAA2B,OAAOpB,EAAIuB,KAAKnB,EAAG,QAAQ,CAACE,WAAW,CAAC,CAACC,KAAK,QAAQC,QAAQ,UAAUC,MAAOT,EAAS,MAAEW,WAAW,UAAUa,IAAI,QAAQZ,YAAY,sBAAsBC,MAAM,CAAC,KAAO,OAAO,YAAeb,EAAIyB,kBAA4D,GAAxCzB,EAAIoB,OAAO,2BAAgC,aAAapB,EAAIoB,OAAO,2BAA2B,4BAA6BpB,EAAI0B,kBAAoB,gBAAiB,0BAA0B1B,EAAI2B,SAAS,UAAU,eAAeC,SAAS,CAAC,MAAS5B,EAAS,OAAGe,GAAG,CAAC,MAAQ,CAAC,SAASC,GAAWA,EAAOa,OAAOC,YAAqB9B,EAAImB,MAAMH,EAAOa,OAAOpB,MAAK,EAAET,EAAI+B,aAAa3B,EAAG,SAAS,CAACQ,YAAY,uBAAuBC,MAAM,CAAC,KAAO,SAAS,aAAab,EAAIoB,OAAO,6BAA6B,4BAA6BpB,EAAI0B,kBAAoB,aAAc,0BAA0B1B,EAAI2B,SAAS,UAAU,sBAAsB,CAACvB,EAAG,OAAO,CAACS,MAAM,CAAC,MAAQb,EAAIgC,aAAa,IAAI,EACjnDC,EAAkB,GC6CtB,GACA1B,KAAAA,cACA2B,MAAAA,CACAC,YAAAA,CAAAC,KAAAA,OAAAC,QAAAA,MACAnB,SAAAA,CAAAkB,KAAAA,SAAAC,QAAAA,QACAC,eAAAA,CAAAF,KAAAA,QAAAC,SAAAA,GACAE,QAAAA,CAAAH,KAAAA,SAAAC,QAAAA,QACAV,SAAAA,CAAAS,KAAAA,OAAAC,QAAAA,IACAZ,kBAAAA,CAAAW,KAAAA,QAAAC,SAAAA,GACAX,kBAAAA,CAAAU,KAAAA,OAAAC,QAAAA,IACA3B,iBAAAA,CAAA0B,KAAAA,QAAAC,SAAAA,GACAG,UAAAA,CAAAJ,KAAAA,QAAAC,SAAAA,GACAvB,GAAAA,CAAAsB,KAAAA,OAAAC,QAAAA,gBACA9B,KAAAA,CAAA6B,KAAAA,OAAAC,QAAAA,gBAEAI,OACA,OACAtB,MAAAA,KAEA,EACAuB,UACA,2BACA,EACAC,QAAAA,CACAZ,WACA,qBACA,wBAEA,GAEAa,SAAAA,CACAZ,WACA,8DACA,IC/EmT,I,WCO/Sa,GAAY,OACd,EACA9C,EACAkC,GACA,EACA,KACA,KACA,MAIF,EAAeY,EAAiB,O,uCCTzB,SAASC,EACdC,EACA5B,EACA6B,EACAC,EAAa,GACbC,GAEA,OAAOC,EAAAA,EAAAA,IAAQJ,EAAsB,CACnCK,OAAQ,CACNjC,QACA6B,WACAC,aACAC,UAGN,CAkBO,SAASG,EACdC,EACAnC,EACA6B,EAAW,KACXO,EAAO,EACPC,EAAW,GACXP,EAAa,GACbQ,EACAC,EAAM,GACNC,EACAC,EAAS,GACTC,GAAkB,GAElB,OAAOV,EAAAA,EAAAA,IAAQG,EAAe,CAC5BF,OAAQ,CACNjC,QACA6B,WACAO,OACAC,WACAP,aACAQ,OACAC,MACAC,OACAC,SACAC,oBAGN,CASA,MAAMC,EAAkB,uBAEjB,SAASC,EAAcf,EAAUgB,EAAcC,GACpD,OAAOd,EAAAA,EAAAA,IAAQW,EAAiB,CAC9BV,OAAQ,CACNJ,WACAgB,eACAC,YAGN,CAEA,MAAMC,EAAY,mBAEX,SAASC,EAAoBnB,EAAU7B,EAAOiD,GACnD,OAAOjB,EAAAA,EAAAA,IAAQe,EAAW,CACxBd,OAAQ,CACNJ,WACA7B,QACAiD,QAGN,CAEA,SACEtB,uBACAO,mBACAU,gBACAI,sB,whCCvGFE,EAAAA,WAAAA,IAAQC,EAAAA,GAER,MAAMC,EAAS,GAGf,UAAmBD,EAAAA,EAAU,CAC3BC,SACAC,KAAM,UACNC,KAAMC,OAAOC,WAAa,IAC1BC,UAAU,I,+BCTZ,SAASC,EAAiBC,GACxB,MAAMC,EAAQC,OAAOC,KAAKH,GAAKI,KAAIC,GAAKL,EAAIK,KAC5C,OAAOJ,EAAMK,QAAO,SAAUC,GAC5B,QAAOA,EAAM9E,MAAO8E,EAAM9E,KAAK+E,SAAS,UAC1C,GACF,CAEA,SAASC,EAAwBT,GAC/BA,EAAIU,SAAQ,SAAUC,GAIpB,GAFAA,EAAQC,gBAAgB,gBAEK,IAAzBD,EAAQE,aACV,OAEF,MAAMC,EAAUH,EAAQI,SAASC,OAASC,EAAwBN,GAC7DG,EAILH,EAAQO,aAAa,eAAgB,SAHnCP,EAAQO,aAAa,eAAgB,OAIzC,GACF,CAEA,SAASD,EAAwBN,GAC/B,MAAMQ,EAAqC,UAAjBR,EAAQrD,MAAqC,aAAjBqD,EAAQrD,KACxD8D,EAAyBD,EAC3BR,EAAQU,WAAWA,WAAWC,mBAC9BX,EAAQW,mBACZ,OACEF,EAAuBG,QAAQ,oCACS,OAAxCH,EAAuBI,YAE3B,CAEA,SAASC,EAAaC,GACpB,MAAMC,EAAkBD,EAAQE,cAChC,IAAKC,IAAMF,GAAkB,CAC3B,MAAMG,EAAgB/B,EAAiB4B,GAClCE,IAAMC,IACTrB,EAAwBqB,EAE5B,CACF,CAEA,SAASC,IACP,MAAMC,EAAK,IAAIC,KACTC,EAAYC,SAASC,cAAc,KACzCF,EAAUG,UAAYL,EAAGM,iBACzBJ,EAAUhB,aAAa,UAAW,sBAClC,MAAMqB,EAAuBC,aAAY,WACvC,MAAMC,EAAiBN,SAASO,cAAc,2BACzCb,IAAMY,KACTA,EAAeE,YAAYT,GAC3BU,cAAcL,KAGZ,IAAIN,MAAOY,UAAYb,EAAGa,UAAY,KACxCD,cAAcL,EAGlB,GAAG,IACL,CAEA,SAASO,KACPC,EAAAA,EAAAA,GAAK,6BAA8B,CACjCC,MAAM,EACNC,SAAU,GAEd,CAEA,SAASC,EAAqBxB,GAC5BD,EAAaC,EACf,CAEA,SAASyB,IACPpB,GACF,CAEA,SAASqB,IACPN,GACF,CAEA,OACEI,uBACAC,sBACAC,mB,6BCzFF,SAASC,EAAOC,EAAQC,GACtB,OAAOD,EAAOE,QAAQ,cAAc,SAAUC,EAAGC,GAC/C,OAAOH,EAAKG,EACd,GACF,CAEe,SAASC,EAAUC,KAAmBL,GACnD,QAAoBM,IAAhBjE,OAAOkE,KACT,OAAOF,EAGT,MAAMG,EAAoBnE,OAAOkE,KAAKF,GAEtC,YAA0BC,IAAtBE,GAAyD,OAAtBA,EAC9BH,EAEFP,EAAOU,EAAmBR,EACnC,C,SCjBe,SAASS,IACO,oBAAlB9D,OAAO+D,QAEhB/D,OAAOgE,eAAehE,OAAQ,SAAU,CACtCvE,MAAO,SAAgBoB,GAGrB,GAAc,MAAVA,EAEF,MAAM,IAAIoH,UAAU,8CAGtB,MAAMC,EAAKlE,OAAOnD,GAGlB,IAAK,IAAIsH,EAAQ,EAAGA,EAAQC,UAAUC,OAAQF,IAAS,CAErD,MAAMG,EAAaF,UAAUD,GAE7B,GAAkB,MAAdG,EAEF,IAAK,MAAMC,KAAWD,EAChBtE,OAAOwE,UAAUC,eAAeC,KAAKJ,EAAYC,KACnDL,EAAGK,GAAWD,EAAWC,GAIjC,CACA,OAAOL,CACT,EACAS,UAAU,EACVC,cAAc,IAKdC,UAAYA,QAAQL,UAAUnD,UAChCwD,QAAQL,UAAUnD,QAChBwD,QAAQL,UAAUM,iBAClBD,QAAQL,UAAUO,uBAClBF,QAAQL,UAAUQ,oBAClBH,QAAQL,UAAUS,mBAClBJ,QAAQL,UAAUU,iBAExB,C,aC5CInK,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAAC,EAAE,CAACA,EAAG,SAAS,CAACoB,IAAI,SAASZ,YAAY,sCAAsCC,MAAM,CAAC,GAAK,qBAAqB,gBAAgB,cAAc,aAAab,EAAIoB,OAAO,iCAAiC,gBAAgB,OAAO,gBAAgBpB,EAAImK,oBAAsB,OAAS,SAASpJ,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOhB,EAAIoK,kBAAkB,IAAI,CAAChK,EAAG,OAAO,CAACQ,YAAY,iBAAiB,CAAEZ,EAAqB,kBAAEI,EAAG,OAAO,CAACS,MAAM,CAAC,MAAQ,gBAAgBb,EAAIuB,KAAOvB,EAAIyB,kBAA8DzB,EAAIuB,KAA/CnB,EAAG,OAAO,CAACQ,YAAY,qBAA8B,GAAGZ,EAAIqB,GAAG,IAAIrB,EAAIsB,GAAGtB,EAAIoB,OAAO,iBAAiB,OAAOhB,EAAG,OAAO,CAACS,MAAM,CAAC,UAAYb,EAAImK,sBAAsB,CAAEnK,EAAuB,oBAAEI,EAAG,MAAM,CAACoB,IAAI,qBAAqBZ,YAAY,kBAAkBC,MAAM,CAAC,KAAO,SAAS,kBAAkB,qBAAqB,GAAK,eAAeE,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAIA,EAAOoB,KAAKiI,QAAQ,QAAyB,KAAjBrJ,EAAOsJ,QAAoCtK,EAAIoK,iBAAiBpJ,GAAnC,IAA0C,IAAI,CAACZ,EAAG,MAAM,CAACQ,YAAY,wBAAwB,CAACR,EAAG,SAAS,CAACQ,YAAY,yBAAyBC,MAAM,CAAC,GAAK,cAAc,aAAeb,EAAIoB,OAAO,iBAAoB,IAAOpB,EAAIoB,OAAO,8BAAgCL,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOhB,EAAIoK,kBAAkB,IAAI,CAAChK,EAAG,OAAO,CAACJ,EAAIqB,GAAGrB,EAAIsB,GAAGtB,EAAIoB,OAAO,qBAAqBhB,EAAG,OAAO,CAACS,MAAM,CAAC,MAAQb,EAAIgC,aAAa,GAAG5B,EAAG,IAAI,CAACQ,YAAY,wBAAwBC,MAAM,CAAC,KAAOb,EAAIuK,UAAUC,cAAc,CAACpK,EAAG,MAAM,CAACS,MAAM,CAAC,IAAMb,EAAIyK,QAAQ,IAAMzK,EAAIoB,OAAO,mCAAoCpB,EAAY,SAAEI,EAAG,MAAM,CAACQ,YAAY,mCAAmC,CAACR,EAAG,MAAM,CAACS,MAAM,CAAC,IAAMb,EAAI0K,SAAS,IAAM1K,EAAIoB,OAAO,mCAAmCpB,EAAIuB,KAAKvB,EAAI2K,GAAG,YAAY,GAAGvK,EAAG,MAAM,CAACoB,IAAI,aAAaZ,YAAY,cAAcC,MAAM,CAAC,SAAW,OAAO,CAAEb,EAAa,UAAEI,EAAG,MAAM,CAACQ,YAAY,uBAAuB,CAACR,EAAG,MAAM,CAACQ,YAAY,WAAWR,EAAG,OAAO,CAACJ,EAAIqB,GAAGrB,EAAIsB,GAAGtB,EAAIoB,OAAO,6BAA6BpB,EAAIuB,KAAKnB,EAAG,IAAI,CAACE,WAAW,CAAC,CAACC,KAAK,OAAOC,QAAQ,SAASC,MAAOT,EAAa,UAAEW,WAAW,eAAe,CAACX,EAAIqB,GAAGrB,EAAIsB,GAAGtB,EAAIoB,OAAO,yBAAyBhB,EAAG,MAAM,CAACE,WAAW,CAAC,CAACC,KAAK,OAAOC,QAAQ,SAASC,OAAQT,EAAI4K,UAAWjK,WAAW,gBAAgB,CAAEX,EAAI6K,sBAAuBzK,EAAG,MAAM,CAACQ,YAAY,uBAAuB,CAACR,EAAG,OAAO,CAACJ,EAAIqB,GAAGrB,EAAIsB,GAAGtB,EAAI8K,gBAAgBC,iBAAiB/K,EAAIuB,KAAKnB,EAAG,MAAM,CAACQ,YAAY,uBAAuB,CAACR,EAAG,MAAM,CAACQ,YAAY,cAAc,CAAmC,OAAjCZ,EAAI8K,gBAAgBE,SAAmB5K,EAAG,SAAS,CAACQ,YAAY,OAAOC,MAAM,CAAC,aAAab,EAAIoB,OAAO,iCAAiCL,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOhB,EAAIiL,KAAKjL,EAAI8K,gBAAgBE,SAAS,KAAKhL,EAAIuB,KAAMvB,EAAI8K,gBAAgBI,OAASlL,EAAI8K,gBAAgBI,MAAM7B,OAAQjJ,EAAG,KAAKJ,EAAImL,GAAInL,EAAI8K,gBAAqB,OAAE,SAASM,GAAM,OAAOhL,EAAG,KAAK,CAACiL,IAAID,EAAKE,GAAGC,MAAM,CAAEC,SAAUxL,EAAIyL,eAAeL,EAAKE,MAAO,CAAClL,EAAG,IAAI,CAACmL,MAAM,CAAEG,YAAaN,EAAKO,aAAc9K,MAAM,CAAC,KAAOuK,EAAKQ,IAAI,gBAAgB5L,EAAIyL,eAAeL,EAAKE,MAAM,CAACtL,EAAIqB,GAAGrB,EAAIsB,GAAG8J,EAAKS,SAAUT,EAAgB,YAAEhL,EAAG,SAAS,CAACQ,YAAY,OAAOC,MAAM,CAAC,aAAab,EAAIoB,OAAO,6BAA6BL,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOhB,EAAIiL,KAAKG,EAAKE,GAAG,KAAKtL,EAAIuB,MAAM,IAAG,GAAGvB,EAAIuB,eAAevB,EAAIuB,QAAQ,EAAE,EACnwGU,EAAkB,G,kDCUf,SAAS6J,EAAmBC,EAAkBjL,EAAIkC,EAAUZ,GACjE,OAAOe,EAAAA,EAAAA,IAAQ4I,EAAkB,CAC/B3I,OAAQ,CACNtC,KACAkC,WACAZ,SAGN,CAEA,OACE0J,sB,oBC+EF,GACAvL,KAAAA,aACAyL,WAAAA,CAAAC,KAAAA,KACA/J,MAAAA,CACAqI,UAAAA,CAAAnI,KAAAA,OAAAC,QAAAA,QACAoI,QAAAA,CAAArI,KAAAA,OAAAC,QAAAA,IACAqI,SAAAA,CAAAtI,KAAAA,OAAAC,QAAAA,IACAZ,kBAAAA,CAAAW,KAAAA,QAAAC,SAAAA,IAEAI,OACA,OACAyJ,QAAAA,GACApB,gBAAAA,GACAqB,OAAAA,GACAnJ,SAAAA,OAAAA,YACA4H,WAAAA,EACAwB,WAAAA,EACAjC,qBAAAA,EACAkC,eAAAA,EAEA,EACAzJ,SAAAA,CACAZ,WACA,8DACA,qCACA,GAEAW,QAAAA,CACAyH,mBACA,oBACA,wBAEA,mDACA,6DACA,0BACA,gCAEA,EACAkC,eAAAA,EAAAA,KAAAA,UAAAA,cACA,0BAAAhB,GAAAA,IACA,iCACA,EACAG,eAAAA,GACA,uCACA,EACAZ,sBACA,2CACA,EACAI,KAAAA,GACA,4CACA,oCACA,EACAsB,mBACA,kBAEAC,EAAAA,mBACA,gCACA,0BACA,eAEAC,MAAAA,IACA,kBACA,eACA,2CACA,yBAEAC,OAAAA,KACA,kBACA,oBAEA,EACAC,SAAAA,GACA,GACA,+BAEA,IChLkT,I,WCO9S9J,GAAY,OACd,EACA9C,EACAkC,GACA,EACA,KACA,KACA,MAIF,EAAeY,EAAiB,QClB5B,EAAS,WAAa,IAAI7C,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,cAAc,CAACS,MAAM,CAAC,KAAO,OAAO,YAAab,EAAI4M,YAAc,4BAA6B,aAAa5M,EAAIoB,OAAO,qBAAqB,MAAQ,mBAAmB,EACvQ,EAAkB,GCUtB,GACAb,KAAAA,YACA2B,MAAAA,CAAAA,EACAO,OACA,OACAoK,WAAAA,EAEA,EACAjK,SAAAA,CACAgK,cACA,iCACA,GAEAjK,QAAAA,CACAmK,eACA,0CACA,mBAEA,0CACA,kBAEA,GAEAC,UACArI,OAAAA,iBAAAA,SAAAA,KAAAA,aACA,EACAsI,YACAtI,OAAAA,oBAAAA,SAAAA,KAAAA,aACA,GCvCwS,ICOpS,GAAY,OACd,EACA,EACA,GACA,EACA,KACA,KACA,MAIF,EAAe,EAAiB,QClB5B,EAAS,WAAa,IAAI1E,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,IAAI,CAACmL,MAAMvL,EAAIiN,SAASpM,MAAM,CAAC,KAAOb,EAAIkN,KAAK,cAAclN,EAAImN,WAAW,aAAanN,EAAIoN,WAAWrM,GAAG,CAAC,MAAQ,SAASC,GAAgC,OAAxBA,EAAOC,iBAAwBjB,EAAIqN,eAAerM,EAAO,IAAI,CAAChB,EAAIqB,GAAG,IAAIrB,EAAIsB,GAAGtB,EAAIsN,OAAO,KAAMtN,EAAS,MAAEI,EAAG,OAAO,CAACS,MAAM,CAAC,MAAQb,EAAIuN,SAASvN,EAAIuB,MAAM,EAAE,EACnY,EAAkB,GCetB,GACAhB,KAAAA,aACA2B,MAAAA,CACAgL,KAAAA,CACA9K,KAAAA,OACAC,QAAAA,IAEA4K,SAAAA,CACA7K,KAAAA,OACAC,QAAAA,IAEAiL,MAAAA,CACAlL,KAAAA,OACAC,QAAAA,IAEA8K,WAAAA,CACA/K,KAAAA,OACAC,aAAAA,GAEA+K,UAAAA,CACAhL,KAAAA,OACAC,aAAAA,GAEAkL,MAAAA,CACAnL,KAAAA,OACAC,QAAAA,KAGAM,QAAAA,CACA0K,iBACA,YACAxF,EAAAA,EAAAA,GAAAA,KAAAA,KAAAA,CACAC,MAAAA,GAGA,ICnDyS,KCOrS,IAAY,OACd,GACA,EACA,GACA,EACA,KACA,KACA,MAIF,GAAe,GAAiB,Q,uBChBhC,IACEvH,KAAM,WACN2B,MAAO,CAAC,EACRO,OACE,MAAO,CACL+K,eAAgB,EAChBC,gBAAiB,KAErB,EACA/K,UACEzC,KAAKwN,gBAAkBxG,SAASyG,eAAe,oBACjD,EACA/K,QAAS,CACPgL,cAAcC,GACZ,OAAOA,IAAW3N,KAAKuN,aACzB,EACAK,eAAeD,GAEb3N,KAAKuN,cAAgBvN,KAAK6N,iBAAiBF,GACvC3N,KAAKwN,mBACgC,IAAnCxN,KAAK6N,iBAAiBF,GACxB3N,KAAKwN,gBAAgBM,MAAMC,QAAU,OAErC/N,KAAKwN,gBAAgBM,MAAMC,QAAU,QAG3C,EACAF,iBAAiBF,GACf,OAAO3N,KAAKuN,gBAAkBI,GAAU,EAAIA,CAC9C,EACAK,YAC8B,IAAxBhO,KAAKuN,gBAETvN,KAAKuN,eAAiB,EAClBvN,KAAKwN,kBACPxN,KAAKwN,gBAAgBM,MAAMC,QAAU,QAEzC,GAEF1N,WAAY,CACV4N,aAAcC,KAAAA,YC1Cd,GAAS,WAAa,IAAInO,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAO,CAACS,MAAM,CAAC,SAAYb,EAAIoO,eAAkCpO,EAAIqO,iBAArBrO,EAAI6M,YAAmC,CAACzM,EAAG,SAAS,CAACQ,YAAY,gBAAgBC,MAAM,CAAC,gBAAgBb,EAAI6M,UAAY,OAAS,QAAQ,gBAAgB,OAAO,GAAK,wBAAwB,gBAAgB,iBAAiB,aAAa7M,EAAIsO,sBAAsB,UAAU,yBAAyBvN,GAAG,CAAC,MAAQf,EAAIuO,gBAAgB,CAACnO,EAAG,OAAO,CAACE,WAAW,CAAC,CAACC,KAAK,OAAOC,QAAQ,SAASC,OAAQT,EAAIoO,cAAezN,WAAW,mBAAmBC,YAAY,0BAA0B,CAACR,EAAG,OAAO,CAACQ,YAAY,uBAAuB,CAACZ,EAAIqB,GAAGrB,EAAIsB,GAAGtB,EAAIwO,kBAAkBpO,EAAG,OAAO,CAACS,MAAM,CAAC,MAAQb,EAAIgC,aAAa,GAAG5B,EAAG,OAAO,CAACE,WAAW,CAAC,CAACC,KAAK,OAAOC,QAAQ,SAASC,MAAOT,EAAiB,cAAEW,WAAW,kBAAkBC,YAAY,0BAA0B,CAACR,EAAG,OAAO,CAACS,MAAM,CAAC,MAAQb,EAAIgC,YAAY5B,EAAG,OAAO,CAACQ,YAAY,uBAAuB,CAACZ,EAAIqB,GAAGrB,EAAIsB,GAAGtB,EAAIwO,mBAAmB,KAAKpO,EAAG,MAAM,CAACE,WAAW,CAAC,CAACC,KAAK,OAAOC,QAAQ,SAASC,MAAQT,EAAIoO,cAAgCpO,EAAIqO,gBAApBrO,EAAI6M,UAAiClM,WAAW,iDAAiDC,YAAY,iBAAiBC,MAAM,CAAC,GAAK,iBAAiB,KAAO,SAAS,UAAU,kBAAkBE,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAIA,EAAOoB,KAAKiI,QAAQ,QAAyB,KAAjBrJ,EAAOsJ,QAAoCtK,EAAIuO,cAAcvN,GAAhC,IAAuC,EAAE,MAAQ,SAASA,GAAQ,OAAGA,EAAOa,SAAWb,EAAO0F,cAAuB,KAAc1G,EAAIuO,cAAcvN,EAAO,IAAI,CAACZ,EAAG,MAAM,CAACQ,YAAY,aAAa,CAAEZ,EAAuB,oBAAEI,EAAG,SAAS,CAACQ,YAAY,sCAAsCC,MAAM,CAAC,gBAAgBb,EAAI6M,UAAY,OAAS,QAAQ,gBAAgB,iBAAiB,aAAa7M,EAAIsO,sBAAsB,UAAU,yBAAyBvN,GAAG,CAAC,MAAQf,EAAIuO,gBAAgB,CAACnO,EAAG,OAAO,CAACQ,YAAY,0BAA0B,CAACR,EAAG,OAAO,CAACQ,YAAY,uBAAuB,CAACZ,EAAIqB,GAAG,IAAIrB,EAAIsB,GAAGrB,KAAKmB,OAAO,kBAAkB,OAAOhB,EAAG,OAAO,CAACS,MAAM,CAAC,MAAQ,qBAAqB,KAAKb,EAAIuB,KAAKnB,EAAG,MAAM,CAACQ,YAAY,OAAO,CAACR,EAAG,MAAM,CAACQ,YAAY,0BAA0B,CAAEZ,EAAIoO,gBAAkBpO,EAAIyO,UAAWrO,EAAG,MAAM,CAACQ,YAAY,sBAAsBC,MAAM,CAAC,IAAM,eAAe,UAAU,qBAAqB,YAAcb,EAAIoB,OAAO,0BAA0B,aAAapB,EAAIoB,OAAO,4BAA4B,CAACpB,EAAIqB,GAAG,IAAIrB,EAAIsB,GAAGtB,EAAIoB,OAAO,2BAA2B,OAAOpB,EAAIuB,KAAKnB,EAAG,eAAe,CAACoB,IAAI,cAAcX,MAAM,CAAC,GAAK,cAAc,KAAO,eAAe,YAAYb,EAAIkB,SAAS,qBAAoB,EAAK,YAAYlB,EAAIuC,QAAQ,YAAYvC,EAAI2B,SAAS,aAAa3B,EAAI0O,eAAe,sBAAsB1O,EAAIoO,cAAc,qBAAqB,iBAAiB,oBAAoBpO,EAAIU,oBAAqBV,EAAIkM,QAAQ7C,OAAS,EAAGjJ,EAAG,MAAM,CAACQ,YAAY,+BAA+BC,MAAM,CAAC,aAAa,YAAY,CAACb,EAAImL,GAAInL,EAAW,SAAE,SAAS2O,GAAM,OAAOvO,EAAG,MAAM,CAACiL,IAAIsD,EAAK7N,IAAI,CAACV,EAAG,KAAK,CAACA,EAAG,IAAI,CAACS,MAAM,CAAC,KAAO8N,EAAK/C,MAAM,CAAC5L,EAAIqB,GAAGrB,EAAIsB,GAAGqN,EAAKC,YAAYxO,EAAG,IAAI,CAACwB,SAAS,CAAC,UAAY5B,EAAIsB,GAAGqN,EAAKE,UAAU,IAAI7O,EAAIkM,QAAQ7C,QAAUpJ,KAAK6O,SAAU1O,EAAG,IAAI,CAACQ,YAAY,MAAMC,MAAM,CAAC,KAAOb,EAAI+O,6BAA6B,CAAC/O,EAAIqB,GAAG,IAAIrB,EAAIsB,GAAGtB,EAAIoB,OAAO,2BAA2B,OAAOpB,EAAIuB,MAAM,GAAGvB,EAAIuB,MAAM,UAAU,EAC7wG,GAAkB,G,sECwGtB,IACAhB,KAAAA,oBACA2B,MAAAA,CACAc,SAAAA,CAAAZ,KAAAA,OAAAC,QAAAA,MACA2M,cAAAA,CAAA5M,KAAAA,OACA6M,cAAAA,CAAA7M,KAAAA,QACAc,MAAAA,CAAAd,KAAAA,QACA0M,SAAAA,CAAA1M,KAAAA,OAAAC,QAAAA,GACAoM,UAAAA,CAAArM,KAAAA,QAAAC,SAAAA,GACA+L,cAAAA,CAAAhM,KAAAA,QAAAC,SAAAA,GACA6M,wBAAAA,CAAA9M,KAAAA,OAAAC,QAAAA,IACAwL,eAAAA,CAAAzL,KAAAA,UACAiM,gBAAAA,CAAAjM,KAAAA,QAAAC,SAAAA,GACAV,SAAAA,CAAAS,KAAAA,OAAAC,QAAAA,IACA3B,iBAAAA,CAAA0B,KAAAA,QAAAC,SAAAA,GACAqM,eAAAA,CAAAtM,KAAAA,QAAAC,SAAAA,IAEA2J,WAAAA,CAAAmD,YAAAA,GAAAA,EAAAlD,KAAAA,KACAxJ,OACA,OACAyJ,QAAAA,CAAAA,EACA/K,MAAAA,GACAiO,SAAAA,EACAC,oBAAAA,EAEA,EACAzM,SAAAA,CACAmM,6BACA,iDACA,EACAT,wBACA,sBACA,wEACA3F,CACA,EACA6F,gBACA,2CACA,gCAEA,2EACA,EACAxM,WACA,4DACA,2CACA,EAEA,8BACA,EACA6K,YACA,kEACA,EACAyC,sBACA,6CACA,GAEA3M,QAAAA,CAEAJ,QAAAA,MAAAA,SAAAA,GAEA,aAGA,kDACA,gBAKA,aACA,QAEAgN,SACA,gBACAC,GAAAA,GAAAA,qBACA,6BACA,WACA,cACA,mBACA,YACA,UACA,eACA,kBAEA,EACAjB,iBACA,qCACA,uBAEA,iDAEA,sBACA,uCACA,0CACA,GAEA,EACArN,SAAAA,GACA,iBACAwD,OAAAA,SAAAA,KAAAA,0BACA,IC5MyT,MCOrT,IAAY,OACd,GACA,GACA,IACA,EACA,KACA,KACA,MAIF,GAAe,GAAiB,QClB5B,GAAS,WAAa,IAAI1E,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACE,WAAW,CAAC,CAACC,KAAK,gBAAgBC,QAAQ,kBAAkBC,MAAOT,EAAoB,iBAAEW,WAAW,qBAAqBC,YAAY,yBAAyBC,MAAM,CAAC,aAAab,EAAIoB,OAAO,sCAAsCL,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAIA,EAAOoB,KAAKiI,QAAQ,QAAyB,KAAjBrJ,EAAOsJ,QAAoCtK,EAAIyP,iBAAiBzO,GAAnC,IAA0C,IAAI,CAACZ,EAAG,OAAO,CAACS,MAAM,CAAC,UAAYb,EAAI0P,wBAAwB,CAACtP,EAAG,SAAS,CAACQ,YAAY,iCAAiC2K,MAAM,CACzkB,uCAAwCvL,EAAI0P,uBAC5C7O,MAAM,CAAC,gBAAgB,OAAO,GAAK,iCAAiC,gBAAgB,gCAAgC,KAAOb,EAAI2P,gBAAgB,gBAAgB3P,EAAI0P,sBAAwB,OAAS,QAAQ,UAAU,wBAAwB3O,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOhB,EAAI4P,oBAAoB,IAAI,CAAE5P,EAAqB,kBAAEI,EAAG,OAAO,CAACS,MAAM,CAAC,MAAQ,iBAAiBb,EAAIuB,KAAOvB,EAAI6P,6BAA4L7P,EAAIuB,KAAlKnB,EAAG,OAAO,CAACQ,YAAY,+BAA+BC,MAAM,CAAC,KAAOb,EAAI2P,iBAAiB/N,SAAS,CAAC,YAAc5B,EAAIsB,GAAGtB,EAAI8P,kCAA4C9P,EAAgC,6BAAEI,EAAG,OAAO,CAACQ,YAAY,gCAAgC,CAACZ,EAAIqB,GAAGrB,EAAIsB,GAAGtB,EAAI2P,oBAAoB3P,EAAIuB,MAAM,GAAGnB,EAAG,MAAM,CAACE,WAAW,CAAC,CAACC,KAAK,OAAOC,QAAQ,SAASC,MAAOT,EAAyB,sBAAEW,WAAW,0BAA0BC,YAAY,gCAAgC2K,MAAM,CAAEwE,KAAM/P,EAAI0P,uBAAwB7O,MAAM,CAAC,GAAK,gCAAgC,kBAAkB,iCAAiC,KAAO,WAAW,CAAEb,EAAgB,aAAEI,EAAG,KAAK,CAACQ,YAAY,gCAAgCZ,EAAImL,GAAInL,EAAa,WAAE,SAASgD,GAAU,OAAO5C,EAAG,KAAK,CAACiL,IAAIrI,EAASgN,aAAa,CAAC5P,EAAG,IAAI,CAACQ,YAAY,+BAA+B2K,MAAM,CAAEC,SAAUxI,EAASiN,UAAWpP,MAAM,CAAC,KAAOmC,EAAS4I,IAAI,KAAO5I,EAAS6I,KAAK,UAAU,sBAAsBjK,SAAS,CAAC,UAAY5B,EAAIsB,GAAG0B,EAASgN,eAAe,CAAEhN,EAAS6I,MAAiC,oBAAzB7I,EAASgN,YAAmC5P,EAAG,OAAO,CAACQ,YAAY,gCAAgC,CAACZ,EAAIqB,GAAG,KAAKrB,EAAIsB,GAAG0B,EAAS6I,MAAM,OAAO7L,EAAIuB,QAAQ,IAAG,GAAGvB,EAAIuB,UAAU,EAAE,EACxlD,GAAkB,GCkEtB,IACAhB,KAAAA,uBACA2B,MAAAA,CACAgO,UAAAA,CAAA9N,KAAAA,MAAAC,QAAAA,IAAAA,IACAwN,6BAAAA,CAAAzN,KAAAA,QAAAC,SAAAA,GACA8N,mCAAAA,CAAA/N,KAAAA,QAAAC,SAAAA,GACAZ,kBAAAA,CAAAW,KAAAA,QAAAC,SAAAA,IAEA/B,WAAAA,CACA4N,aAAAA,KAAAA,WAEAlC,WAAAA,CAAAC,KAAAA,KACAxJ,OACA,OACAiN,uBAAAA,EACAC,gBAAAA,OAAAA,YAEA,EACA/M,SAAAA,CACAwN,eACA,mDACA,EACAN,gCACA,4CACA,gFAEA,6BACA,SACA,sDACA,SACA,0DACA,SACA,0DACA,QACA,sDAEA,GAEAnN,QAAAA,CACAiN,qBACA,sDACA,EACAH,mBACA,6BACA,ICjH4T,MCOxT,IAAY,OACd,GACA,GACA,IACA,EACA,KACA,KACA,MAIF,GAAe,GAAiB,QClBhC,IACElP,KAAM,OACN8P,SACE,mHACFnO,MAAO,CAAC,UCJN,GAAS,WAAa,IAAIlC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAASF,EAAIsQ,cAA0vDtQ,EAAIuB,KAA/uDnB,EAAG,MAAM,CAAC,EAAE,CAACA,EAAG,MAAM,CAACE,WAAW,CAAC,CAACC,KAAK,OAAOC,QAAQ,SAASC,OAAQT,EAAIuQ,aAAc5P,WAAW,kBAAkBC,YAAY,kBAAkB,CAACR,EAAG,KAAK,CAACQ,YAAY,qBAAqB,CAACZ,EAAIqB,GAAGrB,EAAIsB,GAAGtB,EAAIwQ,oBAAoBpQ,EAAG,SAAS,CAACQ,YAAY,uBAAuBC,MAAM,CAAC,SAAWb,EAAIyQ,iBAAiB1P,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOhB,EAAI0Q,MAAM,IAAI,CAACtQ,EAAG,OAAO,CAACS,MAAM,CAAC,MAAQ,oBAAoBT,EAAG,OAAO,CAACJ,EAAIqB,GAAGrB,EAAIsB,GAAGtB,EAAI2Q,8BAA8B,GAAGvQ,EAAG,SAAS,CAACQ,YAAY,iDAAiDC,MAAM,CAAC,SAAWb,EAAIyQ,iBAAiB1P,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOhB,EAAI4Q,SAAS,IAAI,CAACxQ,EAAG,OAAO,CAACS,MAAM,CAAC,MAAQ,oBAAoBT,EAAG,OAAO,CAACJ,EAAIqB,GAAGrB,EAAIsB,GAAGtB,EAAI6Q,iCAAiC,KAAM7Q,EAAgB,aAAEI,EAAG,MAAM,CAAC,EAAE,CAACA,EAAG,KAAK,CAACQ,YAAY,qBAAqB,CAACZ,EAAIqB,GAAGrB,EAAIsB,GAAGtB,EAAIwQ,oBAAoBpQ,EAAG,KAAK,CAACA,EAAG,KAAK,CAACJ,EAAIqB,GAAGrB,EAAIsB,GAAGtB,EAAI2Q,6BAA6BvQ,EAAG,KAAK,CAACA,EAAG,aAAa,CAACS,MAAM,CAAC,SAAWb,EAAI8Q,gBAAgB,KAAO,IAAI,SAAU,EAAM,WAAW,QAAQ,KAAO,CAAEC,MAAO/Q,EAAIgR,YAAa,aAAa,oBAAoB,wBAAwB,EAAI,cAAc,EAAE,cAAc,SAAS,UAAY,EAAE,gBAAe,MAAS,GAAG5Q,EAAG,KAAK,CAACJ,EAAIqB,GAAGrB,EAAIsB,GAAGtB,EAAI6Q,gCAAgCzQ,EAAG,KAAK,CAACA,EAAG,aAAa,CAACS,MAAM,CAAC,SAAWb,EAAIiR,mBAAmB,KAAO,IAAI,SAAU,EAAM,WAAW,QAAQ,KAAO,CAAEF,MAAO/Q,EAAIkR,eAAgB,aAAa,oBAAoB,wBAAwB,EAAI,cAAc,EAAE,cAAc,SAAS,UAAY,EAAE,gBAAe,MAAS,KAAK9Q,EAAG,IAAI,CAACQ,YAAY,UAAUC,MAAM,CAAC,KAAO,WAAW,CAACb,EAAIqB,GAAGrB,EAAIsB,GAAGtB,EAAImR,oBAAoBnR,EAAIuB,KAAMvB,EAAiB,cAAEI,EAAG,MAAM,CAAC,EAAE,CAACA,EAAG,KAAK,CAACJ,EAAIqB,GAAGrB,EAAIsB,GAAGtB,EAAIoR,0BAA0BpR,EAAIuB,MAAe,EACp2D,GAAkB,G,SCEtB,MAAM8P,GAAS,iBACTC,GAAiB,0BAWhB,SAASC,GAAavO,EAAUwO,EAAWC,EAAUC,GAC1D,MAAMtO,EAAS,CACbJ,YAcF,OAXK2O,IAAOH,IAAcA,IACxBpO,EAAOoO,UAAYA,IAGhBG,IAAOF,IAAaA,IACvBrO,EAAOqO,SAAWA,IAGfE,IAAOD,IAAWA,IACrBtO,EAAOsO,OAASA,GAEXvO,EAAAA,EAAAA,IAAQkO,GAAQ,CACrBjO,UAEJ,CAWO,SAASwO,GAAe5O,EAAUwO,EAAWC,EAAUC,GAC5D,IAAIG,EAAcP,GAclB,OAZAO,GAAgB,aAAY7O,KACvB2O,IAAOH,IAAcA,IACxBK,GAAgB,cAAaL,MAG1BG,IAAOF,IAAaA,IACvBI,GAAgB,aAAYJ,MAGzBE,IAAOD,IAAWA,IACrBG,GAAgB,WAAUH,KAErBG,CACT,CAWO,SAASC,GAAYN,EAAWxO,EAAU+O,GAE/C,IAAIC,EAA2B/K,SAASgL,kBAAkB,8BAA8B,GAAGxR,MAE3F,MAAMyR,EAAS,CACbC,QAAS,CAAE,eAAgBH,IAE7B,OAAO7O,EAAAA,EAAAA,KACLkO,GACA,CACEG,YACAxO,WACAZ,KAAM2P,EACNK,QAAS,MAEXF,EAEJ,CAwBO,SAASG,GAAgBrP,EAAUwO,EAAWC,EAAUC,GAC7D,MAAMtO,EAAS,CACbJ,YAcF,OAXK2O,IAAOH,IAAcA,IACxBpO,EAAOoO,UAAYA,IAGhBG,IAAOF,IAAaA,IACvBrO,EAAOqO,SAAWA,IAGfE,IAAOD,IAAWA,IACrBtO,EAAOsO,OAASA,GAEXvO,EAAAA,EAAAA,UAAWkO,GAAQ,CACxBjO,UAEJ,CAEA,QACEmO,gBACAO,eACAF,kBACAS,oB,8CCpEF,MAAMC,GAAc,mBAEpB,QACA/R,KAAAA,WACAyL,WAAAA,CACAuG,UAAAA,MAEArQ,MAAAA,CACAsQ,OAAAA,CACApQ,KAAAA,OACAC,SAAAA,GAEAW,SAAAA,CACAZ,KAAAA,QAEAoO,gBAAAA,CACApO,KAAAA,QAEAuO,yBAAAA,CACAvO,KAAAA,QAEAyO,4BAAAA,CACAzO,KAAAA,QAEAqQ,qBAAAA,CACArQ,KAAAA,QAEAgP,oBAAAA,CACAhP,KAAAA,QAEA4O,WAAAA,CACA5O,KAAAA,QAEA8O,cAAAA,CACA9O,KAAAA,SAGAK,OACA,OACAgO,iBAAAA,EACAF,cAAAA,EACAmC,gBAAAA,KACApC,eAAAA,EACAqC,yBAAAA,GACAC,eAAAA,EACAb,aAAAA,KACAc,WAAAA,EACAC,cAAAA,EACAC,WAAAA,EAEA,EACArQ,UACA,WACA,EACAC,QAAAA,CACAqQ,OACA,+CACA,uCACA,EACAC,YACA,gDACAC,KAAAA,IAAAA,GAAAA,KAAAA,yBACA,EACAC,YACA,oDACA,EACAC,gBACA,6DACA,EACA1C,OACA,oBACA,kBACA,EACAE,UACA,oBACA,kBACA,EACAkB,cACA,oBAIA,wBACAuB,GAAAA,YACAvB,KAAAA,OAAAA,KAAAA,SAAAA,KAAAA,cACArF,MAAAA,IACA,uBACA,2CACA,iDACA,gDACA,qBACA,iBACA,2BAEAC,OAAAA,KACA,wBACA,yBAEA,EACA4G,iBAAAA,GACA,2CACA,UACA,oBACA,GAEA1Q,SAAAA,CACAkO,kBACA,6CACA,EACAG,qBACA,gDACA,EACAE,gBACA,+JACA,ICxLuS,MCOnS,IAAY,OACd,GACA,GACA,IACA,EACA,KACA,KACA,MAIF,GAAe,GAAiB,QClBhC,IACE5Q,KAAM,mBACNkC,OACE,MAAO,CACL8Q,oBAAoB,EACpB/F,eAAgB,EAEpB,EACA7K,QAAS,CACPgL,cAAcC,GACZ,OAAOA,IAAW3N,KAAKuN,aACzB,EACAK,eAAeD,GACb3N,KAAKuN,cAAgBvN,KAAK6N,iBAAiBF,EAC7C,EACAE,iBAAiBF,GACf,IAAI4F,EAASvT,KAAKuN,gBAAkBI,GAAU,EAAIA,EAElD,OADA3N,KAAKsT,oBAAiC,IAAZC,EACnBA,CACT,EACAC,kBACE,OAAOxT,KAAKsT,kBACd,ICtBA,GAAS,WAAa,IAAIvT,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAO,CAACS,MAAM,CAAC,UAAYb,EAAIqO,kBAAkB,CAACjO,EAAG,MAAM,CAACQ,YAAY,uBAAuBC,MAAM,CAAC,aAAab,EAAIoB,OAAO,qCAAqC,UAAU,wBAAwBL,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAIA,EAAOoB,KAAKiI,QAAQ,QAAyB,KAAjBrJ,EAAOsJ,QAAoCtK,EAAIuO,cAAcvN,GAAhC,IAAuC,IAAI,CAACZ,EAAG,SAAS,CAACQ,YAAY,+BAA+BC,MAAM,CAAC,gBAAgB,OAAO,GAAK,8BAA8B,gBAAgB,+BAA+B,KAAOb,EAAI2P,gBAAgB,gBAAgB3P,EAAIqO,gBAAkB,OAAS,QAAQ,UAAU,wBAAwBtN,GAAG,CAAC,MAAQf,EAAIuO,gBAAgB,CAACnO,EAAG,OAAO,CAACS,MAAM,CAAC,MAAQ,iBAAiBT,EAAG,OAAO,CAACQ,YAAY,qCAAqC,CAACZ,EAAIqB,GAAG,IAAIrB,EAAIsB,GAAGtB,EAAI0T,0BAA0B,QAAQ,GAAGtT,EAAG,MAAM,CAACE,WAAW,CAAC,CAACC,KAAK,OAAOC,QAAQ,SAASC,MAAOT,EAAmB,gBAAEW,WAAW,oBAAoBC,YAAY,gCAAgCC,MAAM,CAAC,GAAK,+BAA+B,kBAAkB,gCAAgC,KAAO,UAAUE,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAGA,EAAOa,SAAWb,EAAO0F,cAAuB,KAAc1G,EAAIuO,cAAcvN,EAAO,EAAE,MAAQ,SAASA,GAAQ,OAAIA,EAAOoB,KAAKiI,QAAQ,QAAyB,KAAjBrJ,EAAOsJ,QAAoCtK,EAAIuO,cAAcvN,GAAhC,IAAuC,IAAI,CAACZ,EAAG,MAAM,CAACQ,YAAY,aAAa,CAACR,EAAG,MAAM,CAACQ,YAAY,OAAO,CAACR,EAAG,MAAM,CAACQ,YAAY,0CAA0C,CAAEZ,EAAgB,aAAEI,EAAG,KAAK,CAACQ,YAAY,8BAA8BZ,EAAImL,GAAInL,EAAa,WAAE,SAASgD,GAAU,OAAO5C,EAAG,KAAK,CAACiL,IAAIrI,EAASgN,YAAYpP,YAAY,mCAAmC,CAACR,EAAG,IAAI,CAACQ,YAAY,6BAA6B2K,MAAM,CAAEC,SAAUxI,EAASiN,UAAWpP,MAAM,CAAC,KAAOmC,EAAS4I,IAAI,KAAO5I,EAAS6I,KAAK,UAAU,6BAA6BjK,SAAS,CAAC,UAAY5B,EAAIsB,GAAG0B,EAASgN,gBAAgB5P,EAAG,OAAO,CAACS,MAAM,CAAC,MAAQ,wBAAwB,EAAE,IAAG,GAAGb,EAAIuB,gBAAgB,EAC5gE,GAAkB,GCiEtB,IACAhB,KAAAA,qBACA2B,MAAAA,CACAgO,UAAAA,CAAA9N,KAAAA,MAAAC,QAAAA,IAAAA,IACAwL,eAAAA,CAAAzL,KAAAA,UACAiM,gBAAAA,CAAAjM,KAAAA,QAAAC,SAAAA,IAEA2J,WAAAA,CAAAC,KAAAA,KACAxJ,OACA,OACAkN,gBAAAA,OAAAA,YAEA,EACA/M,SAAAA,CACAwN,eACA,mDACA,GAEAzN,QAAAA,CACA4L,gBACA,sBACA,EACAmF,yBACA,yCACA,IC1F0T,MCOtT,IAAY,OACd,GACA,GACA,IACA,EACA,KACA,KACA,MAIF,GAAe,GAAiB,QClB5B,GAAS,WAAa,IAAI1T,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAO,CAACS,MAAM,CAAC,UAAYb,EAAIqO,kBAAkB,CAACjO,EAAG,MAAM,CAAC,EAAE,CAACA,EAAG,SAAS,CAACoB,IAAI,SAASZ,YAAY,sCAAsCC,MAAM,CAAC,GAAK,qBAAqB,gBAAgB,cAAc,aAAab,EAAI2T,uBAAuB,gBAAgB,OAAO,gBAAgB3T,EAAIyT,gBAAkB,OAAS,SAAS1S,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOhB,EAAIoK,kBAAkB,EAAE,MAAQ,SAASpJ,GAAQ,OAAIA,EAAOoB,KAAKiI,QAAQ,QAAyB,KAAjBrJ,EAAOsJ,QAAoCtK,EAAIoK,iBAAiBpJ,GAAnC,IAA0C,IAAI,CAACZ,EAAG,OAAO,CAACQ,YAAY,iBAAiB,CAACR,EAAG,OAAO,CAACS,MAAM,CAAC,MAAQb,EAAIgC,aAAa,GAAGhC,EAAIqB,GAAG,IAAIrB,EAAIsB,GAAGtB,EAAIwO,eAAe,OAAOpO,EAAG,MAAM,CAACS,MAAM,CAAC,UAAYb,EAAIqO,kBAAkB,CAAErO,EAAmB,gBAAEI,EAAG,MAAM,CAACoB,IAAI,qBAAqBZ,YAAY,gCAAgCC,MAAM,CAAC,KAAO,SAAS,kBAAkB,qBAAqB,GAAK,eAAeE,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAGA,EAAOa,SAAWb,EAAO0F,cAAuB,KAAc1G,EAAIoK,iBAAiBpJ,EAAO,EAAE,MAAQ,SAASA,GAAQ,OAAIA,EAAOoB,KAAKiI,QAAQ,QAAyB,KAAjBrJ,EAAOsJ,QAAoCtK,EAAIoK,iBAAiBpJ,GAAnC,IAA0C,IAAI,CAACZ,EAAG,MAAM,CAACoB,IAAI,aAAaZ,YAAY,mCAAmCC,MAAM,CAAC,SAAW,OAAO,CAAEb,EAAa,UAAEI,EAAG,MAAM,CAACQ,YAAY,kCAAkC,CAACR,EAAG,OAAO,CAACA,EAAG,MAAM,CAACQ,YAAY,WAAWZ,EAAIqB,GAAG,IAAIrB,EAAIsB,GAAGtB,EAAIoB,OAAO,wBAAwB,SAASpB,EAAIuB,KAAKnB,EAAG,IAAI,CAACE,WAAW,CAAC,CAACC,KAAK,OAAOC,QAAQ,SAASC,MAAOT,EAAa,UAAEW,WAAW,cAAcC,YAAY,cAAc,CAACZ,EAAIqB,GAAGrB,EAAIsB,GAAGtB,EAAIoB,OAAO,yBAAyBhB,EAAG,MAAM,CAACE,WAAW,CAAC,CAACC,KAAK,OAAOC,QAAQ,SAASC,OAAQT,EAAI4K,UAAWjK,WAAW,gBAAgB,CAAEX,EAAI6K,sBAAuBzK,EAAG,MAAM,CAACQ,YAAY,kCAAkC,CAACR,EAAG,OAAO,CAACJ,EAAIqB,GAAGrB,EAAIsB,GAAGtB,EAAI8K,gBAAgBC,iBAAiB/K,EAAIuB,KAAKnB,EAAG,MAAM,CAACQ,YAAY,kCAAkC,CAACR,EAAG,MAAM,CAACQ,YAAY,cAAc,CAAmC,OAAjCZ,EAAI8K,gBAAgBE,UAAsBhL,EAAIoM,UAA0LpM,EAAIuB,KAAnLnB,EAAG,SAAS,CAACQ,YAAY,OAAOC,MAAM,CAAC,aAAab,EAAIoB,OAAO,iCAAiCL,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOhB,EAAIiL,KAAKjL,EAAI8K,gBAAgBE,SAAS,KAAehL,EAAI8K,gBAAgBI,OAASlL,EAAI8K,gBAAgBI,MAAM7B,OAAQjJ,EAAG,KAAKJ,EAAImL,GAAInL,EAAI8K,gBAAqB,OAAE,SAASM,GAAM,OAAOhL,EAAG,KAAK,CAACiL,IAAID,EAAKE,GAAGC,MAAM,CAAEC,SAAUxL,EAAIyL,eAAeL,EAAKE,MAAO,CAAClL,EAAG,IAAI,CAACmL,MAAM,CAAEG,YAAaN,EAAKO,aAAc9K,MAAM,CAAC,KAAOuK,EAAKQ,IAAI,gBAAgB5L,EAAIyL,eAAeL,EAAKE,MAAM,CAACtL,EAAIqB,GAAGrB,EAAIsB,GAAG8J,EAAKS,SAAUT,EAAgB,YAAEhL,EAAG,SAAS,CAACQ,YAAY,OAAOC,MAAM,CAAC,aAAab,EAAIoB,OAAO,6BAA6BL,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOhB,EAAIiL,KAAKG,EAAKE,GAAG,KAAKtL,EAAIuB,MAAM,IAAG,GAAGvB,EAAIuB,eAAevB,EAAIuB,UAAU,EACryF,GAAkB,GCuFtB,IACAhB,KAAAA,mBACAyL,WAAAA,CAAAC,KAAAA,KACA/J,MAAAA,CACAqI,UAAAA,CAAAnI,KAAAA,OAAAC,QAAAA,QACAwL,eAAAA,CAAAzL,KAAAA,UACAiM,gBAAAA,CAAAjM,KAAAA,QAAAC,SAAAA,GACAoR,gBAAAA,CAAArR,KAAAA,QAAAC,SAAAA,IAEAI,OACA,OACAyJ,QAAAA,GACApB,gBAAAA,GACAqB,OAAAA,GACAnJ,SAAAA,OAAAA,YACA4H,WAAAA,EACAwB,WAAAA,EACAjC,qBAAAA,EACAkC,eAAAA,EAEA,EACAzJ,SAAAA,CACAZ,WACA,qEACA,EACAwM,gBACA,oFACA,EACAmF,yBACA,4BACA,oCACA,4CACA,GAEAhR,QAAAA,CACAyH,mBACA,oBACA,yBAGA,2CACA,yBAEA,uBACA,oDAGA,0BACA,gCAEA,EACAkC,eAAAA,EAAAA,KAAAA,UAAAA,cACA,0BAAAhB,GAAAA,IACA,iCACA,EACAG,eAAAA,GACA,uCACA,EACAZ,sBACA,2CACA,EACAI,KAAAA,GACA,4CACA,oCACA,EACAsB,mBACA,kBAEAC,EAAAA,mBACA,gCACA,0BACA,eAEAC,MAAAA,IACA,kBACA,eACA,2CACA,yBAEAC,OAAAA,KACA,kBACA,oBAEA,EACAC,SAAAA,GACA,GACA,+BAEA,IChL4T,MCOxT,IAAY,OACd,GACA,GACA,IACA,EACA,KACA,KACA,MAIF,GAAe,GAAiB,QCJhC,MAAMiH,GAAS,IAAM,gCACfC,GAAkB,IACtB,gCACIC,GAA4B,IAChC,gCACIC,GAAmB,IACvB,+BACIC,GAAiB,IACrB,gCACIC,GAAkB,IACtB,gCAGIC,GAAwB,IAC5B,gCAGIC,GAAY,IAAM,gCAClBC,GAAS,IAAM,gCACfC,GAAY,IAAM,gCChCxB,ICDI,GAAQ,GDCZ,IACAC,SAAAA,EAAAA,EAAAA,GACAC,EAAAA,QAAAA,QAAAA,GAAAA,kBAAAA,SAAAA,GACA,eACA,EACAC,EAAAA,UAAAA,IAAAA,GAGAA,EAAAA,UAAAA,OAAAA,EACA,GACA,GEX0S,MDOtS,IAAY,OACd,GACA,GACA,IACA,EACA,KACA,KACA,MAIF,GAAe,GAAiB,QEjBhC,MAAMC,GAAiBD,GACvB,2BACA,IACA,SACAE,SAAAA,EAAAA,aAAAA,yBACAC,OAAAA,EAAAA,UACApU,KAAAA,EAAAA,MAEAqU,KAAAA,KAAAA,CAAAA,aAAAA,EAAAA,SAAAA,EAAAA,OAAAA,EAAAA,OACAC,EAAAA,EAAAA,oBAGA,CAFA,SACAC,EAAAA,EAAAA,4BACA,CACA,IAGA,ICjBI,GAAQ,GDiBZ,IACAC,KAAAA,GACAP,EAAAA,iBAAAA,SAAAA,IACA,GACAQ,EAAAA,iBAEA,eACAP,GAAAA,GACAhI,MAAAA,CAAAA,EAAAA,KACA,kCAGA/H,OAAAA,SAAAA,EAAAA,IAEAgI,OAAAA,CAAAA,EAAAA,KACA,kCAGAhI,OAAAA,SAAAA,EAAAA,GACA,GAEA,GEtCiT,MDO7S,IAAY,OACd,GACA,GACA,IACA,EACA,KACA,KACA,MAIF,GAAe,GAAiB,QEjBhC,MAAM,GAAiB,CAAC8P,EAAIS,IAC5B,2BAEA,4CACA,IACA,SACAN,OAAAA,EAAAA,OAAAA,EAAAA,EAAAA,GAAAA,UAAAA,EAAAA,UACAD,SAAAA,EAAAA,aAAAA,yBACAnU,KAAAA,EAAAA,MAEAqU,KAAAA,KAAAA,CAAAA,aAAAA,EAAAA,SAAAA,EAAAA,OAAAA,EAAAA,OACAC,EAAAA,oBAGA,CAFA,SACAC,EAAAA,4BACA,CACA,IAGA,ICnBI,GAAQ,GDmBZ,IACAC,KAAAA,GACAP,EAAAA,iBAAAA,SAAAA,IACA,GACAQ,EAAAA,iBAEA,oCACA,GAGAP,GAAAA,EAAAA,GACAhI,MAAAA,IACA/H,OAAAA,SAAAA,EAAAA,IAAAA,IAEAgI,OAAAA,IACAhI,OAAAA,SAAAA,EAAAA,IAAAA,GACA,GAEA,GErCuT,MDOnT,IAAY,OACd,GACA,GACA,IACA,EACA,KACA,KACA,MAIF,GAAe,GAAiB,QEjBhC,MAAM,GAAiB,CAAC8P,EAAIQ,IAC5B,2BACA,IACA,SACAN,SAAAA,EAAAA,OAAAA,aAAAA,6BACAC,OAAAA,EAAAA,OAAAA,aAAAA,2BACApU,KAAAA,OAAAA,SAAAA,MAEA,4CACA,kCACA,8BAGA,GADAqU,KAAAA,KAAAA,CAAAA,aAAAA,EAAAA,SAAAA,EAAAA,OAAAA,EAAAA,QACA,YAEA,YADAC,EAAAA,2BAGAD,KAAAA,KAAAA,CAAAA,kBAAAA,EAAAA,MAAAA,GAAAA,IACAC,EAAAA,2BAGA,CAFA,SACAC,EAAAA,4BACA,CACA,IAGA,IC1BI,GAAQ,GD0BZ,IACAC,KAAAA,EAAAA,GAAA,QACA,2FACA,GAGAP,EAAAA,iBAAAA,SAAAA,IACA,QACAQ,UAAAA,EAAAA,OAAAA,QAAAA,eACAA,WAAAA,EAAAA,OAAAA,QAAAA,cACA,GAGAP,GAAAA,EAAAA,GACAhI,MAAAA,QAGAC,OAAAA,OAEA,GAEA,GE/CuT,MDOnT,IAAY,OACd,GACA,GACA,IACA,EACA,KACA,KACA,MAIF,GAAe,GAAiB,QENhC5D,IAEA,MAAMoM,GAAe,IAAIC,EAAAA,GACzB9Q,EAAAA,WAAAA,IAAQ6Q,IAGR7Q,EAAAA,WAAAA,IAAQ+Q,EAAAA,GAER/Q,EAAAA,WAAAA,UAAAA,OAAuBoE,EAGvBzD,OAAOC,KAAK+G,GAAYxG,SAAQ6F,IAC9BhH,EAAAA,WAAAA,UAAcgR,IAAWhK,GAAMW,EAAWX,GAAK,IAGjDrG,OAAOC,KAAK3E,GAAYkF,SAAQ6F,IAC9BhH,EAAAA,WAAAA,UAAcgR,IAAWhK,GAAM/K,EAAW+K,GAAK,IAIjDpE,SAASqO,iBAAiB,oBAAoB,KAC5C,IAAIjR,EAAAA,WAAI,CAENmQ,GAAI,OACJe,OAAM,EACNL,iBACA,IAIJxQ,OAAO8Q,SAAWA,C,+CCxClBC,IAAAA,SAAAA,eAAgC,6BAEhC,QACEC,IAAIC,EAAKC,GACP,OAAOH,IAAAA,IAAUE,EAAKC,GAASnJ,MAAK,EAAGhK,UAAWA,GACpD,EACAoT,KAAKF,EAAKC,EAAS1D,EAAS,MAC1B,OAAIA,EACKuD,IAAAA,KAAWE,EAAKC,EAAS1D,GAAQzF,MAAK,EAAGhK,UAAWA,IAEtDgT,IAAAA,KAAWE,EAAKC,GAASnJ,MAAK,EAAGhK,UAAWA,GACrD,EACAqT,IAAIH,EAAKC,EAAS1D,EAAS,MACzB,OAAIA,EACKuD,IAAAA,IAAUE,EAAKC,EAAS1D,GAAQzF,MAAK,EAAGhK,UAAWA,IAErDgT,IAAAA,IAAUE,EAAKC,GAASnJ,MAAK,EAAGhK,UAAWA,GACpD,EACAsT,OAAOJ,EAAKC,EAAS1D,EAAS,MAC5B,OAAIA,EACKuD,IAAAA,UAAaE,EAAKC,EAAS1D,GAAQzF,MAAK,EAAGhK,UAAWA,IAExDgT,IAAAA,UAAaE,EAAKC,GAASnJ,MAAK,EAAGhK,UAAWA,GACvD,E,GCxBEuT,EAA2B,CAAC,EAGhC,SAASC,EAAoBC,GAE5B,IAAIC,EAAeH,EAAyBE,GAC5C,QAAqBvN,IAAjBwN,EACH,OAAOA,EAAaC,QAGrB,IAAIC,EAASL,EAAyBE,GAAY,CACjDpV,GAAIoV,EACJI,QAAQ,EACRF,QAAS,CAAC,GAUX,OANAG,EAAoBL,GAAUxM,KAAK2M,EAAOD,QAASC,EAAQA,EAAOD,QAASH,GAG3EI,EAAOC,QAAS,EAGTD,EAAOD,OACf,CAGAH,EAAoB1N,EAAIgO,E,WC5BxB,IAAIC,EAAW,GACfP,EAAoBQ,EAAI,SAASjD,EAAQkD,EAAUC,EAAIC,GACtD,IAAGF,EAAH,CAMA,IAAIG,EAAeC,IACnB,IAASC,EAAI,EAAGA,EAAIP,EAASnN,OAAQ0N,IAAK,CACrCL,EAAWF,EAASO,GAAG,GACvBJ,EAAKH,EAASO,GAAG,GACjBH,EAAWJ,EAASO,GAAG,GAE3B,IAJA,IAGIC,GAAY,EACPC,EAAI,EAAGA,EAAIP,EAASrN,OAAQ4N,MACpB,EAAXL,GAAsBC,GAAgBD,IAAa5R,OAAOC,KAAKgR,EAAoBQ,GAAGS,OAAM,SAAS7L,GAAO,OAAO4K,EAAoBQ,EAAEpL,GAAKqL,EAASO,GAAK,IAChKP,EAASS,OAAOF,IAAK,IAErBD,GAAY,EACTJ,EAAWC,IAAcA,EAAeD,IAG7C,GAAGI,EAAW,CACbR,EAASW,OAAOJ,IAAK,GACrB,IAAIK,EAAIT,SACEhO,IAANyO,IAAiB5D,EAAS4D,EAC/B,CACD,CACA,OAAO5D,CArBP,CAJCoD,EAAWA,GAAY,EACvB,IAAI,IAAIG,EAAIP,EAASnN,OAAQ0N,EAAI,GAAKP,EAASO,EAAI,GAAG,GAAKH,EAAUG,IAAKP,EAASO,GAAKP,EAASO,EAAI,GACrGP,EAASO,GAAK,CAACL,EAAUC,EAAIC,EAwB/B,C,eC5BAX,EAAoBzN,EAAI,SAAS6N,GAChC,IAAIgB,EAAShB,GAAUA,EAAOiB,WAC7B,WAAa,OAAOjB,EAAO,UAAY,EACvC,WAAa,OAAOA,CAAQ,EAE7B,OADAJ,EAAoBsB,EAAEF,EAAQ,CAAEG,EAAGH,IAC5BA,CACR,C,eCNApB,EAAoBsB,EAAI,SAASnB,EAASqB,GACzC,IAAI,IAAIpM,KAAOoM,EACXxB,EAAoByB,EAAED,EAAYpM,KAAS4K,EAAoByB,EAAEtB,EAAS/K,IAC5ErG,OAAOgE,eAAeoN,EAAS/K,EAAK,CAAEsM,YAAY,EAAMjC,IAAK+B,EAAWpM,IAG3E,C,eCPA4K,EAAoB2B,EAAI,CAAC,EAGzB3B,EAAoB4B,EAAI,SAASC,GAChC,OAAOC,QAAQC,IAAIhT,OAAOC,KAAKgR,EAAoB2B,GAAGK,QAAO,SAASC,EAAU7M,GAE/E,OADA4K,EAAoB2B,EAAEvM,GAAKyM,EAASI,GAC7BA,CACR,GAAG,IACJ,C,eCPAjC,EAAoBkC,EAAI,SAASL,GAEhC,MAAO,MAAQ,CAAC,KAAO,YAAY,KAAO,YAAY,KAAO,oBAAoB,KAAO,SAAS,KAAO,QAAQ,KAAO,mBAAmB,KAAO,SAAS,KAAO,YAAY,KAAO,qBAAqBA,GAAW,IAAM,CAAC,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,YAAYA,GAAW,KAC1Y,C,eCHA7B,EAAoBmC,SAAW,SAASN,GAEvC,MAAO,OAAS,CAAC,KAAO,YAAY,KAAO,YAAY,KAAO,oBAAoB,KAAO,SAAS,KAAO,QAAQ,KAAO,mBAAmB,KAAO,SAAS,KAAO,YAAY,KAAO,qBAAqBA,GAAW,IAAM,CAAC,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,WAAW,KAAO,YAAYA,GAAW,MAC3Y,C,eAHA7B,EAAoBmC,SAAW,SAASN,GAEvC,OAAD,0DACA,mDAEA,gBAA0B,uKAAwL,gBAClN,C,eCPA7B,EAAoBoC,EAAI,WACvB,GAA0B,kBAAfC,WAAyB,OAAOA,WAC3C,IACC,OAAOrY,MAAQ,IAAIsY,SAAS,cAAb,EAGhB,CAFE,MAAOV,GACR,GAAsB,kBAAXnT,OAAqB,OAAOA,MACxC,CACA,CAPuB,E,eCAxBuR,EAAoByB,EAAI,SAASc,EAAKC,GAAQ,OAAOzT,OAAOwE,UAAUC,eAAeC,KAAK8O,EAAKC,EAAO,C,eCAtG,IAAIC,EAAa,CAAC,EACdC,EAAoB,QAExB1C,EAAoB2C,EAAI,SAASjD,EAAKkD,EAAMxN,EAAKyM,GAChD,GAAGY,EAAW/C,GAAQ+C,EAAW/C,GAAKmD,KAAKD,OAA3C,CACA,IAAIE,EAAQC,EACZ,QAAWrQ,IAAR0C,EAEF,IADA,IAAI4N,EAAUhS,SAASiS,qBAAqB,UACpCnC,EAAI,EAAGA,EAAIkC,EAAQ5P,OAAQ0N,IAAK,CACvC,IAAIoC,EAAIF,EAAQlC,GAChB,GAAGoC,EAAEC,aAAa,QAAUzD,GAAOwD,EAAEC,aAAa,iBAAmBT,EAAoBtN,EAAK,CAAE0N,EAASI,EAAG,KAAO,CACpH,CAEGJ,IACHC,GAAa,EACbD,EAAS9R,SAASC,cAAc,UAEhC6R,EAAOM,QAAU,QACjBN,EAAOO,QAAU,IACbrD,EAAoBsD,IACvBR,EAAO/S,aAAa,QAASiQ,EAAoBsD,IAElDR,EAAO/S,aAAa,eAAgB2S,EAAoBtN,GACxD0N,EAAOS,IAAM7D,GAEd+C,EAAW/C,GAAO,CAACkD,GACnB,IAAIY,EAAmB,SAASC,EAAM1E,GAErC+D,EAAOY,QAAUZ,EAAOa,OAAS,KACjCC,aAAaP,GACb,IAAIQ,EAAUpB,EAAW/C,GAIzB,UAHO+C,EAAW/C,GAClBoD,EAAO5S,YAAc4S,EAAO5S,WAAW4T,YAAYhB,GACnDe,GAAWA,EAAQtU,SAAQ,SAASmR,GAAM,OAAOA,EAAG3B,EAAQ,IACzD0E,EAAM,OAAOA,EAAK1E,EACtB,EACIsE,EAAUU,WAAWP,EAAiB1E,KAAK,UAAMpM,EAAW,CAAEvG,KAAM,UAAWP,OAAQkX,IAAW,MACtGA,EAAOY,QAAUF,EAAiB1E,KAAK,KAAMgE,EAAOY,SACpDZ,EAAOa,OAASH,EAAiB1E,KAAK,KAAMgE,EAAOa,QACnDZ,GAAc/R,SAASgT,KAAKxS,YAAYsR,EAnCkB,CAoC3D,C,eCvCA9C,EAAoBmB,EAAI,SAAShB,GACX,qBAAX8D,QAA0BA,OAAOC,aAC1CnV,OAAOgE,eAAeoN,EAAS8D,OAAOC,YAAa,CAAE1Z,MAAO,WAE7DuE,OAAOgE,eAAeoN,EAAS,aAAc,CAAE3V,OAAO,GACvD,C,eCNAwV,EAAoBmE,IAAM,SAAS/D,GAGlC,OAFAA,EAAOgE,MAAQ,GACVhE,EAAOiE,WAAUjE,EAAOiE,SAAW,IACjCjE,CACR,C,eCJAJ,EAAoBsE,EAAI,e,eCAxB,GAAwB,qBAAbtT,SAAX,CACA,IAAIuT,EAAmB,SAAS1C,EAAS2C,EAAUC,EAAQ7F,EAASC,GACnE,IAAI6F,EAAU1T,SAASC,cAAc,QAErCyT,EAAQC,IAAM,aACdD,EAAQvY,KAAO,WACf,IAAIyY,EAAiB,SAAS7F,GAG7B,GADA2F,EAAQhB,QAAUgB,EAAQf,OAAS,KAChB,SAAf5E,EAAM5S,KACTyS,QACM,CACN,IAAIiG,EAAY9F,IAAyB,SAAfA,EAAM5S,KAAkB,UAAY4S,EAAM5S,MAChE2Y,EAAW/F,GAASA,EAAMnT,QAAUmT,EAAMnT,OAAOqL,MAAQuN,EACzDO,EAAM,IAAIC,MAAM,qBAAuBnD,EAAU,cAAgBiD,EAAW,KAChFC,EAAIE,KAAO,wBACXF,EAAI5Y,KAAO0Y,EACXE,EAAIpF,QAAUmF,EACdJ,EAAQxU,WAAW4T,YAAYY,GAC/B7F,EAAOkG,EACR,CACD,EASA,OARAL,EAAQhB,QAAUgB,EAAQf,OAASiB,EACnCF,EAAQzN,KAAOuN,EAEXC,EACHA,EAAOvU,WAAWgV,aAAaR,EAASD,EAAOU,aAE/CnU,SAASgT,KAAKxS,YAAYkT,GAEpBA,CACR,EACIU,EAAiB,SAASnO,EAAMuN,GAEnC,IADA,IAAIa,EAAmBrU,SAASiS,qBAAqB,QAC7CnC,EAAI,EAAGA,EAAIuE,EAAiBjS,OAAQ0N,IAAK,CAChD,IAAIrT,EAAM4X,EAAiBvE,GACvBwE,EAAW7X,EAAI0V,aAAa,cAAgB1V,EAAI0V,aAAa,QACjE,GAAe,eAAZ1V,EAAIkX,MAAyBW,IAAarO,GAAQqO,IAAad,GAAW,OAAO/W,CACrF,CACA,IAAI8X,EAAoBvU,SAASiS,qBAAqB,SACtD,IAAQnC,EAAI,EAAGA,EAAIyE,EAAkBnS,OAAQ0N,IAAK,CAC7CrT,EAAM8X,EAAkBzE,GACxBwE,EAAW7X,EAAI0V,aAAa,aAChC,GAAGmC,IAAarO,GAAQqO,IAAad,EAAU,OAAO/W,CACvD,CACD,EACI+X,EAAiB,SAAS3D,GAC7B,OAAO,IAAIC,SAAQ,SAASlD,EAASC,GACpC,IAAI5H,EAAO+I,EAAoBmC,SAASN,GACpC2C,EAAWxE,EAAoBsE,EAAIrN,EACvC,GAAGmO,EAAenO,EAAMuN,GAAW,OAAO5F,IAC1C2F,EAAiB1C,EAAS2C,EAAU,KAAM5F,EAASC,EACpD,GACD,EAEI4G,EAAqB,CACxB,KAAM,GAGPzF,EAAoB2B,EAAE+D,QAAU,SAAS7D,EAASI,GACjD,IAAI0D,EAAY,CAAC,KAAO,GACrBF,EAAmB5D,GAAUI,EAASY,KAAK4C,EAAmB5D,IACzB,IAAhC4D,EAAmB5D,IAAkB8D,EAAU9D,IACtDI,EAASY,KAAK4C,EAAmB5D,GAAW2D,EAAe3D,GAASrL,MAAK,WACxEiP,EAAmB5D,GAAW,CAC/B,IAAG,SAASD,GAEX,aADO6D,EAAmB5D,GACpBD,CACP,IAEF,CAtE2C,C,eAA3C,sBACA,qCACC,EAAD,iBACA,kBACC8C,EAAQ,OAAT,EACCA,EAAQ,QAAT,YACA,mCACA,8DACE,EAAF,6BACE,EAAF,UACE,EAAF,0BACE,EAAF,EACC,EACA,EAAD,OAEC,IAAD,2CAEC,OADA,EAAD,eACA,CACA,EACA,gBAEC,IADA,IAAD,wCACA,IAAgB,WAA6B,KAC7C,WACA,sDACA,gDACC,CACA,IAAD,yCACC,IAAD,IAAgB,WAA8B,KAC9C,OACA,8BACA,wBACA,CACA,EACA,cACC,OAAD,2BACE,IAAI,EAAN,cACM,EAAN,MACE,GAAG,EAAL,gBACA,QACC,GACD,EAEA,GACC,KAAD,GAGA,0BACC,IAAD,GAAkB,QAClB,kBACA,gBACE,EAAF,gCACA,MACA,IAAG,YAEH,aADA,KACA,CACA,IAEA,C,eCpDA,IAAIkB,EAAkB,CACrB,KAAM,GAGP5F,EAAoB2B,EAAEX,EAAI,SAASa,EAASI,GAE1C,IAAI4D,EAAqB7F,EAAoByB,EAAEmE,EAAiB/D,GAAW+D,EAAgB/D,QAAWnP,EACtG,GAA0B,IAAvBmT,EAGF,GAAGA,EACF5D,EAASY,KAAKgD,EAAmB,QAC3B,CAGL,IAAIC,EAAU,IAAIhE,SAAQ,SAASlD,EAASC,GAAUgH,EAAqBD,EAAgB/D,GAAW,CAACjD,EAASC,EAAS,IACzHoD,EAASY,KAAKgD,EAAmB,GAAKC,GAGtC,IAAIpG,EAAMM,EAAoBsE,EAAItE,EAAoBkC,EAAEL,GAEpDkE,EAAQ,IAAIf,MACZgB,EAAe,SAASjH,GAC3B,GAAGiB,EAAoByB,EAAEmE,EAAiB/D,KACzCgE,EAAqBD,EAAgB/D,GACX,IAAvBgE,IAA0BD,EAAgB/D,QAAWnP,GACrDmT,GAAoB,CACtB,IAAIhB,EAAY9F,IAAyB,SAAfA,EAAM5S,KAAkB,UAAY4S,EAAM5S,MAChE8Z,EAAUlH,GAASA,EAAMnT,QAAUmT,EAAMnT,OAAO2X,IACpDwC,EAAMG,QAAU,iBAAmBrE,EAAU,cAAgBgD,EAAY,KAAOoB,EAAU,IAC1FF,EAAMzb,KAAO,iBACbyb,EAAM5Z,KAAO0Y,EACbkB,EAAMpG,QAAUsG,EAChBJ,EAAmB,GAAGE,EACvB,CAEF,EACA/F,EAAoB2C,EAAEjD,EAAKsG,EAAc,SAAWnE,EAASA,EAE/D,CAEH,EAUA7B,EAAoBQ,EAAEQ,EAAI,SAASa,GAAW,OAAoC,IAA7B+D,EAAgB/D,EAAgB,EAGrF,IAAIsE,EAAuB,SAASC,EAA4B5Z,GAC/D,IAKIyT,EAAU4B,EALVpB,EAAWjU,EAAK,GAChB6Z,EAAc7Z,EAAK,GACnB8Z,EAAU9Z,EAAK,GAGIsU,EAAI,EAC3B,GAAGL,EAAS8F,MAAK,SAAS1b,GAAM,OAA+B,IAAxB+a,EAAgB/a,EAAW,IAAI,CACrE,IAAIoV,KAAYoG,EACZrG,EAAoByB,EAAE4E,EAAapG,KACrCD,EAAoB1N,EAAE2N,GAAYoG,EAAYpG,IAGhD,GAAGqG,EAAS,IAAI/I,EAAS+I,EAAQtG,EAClC,CAEA,IADGoG,GAA4BA,EAA2B5Z,GACrDsU,EAAIL,EAASrN,OAAQ0N,IACzBe,EAAUpB,EAASK,GAChBd,EAAoByB,EAAEmE,EAAiB/D,IAAY+D,EAAgB/D,IACrE+D,EAAgB/D,GAAS,KAE1B+D,EAAgB/D,GAAW,EAE5B,OAAO7B,EAAoBQ,EAAEjD,EAC9B,EAEIiJ,EAAqBC,KAAK,oBAAsBA,KAAK,qBAAuB,GAChFD,EAAmBjX,QAAQ4W,EAAqBrH,KAAK,KAAM,IAC3D0H,EAAmB3D,KAAOsD,EAAqBrH,KAAK,KAAM0H,EAAmB3D,KAAK/D,KAAK0H,G,ICpFvF,IAAIE,EAAsB1G,EAAoBQ,OAAE9N,EAAW,CAAC,OAAO,WAAa,OAAOsN,EAAoB,MAAQ,IACnH0G,EAAsB1G,EAAoBQ,EAAEkG,E","sources":["webpack://vero/./src/shared/js/components/search/SearchField.vue?3b58","webpack://vero/src/shared/js/components/search/SearchField.vue","webpack://vero/./src/shared/js/components/search/SearchField.vue?2d07","webpack://vero/./src/shared/js/components/search/SearchField.vue","webpack://vero/./src/api/SearchApi.js","webpack://vero/./src/router/router.js","webpack://vero/./src/epiforms/epiform.custom.validate.js","webpack://vero/./src/utils/translation.js","webpack://vero/./src/utils/customPolyfills.js","webpack://vero/./src/shared/js/components/navigation/MobileMenu.vue?0069","webpack://vero/./src/api/MobileMenuApi.js","webpack://vero/src/shared/js/components/navigation/MobileMenu.vue","webpack://vero/./src/shared/js/components/navigation/MobileMenu.vue?bb42","webpack://vero/./src/shared/js/components/navigation/MobileMenu.vue","webpack://vero/./src/shared/js/components/BackToTop.vue?7498","webpack://vero/src/shared/js/components/BackToTop.vue","webpack://vero/./src/shared/js/components/BackToTop.vue?afa8","webpack://vero/./src/shared/js/components/BackToTop.vue","webpack://vero/./src/shared/js/components/AnchorLink.vue?ace3","webpack://vero/src/shared/js/components/AnchorLink.vue","webpack://vero/./src/shared/js/components/AnchorLink.vue?5288","webpack://vero/./src/shared/js/components/AnchorLink.vue","webpack://vero/./src/shared/js/components/inline/MegaMenu.js","webpack://vero/./src/shared/js/components/search/SearchSuggestions.vue?acbb","webpack://vero/src/shared/js/components/search/SearchSuggestions.vue","webpack://vero/./src/shared/js/components/search/SearchSuggestions.vue?8dd9","webpack://vero/./src/shared/js/components/search/SearchSuggestions.vue","webpack://vero/./src/shared/js/components/navigation/LanguageMenuDropdown.vue?5eb0","webpack://vero/src/shared/js/components/navigation/LanguageMenuDropdown.vue","webpack://vero/./src/shared/js/components/navigation/LanguageMenuDropdown.vue?895f","webpack://vero/./src/shared/js/components/navigation/LanguageMenuDropdown.vue","webpack://vero/./src/shared/js/components/Icon.js","webpack://vero/./src/shared/js/components/Feedback.vue?b481","webpack://vero/./src/api/FeedbackApi.js","webpack://vero/src/shared/js/components/Feedback.vue","webpack://vero/./src/shared/js/components/Feedback.vue?778b","webpack://vero/./src/shared/js/components/Feedback.vue","webpack://vero/./src/shared/js/components/inline/HeaderMobileMenu.js","webpack://vero/./src/shared/js/components/mobile-navigation/MobileMenuLanguage.vue?3796","webpack://vero/src/shared/js/components/mobile-navigation/MobileMenuLanguage.vue","webpack://vero/./src/shared/js/components/mobile-navigation/MobileMenuLanguage.vue?1926","webpack://vero/./src/shared/js/components/mobile-navigation/MobileMenuLanguage.vue","webpack://vero/./src/shared/js/components/mobile-navigation/MobileMenuNavigation.vue?fc2a","webpack://vero/src/shared/js/components/mobile-navigation/MobileMenuNavigation.vue","webpack://vero/./src/shared/js/components/mobile-navigation/MobileMenuNavigation.vue?ba65","webpack://vero/./src/shared/js/components/mobile-navigation/MobileMenuNavigation.vue","webpack://vero/./src/sites/incomes_register/js/components.js","webpack://vero/src/shared/js/directives/Transformer.vue","webpack://vero/./src/shared/js/directives/Transformer.vue","webpack://vero/./src/shared/js/directives/Transformer.vue?55d0","webpack://vero/src/shared/js/directives/Piwik/PiwikLink.vue","webpack://vero/./src/shared/js/directives/Piwik/PiwikLink.vue","webpack://vero/./src/shared/js/directives/Piwik/PiwikLink.vue?bb68","webpack://vero/src/shared/js/directives/Piwik/PiwikChildLinks.vue","webpack://vero/./src/shared/js/directives/Piwik/PiwikChildLinks.vue","webpack://vero/./src/shared/js/directives/Piwik/PiwikChildLinks.vue?1508","webpack://vero/src/shared/js/directives/Piwik/PiwikSearchForm.vue","webpack://vero/./src/shared/js/directives/Piwik/PiwikSearchForm.vue","webpack://vero/./src/shared/js/directives/Piwik/PiwikSearchForm.vue?dbdc","webpack://vero/./src/sites/incomes_register/js/app.js","webpack://vero/./src/utils/api.js","webpack://vero/webpack/bootstrap","webpack://vero/webpack/runtime/chunk loaded","webpack://vero/webpack/runtime/compat get default export","webpack://vero/webpack/runtime/define property getters","webpack://vero/webpack/runtime/ensure chunk","webpack://vero/webpack/runtime/get javascript chunk filename","webpack://vero/webpack/runtime/get mini-css chunk filename","webpack://vero/webpack/runtime/global","webpack://vero/webpack/runtime/hasOwnProperty shorthand","webpack://vero/webpack/runtime/load script","webpack://vero/webpack/runtime/make namespace object","webpack://vero/webpack/runtime/node module decorator","webpack://vero/webpack/runtime/publicPath","webpack://vero/webpack/runtime/css loading","webpack://vero/webpack/runtime/jsonp chunk loading","webpack://vero/webpack/startup"],"sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('form',{directives:[{name:\"piwik-search-form\",rawName:\"v-piwik-search-form\",value:({ trackingDisabled: _vm.trackingDisabled }),expression:\"{ trackingDisabled: trackingDisabled }\"}],staticClass:\"search-field\",attrs:{\"method\":\"GET\",\"data-cy\":\"search-field\",\"id\":_vm.id,\"name\":_vm.name},on:{\"submit\":function($event){$event.preventDefault();return _vm.onSubmit(_vm.query)}}},[(_vm.showLabel)?_c('div',{staticClass:\"search-field__label\",attrs:{\"for\":\"search-field\",\"data-cy\":\"search-field-label\",\"placeholder\":_vm.$trans('/common/searchfromsite'),\"aria-label\":_vm.$trans('/common/searchfromsite')}},[_vm._v(\" \"+_vm._s(_vm.$trans('/common/searchfromsite'))+\" \")]):_vm._e(),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.query),expression:\"query\"}],ref:\"query\",staticClass:\"search-field__input\",attrs:{\"type\":\"text\",\"placeholder\":!_vm.showAlternateIcon ? _vm.$trans('/common/writesearchword') : '',\"aria-label\":_vm.$trans('/common/writesearchword'),\"data-piwik-event-category\":(_vm.componentLocation + \"_hakulaatikko\"),\"data-piwik-event-action\":_vm.pageName,\"data-cy\":\"searchField\"},domProps:{\"value\":(_vm.query)},on:{\"input\":[function($event){if($event.target.composing){ return; }_vm.query=$event.target.value},_vm.onSearch]}}),_c('button',{staticClass:\"search-field__button\",attrs:{\"type\":\"submit\",\"aria-label\":_vm.$trans('/accessibility/initsearch'),\"data-piwik-event-category\":(_vm.componentLocation + \"_hakunappi\"),\"data-piwik-event-action\":_vm.pageName,\"data-cy\":\"searchFieldSubmit\"}},[_c('icon',{attrs:{\"glyph\":_vm.getGlyph}})],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n <form\r\n @submit.prevent=\"onSubmit(query)\"\r\n method=\"GET\"\r\n class=\"search-field\"\r\n data-cy=\"search-field\"\r\n :id=\"id\"\r\n :name=\"name\"\r\n v-piwik-search-form=\"{ trackingDisabled: trackingDisabled }\"\r\n >\r\n <div\r\n v-if=\"showLabel\"\r\n for=\"search-field\"\r\n data-cy=\"search-field-label\"\r\n class=\"search-field__label\"\r\n :placeholder=\"$trans('/common/searchfromsite')\"\r\n :aria-label=\"$trans('/common/searchfromsite')\"\r\n >\r\n {{ $trans('/common/searchfromsite') }}\r\n </div>\r\n <input\r\n type=\"text\"\r\n class=\"search-field__input\"\r\n :placeholder=\"!showAlternateIcon ? $trans('/common/writesearchword') : ''\"\r\n :aria-label=\"$trans('/common/writesearchword')\"\r\n v-model=\"query\"\r\n ref=\"query\"\r\n @input=\"onSearch\"\r\n :data-piwik-event-category=\"`${componentLocation}_hakulaatikko`\"\r\n :data-piwik-event-action=\"pageName\"\r\n data-cy=\"searchField\"\r\n />\r\n <button\r\n type=\"submit\"\r\n :aria-label=\"$trans('/accessibility/initsearch')\"\r\n class=\"search-field__button\"\r\n :data-piwik-event-category=\"`${componentLocation}_hakunappi`\"\r\n :data-piwik-event-action=\"pageName\"\r\n data-cy=\"searchFieldSubmit\"\r\n >\r\n <icon :glyph=\"getGlyph\"></icon>\r\n </button>\r\n </form>\r\n</template>\r\n\r\n<script>\r\nexport default {\r\n name: 'SearchField',\r\n props: {\r\n queryString: { type: String, default: null },\r\n onSubmit: { type: Function, default: () => {} },\r\n onKeyUpEnabled: { type: Boolean, default: false },\r\n onKeyUp: { type: Function, default: () => {} },\r\n pageName: { type: String, default: '' },\r\n showAlternateIcon: { type: Boolean, default: false },\r\n componentLocation: { type: String, default: '' },\r\n trackingDisabled: { type: Boolean, default: false },\r\n showLabel: { type: Boolean, default: false },\r\n id: { type: String, default: 'search_field' },\r\n name: { type: String, default: 'searchfield' }\r\n },\r\n data() {\r\n return {\r\n query: null\r\n };\r\n },\r\n mounted() {\r\n this.query = this.queryString;\r\n },\r\n methods: {\r\n onSearch() {\r\n if (this.onKeyUpEnabled) {\r\n this.onKeyUp(this.query);\r\n }\r\n }\r\n },\r\n computed: {\r\n getGlyph() {\r\n return !this.showAlternateIcon ? '#icon-search' : '#icon-search-v2';\r\n }\r\n }\r\n};\r\n</script>\r\n","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./SearchField.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./SearchField.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./SearchField.vue?vue&type=template&id=57771a7d\"\nimport script from \"./SearchField.vue?vue&type=script&lang=js\"\nexport * from \"./SearchField.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import API from 'utils/api';\r\n\r\n/**\r\n *\r\n * @export\r\n * @param {string } query - id\r\n * @param {string } language - language\r\n * @returns\r\n */\r\nexport function getSearchSuggestions(\r\n searchSuggestionsUrl,\r\n query,\r\n language,\r\n rootFilter = [],\r\n count\r\n) {\r\n return API.get(searchSuggestionsUrl, {\r\n params: {\r\n query,\r\n language,\r\n rootFilter,\r\n count\r\n }\r\n });\r\n}\r\n\r\n/**\r\n *\r\n *\r\n * @export\r\n * @param {any} term - Search term\r\n * @param {string} [language='fi'] - Language\r\n * @param {number} [page=1] - Current page\r\n * @param {number} [pagesize=10] - Number results per page\r\n * @param {number} [rootFilter] - root content ids where the search is targeted\r\n * @param {number} [sort] - Sort order of results\r\n * @param {array} [tag] - Filter by tags\r\n * @param {number} [year] - Filter by year\r\n * @param {number} [typeId] - Filter by content types\r\n * @param {boolean} [showAllVersions] = show all versions of files\r\n * @returns\r\n */\r\nexport function getSearchResults(\r\n searchFullUrl,\r\n query,\r\n language = 'fi',\r\n page = 1,\r\n pageSize = 10,\r\n rootFilter = [],\r\n sort,\r\n tag = [],\r\n year,\r\n typeId = [],\r\n showAllVersions = false\r\n) {\r\n return API.get(searchFullUrl, {\r\n params: {\r\n query,\r\n language,\r\n page,\r\n pageSize,\r\n rootFilter,\r\n sort,\r\n tag,\r\n year,\r\n typeId,\r\n showAllVersions\r\n }\r\n });\r\n}\r\n\r\n/**\r\n *\r\n * @export\r\n * @param {string } query - id\r\n * @param {string } language - language\r\n * @returns\r\n */\r\nconst taxOfficeApiUrl = '/api/taxofficesearch';\r\n\r\nexport function getTaxOffices(language, municipality, section) {\r\n return API.get(taxOfficeApiUrl, {\r\n params: {\r\n language,\r\n municipality,\r\n section\r\n }\r\n });\r\n}\r\n\r\nconst csvApiUrl = '/api/csv/results';\r\n\r\nexport function getCsvSearchResults(language, query, cid) {\r\n return API.get(csvApiUrl, {\r\n params: {\r\n language,\r\n query,\r\n cid\r\n }\r\n });\r\n}\r\n\r\nexport default {\r\n getSearchSuggestions,\r\n getSearchResults,\r\n getTaxOffices,\r\n getCsvSearchResults\r\n};\r\n","import Vue from 'vue';\r\nimport VueRouter from 'vue-router';\r\n\r\nVue.use(VueRouter);\r\n\r\nconst routes = [];\r\n\r\n// https://github.com/vuejs/vue-router\r\nexport default new VueRouter({\r\n routes, // short for routes: routes,\r\n mode: 'history',\r\n base: window.BASE_PATH || '/',\r\n fallback: false\r\n});\r\n","import isNil from 'lodash/isNil';\r\nimport jump from 'jump.js';\r\n\r\nfunction getFilteredArray(arr) {\r\n const array = Object.keys(arr).map(k => arr[k]);\r\n return array.filter(function (field) {\r\n return field.name ? field.name.includes('__field') : false;\r\n });\r\n}\r\n\r\nfunction setValidationAttributes(arr) {\r\n arr.forEach(function (element) {\r\n // Clear all aria-invalid attributes\r\n element.removeAttribute('aria-invalid');\r\n // If not visible, do not set validation attributes\r\n if (element.offsetHeight === 0) {\r\n return;\r\n }\r\n const isValid = element.validity.valid && checkForValidationError(element);\r\n if (!isValid) {\r\n element.setAttribute('aria-invalid', 'true');\r\n return;\r\n }\r\n element.setAttribute('aria-invalid', 'false');\r\n });\r\n}\r\n\r\nfunction checkForValidationError(element) {\r\n const isCheckBoxOrRadio = element.type === 'radio' || element.type === 'checkbox';\r\n const validationErrorElement = isCheckBoxOrRadio\r\n ? element.parentNode.parentNode.nextElementSibling\r\n : element.nextElementSibling;\r\n return (\r\n validationErrorElement.matches('.Form__Element__ValidationError') &&\r\n validationErrorElement.offsetParent === null\r\n );\r\n}\r\n\r\nfunction validateForm(epiForm) {\r\n const validatedFields = epiForm.currentTarget;\r\n if (!isNil(validatedFields)) {\r\n const filteredArray = getFilteredArray(validatedFields);\r\n if (!isNil(filteredArray)) {\r\n setValidationAttributes(filteredArray);\r\n }\r\n }\r\n}\r\n\r\nfunction addTimeStamp() {\r\n const dt = new Date();\r\n const timestamp = document.createElement('p');\r\n timestamp.innerHTML = dt.toLocaleString();\r\n timestamp.setAttribute('data-cy', 'epiforms-timestamp');\r\n const successWrapperExists = setInterval(function () {\r\n const messageWrapper = document.querySelector('.Form__Success__Message');\r\n if (!isNil(messageWrapper)) {\r\n messageWrapper.appendChild(timestamp);\r\n clearInterval(successWrapperExists);\r\n }\r\n // Stop interval anyway after 10 seconds if element is not found\r\n if (new Date().getTime() - dt.getTime() > 10000) {\r\n clearInterval(successWrapperExists);\r\n return;\r\n }\r\n }, 100);\r\n}\r\n\r\nfunction focusToStartOfForm() {\r\n jump('#form-progress-jump-helper', {\r\n a11y: true,\r\n duration: 0\r\n });\r\n}\r\n\r\nfunction onEpiformsValidating(epiForm) {\r\n validateForm(epiForm);\r\n}\r\n\r\nfunction onEpiformsSubmitted() {\r\n addTimeStamp();\r\n}\r\n\r\nfunction onEpiformsSteps() {\r\n focusToStartOfForm();\r\n}\r\n\r\nexport default {\r\n onEpiformsValidating,\r\n onEpiformsSubmitted,\r\n onEpiformsSteps\r\n};\r\n","function format(string, args) {\r\n return string.replace(/\\{(\\d+)\\}/g, function (m, n) {\r\n return args[n];\r\n });\r\n}\r\n\r\nexport default function translate(translationKey, ...args) {\r\n if (window.i18n === undefined) {\r\n return translationKey;\r\n }\r\n\r\n const translationString = window.i18n[translationKey];\r\n\r\n if (translationString === undefined || translationString === null) {\r\n return translationKey;\r\n }\r\n return format(translationString, args);\r\n}\r\n","export default function polyfill() {\r\n if (typeof Object.assign !== 'function') {\r\n // Must be writable: true, enumerable: false, configurable: true\r\n Object.defineProperty(Object, 'assign', {\r\n value: function assign(target) {\r\n // .length of function is 2\r\n\r\n if (target == null) {\r\n // TypeError if undefined or null\r\n throw new TypeError('Cannot convert undefined or null to object');\r\n }\r\n\r\n const to = Object(target);\r\n\r\n // eslint-disable-next-line no-plusplus\r\n for (let index = 1; index < arguments.length; index++) {\r\n // eslint-disable-next-line prefer-rest-params\r\n const nextSource = arguments[index];\r\n\r\n if (nextSource != null) {\r\n // eslint-disable-next-line no-restricted-syntax\r\n for (const nextKey in nextSource) {\r\n if (Object.prototype.hasOwnProperty.call(nextSource, nextKey)) {\r\n to[nextKey] = nextSource[nextKey];\r\n }\r\n }\r\n }\r\n }\r\n return to;\r\n },\r\n writable: true,\r\n configurable: true\r\n });\r\n }\r\n\r\n // Matches polifull\r\n if (Element && !Element.prototype.matches) {\r\n Element.prototype.matches =\r\n Element.prototype.matchesSelector ||\r\n Element.prototype.webkitMatchesSelector ||\r\n Element.prototype.mozMatchesSelector ||\r\n Element.prototype.msMatchesSelector ||\r\n Element.prototype.oMatchesSelector;\r\n }\r\n}\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{},[_c('button',{ref:\"toggle\",staticClass:\"mobile-button menu-button hamburger\",attrs:{\"id\":\"mobile-menu-button\",\"aria-controls\":\"mobile-menu\",\"aria-label\":_vm.$trans('/accessibility/openmenumobile'),\"aria-haspopup\":\"true\",\"aria-expanded\":_vm.isMobileMenuVisible ? 'true' : 'false'},on:{\"click\":function($event){return _vm.toggleMobileMenu()}}},[_c('span',{staticClass:\"hamburger-box\"},[(_vm.showAlternateIcon)?_c('icon',{attrs:{\"glyph\":\"#icon-menu\"}}):_vm._e(),(!_vm.showAlternateIcon)?_c('span',{staticClass:\"hamburger-inner\"}):_vm._e()],1),_vm._v(\" \"+_vm._s(_vm.$trans('/common/menu'))+\" \")]),_c('Trap',{attrs:{\"disabled\":!_vm.isMobileMenuVisible}},[(_vm.isMobileMenuVisible)?_c('div',{ref:\"mobilemenu_wrapper\",staticClass:\"panel-offcanvas\",attrs:{\"role\":\"region\",\"aria-labelledby\":\"mobile-menu-button\",\"id\":\"mobile-menu\"},on:{\"keyup\":function($event){if(!$event.type.indexOf('key')&&$event.keyCode!==27){ return null; }return _vm.toggleMobileMenu($event)}}},[_c('div',{staticClass:\"panel-offcanvas__top\"},[_c('button',{staticClass:\"panel-offcanvas__close\",attrs:{\"id\":\"panel-close\",\"aria-label\":((_vm.$trans('/common/close')) + \" \" + (_vm.$trans('/accessibility/menumobile')))},on:{\"click\":function($event){return _vm.toggleMobileMenu()}}},[_c('span',[_vm._v(_vm._s(_vm.$trans('/common/close')))]),_c('icon',{attrs:{\"glyph\":_vm.getGlyph}})],1),_c('a',{staticClass:\"panel-offcanvas__logo\",attrs:{\"href\":_vm.viewModel.RootPageUrl}},[_c('img',{attrs:{\"src\":_vm.logoUrl,\"alt\":_vm.$trans('/accessibility/tofrontpage')}})]),(_vm.logoUrl2)?_c('div',{staticClass:\"panel-offcanvas__logo secondary\"},[_c('img',{attrs:{\"src\":_vm.logoUrl2,\"alt\":_vm.$trans('/accessibility/tofrontpage')}})]):_vm._e(),_vm._t(\"default\")],2),_c('nav',{ref:\"mobilemenu\",staticClass:\"menu-mobile\",attrs:{\"tabindex\":\"-1\"}},[(_vm.isLoading)?_c('div',{staticClass:\"menu-mobile__loader\"},[_c('div',{staticClass:\"loader\"}),_c('span',[_vm._v(_vm._s(_vm.$trans('/common/menuloading')))])]):_vm._e(),_c('p',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.showError),expression:\"showError\"}]},[_vm._v(_vm._s(_vm.$trans('/common/menuerror')))]),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.isLoading),expression:\"!isLoading\"}]},[(_vm.getCrumbsVisibility())?_c('div',{staticClass:\"menu-mobile__crumbs\"},[_c('span',[_vm._v(_vm._s(_vm.MobileMenuLinks.ParentName))])]):_vm._e(),_c('div',{staticClass:\"menu-mobile__panels\"},[_c('div',{staticClass:\"menu-panel\"},[(_vm.MobileMenuLinks.ParentId !== null)?_c('button',{staticClass:\"prev\",attrs:{\"aria-label\":_vm.$trans('/accessibility/previouslevel')},on:{\"click\":function($event){return _vm.move(_vm.MobileMenuLinks.ParentId)}}}):_vm._e(),(_vm.MobileMenuLinks.Links && _vm.MobileMenuLinks.Links.length)?_c('ul',_vm._l((_vm.MobileMenuLinks.Links),function(link){return _c('li',{key:link.Id,class:{ selected: _vm.isLinkSelected(link.Id) }},[_c('a',{class:{ haschildren: link.HasChildren },attrs:{\"href\":link.Url,\"aria-selected\":_vm.isLinkSelected(link.Id)}},[_vm._v(_vm._s(link.Name))]),(link.HasChildren)?_c('button',{staticClass:\"next\",attrs:{\"aria-label\":_vm.$trans('/accessibility/nextlevel')},on:{\"click\":function($event){return _vm.move(link.Id)}}}):_vm._e()])}),0):_vm._e()])])])])]):_vm._e()])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import API from 'utils/api';\r\n\r\n/**\r\n *\r\n * @export\r\n * @param {string } mobileMenuApiUrl - api url\r\n * @param {int} id - id\r\n * @param {string } language - language\r\n * @param {string} type - type\r\n * @returns\r\n */\r\nexport function getMobileMenuItems(mobileMenuApiUrl, id, language, type) {\r\n return API.get(mobileMenuApiUrl, {\r\n params: {\r\n id,\r\n language,\r\n type\r\n }\r\n });\r\n}\r\n\r\nexport default {\r\n getMobileMenuItems\r\n};\r\n","<template>\r\n <div v-cloak>\r\n <button\r\n class=\"mobile-button menu-button hamburger\"\r\n id=\"mobile-menu-button\"\r\n aria-controls=\"mobile-menu\"\r\n :aria-label=\"$trans('/accessibility/openmenumobile')\"\r\n aria-haspopup=\"true\"\r\n :aria-expanded=\"isMobileMenuVisible ? 'true' : 'false'\"\r\n @click=\"toggleMobileMenu()\"\r\n ref=\"toggle\"\r\n >\r\n <span class=\"hamburger-box\">\r\n <icon v-if=\"showAlternateIcon\" glyph=\"#icon-menu\"></icon>\r\n <span v-if=\"!showAlternateIcon\" class=\"hamburger-inner\"></span>\r\n </span>\r\n {{ $trans('/common/menu') }}\r\n </button>\r\n <Trap :disabled=\"!isMobileMenuVisible\">\r\n <div\r\n class=\"panel-offcanvas\"\r\n role=\"region\"\r\n aria-labelledby=\"mobile-menu-button\"\r\n id=\"mobile-menu\"\r\n ref=\"mobilemenu_wrapper\"\r\n v-if=\"isMobileMenuVisible\"\r\n v-cloak\r\n @keyup.27=\"toggleMobileMenu\"\r\n >\r\n <div class=\"panel-offcanvas__top\">\r\n <button\r\n class=\"panel-offcanvas__close\"\r\n id=\"panel-close\"\r\n :aria-label=\"`${$trans('/common/close')} ${$trans('/accessibility/menumobile')}`\"\r\n @click=\"toggleMobileMenu()\"\r\n >\r\n <span>{{ $trans('/common/close') }}</span>\r\n <icon :glyph=\"getGlyph\"></icon>\r\n </button>\r\n <a :href=\"viewModel.RootPageUrl\" class=\"panel-offcanvas__logo\">\r\n <img :src=\"logoUrl\" :alt=\"$trans('/accessibility/tofrontpage')\" />\r\n </a>\r\n <div class=\"panel-offcanvas__logo secondary\" v-if=\"logoUrl2\">\r\n <img :src=\"logoUrl2\" :alt=\"$trans('/accessibility/tofrontpage')\" />\r\n </div>\r\n <slot />\r\n </div>\r\n <nav class=\"menu-mobile\" ref=\"mobilemenu\" tabindex=\"-1\">\r\n <div class=\"menu-mobile__loader\" v-if=\"isLoading\">\r\n <div class=\"loader\"></div>\r\n <span>{{ $trans('/common/menuloading') }}</span>\r\n </div>\r\n <p v-show=\"showError\" v-cloak>{{ $trans('/common/menuerror') }}</p>\r\n <div v-show=\"!isLoading\" v-cloak>\r\n <div class=\"menu-mobile__crumbs\" v-if=\"getCrumbsVisibility()\">\r\n <span>{{ MobileMenuLinks.ParentName }}</span>\r\n </div>\r\n <div class=\"menu-mobile__panels\">\r\n <div class=\"menu-panel\">\r\n <button\r\n v-if=\"MobileMenuLinks.ParentId !== null\"\r\n class=\"prev\"\r\n @click=\"move(MobileMenuLinks.ParentId)\"\r\n :aria-label=\"$trans('/accessibility/previouslevel')\"\r\n ></button>\r\n <ul v-if=\"MobileMenuLinks.Links && MobileMenuLinks.Links.length\">\r\n <li\r\n v-for=\"link of MobileMenuLinks.Links\"\r\n v-bind:class=\"{ selected: isLinkSelected(link.Id) }\"\r\n :key=\"link.Id\"\r\n >\r\n <a\r\n :href=\"link.Url\"\r\n v-bind:class=\"{ haschildren: link.HasChildren }\"\r\n :aria-selected=\"isLinkSelected(link.Id)\"\r\n >{{ link.Name }}</a\r\n >\r\n <button\r\n v-if=\"link.HasChildren\"\r\n class=\"next\"\r\n @click=\"move(link.Id)\"\r\n :aria-label=\"$trans('/accessibility/nextlevel')\"\r\n ></button>\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n </div>\r\n </nav>\r\n </div>\r\n </Trap>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport _find from 'lodash/find';\r\nimport _first from 'lodash/first';\r\nimport _isNil from 'lodash/isNil';\r\nimport MobileMenuApi from 'api/MobileMenuApi';\r\nimport Trap from 'vue-focus-lock';\r\n\r\nexport default {\r\n name: 'MobileMenu',\r\n components: { Trap },\r\n props: {\r\n viewModel: { type: Object, default: () => {} },\r\n logoUrl: { type: String, default: '' },\r\n logoUrl2: { type: String, default: '' },\r\n showAlternateIcon: { type: Boolean, default: false }\r\n },\r\n data() {\r\n return {\r\n results: [],\r\n MobileMenuLinks: [],\r\n errors: [],\r\n language: window.site_locale,\r\n isLoading: false,\r\n showError: false,\r\n isMobileMenuVisible: false,\r\n isMenuCreated: false\r\n };\r\n },\r\n computed: {\r\n getGlyph() {\r\n const iconClose = !this.showAlternateIcon ? '#icon-close' : '#icon-close-v2';\r\n return this.isVisible ? '#icon-close' : iconClose;\r\n }\r\n },\r\n methods: {\r\n toggleMobileMenu() {\r\n if (!this.isMenuCreated) {\r\n this.createMobileMenu();\r\n }\r\n this.isMobileMenuVisible = !this.isMobileMenuVisible;\r\n this.$events.emit('transformEvent', this.isMobileMenuVisible);\r\n if (!this.isMobileMenuVisible) {\r\n this.addFocus(this.$refs.toggle);\r\n }\r\n },\r\n getVisibleMenu(panelId = this.viewModel.ParentPageId) {\r\n const visibleMenu = _find(this.results, { Id: panelId });\r\n return !_isNil(visibleMenu) ? visibleMenu : _first(this.results);\r\n },\r\n isLinkSelected(panelId) {\r\n return panelId === this.viewModel.CurrentPageId;\r\n },\r\n getCrumbsVisibility() {\r\n return !_isNil(this.MobileMenuLinks.ParentName);\r\n },\r\n move(targetId) {\r\n this.MobileMenuLinks = this.getVisibleMenu(targetId);\r\n this.addFocus(this.$refs.mobilemenu);\r\n },\r\n createMobileMenu() {\r\n this.isLoading = true;\r\n\r\n MobileMenuApi.getMobileMenuItems(\r\n this.viewModel.MobileMenuApiUrl,\r\n this.viewModel.RootPageId,\r\n this.language\r\n )\r\n .then(response => {\r\n this.isLoading = false;\r\n this.results = response;\r\n this.MobileMenuLinks = this.getVisibleMenu();\r\n this.isMenuCreated = true;\r\n })\r\n .catch(() => {\r\n this.isLoading = false;\r\n this.showError = true;\r\n });\r\n },\r\n addFocus(el) {\r\n if (el) {\r\n this.$nextTick(() => el.focus());\r\n }\r\n }\r\n }\r\n};\r\n</script>\r\n","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./MobileMenu.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./MobileMenu.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./MobileMenu.vue?vue&type=template&id=85ee840a\"\nimport script from \"./MobileMenu.vue?vue&type=script&lang=js\"\nexport * from \"./MobileMenu.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('anchor-link',{attrs:{\"href\":\"#top\",\"css-class\":(_vm.getCssClass + \" back-to-top hidden-print\"),\"aria-label\":_vm.$trans('/common/backtotop'),\"glyph\":\"#icon-arrow-up\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n <anchor-link\r\n href=\"#top\"\r\n :css-class=\"`${getCssClass} back-to-top hidden-print`\"\r\n :aria-label=\"$trans('/common/backtotop')\"\r\n glyph=\"#icon-arrow-up\"\r\n >\r\n </anchor-link>\r\n</template>\r\n\r\n<script>\r\nexport default {\r\n name: 'BackToTop',\r\n props: {},\r\n data() {\r\n return {\r\n isVisible: false\r\n };\r\n },\r\n computed: {\r\n getCssClass() {\r\n return this.isVisible ? 'sticky' : '';\r\n }\r\n },\r\n methods: {\r\n handleScroll() {\r\n if (window.pageYOffset > 100 && !this.isVisible) {\r\n this.isVisible = true;\r\n }\r\n if (window.pageYOffset <= 100 && this.isVisible) {\r\n this.isVisible = false;\r\n }\r\n }\r\n },\r\n created() {\r\n window.addEventListener('scroll', this.handleScroll);\r\n },\r\n destroyed() {\r\n window.removeEventListener('scroll', this.handleScroll);\r\n }\r\n};\r\n</script>\r\n","import mod from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./BackToTop.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./BackToTop.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./BackToTop.vue?vue&type=template&id=45185fe0\"\nimport script from \"./BackToTop.vue?vue&type=script&lang=js\"\nexport * from \"./BackToTop.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('a',{class:_vm.cssClass,attrs:{\"href\":_vm.href,\"aria-hidden\":_vm.ariaHidden,\"aria-label\":_vm.ariaLabel},on:{\"click\":function($event){$event.preventDefault();return _vm.scrollToAnchor($event)}}},[_vm._v(\" \"+_vm._s(_vm.title)+\" \"),(_vm.glyph)?_c('icon',{attrs:{\"glyph\":_vm.glyph}}):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n <a\r\n :href=\"href\"\r\n :class=\"cssClass\"\r\n @click.prevent=\"scrollToAnchor\"\r\n :aria-hidden=\"ariaHidden\"\r\n :aria-label=\"ariaLabel\"\r\n >\r\n {{ title }}\r\n <icon v-if=\"glyph\" :glyph=\"glyph\" />\r\n </a>\r\n</template>\r\n\r\n<script>\r\nimport jump from 'jump.js';\r\n\r\nexport default {\r\n name: 'AnchorLink',\r\n props: {\r\n href: {\r\n type: String,\r\n default: ''\r\n },\r\n cssClass: {\r\n type: String,\r\n default: ''\r\n },\r\n title: {\r\n type: String,\r\n default: ''\r\n },\r\n ariaHidden: {\r\n type: String,\r\n default: undefined\r\n },\r\n ariaLabel: {\r\n type: String,\r\n default: undefined\r\n },\r\n glyph: {\r\n type: String,\r\n default: ''\r\n }\r\n },\r\n methods: {\r\n scrollToAnchor() {\r\n if (this.href) {\r\n jump(this.href, {\r\n a11y: true\r\n });\r\n }\r\n }\r\n }\r\n};\r\n</script>\r\n","import mod from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AnchorLink.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AnchorLink.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./AnchorLink.vue?vue&type=template&id=1213db68\"\nimport script from \"./AnchorLink.vue?vue&type=script&lang=js\"\nexport * from \"./AnchorLink.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import vClickOutside from 'v-click-outside';\r\n\r\nexport default {\r\n name: 'MegaMenu',\r\n props: {},\r\n data() {\r\n return {\r\n visibleMenuId: -1, // Search overlay = 0\r\n menuMainOverlay: null\r\n };\r\n },\r\n mounted() {\r\n this.menuMainOverlay = document.getElementById('menu_main_overlay');\r\n },\r\n methods: {\r\n isVisibleMenu(menuId) {\r\n return menuId === this.visibleMenuId;\r\n },\r\n setVisibleMenu(menuId) {\r\n // If menu is already visible, hide it, otherwise show it\r\n this.visibleMenuId = this.getVisibleMenuId(menuId);\r\n if (this.menuMainOverlay) {\r\n if (this.getVisibleMenuId(menuId) !== -1) {\r\n this.menuMainOverlay.style.display = 'none';\r\n } else {\r\n this.menuMainOverlay.style.display = 'block';\r\n }\r\n }\r\n },\r\n getVisibleMenuId(menuId) {\r\n return this.visibleMenuId === menuId ? -1 : menuId;\r\n },\r\n hideMenu() {\r\n if (this.visibleMenuId === -1) return;\r\n\r\n this.visibleMenuId = -1;\r\n if (this.menuMainOverlay) {\r\n this.menuMainOverlay.style.display = 'none';\r\n }\r\n }\r\n },\r\n directives: {\r\n clickOutside: vClickOutside.directive\r\n }\r\n};\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('Trap',{attrs:{\"disabled\":!_vm.showNewLayout ? !_vm.isVisible : !_vm.parentIsVisible}},[_c('button',{staticClass:\"search-button\",attrs:{\"aria-expanded\":_vm.isVisible ? 'true' : 'false',\"aria-haspopup\":\"true\",\"id\":\"search-overlay-button\",\"aria-controls\":\"search-overlay\",\"aria-label\":_vm.getAriaLabelForButton,\"data-cy\":\"search-overlay-toggle\"},on:{\"click\":_vm.toggleVisible}},[_c('span',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.showNewLayout),expression:\"!showNewLayout\"}],staticClass:\"search-button__wrapper\"},[_c('span',{staticClass:\"search-button__text\"},[_vm._v(_vm._s(_vm.getButtonText))]),_c('icon',{attrs:{\"glyph\":_vm.getGlyph}})],1),_c('span',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.showNewLayout),expression:\"showNewLayout\"}],staticClass:\"search-button__wrapper\"},[_c('icon',{attrs:{\"glyph\":_vm.getGlyph}}),_c('span',{staticClass:\"search-button__text\"},[_vm._v(_vm._s(_vm.getButtonText))])],1)]),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.showNewLayout ? _vm.isVisible : _vm.parentIsVisible),expression:\"!showNewLayout ? isVisible : parentIsVisible\"}],staticClass:\"search-overlay\",attrs:{\"id\":\"search-overlay\",\"role\":\"region\",\"data-cy\":\"search-overlay\"},on:{\"keyup\":function($event){if(!$event.type.indexOf('key')&&$event.keyCode!==27){ return null; }return _vm.toggleVisible($event)},\"click\":function($event){if($event.target !== $event.currentTarget){ return null; }return _vm.toggleVisible($event)}}},[_c('div',{staticClass:\"container\"},[(_vm.showButtonInOverlay)?_c('button',{staticClass:\"search-button search-button-overlay\",attrs:{\"aria-expanded\":_vm.isVisible ? 'true' : 'false',\"aria-controls\":\"search-overlay\",\"aria-label\":_vm.getAriaLabelForButton,\"data-cy\":\"search-overlay-toggle\"},on:{\"click\":_vm.toggleVisible}},[_c('span',{staticClass:\"search-button__wrapper\"},[_c('span',{staticClass:\"search-button__text\"},[_vm._v(\" \"+_vm._s(this.$trans('/common/close'))+\" \")]),_c('icon',{attrs:{\"glyph\":\"#icon-close-v2\"}})],1)]):_vm._e(),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"search-overlay__search\"},[(_vm.showNewLayout && !_vm.isDesktop)?_c('div',{staticClass:\"search-field__label\",attrs:{\"for\":\"search-field\",\"data-cy\":\"search-field-label\",\"placeholder\":_vm.$trans('/common/searchfromsite'),\"aria-label\":_vm.$trans('/common/searchfromsite')}},[_vm._v(\" \"+_vm._s(_vm.$trans('/common/searchfromsite'))+\" \")]):_vm._e(),_c('search-field',{ref:\"searchfield\",attrs:{\"id\":\"menu_search\",\"name\":\"search_form2\",\"on-submit\":_vm.onSubmit,\"on-key-up-enabled\":true,\"on-key-up\":_vm.onKeyUp,\"page-name\":_vm.pageName,\"show-label\":_vm.showInputLabel,\"show-alternate-icon\":_vm.showNewLayout,\"component-location\":\"Ennakoiva_haku\",\"tracking-disabled\":_vm.trackingDisabled}}),(_vm.results.length > 0)?_c('div',{staticClass:\"search-overlay__autocomplete\",attrs:{\"aria-label\":\"results\"}},[_vm._l((_vm.results),function(item){return _c('div',{key:item.id},[_c('h3',[_c('a',{attrs:{\"href\":item.Url}},[_vm._v(_vm._s(item.Title))])]),_c('p',{domProps:{\"innerHTML\":_vm._s(item.Text)}})])}),(_vm.results.length >= this.minChars)?_c('a',{staticClass:\"btn\",attrs:{\"href\":_vm.getSearchPageLinkWithQuery}},[_vm._v(\" \"+_vm._s(_vm.$trans('search/showmoreresults'))+\" \")]):_vm._e()],2):_vm._e()],1)])])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n <Trap :disabled=\"!showNewLayout ? !isVisible : !parentIsVisible\">\r\n <button\r\n class=\"search-button\"\r\n @click=\"toggleVisible\"\r\n :aria-expanded=\"isVisible ? 'true' : 'false'\"\r\n aria-haspopup=\"true\"\r\n id=\"search-overlay-button\"\r\n aria-controls=\"search-overlay\"\r\n :aria-label=\"getAriaLabelForButton\"\r\n data-cy=\"search-overlay-toggle\"\r\n >\r\n <span class=\"search-button__wrapper\" v-show=\"!showNewLayout\">\r\n <span class=\"search-button__text\">{{ getButtonText }}</span>\r\n <icon :glyph=\"getGlyph\"></icon>\r\n </span>\r\n <span class=\"search-button__wrapper\" v-show=\"showNewLayout\">\r\n <icon :glyph=\"getGlyph\"></icon>\r\n <span class=\"search-button__text\">{{ getButtonText }}</span>\r\n </span>\r\n </button>\r\n <div\r\n class=\"search-overlay\"\r\n v-show=\"!showNewLayout ? isVisible : parentIsVisible\"\r\n id=\"search-overlay\"\r\n role=\"region\"\r\n @keyup.27=\"toggleVisible\"\r\n @click.self=\"toggleVisible\"\r\n data-cy=\"search-overlay\"\r\n v-cloak\r\n >\r\n <div class=\"container\">\r\n <button\r\n class=\"search-button search-button-overlay\"\r\n @click=\"toggleVisible\"\r\n :aria-expanded=\"isVisible ? 'true' : 'false'\"\r\n aria-controls=\"search-overlay\"\r\n :aria-label=\"getAriaLabelForButton\"\r\n data-cy=\"search-overlay-toggle\"\r\n v-if=\"showButtonInOverlay\"\r\n >\r\n <span class=\"search-button__wrapper\">\r\n <span class=\"search-button__text\">\r\n {{ this.$trans('/common/close') }}\r\n </span>\r\n <icon glyph=\"#icon-close-v2\"></icon>\r\n </span>\r\n </button>\r\n <div class=\"row\">\r\n <div class=\"search-overlay__search\">\r\n <div\r\n v-if=\"showNewLayout && !isDesktop\"\r\n for=\"search-field\"\r\n data-cy=\"search-field-label\"\r\n class=\"search-field__label\"\r\n :placeholder=\"$trans('/common/searchfromsite')\"\r\n :aria-label=\"$trans('/common/searchfromsite')\"\r\n >\r\n {{ $trans('/common/searchfromsite') }}\r\n </div>\r\n <search-field\r\n id=\"menu_search\"\r\n name=\"search_form2\"\r\n :on-submit=\"onSubmit\"\r\n :on-key-up-enabled=\"true\"\r\n :on-key-up=\"onKeyUp\"\r\n :page-name=\"pageName\"\r\n :show-label=\"showInputLabel\"\r\n :show-alternate-icon=\"showNewLayout\"\r\n component-location=\"Ennakoiva_haku\"\r\n :tracking-disabled=\"trackingDisabled\"\r\n ref=\"searchfield\"\r\n />\r\n <div\r\n class=\"search-overlay__autocomplete\"\r\n v-if=\"results.length > 0\"\r\n aria-label=\"results\"\r\n >\r\n <div v-for=\"item in results\" :key=\"item.id\">\r\n <h3>\r\n <a :href=\"item.Url\">{{ item.Title }}</a>\r\n </h3>\r\n <p v-html=\"item.Text\"></p>\r\n </div>\r\n <a\r\n :href=\"getSearchPageLinkWithQuery\"\r\n class=\"btn\"\r\n v-if=\"results.length >= this.minChars\"\r\n >\r\n {{ $trans('search/showmoreresults') }}\r\n </a>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </Trap>\r\n</template>\r\n<script>\r\nimport _debounce from 'lodash/debounce';\r\nimport _isEmpty from 'lodash/isEmpty';\r\nimport SearchApi from 'api/SearchApi';\r\nimport Trap from 'vue-focus-lock';\r\nimport SearchField from './SearchField.vue';\r\n\r\nexport default {\r\n name: 'SearchSuggestions',\r\n props: {\r\n language: { type: String, default: 'fi' },\r\n rootFilterIds: { type: Array },\r\n searchPageUrl: { type: String },\r\n count: { type: Number },\r\n minChars: { type: Number, default: 2 },\r\n isDesktop: { type: Boolean, default: false },\r\n showNewLayout: { type: Boolean, default: false },\r\n searchSuggestionsApiUrl: { type: String, default: '' },\r\n setVisibleMenu: { type: Function },\r\n parentIsVisible: { type: Boolean, default: false },\r\n pageName: { type: String, default: '' },\r\n trackingDisabled: { type: Boolean, default: false },\r\n showInputLabel: { type: Boolean, default: false }\r\n },\r\n components: { SearchField, Trap },\r\n data() {\r\n return {\r\n results: {},\r\n query: '',\r\n loading: false,\r\n isComponentVisible: false\r\n };\r\n },\r\n computed: {\r\n getSearchPageLinkWithQuery() {\r\n return `${this.searchPageUrl}?query=${this.query}`;\r\n },\r\n getAriaLabelForButton() {\r\n return this.isVisible\r\n ? `${this.$trans('/common/close')} ${this.$trans('/common/search')}`\r\n : undefined;\r\n },\r\n getButtonText() {\r\n if (this.showNewLayout || !this.isDesktop) {\r\n return this.$trans('/common/dosearch');\r\n }\r\n return this.isVisible ? this.$trans('/common/close') : this.$trans('/common/dosearch');\r\n },\r\n getGlyph() {\r\n const iconSearch = !this.showNewLayout ? '#icon-search' : '#icon-search-v2';\r\n if (this.showNewLayout || !this.isDesktop) {\r\n return iconSearch;\r\n }\r\n return this.isVisible ? '#icon-close' : iconSearch;\r\n },\r\n isVisible() {\r\n return this.isDesktop ? this.parentIsVisible : this.isComponentVisible;\r\n },\r\n showButtonInOverlay() {\r\n return this.showNewLayout && this.isDesktop ? true : false;\r\n }\r\n },\r\n methods: {\r\n // Run when text is written on input\r\n onKeyUp: _debounce(function (inputQuery) {\r\n // Query gets value from input value\r\n this.query = inputQuery;\r\n\r\n // Check if empty / enough characters\r\n if (_isEmpty(this.query) || this.query.length < this.minChars) {\r\n this.results = [];\r\n return;\r\n }\r\n\r\n // Make the search\r\n this.search();\r\n }, 300),\r\n // Get results from the search api\r\n search() {\r\n this.loading = true;\r\n SearchApi.getSearchSuggestions(\r\n this.searchSuggestionsApiUrl,\r\n this.query,\r\n this.language,\r\n this.rootFilterIds,\r\n this.count\r\n ).then(response => {\r\n this.results = response;\r\n this.loading = false;\r\n });\r\n },\r\n toggleVisible() {\r\n if (this.isDesktop || this.showNewLayout) {\r\n this.setVisibleMenu(0);\r\n }\r\n this.isComponentVisible = !this.isComponentVisible;\r\n\r\n this.$nextTick(() => {\r\n if (this.isVisible || this.parentIsVisible) {\r\n this.$refs.searchfield.$refs.query.focus();\r\n }\r\n });\r\n },\r\n onSubmit(inputQuery) {\r\n this.query = inputQuery || '';\r\n window.location = this.getSearchPageLinkWithQuery;\r\n }\r\n }\r\n};\r\n</script>\r\n","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./SearchSuggestions.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./SearchSuggestions.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./SearchSuggestions.vue?vue&type=template&id=d1afdf9e\"\nimport script from \"./SearchSuggestions.vue?vue&type=script&lang=js\"\nexport * from \"./SearchSuggestions.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('nav',{directives:[{name:\"click-outside\",rawName:\"v-click-outside\",value:(_vm.hideLanguageMenu),expression:\"hideLanguageMenu\"}],staticClass:\"menu-language-dropdown\",attrs:{\"aria-label\":_vm.$trans('/accessibility/languagenavigation')},on:{\"keyup\":function($event){if(!$event.type.indexOf('key')&&$event.keyCode!==27){ return null; }return _vm.hideLanguageMenu($event)}}},[_c('Trap',{attrs:{\"disabled\":!_vm.isLanguageMenuVisible}},[_c('button',{staticClass:\"menu-language-dropdown__button\",class:{\n 'menu-language-dropdown__button--open': _vm.isLanguageMenuVisible\n },attrs:{\"aria-haspopup\":\"true\",\"id\":\"menu-language-dropdown__button\",\"aria-controls\":\"menu-language-dropdown__panel\",\"lang\":_vm.currentLanguage,\"aria-expanded\":_vm.isLanguageMenuVisible ? 'true' : 'false',\"data-cy\":\"menu-language-toggle\"},on:{\"click\":function($event){return _vm.toggleLanguageMenu()}}},[(_vm.showAlternateIcon)?_c('icon',{attrs:{\"glyph\":\"#icon-earth\"}}):_vm._e(),(!_vm.showOnlyLanguageCodeInToggle)?_c('span',{staticClass:\"menu-language-dropdown__name\",attrs:{\"lang\":_vm.currentLanguage},domProps:{\"textContent\":_vm._s(_vm.getCurrentLanguageDisplayName)}}):_vm._e(),(_vm.showOnlyLanguageCodeInToggle)?_c('span',{staticClass:\"menu-language-dropdown__code\"},[_vm._v(_vm._s(_vm.currentLanguage))]):_vm._e()],1),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.isLanguageMenuVisible),expression:\"isLanguageMenuVisible\"}],staticClass:\"menu-language-dropdown__panel\",class:{ open: _vm.isLanguageMenuVisible },attrs:{\"id\":\"menu-language-dropdown__panel\",\"aria-labelledby\":\"menu-language-dropdown__button\",\"role\":\"region\"}},[(_vm.hasLanguages)?_c('ul',{staticClass:\"menu-language-dropdown__list\"},_vm._l((_vm.languages),function(language){return _c('li',{key:language.DisplayName},[_c('a',{staticClass:\"menu-language-dropdown__link\",class:{ selected: language.Selected },attrs:{\"href\":language.Url,\"lang\":language.Name,\"data-cy\":\"menu-language-link\"},domProps:{\"innerHTML\":_vm._s(language.DisplayName)}},[(language.Name && language.DisplayName !== 'Other languages')?_c('span',{staticClass:\"menu-language-dropdown__code\"},[_vm._v(\" (\"+_vm._s(language.Name)+\")\")]):_vm._e()])])}),0):_vm._e()])])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n <nav\r\n class=\"menu-language-dropdown\"\r\n @keyup.27=\"hideLanguageMenu\"\r\n v-click-outside=\"hideLanguageMenu\"\r\n :aria-label=\"$trans('/accessibility/languagenavigation')\"\r\n >\r\n <Trap :disabled=\"!isLanguageMenuVisible\">\r\n <button\r\n class=\"menu-language-dropdown__button\"\r\n v-bind:class=\"{\r\n 'menu-language-dropdown__button--open': isLanguageMenuVisible\r\n }\"\r\n aria-haspopup=\"true\"\r\n id=\"menu-language-dropdown__button\"\r\n aria-controls=\"menu-language-dropdown__panel\"\r\n :lang=\"currentLanguage\"\r\n :aria-expanded=\"isLanguageMenuVisible ? 'true' : 'false'\"\r\n @click=\"toggleLanguageMenu()\"\r\n data-cy=\"menu-language-toggle\"\r\n >\r\n <icon v-if=\"showAlternateIcon\" glyph=\"#icon-earth\"></icon>\r\n <span\r\n class=\"menu-language-dropdown__name\"\r\n v-if=\"!showOnlyLanguageCodeInToggle\"\r\n :lang=\"currentLanguage\"\r\n v-text=\"getCurrentLanguageDisplayName\"\r\n />\r\n <span class=\"menu-language-dropdown__code\" v-if=\"showOnlyLanguageCodeInToggle\">{{\r\n currentLanguage\r\n }}</span>\r\n </button>\r\n <div\r\n class=\"menu-language-dropdown__panel\"\r\n id=\"menu-language-dropdown__panel\"\r\n v-show=\"isLanguageMenuVisible\"\r\n :class=\"{ open: isLanguageMenuVisible }\"\r\n aria-labelledby=\"menu-language-dropdown__button\"\r\n role=\"region\"\r\n v-cloak\r\n >\r\n <ul class=\"menu-language-dropdown__list\" v-if=\"hasLanguages\">\r\n <li v-for=\"language of languages\" v-bind:key=\"language.DisplayName\">\r\n <a\r\n class=\"menu-language-dropdown__link\"\r\n :class=\"{ selected: language.Selected }\"\r\n :href=\"language.Url\"\r\n :lang=\"language.Name\"\r\n data-cy=\"menu-language-link\"\r\n v-html=\"language.DisplayName\"\r\n ><span\r\n class=\"menu-language-dropdown__code\"\r\n v-if=\"language.Name && language.DisplayName !== 'Other languages'\"\r\n >\r\n ({{ language.Name }})</span\r\n ></a\r\n >\r\n </li>\r\n </ul>\r\n </div>\r\n </Trap>\r\n </nav>\r\n</template>\r\n\r\n<script>\r\nimport _isNil from 'lodash/isNil';\r\nimport Trap from 'vue-focus-lock';\r\nimport vClickOutside from 'v-click-outside';\r\n\r\nexport default {\r\n name: 'LanguageMenuDropdown',\r\n props: {\r\n languages: { type: Array, default: () => [] },\r\n showOnlyLanguageCodeInToggle: { type: Boolean, default: true },\r\n showOnlyLanguageNominativeInToggle: { type: Boolean, default: false },\r\n showAlternateIcon: { type: Boolean, default: false }\r\n },\r\n directives: {\r\n clickOutside: vClickOutside.directive\r\n },\r\n components: { Trap },\r\n data() {\r\n return {\r\n isLanguageMenuVisible: false,\r\n currentLanguage: window.site_locale\r\n };\r\n },\r\n computed: {\r\n hasLanguages() {\r\n return !_isNil(this.languages) && this.languages.length > 0;\r\n },\r\n getCurrentLanguageDisplayName() {\r\n if (!this.showOnlyLanguageNominativeInToggle) {\r\n return this.languages.filter(x => x.Name === this.currentLanguage)[0].DisplayName;\r\n }\r\n switch (this.currentLanguage) {\r\n case 'fi':\r\n return this.showAlternateIcon ? 'Suomeksi (FI)' : 'Suomi';\r\n case 'sv':\r\n return this.showAlternateIcon ? 'PÃ¥ svenska (SV)' : 'Svenska';\r\n case 'en':\r\n return this.showAlternateIcon ? 'In English (EN)' : 'English';\r\n default:\r\n return this.showAlternateIcon ? 'Suomeksi (FI)' : 'Suomi';\r\n }\r\n }\r\n },\r\n methods: {\r\n toggleLanguageMenu() {\r\n this.isLanguageMenuVisible = !this.isLanguageMenuVisible;\r\n },\r\n hideLanguageMenu() {\r\n this.isLanguageMenuVisible = false;\r\n }\r\n }\r\n};\r\n</script>\r\n","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./LanguageMenuDropdown.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./LanguageMenuDropdown.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./LanguageMenuDropdown.vue?vue&type=template&id=73c97d79\"\nimport script from \"./LanguageMenuDropdown.vue?vue&type=script&lang=js\"\nexport * from \"./LanguageMenuDropdown.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","export default {\r\n name: 'Icon',\r\n template:\r\n '<svg class=\"icon\" aria-hidden=\"true\" role=\"presentation\" focusable=\"false\"><use :xlink:href=\"glyph\"></use></svg>',\r\n props: ['glyph']\r\n};\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.feedbackGiven)?_c('div',{},[_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.feedbackSent),expression:\"!feedbackSent\"}],staticClass:\"feedback_input\"},[_c('h3',{staticClass:\"feedback__heading\"},[_vm._v(_vm._s(_vm.translatedTitle))]),_c('button',{staticClass:\"btn feedback__button\",attrs:{\"disabled\":_vm.sendingFeedback},on:{\"click\":function($event){return _vm.like()}}},[_c('icon',{attrs:{\"glyph\":\"#icon-thumbsup\"}}),_c('span',[_vm._v(_vm._s(_vm.translatedLikeButtonText))])],1),_c('button',{staticClass:\"btn feedback__button feedback__button--dislike\",attrs:{\"disabled\":_vm.sendingFeedback},on:{\"click\":function($event){return _vm.dislike()}}},[_c('icon',{attrs:{\"glyph\":\"#icon-thumbsup\"}}),_c('span',[_vm._v(_vm._s(_vm.translatedDislikeButtonText))])],1)]),(_vm.feedbackSent)?_c('div',{},[_c('h3',{staticClass:\"feedback__heading\"},[_vm._v(_vm._s(_vm.translatedTitle))]),_c('dl',[_c('dt',[_vm._v(_vm._s(_vm.translatedLikeButtonText))]),_c('dd',[_c('vue-circle',{attrs:{\"progress\":_vm.getPercentLiked,\"size\":100,\"reverse\":false,\"line-cap\":\"round\",\"fill\":{ color: _vm.colorLiked },\"empty-fill\":\"rgba(0, 0, 0, .1)\",\"animation-start-value\":0.0,\"start-angle\":0,\"insert-mode\":\"append\",\"thickness\":5,\"show-percent\":true}})],1),_c('dt',[_vm._v(_vm._s(_vm.translatedDislikeButtonText))]),_c('dd',[_c('vue-circle',{attrs:{\"progress\":_vm.getPercentDisliked,\"size\":100,\"reverse\":false,\"line-cap\":\"round\",\"fill\":{ color: _vm.colorDisliked },\"empty-fill\":\"rgba(0, 0, 0, .1)\",\"animation-start-value\":0.0,\"start-angle\":0,\"insert-mode\":\"append\",\"thickness\":5,\"show-percent\":true}})],1)]),_c('p',{staticClass:\"sr-only\",attrs:{\"role\":\"status\"}},[_vm._v(_vm._s(_vm.getResultText))])]):_vm._e(),(_vm.feedbackError)?_c('div',{},[_c('h3',[_vm._v(_vm._s(_vm.translatedErrorText))])]):_vm._e()]):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import API from 'utils/api';\r\nimport _isNil from 'lodash/isNil';\r\n\r\nconst apiUrl = '/api/feedbacks';\r\nconst downloadApiUrl = '/api/feedbacks/download';\r\n\r\n/**\r\n *\r\n * @export\r\n * @param {string } language - language\r\n * @param {int} contentId - contentId\r\n * @param {int} fromDate - fromDate\r\n * @param {int} toDate - toDate\r\n * @returns\r\n */\r\nexport function getFeedbacks(language, contentId, fromDate, toDate) {\r\n const params = {\r\n language\r\n };\r\n\r\n if (!_isNil(contentId) && contentId) {\r\n params.contentId = contentId;\r\n }\r\n\r\n if (!_isNil(fromDate) && fromDate) {\r\n params.fromDate = fromDate;\r\n }\r\n\r\n if (!_isNil(toDate) && toDate) {\r\n params.toDate = toDate;\r\n }\r\n return API.get(apiUrl, {\r\n params\r\n });\r\n}\r\n\r\n/**\r\n *\r\n * @export\r\n * @param {string } language - language\r\n * @param {int} contentId - contentId\r\n * @param {int} fromDate - fromDate\r\n * @param {int} toDate - toDate\r\n * @returns\r\n */\r\nexport function getDownloadUrl(language, contentId, fromDate, toDate) {\r\n let downloadUrl = downloadApiUrl;\r\n\r\n downloadUrl += `?language=${language}`;\r\n if (!_isNil(contentId) && contentId) {\r\n downloadUrl += `&contentId=${contentId}`;\r\n }\r\n\r\n if (!_isNil(fromDate) && fromDate) {\r\n downloadUrl += `&fromDate=${fromDate}`;\r\n }\r\n\r\n if (!_isNil(toDate) && toDate) {\r\n downloadUrl += `&toDate=${toDate}`;\r\n }\r\n return downloadUrl;\r\n}\r\n\r\n/**\r\n *\r\n * @export\r\n * @param {int} contentId - id\r\n * @param {string} language - language\r\n * @param {int} feedbackType - feedbackType, 1 = like, 2 = dislike\r\n * @param {string} requestVerificationToken - antiforgerytoken\r\n * @returns\r\n */\r\nexport function addFeedback(contentId, language, feedbackType) {\r\n /* eslint-disable-next-line */\r\n let requestVerificationToken = document.getElementsByName('__RequestVerificationToken')[0].value;\r\n\r\n const config = {\r\n headers: { 'x-csrf-token': requestVerificationToken } // todo move token fetching and header tweaking to api.js?\r\n };\r\n return API.post(\r\n apiUrl,\r\n {\r\n contentId,\r\n language,\r\n type: feedbackType,\r\n comment: null\r\n },\r\n config\r\n );\r\n}\r\n/**\r\n *\r\n * @export\r\n * @param {string} guid - feedback guid\r\n * @param {string } comment - feedback comment\r\n * @returns\r\n */\r\nexport function addComment(guid, comment) {\r\n return API.put(apiUrl, {\r\n guid,\r\n comment\r\n });\r\n}\r\n\r\n/**\r\n *\r\n * @export\r\n * @param {string } language - language\r\n * @param {int} contentId - contentId\r\n * @param {int} fromDate - fromDate\r\n * @param {int} toDate - toDate\r\n * @returns\r\n */\r\nexport function deleteFeedbacks(language, contentId, fromDate, toDate) {\r\n const params = {\r\n language\r\n };\r\n\r\n if (!_isNil(contentId) && contentId) {\r\n params.contentId = contentId;\r\n }\r\n\r\n if (!_isNil(fromDate) && fromDate) {\r\n params.fromDate = fromDate;\r\n }\r\n\r\n if (!_isNil(toDate) && toDate) {\r\n params.toDate = toDate;\r\n }\r\n return API.delete(apiUrl, {\r\n params\r\n });\r\n}\r\n\r\nexport default {\r\n getFeedbacks,\r\n addFeedback,\r\n getDownloadUrl,\r\n deleteFeedbacks\r\n};\r\n","<template>\r\n <div v-if=\"!feedbackGiven\" v-cloak>\r\n <div class=\"feedback_input\" v-show=\"!feedbackSent\" v-cloak>\r\n <h3 class=\"feedback__heading\">{{ translatedTitle }}</h3>\r\n <button @click=\"like()\" :disabled=\"sendingFeedback\" class=\"btn feedback__button\">\r\n <icon glyph=\"#icon-thumbsup\"></icon>\r\n <span>{{ translatedLikeButtonText }}</span>\r\n </button>\r\n <button\r\n @click=\"dislike()\"\r\n :disabled=\"sendingFeedback\"\r\n class=\"btn feedback__button feedback__button--dislike\"\r\n >\r\n <icon glyph=\"#icon-thumbsup\"></icon>\r\n <span>{{ translatedDislikeButtonText }}</span>\r\n </button>\r\n </div>\r\n <div v-if=\"feedbackSent\" v-cloak>\r\n <h3 class=\"feedback__heading\">{{ translatedTitle }}</h3>\r\n <dl>\r\n <dt>{{ translatedLikeButtonText }}</dt>\r\n <dd>\r\n <vue-circle\r\n :progress=\"getPercentLiked\"\r\n :size=\"100\"\r\n :reverse=\"false\"\r\n line-cap=\"round\"\r\n :fill=\"{ color: colorLiked }\"\r\n empty-fill=\"rgba(0, 0, 0, .1)\"\r\n :animation-start-value=\"0.0\"\r\n :start-angle=\"0\"\r\n insert-mode=\"append\"\r\n :thickness=\"5\"\r\n :show-percent=\"true\"\r\n >\r\n </vue-circle>\r\n </dd>\r\n <dt>{{ translatedDislikeButtonText }}</dt>\r\n <dd>\r\n <vue-circle\r\n :progress=\"getPercentDisliked\"\r\n :size=\"100\"\r\n :reverse=\"false\"\r\n line-cap=\"round\"\r\n :fill=\"{ color: colorDisliked }\"\r\n empty-fill=\"rgba(0, 0, 0, .1)\"\r\n :animation-start-value=\"0.0\"\r\n :start-angle=\"0\"\r\n insert-mode=\"append\"\r\n :thickness=\"5\"\r\n :show-percent=\"true\"\r\n >\r\n </vue-circle>\r\n </dd>\r\n </dl>\r\n <p class=\"sr-only\" role=\"status\">{{ getResultText }}</p>\r\n </div>\r\n\r\n <div v-if=\"feedbackError\" v-cloak>\r\n <h3>{{ translatedErrorText }}</h3>\r\n </div>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport feedbackAPI from 'api/FeedbackApi';\r\nimport Cookie from 'js-cookie';\r\nimport isNil from 'lodash/isNil';\r\nimport VueCircle from 'vue2-circle-progress';\r\n\r\nconst COOKIE_NAME = 'feedback_pageids';\r\n\r\nexport default {\r\n name: 'Feedback',\r\n components: {\r\n VueCircle\r\n },\r\n props: {\r\n pageId: {\r\n type: Number,\r\n default: -1\r\n },\r\n language: {\r\n type: String\r\n },\r\n translatedTitle: {\r\n type: String\r\n },\r\n translatedLikeButtonText: {\r\n type: String\r\n },\r\n translatedDislikeButtonText: {\r\n type: String\r\n },\r\n translatedResultText: {\r\n type: String\r\n },\r\n translatedErrorText: {\r\n type: String\r\n },\r\n colorLiked: {\r\n type: String\r\n },\r\n colorDisliked: {\r\n type: String\r\n }\r\n },\r\n data() {\r\n return {\r\n sendingFeedback: false,\r\n feedbackSent: false,\r\n feedbackSummary: null,\r\n feedbackGiven: false,\r\n feedbackGivenPageIdArray: [],\r\n feedbackError: false,\r\n feedbackType: null,\r\n countLiked: 0,\r\n countDisliked: 0,\r\n countTotal: 0\r\n };\r\n },\r\n mounted() {\r\n this.init();\r\n },\r\n methods: {\r\n init() {\r\n this.feedbackGivenPageIdArray = this.getCookie();\r\n this.feedbackGiven = this.isPageInArray();\r\n },\r\n addCookie() {\r\n this.feedbackGivenPageIdArray.push(this.pageId);\r\n Cookie.set(COOKIE_NAME, this.feedbackGivenPageIdArray);\r\n },\r\n getCookie() {\r\n return !isNil(Cookie.get(COOKIE_NAME)) ? JSON.parse(Cookie.get(COOKIE_NAME)) : [];\r\n },\r\n isPageInArray() {\r\n return this.feedbackGivenPageIdArray.indexOf(this.pageId) !== -1;\r\n },\r\n like() {\r\n this.feedbackType = 1;\r\n this.addFeedback();\r\n },\r\n dislike() {\r\n this.feedbackType = 2;\r\n this.addFeedback();\r\n },\r\n addFeedback() {\r\n if (this.feedbackSent) {\r\n return;\r\n }\r\n\r\n this.sendingFeedback = true;\r\n feedbackAPI\r\n .addFeedback(this.pageId, this.language, this.feedbackType)\r\n .then(data => {\r\n this.feedbackSummary = data;\r\n this.countLiked = this.feedbackSummary.likes;\r\n this.countDisliked = this.feedbackSummary.dislikes;\r\n this.countTotal = this.feedbackSummary.totalCount;\r\n this.feedbackSent = true;\r\n this.addCookie();\r\n this.sendingFeedback = false;\r\n })\r\n .catch(() => {\r\n this.sendingFeedback = false;\r\n this.feedbackError = true;\r\n });\r\n },\r\n calculatePercent(count) {\r\n const totalCount = this.countLiked + this.countDisliked;\r\n const percentage = (count / totalCount) * 100;\r\n return Math.round(percentage);\r\n }\r\n },\r\n computed: {\r\n getPercentLiked() {\r\n return this.calculatePercent(this.countLiked);\r\n },\r\n getPercentDisliked() {\r\n return this.calculatePercent(this.countDisliked);\r\n },\r\n getResultText() {\r\n return `${this.translatedResultText} ${this.translatedLikeButtonText} ${this.getPercentLiked}%, ${this.translatedDislikeButtonText} ${this.getPercentDisliked}%`;\r\n }\r\n }\r\n};\r\n</script>\r\n","import mod from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Feedback.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Feedback.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Feedback.vue?vue&type=template&id=6443a05a\"\nimport script from \"./Feedback.vue?vue&type=script&lang=js\"\nexport * from \"./Feedback.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","export default {\r\n name: 'HeaderMobileMenu',\r\n data() {\r\n return {\r\n closeButtonVisible: false,\r\n visibleMenuId: -1\r\n };\r\n },\r\n methods: {\r\n isVisibleMenu(menuId) {\r\n return menuId === this.visibleMenuId;\r\n },\r\n setVisibleMenu(menuId) {\r\n this.visibleMenuId = this.getVisibleMenuId(menuId);\r\n },\r\n getVisibleMenuId(menuId) {\r\n var result = this.visibleMenuId === menuId ? -1 : menuId;\r\n this.closeButtonVisible = result === -1 ? false : true;\r\n return result;\r\n },\r\n showCloseButton() {\r\n return this.closeButtonVisible;\r\n }\r\n }\r\n};\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('Trap',{attrs:{\"disabled\":!_vm.parentIsVisible}},[_c('div',{staticClass:\"mobile-menu-language\",attrs:{\"aria-label\":_vm.$trans('/accessibility/languagenavigation'),\"data-cy\":\"mobile-menu-language\"},on:{\"keyup\":function($event){if(!$event.type.indexOf('key')&&$event.keyCode!==27){ return null; }return _vm.toggleVisible($event)}}},[_c('button',{staticClass:\"mobile-menu-language--button\",attrs:{\"aria-haspopup\":\"true\",\"id\":\"mobile-menu-language-button\",\"aria-controls\":\"mobile-menu-language-overlay\",\"lang\":_vm.currentLanguage,\"aria-expanded\":_vm.parentIsVisible ? 'true' : 'false',\"data-cy\":\"menu-language-toggle\"},on:{\"click\":_vm.toggleVisible}},[_c('icon',{attrs:{\"glyph\":\"#icon-earth\"}}),_c('span',{staticClass:\"mobile-menu-language-button__text\"},[_vm._v(\" \"+_vm._s(_vm.currentLangCodeCapital())+\" \")])],1),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.parentIsVisible),expression:\"parentIsVisible\"}],staticClass:\"mobile-menu-language--overlay\",attrs:{\"id\":\"mobile-menu-language-overlay\",\"aria-labelledby\":\"mobile-menu-language__overlay\",\"role\":\"region\"},on:{\"click\":function($event){if($event.target !== $event.currentTarget){ return null; }return _vm.toggleVisible($event)},\"keyup\":function($event){if(!$event.type.indexOf('key')&&$event.keyCode!==27){ return null; }return _vm.toggleVisible($event)}}},[_c('div',{staticClass:\"container\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"mobile-menu-language--overlay__wrapper\"},[(_vm.hasLanguages)?_c('ul',{staticClass:\"mobile-menu-language__list\"},_vm._l((_vm.languages),function(language){return _c('li',{key:language.DisplayName,staticClass:\"mobile-menu-language__list-item\"},[_c('a',{staticClass:\"mobile-menu-language__link\",class:{ selected: language.Selected },attrs:{\"href\":language.Url,\"lang\":language.Name,\"data-cy\":\"mobile-menu-language-link\"},domProps:{\"innerHTML\":_vm._s(language.DisplayName)}}),_c('icon',{attrs:{\"glyph\":\"#icon-vector-blue\"}})],1)}),0):_vm._e()])])])])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n <Trap :disabled=\"!parentIsVisible\">\r\n <div\r\n class=\"mobile-menu-language\"\r\n :aria-label=\"$trans('/accessibility/languagenavigation')\"\r\n @keyup.27=\"toggleVisible\"\r\n data-cy=\"mobile-menu-language\"\r\n >\r\n <button\r\n class=\"mobile-menu-language--button\"\r\n @click=\"toggleVisible\"\r\n aria-haspopup=\"true\"\r\n id=\"mobile-menu-language-button\"\r\n aria-controls=\"mobile-menu-language-overlay\"\r\n :lang=\"currentLanguage\"\r\n :aria-expanded=\"parentIsVisible ? 'true' : 'false'\"\r\n data-cy=\"menu-language-toggle\"\r\n >\r\n <icon glyph=\"#icon-earth\"></icon>\r\n <span class=\"mobile-menu-language-button__text\">\r\n {{ currentLangCodeCapital() }}\r\n </span>\r\n </button>\r\n <div\r\n class=\"mobile-menu-language--overlay\"\r\n v-show=\"parentIsVisible\"\r\n id=\"mobile-menu-language-overlay\"\r\n @click.self=\"toggleVisible\"\r\n @keyup.27=\"toggleVisible\"\r\n aria-labelledby=\"mobile-menu-language__overlay\"\r\n role=\"region\"\r\n v-cloak\r\n >\r\n <div class=\"container\">\r\n <div class=\"row\">\r\n <div class=\"mobile-menu-language--overlay__wrapper\">\r\n <ul class=\"mobile-menu-language__list\" v-if=\"hasLanguages\">\r\n <li\r\n v-for=\"language of languages\"\r\n class=\"mobile-menu-language__list-item\"\r\n v-bind:key=\"language.DisplayName\"\r\n >\r\n <a\r\n class=\"mobile-menu-language__link\"\r\n :class=\"{ selected: language.Selected }\"\r\n :href=\"language.Url\"\r\n :lang=\"language.Name\"\r\n data-cy=\"mobile-menu-language-link\"\r\n v-html=\"language.DisplayName\"\r\n >\r\n </a>\r\n <icon glyph=\"#icon-vector-blue\"></icon>\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </Trap>\r\n</template>\r\n\r\n<script>\r\nimport _isNil from 'lodash/isNil';\r\nimport Trap from 'vue-focus-lock';\r\n\r\nexport default {\r\n name: 'MobileMenuLanguage',\r\n props: {\r\n languages: { type: Array, default: () => [] },\r\n setVisibleMenu: { type: Function },\r\n parentIsVisible: { type: Boolean, default: false }\r\n },\r\n components: { Trap },\r\n data() {\r\n return {\r\n currentLanguage: window.site_locale\r\n };\r\n },\r\n computed: {\r\n hasLanguages() {\r\n return !_isNil(this.languages) && this.languages.length > 0;\r\n }\r\n },\r\n methods: {\r\n toggleVisible() {\r\n this.setVisibleMenu(2);\r\n },\r\n currentLangCodeCapital() {\r\n return this.currentLanguage.toUpperCase();\r\n }\r\n }\r\n};\r\n</script>\r\n","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./MobileMenuLanguage.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./MobileMenuLanguage.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./MobileMenuLanguage.vue?vue&type=template&id=01e195d6\"\nimport script from \"./MobileMenuLanguage.vue?vue&type=script&lang=js\"\nexport * from \"./MobileMenuLanguage.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('Trap',{attrs:{\"disabled\":!_vm.parentIsVisible}},[_c('div',{},[_c('button',{ref:\"toggle\",staticClass:\"mobile-button menu-button hamburger\",attrs:{\"id\":\"mobile-menu-button\",\"aria-controls\":\"mobile-menu\",\"aria-label\":_vm.getButtonAriaLabelText,\"aria-haspopup\":\"true\",\"aria-expanded\":_vm.showCloseButton ? 'true' : 'false'},on:{\"click\":function($event){return _vm.toggleMobileMenu()},\"keyup\":function($event){if(!$event.type.indexOf('key')&&$event.keyCode!==27){ return null; }return _vm.toggleMobileMenu($event)}}},[_c('span',{staticClass:\"hamburger-box\"},[_c('icon',{attrs:{\"glyph\":_vm.getGlyph}})],1),_vm._v(\" \"+_vm._s(_vm.getButtonText)+\" \")]),_c('div',{attrs:{\"disabled\":!_vm.parentIsVisible}},[(_vm.parentIsVisible)?_c('div',{ref:\"mobilemenu_wrapper\",staticClass:\"mobile-menu-navigation--panel\",attrs:{\"role\":\"region\",\"aria-labelledby\":\"mobile-menu-button\",\"id\":\"mobile-menu\"},on:{\"click\":function($event){if($event.target !== $event.currentTarget){ return null; }return _vm.toggleMobileMenu($event)},\"keyup\":function($event){if(!$event.type.indexOf('key')&&$event.keyCode!==27){ return null; }return _vm.toggleMobileMenu($event)}}},[_c('nav',{ref:\"mobilemenu\",staticClass:\"mobile-menu-navigation container\",attrs:{\"tabindex\":\"-1\"}},[(_vm.isLoading)?_c('div',{staticClass:\"mobile-menu-navigation__loader\"},[_c('span',[_c('div',{staticClass:\"loader\"}),_vm._v(\" \"+_vm._s(_vm.$trans('/common/menuloading'))+\" \")])]):_vm._e(),_c('p',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.showError),expression:\"showError\"}],staticClass:\"show-error\"},[_vm._v(_vm._s(_vm.$trans('/common/menuerror')))]),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.isLoading),expression:\"!isLoading\"}]},[(_vm.getCrumbsVisibility())?_c('div',{staticClass:\"mobile-menu-navigation__crumbs\"},[_c('span',[_vm._v(_vm._s(_vm.MobileMenuLinks.ParentName))])]):_vm._e(),_c('div',{staticClass:\"mobile-menu-navigation__panels\"},[_c('div',{staticClass:\"menu-panel\"},[(_vm.MobileMenuLinks.ParentId !== null && !_vm.showError)?_c('button',{staticClass:\"prev\",attrs:{\"aria-label\":_vm.$trans('/accessibility/previouslevel')},on:{\"click\":function($event){return _vm.move(_vm.MobileMenuLinks.ParentId)}}}):_vm._e(),(_vm.MobileMenuLinks.Links && _vm.MobileMenuLinks.Links.length)?_c('ul',_vm._l((_vm.MobileMenuLinks.Links),function(link){return _c('li',{key:link.Id,class:{ selected: _vm.isLinkSelected(link.Id) }},[_c('a',{class:{ haschildren: link.HasChildren },attrs:{\"href\":link.Url,\"aria-selected\":_vm.isLinkSelected(link.Id)}},[_vm._v(_vm._s(link.Name))]),(link.HasChildren)?_c('button',{staticClass:\"next\",attrs:{\"aria-label\":_vm.$trans('/accessibility/nextlevel')},on:{\"click\":function($event){return _vm.move(link.Id)}}}):_vm._e()])}),0):_vm._e()])])])])]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n <Trap :disabled=\"!parentIsVisible\">\r\n <div v-cloak>\r\n <button\r\n class=\"mobile-button menu-button hamburger\"\r\n id=\"mobile-menu-button\"\r\n aria-controls=\"mobile-menu\"\r\n :aria-label=\"getButtonAriaLabelText\"\r\n aria-haspopup=\"true\"\r\n :aria-expanded=\"showCloseButton ? 'true' : 'false'\"\r\n @click=\"toggleMobileMenu()\"\r\n @keyup.27=\"toggleMobileMenu\"\r\n ref=\"toggle\"\r\n >\r\n <span class=\"hamburger-box\">\r\n <icon :glyph=\"getGlyph\"></icon>\r\n </span>\r\n {{ getButtonText }}\r\n </button>\r\n <div :disabled=\"!parentIsVisible\">\r\n <div\r\n class=\"mobile-menu-navigation--panel\"\r\n role=\"region\"\r\n aria-labelledby=\"mobile-menu-button\"\r\n id=\"mobile-menu\"\r\n ref=\"mobilemenu_wrapper\"\r\n v-if=\"parentIsVisible\"\r\n v-cloak\r\n @click.self=\"toggleMobileMenu\"\r\n @keyup.27=\"toggleMobileMenu\"\r\n >\r\n <nav class=\"mobile-menu-navigation container\" ref=\"mobilemenu\" tabindex=\"-1\">\r\n <div class=\"mobile-menu-navigation__loader\" v-if=\"isLoading\">\r\n <span>\r\n <div class=\"loader\"></div>\r\n {{ $trans('/common/menuloading') }}\r\n </span>\r\n </div>\r\n <p v-show=\"showError\" class=\"show-error\" v-cloak>{{ $trans('/common/menuerror') }}</p>\r\n <div v-show=\"!isLoading\" v-cloak>\r\n <div class=\"mobile-menu-navigation__crumbs\" v-if=\"getCrumbsVisibility()\">\r\n <span>{{ MobileMenuLinks.ParentName }}</span>\r\n </div>\r\n <div class=\"mobile-menu-navigation__panels\">\r\n <div class=\"menu-panel\">\r\n <button\r\n v-if=\"MobileMenuLinks.ParentId !== null && !showError\"\r\n class=\"prev\"\r\n @click=\"move(MobileMenuLinks.ParentId)\"\r\n :aria-label=\"$trans('/accessibility/previouslevel')\"\r\n ></button>\r\n <ul v-if=\"MobileMenuLinks.Links && MobileMenuLinks.Links.length\">\r\n <li\r\n v-for=\"link of MobileMenuLinks.Links\"\r\n v-bind:class=\"{ selected: isLinkSelected(link.Id) }\"\r\n :key=\"link.Id\"\r\n >\r\n <a\r\n :href=\"link.Url\"\r\n v-bind:class=\"{ haschildren: link.HasChildren }\"\r\n :aria-selected=\"isLinkSelected(link.Id)\"\r\n >{{ link.Name }}</a\r\n >\r\n <button\r\n v-if=\"link.HasChildren\"\r\n class=\"next\"\r\n @click=\"move(link.Id)\"\r\n :aria-label=\"$trans('/accessibility/nextlevel')\"\r\n ></button>\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n </div>\r\n </nav>\r\n </div>\r\n </div>\r\n </div>\r\n </Trap>\r\n</template>\r\n\r\n<script>\r\nimport _find from 'lodash/find';\r\nimport _first from 'lodash/first';\r\nimport _isNil from 'lodash/isNil';\r\nimport MobileMenuApi from 'api/MobileMenuApi';\r\nimport Trap from 'vue-focus-lock';\r\n\r\nexport default {\r\n name: 'MobileNavigation',\r\n components: { Trap },\r\n props: {\r\n viewModel: { type: Object, default: () => {} },\r\n setVisibleMenu: { type: Function },\r\n parentIsVisible: { type: Boolean, default: false },\r\n showCloseButton: { type: Boolean, default: false }\r\n },\r\n data() {\r\n return {\r\n results: [],\r\n MobileMenuLinks: [],\r\n errors: [],\r\n language: window.site_locale,\r\n isLoading: false,\r\n showError: false,\r\n isMobileMenuVisible: false,\r\n isMenuCreated: false\r\n };\r\n },\r\n computed: {\r\n getGlyph() {\r\n return this.showCloseButton ? '#icon-menu-close-blue' : '#icon-menu-blue';\r\n },\r\n getButtonText() {\r\n return this.showCloseButton ? this.$trans('/common/close') : this.$trans('/common/menu');\r\n },\r\n getButtonAriaLabelText() {\r\n return this.showCloseButton\r\n ? this.$trans('/accessibility/close')\r\n : this.$trans('/accessibility/openmenumobile');\r\n }\r\n },\r\n methods: {\r\n toggleMobileMenu() {\r\n if (!this.isMenuCreated) {\r\n this.createMobileMenu();\r\n }\r\n\r\n if (!this.parentIsVisible && this.showCloseButton) {\r\n this.setVisibleMenu(-1);\r\n } else {\r\n this.setVisibleMenu(1);\r\n this.isMobileMenuVisible = !this.isMobileMenuVisible;\r\n }\r\n\r\n if (!this.isMobileMenuVisible) {\r\n this.addFocus(this.$refs.toggle);\r\n }\r\n },\r\n getVisibleMenu(panelId = this.viewModel.ParentPageId) {\r\n const visibleMenu = _find(this.results, { Id: panelId });\r\n return !_isNil(visibleMenu) ? visibleMenu : _first(this.results);\r\n },\r\n isLinkSelected(panelId) {\r\n return panelId === this.viewModel.CurrentPageId;\r\n },\r\n getCrumbsVisibility() {\r\n return !_isNil(this.MobileMenuLinks.ParentName);\r\n },\r\n move(targetId) {\r\n this.MobileMenuLinks = this.getVisibleMenu(targetId);\r\n this.addFocus(this.$refs.mobilemenu);\r\n },\r\n createMobileMenu() {\r\n this.isLoading = true;\r\n\r\n MobileMenuApi.getMobileMenuItems(\r\n this.viewModel.MobileMenuApiUrl,\r\n this.viewModel.RootPageId,\r\n this.language\r\n )\r\n .then(response => {\r\n this.isLoading = false;\r\n this.results = response;\r\n this.MobileMenuLinks = this.getVisibleMenu();\r\n this.isMenuCreated = true;\r\n })\r\n .catch(() => {\r\n this.isLoading = false;\r\n this.showError = true;\r\n });\r\n },\r\n addFocus(el) {\r\n if (el) {\r\n this.$nextTick(() => el.focus());\r\n }\r\n }\r\n }\r\n};\r\n</script>\r\n","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./MobileMenuNavigation.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./MobileMenuNavigation.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./MobileMenuNavigation.vue?vue&type=template&id=f7a76836\"\nimport script from \"./MobileMenuNavigation.vue?vue&type=script&lang=js\"\nexport * from \"./MobileMenuNavigation.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import MobileMenu from 'shared/components/navigation/MobileMenu';\r\nimport BackToTop from 'shared/components/BackToTop';\r\nimport AnchorLink from 'shared/components/AnchorLink';\r\nimport MegaMenu from 'shared/components/inline/MegaMenu';\r\nimport SearchSuggestions from 'shared/components/search/SearchSuggestions';\r\nimport LanguageMenuDropdown from 'shared/components/navigation/LanguageMenuDropdown';\r\nimport Icon from 'shared/components/Icon';\r\nimport Feedback from 'shared/components/Feedback';\r\nimport HeaderMobileMenu from 'shared/components/inline/HeaderMobileMenu';\r\nimport MobileMenuLanguage from 'shared/components/mobile-navigation/MobileMenuLanguage';\r\nimport MobileMenuNavigation from 'shared/components/mobile-navigation/MobileMenuNavigation';\r\n\r\n// Code splitted components\r\n\r\nconst Search = () => import(/* webpackChunkName: \"search\" */ 'shared/components/search/Search');\r\nconst OrderNewsletter = () =>\r\n import(/* webpackChunkName: \"order_newsletter\" */ 'shared/components/OrderNewsletter');\r\nconst SubsiteAccordionItemBlock = () =>\r\n import(/* webpackChunkName: \"accordion\" */ 'shared/components/inline/SubsiteAccordionItemBlock');\r\nconst ResponsiveIframe = () =>\r\n import(/* webpackChunkName: \"responsive_iframe\" */ 'shared/components/ResponsiveIframe');\r\nconst VideoComponent = () =>\r\n import(/* webpackChunkName: \"video\" */ 'shared/components/VideoComponent');\r\nconst TableOfContents = () =>\r\n import(\r\n /* webpackChunkName: \"table-of-contents\" */ 'shared/components/table-of-contents/TableOfContents'\r\n );\r\nconst TableOfContentsMobile = () =>\r\n import(\r\n /* webpackChunkName: \"table-of-contents\" */ 'shared/components/table-of-contents/TableOfContentsMobile'\r\n );\r\nconst DataTable = () => import(/* webpackChunkName: \"datatable\" */ 'shared/components/data-table/DataTable');\r\nconst Wizard = () => import(/* webpackChunkName: \"wizard\" */ 'shared/components/wizard/Wizard');\r\nconst WizardOld = () => import(/* webpackChunkName: \"wizardOld\" */ 'shared/components/WizardOld');\r\n\r\n\r\nexport {\r\n MobileMenu,\r\n BackToTop,\r\n MegaMenu,\r\n OrderNewsletter,\r\n SearchSuggestions,\r\n SubsiteAccordionItemBlock,\r\n VideoComponent,\r\n Search,\r\n AnchorLink,\r\n Icon,\r\n ResponsiveIframe,\r\n TableOfContents,\r\n TableOfContentsMobile,\r\n LanguageMenuDropdown,\r\n DataTable,\r\n Wizard,\r\n WizardOld,\r\n Feedback,\r\n HeaderMobileMenu,\r\n MobileMenuNavigation,\r\n MobileMenuLanguage\r\n};\r\n","<script>\r\nexport default {\r\n inserted(el, binding, vnode) {\r\n vnode.context.$events.on('transformEvent', function (isVisible) {\r\n const cssClass = 'open';\r\n if (isVisible) {\r\n el.classList.add(cssClass);\r\n return;\r\n }\r\n el.classList.remove(cssClass);\r\n });\r\n }\r\n};\r\n</script>\r\n","var render, staticRenderFns\nimport script from \"./Transformer.vue?vue&type=script&lang=js\"\nexport * from \"./Transformer.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Transformer.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Transformer.vue?vue&type=script&lang=js\"","<script>\r\nconst sendPiwikEvent = el => {\r\n return new Promise(function (resolve, reject) {\r\n try {\r\n const piwikEvent = {\r\n category: el.getAttribute('data-piwik-event-name'),\r\n action: el.innerText,\r\n name: el.href\r\n };\r\n _paq.push(['trackEvent', piwikEvent.category, piwikEvent.action, piwikEvent.name]);\r\n resolve(el, 'Piwik event sent!');\r\n } catch {\r\n reject(el, 'Error sending Piwik event');\r\n }\r\n });\r\n};\r\n\r\nexport default {\r\n bind(el) {\r\n el.addEventListener('click', event => {\r\n if (event) {\r\n event.preventDefault();\r\n }\r\n const link = el.href;\r\n sendPiwikEvent(el)\r\n .then((el, msg) => {\r\n if (el.hasAttribute('aria-haspopup')) {\r\n return;\r\n }\r\n window.location = link;\r\n })\r\n .catch((el, msg) => {\r\n if (el.hasAttribute('aria-haspopup')) {\r\n return;\r\n }\r\n window.location = link;\r\n });\r\n });\r\n }\r\n};\r\n</script>\r\n","var render, staticRenderFns\nimport script from \"./PiwikLink.vue?vue&type=script&lang=js\"\nexport * from \"./PiwikLink.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./PiwikLink.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./PiwikLink.vue?vue&type=script&lang=js\"","<script>\r\nconst sendPiwikEvent = (el, isLink) => {\r\n return new Promise(function (resolve, reject) {\r\n // This is needed for block as a link\r\n const button = el.querySelectorAll('.button, .btn');\r\n try {\r\n const piwikEvent = {\r\n action: button.length > 0 ? button[0].innerText : isLink.innerText,\r\n category: el.getAttribute('data-piwik-event-name'),\r\n name: isLink.href\r\n };\r\n _paq.push(['trackEvent', piwikEvent.category, piwikEvent.action, piwikEvent.name]);\r\n resolve('Piwik event sent!');\r\n } catch {\r\n reject('Error sending Piwik event');\r\n }\r\n });\r\n};\r\n\r\nexport default {\r\n bind(el) {\r\n el.addEventListener('click', event => {\r\n if (event) {\r\n event.preventDefault();\r\n }\r\n const isLink = event.target.closest('a[href]');\r\n if (!isLink) {\r\n return;\r\n }\r\n sendPiwikEvent(el, isLink)\r\n .then(msg => {\r\n window.location = isLink.href;\r\n })\r\n .catch(msg => {\r\n window.location = isLink.href;\r\n });\r\n });\r\n }\r\n};\r\n</script>\r\n","var render, staticRenderFns\nimport script from \"./PiwikChildLinks.vue?vue&type=script&lang=js\"\nexport * from \"./PiwikChildLinks.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./PiwikChildLinks.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./PiwikChildLinks.vue?vue&type=script&lang=js\"","<script>\r\nconst sendPiwikEvent = (el, event) => {\r\n return new Promise(function (resolve, reject) {\r\n try {\r\n const piwikEvent = {\r\n category: event.target.getAttribute('data-piwik-event-category'),\r\n action: event.target.getAttribute('data-piwik-event-action'),\r\n name: window.location.href\r\n };\r\n const isSubmitButton = event.target.tagName.toLowerCase() === 'button';\r\n const searchField = event.target.previousElementSibling;\r\n const searchLocation = `${piwikEvent.category}_${piwikEvent.action}`;\r\n\r\n _paq.push(['trackEvent', piwikEvent.category, piwikEvent.action, piwikEvent.name]);\r\n if (!isSubmitButton || searchField === null) {\r\n resolve('Piwik click event sent!');\r\n return;\r\n }\r\n _paq.push(['trackSiteSearch', searchField.value, searchLocation, false]);\r\n resolve('Piwik search event sent!');\r\n } catch {\r\n reject('Error sending Piwik event');\r\n }\r\n });\r\n};\r\n\r\nexport default {\r\n bind(el, binding) {\r\n const trackingDisabled = binding.value?.trackingDisabled ?? false;\r\n if (trackingDisabled) {\r\n return;\r\n }\r\n el.addEventListener('click', event => {\r\n const isSearchFormElement =\r\n event.target.tagName.toLowerCase() === 'input' ||\r\n event.target.tagName.toLowerCase() === 'button';\r\n if (!isSearchFormElement) {\r\n return;\r\n }\r\n sendPiwikEvent(el, event)\r\n .then(msg => {\r\n // success\r\n })\r\n .catch(msg => {\r\n // Error\r\n });\r\n });\r\n }\r\n};\r\n</script>\r\n","var render, staticRenderFns\nimport script from \"./PiwikSearchForm.vue?vue&type=script&lang=js\"\nexport * from \"./PiwikSearchForm.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./PiwikSearchForm.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./PiwikSearchForm.vue?vue&type=script&lang=js\"","import Vue from 'vue';\r\nimport VueEvents from 'vue-events';\r\nimport _kebabCase from 'lodash/kebabCase';\r\nimport router from 'router/router';\r\nimport 'src/sites/incomes_register/sass/styles.scss';\r\nimport epiforms from 'src/epiforms/epiform.custom.validate';\r\nimport { MediaQueries } from 'vue-media-queries';\r\nimport translate from 'utils/translation';\r\nimport polyfill from 'utils/customPolyfills';\r\nimport * as components from './components';\r\nimport * as directives from './directives';\r\n\r\npolyfill();\r\n\r\nconst mediaQueries = new MediaQueries();\r\nVue.use(mediaQueries);\r\n\r\n// https://github.com/cklmercer/vue-events\r\nVue.use(VueEvents);\r\n\r\nVue.prototype.$trans = translate;\r\n\r\n// Define shared Componets\r\nObject.keys(components).forEach(key => {\r\n Vue.component(_kebabCase(key), components[key]);\r\n});\r\n\r\nObject.keys(directives).forEach(key => {\r\n Vue.directive(_kebabCase(key), directives[key]);\r\n});\r\n\r\n/* eslint-disable no-new */\r\ndocument.addEventListener('DOMContentLoaded', () => {\r\n new Vue({\r\n // eslint-disable-line no-new\r\n el: '#app',\r\n router,\r\n mediaQueries\r\n });\r\n});\r\n\r\n// Add epiforms validation to window\r\nwindow.epiforms = epiforms;\r\n","import axios from 'axios';\r\n\r\naxios.defaults.xsrfCookieName = '__RequestVerificationToken';\r\n\r\nexport default {\r\n get(url, request) {\r\n return axios.get(url, request).then(({ data }) => data);\r\n },\r\n post(url, request, config = null) {\r\n if (config) {\r\n return axios.post(url, request, config).then(({ data }) => data);\r\n }\r\n return axios.post(url, request).then(({ data }) => data);\r\n },\r\n put(url, request, config = null) {\r\n if (config) {\r\n return axios.put(url, request, config).then(({ data }) => data);\r\n }\r\n return axios.put(url, request).then(({ data }) => data);\r\n },\r\n delete(url, request, config = null) {\r\n if (config) {\r\n return axios.delete(url, request, config).then(({ data }) => data);\r\n }\r\n return axios.delete(url, request).then(({ data }) => data);\r\n }\r\n};\r\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","var deferred = [];\n__webpack_require__.O = function(result, chunkIds, fn, priority) {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every(function(key) { return __webpack_require__.O[key](chunkIds[j]); })) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.f = {};\n// This file contains only the entry chunk.\n// The chunk loading function for additional chunks\n__webpack_require__.e = function(chunkId) {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce(function(promises, key) {\n\t\t__webpack_require__.f[key](chunkId, promises);\n\t\treturn promises;\n\t}, []));\n};","// This function allow to reference async chunks\n__webpack_require__.u = function(chunkId) {\n\t// return url for filenames based on template\n\treturn \"js/\" + {\"1249\":\"datatable\",\"2934\":\"wizardOld\",\"5838\":\"table-of-contents\",\"6464\":\"search\",\"6791\":\"video\",\"7577\":\"order_newsletter\",\"8032\":\"wizard\",\"8209\":\"accordion\",\"9364\":\"responsive_iframe\"}[chunkId] + \".\" + {\"1249\":\"9468d10f\",\"2934\":\"3af8fd90\",\"5838\":\"a2b9347a\",\"6464\":\"8e111327\",\"6791\":\"7393e351\",\"7577\":\"e488b74f\",\"8032\":\"043a25f1\",\"8209\":\"ad00b3ca\",\"9364\":\"0175213a\"}[chunkId] + \".js\";\n};","// This function allow to reference async chunks\n__webpack_require__.miniCssF = function(chunkId) {\n\t// return url for filenames based on template\n\treturn \"css/\" + {\"1249\":\"datatable\",\"2934\":\"wizardOld\",\"5838\":\"table-of-contents\",\"6464\":\"search\",\"6791\":\"video\",\"7577\":\"order_newsletter\",\"8032\":\"wizard\",\"8209\":\"accordion\",\"9364\":\"responsive_iframe\"}[chunkId] + \".\" + {\"1249\":\"fa75f14d\",\"2934\":\"ef46db37\",\"5838\":\"ef46db37\",\"6464\":\"ef46db37\",\"6791\":\"ef46db37\",\"7577\":\"ef46db37\",\"8032\":\"ef46db37\",\"8209\":\"ef46db37\",\"9364\":\"ef46db37\"}[chunkId] + \".css\";\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","var inProgress = {};\nvar dataWebpackPrefix = \"vero:\";\n// loadScript function to load a script via script tag\n__webpack_require__.l = function(url, done, key, chunkId) {\n\tif(inProgress[url]) { inProgress[url].push(done); return; }\n\tvar script, needAttach;\n\tif(key !== undefined) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tvar s = scripts[i];\n\t\t\tif(s.getAttribute(\"src\") == url || s.getAttribute(\"data-webpack\") == dataWebpackPrefix + key) { script = s; break; }\n\t\t}\n\t}\n\tif(!script) {\n\t\tneedAttach = true;\n\t\tscript = document.createElement('script');\n\n\t\tscript.charset = 'utf-8';\n\t\tscript.timeout = 120;\n\t\tif (__webpack_require__.nc) {\n\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n\t\t}\n\t\tscript.setAttribute(\"data-webpack\", dataWebpackPrefix + key);\n\t\tscript.src = url;\n\t}\n\tinProgress[url] = [done];\n\tvar onScriptComplete = function(prev, event) {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tvar doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode && script.parentNode.removeChild(script);\n\t\tdoneFns && doneFns.forEach(function(fn) { return fn(event); });\n\t\tif(prev) return prev(event);\n\t};\n\tvar timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);\n\tscript.onerror = onScriptComplete.bind(null, script.onerror);\n\tscript.onload = onScriptComplete.bind(null, script.onload);\n\tneedAttach && document.head.appendChild(script);\n};","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = function(module) {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.p = \"/static/dist/\";","if (typeof document === \"undefined\") return;\nvar createStylesheet = function(chunkId, fullhref, oldTag, resolve, reject) {\n\tvar linkTag = document.createElement(\"link\");\n\n\tlinkTag.rel = \"stylesheet\";\n\tlinkTag.type = \"text/css\";\n\tvar onLinkComplete = function(event) {\n\t\t// avoid mem leaks.\n\t\tlinkTag.onerror = linkTag.onload = null;\n\t\tif (event.type === 'load') {\n\t\t\tresolve();\n\t\t} else {\n\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\tvar realHref = event && event.target && event.target.href || fullhref;\n\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + realHref + \")\");\n\t\t\terr.code = \"CSS_CHUNK_LOAD_FAILED\";\n\t\t\terr.type = errorType;\n\t\t\terr.request = realHref;\n\t\t\tlinkTag.parentNode.removeChild(linkTag)\n\t\t\treject(err);\n\t\t}\n\t}\n\tlinkTag.onerror = linkTag.onload = onLinkComplete;\n\tlinkTag.href = fullhref;\n\n\tif (oldTag) {\n\t\toldTag.parentNode.insertBefore(linkTag, oldTag.nextSibling);\n\t} else {\n\t\tdocument.head.appendChild(linkTag);\n\t}\n\treturn linkTag;\n};\nvar findStylesheet = function(href, fullhref) {\n\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n\tfor(var i = 0; i < existingLinkTags.length; i++) {\n\t\tvar tag = existingLinkTags[i];\n\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return tag;\n\t}\n\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n\tfor(var i = 0; i < existingStyleTags.length; i++) {\n\t\tvar tag = existingStyleTags[i];\n\t\tvar dataHref = tag.getAttribute(\"data-href\");\n\t\tif(dataHref === href || dataHref === fullhref) return tag;\n\t}\n};\nvar loadStylesheet = function(chunkId) {\n\treturn new Promise(function(resolve, reject) {\n\t\tvar href = __webpack_require__.miniCssF(chunkId);\n\t\tvar fullhref = __webpack_require__.p + href;\n\t\tif(findStylesheet(href, fullhref)) return resolve();\n\t\tcreateStylesheet(chunkId, fullhref, null, resolve, reject);\n\t});\n}\n// object to store loaded CSS chunks\nvar installedCssChunks = {\n\t9354: 0\n};\n\n__webpack_require__.f.miniCss = function(chunkId, promises) {\n\tvar cssChunks = {\"1249\":1};\n\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n\t\tpromises.push(installedCssChunks[chunkId] = loadStylesheet(chunkId).then(function() {\n\t\t\tinstalledCssChunks[chunkId] = 0;\n\t\t}, function(e) {\n\t\t\tdelete installedCssChunks[chunkId];\n\t\t\tthrow e;\n\t\t}));\n\t}\n};\n\n// no hmr","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t9354: 0\n};\n\n__webpack_require__.f.j = function(chunkId, promises) {\n\t\t// JSONP chunk loading for javascript\n\t\tvar installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;\n\t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n\t\t\t// a Promise means \"currently loading\".\n\t\t\tif(installedChunkData) {\n\t\t\t\tpromises.push(installedChunkData[2]);\n\t\t\t} else {\n\t\t\t\tif(true) { // all chunks have JS\n\t\t\t\t\t// setup Promise in chunk cache\n\t\t\t\t\tvar promise = new Promise(function(resolve, reject) { installedChunkData = installedChunks[chunkId] = [resolve, reject]; });\n\t\t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n\t\t\t\t\t// start chunk loading\n\t\t\t\t\tvar url = __webpack_require__.p + __webpack_require__.u(chunkId);\n\t\t\t\t\t// create error before stack unwound to get useful stacktrace later\n\t\t\t\t\tvar error = new Error();\n\t\t\t\t\tvar loadingEnded = function(event) {\n\t\t\t\t\t\tif(__webpack_require__.o(installedChunks, chunkId)) {\n\t\t\t\t\t\t\tinstalledChunkData = installedChunks[chunkId];\n\t\t\t\t\t\t\tif(installedChunkData !== 0) installedChunks[chunkId] = undefined;\n\t\t\t\t\t\t\tif(installedChunkData) {\n\t\t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n\t\t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n\t\t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n\t\t\t\t\t\t\t\terror.type = errorType;\n\t\t\t\t\t\t\t\terror.request = realSrc;\n\t\t\t\t\t\t\t\tinstalledChunkData[1](error);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t\t__webpack_require__.l(url, loadingEnded, \"chunk-\" + chunkId, chunkId);\n\t\t\t\t} else installedChunks[chunkId] = 0;\n\t\t\t}\n\t\t}\n};\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = function(chunkId) { return installedChunks[chunkId] === 0; };\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = function(parentChunkLoadingFunction, data) {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some(function(id) { return installedChunks[id] !== 0; })) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkvero\"] = self[\"webpackChunkvero\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [4409], function() { return __webpack_require__(27449); })\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["render","_vm","this","_h","$createElement","_c","_self","directives","name","rawName","value","trackingDisabled","expression","staticClass","attrs","id","on","$event","preventDefault","onSubmit","query","$trans","_v","_s","_e","ref","showAlternateIcon","componentLocation","pageName","domProps","target","composing","onSearch","getGlyph","staticRenderFns","props","queryString","type","default","onKeyUpEnabled","onKeyUp","showLabel","data","mounted","methods","computed","component","getSearchSuggestions","searchSuggestionsUrl","language","rootFilter","count","API","params","getSearchResults","searchFullUrl","page","pageSize","sort","tag","year","typeId","showAllVersions","taxOfficeApiUrl","getTaxOffices","municipality","section","csvApiUrl","getCsvSearchResults","cid","Vue","VueRouter","routes","mode","base","window","BASE_PATH","fallback","getFilteredArray","arr","array","Object","keys","map","k","filter","field","includes","setValidationAttributes","forEach","element","removeAttribute","offsetHeight","isValid","validity","valid","checkForValidationError","setAttribute","isCheckBoxOrRadio","validationErrorElement","parentNode","nextElementSibling","matches","offsetParent","validateForm","epiForm","validatedFields","currentTarget","isNil","filteredArray","addTimeStamp","dt","Date","timestamp","document","createElement","innerHTML","toLocaleString","successWrapperExists","setInterval","messageWrapper","querySelector","appendChild","clearInterval","getTime","focusToStartOfForm","jump","a11y","duration","onEpiformsValidating","onEpiformsSubmitted","onEpiformsSteps","format","string","args","replace","m","n","translate","translationKey","undefined","i18n","translationString","polyfill","assign","defineProperty","TypeError","to","index","arguments","length","nextSource","nextKey","prototype","hasOwnProperty","call","writable","configurable","Element","matchesSelector","webkitMatchesSelector","mozMatchesSelector","msMatchesSelector","oMatchesSelector","isMobileMenuVisible","toggleMobileMenu","indexOf","keyCode","viewModel","RootPageUrl","logoUrl","logoUrl2","_t","isLoading","getCrumbsVisibility","MobileMenuLinks","ParentName","ParentId","move","Links","_l","link","key","Id","class","selected","isLinkSelected","haschildren","HasChildren","Url","Name","getMobileMenuItems","mobileMenuApiUrl","components","Trap","results","errors","showError","isMenuCreated","getVisibleMenu","createMobileMenu","MobileMenuApi","then","catch","addFocus","getCssClass","isVisible","handleScroll","created","destroyed","cssClass","href","ariaHidden","ariaLabel","scrollToAnchor","title","glyph","visibleMenuId","menuMainOverlay","getElementById","isVisibleMenu","menuId","setVisibleMenu","getVisibleMenuId","style","display","hideMenu","clickOutside","vClickOutside","showNewLayout","parentIsVisible","getAriaLabelForButton","toggleVisible","getButtonText","isDesktop","showInputLabel","item","Title","Text","minChars","getSearchPageLinkWithQuery","rootFilterIds","searchPageUrl","searchSuggestionsApiUrl","SearchField","loading","isComponentVisible","showButtonInOverlay","search","SearchApi","hideLanguageMenu","isLanguageMenuVisible","currentLanguage","toggleLanguageMenu","showOnlyLanguageCodeInToggle","getCurrentLanguageDisplayName","open","DisplayName","Selected","languages","showOnlyLanguageNominativeInToggle","hasLanguages","template","feedbackGiven","feedbackSent","translatedTitle","sendingFeedback","like","translatedLikeButtonText","dislike","translatedDislikeButtonText","getPercentLiked","color","colorLiked","getPercentDisliked","colorDisliked","getResultText","translatedErrorText","apiUrl","downloadApiUrl","getFeedbacks","contentId","fromDate","toDate","_isNil","getDownloadUrl","downloadUrl","addFeedback","feedbackType","requestVerificationToken","getElementsByName","config","headers","comment","deleteFeedbacks","COOKIE_NAME","VueCircle","pageId","translatedResultText","feedbackSummary","feedbackGivenPageIdArray","feedbackError","countLiked","countDisliked","countTotal","init","addCookie","Cookie","getCookie","isPageInArray","feedbackAPI","calculatePercent","closeButtonVisible","result","showCloseButton","currentLangCodeCapital","getButtonAriaLabelText","Search","OrderNewsletter","SubsiteAccordionItemBlock","ResponsiveIframe","VideoComponent","TableOfContents","TableOfContentsMobile","DataTable","Wizard","WizardOld","inserted","vnode","el","sendPiwikEvent","category","action","_paq","resolve","reject","bind","event","isLink","mediaQueries","MediaQueries","VueEvents","_kebabCase","addEventListener","router","epiforms","axios","get","url","request","post","put","delete","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","exports","module","loaded","__webpack_modules__","deferred","O","chunkIds","fn","priority","notFulfilled","Infinity","i","fulfilled","j","every","splice","r","getter","__esModule","d","a","definition","o","enumerable","f","e","chunkId","Promise","all","reduce","promises","u","miniCssF","g","globalThis","Function","obj","prop","inProgress","dataWebpackPrefix","l","done","push","script","needAttach","scripts","getElementsByTagName","s","getAttribute","charset","timeout","nc","src","onScriptComplete","prev","onerror","onload","clearTimeout","doneFns","removeChild","setTimeout","head","Symbol","toStringTag","nmd","paths","children","p","createStylesheet","fullhref","oldTag","linkTag","rel","onLinkComplete","errorType","realHref","err","Error","code","insertBefore","nextSibling","findStylesheet","existingLinkTags","dataHref","existingStyleTags","loadStylesheet","installedCssChunks","miniCss","cssChunks","installedChunks","installedChunkData","promise","error","loadingEnded","realSrc","message","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","self","__webpack_exports__"],"sourceRoot":""}