{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/utils/data.js","webpack:///./src/store/mutationTypes.ts","webpack:///./src/store/index.ts","webpack:///./src/configuration.js","webpack:///./src/components/atoms/SvgIcon.vue","webpack:///./src/components/atoms/SvgIcon.vue?bf39","webpack:///./src/components/atoms/SvgIcon.vue?5115","webpack:///./src/components/atoms/SvgIcon.vue?6aff","webpack:///./src/utils/helpers.js","webpack:///./src/components/atoms/ResponsiveImage.vue","webpack:///./src/components/atoms/ResponsiveImage.vue?e811","webpack:///./src/components/atoms/ResponsiveImage.vue?d626","webpack:///./src/components/atoms/ResponsiveImage.vue?ad92","webpack:///./src/App.vue","webpack:///./src/components/organisms/Header.vue","webpack:///./src/components/atoms/ThemeMenuItems.vue","webpack:///./src/components/atoms/ThemeMenuItems.vue?98cb","webpack:///./src/components/atoms/ThemeMenuItems.vue?ad30","webpack:///./src/components/atoms/ThemeMenuItems.vue?e69a","webpack:///./src/components/atoms/MenuModal.vue","webpack:///./src/components/atoms/MenuModal.vue?6d83","webpack:///./src/components/atoms/MenuModal.vue?d153","webpack:///./src/components/atoms/MenuModal.vue?5af4","webpack:///./src/components/organisms/Header.vue?f02f","webpack:///./src/components/organisms/Header.vue?4dcf","webpack:///./src/components/organisms/Header.vue?952e","webpack:///./src/components/organisms/Footer.vue","webpack:///./src/components/organisms/Footer.vue?3574","webpack:///./src/components/organisms/Footer.vue?8343","webpack:///./src/components/organisms/Footer.vue?0fe2","webpack:///src/App.vue","webpack:///./src/App.vue?6638","webpack:///./src/App.vue?8573","webpack:///./src/router/index.ts","webpack:///./src/utils/inject-initial-state.js","webpack:///./src/main.ts","webpack:///./src/assets/svg lazy ^\\.\\/.*\\.svg$ namespace object"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","jsonpScriptSrc","p","exports","module","l","e","promises","installedChunkData","promise","Promise","resolve","reject","onScriptComplete","script","document","createElement","charset","timeout","nc","setAttribute","src","error","Error","event","onerror","onload","clearTimeout","chunk","errorType","type","realSrc","target","message","name","request","undefined","setTimeout","head","appendChild","all","m","c","d","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","oe","err","console","jsonpArray","window","oldJsonpFunction","slice","fetch","uri","validUrl","isUri","axios","then","catch","buildQueryUri","query","namespace","arguments","conf","contentApiNamespace","apiUrl","process","url","_","isString","isEmpty","endsWith","trim","path","join","SET","SET_STATUS","ADD","FILTER_CONTENT","RESET_FILTER_CONTENT","REMOVE_BY_UUID","Vue","use","Vuex","actions","_ref","commit","set","_ref2","payload","has","add","_ref3","removeByUuid","_ref4","isUUID","anyNonNil","uuid","filterContent","_ref5","resetFilterContent","_ref6","setStatus","_ref7","mutations","_mutations","_defineProperty","state","concat","copy","remove","status","activeFilters","map","active","theme","tags","topics","filteredContent","compact","filter","content","passive","intersection","getters","curated","activePost","post","activeTheme","activeContent","passiveContent","activePostContentType","contentType","activeTags","passiveTags","news","pages","activeTopics","passiveTopics","tagsFromThemeContent","forEach","tag","includes","uniqBy","topicsFromThemeContent","topic","topicsFromActivePostContent","tagsFromActivePostContent","person","organisation","role","films","filmCollections","activeFilms","activeNews","activeFilmUuid","filmUuid","activeFilmCollectionUuid","filmCollectionUuid","Store","filtersDeactivated","themes","persons","organisations","feature","landingPage","enabledLanguages","rssTitle","rssDescription","rssFeedImage","contentApiUri","media","baseUrl","sourcePath","searchUrl","logoImage","heroImage","scrollUpImage","kitBannerImage","prerenderRoutesFilePath","sitemapRoutesFilePath","sitemapFilePath","rssFilePath","render","_vm","this","_c","_self","_setupProxy","iconFile","width","height","attrs","_e","staticRenderFns","SvgIcon","_Vue","_inherits","_super","_createSuper","_classCallCheck","_createClass","_this","iconName","__decorate","Prop","default","Component","component","locale","fallbackLocale","localisations","localisationsStrings","localeFromPath","isArray","localeCandidate","replace","split","truncateText","text","truncate","separator","chunkateArray","inputArray","chunkSize","imagePath","imgSrc","imageDirectory","mediaServer","startsWith","toString","themeSegmentFromUrl","pathName","_pathName$split","_pathName$split2","_slicedToArray","secondSeg","thirdSeg","contentTypeSegmentFromUrl","_window$location$path","location","pathname","_window$location$path2","fourthSeg","formatDate","date","options","year","month","day","isNaN","Date","parse","isObject","toLocaleDateString","orderPostsByDate","postObjectsArray","order","formatYYYYMMDDDateStringToArray","parseInt","orderBy","updatedDate","publicationDate","enableResponsive","directives","rawName","canvasWidth","expression","class","classes","alt","Math","round","ResponsiveImage","methods","staticClass","showModal","on","$event","handleCloseClick","handleClick","showSearch","handleSearchCloseClick","handleSearchClick","_l","slug","_v","_s","title","subtitle","preventDefault","handleFormSubmit","searchInput","domProps","composing","ThemeMenuItems","store","dispatch","$route","params","input","components","computed","mapState","sortBy","displayInMenu","Number","position","open","chunkatePages","pageChunks","page","MenuModal","$store","$emit","body","style","overflow","Header","Watch","immediate","deep","elem","getElementById","display","_m","Footer","vuescroll","VueLazyload","VueSocialSharing","VueRouter","routes","ls","exploreSlug","redirect","readSlug","toolsSlug","databasesSlug","educateSlug","learnSlug","guidesSlug","workshopsSlug","investigateSlug","watchSlug","newsSlug","alias","filmsSlug","articlesSlug","interviewsSlug","sketchesSlug","talksSlug","otherSlug","listenSlug","podcastsSlug","audioSlug","postsSlug","pagesSlug","personsSlug","curriculaSlug","filmCollectionsSlug","filmGroupsSlug","filmGroupslug","meta","scroll","router","base","scrollBehavior","to","from","savedPosition","hash","selector","x","y","injectInitialState","innerHTML","JSON","stringify","config","productionTip","app","h","App","__INITIAL_STATE__","replaceState","beforeResolve","_asyncToGenerator","_regeneratorRuntime","mark","_callee","next","wrap","_context","prev","getMatchedComponents","onUrlChange","__PRERENDER_INJECTED","t0","abrupt","stop","_x","_x2","_x3","$mount","VueLodash","lodash","VueMeta","webpackAsyncContext","req","code","ids","id","keys"],"mappings":"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,OACA,kBAED,uBAAwB,CACvB,OACA,kBAED,uBAAwB,CACvB,OACA,kBAED,iBAAkB,CACjB,OACA,kBAED,iBAAkB,CACjB,OACA,kBAED,iBAAkB,CACjB,OACA,kBAED,gBAAiB,CAChB,OACA,kBAED,cAAe,CACd,OACA,kBAED,iBAAkB,CACjB,OACA,kBAED,mBAAoB,CACnB,OACA,kBAED,mBAAoB,CACnB,OACA,kBAED,aAAc,CACb,OACA,kBAED,uBAAwB,CACvB,OACA,kBAED,eAAgB,CACf,OACA,kBAED,oBAAqB,CACpB,OACA,kBAED,oBAAqB,CACpB,OACA,kBAED,cAAe,CACd,OACA,kBAED,oBAAqB,CACpB,OACA,kBAED,wBAAyB,CACxB,OACA,kBAED,wBAAyB,CACxB,OACA,kBAED,kBAAmB,CAClB,OACA,kBAED,aAAc,CACb,OACA,kBAED,iBAAkB,CACjB,OACA,kBAED,aAAc,CACb,OACA,kBAED,iBAAkB,CACjB,OACA,kBAED,oBAAqB,CACpB,OACA,kBAED,sBAAuB,CACtB,OACA,kBAED,sBAAuB,CACtB,OACA,kBAED,gBAAiB,CAChB,OACA,kBAED,sBAAuB,CACtB,OACA,kBAED,oBAAqB,CACpB,OACA,kBAED,YAAa,CACZ,OACA,kBAED,oBAAqB,CACpB,OACA,kBAED,yBAA0B,CACzB,OACA,kBAED,cAAe,CACd,OACA,kBAED,qBAAsB,CACrB,OACA,kBAED,qBAAsB,CACrB,OACA,kBAED,eAAgB,CACf,OACA,kBAED,gBAAiB,CAChB,OACA,kBAED,iBAAkB,CACjB,OACA,kBAED,mBAAoB,CACnB,OACA,kBAED,mBAAoB,CACnB,OACA,kBAED,aAAc,CACb,OACA,kBAED,mBAAoB,CACnB,OACA,kBAED,mBAAoB,CACnB,OACA,kBAED,aAAc,CACb,OACA,kBAED,iBAAkB,CACjB,OACA,kBAED,gBAAiB,CAChB,OACA,kBAED,gBAAiB,CAChB,OACA,kBAED,uBAAwB,CACvB,OACA,kBAED,uBAAwB,CACvB,OACA,kBAED,iBAAkB,CACjB,OACA,kBAED,UAAW,CACV,OACA,mBAGF,SAASsS,EAAoBC,GAC5B,IAAI5a,EAAoB+C,EAAEsF,EAAKuS,GAC9B,OAAOha,QAAQC,UAAUgE,MAAK,WAC7B,IAAIrE,EAAI,IAAIiB,MAAM,uBAAyBmZ,EAAM,KAEjD,MADApa,EAAEqa,KAAO,mBACHra,KAIR,IAAIsa,EAAMzS,EAAIuS,GAAMG,EAAKD,EAAI,GAC7B,OAAO9a,EAAoBQ,EAAEsa,EAAI,IAAIjW,MAAK,WACzC,OAAO7E,EAAoBuD,EAAEwX,EAAI,MAGnCJ,EAAoBK,KAAO,WAC1B,OAAOlc,OAAOkc,KAAK3S,IAEpBsS,EAAoBI,GAAK,OACzBza,EAAOD,QAAUsa","file":"js/app.798f16d7.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"app\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// script path function\n \tfunction jsonpScriptSrc(chunkId) {\n \t\treturn __webpack_require__.p + \"js/\" + ({\"FourOhFour\":\"FourOhFour\",\"films~landingpages~pages~podcastpages~themes\":\"films~landingpages~pages~podcastpages~themes\",\"films\":\"films\",\"landingpages~themes\":\"landingpages~themes\",\"landingpages\":\"landingpages\",\"themes\":\"themes\",\"pages~podcastpages\":\"pages~podcastpages\",\"pages\":\"pages\",\"podcastpages\":\"podcastpages\",\"news\":\"news\"}[chunkId]||chunkId) + \".\" + {\"FourOhFour\":\"94cfd8e6\",\"chunk-2d0a30bd\":\"aac0c253\",\"chunk-2d0ac96b\":\"cb1c0bd3\",\"chunk-2d0aed04\":\"ef2559d8\",\"chunk-2d0b2b78\":\"246b811c\",\"chunk-2d0b2caa\":\"66bb3ad1\",\"chunk-2d0b650b\":\"003a64ed\",\"chunk-2d0b9635\":\"c6ae3a28\",\"chunk-2d0b991d\":\"f4eee15b\",\"chunk-2d0b9ba8\":\"c827d285\",\"chunk-2d0b9bc4\":\"b7ec0493\",\"chunk-2d0b9f06\":\"5e745678\",\"chunk-2d0ba947\":\"f81bed61\",\"chunk-2d0baaad\":\"68c9dfac\",\"chunk-2d0bae89\":\"24aac1b1\",\"chunk-2d0bceed\":\"b6edd90b\",\"chunk-2d0bdbb8\":\"e87da950\",\"chunk-2d0be119\":\"2342fb0e\",\"chunk-2d0c0e30\":\"32d8b9db\",\"chunk-2d0c1727\":\"899d968f\",\"chunk-2d0c197c\":\"babe2ca8\",\"chunk-2d0c1b6a\":\"a8fb76eb\",\"chunk-2d0c8df5\":\"67aef6d9\",\"chunk-2d0cb75b\":\"f1336bf1\",\"chunk-2d0cbe89\":\"cbc43296\",\"chunk-2d0cc0ae\":\"35b3afb1\",\"chunk-2d0cc7f2\":\"d5900fc8\",\"chunk-2d0ccb5e\":\"58e1e798\",\"chunk-2d0d2af4\":\"576bc491\",\"chunk-2d0d5bfe\":\"292f3ddc\",\"chunk-2d0d69cd\":\"d69c6d3e\",\"chunk-2d0da534\":\"75e7ca31\",\"chunk-2d0db82a\":\"cd941735\",\"chunk-2d0dd794\":\"8c8f1390\",\"chunk-2d0ddc02\":\"5fdd36e3\",\"chunk-2d0e2332\":\"073bf2e0\",\"chunk-2d0e2c85\":\"c93a2058\",\"chunk-2d0e5072\":\"bed7ad05\",\"chunk-2d0e5382\":\"affd7c91\",\"chunk-2d0e55c6\":\"06ebc5c4\",\"chunk-2d0e9595\":\"a8779be3\",\"chunk-2d0ea112\":\"c09b194c\",\"chunk-2d0f0c3c\":\"21ffeb05\",\"chunk-2d20868a\":\"452f5621\",\"chunk-2d208a6c\":\"8f14f2ec\",\"chunk-2d208c7b\":\"a60aea5e\",\"chunk-2d20f955\":\"1a044347\",\"chunk-2d212f1b\":\"bcc064bf\",\"chunk-2d2131d2\":\"63bc9b59\",\"chunk-2d213e79\":\"3148a5f0\",\"chunk-2d215c7f\":\"1a9bf2e9\",\"chunk-2d215c90\":\"189e8b57\",\"chunk-2d217ca8\":\"d64025c8\",\"chunk-2d21a442\":\"634baedd\",\"chunk-2d21b4ad\":\"5482b5ea\",\"chunk-2d21b8c4\":\"4a5cf13e\",\"chunk-2d21e3a9\":\"0d24e163\",\"chunk-2d21e59b\":\"cc819d0e\",\"chunk-2d225460\":\"d3e9a4ae\",\"chunk-2d2266b1\":\"25c3eb52\",\"chunk-2d226938\":\"1340c54b\",\"chunk-2d2290d1\":\"f8273094\",\"chunk-2d2290ff\":\"d3ae51a4\",\"chunk-2d229c03\":\"95985008\",\"chunk-2d22d579\":\"9ea02979\",\"chunk-2d2315c7\":\"3f4b3cb4\",\"chunk-2d2380ee\":\"643dc5c3\",\"films~landingpages~pages~podcastpages~themes\":\"91aef13b\",\"films\":\"b06a9620\",\"landingpages~themes\":\"cd43671e\",\"landingpages\":\"506cf829\",\"themes\":\"4cd0c88d\",\"pages~podcastpages\":\"0dd5b401\",\"pages\":\"bc7f87ba\",\"podcastpages\":\"5e2ffeb7\",\"news\":\"f7cbfd9b\"}[chunkId] + \".js\"\n \t}\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n \t// This file contains only the entry chunk.\n \t// The chunk loading function for additional chunks\n \t__webpack_require__.e = function requireEnsure(chunkId) {\n \t\tvar promises = [];\n\n\n \t\t// JSONP chunk loading for javascript\n\n \t\tvar installedChunkData = installedChunks[chunkId];\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\t// setup Promise in chunk cache\n \t\t\t\tvar promise = new Promise(function(resolve, reject) {\n \t\t\t\t\tinstalledChunkData = installedChunks[chunkId] = [resolve, reject];\n \t\t\t\t});\n \t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n \t\t\t\t// start chunk loading\n \t\t\t\tvar script = document.createElement('script');\n \t\t\t\tvar onScriptComplete;\n\n \t\t\t\tscript.charset = 'utf-8';\n \t\t\t\tscript.timeout = 120;\n \t\t\t\tif (__webpack_require__.nc) {\n \t\t\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n \t\t\t\t}\n \t\t\t\tscript.src = jsonpScriptSrc(chunkId);\n\n \t\t\t\t// create error before stack unwound to get useful stacktrace later\n \t\t\t\tvar error = new Error();\n \t\t\t\tonScriptComplete = function (event) {\n \t\t\t\t\t// avoid mem leaks in IE.\n \t\t\t\t\tscript.onerror = script.onload = null;\n \t\t\t\t\tclearTimeout(timeout);\n \t\t\t\t\tvar chunk = installedChunks[chunkId];\n \t\t\t\t\tif(chunk !== 0) {\n \t\t\t\t\t\tif(chunk) {\n \t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n \t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n \t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n \t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n \t\t\t\t\t\t\terror.type = errorType;\n \t\t\t\t\t\t\terror.request = realSrc;\n \t\t\t\t\t\t\tchunk[1](error);\n \t\t\t\t\t\t}\n \t\t\t\t\t\tinstalledChunks[chunkId] = undefined;\n \t\t\t\t\t}\n \t\t\t\t};\n \t\t\t\tvar timeout = setTimeout(function(){\n \t\t\t\t\tonScriptComplete({ type: 'timeout', target: script });\n \t\t\t\t}, 120000);\n \t\t\t\tscript.onerror = script.onload = onScriptComplete;\n \t\t\t\tdocument.head.appendChild(script);\n \t\t\t}\n \t\t}\n \t\treturn Promise.all(promises);\n \t};\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// add entry module to deferred list\n \tdeferredModules.push([0,\"chunk-vendors\"]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","/* eslint-disable no-return-assign */\nimport path from 'path'\nimport _ from 'lodash'\nimport validUrl from 'valid-url'\nimport axios from 'axios'\n\nimport conf from '../configuration'\n\nexport const fetch = uri => new Promise((resolve, reject) => {\n if (!validUrl.isUri(uri)) reject(new Error('Not a valid URI.'))\n axios.get(uri)\n .then(result => resolve(result))\n .catch(e => reject(e))\n})\n\n/* Build a Content API query\n *\n * @param {string} query - a query. Must start with a '?' if parameters are queried\n * @param {URL} apiURI - the URL of the Content API\n * @param {string} namespace - the namespace to query\n * @returns {URL} - Content API query\n */\nexport const buildQueryUri = (\n query,\n namespace = conf.contentApiNamespace,\n apiUrl = process.env.VUE_APP_ROOT_API ? process.env.VUE_APP_ROOT_API : conf.contentApiUri,\n) => {\n let url = apiUrl\n if (validUrl.isUri(apiUrl)) {\n if (query && _.isString(query) && !_.isEmpty(query)\n && namespace\n && _.isString(namespace)\n && !_.isEmpty(namespace)\n ) {\n if (!_.endsWith(apiUrl, '/')) url += '/'\n return url + _.trim(path.join(namespace, query), '/')\n } throw (new Error('Not a valid query or namespace.'))\n } else throw (new Error('Not a valid URI.'))\n}\n","\nexport const FETCH_CONTENT = 'FETCH_CONTENT'\n\nexport const SET = 'SET'\n\nexport const SET_STATUS = 'SET_STATUS'\n\nexport const ADD = 'ADD'\n\nexport const FILTER_CONTENT = 'FILTER_CONTENT'\n\nexport const RESET_FILTER_CONTENT = 'RESET_FILTER_CONTENT'\n\nexport const REMOVE_BY_UUID = 'REMOVE_BY_UUID'\n","import _ from 'lodash'\nimport isUUID from 'is-uuid'\nimport Vue from 'vue'\nimport Vuex from 'vuex'\n\nimport { fetch, buildQueryUri } from '@/utils/data'\nimport {\n SET_STATUS, SET, ADD, REMOVE_BY_UUID, FILTER_CONTENT, RESET_FILTER_CONTENT,\n} from '@/store/mutationTypes'\n\nVue.use(Vuex)\n\nexport const actions = {\n // Fetch from the Content API\n fetch({ commit }: {commit: any}, query: string) {\n if (_.isString(query)) {\n return new Promise((resolve, reject) => {\n fetch(buildQueryUri(query))\n .then((result: any) => {\n if (result && result.data) {\n if (_.isEmpty(result.data)) {\n commit('SET_STATUS', 404)\n reject(\n new Error('404'),\n )\n }\n }\n commit('SET_STATUS', 200)\n resolve(result.data)\n })\n .catch((error: any) => {\n commit('SET_STATUS', 502)\n reject(error)\n })\n })\n }\n commit('SET_STATUS', 400)\n throw new Error('Query argument must be string')\n },\n\n // Set in the VUEX store\n set({ commit }: {commit: any}, payload: any) {\n if (payload) {\n if (!_.has(payload, 'key')) throw new Error('Payload argument is missing key attribute')\n if (!_.has(payload, 'data')) throw new Error('Payload argument is missing data attribute')\n if (_.isString(payload.key)) {\n commit('SET', { key: payload.key, data: payload.data })\n } else throw new Error('Key argument must be string')\n } else throw new Error('Payload argument is missing or undefined')\n },\n\n add({ commit }: {commit: any}, payload: any) {\n if (payload) {\n if (!_.has(payload, 'key')) throw new Error('Payload argument is missing key attribute')\n if (!_.has(payload, 'data')) throw new Error('Payload argument is missing data attribute')\n if (_.isString(payload.key)) commit('ADD', { key: payload.key, data: payload.data })\n else throw new Error('Key argument must be string')\n } else throw new Error('Payload argument is missing or undefined')\n },\n\n removeByUuid({ commit }: {commit: any}, payload: any) {\n if (payload) {\n if (!_.has(payload, 'key')) throw new Error('Payload argument is missing key attribute')\n if (!_.has(payload, 'uuid')) throw new Error('Payload argument is missing uuid attribute')\n if (_.isString(payload.key)) {\n if (isUUID.anyNonNil(payload.uuid)) {\n commit('REMOVE_BY_UUID', { key: payload.key, uuid: payload.uuid })\n } else throw new Error('Not a valid UUID')\n } else throw new Error('Key argument must be string')\n } else throw new Error('Payload argument is missing or undefined')\n },\n\n filterContent({ commit }: {commit: any}) {\n commit('FILTER_CONTENT')\n },\n\n resetFilterContent({ commit }: {commit: any}) {\n commit('RESET_FILTER_CONTENT')\n },\n\n setStatus({ commit }: {commit: any}, payload: string) {\n commit('SET_STATUS', payload)\n },\n}\n\nexport const mutations = {\n [ADD](state: any, payload: any) {\n if (payload && payload.key && payload.data) {\n _.set(state, payload.key, _.concat(_.get(state, payload.key), payload.data))\n }\n },\n\n [REMOVE_BY_UUID](state: any, payload: any) {\n if (payload && payload.key && payload.uuid) {\n const copy = _.get(state, payload.key)\n _.remove(copy, (p: { uuid: any }) => p.uuid === payload.uuid)\n _.set(state, payload.key, copy)\n }\n },\n\n [SET](state: any, payload: any) {\n if (payload && payload.key && payload.data) {\n _.set(state, payload.key, payload.data)\n }\n },\n\n [SET_STATUS](state: any, payload: string) {\n state.status = payload\n },\n\n [FILTER_CONTENT](state: any) {\n const activeFilters = _.concat(\n _.map(state.active.theme.tags.active, (t: any) => t.uuid),\n _.map(state.active.theme.topics.active, (t: any) => t.uuid),\n )\n const filteredContent = _.compact(\n _.filter(state.active.theme.content.passive, (c: any) => {\n if (\n _.isEmpty(_.intersection(c.tags, activeFilters))\n && _.isEmpty(_.intersection(c.topics, activeFilters))\n && _.isEmpty(_.intersection(c['workshop-topics'], activeFilters))\n ) return undefined\n return c\n }),\n )\n _.set(state, 'active.theme.content.active', _.compact(filteredContent))\n },\n\n [RESET_FILTER_CONTENT](state: any) {\n _.set(state, 'active.theme.content.active', state.active.theme.content.passive)\n },\n}\n\nexport const getters = {\n // Status of the API request (404, 502, etc)\n status: (state: any) => state.status,\n\n // Curated content for the active post\n curated: (state: any) => state.active.curated,\n\n activePost: (state: any) => state.active.post.post,\n\n activeTheme: (state: any) => state.active.theme.theme,\n\n // All content associated with the active Theme and which is the result of filtering\n activeContent: (state: any) => state.active.theme.content.active,\n\n // All content associated with the active Theme\n passiveContent: (state: any) => state.active.theme.content.passive,\n\n // contentType of active post\n activePostContentType: (state: any) => state.active.post.post.contentType,\n\n // All Tags from the API\n tags: (state: any) => state.content.tags,\n\n // All Tags from content associated with the active Theme which are set as an active filter\n activeTags: (state: any) => state.active.theme.tags.active,\n\n // All Tags from content associated with the active Theme but which are not set as a filter\n passiveTags: (state: any) => state.active.theme.tags.passive,\n\n // All Topics from the API\n topics: (state: any) => state.content.topics,\n\n // All News from the API\n news: (state: any) => state.content.news,\n\n // All Pages from the API\n pages: (state: any) => state.content.pages,\n\n // All Topics from content associated with the active Theme which are set as an active filter\n activeTopics: (state: any) => state.active.theme.topics.active,\n\n // All Topics from content associated with the active Theme but which are not set as a filter\n passiveTopics: (state: any) => state.active.theme.topics.passive,\n\n // All Tags found in the content for the active Theme\n tagsFromThemeContent: (state: any) => {\n let result:any = []\n _.forEach(state.active.theme.content.passive, (c: any) => {\n result = _.concat(\n result,\n _.filter(state.content.tags, (tag: any) => {\n if (_.includes(c.tags, tag.uuid)) return tag\n return undefined\n }),\n )\n })\n return _.uniqBy(_.compact(result), (r: any) => r.uuid)\n },\n\n // All Topics found in the content for the active Theme\n topicsFromThemeContent: (state: any) => {\n let result:any = []\n _.forEach(state.active.theme.content.passive, (c: any) => {\n result = _.concat(\n result,\n _.filter(state.content.topics, (topic: any) => {\n if (_.includes(c.topics, topic.uuid)) return topic\n return undefined\n }),\n )\n })\n return _.uniqBy(_.compact(result), (r: any) => r.uuid)\n },\n\n // All Topics found in the content for the active Post\n topicsFromActivePostContent: (state: any) => {\n let result:any = []\n _.forEach(state.active.post.post.topics, (c: any) => {\n result = _.concat(\n result,\n _.filter(state.content.topics, (topic: any) => {\n if (_.includes(c, topic.uuid)) return topic\n return undefined\n }),\n )\n })\n return _.uniqBy(_.compact(result), (r: any) => r.uuid)\n },\n\n // All Tags found in the content for the active Post\n tagsFromActivePostContent: (state: any) => {\n let result:any = []\n _.forEach(state.active.post.post.tags, (c: any) => {\n result = _.concat(\n result,\n _.filter(state.content.tags, (tag: any) => {\n if (_.includes(c, tag.uuid)) return tag\n return undefined\n }),\n )\n })\n return _.uniqBy(_.compact(result), (r: any) => r.uuid)\n },\n\n person: (state: any) => state.active.person,\n\n organisation: (state: any) => state.active.organisation,\n\n role: (state: any) => state.active.role,\n\n films: (state: any) => state.content.films,\n\n filmCollections: (state: any) => state.content.filmCollections,\n\n activeFilms: (state: any) => state.active.post.films,\n\n activeNews: (state: any) => state.active.post.news,\n\n activeFilmUuid: (state: any) => state.active.filmUuid,\n\n activeFilmCollectionUuid: (state: any) => state.active.filmCollectionUuid,\n}\n\nexport default new Vuex.Store({\n state: {\n status: undefined, // Status of last API fetch expressed as HTTP status code (number)\n filtersDeactivated: false,\n active: {\n // post is the Article, Film, FilmCollection, Theme etc displayed on a given route\n post: {\n post: {}, // Currently displayed instance of a content type (object).\n themes: [], // All themes associated with this post\n topics: [], // All topics associated with this post\n tags: [], // All tags associated with this post\n persons: [], // All persons associated with this post\n organisations: [], // All persons associated with this post\n films: [], // All Films associated in case the active post is a Film Collection\n },\n curated: {}, // Currently displayed curated content (object)\n feature: {}, // Currently displayed feature (object)\n news: [], // Currently displayed news (object])\n theme: {\n theme: {}, // Active theme (object)\n content: {\n // Content associated with current theme and filtered by Topic and Tag (object[])\n active: [],\n passive: [], // Content associated with current theme (object[])\n },\n topics: {\n active: [], // Topics associated for this theme which are set as active filters\n passive: [], // Topics associated with this theme\n },\n tags: {\n active: [], // Tags associated for this theme which are set as active filters\n passive: [], // Tags associated with this theme\n },\n },\n landingPage: {},\n },\n // Content which has been fetched from the API but is not necessarily active\n content: {\n themes: [], // All themes, object[]\n tags: [], // All tags, object[]\n topics: [], // All topics, object[]\n persons: [], // All persons, object[]\n films: [], // All films, object[]\n filmCollections: [], // All filmCollections, object[],\n organisations: [], // All organisations, object[],\n news: [], // All news, object[],\n pages: [], // All pages, object[]\n },\n },\n actions,\n mutations,\n getters,\n})\n","module.exports = {\n enabledLanguages: ['en', 'es', 'fr', 'et', 'lt', 'lv', 'cs', 'sk', 'pl', 'hu', 'it', 'el'],\n url: 'https://exposingtheinvisible.org', // no trailing slash\n rssTitle: 'Exposing the invisible',\n rssDescription: `Through a series of films, interviews, guides, tools and workshops, \n Exposing the Invisible brings together different techniques and individual practices \n of those working at the new frontiers of investigation.`,\n rssFeedImage: 'https://cdn.ttc.io/i/fit/800/0/sm/0/plain/exposingtheinvisible.org/media20/tool/hero-tool-google-earth.jpg',\n\n // Content API settings\n contentApiUri: 'https://api.ttc.io/',\n contentApiNamespace: 'eti',\n\n media: {\n baseUrl: 'https://cdn.ttc.io/',\n namespace: 'exposingtheinvisible.org',\n sourcePath: 'i/fit/800/0/sm/0/plain/',\n },\n\n searchUrl: 'https://search.tacticaltech.org/results/?project=eti&',\n\n logoImage: '/eti-logo.jpg',\n heroImage: '/hero.jpg',\n scrollUpImage: '/scroll-up.png',\n kitBannerImage: '/kit-banner.jpg',\n\n // Path to file with an array of routes for prerendering static HTML\n prerenderRoutesFilePath: '_prerenderRoutes',\n\n // Path to file with array of routes for sitemap creation\n sitemapRoutesFilePath: '_sitemapRoutes',\n // Path to the sitemap\n sitemapFilePath: '_sitemap.xml',\n\n // Path to RSS feed\n rssFilePath: '_rss.xml',\n}\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return (_vm.iconFile && _vm.width && _vm.height)?_c(_vm.iconFile,{tag:\"component\",attrs:{\"height\":_vm.height,\"width\":_vm.width}}):(_vm.iconFile)?_c(_vm.iconFile,{tag:\"component\"}):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\nimport { Component, Vue, Prop } from 'vue-property-decorator'\n\n\n@Component({})\nexport default class SvgIcon extends Vue {\n @Prop({ default: null }) private iconName!: string\n\n @Prop({ default: null }) private width!: string\n\n @Prop({ default: null }) private height!: string\n\n get iconFile() {\n if (this.iconName) {\n return () => import(`@/assets/svg/${this.iconName}.svg`)\n }\n return null\n }\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--15-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SvgIcon.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--15-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SvgIcon.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./SvgIcon.vue?vue&type=template&id=1c103c86&\"\nimport script from \"./SvgIcon.vue?vue&type=script&lang=ts&\"\nexport * from \"./SvgIcon.vue?vue&type=script&lang=ts&\"\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","\nimport conf from '../configuration'\nimport * as localisationsStrings from '../localised-strings.json'\n\n/* Returns localised string from an object with localisations.\n *\n * @param {string} key - the key holding the string in the translation object\n * @param {string} locale - the translation to get\n * @param {string} fallbackLocale - the fallback translation if the string is\n * not available in the requested locale\n * @param {object} localisations - the object with the translations.\n * Expected format is {locale: {key: stringToBeTranslated}}\n * @param {array} enabledLanguages - array of strings with ISO 639-1 language codes\n * @returns {string} - returns translated string\n */\nexport const l = (\n key,\n locale,\n fallbackLocale = 'en',\n localisations = localisationsStrings.default,\n enabledLanguages = conf.enabledLanguages,\n) => {\n if (key && _.isString(key)) {\n if (\n localisations[locale]\n && localisations[locale][key]\n && localisations[locale][key] !== ''\n && enabledLanguages.includes(locale)) {\n return localisations[locale][key]\n }\n if (\n localisations[fallbackLocale]\n && localisations[fallbackLocale][key]\n && localisations[fallbackLocale][key] !== '') {\n return localisations[fallbackLocale][key]\n }\n return ''\n }\n throw (new Error('key must be a string'))\n}\n\n/* Returns locale part of the path. Works with 2 letter ISO 639-1 language formats in paths.\n *\n * @param {string} path - the path\n * @param {array} enabledLanguages - array of strings with ISO 639-1 language codes\n * @returns {string} - returns locale\n */\nexport const localeFromPath = (path, enabledLanguages = conf.enabledLanguages) => {\n if (path && _.isString(path)) {\n if (_.isArray(enabledLanguages) && !_.isEmpty(enabledLanguages)) {\n let localeCandidate = _.replace(_.split(path, '/')[1], '/', '')\n if (\n localeCandidate.length === 2\n && enabledLanguages.includes(localeCandidate)\n ) return localeCandidate\n if (localeCandidate.length === 3) {\n localeCandidate = _.replace(localeCandidate, '/', '')\n if (enabledLanguages.includes(localeCandidate)) return localeCandidate\n return 'en'\n }\n return 'en'\n } throw (new Error('enabledLanguages must be array and cannot be empty'))\n } throw (new Error('path must be a string and cannot be empty'))\n}\n\n/* Returns path without locale and without starting slash.\n * Works with 2 letter ISO 639-1 language formats in paths.\n *\n * @param {string} path - the path\n * @param {array} enabledLanguages - array of strings with ISO 639-1 language codes\n * @returns {string} - returns slug\n */\nexport const slugFromPath = (path, enabledLanguages = conf.enabledLanguages) => {\n if (path && _.isString(path)) {\n if (_.isArray(enabledLanguages) && !_.isEmpty(enabledLanguages)) {\n const pathElements = _.split(path, '/')\n if (path === '/') return undefined\n if (\n enabledLanguages.includes(pathElements[1])\n ) {\n const pathWithoutLocale = _.join(_.drop(pathElements, 2), '/')\n if (_.isEmpty(pathWithoutLocale)) return undefined\n if (!_.startsWith(pathWithoutLocale, '/')) {\n return `/${pathWithoutLocale}`\n } return pathWithoutLocale\n }\n if (_.isEmpty(path) || _.isUndefined(path)) {\n return undefined\n }\n return path\n } throw (new Error('enabledLanguages must be array and cannot be empty'))\n } throw (new Error('path must be a string and cannot be empty'))\n}\n\nexport const truncateText = (text, length) => {\n if (text && _.isString(text)) {\n if (text.length > length) {\n return _.truncate(text, { length, separator: ' ' })\n }\n return text\n }\n return text\n}\n\nexport const chunkateArray = (inputArray, chunkSize) => {\n if (inputArray.length) {\n return inputArray.map((e, i) => (\n i % chunkSize === 0 ? inputArray.slice(i, i + chunkSize) : null\n )).filter(e => e)\n }\n return undefined\n}\n\n/* Takes the source URI to an image on TTCs media server and runs it trough\n * img proxy to get a URI to a resized version of the same image.\n * The returned image URI has the format [mediaServer]/i/fit/[width]/0/sm/0/plain/\n * [imageDirectory]/[image]\n *\n * @param {string} src - the image URI\n * @param {number} width - the width of the new image\n * @param {string} image directory - the image directory\n * @param {URI} mediaServer - the URL to the media server\n * @returns {URI} - returns the URI of the resized image\n */\nexport const imagePath = (\n imgSrc,\n width,\n imageDirectory = conf.media.namespace,\n mediaServer = conf.media.baseUrl,\n) => {\n // eslint-disable-next-line no-param-reassign\n if (!mediaServer.endsWith('/')) mediaServer += '/'\n if (imgSrc && width) {\n // eslint-disable-next-line no-param-reassign\n if (!imgSrc.startsWith('/')) imgSrc = `/${imgSrc}`\n return [mediaServer, 'i/fit/', width.toString(), '/0/sm/0/plain/', imageDirectory, imgSrc].join('')\n }\n return ''\n}\n\n/* Get the Theme name from the URL\n * where the URL is expected to be in the format\n * [/locale]/theme/[content-type]\n * @returns {string} - returns the name of the Theme\n */\nexport const themeSegmentFromUrl = (pathName) => {\n const [firstSeg, secondSeg, thirdSeg, fourthSeg] = pathName.split('/')\n // Catch the locale in the path f.e. 'en'\n if (secondSeg.length === 2) {\n return thirdSeg\n }\n return secondSeg\n}\n\n/* Get the Content Type name from the URL\n * where the URL is expected to be in the format\n * [/locale]/theme/[content-type]\n * @returns {string} - returns the name of the Content Type\n */\nexport const contentTypeSegmentFromUrl = () => {\n const [firstSeg, secondSeg, thirdSeg, fourthSeg] = window.location.pathname.split('/')\n if (secondSeg.length === 2) {\n return fourthSeg\n }\n return thirdSeg\n}\n\n/* Return localised date string\n*\n* @param {date time string} date - Date Time String Format\n* @param {locale} string - ISO 639-1 language code\n* @param {options} - date formatting options as accepted by Date.prototype.toLocaleDateString\n* with sensible defaults\n* @returns {string} - formatted date or empty string if one of the arguments is not valid\n*/\nexport const formatDate = (\n date,\n locale,\n options = {\n year: 'numeric', month: 'long', day: 'numeric',\n },\n) => {\n if (_.isNaN(Date.parse(date))) return ''\n const d = new Date(date)\n if (_.isObject(options) && _.isString(locale)) {\n return d.toLocaleDateString(locale, options)\n } return ''\n}\n\n/* Order posts by date.\n * Uses the updatedDate field if it exists, otherwise falls\n * back to publicationDate field\n *\n * @param {array} postObjectsArray - array of post objects\n * @param {string} order - 'desc' or 'asc'\n * @returns {array} - returns ordered posts objects array\n * or the first argument if the posts format was not correct\n */\nexport const orderPostsByDate = (postObjectsArray, order) => {\n if (postObjectsArray\n && _.isArray(postObjectsArray)\n && (order === ('desc' || 'asc'))\n ) {\n const formatYYYYMMDDDateStringToArray = (date) => {\n if (date && _.isString(date)) {\n return _.map(\n _.split(date, '-'), d => parseInt(d, 10),\n )\n }\n return date\n }\n\n return _.orderBy(\n postObjectsArray, (post) => {\n if (post.updatedDate && post.updatedDate !== 'Invalid date') {\n /* Creating date from string in the format YYYY-MM-DD\n * Fallback to now date if this fails\n */\n const date = formatYYYYMMDDDateStringToArray(post.updatedDate)\n if (date && date[0] && date[1] && date[2]) {\n return new Date(\n // YYYY, M, DD\n // The month is 0 indexed, so we subtract 1\n date[0], date[1] - 1, date[2],\n )\n }\n return new Date()\n }\n const date = formatYYYYMMDDDateStringToArray(post.publicationDate)\n if (date && date[0] && date[1] && date[2]) {\n return new Date(\n date[0], date[1] - 1, date[2],\n )\n }\n return new Date()\n }, [order],\n )\n }\n return postObjectsArray\n}\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return (_vm.enableResponsive)?_c('img',{directives:[{name:\"lazy\",rawName:\"v-lazy\",value:(_vm.imagePath(_vm.src, _vm.canvasWidth)),expression:\"imagePath(src, canvasWidth)\"}],class:_vm.classes,attrs:{\"alt\":_vm.alt,\"height\":_vm.height,\"width\":_vm.width,\"srcset\":`\n ${_vm.imagePath(_vm.src, 400)} 400w, ${_vm.imagePath(_vm.src, 600)} 600w,\n ${_vm.imagePath(_vm.src, 800)} 800w, ${_vm.imagePath(_vm.src, _vm.canvasWidth)},\n ${_vm.imagePath(_vm.src, Math.round(_vm.canvasWidth * 1.5))} 1.5x,\n ${_vm.imagePath(_vm.src, _vm.canvasWidth * 2)} 2x`,\"sizes\":\"(max-width: 400px) 400px, (max-width: 600px) 600px, (max-width: 800px) 800px\"}}):_c('img',{directives:[{name:\"lazy\",rawName:\"v-lazy\",value:(_vm.imagePath(_vm.src, _vm.canvasWidth)),expression:\"imagePath(src, canvasWidth)\"}],class:_vm.classes,attrs:{\"alt\":_vm.alt,\"height\":_vm.height,\"width\":_vm.width}})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\nimport { Vue, Component, Prop } from 'vue-property-decorator'\nimport { imagePath } from '@/utils/helpers'\n\n@Component({\n methods: {\n imagePath,\n },\n})\nexport default class ResponsiveImage extends Vue {\n @Prop() private src!: string\n\n @Prop() private alt!: string\n\n @Prop({ default: 1088 }) private canvasWidth!: number\n\n @Prop({ default: true }) private enableResponsive!: boolean\n\n @Prop({ default: 'w-100' }) private classes!: string\n\n @Prop({ default: 'loader' }) private loaderClasses!: string\n\n @Prop() private height!: number\n\n @Prop() private width!: number\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--15-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ResponsiveImage.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--15-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ResponsiveImage.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ResponsiveImage.vue?vue&type=template&id=033fac7f&\"\nimport script from \"./ResponsiveImage.vue?vue&type=script&lang=ts&\"\nexport * from \"./ResponsiveImage.vue?vue&type=script&lang=ts&\"\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","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"flex flex-column\",attrs:{\"id\":\"app\"}},[_c('Header'),_c('div',{staticClass:\"main\"},[_c('router-view')],1),_c('Footer')],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('section',{staticClass:\"header flex flex-column flex-row-l\"},[_c('router-link',{staticClass:\"header__logo w4-m flex mr0 bb link\",attrs:{\"to\":{ path: '/en' },\"tag\":\"a\"}},[_c('SvgIcon',{attrs:{\"width\":\"230px\",\"height\":\"114px\",\"iconName\":\"logo\"}})],1),_c('ThemeMenuItems'),_c('div',{staticClass:\"header__sticky-menu flex flex-column bl\"},[(!_vm.showModal)?_c('div',{staticClass:\"header__burger pointer flex items-center justify-center bb z-5\",on:{\"click\":function($event){_vm.handleClick(); _vm.showModal = !_vm.showModal;}}},[_c('SvgIcon',{attrs:{\"iconName\":\"burger\"}})],1):(_vm.showModal)?_c('div',{staticClass:\"header__burger pointer flex items-center justify-center z-5\",on:{\"click\":function($event){_vm.handleCloseClick(); _vm.showModal = !_vm.showModal;}}},[_c('SvgIcon',{attrs:{\"iconName\":\"close\"}})],1):_vm._e(),(!_vm.showSearch)?_c('div',{staticClass:\"header__lang flex pointer items-center justify-center bg-black white\",on:{\"click\":function($event){_vm.handleSearchClick(); _vm.showSearch = !_vm.showSearch;}}},[_c('SvgIcon',{attrs:{\"iconName\":\"search-menu-icon\"}})],1):(_vm.showSearch)?_c('div',{staticClass:\"header__lang pointer flex items-center justify-center bb bg-black\",on:{\"click\":function($event){_vm.handleSearchCloseClick(); _vm.showSearch = !_vm.showSearch;}}},[_c('SvgIcon',{attrs:{\"iconName\":\"close\"}})],1):_vm._e()]),(_vm.showModal)?_c('MenuModal',{on:{\"menuClick\":function($event){_vm.showModal = !_vm.showModal}}}):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('ul',{staticClass:\"flex ma0 pa0 flex-column flex-row-ns flex-wrap-m justify-start bb w-100 list theme__menu-items bg-tile--white\"},[_vm._l((_vm.themes),function(theme,i){return _c('router-link',{key:i,staticClass:\"black pa3 bg-white theme__menu-item w-50-m w-100 br-ns bb-0-l link bbn-l pointer hover-bg-eti-red--light bb\",class:{\n 'bb-0-m': i > 1,\n 'br-0-m': (i + 1) % 2 === 0,\n },attrs:{\"to\":{ path: `/${theme.locale}/${theme.slug}` },\"tag\":\"li\"}},[_c('a',{staticClass:\"no-underline theme__menu-text flex flex-column-ns\"},[_c('h2',[_vm._v(\" \"+_vm._s(theme.title)+\" \"),_c('SvgIcon',{staticClass:\"Arrow ml2\",attrs:{\"iconName\":\"arrow\"}})],1),(theme.subtitle)?_c('p',{staticClass:\"source-sans-pro ml3 ml0-ns mt3-ns pt2-ns mv0-ns\"},[_vm._v(\" \"+_vm._s(theme.subtitle)+\" \")]):_vm._e()])])}),_c('li',{key:\"search\",staticClass:\"pa3 bg-eti-red--light theme__menu-item w-50-m w-100 br-ns bb-0-l link bbn-l br-0-m bb-0-m dn bt-m\",attrs:{\"id\":\"searchForm\"}},[_c('form',{staticClass:\"theme__menu-text flex mt3-ns pt2-ns\",on:{\"submit\":function($event){$event.preventDefault();_vm.handleFormSubmit(_vm.searchUrl(_vm.searchInput))}}},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.searchInput),expression:\"searchInput\"}],staticClass:\"mr3 search-input eti-dark-gray bg-eti-red--light\",attrs:{\"type\":\"text\",\"autofocus\":\"\"},domProps:{\"value\":(_vm.searchInput)},on:{\"input\":function($event){if($event.target.composing)return;_vm.searchInput=$event.target.value}}}),_c('a',{staticClass:\"mr1 no-underline\",attrs:{\"href\":_vm.searchUrl(_vm.searchInput)}},[_c('SvgIcon',{attrs:{\"iconName\":\"search-icon\",\"width\":\"20px\",\"height\":\"20px\"}})],1)])])],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\nimport { Component, Vue } from 'vue-property-decorator'\nimport { mapState } from 'vuex'\nimport _ from 'lodash'\nimport store from '@/store'\nimport { localeFromPath } from '@/utils/helpers'\nimport conf from '@/configuration'\n\nimport SvgIcon from '@/components/atoms/SvgIcon.vue'\n\n@Component({\n components: {\n SvgIcon,\n },\n computed: mapState({\n themes: (state: any) => {\n if (state.content.themes) {\n return _.sortBy(\n _.filter(\n state.content.themes, (t: any) => t.displayInMenu,\n ),\n (t: any) => Number.parseInt(t.position, 10),\n )\n }\n return undefined\n },\n }),\n data: () => ({\n searchInput: '',\n }),\n methods: {\n handleFormSubmit(url:string) {\n window.open(url, '_blank')\n },\n },\n})\n\nexport default class ThemeMenuItems extends Vue {\n private searchInput!: string\n\n mounted() {\n // Fetch themes in the current language from the API\n store.dispatch(\n 'fetch',\n `/?contentType=theme&&locale=${localeFromPath(this.$route.params.slug || '/')}`,\n )\n .then((result: any) => {\n if (result) {\n // Set the fetched themes in the VUEX store\n try {\n store.dispatch('set', { key: 'content.themes', data: result })\n } catch (err) {\n // console.log(err)\n }\n }\n })\n .catch(\n // (error: string) => { throw new Error(error) },\n )\n }\n\n searchUrl(input: string) {\n return `${conf.searchUrl}term=${input}`\n }\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--15-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ThemeMenuItems.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--15-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ThemeMenuItems.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ThemeMenuItems.vue?vue&type=template&id=80423cb6&\"\nimport script from \"./ThemeMenuItems.vue?vue&type=script&lang=ts&\"\nexport * from \"./ThemeMenuItems.vue?vue&type=script&lang=ts&\"\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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('section',{staticClass:\"menu-modal bg-eti-red w-100 z-4\"},[(_vm.pages)?_c('div',{staticClass:\"menu-modal__data flex flex-wrap p\"},_vm._l((_vm.chunkatePages(_vm.pages)),function(pageChunks,i){return _c('div',{key:i,staticClass:\"flex flex-wrap w-100\"},_vm._l((pageChunks),function(page,j){return _c('div',{key:j,staticClass:\"flex w-20-ns ml3 pv2 ml5-ns pr5-ns\"},[_c('router-link',{attrs:{\"to\":{ path: `/${page.slug}` }}},[_c('a',{staticClass:\"underline pv2 pointer\",on:{\"click\":_vm.handleClick}},[_vm._v(_vm._s(page.title))])])],1)}),0)}),0):_vm._e()])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\nimport {\n Component, Prop, Vue,\n} from 'vue-property-decorator'\nimport _ from 'lodash'\nimport { mapState } from 'vuex'\nimport store from '@/store'\nimport { l, localeFromPath, chunkateArray } from '@/utils/helpers'\n\n@Component({\n methods: {\n l,\n handleClick() {\n this.$emit('menuClick')\n document.body.style.overflow = 'scroll'\n },\n },\n computed: mapState({\n pages: (state: any) => (state.content && state.content.pages ? state.content.pages : undefined),\n }),\n})\nexport default class MenuModal extends Vue {\n constructor() {\n super()\n this.locale = ''\n }\n\n private locale: string\n\n mounted() {\n this.locale = localeFromPath(this.$route.path || '/')\n if (_.isEmpty(this.$store.getters.pages)) {\n // Fetch Page content in the current language from the API\n store.dispatch(\n 'fetch',\n // `/?contentType=page&&locale=${this.locale}`,\n '/?contentType=page',\n )\n .then((result: any) => {\n if (result) {\n // Set the fetched page content as pages in the VUEX store\n try {\n store.dispatch('set', { key: 'content.pages', data: result })\n } catch (err) {\n // console.log(err)\n }\n }\n })\n .catch(\n (error: string) => { throw new Error(error) },\n )\n }\n }\n\n chunkatePages(pages: any[], chunkSize = 3) {\n if (pages.length) {\n return chunkateArray(pages, chunkSize)\n }\n return undefined\n }\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--15-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MenuModal.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--15-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MenuModal.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./MenuModal.vue?vue&type=template&id=86da8660&\"\nimport script from \"./MenuModal.vue?vue&type=script&lang=ts&\"\nexport * from \"./MenuModal.vue?vue&type=script&lang=ts&\"\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","\nimport { Component, Vue, Watch } from 'vue-property-decorator'\n\nimport { localeFromPath } from '@/utils/helpers'\n\nimport SvgIcon from '@/components/atoms/SvgIcon.vue'\nimport ThemeMenuItems from '@/components/atoms/ThemeMenuItems.vue'\nimport MenuModal from '@/components/atoms/MenuModal.vue'\n\n@Component({\n components: {\n SvgIcon,\n ThemeMenuItems,\n MenuModal,\n },\n data: () => ({\n showModal: false,\n showSearch: false,\n }),\n methods: {\n handleClick() {\n document.body.style.overflow = 'hidden'\n },\n handleCloseClick(e) {\n document.body.style.overflow = 'scroll'\n },\n handleSearchClick() {\n const elem = document.getElementById('searchForm')\n if (elem) {\n elem.style.display = 'block'\n }\n },\n handleSearchCloseClick(e) {\n const elem = document.getElementById('searchForm')\n if (elem) {\n elem.style.display = 'none'\n }\n },\n },\n})\n\nexport default class Header extends Vue {\n constructor() {\n super()\n this.locale = ''\n }\n\n private locale: string\n\n @Watch('$route', { immediate: true, deep: true })\n onUrlChange() {\n this.locale = localeFromPath(this.$route.path || '/')\n }\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--15-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Header.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--15-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Header.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Header.vue?vue&type=template&id=e1d38454&\"\nimport script from \"./Header.vue?vue&type=script&lang=ts&\"\nexport * from \"./Header.vue?vue&type=script&lang=ts&\"\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","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"source-sans-pro small bg-black pa3 pa4-ns sans-serif\"},[_c('div',{staticClass:\"flex center content-max-width\"},[_c('div',{staticClass:\"link center w-100 white\"},[_c('div',{staticClass:\"mb3 flex flex-wrap flex-column flex-row-ns justify-between-ns w-100\"},[_c('div',{staticClass:\"mb3\"},[_c('p',{staticClass:\"mb3 f6\"},[_vm._v(_vm._s(_vm.l('productOf', _vm.locale)))]),_c('p',{staticClass:\"bg-ttc_white mt2 mb3\"},[_c('a',{staticClass:\"white\",attrs:{\"href\":\"https://tacticaltech.org\",\"target\":\"_blank\",\"rel\":\"noopener noreferrer\"}},[_c('SvgIcon',{attrs:{\"iconName\":\"ttc-logo\",\"width\":\"93px\"}})],1)])]),_c('hr',{staticClass:\"white mt4 mb3 dn-ns w-100\"}),_c('div',{staticClass:\"flex flex-column flex-row-ns\"},[_vm._m(0),_c('div',{staticClass:\"mb3\"},[_c('p',{staticClass:\"mb3 f6\"},[_vm._v(_vm._s(_vm.l('connect', _vm.locale)))]),_vm._m(1)])])]),_c('hr',{staticClass:\"white mt4 mb3\"}),_c('nav',{staticClass:\"w-100 w-80-l list fl-l\"},[_c('p',{staticClass:\"mb3 f6\"},[_vm._v(_vm._s(_vm.l('visitOtherProjects', _vm.locale)))]),_c('div',{staticClass:\"center flex flex-wrap justify-between items-stretch\"},[_c('a',{staticClass:\"link white flex flex-column items-center tc link w-auto-l w-50 pv2\",attrs:{\"href\":\"https://exposingtheinvisible.org\",\"target\":\"_blank\",\"rel\":\"noopener noreferrer\"}},[_c('div',{staticClass:\"flex-auto flex flex-column justify-center\"},[_c('i',{staticClass:\"db mv2\"},[_c('ResponsiveImage',{attrs:{\"src\":\"/eti-logo-footer.png\",\"alt\":\"Exposing The Invisible logo\",\"classes\":\"h2\",\"canvasWidth\":140,\"height\":\"auto\"}})],1)]),_c('span',{staticClass:\"db\"},[_vm._v(\"Exposing the Invisible\")])]),_c('a',{staticClass:\"link white flex flex-column items-center tc link w-auto-l w-50 pv2\",attrs:{\"href\":\"https://datadetoxkit.org/\",\"target\":\"_blank\",\"rel\":\"noopener noreferrer\"}},[_c('div',{staticClass:\"flex flex-column items-center tc link / w-auto-ns w-third w-third-m pv2\"},[_c('i',{staticClass:\"db mv2\"},[_c('SvgIcon',{attrs:{\"iconName\":\"ddk-logo\",\"height\":\"auto\",\"width\":\"63px\"}})],1)]),_c('span',{staticClass:\"db\"},[_vm._v(\"The Data Detox Kit\")])]),_c('a',{staticClass:\"link white flex flex-column items-center tc link w-auto-l w-50 pv2\",attrs:{\"href\":\"https://ourdataourselves.tacticaltech.org/\",\"target\":\"_blank\",\"rel\":\"noopener noreferrer\"}},[_c('div',{staticClass:\"flex-auto flex flex-column justify-center\"},[_c('i',{staticClass:\"db mv2\"},[_c('ResponsiveImage',{attrs:{\"src\":\"/odos-logo.png\",\"alt\":\"Our Data Our Selves logo\",\"classes\":\"h2\",\"canvasWidth\":140,\"height\":\"auto\"}})],1)]),_c('span',{staticClass:\"db\"},[_vm._v(\"Data & Politics\")])]),_vm._m(2)]),_c('hr',{staticClass:\"white mt4 mb3 dn-l\"})]),_c('div',{staticClass:\"w-20-l fr-l\"},[_c('div',{staticClass:\"fr-l\"},[_c('p',{staticClass:\"mb3 f6\"},[_vm._v(_vm._s(_vm.l('previousProjects', _vm.locale)))]),_vm._m(3)])])])])])\n}\nvar staticRenderFns = [function (){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"mb3 mr4-ns\"},[_c('p',{staticClass:\"mb3 f6\"},[_vm._v(\"Tactical Tech at Publix\")]),_c('ul',{staticClass:\"list lh-copy pa0 ma0\"},[_c('li',{staticClass:\"link white lh-copy pb3\"},[_vm._v(\" Hermannstrasse 90\"),_c('br'),_vm._v(\"12051 Berlin\"),_c('br'),_vm._v(\"Germany \")]),_c('li',[_c('a',{staticClass:\"link white no-underline underline-hover\",attrs:{\"href\":\"https://tacticaltech.org\",\"target\":\"_blank\",\"rel\":\"noopener noreferrer\"}},[_vm._v(\" www.tacticaltech.org \")])]),_c('li',[_c('a',{staticClass:\"link white no-underline underline-hover\",attrs:{\"href\":\"https://tacticaltech.org/data-use-policy/\",\"target\":\"_blank\",\"rel\":\"noopener noreferrer\"}},[_vm._v(\" Data Use Policy \")])]),_c('li',[_c('a',{staticClass:\"link white no-underline underline-hover\",attrs:{\"href\":\"mailto:ttc@tacticaltech.org\",\"target\":\"_blank\",\"rel\":\"noopener noreferrer\"}},[_vm._v(\" ttc@tacticaltech.org \")])])])])\n},function (){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('ul',{staticClass:\"list lh-copy pa0 ma0\"},[_c('li',{staticClass:\"mt2\"},[_c('a',{staticClass:\"link white no-underline underline-hover\",attrs:{\"href\":\"https://tacticaltech.org/newsletter-subscription/in-the-loop/\",\"target\":\"_blank\",\"rel\":\"noopener noreferrer\"}},[_vm._v(\"Newsletter\")])]),_c('li',{staticClass:\"mt2\"},[_c('a',{staticClass:\"link white no-underline underline-hover\",attrs:{\"href\":\"https://twitter.com/Info_Activism\",\"target\":\"_blank\",\"rel\":\"noopener noreferrer\"}},[_vm._v(\"X\")])]),_c('li',{staticClass:\"mt2\"},[_c('a',{staticClass:\"link white no-underline underline-hover\",attrs:{\"href\":\"https://facebook.com/Tactical.Tech\",\"target\":\"_blank\",\"rel\":\"noopener noreferrer\"}},[_vm._v(\"Facebook\")])]),_c('li',{staticClass:\"mt2\"},[_c('a',{staticClass:\"link white no-underline underline-hover\",attrs:{\"href\":\"https://mastodon.cc/@info_activism/\",\"target\":\"_blank\",\"rel\":\"noopener noreferrer\"}},[_vm._v(\"Mastodon\")])]),_c('li',{staticClass:\"mt2\"},[_c('a',{staticClass:\"link white no-underline underline-hover\",attrs:{\"href\":\"https://tacticaltech.org/#/donate\",\"target\":\"_blank\",\"rel\":\"noopener noreferrer\"}},[_vm._v(\"Support us\")])]),_c('li',{staticClass:\"mt2\"},[_c('a',{staticClass:\"link white no-underline underline-hover\",attrs:{\"href\":\"https://exposingtheinvisible.org/rss.xml\",\"target\":\"_blank\",\"rel\":\"noopener noreferrer\"}},[_vm._v(\"RSS feed\")])])])\n},function (){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('a',{staticClass:\"link white flex flex-column items-center tc link w-auto-l w-50 pv2\",attrs:{\"href\":\"https://theglassroom.org/\",\"target\":\"_blank\",\"rel\":\"noopener noreferrer\"}},[_c('div',{staticClass:\"flex-auto flex flex-column justify-center\"},[_c('i',{staticClass:\"sprite bg-glassroom db mv2\"})]),_c('span',{staticClass:\"db\"},[_vm._v(\"The Glass Room\")])])\n},function (){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('ul',{staticClass:\"list lh-copy pa0 ma0\"},[_c('li',{staticClass:\"w100 mt2\"},[_c('a',{staticClass:\"link white no-underline underline-hover\",attrs:{\"href\":\"https://xyz.informationactivism.org/en\",\"target\":\"_blank\",\"rel\":\"noopener noreferrer\"}},[_vm._v(\"XYZ\")])]),_c('li',{staticClass:\"w100 mt2\"},[_c('a',{staticClass:\"link white no-underline underline-hover\",attrs:{\"href\":\"https://holistic-security.tacticaltech.org/\",\"target\":\"_blank\",\"rel\":\"noopener noreferrer\"}},[_vm._v(\"Holistic Security\")])]),_c('li',{staticClass:\"w100 mt2\"},[_c('a',{staticClass:\"link white no-underline underline-hover\",attrs:{\"href\":\"https://gendersec.tacticaltech.org/wiki/index.php/Main_Page\",\"target\":\"_blank\",\"rel\":\"noopener noreferrer\"}},[_vm._v(\"Gender & Tech\")])]),_c('li',{staticClass:\"w100 mt2\"},[_c('a',{staticClass:\"link white no-underline underline-hover\",attrs:{\"href\":\"https://myshadow.org/\",\"target\":\"_blank\",\"rel\":\"noopener noreferrer\"}},[_vm._v(\"Me and My Shadow\")])]),_c('li',{staticClass:\"w100 mt2\"},[_c('a',{staticClass:\"link white no-underline underline-hover\",attrs:{\"href\":\"https://visualisingadvocacy.org/content/visualising-information-advocacy.html\",\"target\":\"_blank\",\"rel\":\"noopener noreferrer\"}},[_vm._v(\"Visualising Advocacy\")])]),_c('li',{staticClass:\"w100 mt2\"},[_c('a',{staticClass:\"link white no-underline underline-hover\",attrs:{\"href\":\"https://securityinabox.org/en/\",\"target\":\"_blank\",\"rel\":\"noopener noreferrer\"}},[_vm._v(\"Security in a Box\")])])])\n}]\n\nexport { render, staticRenderFns }","\nimport { Component, Vue, Watch } from 'vue-property-decorator'\nimport SvgIcon from '@/components/atoms/SvgIcon.vue'\nimport ResponsiveImage from '@/components/atoms/ResponsiveImage.vue'\nimport { l, localeFromPath } from '@/utils/helpers'\n\n@Component({\n components: {\n SvgIcon,\n ResponsiveImage,\n },\n methods: {\n l,\n },\n})\nexport default class Footer extends Vue {\n constructor() {\n super()\n this.locale = ''\n }\n\n private locale: string\n\n @Watch('$route', { immediate: true, deep: true })\n onUrlChange() {\n if (this.$route) {\n this.locale = localeFromPath(this.$route.path || '/')\n }\n }\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--15-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Footer.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--15-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Footer.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Footer.vue?vue&type=template&id=71c54fda&\"\nimport script from \"./Footer.vue?vue&type=script&lang=ts&\"\nexport * from \"./Footer.vue?vue&type=script&lang=ts&\"\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","\n\n\n","import mod from \"-!../node_modules/cache-loader/dist/cjs.js??ref--14-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/cache-loader/dist/cjs.js??ref--1-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../node_modules/cache-loader/dist/cjs.js??ref--14-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/cache-loader/dist/cjs.js??ref--1-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=48cbc44c&\"\nimport script from \"./App.vue?vue&type=script&lang=js&\"\nexport * from \"./App.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 Vue from 'vue'\nimport VueRouter from 'vue-router'\nimport * as ls from '../localised-strings.json'\n\nVue.use(VueRouter)\n\nexport const routes = [\n {\n path: `/${ls.en.exploreSlug}`,\n redirect: `/${ls.en.readSlug}`,\n },\n {\n path: `/en/${ls.en.exploreSlug}`,\n redirect: `/en/${ls.en.readSlug}`,\n },\n {\n path: `/${ls.en.exploreSlug}/${ls.en.toolsSlug}`,\n redirect: `/${ls.en.readSlug}/${ls.en.toolsSlug}`,\n },\n {\n path: `/en/${ls.en.exploreSlug}/${ls.en.toolsSlug}`,\n redirect: `/en/${ls.en.readSlug}/${ls.en.toolsSlug}`,\n },\n {\n path: `/${ls.en.exploreSlug}/${ls.en.databasesSlug}`,\n redirect: `/${ls.en.readSlug}/${ls.en.databasesSlug}`,\n },\n {\n path: `/en/${ls.en.exploreSlug}/${ls.en.databasesSlug}`,\n redirect: `/en/${ls.en.readSlug}/${ls.en.databasesSlug}`,\n },\n {\n path: `/${ls.en.educateSlug}`,\n redirect: `/${ls.en.learnSlug}`,\n },\n {\n path: `/en/${ls.en.educateSlug}`,\n redirect: `/en/${ls.en.learnSlug}`,\n },\n {\n path: `/${ls.en.educateSlug}/${ls.en.guidesSlug}`,\n redirect: `/${ls.en.learnSlug}/${ls.en.guidesSlug}`,\n },\n {\n path: `/en/${ls.en.educateSlug}/${ls.en.guidesSlug}`,\n redirect: `/en/${ls.en.learnSlug}/${ls.en.guidesSlug}`,\n },\n {\n path: `/${ls.en.educateSlug}/${ls.en.workshopsSlug}`,\n redirect: `/${ls.en.learnSlug}/${ls.en.workshopsSlug}`,\n },\n {\n path: `/en/${ls.en.educateSlug}/${ls.en.workshopsSlug}`,\n redirect: `/en/${ls.en.learnSlug}/${ls.en.workshopsSlug}`,\n },\n {\n path: `/${ls.en.investigateSlug}`,\n redirect: `/${ls.en.watchSlug}`,\n },\n {\n path: `/en/${ls.en.investigateSlug}`,\n redirect: `/en/${ls.en.watchSlug}`,\n },\n {\n path: `/${ls.en.newsSlug}`,\n alias: [\n `/en/${ls.en.newsSlug}`, `/es/${ls.es.newsSlug}`, `/fr/${ls.fr.newsSlug}`,\n ],\n // route level code-splitting\n // this generates a separate chunk (about.[hash].js) for this route\n // which is lazy-loaded when the route is visited.\n component: () => import(/* webpackChunkName: \"news\" */ '../components/templates/NewsOverviewPage.vue'),\n },\n { // Homepage\n path: '/',\n alias: [\n '/en', '/es', '/fr',\n\n // Films overview page\n `/${ls.en.filmsSlug}`,\n `/en/${ls.en.filmsSlug}`,\n `/es/${ls.es.filmsSlug}`,\n `/fr/${ls.fr.filmsSlug}`,\n\n // Podcast landing page\n '/en/podcasts',\n '/podcasts',\n '/en/eu-project-2021',\n '/eu-project-2021',\n\n // :slug catches the Databases and Tools routes\n // :Theme/:RelatedContentType\n `/${ls.en.readSlug}/${ls.en.databasesSlug}`,\n `/${ls.en.readSlug}/${ls.en.toolsSlug}`,\n `/${ls.en.readSlug}/${ls.en.articlesSlug}`,\n `/${ls.en.readSlug}/${ls.en.interviewsSlug}`,\n `/en/${ls.en.readSlug}/${ls.en.databasesSlug}`,\n `/en/${ls.en.readSlug}/${ls.en.toolsSlug}`,\n `/en/${ls.en.readSlug}/${ls.en.articlesSlug}`,\n `/en/${ls.en.readSlug}/${ls.en.interviewsSlug}`,\n // `/es/${ls.es.readSlug}/${ls.es.databasesSlug}`,\n // `/es/${ls.es.readSlug}/${ls.es.toolsSlug}`,\n // `/es/${ls.es.readSlug}/${ls.es.articlesSlug}`,\n // `/es/${ls.es.readSlug}/${ls.es.interviewsSlug}`,\n // `/fr/${ls.fr.readSlug}/${ls.fr.databasesSlug}`,\n // `/fr/${ls.fr.readSlug}/${ls.fr.toolsSlug}`,\n // `/fr/${ls.fr.readSlug}/${ls.fr.articlesSlug}`,\n // `/fr/${ls.fr.readSlug}/${ls.fr.interviewsSlug}`,\n\n `/${ls.en.watchSlug}/${ls.en.filmsSlug}`,\n `/${ls.en.watchSlug}/${ls.en.sketchesSlug}`,\n `/${ls.en.watchSlug}/${ls.en.talksSlug}`,\n `/${ls.en.watchSlug}/${ls.en.otherSlug}`,\n `/en/${ls.en.watchSlug}/${ls.en.filmsSlug}`,\n `/en/${ls.en.watchSlug}/${ls.en.sketchesSlug}`,\n `/en/${ls.en.watchSlug}/${ls.en.talksSlug}`,\n `/en/${ls.en.watchSlug}/${ls.en.otherSlug}`,\n // `/es/${ls.es.watchSlug}/${ls.es.filmsSlug}`,\n // `/es/${ls.es.watchSlug}/${ls.es.sketchesSlug}`,\n // `/es/${ls.es.watchSlug}/${ls.es.talksSlug}`,\n // `/es/${ls.es.watchSlug}/${ls.es.otherSlug}`,\n // `/fr/${ls.fr.watchSlug}/${ls.fr.filmsSlug}`,\n // `/fr/${ls.fr.watchSlug}/${ls.fr.sketchesSlug}`,\n // `/fr/${ls.fr.watchSlug}/${ls.fr.talksSlug}`,\n // `/fr/${ls.fr.watchSlug}/${ls.fr.otherSlug}`,\n\n `/${ls.en.listenSlug}/${ls.en.podcastsSlug}`,\n `/${ls.en.listenSlug}/${ls.en.audioSlug}`,\n `/en/${ls.en.listenSlug}/${ls.en.podcastsSlug}`,\n `/en/${ls.en.listenSlug}/${ls.en.audioSlug}`,\n // `/es/${ls.es.listenSlug}/${ls.es.podcastsSlug}`,\n // `/es/${ls.es.listenSlug}/${ls.es.audioSlug}`,\n // `/fr/${ls.fr.listenSlug}/${ls.fr.podcastsSlug}`,\n // `/fr/${ls.fr.listenSlug}/${ls.fr.audioSlug}`,\n\n `/${ls.en.learnSlug}/${ls.en.guidesSlug}`,\n `/${ls.en.learnSlug}/${ls.en.workshopsSlug}`,\n `/en/${ls.en.learnSlug}/${ls.en.guidesSlug}`,\n `/en/${ls.en.learnSlug}/${ls.en.workshopsSlug}`,\n // `/es/${ls.es.learnSlug}/${ls.es.guidesSlug}`,\n // `/es/${ls.es.learnSlug}/${ls.es.workshopsSlug}`,\n // `/fr/${ls.fr.learnSlug}/${ls.fr.guidesSlug}`,\n // `/fr/${ls.fr.learnSlug}/${ls.fr.workshopsSlug}`\n\n ],\n component: () => import(/* webpackChunkName: \"landingpages\" */ '../components/templates/LandingPage.vue'),\n },\n { // Podcasts\n path: '/podcasts/:slug',\n alias: [\n '/en/podcasts/:slug',\n ],\n component: () => import(/* webpackChunkName: \"podcastpages\" */ '../components/templates/Podcast.vue'),\n },\n {\n path: `/${ls.en.postsSlug}/:slug`,\n alias: [\n // English routes\n `/${ls.en.articlesSlug}/:slug`,\n `/${ls.en.pagesSlug}/:slug`,\n `/${ls.en.newsSlug}/:slug`,\n `/${ls.en.personsSlug}/:slug`,\n `/${ls.en.guidesSlug}/:slug`,\n `/${ls.en.guidesSlug}/:slug/:slug`,\n `/${ls.en.interviewsSlug}/:slug`,\n `/${ls.en.databasesSlug}/:slug`,\n `/${ls.en.toolsSlug}/:slug`,\n `/${ls.en.curriculaSlug}/:slug`,\n `/${ls.en.workshopsSlug}/:slug`,\n\n `/en/${ls.en.postsSlug}/:slug`,\n `/en/${ls.en.articlesSlug}/:slug`,\n `/en/${ls.en.pagesSlug}/:slug`,\n `/en/${ls.en.newsSlug}/:slug`,\n `/en/${ls.en.personsSlug}/:slug`,\n `/en/${ls.en.guidesSlug}/:slug`,\n `/en/${ls.en.guidesSlug}/:slug/:slug`,\n `/en/${ls.en.interviewsSlug}/:slug`,\n `/en/${ls.en.databasesSlug}/:slug`,\n `/en/${ls.en.toolsSlug}/:slug`,\n `/en/${ls.en.curriculaSlug}/:slug`,\n `/en/${ls.en.workshopsSlug}/:slug`,\n\n // Tranlation workshops\n `/es/${ls.es.workshopsSlug}/:slug`,\n `/fr/${ls.fr.workshopsSlug}/:slug`,\n `/et/${ls.et.workshopsSlug}/:slug`,\n `/lt/${ls.lt.workshopsSlug}/:slug`,\n `/lv/${ls.lv.workshopsSlug}/:slug`,\n `/cs/${ls.cs.workshopsSlug}/:slug`,\n `/sk/${ls.sk.workshopsSlug}/:slug`,\n `/pl/${ls.pl.workshopsSlug}/:slug`,\n `/hu/${ls.hu.workshopsSlug}/:slug`,\n `/it/${ls.it.workshopsSlug}/:slug`,\n `/el/${ls.el.workshopsSlug}/:slug`,\n ],\n component: () => import(/* webpackChunkName: \"posts\" */ '../components/templates/Post.vue'),\n },\n {\n // Film and Film Collection pages\n path: `/${ls.en.filmsSlug}/:slug`,\n alias: [\n `/${ls.en.filmCollectionsSlug}/:slug`,\n `/${ls.en.filmGroupsSlug}/:slug`, // legacy route for Film Group\n `/en/${ls.en.filmsSlug}/:slug`,\n `/en/${ls.en.filmCollectionsSlug}/:slug`,\n `/en/${ls.en.filmGroupslug}/:slug`, // legacy route for Film Group\n\n `/es/${ls.es.filmsSlug}/:slug`,\n `/es/${ls.es.filmCollectionsSlug}/:slug`,\n\n `/fr/${ls.fr.filmsSlug}/:slug`,\n `/fr/${ls.fr.filmCollectionsSlug}/:slug`,\n ],\n component: () => import(/* webpackChunkName: \"films\" */ '../components/templates/Film.vue'),\n meta: {\n scroll: false,\n },\n },\n {\n // Theme pages\n path: `/${ls.en.readSlug}`,\n alias: [\n `/${ls.en.learnSlug}`,\n `/${ls.en.watchSlug}`,\n `/${ls.en.listenSlug}`,\n\n `/en/${ls.en.readSlug}`,\n\n `/en/${ls.en.learnSlug}`,\n\n `/en/${ls.en.watchSlug}`,\n\n `/en/${ls.en.listenSlug}`,\n\n ],\n component: () => import(/* webpackChunkName: \"themes\" */ '../components/templates/Theme.vue'),\n },\n {\n // Error pages 404\n path: `/${ls.en.readSlug}/:slug`,\n alias: [\n\n `/${ls.en.learnSlug}/:slug`,\n `/${ls.en.watchSlug}/:slug`,\n `/${ls.en.listenSlug}/:slug`,\n\n `/en/${ls.en.readSlug}/:slug`,\n\n `/en/${ls.en.learnSlug}/:slug`,\n\n `/en/${ls.en.watchSlug}/:slug`,\n\n `/en/${ls.en.listenSlug}/:slug`,\n ],\n component: () => import(/* webpackChunkName: \"FourOhFour\" */ '../components/molecules/FourOhFour.vue'),\n },\n {\n // Pages\n path: '/:slug',\n alias: [\n '/en/:slug',\n '/es/:slug',\n '/et/:slug',\n '/fr/:slug',\n '/et/:slug',\n // Important legacy paths\n '/resources/:slug',\n '/en/resources/:slug',\n '/resources/:slug/:slug',\n '/en/resources/:slug/:slug',\n ],\n component: () => import(/* webpackChunkName: \"pages\" */ '../components/templates/Post.vue'),\n },\n]\n\nconst router = new VueRouter({\n mode: 'history',\n base: process.env.BASE_URL,\n routes,\n scrollBehavior(to, from, savedPosition) {\n if (to.meta && to.meta.scroll === false\n && from.meta && from.meta.scroll === false) {\n return savedPosition\n }\n if (savedPosition) {\n return savedPosition\n }\n if (to.hash) {\n return { selector: to.hash }\n }\n return { x: 0, y: 0 }\n },\n})\n\nexport default router\n","// This is used for prerendering\n// https://markus.oberlehner.net/blog/how-to-pre-render-vue-powered-websites-with-webpack/\nexport default function injectInitialState(state) {\n const script = document.createElement('script')\n script.innerHTML = `window.__INITIAL_STATE__ = ${JSON.stringify(state)}`\n document.head.appendChild(script)\n}\n","import Vue from 'vue'\nimport VueMeta from 'vue-meta'\nimport VueLodash from 'vue-lodash'\nimport _ from 'lodash'\nimport App from './App.vue'\nimport router from './router'\nimport store from './store'\n\nimport injectInitialState from './utils/inject-initial-state'\n\nVue.config.productionTip = false\n\nconst app = new Vue({\n router,\n store,\n render: h => h(App),\n})\n\n// https://markus.oberlehner.net/blog/how-to-pre-render-vue-powered-websites-with-webpack/\n\n// During pre-rendering the initial state is\n// injected into the global scope, here we\n// fill the store with the initial state.\nif ((window as any).__INITIAL_STATE__) store.replaceState((window as any).__INITIAL_STATE__)\n\nrouter.beforeResolve(async (to, from, next) => {\n try {\n const components = router.getMatchedComponents(to)\n\n // By using `await` we make sure to wait\n // for the API request made by the\n // method to resolve before rendering the view.\n await Promise.all(components.map(x => (x as any).onUrlChange && (x as any).onUrlChange()))\n\n // The `injectInitialState()` function injects\n // the current state as a global variable\n // `__INITIAL_STATE__` if the page is currently\n // pre-rendered.\n if ((window as any).__PRERENDER_INJECTED) injectInitialState(store.state)\n } catch (error) {\n // This is the place for error handling in\n // case the API request fails for example.\n // console.log(error)\n }\n\n return next()\n})\n\napp.$mount('#app')\n\nVue.use(VueLodash, { lodash: _ })\nVue.use(VueMeta)\n","var map = {\n\t\"./anime.svg\": [\n\t\t\"702a\",\n\t\t\"chunk-2d0d5bfe\"\n\t],\n\t\"./apple.svg\": [\n\t\t\"3376\",\n\t\t\"chunk-2d0b9635\"\n\t],\n\t\"./arrow-up.svg\": [\n\t\t\"4a80\",\n\t\t\"chunk-2d0cb75b\"\n\t],\n\t\"./arrow.svg\": [\n\t\t\"d4d9\",\n\t\t\"chunk-2d21e59b\"\n\t],\n\t\"./article-black.svg\": [\n\t\t\"8cc7\",\n\t\t\"chunk-2d0e9595\"\n\t],\n\t\"./article-white.svg\": [\n\t\t\"e8f5\",\n\t\t\"chunk-2d226938\"\n\t],\n\t\"./article.svg\": [\n\t\t\"8fe3\",\n\t\t\"chunk-2d0ea112\"\n\t],\n\t\"./audio-black.svg\": [\n\t\t\"dc95\",\n\t\t\"chunk-2d2290d1\"\n\t],\n\t\"./audio-white.svg\": [\n\t\t\"b3f4\",\n\t\t\"chunk-2d20f955\"\n\t],\n\t\"./audio.svg\": [\n\t\t\"2cf7\",\n\t\t\"chunk-2d0bdbb8\"\n\t],\n\t\"./breaker.svg\": [\n\t\t\"93c9\",\n\t\t\"chunk-2d0e55c6\"\n\t],\n\t\"./burger.svg\": [\n\t\t\"6fbf\",\n\t\t\"chunk-2d0db82a\"\n\t],\n\t\"./castbox.svg\": [\n\t\t\"388d\",\n\t\t\"chunk-2d0ba947\"\n\t],\n\t\"./close.svg\": [\n\t\t\"bb7c\",\n\t\t\"chunk-2d21a442\"\n\t],\n\t\"./database-black.svg\": [\n\t\t\"6ab5\",\n\t\t\"chunk-2d0da534\"\n\t],\n\t\"./database-white.svg\": [\n\t\t\"72fb\",\n\t\t\"chunk-2d0d69cd\"\n\t],\n\t\"./database.svg\": [\n\t\t\"38e3\",\n\t\t\"chunk-2d0bae89\"\n\t],\n\t\"./ddk-logo.svg\": [\n\t\t\"c7db\",\n\t\t\"chunk-2d217ca8\"\n\t],\n\t\"./download.svg\": [\n\t\t\"8215\",\n\t\t\"chunk-2d0dd794\"\n\t],\n\t\"./eclipse.svg\": [\n\t\t\"4ea8\",\n\t\t\"chunk-2d0ccb5e\"\n\t],\n\t\"./embed.svg\": [\n\t\t\"5774\",\n\t\t\"chunk-2d0c8df5\"\n\t],\n\t\"./facebook.svg\": [\n\t\t\"7e4b\",\n\t\t\"chunk-2d0e2332\"\n\t],\n\t\"./film-black.svg\": [\n\t\t\"4bf0\",\n\t\t\"chunk-2d0cc0ae\"\n\t],\n\t\"./film-white.svg\": [\n\t\t\"262b\",\n\t\t\"chunk-2d0b2caa\"\n\t],\n\t\"./film.svg\": [\n\t\t\"7fbb\",\n\t\t\"chunk-2d0e2c85\"\n\t],\n\t\"./filmCollection.svg\": [\n\t\t\"dc9c\",\n\t\t\"chunk-2d2290ff\"\n\t],\n\t\"./google.svg\": [\n\t\t\"4460\",\n\t\t\"chunk-2d0c0e30\"\n\t],\n\t\"./guide-black.svg\": [\n\t\t\"ab26\",\n\t\t\"chunk-2d212f1b\"\n\t],\n\t\"./guide-white.svg\": [\n\t\t\"df7b\",\n\t\t\"chunk-2d229c03\"\n\t],\n\t\"./guide.svg\": [\n\t\t\"aafb\",\n\t\t\"chunk-2d2131d2\"\n\t],\n\t\"./iheartradio.svg\": [\n\t\t\"fe81\",\n\t\t\"chunk-2d2380ee\"\n\t],\n\t\"./interview-black.svg\": [\n\t\t\"0106\",\n\t\t\"chunk-2d0a30bd\"\n\t],\n\t\"./interview-white.svg\": [\n\t\t\"46e7\",\n\t\t\"chunk-2d0c1b6a\"\n\t],\n\t\"./interview.svg\": [\n\t\t\"9e82\",\n\t\t\"chunk-2d0f0c3c\"\n\t],\n\t\"./logo.svg\": [\n\t\t\"a5f7\",\n\t\t\"chunk-2d208c7b\"\n\t],\n\t\"./overcast.svg\": [\n\t\t\"4769\",\n\t\t\"chunk-2d0c197c\"\n\t],\n\t\"./play.svg\": [\n\t\t\"af53\",\n\t\t\"chunk-2d213e79\"\n\t],\n\t\"./playerfm.svg\": [\n\t\t\"9379\",\n\t\t\"chunk-2d0e5072\"\n\t],\n\t\"./pocketcasts.svg\": [\n\t\t\"bff0\",\n\t\t\"chunk-2d21b8c4\"\n\t],\n\t\"./podcast-black.svg\": [\n\t\t\"33d6\",\n\t\t\"chunk-2d0b9ba8\"\n\t],\n\t\"./podcast-white.svg\": [\n\t\t\"2a9a\",\n\t\t\"chunk-2d0bceed\"\n\t],\n\t\"./podcast.svg\": [\n\t\t\"0c50\",\n\t\t\"chunk-2d0aed04\"\n\t],\n\t\"./podcastaddict.svg\": [\n\t\t\"bec7\",\n\t\t\"chunk-2d21b4ad\"\n\t],\n\t\"./radiopublic.svg\": [\n\t\t\"a667\",\n\t\t\"chunk-2d208a6c\"\n\t],\n\t\"./rss.svg\": [\n\t\t\"c04a\",\n\t\t\"chunk-2d215c90\"\n\t],\n\t\"./search-icon.svg\": [\n\t\t\"24ff\",\n\t\t\"chunk-2d0b2b78\"\n\t],\n\t\"./search-menu-icon.svg\": [\n\t\t\"33e3\",\n\t\t\"chunk-2d0b9bc4\"\n\t],\n\t\"./share.svg\": [\n\t\t\"940a\",\n\t\t\"chunk-2d0e5382\"\n\t],\n\t\"./sketch-black.svg\": [\n\t\t\"19d1\",\n\t\t\"chunk-2d0ac96b\"\n\t],\n\t\"./sketch-white.svg\": [\n\t\t\"e929\",\n\t\t\"chunk-2d2266b1\"\n\t],\n\t\"./sketch.svg\": [\n\t\t\"835f\",\n\t\t\"chunk-2d0ddc02\"\n\t],\n\t\"./spotify.svg\": [\n\t\t\"37d7\",\n\t\t\"chunk-2d0baaad\"\n\t],\n\t\"./stitcher.svg\": [\n\t\t\"efe5\",\n\t\t\"chunk-2d2315c7\"\n\t],\n\t\"./talk-black.svg\": [\n\t\t\"d557\",\n\t\t\"chunk-2d21e3a9\"\n\t],\n\t\"./talk-white.svg\": [\n\t\t\"3406\",\n\t\t\"chunk-2d0b991d\"\n\t],\n\t\"./talk.svg\": [\n\t\t\"1d46\",\n\t\t\"chunk-2d0b650b\"\n\t],\n\t\"./tool-black.svg\": [\n\t\t\"4dd0\",\n\t\t\"chunk-2d0cc7f2\"\n\t],\n\t\"./tool-white.svg\": [\n\t\t\"34a0\",\n\t\t\"chunk-2d0b9f06\"\n\t],\n\t\"./tool.svg\": [\n\t\t\"e461\",\n\t\t\"chunk-2d225460\"\n\t],\n\t\"./ttc-logo.svg\": [\n\t\t\"c051\",\n\t\t\"chunk-2d215c7f\"\n\t],\n\t\"./twitter.svg\": [\n\t\t\"5a0b\",\n\t\t\"chunk-2d0d2af4\"\n\t],\n\t\"./warning.svg\": [\n\t\t\"45a1\",\n\t\t\"chunk-2d0c1727\"\n\t],\n\t\"./workshop-black.svg\": [\n\t\t\"f6a4\",\n\t\t\"chunk-2d22d579\"\n\t],\n\t\"./workshop-white.svg\": [\n\t\t\"a555\",\n\t\t\"chunk-2d20868a\"\n\t],\n\t\"./workshop.svg\": [\n\t\t\"4c59\",\n\t\t\"chunk-2d0cbe89\"\n\t],\n\t\"./x.svg\": [\n\t\t\"2f4c\",\n\t\t\"chunk-2d0be119\"\n\t]\n};\nfunction webpackAsyncContext(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\treturn Promise.resolve().then(function() {\n\t\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\t\te.code = 'MODULE_NOT_FOUND';\n\t\t\tthrow e;\n\t\t});\n\t}\n\n\tvar ids = map[req], id = ids[0];\n\treturn __webpack_require__.e(ids[1]).then(function() {\n\t\treturn __webpack_require__.t(id, 7);\n\t});\n}\nwebpackAsyncContext.keys = function webpackAsyncContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackAsyncContext.id = \"f166\";\nmodule.exports = webpackAsyncContext;"],"sourceRoot":""}