{"version":3,"file":"/scripts/app.js","mappings":"8QAAA,IAAMA,EAAY,SAAAC,GAAG,gBAAOA,EAAIC,OAAO,GAAGC,eAArB,OAAqCF,EAAIG,QAAQ,SAAU,KAAKC,MAAM,KACxFC,KAAI,SAAAC,GAAI,gBAAOA,EAAKL,OAAO,GAAGM,eAAtB,OAAsCD,EAAKE,MAAM,OACzDC,KAAK,IACLD,MAAM,KAaHE,EAAAA,WAMJ,WAAYC,I,4FAAQ,SAClBC,KAAKD,OAASA,E,0CAShB,SAAKE,GAA4B,IAArBC,EAAqB,uDAAb,OAAQC,EAAK,uCAC/BC,SAASC,cAAc,IAAIC,YAAY,SAAU,CAC/CC,SAAS,EACTC,OAAQ,CACNP,MAAAA,EACAQ,GAAIP,MAIR,IAAMQ,EAAiB,KAAVT,GAAgBD,KAAKD,OAAOE,IAA+C,mBAA9BD,KAAKD,OAAOE,GAAOC,GACzEQ,GACFV,KAAKD,OAAOE,GAAOC,GAAOC,K,kBAa9B,WAAO,WAELH,KAAKU,KAAK,UAGEN,SAASO,KAEjBC,UACDtB,cACAC,QAAQ,KAAM,KACdC,MAAM,OACNC,IAAIN,GACJ0B,SAAQ,SAACD,GACR,EAAKF,KAAKE,GACV,EAAKF,KAAKE,EAAW,eAIzBZ,KAAKU,KAAK,SAAU,e,gCA1DlBZ,GAgEN,U,aCrEA,IAAMC,EAAS,IAAID,EAAO,CACxBgB,OCVF,CAEIC,KAFW,WAGPC,EAAEZ,SAASO,MAAMM,GAAG,QAAQ,oBAAmB,SAASC,GACpDA,EAAEC,iBACCH,EAAEhB,MAAMoB,SAAS,cAChBJ,EAAEhB,MAAMqB,YAAY,aACpBL,EAAE,gBAAgBK,YAAY,YAE9BL,EAAEhB,MAAMsB,SAAS,aACjBN,EAAE,gBAAgBM,SAAS,cAGnCN,EAAEZ,SAASO,MAAMY,OAAM,SAASL,GACZ,KAAdA,EAAEM,SAAkBR,EAAE,cAAcI,SAAS,eAC3CJ,EAAE,cAAcK,YAAY,aAC5BL,EAAE,gBAAgBK,YAAY,eAM1CI,SAtBW,gBDcfT,GAAAA,CAAEZ,UAAUsB,OAAM,WACd3B,EAAO4B,W","sources":["webpack:///./assets/scripts/router.js","webpack:///./assets/scripts/app.js","webpack:///./assets/scripts/routes/common.js"],"sourcesContent":["const camelCase = str => `${str.charAt(0).toLowerCase()}${str.replace(/[\\W_]/g, '|').split('|')\n .map(part => `${part.charAt(0).toUpperCase()}${part.slice(1)}`)\n .join('')\n .slice(1)}`;\n\n\n/**\n * DOM-based Routing\n *\n * Based on {@link http://goo.gl/EUTi53|Markup-based Unobtrusive Comprehensive DOM-ready Execution} by Paul Irish\n *\n * The routing fires all common scripts, followed by the page specific scripts.\n * Add additional events for more control over timing e.g. a finalize event\n */\n\n\nclass Router {\n\n /**\n * Create a new Router\n * @param {Object} routes\n */\n constructor(routes) {\n this.routes = routes;\n }\n\n /**\n * Fire Router events\n * @param {string} route DOM-based route derived from body classes (``)\n * @param {string} [event] Events on the route. By default, `init` and `finalize` events are called.\n * @param {string} [arg] Any custom argument to be passed to the event.\n */\n fire(route, event = 'init', arg) {\n document.dispatchEvent(new CustomEvent('routed', {\n bubbles: true,\n detail: {\n route,\n fn: event,\n },\n }));\n\n const fire = route !== '' && this.routes[route] && typeof this.routes[route][event] === 'function';\n if (fire) {\n this.routes[route][event](arg);\n }\n }\n\n /**\n * Automatically load and fire Router events\n *\n * Events are fired in the following order:\n * * common init\n * * page-specific init\n * * page-specific finalize\n * * common finalize\n */\n load() {\n // Fire common init JS\n this.fire('common');\n\n // Fire page-specific init JS, and then finalize JS\n const app = document.body\n\n app.className\n .toLowerCase()\n .replace(/-/g, '_')\n .split(/\\s+/)\n .map(camelCase)\n .forEach((className) => {\n this.fire(className);\n this.fire(className, 'finalize');\n });\n\n // Fire common finalize JS\n this.fire('common', 'finalize');\n }\n\n\n}\n\nexport default Router;\n","/**\n * External Dependencies\n */\n\nimport $ from 'jquery'\n\nimport Router from './router'\n\nimport common from './routes/common'\n\n/** Populate Router instance with DOM routes */\nconst routes = new Router({\n common,\n});\n\n\n$(document).ready(() => {\n routes.load();\n})\n","\n\nexport default {\n\n init() {\n $(document.body).on('click','button.hamburger',function(e){\n e.preventDefault()\n if($(this).hasClass('is-active')){\n $(this).removeClass('is-active')\n $('.menu-mobile').removeClass('active');\n } else {\n $(this).addClass('is-active')\n $('.menu-mobile').addClass('active');\n }\n })\n $(document.body).keyup(function(e) {\n if (e.keyCode === 27 && $('.hamburger').hasClass('is-active')){\n $('.hamburger').removeClass('is-active')\n $('.menu-mobile').removeClass('active');\n }\n\n });\n\n },\n finalize() {\n\n },\n};\n"],"names":["camelCase","str","charAt","toLowerCase","replace","split","map","part","toUpperCase","slice","join","Router","routes","this","route","event","arg","document","dispatchEvent","CustomEvent","bubbles","detail","fn","fire","body","className","forEach","common","init","$","on","e","preventDefault","hasClass","removeClass","addClass","keyup","keyCode","finalize","ready","load"],"sourceRoot":""}