{"version":3,"sources":["webpack:///./components/global/Footer.vue","webpack:///./components/global/Footer.vue?a4c2","webpack:///./components/global/Footer.vue?9684","webpack:///./components/global/SmoothScroll.vue","webpack:///./components/global/SmoothScroll.vue?4841","webpack:///./components/global/SmoothScroll.vue?819e","webpack:///./components/global/SEO.vue","webpack:///./components/global/SEO.vue?f038","webpack:///./components/global/SEO.vue?3b45","webpack:///./mixins/locomotiveScrollMixin.js","webpack:///./node_modules/imagesloaded/imagesloaded.js","webpack:///./node_modules/ev-emitter/ev-emitter.js","webpack:///./node_modules/throttle-debounce/index.umd.js"],"names":["name","computed","year","Date","getFullYear","component","_vm","_c","_self","staticClass","_v","_s","_m","attrs","domProps","$t","_t","props","seo","Object","head","_this$seo$metaImage","_this$seo$metaImage$d","_this$seo$metaImage$d2","_this$seo$metaImage2","_this$seo$metaImage2$","_this$seo$metaImage2$2","title","this","metaTitle","meta","hid","property","content","metaDescription","metaImage","data","attributes","url","link","rel","href","locoScroll","showNav","$store","state","mounted","_this","$nextTick","initLocomotiveScroll","setTimeout","update","beforeDestroy","destroyLocomotiveScroll","methods","_this2","scrollContainer","$el","querySelector","$initLocomotiveScroll","on","$ScrollTrigger","throttledScrollHandler","throttle","handleScroll","context","disableToggleNav","vm","scrollerProxy","scrollTop","value","arguments","length","scrollTo","duration","disableLerp","scroll","instance","y","getBoundingClientRect","top","left","width","window","innerWidth","height","innerHeight","pinType","document","style","transform","refreshHandler","imagesLoaded","background","addEventListener","refresh","commit","console","error","removeEventListener","getAll","forEach","st","kill","off","destroy","resetLocoScroll","direction","factory","module","exports","EvEmitter","$","jQuery","ImagesLoaded","elem","options","onAlways","queryElem","obj","querySelectorAll","elements","Array","isArray","assign","getImages","jqDeferred","Deferred","check","bind","prototype","create","images","addElementImages","elementNodeTypes","nodeName","addImage","addElementBackgroundImages","nodeType","includes","childImgs","img","children","child","reURL","LoadingImage","Background","element","Image","getComputedStyle","matches","exec","backgroundImage","addBackground","loadingImage","push","progressedCount","hasAnyBroken","complete","onProgress","image","message","progress","once","isLoaded","emitEvent","notify","debug","log","eventName","isComplete","jqMethod","getIsImageComplete","confirm","naturalWidth","proxyImage","crossOrigin","src","currentSrc","parentNode","handleEvent","event","method","type","onload","unbindEvents","onerror","makeJQueryPlugin","fn","promise","global","proto","listener","events","_events","listeners","onceEvents","_onceEvents","index","indexOf","splice","args","slice","onceListeners","apply","allOff","delay","noTrailing","callback","debounceMode","timeoutID","cancelled","lastExec","clearExistingTimeout","clearTimeout","cancel","wrapper","_len","arguments_","_key","self","elapsed","now","clear","undefined","debounce","atBegin","defineProperty"],"mappings":";0GAAA,ICA6P,EDC9O,CACbA,KAAM,SACNC,SAAU,CACRC,KAAI,WAGF,OAFY,IAAIC,MACCC,aAEnB,I,QEDAC,UAAY,YACd,GFRW,WAAkB,IAAIC,EAAI,KAAKC,EAAGD,EAAIE,MAAMD,GAAG,OAAOA,EAAG,MAAM,CAACE,YAAY,wEAAwE,CAACF,EAAG,MAAM,CAACE,YAAY,4GAA4G,CAACF,EAAG,MAAM,CAACE,YAAY,4BAA4B,CAACF,EAAG,IAAI,CAACE,YAAY,yCAAyC,CAACH,EAAII,GAAG,sBAAsBJ,EAAIK,GAAGL,EAAIJ,WAAWI,EAAII,GAAG,KAAKJ,EAAIM,GAAG,GAAGN,EAAII,GAAG,KAAKH,EAAG,MAAM,CAACE,YAAY,sDAAsD,CAACF,EAAG,IAAI,CAACE,YAAY,6DAA6DI,MAAM,CAAC,KAAO,wBAAwB,OAAS,SAAS,MAAQ,0EAA0E,IAAM,aAAa,CAACN,EAAG,OAAO,CAACE,YAAY,UAAUK,SAAS,CAAC,UAAYR,EAAIK,GAAGL,EAAIS,GAAG,qBAAqBT,EAAII,GAAG,KAAKJ,EAAIM,GAAG,QACp5B,GACsB,CAAC,WAAY,IAAaL,EAAL,KAAYC,MAAMD,GAAG,OAAOA,EAAG,MAAM,CAACE,YAAY,mBAAmB,CAACF,EAAG,IAAI,CAACE,YAAY,qBAAqBI,MAAM,CAAC,KAAO,0BAA0B,CAAvJ,KAA4JH,GAAG,qBAC1M,EAAE,WAAY,IAAIJ,EAAI,KAAKC,EAAGD,EAAIE,MAAMD,GAAG,OAAOA,EAAG,KAAK,CAACE,YAAY,yCAAyC,CAACF,EAAG,KAAK,CAACA,EAAG,IAAI,CAACM,MAAM,CAAC,KAAO,wCAAwC,OAAS,SAAS,MAAQ,WAAW,IAAM,aAAa,CAACP,EAAII,GAAG,gBAAgBJ,EAAII,GAAG,KAAKH,EAAG,KAAK,CAACA,EAAG,IAAI,CAACM,MAAM,CAAC,KAAO,yCAAyC,OAAS,SAAS,MAAQ,YAAY,IAAM,aAAa,CAACP,EAAII,GAAG,iBAAiBJ,EAAII,GAAG,KAAKH,EAAG,KAAK,CAACA,EAAG,IAAI,CAACM,MAAM,CAAC,KAAO,iDAAiD,OAAS,SAAS,MAAQ,WAAW,IAAM,aAAa,CAACP,EAAII,GAAG,iBAC1kB,IEOE,EACA,KACA,KACA,MAIa,UAAAL,U,iDClBf,ICAmQ,EDCpP,CACbL,KAAM,gB,QEKJK,UAAY,YACd,GFRW,WAA+C,OAAOE,EAA5B,KAAYC,MAAMD,IAAa,MAAM,CAACM,MAAM,CAAC,wBAAwB,KAAK,CAA1E,KAA+EG,GAAG,YAAY,EACrI,GACsB,IESpB,EACA,KACA,WACA,MAIa,UAAAX,U,iDClBf,ICA0P,EDC3O,CACbY,MAAO,CACLC,IAAKC,QAEPC,KAAI,WAAG,IAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EACL,MAAO,CACLC,MAAOC,KAAKV,IAAIW,UAChBC,KAAM,CACJ,CACEC,IAAK,QACLC,SAAU,QACVC,QAASL,KAAKV,IAAIW,WAEpB,CACEE,IAAK,cACL/B,KAAM,cACNiC,QAASL,KAAKV,IAAIgB,iBAEpB,CACEH,IAAK,WACLC,SAAU,WACVC,QAASL,KAAKV,IAAIW,WAEpB,CACEE,IAAK,iBACLC,SAAU,iBACVC,QAASL,KAAKV,IAAIgB,iBAGpB,CACEH,IAAK,WACLC,SAAU,WACVC,QAA2B,QAApBZ,EAAEO,KAAKV,IAAIiB,iBAAS,IAAAd,GAAM,QAANC,EAAlBD,EAAoBe,YAAI,IAAAd,GAAY,QAAZC,EAAxBD,EAA0Be,kBAAU,IAAAd,OAAlB,EAAlBA,EAAsCe,KAEjD,CACEP,IAAK,sBACL/B,KAAM,sBACNiC,QAASL,KAAKV,IAAIgB,iBAEpB,CACEH,IAAK,gBACL/B,KAAM,gBACNiC,QAA2B,QAApBT,EAAEI,KAAKV,IAAIiB,iBAAS,IAAAX,GAAM,QAANC,EAAlBD,EAAoBY,YAAI,IAAAX,GAAY,QAAZC,EAAxBD,EAA0BY,kBAAU,IAAAX,OAAlB,EAAlBA,EAAsCY,KAGjD,CACEP,IAAK,YACLC,SAAU,YACVC,QAAS,qBAGbM,KAAM,CAEJ,CACEC,IAAK,YACLC,KAAM,6BAER,CACED,IAAK,UACLC,KAAM,0BAId,G,QEzDEpC,UAAY,YACd,GFRW,WAA+C,OAAOE,EAA5B,KAAYC,MAAMD,IAAa,MACtE,GACsB,IESpB,EACA,KACA,KACA,MAIa,UAAAF,U,2FCfA,KACb+B,KAAI,WACF,MAAO,CACLM,WAAY,KAEhB,EACAzC,SAAU,CACR0C,QAAO,WACL,OAAOf,KAAKgB,OAAOC,MAAMF,OAC3B,GAEFG,QAAO,WAAG,IAAAC,EAAA,KACRnB,KAAKoB,WAAU,WACbD,EAAKE,uBAELC,YAAW,WACLH,EAAKL,aACPK,EAAKL,WAAWS,SAChBD,YAAW,WACLH,EAAKL,YACPK,EAAKL,WAAWS,QAEpB,GAAG,KAEP,GAAG,IACL,GACF,EACAC,cAAa,WACXxB,KAAKyB,yBACP,EACAC,QAAS,CACPL,qBAAoB,WAAG,IAAAM,EAAA,KACfC,EAAkB5B,KAAK6B,IAAIC,cAAc,2BAC/C,GAAKF,EAAL,CAKA5B,KAAKc,WAAad,KAAK+B,sBAAsBH,GAG7C5B,KAAKc,WAAWkB,GAAG,SAAUhC,KAAKiC,eAAeV,QAEjD,IAAMW,EAAyBC,mBAAS,IAAKnC,KAAKoC,cAElDpC,KAAKc,WAAWkB,GAAG,UAAU,SAACK,GACvBV,EAAKW,kBACRJ,EAAuBG,EAE3B,IAIA,IAAME,EAAKvC,KAEXA,KAAKiC,eAAeO,cAAc,0BAA2B,CAC3DC,UAAS,SAACC,GACR,OAAKH,EAAGzB,WAED6B,UAAUC,OAASL,EAAGzB,WAAW+B,SAASH,EAAO,CACtDI,SAAU,EACVC,aAAa,IACVR,EAAGzB,WAAWkC,OAAOC,SAASD,OAAOE,EALf,CAM7B,EACAC,sBAAqB,WACnB,MAAO,CAACC,IAAK,EAAGC,KAAM,EAAGC,MAAOC,OAAOC,WAAYC,OAAQF,OAAOG,YACpE,EAEAC,QAASC,SAAS9B,cAAc,2BAA2B+B,MAAMC,UAAY,YAAc,UAG7F9D,KAAK+D,eAAiB,kBAAMpC,EAAKb,WAAWS,QAAQ,EAGpDyC,IAAapC,EAAiB,CAACqC,YAAY,IAAO,WAChDtC,EAAKb,WAAWS,QAClB,IAEAvB,KAAKiC,eAAeiC,iBAAiB,WAAW,kBAAMvC,EAAKoC,cAAc,IACzE/D,KAAKiC,eAAekC,UACpBnE,KAAKgB,OAAOoD,OAAO,kCAAkC,EA5CrD,MAFEC,QAAQC,MAAM,6BA+ClB,EACA7C,wBAAuB,WAErBzB,KAAKiC,eAAesC,oBAAoB,UAAWvE,KAAK+D,gBAGxD/D,KAAKiC,eAAeuC,SAASC,SAAQ,SAAAC,GAAE,OAAIA,EAAGC,MAAM,IACpD3E,KAAKc,WAAW8D,IAAI,SAAU5E,KAAKiC,eAAeV,QAClDvB,KAAKc,WAAW+D,UAChB7E,KAAKc,WAAa,KAClBd,KAAKgB,OAAOoD,OAAO,kCAAkC,EACvD,EACAU,gBAAe,WACT9E,KAAKc,aACPd,KAAKyB,0BACLzB,KAAKqB,uBAET,EACAe,aAAY,SAACa,GACgB,OAAvBA,EAAS8B,WAAuB/E,KAAKe,QAEP,SAAvBkC,EAAS8B,WAAwB/E,KAAKe,SAC/Cf,KAAKgB,OAAOoD,OAAO,cAAc,GAFjCpE,KAAKgB,OAAOoD,OAAO,cAAc,EAIrC,G,uBCtGJ,SAAYb,EAAQyB,GAEgBC,EAAOC,QAEvCD,EAAOC,QAAUF,EAASzB,EAAQ,EAAQ,MAG1CA,EAAOS,aAAegB,EAASzB,EAAQA,EAAO4B,UAGhD,CAVF,CAUuB,oBAAX5B,OAAyBA,OAASvD,MAC1C,SAAkBuD,EAAQ4B,GAE9B,IAAIC,EAAI7B,EAAO8B,OACXhB,EAAUd,EAAOc,QAyBrB,SAASiB,EAAcC,EAAMC,EAASC,GAEpC,KAAQzF,gBAAgBsF,GACtB,OAAO,IAAIA,EAAcC,EAAMC,EAASC,GAG1C,IAAIC,EAAYH,EA1BlB,IAAoBI,GA2BE,iBAARJ,IACVG,EAAY9B,SAASgC,iBAAkBL,IAGnCG,IAKN1F,KAAK6F,UApCaF,EAoCSD,EAlCtBI,MAAMC,QAASJ,GAAeA,EAEH,iBAAPA,GAAwC,iBAAdA,EAAI/C,OAE7B,IAAK+C,GAGxB,CAAEA,IA4BT3F,KAAKwF,QAAU,CAAC,EAEO,mBAAXA,EACVC,EAAWD,EAEXjG,OAAOyG,OAAQhG,KAAKwF,QAASA,GAG1BC,GAAWzF,KAAKgC,GAAI,SAAUyD,GAEnCzF,KAAKiG,YAEAb,IAAIpF,KAAKkG,WAAa,IAAId,EAAEe,UAGjC7E,WAAYtB,KAAKoG,MAAMC,KAAMrG,QApB3BqE,EAAQC,MAAM,gCAAgCoB,GAAaH,IAqB/D,CAEAD,EAAagB,UAAY/G,OAAOgH,OAAQpB,EAAUmB,WAElDhB,EAAagB,UAAUL,UAAY,WACjCjG,KAAKwG,OAAS,GAGdxG,KAAK6F,SAASpB,QAASzE,KAAKyG,iBAAkBzG,KAChD,EAEA,MAAM0G,EAAmB,CAAE,EAAG,EAAG,IAKjCpB,EAAagB,UAAUG,iBAAmB,SAAUlB,GAE3B,QAAlBA,EAAKoB,UACR3G,KAAK4G,SAAUrB,IAGgB,IAA5BvF,KAAKwF,QAAQvB,YAChBjE,KAAK6G,2BAA4BtB,GAKnC,IAAI,SAAEuB,GAAavB,EACnB,IAAMuB,IAAaJ,EAAiBK,SAAUD,GAAa,OAE3D,IAAIE,EAAYzB,EAAKK,iBAAiB,OAEtC,IAAM,IAAIqB,OAAOD,EACfhH,KAAK4G,SAAUK,KAIjB,GAAuC,iBAA3BjH,KAAKwF,QAAQvB,WAAyB,CAChD,IAAIiD,EAAW3B,EAAKK,iBAAkB5F,KAAKwF,QAAQvB,YACnD,IAAM,IAAIkD,KAASD,EACjBlH,KAAK6G,2BAA4BM,EAErC,CACF,EAEA,MAAMC,EAAQ,0BAqFd,SAASC,EAAcJ,KACrBjH,KAAKiH,IAAMA,GACb,CAuEA,SAASK,EAAY5G,EAAK6G,SACxBvH,KAAKU,IAAMA,EACXV,KAAKuH,QAAUA,QACfvH,KAAKiH,IAAM,IAAIO,KACjB,CA8CA,OA9MAlC,EAAagB,UAAUO,2BAA6B,SAAUtB,GAC5D,IAAI1B,MAAQ4D,iBAAkBlC,GAE9B,IAAM1B,MAAQ,OAGd,IAAI6D,EAAUN,EAAMO,KAAM9D,MAAM+D,iBAChC,KAAoB,OAAZF,GAAmB,CACzB,IAAIhH,EAAMgH,GAAWA,EAAQ,GACxBhH,GACHV,KAAK6H,cAAenH,EAAK6E,GAE3BmC,EAAUN,EAAMO,KAAM9D,MAAM+D,gBAC9B,CACF,EAKAtC,EAAagB,UAAUM,SAAW,SAAUK,KAC1C,IAAIa,EAAe,IAAIT,EAAcJ,KACrCjH,KAAKwG,OAAOuB,KAAMD,EACpB,EAEAxC,EAAagB,UAAUuB,cAAgB,SAAUnH,EAAK6E,GACpD,IAAItB,EAAa,IAAIqD,EAAY5G,EAAK6E,GACtCvF,KAAKwG,OAAOuB,KAAM9D,EACpB,EAEAqB,EAAagB,UAAUF,MAAQ,WAI7B,GAHApG,KAAKgI,gBAAkB,EACvBhI,KAAKiI,cAAe,GAEdjI,KAAKwG,OAAO5D,OAEhB,YADA5C,KAAKkI,WAKP,IAAIC,EAAa,CAAEC,MAAO7C,EAAM8C,KAE9B/G,YAAY,KACVtB,KAAKsI,SAAUF,MAAO7C,EAAM8C,EAAS,GACpC,EAGLrI,KAAKwG,OAAO/B,SAAS,SAAUqD,GAC7BA,EAAaS,KAAM,WAAYJ,GAC/BL,EAAa1B,OACf,GACF,EAEAd,EAAagB,UAAUgC,SAAW,SAAUF,MAAO7C,EAAM8C,GACvDrI,KAAKgI,kBACLhI,KAAKiI,aAAejI,KAAKiI,eAAiBG,MAAMI,SAEhDxI,KAAKyI,UAAW,WAAY,CAAEzI,KAAMoI,MAAO7C,IACtCvF,KAAKkG,YAAclG,KAAKkG,WAAWwC,QACtC1I,KAAKkG,WAAWwC,OAAQ1I,KAAMoI,OAG3BpI,KAAKgI,kBAAoBhI,KAAKwG,OAAO5D,QACxC5C,KAAKkI,WAGFlI,KAAKwF,QAAQmD,OAAStE,GACzBA,EAAQuE,IAAK,aAAaP,IAAWD,MAAO7C,EAEhD,EAEAD,EAAagB,UAAU4B,SAAW,WAChC,IAAIW,EAAY7I,KAAKiI,aAAe,OAAS,OAI7C,GAHAjI,KAAK8I,YAAa,EAClB9I,KAAKyI,UAAWI,EAAW,CAAE7I,OAC7BA,KAAKyI,UAAW,SAAU,CAAEzI,OACvBA,KAAKkG,WAAa,CACrB,IAAI6C,EAAW/I,KAAKiI,aAAe,SAAW,UAC9CjI,KAAKkG,WAAY6C,GAAY/I,KAC/B,CACF,EAQAqH,EAAaf,UAAY/G,OAAOgH,OAAQpB,EAAUmB,WAElDe,EAAaf,UAAUF,MAAQ,WAGZpG,KAAKgJ,qBAGpBhJ,KAAKiJ,QAAmC,IAA1BjJ,KAAKiH,IAAIiC,aAAoB,iBAK7ClJ,KAAKmJ,WAAa,IAAI3B,MAEjBxH,KAAKiH,IAAImC,cACZpJ,KAAKmJ,WAAWC,YAAcpJ,KAAKiH,IAAImC,aAEzCpJ,KAAKmJ,WAAWjF,iBAAkB,OAAQlE,MAC1CA,KAAKmJ,WAAWjF,iBAAkB,QAASlE,MAE3CA,KAAKiH,IAAI/C,iBAAkB,OAAQlE,MACnCA,KAAKiH,IAAI/C,iBAAkB,QAASlE,MACpCA,KAAKmJ,WAAWE,IAAMrJ,KAAKiH,IAAIqC,YAActJ,KAAKiH,IAAIoC,IACxD,EAEAhC,EAAaf,UAAU0C,mBAAqB,WAG1C,OAAOhJ,KAAKiH,IAAIiB,UAAYlI,KAAKiH,IAAIiC,YACvC,EAEA7B,EAAaf,UAAU2C,QAAU,SAAUT,EAAUH,GACnDrI,KAAKwI,SAAWA,EAChB,IAAI,WAAEe,GAAevJ,KAAKiH,IAEtB1B,EAA+B,YAAxBgE,EAAW5C,SAAyB4C,EAAavJ,KAAKiH,IACjEjH,KAAKyI,UAAW,WAAY,CAAEzI,KAAMuF,EAAM8C,GAC5C,EAKAhB,EAAaf,UAAUkD,YAAc,SAAUC,GAC7C,IAAIC,EAAS,KAAOD,EAAME,KACrB3J,KAAM0J,IACT1J,KAAM0J,GAAUD,EAEpB,EAEApC,EAAaf,UAAUsD,OAAS,WAC9B5J,KAAKiJ,SAAS,EAAM,UACpBjJ,KAAK6J,cACP,EAEAxC,EAAaf,UAAUwD,QAAU,WAC/B9J,KAAKiJ,SAAS,EAAO,WACrBjJ,KAAK6J,cACP,EAEAxC,EAAaf,UAAUuD,aAAe,WACpC7J,KAAKmJ,WAAW5E,oBAAqB,OAAQvE,MAC7CA,KAAKmJ,WAAW5E,oBAAqB,QAASvE,MAC9CA,KAAKiH,IAAI1C,oBAAqB,OAAQvE,MACtCA,KAAKiH,IAAI1C,oBAAqB,QAASvE,KACzC,EAWAsH,EAAWhB,UAAY/G,OAAOgH,OAAQc,EAAaf,WAEnDgB,EAAWhB,UAAUF,MAAQ,WAC3BpG,KAAKiH,IAAI/C,iBAAkB,OAAQlE,MACnCA,KAAKiH,IAAI/C,iBAAkB,QAASlE,MACpCA,KAAKiH,IAAIoC,IAAMrJ,KAAKU,IAEHV,KAAKgJ,uBAEpBhJ,KAAKiJ,QAAmC,IAA1BjJ,KAAKiH,IAAIiC,aAAoB,gBAC3ClJ,KAAK6J,eAET,EAEAvC,EAAWhB,UAAUuD,aAAe,WAClC7J,KAAKiH,IAAI1C,oBAAqB,OAAQvE,MACtCA,KAAKiH,IAAI1C,oBAAqB,QAASvE,KACzC,EAEAsH,EAAWhB,UAAU2C,QAAU,SAAUT,EAAUH,GACjDrI,KAAKwI,SAAWA,EAChBxI,KAAKyI,UAAW,WAAY,CAAEzI,KAAMA,KAAKuH,QAASc,GACpD,EAIA/C,EAAayE,iBAAmB,SAAU1E,IACxCA,EAASA,GAAU9B,EAAO8B,UAI1BD,EAAIC,EAEJD,EAAE4E,GAAGhG,aAAe,SAAUwB,EAASC,GAErC,OADe,IAAIH,EAActF,KAAMwF,EAASC,GAChCS,WAAW+D,QAAS7E,EAAGpF,MACzC,EACF,EAEAsF,EAAayE,mBAINzE,CAEP,G,sBCxUE,IAAU4E,EAAQlF,EAARkF,EAUQ,oBAAV3G,OAAwBA,OAASvD,KAVvBgF,EAU6B,WAEjD,SAASG,IAAa,CAEtB,IAAIgF,EAAQhF,EAAUmB,UA6EtB,OA3EA6D,EAAMnI,GAAK,SAAU6G,EAAWuB,GAC9B,IAAMvB,IAAcuB,EAAW,OAAOpK,KAGtC,IAAIqK,EAASrK,KAAKsK,QAAUtK,KAAKsK,SAAW,CAAC,EAEzCC,EAAYF,EAAQxB,GAAcwB,EAAQxB,IAAe,GAM7D,OAJM0B,EAAUxD,SAAUqD,IACxBG,EAAUxC,KAAMqC,GAGXpK,IACT,EAEAmK,EAAM5B,KAAO,SAAUM,EAAWuB,GAChC,IAAMvB,IAAcuB,EAAW,OAAOpK,KAGtCA,KAAKgC,GAAI6G,EAAWuB,GAGpB,IAAII,EAAaxK,KAAKyK,YAAczK,KAAKyK,aAAe,CAAC,EAMzD,OAJoBD,EAAY3B,GAAc2B,EAAY3B,IAAe,CAAC,GAE3DuB,IAAa,EAErBpK,IACT,EAEAmK,EAAMvF,IAAM,SAAUiE,EAAWuB,GAC/B,IAAIG,EAAYvK,KAAKsK,SAAWtK,KAAKsK,QAASzB,GAC9C,IAAM0B,IAAcA,EAAU3H,OAAS,OAAO5C,KAE9C,IAAI0K,EAAQH,EAAUI,QAASP,GAK/B,OAJe,GAAVM,GACHH,EAAUK,OAAQF,EAAO,GAGpB1K,IACT,EAEAmK,EAAM1B,UAAY,SAAUI,EAAWgC,GACrC,IAAIN,EAAYvK,KAAKsK,SAAWtK,KAAKsK,QAASzB,GAC9C,IAAM0B,IAAcA,EAAU3H,OAAS,OAAO5C,KAG9CuK,EAAYA,EAAUO,MAAO,GAC7BD,EAAOA,GAAQ,GAEf,IAAIE,EAAgB/K,KAAKyK,aAAezK,KAAKyK,YAAa5B,GAE1D,IAAM,IAAIuB,KAAYG,EACPQ,GAAiBA,EAAeX,KAI3CpK,KAAK4E,IAAKiE,EAAWuB,UAEdW,EAAeX,IAGxBA,EAASY,MAAOhL,KAAM6K,GAGxB,OAAO7K,IACT,EAEAmK,EAAMc,OAAS,WAGb,cAFOjL,KAAKsK,eACLtK,KAAKyK,YACLzK,IACT,EAEOmF,CAEP,EA3FoCF,EAAOC,QAEvCD,EAAOC,QAAUF,IAGjBkF,EAAO/E,UAAYH,G,uBCTf,SAAWE,GAAW,aAoB7B,SAAS/C,EAAU+I,EAAOC,EAAYC,EAAUC,GAM9C,IAAIC,EACAC,GAAY,EAEZC,EAAW,EAEf,SAASC,IACHH,GACFI,aAAaJ,EAEjB,CAGA,SAASK,IACPF,IACAF,GAAY,CACd,CAeA,SAASK,IACP,IAAK,IAAIC,EAAOlJ,UAAUC,OAAQkJ,EAAa,IAAIhG,MAAM+F,GAAOE,EAAO,EAAGA,EAAOF,EAAME,IACrFD,EAAWC,GAAQpJ,UAAUoJ,GAG/B,IAAIC,EAAOhM,KACPiM,EAAU1N,KAAK2N,MAAQV,EAO3B,SAAS7D,IACP6D,EAAWjN,KAAK2N,MAChBd,EAASJ,MAAMgB,EAAMF,EACvB,CAOA,SAASK,IACPb,OAAYc,CACd,CAjBIb,IAmBAF,IAAiBC,GAKnB3D,IAGF8D,SAEqBW,IAAjBf,GAA8BY,EAAUf,EAK1CvD,KACwB,IAAfwD,IAYTG,EAAYhK,WAAW+J,EAAec,EAAQxE,OAAuByE,IAAjBf,EAA6BH,EAAQe,EAAUf,IAEvG,CAIA,MAzE0B,kBAAfC,IACTE,EAAeD,EACfA,EAAWD,EACXA,OAAaiB,GAoEfR,EAAQD,OAASA,EAEVC,CACT,CAkBA,SAASS,EAAUnB,EAAOoB,EAASlB,GACjC,YAAoBgB,IAAbhB,EAAyBjJ,EAAS+I,EAAOoB,GAAS,GAASnK,EAAS+I,EAAOE,GAAsB,IAAZkB,EAC9F,CAEApH,EAAQmH,SAAWA,EACnBnH,EAAQ/C,SAAWA,EAEnB5C,OAAOgN,eAAerH,EAAS,aAAc,CAAExC,OAAO,GAEtD,CApJ+DsC,CAAQE,E","file":"711c312.js","sourcesContent":["\nexport default {\n name: \"Footer\",\n computed: {\n year() {\n const now = new Date()\n const yyyy = now.getFullYear()\n return yyyy\n }\n }\n}\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js??ref--2-0!../../node_modules/@nuxt/components/dist/loader.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Footer.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/babel-loader/lib/index.js??ref--2-0!../../node_modules/@nuxt/components/dist/loader.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Footer.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Footer.vue?vue&type=template&id=767c659f&\"\nimport script from \"./Footer.vue?vue&type=script&lang=js&\"\nexport * from \"./Footer.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/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","\nexport default {\n name: \"SmoothScroll\"\n}\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js??ref--2-0!../../node_modules/@nuxt/components/dist/loader.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SmoothScroll.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/babel-loader/lib/index.js??ref--2-0!../../node_modules/@nuxt/components/dist/loader.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SmoothScroll.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./SmoothScroll.vue?vue&type=template&id=6cd00140&scoped=true&\"\nimport script from \"./SmoothScroll.vue?vue&type=script&lang=js&\"\nexport * from \"./SmoothScroll.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"6cd00140\",\n null\n \n)\n\nexport default component.exports","\nexport default {\n props: {\n seo: Object,\n },\n head() {\n return {\n title: this.seo.metaTitle,\n meta: [\n {\n hid: 'title',\n property: 'title',\n content: this.seo.metaTitle\n },\n {\n hid: 'description',\n name: 'description',\n content: this.seo.metaDescription\n },\n {\n hid: 'og:title',\n property: 'og:title',\n content: this.seo.metaTitle\n },\n {\n hid: 'og:description',\n property: 'og:description',\n content: this.seo.metaDescription\n },\n //ToDo ask for image 1200x630\n {\n hid: 'og:image',\n property: 'og:image',\n content: this.seo.metaImage?.data?.attributes?.url\n },\n {\n hid: 'twitter:description',\n name: 'twitter:description',\n content: this.seo.metaDescription\n },\n {\n hid: 'twitter:image',\n name: 'twitter:image',\n content: this.seo.metaImage?.data?.attributes?.url\n },\n // Static meta\n {\n hid: 'developer',\n property: 'developer',\n content: 'onvocado digital'\n },\n ],\n link: [\n // Static meta\n {\n rel: 'developer',\n href: 'https://onvocado.digital/',\n },\n {\n rel: 'support',\n href: 'https://onvocado.com/',\n },\n ]\n }\n },\n}\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js??ref--2-0!../../node_modules/@nuxt/components/dist/loader.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SEO.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/babel-loader/lib/index.js??ref--2-0!../../node_modules/@nuxt/components/dist/loader.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SEO.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./SEO.vue?vue&type=template&id=e665c51a&\"\nimport script from \"./SEO.vue?vue&type=script&lang=js&\"\nexport * from \"./SEO.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/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 imagesLoaded from \"imagesloaded\";\nimport {throttle} from \"throttle-debounce\";\n\nexport default {\n data() {\n return {\n locoScroll: null,\n };\n },\n computed: {\n showNav() {\n return this.$store.state.showNav\n },\n },\n mounted() {\n this.$nextTick(() => {\n this.initLocomotiveScroll();\n\n setTimeout(() => {\n if (this.locoScroll) {\n this.locoScroll.update()\n setTimeout(() => {\n if (this.locoScroll) {\n this.locoScroll.update()\n }\n }, 2000);\n }\n }, 1000);\n });\n },\n beforeDestroy() {\n this.destroyLocomotiveScroll();\n },\n methods: {\n initLocomotiveScroll() {\n const scrollContainer = this.$el.querySelector('[data-scroll-container]');\n if (!scrollContainer) {\n console.error('Scroll container not found');\n return;\n }\n\n this.locoScroll = this.$initLocomotiveScroll(scrollContainer);\n\n // Update ScrollTrigger after Locomotive Scroll updates\n this.locoScroll.on('scroll', this.$ScrollTrigger.update);\n\n const throttledScrollHandler = throttle(300, this.handleScroll);\n\n this.locoScroll.on('scroll', (context) => {\n if (!this.disableToggleNav) {\n throttledScrollHandler(context);\n }\n });\n\n\n // Refresh ScrollTrigger after Locomotive Scroll initialization\n const vm = this;\n\n this.$ScrollTrigger.scrollerProxy('[data-scroll-container]', {\n scrollTop(value) {\n if (!vm.locoScroll) return 0;\n\n return arguments.length ? vm.locoScroll.scrollTo(value, {\n duration: 0,\n disableLerp: true\n }) : vm.locoScroll.scroll.instance.scroll.y;\n }, // we don't have to define a scrollLeft because we're only scrolling vertically.\n getBoundingClientRect() {\n return {top: 0, left: 0, width: window.innerWidth, height: window.innerHeight};\n },\n // LocomotiveScroll handles things completely differently on mobile devices - it doesn't even transform the container at all! So to get the correct behavior and avoid jitters, we should pin things with position: fixed on mobile. We sense it by checking to see if there's a transform applied to the container (the LocomotiveScroll-controlled element).\n pinType: document.querySelector('[data-scroll-container]').style.transform ? \"transform\" : \"fixed\"\n });\n // Define refreshHandler\n this.refreshHandler = () => this.locoScroll.update();\n\n // fix locomotive bug on setting up too early (img not yet loaded)\n imagesLoaded(scrollContainer, {background: true}, () => {\n this.locoScroll.update();\n });\n\n this.$ScrollTrigger.addEventListener('refresh', () => this.refreshHandler);\n this.$ScrollTrigger.refresh();\n this.$store.commit('setLocomotiveScrollInitialized', true);\n },\n destroyLocomotiveScroll() {\n // Remove the 'refresh' event listener before destroying the Locomotive Scroll instance\n this.$ScrollTrigger.removeEventListener('refresh', this.refreshHandler);\n\n // Clean up before destroying the component\n this.$ScrollTrigger.getAll().forEach(st => st.kill());\n this.locoScroll.off('scroll', this.$ScrollTrigger.update);\n this.locoScroll.destroy();\n this.locoScroll = null;\n this.$store.commit('setLocomotiveScrollInitialized', false);\n },\n resetLocoScroll() {\n if (this.locoScroll) {\n this.destroyLocomotiveScroll();\n this.initLocomotiveScroll();\n }\n },\n handleScroll(instance) {\n if (instance.direction === \"up\" && !this.showNav) {\n this.$store.commit('setShowNav', true);\n } else if (instance.direction === \"down\" && this.showNav) {\n this.$store.commit('setShowNav', false);\n }\n }\n },\n};\n","/*!\n * imagesLoaded v5.0.0\n * JavaScript is all like \"You images are done yet or what?\"\n * MIT License\n */\n\n( function( window, factory ) {\n // universal module definition\n if ( typeof module == 'object' && module.exports ) {\n // CommonJS\n module.exports = factory( window, require('ev-emitter') );\n } else {\n // browser global\n window.imagesLoaded = factory( window, window.EvEmitter );\n }\n\n} )( typeof window !== 'undefined' ? window : this,\n function factory( window, EvEmitter ) {\n\nlet $ = window.jQuery;\nlet console = window.console;\n\n// -------------------------- helpers -------------------------- //\n\n// turn element or nodeList into an array\nfunction makeArray( obj ) {\n // use object if already an array\n if ( Array.isArray( obj ) ) return obj;\n\n let isArrayLike = typeof obj == 'object' && typeof obj.length == 'number';\n // convert nodeList to array\n if ( isArrayLike ) return [ ...obj ];\n\n // array of single index\n return [ obj ];\n}\n\n// -------------------------- imagesLoaded -------------------------- //\n\n/**\n * @param {[Array, Element, NodeList, String]} elem\n * @param {[Object, Function]} options - if function, use as callback\n * @param {Function} onAlways - callback function\n * @returns {ImagesLoaded}\n */\nfunction ImagesLoaded( elem, options, onAlways ) {\n // coerce ImagesLoaded() without new, to be new ImagesLoaded()\n if ( !( this instanceof ImagesLoaded ) ) {\n return new ImagesLoaded( elem, options, onAlways );\n }\n // use elem as selector string\n let queryElem = elem;\n if ( typeof elem == 'string' ) {\n queryElem = document.querySelectorAll( elem );\n }\n // bail if bad element\n if ( !queryElem ) {\n console.error(`Bad element for imagesLoaded ${queryElem || elem}`);\n return;\n }\n\n this.elements = makeArray( queryElem );\n this.options = {};\n // shift arguments if no options set\n if ( typeof options == 'function' ) {\n onAlways = options;\n } else {\n Object.assign( this.options, options );\n }\n\n if ( onAlways ) this.on( 'always', onAlways );\n\n this.getImages();\n // add jQuery Deferred object\n if ( $ ) this.jqDeferred = new $.Deferred();\n\n // HACK check async to allow time to bind listeners\n setTimeout( this.check.bind( this ) );\n}\n\nImagesLoaded.prototype = Object.create( EvEmitter.prototype );\n\nImagesLoaded.prototype.getImages = function() {\n this.images = [];\n\n // filter & find items if we have an item selector\n this.elements.forEach( this.addElementImages, this );\n};\n\nconst elementNodeTypes = [ 1, 9, 11 ];\n\n/**\n * @param {Node} elem\n */\nImagesLoaded.prototype.addElementImages = function( elem ) {\n // filter siblings\n if ( elem.nodeName === 'IMG' ) {\n this.addImage( elem );\n }\n // get background image on element\n if ( this.options.background === true ) {\n this.addElementBackgroundImages( elem );\n }\n\n // find children\n // no non-element nodes, #143\n let { nodeType } = elem;\n if ( !nodeType || !elementNodeTypes.includes( nodeType ) ) return;\n\n let childImgs = elem.querySelectorAll('img');\n // concat childElems to filterFound array\n for ( let img of childImgs ) {\n this.addImage( img );\n }\n\n // get child background images\n if ( typeof this.options.background == 'string' ) {\n let children = elem.querySelectorAll( this.options.background );\n for ( let child of children ) {\n this.addElementBackgroundImages( child );\n }\n }\n};\n\nconst reURL = /url\\((['\"])?(.*?)\\1\\)/gi;\n\nImagesLoaded.prototype.addElementBackgroundImages = function( elem ) {\n let style = getComputedStyle( elem );\n // Firefox returns null if in a hidden iframe https://bugzil.la/548397\n if ( !style ) return;\n\n // get url inside url(\"...\")\n let matches = reURL.exec( style.backgroundImage );\n while ( matches !== null ) {\n let url = matches && matches[2];\n if ( url ) {\n this.addBackground( url, elem );\n }\n matches = reURL.exec( style.backgroundImage );\n }\n};\n\n/**\n * @param {Image} img\n */\nImagesLoaded.prototype.addImage = function( img ) {\n let loadingImage = new LoadingImage( img );\n this.images.push( loadingImage );\n};\n\nImagesLoaded.prototype.addBackground = function( url, elem ) {\n let background = new Background( url, elem );\n this.images.push( background );\n};\n\nImagesLoaded.prototype.check = function() {\n this.progressedCount = 0;\n this.hasAnyBroken = false;\n // complete if no images\n if ( !this.images.length ) {\n this.complete();\n return;\n }\n\n /* eslint-disable-next-line func-style */\n let onProgress = ( image, elem, message ) => {\n // HACK - Chrome triggers event before object properties have changed. #83\n setTimeout( () => {\n this.progress( image, elem, message );\n } );\n };\n\n this.images.forEach( function( loadingImage ) {\n loadingImage.once( 'progress', onProgress );\n loadingImage.check();\n } );\n};\n\nImagesLoaded.prototype.progress = function( image, elem, message ) {\n this.progressedCount++;\n this.hasAnyBroken = this.hasAnyBroken || !image.isLoaded;\n // progress event\n this.emitEvent( 'progress', [ this, image, elem ] );\n if ( this.jqDeferred && this.jqDeferred.notify ) {\n this.jqDeferred.notify( this, image );\n }\n // check if completed\n if ( this.progressedCount === this.images.length ) {\n this.complete();\n }\n\n if ( this.options.debug && console ) {\n console.log( `progress: ${message}`, image, elem );\n }\n};\n\nImagesLoaded.prototype.complete = function() {\n let eventName = this.hasAnyBroken ? 'fail' : 'done';\n this.isComplete = true;\n this.emitEvent( eventName, [ this ] );\n this.emitEvent( 'always', [ this ] );\n if ( this.jqDeferred ) {\n let jqMethod = this.hasAnyBroken ? 'reject' : 'resolve';\n this.jqDeferred[ jqMethod ]( this );\n }\n};\n\n// -------------------------- -------------------------- //\n\nfunction LoadingImage( img ) {\n this.img = img;\n}\n\nLoadingImage.prototype = Object.create( EvEmitter.prototype );\n\nLoadingImage.prototype.check = function() {\n // If complete is true and browser supports natural sizes,\n // try to check for image status manually.\n let isComplete = this.getIsImageComplete();\n if ( isComplete ) {\n // report based on naturalWidth\n this.confirm( this.img.naturalWidth !== 0, 'naturalWidth' );\n return;\n }\n\n // If none of the checks above matched, simulate loading on detached element.\n this.proxyImage = new Image();\n // add crossOrigin attribute. #204\n if ( this.img.crossOrigin ) {\n this.proxyImage.crossOrigin = this.img.crossOrigin;\n }\n this.proxyImage.addEventListener( 'load', this );\n this.proxyImage.addEventListener( 'error', this );\n // bind to image as well for Firefox. #191\n this.img.addEventListener( 'load', this );\n this.img.addEventListener( 'error', this );\n this.proxyImage.src = this.img.currentSrc || this.img.src;\n};\n\nLoadingImage.prototype.getIsImageComplete = function() {\n // check for non-zero, non-undefined naturalWidth\n // fixes Safari+InfiniteScroll+Masonry bug infinite-scroll#671\n return this.img.complete && this.img.naturalWidth;\n};\n\nLoadingImage.prototype.confirm = function( isLoaded, message ) {\n this.isLoaded = isLoaded;\n let { parentNode } = this.img;\n // emit progress with parent or self \n let elem = parentNode.nodeName === 'PICTURE' ? parentNode : this.img;\n this.emitEvent( 'progress', [ this, elem, message ] );\n};\n\n// ----- events ----- //\n\n// trigger specified handler for event type\nLoadingImage.prototype.handleEvent = function( event ) {\n let method = 'on' + event.type;\n if ( this[ method ] ) {\n this[ method ]( event );\n }\n};\n\nLoadingImage.prototype.onload = function() {\n this.confirm( true, 'onload' );\n this.unbindEvents();\n};\n\nLoadingImage.prototype.onerror = function() {\n this.confirm( false, 'onerror' );\n this.unbindEvents();\n};\n\nLoadingImage.prototype.unbindEvents = function() {\n this.proxyImage.removeEventListener( 'load', this );\n this.proxyImage.removeEventListener( 'error', this );\n this.img.removeEventListener( 'load', this );\n this.img.removeEventListener( 'error', this );\n};\n\n// -------------------------- Background -------------------------- //\n\nfunction Background( url, element ) {\n this.url = url;\n this.element = element;\n this.img = new Image();\n}\n\n// inherit LoadingImage prototype\nBackground.prototype = Object.create( LoadingImage.prototype );\n\nBackground.prototype.check = function() {\n this.img.addEventListener( 'load', this );\n this.img.addEventListener( 'error', this );\n this.img.src = this.url;\n // check if image is already complete\n let isComplete = this.getIsImageComplete();\n if ( isComplete ) {\n this.confirm( this.img.naturalWidth !== 0, 'naturalWidth' );\n this.unbindEvents();\n }\n};\n\nBackground.prototype.unbindEvents = function() {\n this.img.removeEventListener( 'load', this );\n this.img.removeEventListener( 'error', this );\n};\n\nBackground.prototype.confirm = function( isLoaded, message ) {\n this.isLoaded = isLoaded;\n this.emitEvent( 'progress', [ this, this.element, message ] );\n};\n\n// -------------------------- jQuery -------------------------- //\n\nImagesLoaded.makeJQueryPlugin = function( jQuery ) {\n jQuery = jQuery || window.jQuery;\n if ( !jQuery ) return;\n\n // set local variable\n $ = jQuery;\n // $().imagesLoaded()\n $.fn.imagesLoaded = function( options, onAlways ) {\n let instance = new ImagesLoaded( this, options, onAlways );\n return instance.jqDeferred.promise( $( this ) );\n };\n};\n// try making plugin\nImagesLoaded.makeJQueryPlugin();\n\n// -------------------------- -------------------------- //\n\nreturn ImagesLoaded;\n\n} );\n","/**\n * EvEmitter v2.1.1\n * Lil' event emitter\n * MIT License\n */\n\n( function( global, factory ) {\n // universal module definition\n if ( typeof module == 'object' && module.exports ) {\n // CommonJS - Browserify, Webpack\n module.exports = factory();\n } else {\n // Browser globals\n global.EvEmitter = factory();\n }\n\n}( typeof window != 'undefined' ? window : this, function() {\n\nfunction EvEmitter() {}\n\nlet proto = EvEmitter.prototype;\n\nproto.on = function( eventName, listener ) {\n if ( !eventName || !listener ) return this;\n\n // set events hash\n let events = this._events = this._events || {};\n // set listeners array\n let listeners = events[ eventName ] = events[ eventName ] || [];\n // only add once\n if ( !listeners.includes( listener ) ) {\n listeners.push( listener );\n }\n\n return this;\n};\n\nproto.once = function( eventName, listener ) {\n if ( !eventName || !listener ) return this;\n\n // add event\n this.on( eventName, listener );\n // set once flag\n // set onceEvents hash\n let onceEvents = this._onceEvents = this._onceEvents || {};\n // set onceListeners object\n let onceListeners = onceEvents[ eventName ] = onceEvents[ eventName ] || {};\n // set flag\n onceListeners[ listener ] = true;\n\n return this;\n};\n\nproto.off = function( eventName, listener ) {\n let listeners = this._events && this._events[ eventName ];\n if ( !listeners || !listeners.length ) return this;\n\n let index = listeners.indexOf( listener );\n if ( index != -1 ) {\n listeners.splice( index, 1 );\n }\n\n return this;\n};\n\nproto.emitEvent = function( eventName, args ) {\n let listeners = this._events && this._events[ eventName ];\n if ( !listeners || !listeners.length ) return this;\n\n // copy over to avoid interference if .off() in listener\n listeners = listeners.slice( 0 );\n args = args || [];\n // once stuff\n let onceListeners = this._onceEvents && this._onceEvents[ eventName ];\n\n for ( let listener of listeners ) {\n let isOnce = onceListeners && onceListeners[ listener ];\n if ( isOnce ) {\n // remove listener\n // remove before trigger to prevent recursion\n this.off( eventName, listener );\n // unset once flag\n delete onceListeners[ listener ];\n }\n // trigger listener\n listener.apply( this, args );\n }\n\n return this;\n};\n\nproto.allOff = function() {\n delete this._events;\n delete this._onceEvents;\n return this;\n};\n\nreturn EvEmitter;\n\n} ) );\n","(function (global, factory) {\n\ttypeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) :\n\ttypeof define === 'function' && define.amd ? define(['exports'], factory) :\n\t(global = global || self, factory(global.throttleDebounce = {}));\n}(this, (function (exports) { 'use strict';\n\n\t/* eslint-disable no-undefined,no-param-reassign,no-shadow */\n\n\t/**\n\t * Throttle execution of a function. Especially useful for rate limiting\n\t * execution of handlers on events like resize and scroll.\n\t *\n\t * @param {number} delay - A zero-or-greater delay in milliseconds. For event callbacks, values around 100 or 250 (or even higher) are most useful.\n\t * @param {boolean} [noTrailing] - Optional, defaults to false. If noTrailing is true, callback will only execute every `delay` milliseconds while the\n\t * throttled-function is being called. If noTrailing is false or unspecified, callback will be executed one final time\n\t * after the last throttled-function call. (After the throttled-function has not been called for `delay` milliseconds,\n\t * the internal counter is reset).\n\t * @param {Function} callback - A function to be executed after delay milliseconds. The `this` context and all arguments are passed through, as-is,\n\t * to `callback` when the throttled-function is executed.\n\t * @param {boolean} [debounceMode] - If `debounceMode` is true (at begin), schedule `clear` to execute after `delay` ms. If `debounceMode` is false (at end),\n\t * schedule `callback` to execute after `delay` ms.\n\t *\n\t * @returns {Function} A new, throttled, function.\n\t */\n\tfunction throttle (delay, noTrailing, callback, debounceMode) {\n\t /*\n\t * After wrapper has stopped being called, this timeout ensures that\n\t * `callback` is executed at the proper times in `throttle` and `end`\n\t * debounce modes.\n\t */\n\t var timeoutID;\n\t var cancelled = false; // Keep track of the last time `callback` was executed.\n\n\t var lastExec = 0; // Function to clear existing timeout\n\n\t function clearExistingTimeout() {\n\t if (timeoutID) {\n\t clearTimeout(timeoutID);\n\t }\n\t } // Function to cancel next exec\n\n\n\t function cancel() {\n\t clearExistingTimeout();\n\t cancelled = true;\n\t } // `noTrailing` defaults to falsy.\n\n\n\t if (typeof noTrailing !== 'boolean') {\n\t debounceMode = callback;\n\t callback = noTrailing;\n\t noTrailing = undefined;\n\t }\n\t /*\n\t * The `wrapper` function encapsulates all of the throttling / debouncing\n\t * functionality and when executed will limit the rate at which `callback`\n\t * is executed.\n\t */\n\n\n\t function wrapper() {\n\t for (var _len = arguments.length, arguments_ = new Array(_len), _key = 0; _key < _len; _key++) {\n\t arguments_[_key] = arguments[_key];\n\t }\n\n\t var self = this;\n\t var elapsed = Date.now() - lastExec;\n\n\t if (cancelled) {\n\t return;\n\t } // Execute `callback` and update the `lastExec` timestamp.\n\n\n\t function exec() {\n\t lastExec = Date.now();\n\t callback.apply(self, arguments_);\n\t }\n\t /*\n\t * If `debounceMode` is true (at begin) this is used to clear the flag\n\t * to allow future `callback` executions.\n\t */\n\n\n\t function clear() {\n\t timeoutID = undefined;\n\t }\n\n\t if (debounceMode && !timeoutID) {\n\t /*\n\t * Since `wrapper` is being called for the first time and\n\t * `debounceMode` is true (at begin), execute `callback`.\n\t */\n\t exec();\n\t }\n\n\t clearExistingTimeout();\n\n\t if (debounceMode === undefined && elapsed > delay) {\n\t /*\n\t * In throttle mode, if `delay` time has been exceeded, execute\n\t * `callback`.\n\t */\n\t exec();\n\t } else if (noTrailing !== true) {\n\t /*\n\t * In trailing throttle mode, since `delay` time has not been\n\t * exceeded, schedule `callback` to execute `delay` ms after most\n\t * recent execution.\n\t *\n\t * If `debounceMode` is true (at begin), schedule `clear` to execute\n\t * after `delay` ms.\n\t *\n\t * If `debounceMode` is false (at end), schedule `callback` to\n\t * execute after `delay` ms.\n\t */\n\t timeoutID = setTimeout(debounceMode ? clear : exec, debounceMode === undefined ? delay - elapsed : delay);\n\t }\n\t }\n\n\t wrapper.cancel = cancel; // Return the wrapper function.\n\n\t return wrapper;\n\t}\n\n\t/* eslint-disable no-undefined */\n\t/**\n\t * Debounce execution of a function. Debouncing, unlike throttling,\n\t * guarantees that a function is only executed a single time, either at the\n\t * very beginning of a series of calls, or at the very end.\n\t *\n\t * @param {number} delay - A zero-or-greater delay in milliseconds. For event callbacks, values around 100 or 250 (or even higher) are most useful.\n\t * @param {boolean} [atBegin] - Optional, defaults to false. If atBegin is false or unspecified, callback will only be executed `delay` milliseconds\n\t * after the last debounced-function call. If atBegin is true, callback will be executed only at the first debounced-function call.\n\t * (After the throttled-function has not been called for `delay` milliseconds, the internal counter is reset).\n\t * @param {Function} callback - A function to be executed after delay milliseconds. The `this` context and all arguments are passed through, as-is,\n\t * to `callback` when the debounced-function is executed.\n\t *\n\t * @returns {Function} A new, debounced function.\n\t */\n\n\tfunction debounce (delay, atBegin, callback) {\n\t return callback === undefined ? throttle(delay, atBegin, false) : throttle(delay, callback, atBegin !== false);\n\t}\n\n\texports.debounce = debounce;\n\texports.throttle = throttle;\n\n\tObject.defineProperty(exports, '__esModule', { value: true });\n\n})));\n//# sourceMappingURL=index.umd.js.map\n"],"sourceRoot":""}