{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/mixins/getResource.mixin.js","webpack:///./src/mixins/icons.mixin.js","webpack:///./src/mixins/gameTitle.mixin.js","webpack:///./src/mixins/markdownEditor.mixin.js","webpack:///./src/mixins/auth.mixin.js","webpack:///./src/mixins/releases.mixin.js","webpack:///./src/store/alert.module.js","webpack:///./src/store/authentication.module.js","webpack:///./src/store/users.module.js","webpack:///./src/store/games.module.js","webpack:///./src/store/index.js","webpack:///./node_modules/moment/locale sync ^\\.\\/.*$","webpack:///./src/App.vue?b6b0","webpack:///./src/components/Notification.vue?848f","webpack:///src/components/Notification.vue","webpack:///./src/components/Notification.vue?aa79","webpack:///./src/components/Notification.vue","webpack:///src/App.vue","webpack:///./src/App.vue?1160","webpack:///./src/App.vue","webpack:///./src/main.js","webpack:///./src/components/Notification.vue?3d35","webpack:///./src/components/layout/Header.vue?10db","webpack:///src/components/layout/Header.vue","webpack:///./src/components/layout/Header.vue?2022","webpack:///./src/components/layout/Header.vue","webpack:///./src/assets/logo.svg","webpack:///./src/components/layout/Footer.vue?369e","webpack:///src/components/layout/Footer.vue","webpack:///./src/components/layout/Footer.vue?5bbf","webpack:///./src/components/layout/Footer.vue","webpack:///./src/router/routes.js","webpack:///./src/router/index.js","webpack:///./src/utilities/axios.js","webpack:///./src/services/user.service.js","webpack:///./src/services/platform.service.js","webpack:///./src/services/developer.service.js","webpack:///./src/services/publisher.service.js","webpack:///./src/services/region.service.js","webpack:///./src/services/dateType.service.js","webpack:///./src/services/genre.service.js","webpack:///./src/services/game.service.js","webpack:///./src/services/library.service.js","webpack:///./src/services/review.service.js","webpack:///./src/services/recommendation.service.js","webpack:///./src/services/playStatus.service.js","webpack:///./src/services/home.service.js","webpack:///./src/services/forums/tag.service.js","webpack:///./src/services/forums/discussion.service.js","webpack:///./src/services/forums/post.service.js","webpack:///./src/services/release.service.js","webpack:///./src/services/admin.service.js"],"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","installedCssChunks","jsonpScriptSrc","p","exports","module","l","e","promises","cssChunks","Promise","resolve","reject","href","fullhref","existingLinkTags","document","getElementsByTagName","tag","dataHref","getAttribute","rel","existingStyleTags","linkTag","createElement","type","onload","onerror","event","request","target","src","err","Error","code","parentNode","removeChild","head","appendChild","then","installedChunkData","promise","onScriptComplete","script","charset","timeout","nc","setAttribute","error","clearTimeout","chunk","errorType","realSrc","message","name","undefined","setTimeout","all","m","c","d","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","oe","console","jsonpArray","window","oldJsonpFunction","slice","md","require","getResourceMixin","loading","editing","methods","compiledMarkdown","render","watch","handler","this","getData","immediate","iconsMixin","getUserAvatar","user","avatar","store","state","userAvatarURL","getUserBanner","banner","userBannerURL","getCurrentUserAvatar","currentUser","authentication","getCurrentUserBanner","getUserBannerStyle","backgroundImage","backgroundSize","backgroundPosition","backgroundRepeat","getGameIcon","game","icon","gameIconURL","getGameBanner","gameBannerURL","getGameBannerStyle","backgroundAttachment","gameTitleMixin","getTitle","title","release","alternate_title","getRecommendedTitle","recommended_release","markdownEditorMixin","editorConfig","status","authMixin","getCurrentUser","currentUserIsAdmin","currentUserEquals","id","moment","releasesMixin","hasReleased","dateType","date_type","format","releaseDate","date","currentMoment","isAfter","alert","namespaced","actions","success","commit","clear","mutations","JSON","parse","localStorage","getItem","initialState","loggedIn","login","dispatch","email","password","userService","response","router","root","logout","register","username","password_confirmation","recaptchaToken","forgotPassword","resetPassword","token","verifyEmail","expires","signature","updateUser","registrationSuccess","registrationFailure","loginRequest","loggingIn","loginSuccess","loginFailure","users","getAll","getAllRequest","getAllSuccess","items","getAllFailure","games","filters","genres","platforms","developers","publishers","score","search","sort","updateFilters","clearFilters","updateSearch","updateScore","updateGenres","updatePlatforms","updateDevelopers","updatePublishers","updateSort","Vue","use","Vuex","cdnURL","process","Store","map","webpackContext","req","webpackContextResolve","keys","_vm","_h","$createElement","_c","_self","attrs","$route","meta","plainLayout","_e","_v","_s","staticRenderFns","class","_t","props","String","required","show","hide","created","component","config","productionTip","ValidationProvider","ValidationObserver","Paginate","Multiselect","InfiniteLoading","Carousel3d","VueScrollTo","filter","datetype","number","numbro","output","mantissa","spaceSeparated","totalLength","average","thousandSeparated","timezone","utc","tz","fromNow","local","string","substring","h","App","$mount","staticClass","background","open","directives","rawName","expression","on","$event","indexOf","_k","keyCode","gamesDropdown","nativeOn","closeGamesDropdown","communityDropdown","closeCommunityDropdown","domProps","submitSearch","composing","userDropdown","params","closeUserDropdown","block","hidden","mixins","onClickaway","default","searchEnabled","Boolean","computed","$store","$router","currentYear","roles","Admin","routes","path","beforeEnter","to","from","next","authorize","requiresGuest","children","redirect","VueRouter","linkActiveClass","base","beforeEach","email_verified_at","query","returnUrl","hasRole","rolenames","some","item","includes","afterEach","ax","instance","baseURL","defaults","headers","common","withCredentials","interceptors","error_code","route_name","currentRoute","axios","resendVerification","getFollowers","getFollowing","patchDetails","patchAvatar","patchBanner","patchPassword","getFollowStatus","follow","getFavourites","getGameFavourite","getGameStatus","rootURL","post","setItem","stringify","removeItem","errors","catch","errorMessage","statusText","page","about_me","location","gender","birthday","patch","platformService","getByPage","put","deleteResource","resource","delete","developerService","publisherService","regionService","dateTypeService","genreService","gameService","entries","val","join","libraryService","getByUser","getByGameAndUser","getByUserAndStatus","getRecentForGame","playStatusId","reviewService","getByGameAndPage","getByUserAndPage","like","dislike","getUserSentiment","recommendationService","playStatusService","homeService","getFeatured","getTrending","getUserReview","getUserRecommendation","getStats","getUserActivity","tagService","discussionService","getPostsByPage","addPost","toggleLike","toggleSubscribe","param","postService","find","releaseService","getByGame","favourite","unfavourite","adminService","getDashboard"],"mappings":"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","file":"js/app.fb7834f6.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 CSS chunks\n \tvar installedCssChunks = {\n \t\t\"app\": 0\n \t}\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/\" + ({\"auth\":\"auth\",\"settings\":\"settings\",\"games\":\"games\",\"forums\":\"forums\",\"user\":\"user\",\"site\":\"site\"}[chunkId]||chunkId) + \".\" + {\"auth\":\"32ce5a63\",\"chunk-00b47fcc\":\"89488a24\",\"chunk-2d0a31d6\":\"08921a95\",\"chunk-2d209743\":\"fe9a43e5\",\"chunk-2d20f308\":\"f4a8295d\",\"chunk-2d216fb2\":\"f510c761\",\"chunk-2d231548\":\"68217638\",\"chunk-013c587c\":\"a88baf53\",\"settings\":\"cda7885c\",\"chunk-29ff2d2c\":\"157f0e0a\",\"chunk-2d0be333\":\"99e6109a\",\"chunk-c689420c\":\"93d3e6da\",\"chunk-4ad51f36\":\"1b7cc0c3\",\"games\":\"8ba813a6\",\"chunk-54c1c0b2\":\"f09db383\",\"chunk-79ad720e\":\"9ade0b38\",\"chunk-0f4823b3\":\"2af7216a\",\"chunk-ffe3ff5c\":\"7e8066d5\",\"forums\":\"a786397d\",\"chunk-3a3d7d3e\":\"280e6503\",\"chunk-42916222\":\"de27bf16\",\"chunk-a8b74fc8\":\"c684dc0f\",\"user\":\"a4eebe49\",\"chunk-4af5d559\":\"6e79c453\",\"chunk-5939c428\":\"2de51bb7\",\"chunk-681e84ab\":\"56729443\",\"chunk-70d6dfe7\":\"08a9d478\",\"chunk-211b20ed\":\"4479b738\",\"chunk-2fda0646\":\"271e4581\",\"chunk-93cbb034\":\"31929a68\",\"site\":\"7dda0520\"}[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// mini-css-extract-plugin CSS loading\n \t\tvar cssChunks = {\"auth\":1,\"chunk-00b47fcc\":1,\"chunk-013c587c\":1,\"settings\":1,\"chunk-29ff2d2c\":1,\"chunk-c689420c\":1,\"chunk-4ad51f36\":1,\"games\":1,\"chunk-54c1c0b2\":1,\"chunk-79ad720e\":1,\"chunk-0f4823b3\":1,\"chunk-ffe3ff5c\":1,\"forums\":1,\"chunk-3a3d7d3e\":1,\"chunk-42916222\":1,\"chunk-a8b74fc8\":1,\"user\":1,\"chunk-4af5d559\":1,\"chunk-5939c428\":1,\"chunk-70d6dfe7\":1,\"chunk-211b20ed\":1,\"chunk-2fda0646\":1,\"chunk-93cbb034\":1,\"site\":1};\n \t\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n \t\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n \t\t\tpromises.push(installedCssChunks[chunkId] = new Promise(function(resolve, reject) {\n \t\t\t\tvar href = \"css/\" + ({\"auth\":\"auth\",\"settings\":\"settings\",\"games\":\"games\",\"forums\":\"forums\",\"user\":\"user\",\"site\":\"site\"}[chunkId]||chunkId) + \".\" + {\"auth\":\"5cfcee6b\",\"chunk-00b47fcc\":\"3260cf6a\",\"chunk-2d0a31d6\":\"31d6cfe0\",\"chunk-2d209743\":\"31d6cfe0\",\"chunk-2d20f308\":\"31d6cfe0\",\"chunk-2d216fb2\":\"31d6cfe0\",\"chunk-2d231548\":\"31d6cfe0\",\"chunk-013c587c\":\"1416b84c\",\"settings\":\"b974bbf9\",\"chunk-29ff2d2c\":\"f9b863c6\",\"chunk-2d0be333\":\"31d6cfe0\",\"chunk-c689420c\":\"b0f0193e\",\"chunk-4ad51f36\":\"bd680f54\",\"games\":\"eabc15a1\",\"chunk-54c1c0b2\":\"d301fd0e\",\"chunk-79ad720e\":\"60058230\",\"chunk-0f4823b3\":\"d9672eb4\",\"chunk-ffe3ff5c\":\"d9672eb4\",\"forums\":\"fd3293ac\",\"chunk-3a3d7d3e\":\"f9b863c6\",\"chunk-42916222\":\"f9b863c6\",\"chunk-a8b74fc8\":\"5cfcee6b\",\"user\":\"695f9d10\",\"chunk-4af5d559\":\"f9b863c6\",\"chunk-5939c428\":\"f9b863c6\",\"chunk-681e84ab\":\"31d6cfe0\",\"chunk-70d6dfe7\":\"83c482be\",\"chunk-211b20ed\":\"fd444a43\",\"chunk-2fda0646\":\"fd444a43\",\"chunk-93cbb034\":\"053bd991\",\"site\":\"9cfe59d4\"}[chunkId] + \".css\";\n \t\t\t\tvar fullhref = __webpack_require__.p + href;\n \t\t\t\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n \t\t\t\tfor(var i = 0; i < existingLinkTags.length; i++) {\n \t\t\t\t\tvar tag = existingLinkTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n \t\t\t\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return resolve();\n \t\t\t\t}\n \t\t\t\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n \t\t\t\tfor(var i = 0; i < existingStyleTags.length; i++) {\n \t\t\t\t\tvar tag = existingStyleTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\");\n \t\t\t\t\tif(dataHref === href || dataHref === fullhref) return resolve();\n \t\t\t\t}\n \t\t\t\tvar linkTag = document.createElement(\"link\");\n \t\t\t\tlinkTag.rel = \"stylesheet\";\n \t\t\t\tlinkTag.type = \"text/css\";\n \t\t\t\tlinkTag.onload = resolve;\n \t\t\t\tlinkTag.onerror = function(event) {\n \t\t\t\t\tvar request = event && event.target && event.target.src || fullhref;\n \t\t\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + request + \")\");\n \t\t\t\t\terr.code = \"CSS_CHUNK_LOAD_FAILED\";\n \t\t\t\t\terr.request = request;\n \t\t\t\t\tdelete installedCssChunks[chunkId]\n \t\t\t\t\tlinkTag.parentNode.removeChild(linkTag)\n \t\t\t\t\treject(err);\n \t\t\t\t};\n \t\t\t\tlinkTag.href = fullhref;\n\n \t\t\t\tvar head = document.getElementsByTagName(\"head\")[0];\n \t\t\t\thead.appendChild(linkTag);\n \t\t\t}).then(function() {\n \t\t\t\tinstalledCssChunks[chunkId] = 0;\n \t\t\t}));\n \t\t}\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","var md = require(\"markdown-it\")();\n\nexport const getResourceMixin = {\n data () {\n return {\n loading: false,\n data: null,\n editing: false,\n }\n },\n methods: {\n compiledMarkdown (data) {\n return md.render(data);\n },\n },\n watch: {\n '$route.params': {\n handler() {\n this.getData()\n },\n immediate: true,\n }\n },\n}\n","import store from '@/store'\n\n\nexport const iconsMixin = {\n methods: {\n getUserAvatar (user) {\n if (user && user.avatar) {\n return (store.state.userAvatarURL + user.avatar);\n } else {\n return store.state.userAvatarURL + \"default.jpg\";\n }\n },\n getUserBanner (user) {\n if (user && user.banner) {\n return (store.state.userBannerURL + user.banner);\n } else {\n return '';\n }\n },\n getCurrentUserAvatar() {\n const currentUser = store.state.authentication.user ? store.state.authentication.user : null\n return this.getUserAvatar(currentUser);\n },\n getCurrentUserBanner() {\n const currentUser = store.state.authentication.user ? store.state.authentication.user : null\n return this.getUserBanner(currentUser);\n },\n getUserBannerStyle(banner) {\n if (banner) {\n return {\n backgroundImage:\n \"linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)), url(\" + store.state.userBannerURL + banner + \")\",\n backgroundSize: \"cover\",\n backgroundPosition: \"center\",\n backgroundRepeat: \"no-repeat\",\n };\n }\n return {}\n },\n getGameIcon (game) {\n if (game && game.icon) {\n return (store.state.gameIconURL + game.icon);\n } else {\n return '';\n }\n },\n getGameBanner (game) {\n if (game && game.banner) {\n return (store.state.gameBannerURL + game.banner);\n } else {\n return '';\n }\n },\n getGameBannerStyle(banner) {\n return {\n backgroundImage:\n \"linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)), url(\" + store.state.gameBannerURL + banner + \")\",\n backgroundSize: \"cover\",\n backgroundPosition: \"center\",\n backgroundRepeat: \"no-repeat\",\n backgroundAttachment: \"fixed\"\n };\n }\n }\n}\n","export const gameTitleMixin = {\n methods: {\n getTitle(data) {\n var title = data.release.alternate_title\n ? data.release.alternate_title\n : data.release.game.title;\n return title;\n },\n getRecommendedTitle(data) {\n var title = data.recommended_release.alternate_title\n ? data.recommended_release.alternate_title\n : data.recommended_release.game.title;\n return title;\n }\n }\n}\n","export const markdownEditorMixin = {\n data () {\n return {\n editorConfig: {\n status: false,\n }\n }\n },\n}\n","import store from '@/store'\n\nexport const authMixin = {\n methods: {\n getCurrentUser() {\n const currentUser = store.state.authentication.user ? store.state.authentication.user : null\n return currentUser;\n },\n currentUserIsAdmin() {\n // const currentUser = store.state.authentication.user ? store.state.authentication.user : null\n // return currentUser;\n },\n currentUserEquals(user) {\n const currentUser = store.state.authentication.user\n if (!currentUser) {\n return false;\n }\n if (currentUser.id == user.id) {\n return true;\n }\n }\n }\n}\n","var moment = require('moment');\n\nexport const releasesMixin = {\n methods: {\n hasReleased(release) {\n let hasReleased = true;\n let dateType = release.date_type ? release.date_type.format : 'Y-m-d';\n \n const releaseDate = moment(release.date);\n const currentMoment = moment();\n \n switch(dateType) {\n case 'TBD':\n hasReleased = false;\n break;\n case 'Y':\n if ( releaseDate.isAfter(currentMoment, 'year') )\n hasReleased = false\n break;\n case 'Y-m':\n if ( releaseDate.isAfter(currentMoment, 'month') )\n hasReleased = false\n break;\n case 'Y-m-d':\n if ( releaseDate.isAfter(currentMoment, 'day') )\n hasReleased = false\n break;\n }\n\n return hasReleased;\n },\n },\n}\n","export const alert = {\n namespaced: true,\n state: {\n type: null,\n message: null\n },\n actions: {\n success({ commit }, message) {\n commit('success', message);\n },\n error({ commit }, message) {\n commit('error', message);\n },\n clear({ commit }) {\n commit('clear');\n }\n },\n mutations: {\n success(state, message) {\n state.type = 'alert-success';\n state.message = message;\n },\n error(state, message) {\n state.type = 'alert-danger';\n state.message = message;\n },\n clear(state) {\n state.type = null;\n state.message = null;\n }\n }\n}\n","import { userService } from '@/services';\nimport router from '@/router';\n\nconst user = JSON.parse(localStorage.getItem('user'));\nconst initialState = user\n ? { status: { loggedIn: true }, user: user }\n : { status: {}, user: null };\n\nexport const authentication = {\n namespaced: true,\n state: initialState,\n actions: {\n login({ dispatch, commit }, { email, password }) {\n commit('loginRequest', { email });\n userService.login(email, password)\n .then(\n response => {\n commit('loginSuccess', response.data);\n router.push('/');\n },\n error => {\n commit('loginFailure');\n dispatch('alert/error', error.message, { root: true });\n }\n );\n },\n logout({ dispatch, commit }) {\n userService.logout()\n .then(\n response => commit('logout'),\n error => dispatch('alert/error', error.message, { root: true })\n );\n },\n register({ dispatch, commit }, { email, username, password, password_confirmation, recaptchaToken }) {\n return new Promise((resolve, reject) => {\n userService.register(email, username, password, password_confirmation, recaptchaToken)\n .then(\n response => {\n commit('registrationSuccess', response.data);\n dispatch('alert/success', response.message, { root: true });\n router.push('/');\n resolve(response);\n },\n error => {\n commit('registrationFailure');\n dispatch('alert/error', error.message, { root: true });\n reject(error);\n }\n );\n });\n },\n forgotPassword({ dispatch }, { email }) {\n userService.forgotPassword(email)\n .then(\n response => dispatch('alert/success', response.message, { root: true }),\n error => dispatch('alert/error', error.message, { root: true })\n );\n },\n resetPassword({ dispatch, commit }, { token, email, password, password_confirmation }) {\n userService.resetPassword(token, email, password, password_confirmation)\n .then(\n response => {\n commit('loginSuccess', response.data);\n dispatch('alert/success', 'Your password has been reset!', { root: true });\n router.push('/');\n },\n error => {\n commit('loginFailure');\n dispatch('alert/error', error.message, { root: true });\n }\n );\n },\n verifyEmail({ dispatch, commit }, { id, token, expires, signature }) {\n userService.verifyEmail(id, token, expires, signature)\n .then(\n response => {\n commit('loginSuccess', response.data);\n dispatch('alert/success', 'Your email has been verified!', { root: true });\n router.push('/');\n },\n error => {\n commit('loginFailure');\n dispatch('alert/error', error.message, { root: true });\n }\n );\n },\n updateUser({ commit }, user) {\n commit('updateUser', user);\n },\n },\n mutations: {\n registrationSuccess(state, user) {\n state.status = { loggedIn: true };\n state.user = user;\n },\n registrationFailure(state) {\n state.status = {};\n state.user = null;\n },\n loginRequest(state, user) {\n state.status = { loggingIn: true };\n state.status = { loggedIn: false };\n state.user = user;\n },\n loginSuccess(state, user) {\n state.status = { loggingIn: false };\n state.status = { loggedIn: true };\n state.user = user;\n },\n loginFailure(state) {\n state.status = {};\n state.user = null;\n },\n logout(state) {\n state.status = {};\n state.user = null;\n },\n updateUser(state, user) {\n state.user = user;\n },\n }\n}\n","import { userService } from '@/services';\n\nexport const users = {\n namespaced: true,\n state: {\n all: {}\n },\n actions: {\n getAll({ commit }) {\n commit('getAllRequest');\n\n userService.getAll()\n .then(\n users => commit('getAllSuccess', users),\n error => commit('getAllFailure', error)\n );\n }\n },\n mutations: {\n getAllRequest(state) {\n state.all = { loading: true };\n },\n getAllSuccess(state, users) {\n state.all = { items: users };\n },\n getAllFailure(state, error) {\n state.all = { error };\n }\n }\n}\n","export const games = {\n namespaced: true,\n state: {\n filters: {\n genres: [],\n platforms: [],\n developers: [],\n publishers: [],\n score: 0,\n search: '',\n sort: 'popular'\n }\n },\n actions: {\n updateFilters({ commit }, filters) {\n commit('updateFilters', filters);\n },\n clearFilters({ commit }) {\n commit('clearFilters');\n },\n updateSearch({ commit }, { search }) {\n commit('updateSearch', search);\n },\n updateScore({ commit }, { score }) {\n commit('updateScore', score);\n },\n updateGenres({ commit }, { genres }) {\n commit('updateGenres', genres);\n },\n updatePlatforms({ commit }, { platforms }) {\n commit('updatePlatforms', platforms);\n },\n updateDevelopers({ commit }, { developers }) {\n commit('updateDevelopers', developers);\n },\n updatePublishers({ commit }, { publishers }) {\n commit('updatePublishers', publishers);\n },\n updateSort({ commit }, { sort }) {\n commit('updateSort', sort);\n },\n },\n mutations: {\n updateFilters(state, filters) {\n state.filters = filters;\n },\n clearFilters(state) {\n state.filters = {\n genres: [],\n platforms: [],\n developers: [],\n publishers: [],\n score: 0,\n search: '',\n sort: 'popular'\n };\n },\n updateSearch(state, search) {\n state.filters.search = search;\n },\n updateScore(state, score) {\n state.filters.score = score;\n },\n updateGenres(state, genres) {\n state.filters.genres = genres;\n },\n updatePlatforms(state, platforms) {\n state.filters.platforms = platforms;\n },\n updateDevelopers(state, developers) {\n state.filters.developers = developers;\n },\n updatePublishers(state, publishers) {\n state.filters.publishers = publishers;\n },\n updateSort(state, sort) {\n state.filters.sort = sort;\n },\n }\n}\n","import Vue from 'vue'\nimport Vuex from 'vuex'\n\nimport { alert } from './alert.module';\nimport { authentication } from './authentication.module';\nimport { users } from './users.module';\nimport { games } from './games.module';\n\nVue.use(Vuex)\n\nconst cdnURL = process.env.VUE_APP_STORAGE;\n\n// export const store = new Vuex.Store\nexport default new Vuex.Store({\n state: {\n cdnURL: cdnURL,\n userAvatarURL: cdnURL + 'users/avatars/',\n userBannerURL: cdnURL + 'users/banners/',\n gameIconURL: cdnURL + 'games/icons/',\n gameBannerURL: cdnURL + 'games/banners/'\n },\n mutations: {\n },\n actions: {\n },\n modules: {\n alert,\n authentication,\n users,\n games\n }\n})\n","var map = {\n\t\"./af\": \"2bfb\",\n\t\"./af.js\": \"2bfb\",\n\t\"./ar\": \"8e73\",\n\t\"./ar-dz\": \"a356\",\n\t\"./ar-dz.js\": \"a356\",\n\t\"./ar-kw\": \"423e\",\n\t\"./ar-kw.js\": \"423e\",\n\t\"./ar-ly\": \"1cfd\",\n\t\"./ar-ly.js\": \"1cfd\",\n\t\"./ar-ma\": \"0a84\",\n\t\"./ar-ma.js\": \"0a84\",\n\t\"./ar-sa\": \"8230\",\n\t\"./ar-sa.js\": \"8230\",\n\t\"./ar-tn\": \"6d83\",\n\t\"./ar-tn.js\": \"6d83\",\n\t\"./ar.js\": \"8e73\",\n\t\"./az\": \"485c\",\n\t\"./az.js\": \"485c\",\n\t\"./be\": \"1fc1\",\n\t\"./be.js\": \"1fc1\",\n\t\"./bg\": \"84aa\",\n\t\"./bg.js\": \"84aa\",\n\t\"./bm\": \"a7fa\",\n\t\"./bm.js\": \"a7fa\",\n\t\"./bn\": \"9043\",\n\t\"./bn.js\": \"9043\",\n\t\"./bo\": \"d26a\",\n\t\"./bo.js\": \"d26a\",\n\t\"./br\": \"6887\",\n\t\"./br.js\": \"6887\",\n\t\"./bs\": \"2554\",\n\t\"./bs.js\": \"2554\",\n\t\"./ca\": \"d716\",\n\t\"./ca.js\": \"d716\",\n\t\"./cs\": \"3c0d\",\n\t\"./cs.js\": \"3c0d\",\n\t\"./cv\": \"03ec\",\n\t\"./cv.js\": \"03ec\",\n\t\"./cy\": \"9797\",\n\t\"./cy.js\": \"9797\",\n\t\"./da\": \"0f14\",\n\t\"./da.js\": \"0f14\",\n\t\"./de\": \"b469\",\n\t\"./de-at\": \"b3eb\",\n\t\"./de-at.js\": \"b3eb\",\n\t\"./de-ch\": \"bb71\",\n\t\"./de-ch.js\": \"bb71\",\n\t\"./de.js\": \"b469\",\n\t\"./dv\": \"598a\",\n\t\"./dv.js\": \"598a\",\n\t\"./el\": \"8d47\",\n\t\"./el.js\": \"8d47\",\n\t\"./en-au\": \"0e6b\",\n\t\"./en-au.js\": \"0e6b\",\n\t\"./en-ca\": \"3886\",\n\t\"./en-ca.js\": \"3886\",\n\t\"./en-gb\": \"39a6\",\n\t\"./en-gb.js\": \"39a6\",\n\t\"./en-ie\": \"e1d3\",\n\t\"./en-ie.js\": \"e1d3\",\n\t\"./en-il\": \"7333\",\n\t\"./en-il.js\": \"7333\",\n\t\"./en-in\": \"ec2e\",\n\t\"./en-in.js\": \"ec2e\",\n\t\"./en-nz\": \"6f50\",\n\t\"./en-nz.js\": \"6f50\",\n\t\"./en-sg\": \"b7e9\",\n\t\"./en-sg.js\": \"b7e9\",\n\t\"./eo\": \"65db\",\n\t\"./eo.js\": \"65db\",\n\t\"./es\": \"898b\",\n\t\"./es-do\": \"0a3c\",\n\t\"./es-do.js\": \"0a3c\",\n\t\"./es-us\": \"55c9\",\n\t\"./es-us.js\": \"55c9\",\n\t\"./es.js\": \"898b\",\n\t\"./et\": \"ec18\",\n\t\"./et.js\": \"ec18\",\n\t\"./eu\": \"0ff2\",\n\t\"./eu.js\": \"0ff2\",\n\t\"./fa\": \"8df4\",\n\t\"./fa.js\": \"8df4\",\n\t\"./fi\": \"81e9\",\n\t\"./fi.js\": \"81e9\",\n\t\"./fil\": \"d69a\",\n\t\"./fil.js\": \"d69a\",\n\t\"./fo\": \"0721\",\n\t\"./fo.js\": \"0721\",\n\t\"./fr\": \"9f26\",\n\t\"./fr-ca\": \"d9f8\",\n\t\"./fr-ca.js\": \"d9f8\",\n\t\"./fr-ch\": \"0e49\",\n\t\"./fr-ch.js\": \"0e49\",\n\t\"./fr.js\": \"9f26\",\n\t\"./fy\": \"7118\",\n\t\"./fy.js\": \"7118\",\n\t\"./ga\": \"5120\",\n\t\"./ga.js\": \"5120\",\n\t\"./gd\": \"f6b4\",\n\t\"./gd.js\": \"f6b4\",\n\t\"./gl\": \"8840\",\n\t\"./gl.js\": \"8840\",\n\t\"./gom-deva\": \"aaf2\",\n\t\"./gom-deva.js\": \"aaf2\",\n\t\"./gom-latn\": \"0caa\",\n\t\"./gom-latn.js\": \"0caa\",\n\t\"./gu\": \"e0c5\",\n\t\"./gu.js\": \"e0c5\",\n\t\"./he\": \"c7aa\",\n\t\"./he.js\": \"c7aa\",\n\t\"./hi\": \"dc4d\",\n\t\"./hi.js\": \"dc4d\",\n\t\"./hr\": \"4ba9\",\n\t\"./hr.js\": \"4ba9\",\n\t\"./hu\": \"5b14\",\n\t\"./hu.js\": \"5b14\",\n\t\"./hy-am\": \"d6b6\",\n\t\"./hy-am.js\": \"d6b6\",\n\t\"./id\": \"5038\",\n\t\"./id.js\": \"5038\",\n\t\"./is\": \"0558\",\n\t\"./is.js\": \"0558\",\n\t\"./it\": \"6e98\",\n\t\"./it-ch\": \"6f12\",\n\t\"./it-ch.js\": \"6f12\",\n\t\"./it.js\": \"6e98\",\n\t\"./ja\": \"079e\",\n\t\"./ja.js\": \"079e\",\n\t\"./jv\": \"b540\",\n\t\"./jv.js\": \"b540\",\n\t\"./ka\": \"201b\",\n\t\"./ka.js\": \"201b\",\n\t\"./kk\": \"6d79\",\n\t\"./kk.js\": \"6d79\",\n\t\"./km\": \"e81d\",\n\t\"./km.js\": \"e81d\",\n\t\"./kn\": \"3e92\",\n\t\"./kn.js\": \"3e92\",\n\t\"./ko\": \"22f8\",\n\t\"./ko.js\": \"22f8\",\n\t\"./ku\": \"2421\",\n\t\"./ku.js\": \"2421\",\n\t\"./ky\": \"9609\",\n\t\"./ky.js\": \"9609\",\n\t\"./lb\": \"440c\",\n\t\"./lb.js\": \"440c\",\n\t\"./lo\": \"b29d\",\n\t\"./lo.js\": \"b29d\",\n\t\"./lt\": \"26f9\",\n\t\"./lt.js\": \"26f9\",\n\t\"./lv\": \"b97c\",\n\t\"./lv.js\": \"b97c\",\n\t\"./me\": \"293c\",\n\t\"./me.js\": \"293c\",\n\t\"./mi\": \"688b\",\n\t\"./mi.js\": \"688b\",\n\t\"./mk\": \"6909\",\n\t\"./mk.js\": \"6909\",\n\t\"./ml\": \"02fb\",\n\t\"./ml.js\": \"02fb\",\n\t\"./mn\": \"958b\",\n\t\"./mn.js\": \"958b\",\n\t\"./mr\": \"39bd\",\n\t\"./mr.js\": \"39bd\",\n\t\"./ms\": \"ebe4\",\n\t\"./ms-my\": \"6403\",\n\t\"./ms-my.js\": \"6403\",\n\t\"./ms.js\": \"ebe4\",\n\t\"./mt\": \"1b45\",\n\t\"./mt.js\": \"1b45\",\n\t\"./my\": \"8689\",\n\t\"./my.js\": \"8689\",\n\t\"./nb\": \"6ce3\",\n\t\"./nb.js\": \"6ce3\",\n\t\"./ne\": \"3a39\",\n\t\"./ne.js\": \"3a39\",\n\t\"./nl\": \"facd\",\n\t\"./nl-be\": \"db29\",\n\t\"./nl-be.js\": \"db29\",\n\t\"./nl.js\": \"facd\",\n\t\"./nn\": \"b84c\",\n\t\"./nn.js\": \"b84c\",\n\t\"./oc-lnc\": \"167b\",\n\t\"./oc-lnc.js\": \"167b\",\n\t\"./pa-in\": \"f3ff\",\n\t\"./pa-in.js\": \"f3ff\",\n\t\"./pl\": \"8d57\",\n\t\"./pl.js\": \"8d57\",\n\t\"./pt\": \"f260\",\n\t\"./pt-br\": \"d2d4\",\n\t\"./pt-br.js\": \"d2d4\",\n\t\"./pt.js\": \"f260\",\n\t\"./ro\": \"972c\",\n\t\"./ro.js\": \"972c\",\n\t\"./ru\": \"957c\",\n\t\"./ru.js\": \"957c\",\n\t\"./sd\": \"6784\",\n\t\"./sd.js\": \"6784\",\n\t\"./se\": \"ffff\",\n\t\"./se.js\": \"ffff\",\n\t\"./si\": \"eda5\",\n\t\"./si.js\": \"eda5\",\n\t\"./sk\": \"7be6\",\n\t\"./sk.js\": \"7be6\",\n\t\"./sl\": \"8155\",\n\t\"./sl.js\": \"8155\",\n\t\"./sq\": \"c8f3\",\n\t\"./sq.js\": \"c8f3\",\n\t\"./sr\": \"cf1e\",\n\t\"./sr-cyrl\": \"13e9\",\n\t\"./sr-cyrl.js\": \"13e9\",\n\t\"./sr.js\": \"cf1e\",\n\t\"./ss\": \"52bd\",\n\t\"./ss.js\": \"52bd\",\n\t\"./sv\": \"5fbd\",\n\t\"./sv.js\": \"5fbd\",\n\t\"./sw\": \"74dc\",\n\t\"./sw.js\": \"74dc\",\n\t\"./ta\": \"3de5\",\n\t\"./ta.js\": \"3de5\",\n\t\"./te\": \"5cbb\",\n\t\"./te.js\": \"5cbb\",\n\t\"./tet\": \"576c\",\n\t\"./tet.js\": \"576c\",\n\t\"./tg\": \"3b1b\",\n\t\"./tg.js\": \"3b1b\",\n\t\"./th\": \"10e8\",\n\t\"./th.js\": \"10e8\",\n\t\"./tl-ph\": \"0f38\",\n\t\"./tl-ph.js\": \"0f38\",\n\t\"./tlh\": \"cf75\",\n\t\"./tlh.js\": \"cf75\",\n\t\"./tr\": \"0e81\",\n\t\"./tr.js\": \"0e81\",\n\t\"./tzl\": \"cf51\",\n\t\"./tzl.js\": \"cf51\",\n\t\"./tzm\": \"c109\",\n\t\"./tzm-latn\": \"b53d\",\n\t\"./tzm-latn.js\": \"b53d\",\n\t\"./tzm.js\": \"c109\",\n\t\"./ug-cn\": \"6117\",\n\t\"./ug-cn.js\": \"6117\",\n\t\"./uk\": \"ada2\",\n\t\"./uk.js\": \"ada2\",\n\t\"./ur\": \"5294\",\n\t\"./ur.js\": \"5294\",\n\t\"./uz\": \"2e8c\",\n\t\"./uz-latn\": \"010e\",\n\t\"./uz-latn.js\": \"010e\",\n\t\"./uz.js\": \"2e8c\",\n\t\"./vi\": \"2921\",\n\t\"./vi.js\": \"2921\",\n\t\"./x-pseudo\": \"fd7e\",\n\t\"./x-pseudo.js\": \"fd7e\",\n\t\"./yo\": \"7f33\",\n\t\"./yo.js\": \"7f33\",\n\t\"./zh-cn\": \"5c3a\",\n\t\"./zh-cn.js\": \"5c3a\",\n\t\"./zh-hk\": \"49ab\",\n\t\"./zh-hk.js\": \"49ab\",\n\t\"./zh-mo\": \"3a6c\",\n\t\"./zh-mo.js\": \"3a6c\",\n\t\"./zh-tw\": \"90ea\",\n\t\"./zh-tw.js\": \"90ea\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"4678\";","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{attrs:{\"id\":\"app\"}},[(!_vm.$route.meta.plainLayout)?_c('div',[_c('transition',{attrs:{\"name\":\"fade\"}},[(_vm.alert.message)?_c('Notification',{attrs:{\"type\":_vm.alert.type}},[_vm._v(_vm._s(_vm.alert.message))]):_vm._e()],1),_c('Header'),_c('router-view'),_c('Footer')],1):_vm._e(),(_vm.$route.meta.plainLayout)?_c('div',[_c('transition',{attrs:{\"name\":\"fade\"}},[(_vm.alert.message)?_c('Notification',{attrs:{\"type\":_vm.alert.type}},[_vm._v(_vm._s(_vm.alert.message))]):_vm._e()],1),_c('router-view')],1):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('transition',{attrs:{\"name\":\"fade\"}},[(_vm.show)?_c('div',{class:(\"fixed z-50 right-0 bottom-0 mr-5 mb-5 p-4 rounded-md overflow-hidden shadow-xl transform transition-all \" + _vm.type)},[_vm._t(\"default\")],2):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Notification.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Notification.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Notification.vue?vue&type=template&id=9cb20948&scoped=true&\"\nimport script from \"./Notification.vue?vue&type=script&lang=js&\"\nexport * from \"./Notification.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Notification.vue?vue&type=style&index=0&id=9cb20948&lang=scss&scoped=true&\"\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 \"9cb20948\",\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../node_modules/cache-loader/dist/cjs.js??ref--12-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/cache-loader/dist/cjs.js??ref--0-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--12-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/cache-loader/dist/cjs.js??ref--0-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=33911ee9&\"\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 App from './App.vue'\nimport router from './router'\nimport store from './store'\nimport './assets/styles/main.scss'\n\n// Extensions\nimport { ValidationProvider, ValidationObserver } from 'vee-validate/dist/vee-validate.full.esm'\nimport Paginate from 'vuejs-paginate'\nimport Multiselect from 'vue-multiselect'\nimport moment from 'moment'\nimport numbro from 'numbro'\nimport InfiniteLoading from 'vue-infinite-loading'\nimport Carousel3d from 'vue-carousel-3d';\nimport VueScrollTo from 'vue-scrollto';\n\n// Config\nVue.config.productionTip = false\n\n// Register extensions\nVue.component('ValidationProvider', ValidationProvider)\nVue.component('ValidationObserver', ValidationObserver)\nVue.component('paginate', Paginate)\nVue.component('multiselect', Multiselect)\nVue.use(InfiniteLoading, { /* options */ });\nVue.use(Carousel3d);\nVue.use(VueScrollTo)\n\n// Filters\n// Date Filter\nVue.filter('dateFormat', function (date, datetype) {\n if(date)\n {\n if(!datetype) {\n datetype = 1;\n }\n switch(datetype) {\n case 1:\n return moment(date).format(\"MMM Do YYYY\");\n case 2:\n return moment(date).format(\"MMM YYYY\");\n case 3:\n return moment(date).format(\"YYYY\");\n default:\n return moment(date).format(\"MMM Do YYYY\");\n }\n }\n else\n {\n return \"TBD\";\n }\n})\n\n//Percentage Formating\nVue.filter('percentageFormat', function (number) {\n // const roundedNumber = Math.round(number);\n return numbro(number/100).format({output: \"percent\", mantissa: 0});\n})\n\nVue.filter('numberAverage', function (number) {\n // const roundedNumber = Math.round(number);\n return numbro(number).format({spaceSeparated: true, totalLength: 2, average: true});\n})\n\nVue.filter('commaSeparated', function (number) {\n // const roundedNumber = Math.round(number);\n return numbro(number).format({thousandSeparated: true});\n})\n\n//Date Formating (ex. 3 days ago)\nVue.filter('ago', function (date, user) {\n if(user) {\n if(user.timezone) {\n return moment.utc(date).tz(user.timezone).fromNow();\n }\n }\n return moment.utc(date).local().fromNow();\n})\n\n// \nVue.filter('detailed', function (date, user) {\n if(user) {\n if(user.timezone) {\n return moment.utc(date).tz(user.timezone).format(\"MMMM Do YYYY, h:mma Z\");\n }\n }\n return moment.utc(date).local().format(\"MMMM Do YYYY, h:mma Z\");\n})\n\nVue.filter('truncate', function (string, value) {\n if(string.length < value) { return string }\n return string.substring(0, value) + '...';\n})\n\n// Create Vue instance\nnew Vue({\n router,\n store,\n render: h => h(App)\n}).$mount('#app')\n","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Notification.vue?vue&type=style&index=0&id=9cb20948&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Notification.vue?vue&type=style&index=0&id=9cb20948&lang=scss&scoped=true&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('nav',{staticClass:\"py-0.5\",class:[_vm.background, _vm.open ? 'bg-gray-800' : '']},[_c('div',{staticClass:\"max-w-7xl mx-auto px-2 sm:px-4 lg:px-8\"},[_c('div',{staticClass:\"relative flex items-center justify-between h-16\"},[_c('div',{staticClass:\"flex items-center px-2 lg:px-0\"},[_c('div',{staticClass:\"flex-shrink-0\"},[_c('router-link',{staticClass:\"focus:outline-none\",attrs:{\"to\":{ name: 'Home' }}},[_c('img',{staticClass:\"block h-8 w-auto\",attrs:{\"src\":require(\"@/assets/logo.svg\"),\"alt\":\"Mythril.io\"}})])],1),_c('div',{staticClass:\"hidden lg:block lg:ml-5\"},[_c('div',{directives:[{name:\"on-clickaway\",rawName:\"v-on-clickaway\",value:(_vm.closeGamesDropdown),expression:\"closeGamesDropdown\"}],staticClass:\"relative inline-block text-left\",on:{\"keydown\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"escape\",undefined,$event.key,undefined)){ return null; }_vm.gamesDropdown = false}}},[_c('div',[_c('span',{staticClass:\"rounded-md shadow-sm\"},[_c('button',{staticClass:\"inline-flex justify-center w-full rounded-md border border-transparent px-4 py-2 text-sm leading-5 font-medium text-gray-300 hover:text-white focus:outline-none transition ease-in-out duration-150\",attrs:{\"type\":\"button\"},on:{\"click\":function($event){_vm.gamesDropdown = !_vm.gamesDropdown}}},[_vm._v(\" Games \"),_c('svg',{staticClass:\"-mr-1 ml-2 h-5 w-5\",attrs:{\"fill\":\"currentColor\",\"viewBox\":\"0 0 20 20\"}},[_c('path',{attrs:{\"fill-rule\":\"evenodd\",\"d\":\"M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z\",\"clip-rule\":\"evenodd\"}})])])])]),_c('transition',{attrs:{\"name\":\"fade\"}},[_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.gamesDropdown),expression:\"gamesDropdown\"}],staticClass:\"origin-top-left absolute left-0 mt-2 w-48 rounded-md shadow-lg\"},[_c('div',{staticClass:\"rounded-md bg-white shadow-xs\"},[_c('div',{staticClass:\"py-1\"},[_c('router-link',{staticClass:\"block px-4 py-2 text-sm leading-5 text-gray-700 hover:bg-gray-100 focus:outline-none focus:bg-gray-100 transition duration-150 ease-in-out\",attrs:{\"tag\":\"a\",\"to\":{ name: 'Games' }},nativeOn:{\"click\":function($event){return _vm.closeGamesDropdown($event)}}},[_vm._v(\"Browse Games\")])],1),_c('div',{staticClass:\"border-t border-gray-100\"}),_c('div',{staticClass:\"py-1\"},[_c('router-link',{staticClass:\"block px-4 py-2 text-sm leading-5 text-gray-700 hover:bg-gray-100 focus:outline-none focus:bg-gray-100 transition duration-150 ease-in-out\",attrs:{\"tag\":\"a\",\"to\":{ name: 'Reviews' }},nativeOn:{\"click\":function($event){return _vm.closeGamesDropdown($event)}}},[_vm._v(\"Reviews\")]),_c('router-link',{staticClass:\"block px-4 py-2 text-sm leading-5 text-gray-700 hover:bg-gray-100 focus:outline-none focus:bg-gray-100 transition duration-150 ease-in-out\",attrs:{\"tag\":\"a\",\"to\":{ name: 'Recommendations' }},nativeOn:{\"click\":function($event){return _vm.closeGamesDropdown($event)}}},[_vm._v(\"Recommendations\")])],1)])])])],1),_c('div',{directives:[{name:\"on-clickaway\",rawName:\"v-on-clickaway\",value:(_vm.closeCommunityDropdown),expression:\"closeCommunityDropdown\"}],staticClass:\"relative inline-block text-left\",on:{\"keydown\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"escape\",undefined,$event.key,undefined)){ return null; }_vm.communityDropdown = false}}},[_c('div',[_c('span',{staticClass:\"rounded-md shadow-sm\"},[_c('button',{staticClass:\"inline-flex justify-center w-full rounded-md border border-transparent px-4 py-2 text-sm leading-5 font-medium text-gray-300 hover:text-white focus:outline-none transition ease-in-out duration-150\",attrs:{\"type\":\"button\"},on:{\"click\":function($event){_vm.communityDropdown = !_vm.communityDropdown}}},[_vm._v(\" Community \"),_c('svg',{staticClass:\"-mr-1 ml-2 h-5 w-5\",attrs:{\"fill\":\"currentColor\",\"viewBox\":\"0 0 20 20\"}},[_c('path',{attrs:{\"fill-rule\":\"evenodd\",\"d\":\"M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z\",\"clip-rule\":\"evenodd\"}})])])])]),_c('transition',{attrs:{\"name\":\"fade\"}},[_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.communityDropdown),expression:\"communityDropdown\"}],staticClass:\"origin-top-left absolute left-0 mt-2 w-48 rounded-md shadow-lg\"},[_c('div',{staticClass:\"rounded-md bg-white shadow-xs\"},[_c('div',{staticClass:\"py-1\"},[_c('router-link',{staticClass:\"block px-4 py-2 text-sm leading-5 text-gray-700 hover:bg-gray-100 focus:outline-none focus:bg-gray-100 transition duration-150 ease-in-out\",attrs:{\"tag\":\"a\",\"to\":{ name: 'Forums' }},nativeOn:{\"click\":function($event){return _vm.closeCommunityDropdown($event)}}},[_vm._v(\"Forums\")])],1)])])])],1)])]),(_vm.searchEnabled)?_c('div',{staticClass:\"flex-1 flex justify-center px-2 lg:ml-6 lg:justify-end\"},[_c('div',{staticClass:\"max-w-lg w-full lg:max-w-xs\"},[_c('label',{staticClass:\"sr-only\",attrs:{\"for\":\"search\"}},[_vm._v(\"Search\")]),_c('div',{staticClass:\"relative\"},[_c('div',{staticClass:\"absolute inset-y-0 left-0 pl-3 flex items-center pointer-events-none\"},[_c('svg',{staticClass:\"h-5 w-5 text-gray-400\",attrs:{\"fill\":\"currentColor\",\"viewBox\":\"0 0 20 20\"}},[_c('path',{attrs:{\"fill-rule\":\"evenodd\",\"d\":\"M8 4a4 4 0 100 8 4 4 0 000-8zM2 8a6 6 0 1110.89 3.476l4.817 4.817a1 1 0 01-1.414 1.414l-4.816-4.816A6 6 0 012 8z\",\"clip-rule\":\"evenodd\"}})])]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.search),expression:\"search\"}],staticClass:\"block w-full pl-10 pr-3 py-2 border border-transparent rounded-md leading-5 bg-gray-700 placeholder-gray-400 focus:outline-none focus:bg-white sm:text-sm transition duration-150 ease-in-out\",attrs:{\"id\":\"search\",\"placeholder\":\"Search\"},domProps:{\"value\":(_vm.search)},on:{\"keyup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\")){ return null; }return _vm.submitSearch($event)},\"input\":function($event){if($event.target.composing){ return; }_vm.search=$event.target.value}}})])])]):_vm._e(),_c('div',{staticClass:\"flex lg:hidden\"},[_c('button',{staticClass:\"inline-flex items-center justify-center p-2 rounded-md text-gray-400 hover:text-white hover:bg-gray-700 focus:outline-none focus:bg-gray-700 focus:text-white transition duration-150 ease-in-out\",on:{\"click\":function($event){_vm.open = !_vm.open}}},[_c('svg',{staticClass:\"h-6 w-6\",attrs:{\"stroke\":\"currentColor\",\"fill\":\"none\",\"viewBox\":\"0 0 24 24\"}},[_c('path',{staticClass:\"inline-flex\",class:{'hidden': _vm.open, 'inline-flex': !_vm.open },attrs:{\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\",\"stroke-width\":\"2\",\"d\":\"M4 6h16M4 12h16M4 18h16\"}}),_c('path',{staticClass:\"inline-flex\",class:{'hidden': !_vm.open, 'inline-flex': _vm.open },attrs:{\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\",\"stroke-width\":\"2\",\"d\":\"M6 18L18 6M6 6l12 12\"}})])])]),_c('div',{staticClass:\"hidden lg:block lg:ml-4\"},[_c('div',{staticClass:\"flex items-center\"},[(!_vm.loggedIn && !_vm.user)?_c('div',{staticClass:\"flex-shrink-0\"},[_c('span',[_c('router-link',{staticClass:\"relative inline-flex items-center leading-5 button button-white\",attrs:{\"tag\":\"button\",\"to\":{ name: 'Login' },\"type\":\"button\"}},[_vm._v(\" Login \")])],1)]):_vm._e(),(!_vm.loggedIn && !_vm.user)?_c('div',{staticClass:\"flex-shrink-0 ml-4\"},[_c('span',[_c('router-link',{staticClass:\"relative inline-flex items-center leading-5 button button-primary\",attrs:{\"tag\":\"button\",\"to\":{ name: 'Register' },\"type\":\"button\"}},[_vm._v(\" Register \")])],1)]):_vm._e(),(_vm.loggedIn && _vm.user)?_c('div',{directives:[{name:\"on-clickaway\",rawName:\"v-on-clickaway\",value:(_vm.closeUserDropdown),expression:\"closeUserDropdown\"}],staticClass:\"relative flex-shrink-0\"},[_c('div',[_c('button',{staticClass:\"flex text-sm rounded-full text-white focus:outline-none focus:shadow-solid transition duration-150 ease-in-out\",on:{\"click\":function($event){_vm.userDropdown = !_vm.userDropdown}}},[_c('img',{staticClass:\"h-8 w-8 rounded-full\",attrs:{\"src\":_vm.getUserAvatar(_vm.user),\"alt\":_vm.user.username}})])]),_c('transition',{attrs:{\"name\":\"fade\"}},[_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.userDropdown),expression:\"userDropdown\"}],staticClass:\"origin-top-right absolute right-0 mt-2 w-48 rounded-md shadow-lg\"},[_c('div',{staticClass:\"py-1 rounded-md bg-white shadow-xs\"},[_c('router-link',{staticClass:\"block px-4 py-2 text-sm leading-5 text-gray-700 hover:bg-gray-100 focus:outline-none focus:bg-gray-100 transition duration-150 ease-in-out\",attrs:{\"tag\":\"a\",\"to\":{ name: 'UserProfile', params: { username: _vm.user.username } }},nativeOn:{\"click\":function($event){return _vm.closeUserDropdown($event)}}},[_vm._v(\"Your Profile\")]),_c('router-link',{staticClass:\"block px-4 py-2 text-sm leading-5 text-gray-700 hover:bg-gray-100 focus:outline-none focus:bg-gray-100 transition duration-150 ease-in-out\",attrs:{\"tag\":\"a\",\"to\":{ name: 'UserSettings' }},nativeOn:{\"click\":function($event){return _vm.closeUserDropdown($event)}}},[_vm._v(\"Settings\")]),_c('a',{staticClass:\"cursor-pointer block px-4 py-2 text-sm leading-5 text-gray-700 hover:bg-gray-100 focus:outline-none focus:bg-gray-100 transition duration-150 ease-in-out\",on:{\"click\":function($event){_vm.logout(); _vm.closeUserDropdown()}}},[_vm._v(\"Sign out\")])],1)])])],1):_vm._e()])])])]),_c('div',{staticClass:\"lg:hidden text-left\",class:{ block: _vm.open, hidden: !_vm.open}},[_c('div',{staticClass:\"px-2 pt-2 pb-3\"},[_c('router-link',{staticClass:\"block px-3 py-2 rounded-md text-base font-medium text-gray-300 hover:text-white hover:bg-gray-700 focus:outline-none focus:text-white focus:bg-gray-700 transition duration-150 ease-in-out\",attrs:{\"tag\":\"a\",\"to\":{ name: 'Games' }},nativeOn:{\"click\":function($event){_vm.open=!_vm.open}}},[_vm._v(\"Browse Games\")]),_c('router-link',{staticClass:\"mt-1 block px-3 py-2 rounded-md text-base font-medium text-gray-300 hover:text-white hover:bg-gray-700 focus:outline-none focus:text-white focus:bg-gray-700 transition duration-150 ease-in-out\",attrs:{\"tag\":\"a\",\"to\":{ name: 'Reviews' }},nativeOn:{\"click\":function($event){_vm.open=!_vm.open}}},[_vm._v(\"Reviews\")]),_c('router-link',{staticClass:\"mt-1 block px-3 py-2 rounded-md text-base font-medium text-gray-300 hover:text-white hover:bg-gray-700 focus:outline-none focus:text-white focus:bg-gray-700 transition duration-150 ease-in-out\",attrs:{\"tag\":\"a\",\"to\":{ name: 'Recommendations' }},nativeOn:{\"click\":function($event){_vm.open=!_vm.open}}},[_vm._v(\"Recommendations\")]),_c('router-link',{staticClass:\"mt-1 block px-3 py-2 rounded-md text-base font-medium text-gray-300 hover:text-white hover:bg-gray-700 focus:outline-none focus:text-white focus:bg-gray-700 transition duration-150 ease-in-out\",attrs:{\"tag\":\"a\",\"to\":{ name: 'Forums' }},nativeOn:{\"click\":function($event){_vm.open=!_vm.open}}},[_vm._v(\"Forums\")])],1),_c('div',{staticClass:\"pt-4 pb-3 border-t border-gray-700\"},[(_vm.getCurrentUser())?_c('div',{staticClass:\"flex items-center px-5\"},[_c('div',{staticClass:\"flex-shrink-0\"},[_c('img',{staticClass:\"h-10 w-10 rounded-full\",attrs:{\"src\":_vm.getUserAvatar(_vm.user),\"alt\":_vm.user.username}})]),_c('div',{staticClass:\"ml-3\"},[_c('div',{staticClass:\"text-base font-medium leading-6 text-white\"},[_vm._v(_vm._s(_vm.user.username))])])]):_vm._e(),(_vm.getCurrentUser())?_c('div',{staticClass:\"mt-3 px-2\"},[_c('router-link',{staticClass:\"mt-1 block px-3 py-2 rounded-md text-base font-medium text-gray-300 hover:text-white hover:bg-gray-700 focus:outline-none focus:text-white focus:bg-gray-700 transition duration-150 ease-in-out\",attrs:{\"tag\":\"a\",\"to\":{ name: 'UserProfile', params: { username: _vm.user.username } }},nativeOn:{\"click\":function($event){_vm.open=!_vm.open}}},[_vm._v(\"Your Profile\")]),_c('router-link',{staticClass:\"mt-1 block px-3 py-2 rounded-md text-base font-medium text-gray-300 hover:text-white hover:bg-gray-700 focus:outline-none focus:text-white focus:bg-gray-700 transition duration-150 ease-in-out\",attrs:{\"tag\":\"a\",\"to\":{ name: 'UserSettings' }},nativeOn:{\"click\":function($event){_vm.open=!_vm.open}}},[_vm._v(\"Settings\")]),_c('a',{staticClass:\"cursor-pointer mt-1 block px-3 py-2 rounded-md text-base font-medium text-gray-300 hover:text-white hover:bg-gray-700 focus:outline-none focus:text-white focus:bg-gray-700 transition duration-150 ease-in-out\",on:{\"click\":function($event){_vm.logout(); _vm.open=!_vm.open}}},[_vm._v(\"Sign out\")])],1):_vm._e(),(!_vm.getCurrentUser())?_c('div',{staticClass:\"mt-3 px-2\"},[_c('router-link',{staticClass:\"mt-1 block px-3 py-2 rounded-md text-base font-medium text-gray-300 hover:text-white hover:bg-gray-700 focus:outline-none focus:text-white focus:bg-gray-700 transition duration-150 ease-in-out\",attrs:{\"tag\":\"a\",\"to\":{ name: 'Login' }},nativeOn:{\"click\":function($event){_vm.open=!_vm.open}}},[_vm._v(\"Login\")]),_c('router-link',{staticClass:\"mt-1 block px-3 py-2 rounded-md text-base font-medium text-gray-300 hover:text-white hover:bg-gray-700 focus:outline-none focus:text-white focus:bg-gray-700 transition duration-150 ease-in-out\",attrs:{\"tag\":\"a\",\"to\":{ name: 'Register' }},nativeOn:{\"click\":function($event){_vm.open=!_vm.open}}},[_vm._v(\"Register\")])],1):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Header.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Header.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Header.vue?vue&type=template&id=7f0baea8&\"\nimport script from \"./Header.vue?vue&type=script&lang=js&\"\nexport * from \"./Header.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","module.exports = __webpack_public_path__ + \"img/logo.1ce7d762.svg\";","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"bg-gray-800\"},[_c('div',{staticClass:\"max-w-screen-xl mx-auto py-12 px-4 overflow-hidden sm:px-6 lg:px-8\"},[_c('nav',{staticClass:\"-mx-5 -my-2 flex flex-wrap justify-center\"},[_c('div',{staticClass:\"px-5 py-2\"},[_c('router-link',{staticClass:\"text-base leading-6 text-gray-300 hover:text-white\",attrs:{\"to\":{ name: 'FAQ' }}},[_vm._v(\" FAQ \")])],1),_c('div',{staticClass:\"px-5 py-2\"},[_c('router-link',{staticClass:\"text-base leading-6 text-gray-300 hover:text-white\",attrs:{\"to\":{ name: 'TermsOfService' }}},[_vm._v(\" Terms of Service \")])],1),_c('div',{staticClass:\"px-5 py-2\"},[_c('router-link',{staticClass:\"text-base leading-6 text-gray-300 hover:text-white\",attrs:{\"to\":{ name: 'PrivacyPolicy' }}},[_vm._v(\" Privacy Policy \")])],1)]),_c('div',{staticClass:\"mt-8 flex justify-center\"},[_c('a',{staticClass:\"text-gray-400 hover:text-gray-500\",attrs:{\"href\":\"https://github.com/mythril-io\"}},[_c('span',{staticClass:\"sr-only\"},[_vm._v(\"GitHub\")]),_c('svg',{staticClass:\"h-6 w-6\",attrs:{\"fill\":\"currentColor\",\"viewBox\":\"0 0 24 24\"}},[_c('path',{attrs:{\"fill-rule\":\"evenodd\",\"d\":\"M12 2C6.477 2 2 6.484 2 12.017c0 4.425 2.865 8.18 6.839 9.504.5.092.682-.217.682-.483 0-.237-.008-.868-.013-1.703-2.782.605-3.369-1.343-3.369-1.343-.454-1.158-1.11-1.466-1.11-1.466-.908-.62.069-.608.069-.608 1.003.07 1.531 1.032 1.531 1.032.892 1.53 2.341 1.088 2.91.832.092-.647.35-1.088.636-1.338-2.22-.253-4.555-1.113-4.555-4.951 0-1.093.39-1.988 1.029-2.688-.103-.253-.446-1.272.098-2.65 0 0 .84-.27 2.75 1.026A9.564 9.564 0 0112 6.844c.85.004 1.705.115 2.504.337 1.909-1.296 2.747-1.027 2.747-1.027.546 1.379.202 2.398.1 2.651.64.7 1.028 1.595 1.028 2.688 0 3.848-2.339 4.695-4.566 4.943.359.309.678.92.678 1.855 0 1.338-.012 2.419-.012 2.747 0 .268.18.58.688.482A10.019 10.019 0 0022 12.017C22 6.484 17.522 2 12 2z\",\"clip-rule\":\"evenodd\"}})])])]),_c('div',{staticClass:\"mt-8\"},[_c('p',{staticClass:\"text-center text-base leading-6 text-gray-400\"},[_vm._v(\" Mythril 2018-\"+_vm._s(_vm.currentYear)+\" \")])])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.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/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.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=0b3ad7cd&\"\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","const roles = {\n Admin: 'admin'\n};\n\nexport const routes = [\n {\n path: '/', name: 'Home', component: () => import('@/views/Home.vue'), meta: { plainLayout: true },\n beforeEnter: (to, from, next) => {\n // If user is logged in redirect them to the Dashboard\n const currentUser = JSON.parse(localStorage.getItem('user'));\n if (currentUser) {\n return next({ name: 'Games' });\n }\n next();\n }\n },\n { path: '/dashboard', name: 'Dashboard', component: () => import(/* webpackChunkName: \"auth\" */ '@/views/Dashboard.vue'), meta: { authorize: [] } },\n { path: '/login', name: 'Login', component: () => import(/* webpackChunkName: \"auth\" */ '@/views/auth/Login.vue'), meta: { requiresGuest: true } },\n { path: '/register', name: 'Register', component: () => import(/* webpackChunkName: \"auth\" */ '@/views/auth/Register.vue'), meta: { requiresGuest: true } },\n { path: '/verify', name: 'SendVerifyEmail', component: () => import(/* webpackChunkName: \"auth\" */ '@/views/auth/SendVerifyEmail.vue'), meta: { authorize: [] } },\n { path: '/email/verify/:id/:token', name: 'VerifyEmail', component: () => import(/* webpackChunkName: \"auth\" */ '@/views/auth/VerifyEmail.vue') },\n\n { path: '/forgot-password', name: 'ForgotPassword', component: () => import(/* webpackChunkName: \"auth\" */ '@/views/auth/ForgotPassword.vue'), meta: { requiresGuest: true } },\n { path: '/password/reset/:token', name: 'ResetPassword', component: () => import(/* webpackChunkName: \"auth\" */ '@/views/auth/ResetPassword.vue'), meta: { requiresGuest: true } },\n { path: '/games', name: 'Games', component: () => import(/* webpackChunkName: \"games\" */ '@/views/games/Main.vue') },\n {\n path: '/games/:id(\\\\d+)/:slug', component: () => import(/* webpackChunkName: \"games\" */ '@/views/games/View.vue'),\n children: [\n { path: '', name: 'Game', component: () => import(/* webpackChunkName: \"games\" */ '@/views/games/view/Overview.vue') },\n { path: 'reviews', name: 'GameReviews', component: () => import(/* webpackChunkName: \"games\" */ '@/views/games/view/Reviews.vue') },\n { path: 'recommendations', name: 'GameRecommendations', component: () => import(/* webpackChunkName: \"games\" */ '@/views/games/view/Recommendations.vue') },\n { path: 'releases', name: 'GameReleases', component: () => import(/* webpackChunkName: \"games\" */ '@/views/games/view/Releases.vue') },\n { path: 'discussions', name: 'GameDiscussions', component: () => import(/* webpackChunkName: \"games\" */ '@/views/games/view/Discussions.vue') },\n ]\n },\n {\n path: '/user/:username', component: () => import(/* webpackChunkName: \"user\" */ '@/views/user/Profile.vue'),\n children: [\n { path: '', name: 'UserProfile', component: () => import(/* webpackChunkName: \"user\" */ '@/views/user/profile/Overview.vue') },\n {\n path: 'library', component: () => import(/* webpackChunkName: \"user\" */ '@/views/user/profile/Library.vue'),\n children: [\n { path: '', name: 'UserLibrary', component: () => import(/* webpackChunkName: \"user\" */ '@/views/user/profile/library/All.vue') },\n { path: 'playing', name: 'UserLibraryPlaying', component: () => import(/* webpackChunkName: \"user\" */ '@/views/user/profile/library/Playing.vue') },\n { path: 'completed', name: 'UserLibraryCompleted', component: () => import(/* webpackChunkName: \"user\" */ '@/views/user/profile/library/Completed.vue') },\n { path: 'planning', name: 'UserLibraryPlanning', component: () => import(/* webpackChunkName: \"user\" */ '@/views/user/profile/library/Planning.vue') },\n { path: 'hold', name: 'UserLibraryOnHold', component: () => import(/* webpackChunkName: \"user\" */ '@/views/user/profile/library/OnHold.vue') },\n { path: 'dropped', name: 'UserLibraryDropped', component: () => import(/* webpackChunkName: \"user\" */ '@/views/user/profile/library/Dropped.vue') },\n ]\n },\n { path: 'reviews', name: 'UserReviews', component: () => import(/* webpackChunkName: \"user\" */ '@/views/user/profile/Reviews.vue') },\n { path: 'recommendations', name: 'UserRecommendations', component: () => import(/* webpackChunkName: \"user\" */ '@/views/user/profile/Recommendations.vue') },\n { path: 'followers', name: 'UserFollowers', component: () => import(/* webpackChunkName: \"user\" */ '@/views/user/profile/Followers.vue') },\n { path: 'following', name: 'UserFollowing', component: () => import(/* webpackChunkName: \"user\" */ '@/views/user/profile/Following.vue') },\n // { path: 'stats', name: 'UserStats', component: () => import('@/views/user/profile/Stats.vue') },\n ]\n },\n {\n path: '/settings', component: () => import(/* webpackChunkName: \"settings\" */ '@/views/user/Settings.vue'), meta: { authorize: [] },\n children: [\n { path: '', name: 'UserSettings', component: () => import(/* webpackChunkName: \"settings\" */ '@/views/user/settings/Details.vue'), meta: { authorize: [] } },\n { path: 'images', name: 'SettingsImages', component: () => import(/* webpackChunkName: \"settings\" */ '@/views/user/settings/Images.vue'), meta: { authorize: [] } },\n { path: 'password', name: 'SettingsPassword', component: () => import(/* webpackChunkName: \"settings\" */ '@/views/user/settings/Password.vue'), meta: { authorize: [] } },\n ]\n },\n { path: '/reviews', name: 'Reviews', component: () => import('@/views/reviews/Main.vue') },\n { path: '/reviews/:id(\\\\d+)', name: 'Review', component: () => import('@/views/reviews/View.vue') },\n { path: '/reviews/create', name: 'CreateReview', component: () => import('@/views/reviews/Create.vue'), meta: { authorize: [] } },\n\n { path: '/recommendations', name: 'Recommendations', component: () => import('@/views/recommendations/Main.vue') },\n { path: '/recommendations/:id(\\\\d+)', name: 'Recommendation', component: () => import('@/views/recommendations/View.vue') },\n { path: '/recommendations/create', name: 'CreateRecommendation', component: () => import('@/views/recommendations/Create.vue'), meta: { authorize: [] } },\n\n { path: '/forums/:tag?', name: 'Forums', component: () => import(/* webpackChunkName: \"forums\" */ '@/views/forums/Main.vue') },\n { path: '/forums/create', name: 'CreateDiscussion', component: () => import(/* webpackChunkName: \"forums\" */ '@/views/forums/discussions/Create.vue'), meta: { authorize: [] } },\n { path: '/forums/:id(\\\\d+)/:slug', name: 'Discussion', component: () => import(/* webpackChunkName: \"forums\" */ '@/views/forums/discussions/View.vue') },\n {\n path: '/admin', component: () => import('@/views/admin/Main.vue'),\n meta: { authorize: ['roles.Admin'], plainLayout: true},\n children: [\n {\n path: '', name: 'AdminDashboard', component: () => import('@/views/admin/Dashboard.vue'),\n meta: { authorize: [roles.Admin], plainLayout: true }\n },\n {\n path: 'games', name: 'AdminGames', component: () => import('@/views/admin/Games.vue'),\n meta: { authorize: [roles.Admin], plainLayout: true }\n },\n {\n path: 'games/:id/edit', name: 'AdminGameEdit', component: () => import('@/views/admin/forms/Game.vue'),\n meta: { authorize: [roles.Admin], plainLayout: true }\n },\n {\n path: 'games/create', name: 'AdminGameCreate', component: () => import('@/views/admin/forms/Game.vue'),\n meta: { authorize: [roles.Admin], plainLayout: true }\n },\n {\n path: 'releases', name: 'AdminReleases', component: () => import('@/views/admin/Releases.vue'),\n meta: { authorize: [roles.Admin], plainLayout: true }\n },\n {\n path: 'platforms', name: 'AdminPlatforms', component: () => import('@/views/admin/Platforms.vue'),\n meta: { authorize: [roles.Admin], plainLayout: true }\n },\n {\n path: 'platforms/:id/edit', name: 'AdminPlatformEdit', component: () => import('@/views/admin/forms/Platform.vue'),\n meta: { authorize: [roles.Admin], plainLayout: true }\n },\n {\n path: 'platforms/create', name: 'AdminPlatformCreate', component: () => import('@/views/admin/forms/Platform.vue'),\n meta: { authorize: [roles.Admin], plainLayout: true }\n },\n {\n path: 'genres', name: 'AdminGenres', component: () => import('@/views/admin/Genres.vue'),\n meta: { authorize: [roles.Admin], plainLayout: true }\n },\n {\n path: 'genres/:id/edit', name: 'AdminGenreEdit', component: () => import('@/views/admin/forms/Genre.vue'),\n meta: { authorize: [roles.Admin], plainLayout: true }\n },\n {\n path: 'genres/create', name: 'AdminGenreCreate', component: () => import('@/views/admin/forms/Genre.vue'),\n meta: { authorize: [roles.Admin], plainLayout: true }\n },\n {\n path: 'developers', name: 'AdminDevelopers', component: () => import('@/views/admin/Developers.vue'),\n meta: { authorize: [roles.Admin], plainLayout: true }\n },\n {\n path: 'developers/:id/edit', name: 'AdminDeveloperEdit', component: () => import('@/views/admin/forms/Developer.vue'),\n meta: { authorize: [roles.Admin], plainLayout: true }\n },\n {\n path: 'developers/create', name: 'AdminDeveloperCreate', component: () => import('@/views/admin/forms/Developer.vue'),\n meta: { authorize: [roles.Admin], plainLayout: true }\n },\n {\n path: 'publishers', name: 'AdminPublishers', component: () => import('@/views/admin/Publishers.vue'),\n meta: { authorize: [roles.Admin], plainLayout: true }\n },\n {\n path: 'publishers/:id/edit', name: 'AdminPublisherEdit', component: () => import('@/views/admin/forms/Publisher.vue'),\n meta: { authorize: [roles.Admin], plainLayout: true }\n },\n {\n path: 'publishers/create', name: 'AdminPublisherCreate', component: () => import('@/views/admin/forms/Publisher.vue'),\n meta: { authorize: [roles.Admin], plainLayout: true }\n },\n ]\n },\n { path: '/privacy-policy', name: 'PrivacyPolicy', component: () => import(/* webpackChunkName: \"site\" */ '@/views/PrivacyPolicy.vue') },\n { path: '/faq', name: 'FAQ', component: () => import(/* webpackChunkName: \"site\" */ '@/views/FAQ.vue') },\n { path: '/terms-of-service', name: 'TermsOfService',\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: \"site\" */ '@/views/TermsOfService.vue') },\n // otherwise redirect to home\n { path: '*', redirect: '/' }\n]\n","import Vue from 'vue'\nimport VueRouter from 'vue-router'\nimport { routes } from './routes'\nimport store from '../store'\n\nVue.use(VueRouter)\n\nconst router = new VueRouter({\n linkActiveClass: 'is-active',\n mode: 'history',\n base: process.env.BASE_URL,\n routes\n})\n\nrouter.beforeEach((to, from, next) => {\n const { authorize } = to.meta;\n const { requiresGuest } = to.meta;\n const currentUser = JSON.parse(localStorage.getItem('user'));\n\n if (currentUser && requiresGuest) {\n return next({ path: '/' });\n }\n\n if (currentUser && !currentUser.email_verified_at && to.name != 'SendVerifyEmail' && to.name != 'VerifyEmail') {\n return next({ name: 'SendVerifyEmail' });\n }\n\n if (authorize) {\n if (!currentUser) {\n return next({ path: '/login', query: { returnUrl: to.path } });\n }\n\n // Allow access if no specific role is required\n if (authorize.length == 0) {\n return next();\n }\n\n // If user doesn't have the required role, redirect to homepage\n const hasRole = currentUser.rolenames.some(item => authorize.includes(item))\n if (!hasRole) {\n return next({ path: '/' });\n }\n }\n\n next();\n})\n\nrouter.afterEach((to, from) => {\n from.name == 'Games' && to.name != 'Games' ? store.dispatch('games/clearFilters') : '';\n})\n\nexport default router\n","const ax = require('axios');\nimport createAuthRefreshInterceptor from 'axios-auth-refresh';\nimport { userService } from '@/services';\n\nimport router from '../router'\nimport store from '../store'\n\n\n/**\n * axios instantiation and default headers\n * Request/Response interceptor configuration\n */\n\nconst instance = ax.create({\n baseURL: `${process.env.VUE_APP_ROOT_API}`\n});\n\n// Set default axios headers\ninstance.defaults.headers.common['X-Requested-With'] = 'XMLHttpRequest';\ninstance.defaults.withCredentials = true;\n\n// Set Request interceptors\n// instance.interceptors.request.use(function (config) {\n// let access_token = JSON.parse(localStorage.getItem('access_token'));\n// if (access_token != null) {\n// config.headers.Authorization = 'Bearer ' + access_token;\n// }\n// return config;\n// });\n\n// Set Response interceptors\ninstance.interceptors.response.use(function (response) {\n // Any status code that lie within the range of 2xx cause this function to trigger\n return response;\n }, function (error) {\n // Any status codes that falls outside the range of 2xx cause this function to trigger\n const error_code = error.response.status;\n const route_name = router.currentRoute.name;\n\n if (route_name != 'Login') {\n if (error_code == 401) {\n store.dispatch('authentication/logout');\n router.push({ name: 'Login' });\n }\n }\n\n return Promise.reject(error);\n });\n\n\n/**\n * axios-auth-refresh library\n * Implements automatic refresh of authorization\n * via axios interceptors\n */\n\n// Function that will be called to refresh authorization\n// const refreshAuthLogic = failedRequest => axios.get(`${process.env.VUE_APP_ROOT_API}/users/refresh`).then(response => {\n// localStorage.setItem('access_token', JSON.stringify(response.data.access_token));\n// failedRequest.response.config.headers['Authorization'] = 'Bearer ' + response.data.access_token;\n// return Promise.resolve();\n// });\n\n// Instantiate the interceptor (you can chain it as it returns the axios instance)\n// createAuthRefreshInterceptor(instance, refreshAuthLogic);\n\nexport const axios = instance\n","import { axios } from '../utilities';\n\nexport const userService = {\n login,\n logout,\n register,\n resendVerification,\n forgotPassword,\n resetPassword,\n verifyEmail,\n get,\n getFollowers,\n getFollowing,\n patchDetails,\n patchAvatar,\n patchBanner,\n patchPassword,\n getFollowStatus,\n follow,\n getFavourites,\n getGameFavourite,\n getGameStatus,\n};\n\nconst user = JSON.parse(localStorage.getItem('user'));\nconst rootURL = '/users/';\n\nasync function login(email, password) {\n try {\n await axios.get(`${process.env.VUE_APP_ROOT}/sanctum/csrf-cookie`)\n await axios.post(`${process.env.VUE_APP_ROOT}/login`, { email, password })\n let response = await axios.get(rootURL + 'session-user');\n\n localStorage.setItem('user', JSON.stringify(response.data));\n return response;\n } catch(error) {\n return Promise.reject({'message': 'Login failed'})\n }\n}\n\nasync function logout() {\n try {\n await axios.get(`${process.env.VUE_APP_ROOT}/sanctum/csrf-cookie`);\n await axios.post(`${process.env.VUE_APP_ROOT}/logout`)\n localStorage.removeItem('user');\n } catch(error) {\n return Promise.reject({'message': 'Logout failed'})\n }\n}\n\nasync function register(email, username, password, password_confirmation, recaptchaToken) {\n try {\n await axios.get(`${process.env.VUE_APP_ROOT}/sanctum/csrf-cookie`);\n await axios.post(`${process.env.VUE_APP_ROOT}/register`, { email, username, password, password_confirmation, recaptchaToken })\n let response = await axios.get(rootURL + 'session-user');\n\n localStorage.setItem('user', JSON.stringify(response.data));\n return {'data': response.data, 'message': 'Successfully registered! Please check your email for a verification link'};\n } catch(error) {\n return Promise.reject({'message': 'Registration failed', 'errors': error.response.data.errors})\n }\n}\n\nasync function resendVerification() {\n try {\n await axios.get(`${process.env.VUE_APP_ROOT}/sanctum/csrf-cookie`);\n let response = await axios.post(`${process.env.VUE_APP_ROOT}/email/resend`);\n return {'message': 'Verification email has been resent!'};\n } catch(error) {\n return Promise.reject({'message': 'Unable to resend verification email'})\n }\n}\n\nasync function forgotPassword(email) {\n try {\n await axios.get(`${process.env.VUE_APP_ROOT}/sanctum/csrf-cookie`);\n let response = await axios.post(`${process.env.VUE_APP_ROOT}/password/email`, { email });\n return {'message': 'We have emailed your password reset link!'};\n } catch(error) {\n return Promise.reject({'message': 'Unable to send password reset link'})\n }\n}\n\nasync function resetPassword(token, email, password, password_confirmation) {\n try {\n await axios.get(`${process.env.VUE_APP_ROOT}/sanctum/csrf-cookie`);\n await axios.post(`${process.env.VUE_APP_ROOT}/password/reset`, { token, email, password, password_confirmation });\n let response = await axios.get(rootURL + 'session-user');\n\n localStorage.setItem('user', JSON.stringify(response.data));\n return response;\n } catch(error) {\n return Promise.reject({'message': 'Unable to reset your password'})\n }\n}\n\nasync function verifyEmail(id, token, expires, signature) {\n try {\n await axios.get(`${process.env.VUE_APP_ROOT}/sanctum/csrf-cookie`);\n await axios.get(`${process.env.VUE_APP_ROOT}/email/verify/${id}/${token}?expires=${expires}&signature=${signature}`);\n\n let response = await axios.get(rootURL + 'session-user');\n\n localStorage.setItem('user', JSON.stringify(response.data));\n return response;\n } catch(error) {\n return Promise.reject({'message': 'Unable to verify your email'})\n }\n}\n\nfunction get(username) {\n return axios.get(rootURL + username)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction getFollowers(username, page = 1) {\n return axios.get(rootURL + username + '/followers?page=' + page)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction getFollowing(username, page = 1) {\n return axios.get(rootURL + username + '/following?page=' + page)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction patchDetails(about_me, location, gender, timezone, birthday) {\n const data = {\n about_me: about_me,\n location: location,\n gender: gender,\n timezone: timezone,\n birthday: birthday,\n }\n return axios.patch(rootURL + 'update', data)\n .then(response => {\n localStorage.setItem('user', JSON.stringify(response.data));\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction patchAvatar(avatar) {\n return axios.patch(rootURL + 'avatar', { avatar })\n .then(response => {\n localStorage.setItem('user', JSON.stringify(response.data));\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction patchBanner(banner) {\n return axios.patch(rootURL + 'banner', { banner })\n .then(response => {\n localStorage.setItem('user', JSON.stringify(response.data));\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction patchPassword(password) {\n return axios.patch(rootURL + 'password', { password })\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction getFollowStatus(username) {\n return axios.get(rootURL + username + '/follow-status')\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction follow(username) {\n return axios.post(rootURL + username + '/follow' )\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction getFavourites(username) {\n return axios.get(rootURL + username + '/favourites')\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction getGameFavourite(id) {\n return axios.get(rootURL + 'game/' + id + '/favourite')\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction getGameStatus(id) {\n return axios.get(`${rootURL}game/${id}/status`)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n","import { axios } from '../utilities';\n\nexport const platformService = {\n getByPage,\n getAll,\n get,\n post,\n put,\n deleteResource\n};\n\nconst rootURL = '/platforms';\n\nfunction getByPage(page=1, search='') {\n return axios.get(`${rootURL}?page=${page}&search=${search}`)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n }\n\nfunction getAll() {\n return axios.get(`/all-platforms`)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction get(id) {\n return axios.get(`${rootURL}/${id}`)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction post(resource) {\n return axios.post(rootURL, resource)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction put(resource) {\n return axios.put(`${rootURL}/${resource.id}`, resource)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction deleteResource(id) {\n return axios.delete(`${rootURL}/${id}`)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n","import { axios } from '../utilities';\n\nexport const developerService = {\n getByPage,\n getAll,\n get,\n post,\n put,\n deleteResource\n};\n\nconst rootURL = '/developers';\n\nfunction getByPage(page=1, search='') {\n return axios.get(`${rootURL}?page=${page}&search=${search}`)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction getAll() {\n return axios.get(`/all-developers`)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction get(id) {\n return axios.get(`${rootURL}/${id}`)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction post(resource) {\n return axios.post(rootURL, resource)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction put(resource) {\n return axios.put(`${rootURL}/${resource.id}`, resource)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction deleteResource(id) {\n return axios.delete(`${rootURL}/${id}`)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n","import { axios } from '../utilities';\n\nexport const publisherService = {\n getByPage,\n getAll,\n get,\n post,\n put,\n deleteResource\n};\n\nconst rootURL = '/publishers';\n\nfunction getByPage(page=1, search='') {\n return axios.get(`${rootURL}?page=${page}&search=${search}`)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction getAll() {\n return axios.get(`/all-publishers`)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction get(id) {\n return axios.get(`${rootURL}/${id}`)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction post(resource) {\n return axios.post(rootURL, resource)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction put(resource) {\n return axios.put(`${rootURL}/${resource.id}`, resource)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction deleteResource(id) {\n return axios.delete(`${rootURL}/${id}`)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n","import { axios } from '../utilities';\n\nexport const regionService = {\n getByPage,\n getAll,\n get,\n post,\n put,\n deleteResource\n};\n\nconst rootURL = '/regions/';\n\nfunction getByPage(page=1, search='') {\n return axios.get(rootURL + 'page/' + page + '?search=' + search)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction getAll() {\n return axios.get(rootURL + 'all')\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction get(id) {\n return axios.get(rootURL + id)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction post(resource) {\n return axios.post(rootURL, resource)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction put(resource) {\n return axios.put(rootURL + resource.id, resource)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction deleteResource(id) {\n return axios.delete(rootURL + id)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n","import { axios } from '../utilities';\n\nexport const dateTypeService = {\n getByPage,\n getAll,\n get,\n post,\n put,\n deleteResource\n};\n\nconst rootURL = '/datetypes/';\n\nfunction getByPage(page=1, search='') {\n return axios.get(rootURL + 'page/' + page + '?search=' + search)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction getAll() {\n return axios.get(rootURL + 'all')\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction get(id) {\n return axios.get(rootURL + id)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction post(resource) {\n return axios.post(rootURL, resource)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction put(resource) {\n return axios.put(rootURL + resource.id, resource)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction deleteResource(id) {\n return axios.delete(rootURL + id)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n","import { axios } from '../utilities';\n\nexport const genreService = {\n getByPage,\n getAll,\n get,\n post,\n put,\n deleteResource\n};\n\nconst rootURL = '/genres';\n\nfunction getByPage(page=1, search='') {\n return axios.get(`${rootURL}?page=${page}&search=${search}`)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction getAll() {\n return axios.get(`/all-genres`)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction get(id) {\n return axios.get(`${rootURL}/${id}`)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction post(resource) {\n return axios.post(rootURL, resource)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction put(resource) {\n return axios.put(`${rootURL}/${resource.id}`, resource)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction deleteResource(id) {\n return axios.delete(`${rootURL}/${id}`)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n","import { axios } from '../utilities';\n\nexport const gameService = {\n getByPage,\n get,\n post,\n put,\n deleteResource\n};\n\nconst rootURL = '/games';\n\nfunction getByPage(page=1, filters=null) {\n let query = '';\n filters ? query = Object.entries(filters).map(([key, val]) => `${key}=${val}`).join('&') : '';\n\n return axios.get(rootURL + '?page=' + page + '&' + query)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction get(id) {\n return axios.get(rootURL + '/' + id)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction post(resource) {\n return axios.post(rootURL, resource)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction put(resource) {\n return axios.put(rootURL + '/' + resource.id, resource)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction deleteResource(id) {\n return axios.delete(rootURL + '/' + id)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n","import { axios } from '../utilities';\n\nexport const libraryService = {\n getByUser,\n getByGameAndUser,\n getByUserAndStatus,\n getRecentForGame,\n post,\n patch,\n deleteResource\n};\n\nconst rootURL = '/libraries/';\n\nfunction getByUser(username) {\n return axios.get(rootURL + 'user/' + username)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction getByGameAndUser(id) {\n return axios.get(rootURL + 'game/' + id)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction getByUserAndStatus(username, playStatusId, page = 1) {\n return axios.get(rootURL + 'user/' + username + '/status/' + playStatusId + '?page=' + page)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction getRecentForGame(id) {\n return axios.get(rootURL + 'game/' + id + '/recent')\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction post(resource) {\n return axios.post(rootURL, resource)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction patch(resource) {\n return axios.patch(rootURL + resource.id, resource)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction deleteResource(id) {\n return axios.delete(rootURL + id)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n","import { axios } from '../utilities';\n\nexport const reviewService = {\n getByPage,\n getByGameAndPage,\n getByUserAndPage,\n like,\n dislike,\n getUserSentiment,\n get,\n post,\n put,\n patch,\n deleteResource\n};\n\nconst rootURL = '/reviews';\n\nfunction getByPage(page=1) {\n return axios.get(rootURL + '?page=' + page)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction getByGameAndPage(id, page=1) {\n return axios.get(rootURL + '/' + 'game/' + id + '?page=' + page)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction getByUserAndPage(username, page=1) {\n return axios.get(rootURL + '/' + 'user/' + username + '?page=' + page)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction like(id) {\n return axios.post(rootURL + '/' + id + '/like')\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction dislike(id) {\n return axios.post(rootURL + '/' + id + '/dislike')\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction getUserSentiment(id) {\n return axios.get(rootURL + '/' + id + '/user-sentiment')\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction get(id) {\n return axios.get(rootURL + '/' + id)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction post(resource) {\n return axios.post(rootURL, resource)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction put(resource) {\n return axios.put(rootURL + '/' + resource.id, resource)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction patch(resource) {\n return axios.patch(rootURL + '/' + resource.id, resource)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction deleteResource(id) {\n return axios.delete(rootURL + '/' + id)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n","import { axios } from '../utilities';\n\nexport const recommendationService = {\n getByPage,\n getByGameAndPage,\n getByUserAndPage,\n get,\n post,\n put,\n patch,\n deleteResource\n};\n\nconst rootURL = '/recommendations';\n\nfunction getByPage(page=1) {\n return axios.get(rootURL + '?page=' + page)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction getByGameAndPage(id, page=1) {\n return axios.get(rootURL + '/' + 'game/' + id + '?page=' + page)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction getByUserAndPage(username, page=1) {\n return axios.get(rootURL + '/' + 'user/' + username + '?page=' + page)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction get(id) {\n return axios.get(rootURL + '/' + id)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction post(resource) {\n return axios.post(rootURL, resource)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction put(resource) {\n return axios.put(rootURL + '/' + resource.id, resource)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction patch(resource) {\n return axios.patch(rootURL + '/' + resource.id, resource)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction deleteResource(id) {\n return axios.delete(rootURL + '/' + id)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n","import { axios } from '../utilities';\n\nexport const playStatusService = {\n getAll,\n get,\n post,\n put,\n deleteResource\n};\n\nconst rootURL = '/playstatuses/';\n\nfunction getAll() {\n return axios.get(rootURL + 'all')\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction get(id) {\n return axios.get(rootURL + id)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction post(resource) {\n return axios.post(rootURL, resource)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction put(resource) {\n return axios.put(rootURL + resource.id, resource)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction deleteResource(id) {\n return axios.delete(rootURL + id)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n","import { axios } from '../utilities';\n\nexport const homeService = {\n getFeatured,\n getTrending,\n getUserReview,\n getUserRecommendation,\n getStats,\n getUserActivity\n};\n\nconst rootURL = '/home/';\n\nfunction getFeatured() {\n return axios.get(rootURL + 'featured')\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction getTrending() {\n return axios.get(rootURL + 'trending')\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction getUserReview() {\n return axios.get(rootURL + 'user-review')\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction getUserRecommendation() {\n return axios.get(rootURL + 'user-recommendation')\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction getStats() {\n return axios.get(rootURL + 'stats')\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction getUserActivity() {\n return axios.get(rootURL + 'user-activity')\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n","import { axios } from '../../utilities';\n\nexport const tagService = {\n getAll,\n get,\n post,\n put,\n deleteResource\n};\n\nconst rootURL = '/forums/tags';\n\nfunction getAll() {\n return axios.get(rootURL + '/all')\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction get(id) {\n return axios.get(rootURL + '/' + id)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction post(resource) {\n return axios.post(rootURL, resource)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction put(resource) {\n return axios.put(rootURL + '/' + resource.id, resource)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction deleteResource(id) {\n return axios.delete(rootURL + '/' + id)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n","import { axios } from '../../utilities';\n\nexport const discussionService = {\n getByPage,\n getByGameAndPage,\n get,\n post,\n patch,\n deleteResource, \n getPostsByPage,\n addPost,\n toggleLike,\n toggleSubscribe,\n};\n\nconst rootURL = '/forums';\n\nfunction getByPage(page=1, tag=null, sort='recent') {\n var param = ''\n var query = `?page=${page}&sort=${sort}`\n tag ? param = `/${tag}` : ''\n\n return axios.get(rootURL + param + query)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction getByGameAndPage(id, page=1) {\n return axios.get(rootURL + '/discussions/' + 'game/' + id + '?page=' + page)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n }\n\nfunction get(id) {\n return axios.get(rootURL + '/discussions/' + id)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction post(resource) {\n return axios.post(rootURL + '/discussions', resource)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction patch(resource) {\n return axios.patch(rootURL + '/discussions/' + resource.id, resource)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction deleteResource(id) {\n return axios.delete(rootURL + '/discussions/' + id)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction getPostsByPage(id, page=1) {\n return axios.get(rootURL + `/discussions/${id}/posts?page=${page}`)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction addPost(id, resource) {\n return axios.post(rootURL + '/discussions/' + id, resource)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction toggleLike(resource) {\n return axios.post(rootURL + `/discussions/${resource.id}/like`)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction toggleSubscribe(resource) {\n return axios.post(rootURL + `/discussions/${resource.id}/subscribe`)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n","import { axios } from '../../utilities';\n\nexport const postService = {\n post,\n patch,\n deleteResource,\n toggleLike,\n find\n};\n\nconst rootURL = 'forums';\n\nfunction post(resource, id) {\n return axios.post(rootURL + '/discussions/' + id, resource)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction patch(resource) {\n return axios.patch(rootURL + '/posts/' + resource.id, resource)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction deleteResource(id) {\n return axios.delete(rootURL + '/' + id)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction toggleLike(resource) {\n return axios.post(rootURL + `/posts/${resource.id}/like`)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction find(resource) {\n return axios.get(rootURL + `/posts/${resource.id}/find`)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n","import { axios } from '../utilities';\n\nexport const releaseService = {\n getByGame,\n get,\n post,\n patch,\n deleteResource,\n favourite,\n unfavourite,\n};\n\nconst rootURL = '/releases/';\n\nfunction getByGame(id) {\n return axios.get(rootURL + 'game/' + id)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction get(id) {\n return axios.get(rootURL + id)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction post(resource) {\n return axios.post(rootURL, resource)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction patch(resource) {\n return axios.patch(rootURL + resource.id, resource)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction deleteResource(id) {\n return axios.delete(rootURL + id)\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction favourite(id) {\n return axios.post(rootURL + id + '/favourite')\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n\nfunction unfavourite(id) {\n return axios.delete(rootURL + id + '/favourite')\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}\n","import { axios } from '../utilities';\n\nexport const adminService = {\n getDashboard,\n};\n\nconst rootURL = '/admin/';\n\nfunction getDashboard() {\n return axios.get(rootURL + 'dashboard')\n .then(response => {\n return response;\n }).catch(function (error) {\n const errorMessage = (error.response.data && error.response.data.message) || error.response.statusText;\n return Promise.reject(errorMessage)\n });\n}"],"sourceRoot":""}