diff --git a/index.html b/index.html index 5a9812f..3e87cbe 100644 --- a/index.html +++ b/index.html @@ -1 +1 @@ -Blood on the Clocktower Town Square
\ No newline at end of file +Blood on the Clocktower Town Square
\ No newline at end of file diff --git a/js/app.54b65005.js.map b/js/app.54b65005.js.map deleted file mode 100644 index 1fc9bf7..0000000 --- a/js/app.54b65005.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/assets/icons/washerwoman.png","webpack:///./src/assets/icons/barista.png","webpack:///./src/assets/icons/cerenovus.png","webpack:///./src/assets/icons/amnesiac.png","webpack:///./src/assets/icons/politician.png","webpack:///./src/components/modals/ReferenceModal.vue?e401","webpack:///./src/assets/editions/tb.png","webpack:///./src/assets/icons/shabaloth.png","webpack:///./src/assets/icons/lunatic.png","webpack:///./src/assets/icons/oracle.png","webpack:///./src/assets/icons/ravenkeeper.png","webpack:///./src/assets/icons/spiritofivory.png","webpack:///./src/assets/icons/undertaker.png","webpack:///./src/assets/icons/chambermaid.png","webpack:///./src/assets/icons/plus.png","webpack:///./src/assets/icons/recluse.png","webpack:///./src/assets/icons/mutant.png","webpack:///./src/components/Screenshot.vue?8b06","webpack:///./src/assets/icons/buddhist.png","webpack:///./src/assets/icons/chef.png","webpack:///./src/assets/icons/preacher.png","webpack:///./src/assets/icons/zombuul.png","webpack:///./src/assets/icons/sailor.png","webpack:///./src/assets/icons/widow.png","webpack:///./src/assets/icons/bonecollector.png","webpack:///./src/assets/icons/baron.png","webpack:///./src/assets/icons/bureaucrat.png","webpack:///./src/assets/editions/bmr-minion.png","webpack:///./src/assets/icons/leviathan.png","webpack:///./src/assets/icons/artist.png","webpack:///./src/components/modals/GameStateModal.vue?d5d8","webpack:///./src/assets/editions/snv.png","webpack:///./src/components/modals/NightOrderModal.vue?77b0","webpack:///./src/assets/icons/sage.png","webpack:///./src/assets/icons/scapegoat.png","webpack:///./src/assets/icons/philosopher.png","webpack:///./src/components/TownSquare.vue?b88a","webpack:///./src/assets/icons/butcher.png","webpack:///./src/assets/icons/towncrier.png","webpack:///./src/assets/icons/cultleader.png","webpack:///./src/assets/icons/toymaker.png","webpack:///./src/assets/icons/vortox.png","webpack:///./src/components/Token.vue?708f","webpack:///./src/assets/icons/deviant.png","webpack:///./src/assets/icons/imp.png","webpack:///./src/assets/icons/moonchild.png","webpack:///./src/components/Gradients.vue?8fc3","webpack:///./src/assets/icons/snakecharmer.png","webpack:///./src/assets/icons/fortuneteller.png","webpack:///./src/assets/editions/custom.png","webpack:///./src/assets/editions/snv-minion.png","webpack:///./src/assets/icons/fool.png","webpack:///./src/assets/icons/apprentice.png","webpack:///./src/assets/icons/librarian.png","webpack:///./src/assets/editions/snv-outsider.png","webpack:///./src/assets/icons/soldier.png","webpack:///./src/assets/icons/minstrel.png","webpack:///./src/assets/icons/exorcist.png","webpack:///./src/assets/icons/harlot.png","webpack:///./src/assets/icons/goon.png","webpack:///./src/App.vue?7f4e","webpack:///./src/components/TownSquare.vue?4772","webpack:///./src/components/Player.vue?66c0","webpack:///./src/components/Token.vue?8abf","webpack:///src/components/Token.vue","webpack:///./src/components/Token.vue?ca97","webpack:///./src/components/Token.vue","webpack:///src/components/Player.vue","webpack:///./src/components/Player.vue?1369","webpack:///./src/components/Player.vue","webpack:///./src/components/modals/ReminderModal.vue?446a","webpack:///./src/components/modals/Modal.vue?6393","webpack:///src/components/modals/Modal.vue","webpack:///./src/components/modals/Modal.vue?a5e5","webpack:///./src/components/modals/Modal.vue","webpack:///src/components/modals/ReminderModal.vue","webpack:///./src/components/modals/ReminderModal.vue?c533","webpack:///./src/components/modals/ReminderModal.vue","webpack:///./src/components/modals/RoleModal.vue?d0dd","webpack:///src/components/modals/RoleModal.vue","webpack:///./src/components/modals/RoleModal.vue?15f8","webpack:///./src/components/modals/RoleModal.vue","webpack:///src/components/TownSquare.vue","webpack:///./src/components/TownSquare.vue?335a","webpack:///./src/components/TownSquare.vue","webpack:///./src/components/TownInfo.vue?d7e7","webpack:///src/components/TownInfo.vue","webpack:///./src/components/TownInfo.vue?6260","webpack:///./src/components/TownInfo.vue","webpack:///./src/components/Menu.vue?63dd","webpack:///./src/components/Screenshot.vue?2b36","webpack:///src/components/Screenshot.vue","webpack:///./src/components/Screenshot.vue?82cf","webpack:///./src/components/Screenshot.vue","webpack:///src/components/Menu.vue","webpack:///./src/components/Menu.vue?9842","webpack:///./src/components/Menu.vue","webpack:///./src/components/modals/RolesModal.vue?490c","webpack:///src/components/modals/RolesModal.vue","webpack:///./src/components/modals/RolesModal.vue?b003","webpack:///./src/components/modals/RolesModal.vue","webpack:///./src/components/modals/EditionModal.vue?e563","webpack:///src/components/modals/EditionModal.vue","webpack:///./src/components/modals/EditionModal.vue?d6f4","webpack:///./src/components/modals/EditionModal.vue","webpack:///./src/components/Intro.vue?1976","webpack:///src/components/Intro.vue","webpack:///./src/components/Intro.vue?a380","webpack:///./src/components/Intro.vue","webpack:///./src/components/modals/ReferenceModal.vue?5cbb","webpack:///src/components/modals/ReferenceModal.vue","webpack:///./src/components/modals/ReferenceModal.vue?c23b","webpack:///./src/components/modals/ReferenceModal.vue","webpack:///./src/components/Vote.vue?e0b3","webpack:///src/components/Vote.vue","webpack:///./src/components/Vote.vue?2a1c","webpack:///./src/components/Vote.vue","webpack:///./src/components/Gradients.vue?7cde","webpack:///src/components/Gradients.vue","webpack:///./src/components/Gradients.vue?d8ff","webpack:///./src/components/Gradients.vue","webpack:///./src/components/modals/NightOrderModal.vue?2636","webpack:///src/components/modals/NightOrderModal.vue","webpack:///./src/components/modals/NightOrderModal.vue?08ef","webpack:///./src/components/modals/NightOrderModal.vue","webpack:///./src/components/modals/FabledModal.vue?062b","webpack:///src/components/modals/FabledModal.vue","webpack:///./src/components/modals/FabledModal.vue?aeda","webpack:///./src/components/modals/FabledModal.vue","webpack:///./src/components/modals/VoteHistoryModal.vue?b2fe","webpack:///src/components/modals/VoteHistoryModal.vue","webpack:///./src/components/modals/VoteHistoryModal.vue?485a","webpack:///./src/components/modals/VoteHistoryModal.vue","webpack:///./src/components/modals/GameStateModal.vue?5234","webpack:///src/components/modals/GameStateModal.vue","webpack:///./src/components/modals/GameStateModal.vue?7f16","webpack:///./src/components/modals/GameStateModal.vue","webpack:///src/App.vue","webpack:///./src/App.vue?b65f","webpack:///./src/App.vue","webpack:///./src/store/socket.js","webpack:///./src/store/modules/players.js","webpack:///./src/store/modules/session.js","webpack:///./src/store/index.js","webpack:///./src/main.js","webpack:///./src/assets/icons/cannibal.png","webpack:///./src/App.vue?6ee5","webpack:///./src/assets/icons/duchess.png","webpack:///./src/assets/icons/goblin.png","webpack:///./src/assets/icons/x.png","webpack:///./src/assets/editions/tb-minion.png","webpack:///./src/assets/icons sync ^\\.\\/.*\\.png$","webpack:///./src/assets/icons/fiddler.png","webpack:///./src/assets/icons/butler.png","webpack:///./src/assets/icons/doomsayer.png","webpack:///./src/assets/icons/juggler.png","webpack:///./src/assets/icons/balloonist.png","webpack:///./src/assets/icons/innkeeper.png","webpack:///./src/assets/icons/good.png","webpack:///./src/assets/icons/flowergirl.png","webpack:///./src/assets/icons/monk.png","webpack:///./src/components/modals/RoleModal.vue?13aa","webpack:///./src/assets/icons/nodashii.png","webpack:///./src/assets/icons/saint.png","webpack:///./src/assets/icons/fanggu.png","webpack:///./src/assets/icons/fibbin.png","webpack:///./src/assets/icons/dreamer.png","webpack:///./src/assets/editions/tb-outsider.png","webpack:///./src/assets/editions/bmr.png","webpack:///./src/components/Player.vue?6d3c","webpack:///./src/components/TownInfo.vue?02bb","webpack:///./src/assets/icons/pithag.png","webpack:///./src/assets/icons/bishop.png","webpack:///./src/components/modals/Modal.vue?3563","webpack:///./src/assets/icons/acrobat.png","webpack:///./src/assets/icons/mathematician.png","webpack:///./src/assets/icons/bountyhunter.png","webpack:///./src/assets/icons/deusexfiasco.png","webpack:///./src/assets/icons/assassin.png","webpack:///./src/assets/editions/luf.png","webpack:///./src/assets/icons/godfather.png","webpack:///./src/assets/icons/thief.png","webpack:///./src/components/Menu.vue?87b8","webpack:///./src/assets/icons/tinker.png","webpack:///./src/assets/icons/hellslibrarian.png","webpack:///./src/assets/editions/tb-demon.png","webpack:///./src/assets/icons/stormcatcher.png","webpack:///./src/assets/icons/pukka.png","webpack:///./src/assets/icons/voudon.png","webpack:///./src/assets/icons/revolutionary.png","webpack:///./src/assets/icons/seamstress.png","webpack:///./src/assets/icons/general.png","webpack:///./src/assets/icons/klutz.png","webpack:///./src/assets/icons/sentinel.png","webpack:///./src/assets/icons/matron.png","webpack:///./src/assets/icons/mayor.png","webpack:///./src/assets/icons/professor.png","webpack:///./src/components/modals/VoteHistoryModal.vue?7280","webpack:///./src/assets/icons/investigator.png","webpack:///./src/assets/icons/tealady.png","webpack:///./src/assets/icons/empath.png","webpack:///./src/assets/icons/angel.png","webpack:///./src/components/Intro.vue?dc06","webpack:///./src/assets/icons/evil.png","webpack:///./src/assets/icons/lilmonsta.png","webpack:///./src/assets/icons/fisherman.png","webpack:///./src/components/modals/ReminderModal.vue?c9e9","webpack:///./src/assets/icons/po.png","webpack:///./src/assets/icons/grandmother.png","webpack:///./src/assets/icons/gossip.png","webpack:///./src/assets/editions/bmr-demon.png","webpack:///./src/assets/icons/devilsadvocate.png","webpack:///./src/assets/editions sync ^\\.\\/.*\\.png$","webpack:///./src/assets/icons/beggar.png","webpack:///./src/assets/icons/slayer.png","webpack:///./src/assets/icons/savant.png","webpack:///./src/assets/icons/drunk.png","webpack:///./src/assets/icons/gambler.png","webpack:///./src/store/persistence.js","webpack:///./src/assets/icons/eviltwin.png","webpack:///./src/components/modals/RolesModal.vue?57a8","webpack:///./src/assets/icons/djinn.png","webpack:///./src/components/Vote.vue?170c","webpack:///./src/components/modals/EditionModal.vue?e1e7","webpack:///./src/assets/editions/bmr-outsider.png","webpack:///./src/assets/editions/bmr-townsfolk.png","webpack:///./src/assets/icons/spy.png","webpack:///./src/assets/editions/snv-townsfolk.png","webpack:///./src/assets/icons/courtier.png","webpack:///./src/assets/icons/gunslinger.png","webpack:///./src/assets/icons/virgin.png","webpack:///./src/assets/icons/judge.png","webpack:///./src/assets/icons/sweetheart.png","webpack:///./src/assets/icons/poisoner.png","webpack:///./src/assets/icons/scarletwoman.png","webpack:///./src/assets/editions/snv-demon.png","webpack:///./src/assets/icons/vigormortis.png","webpack:///./src/assets/icons/witch.png","webpack:///./src/assets/sounds/countdown.mp3","webpack:///./src/assets/editions/tb-townsfolk.png","webpack:///./src/assets/icons/mastermind.png","webpack:///./src/assets/icons/clockmaker.png","webpack:///./src/assets/icons/barber.png","webpack:///./src/assets/icons/custom.png","webpack:///./src/components/modals/FabledModal.vue?31c5","webpack:///./src/assets/icons/pacifist.png"],"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","exports","module","l","m","c","d","name","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","p","jsonpArray","window","oldJsonpFunction","slice","render","_vm","this","_h","$createElement","_c","_self","class","screenshot","grimoire","isScreenshot","night","isNight","style","backgroundImage","background","attrs","on","keyup","staticClass","players","_e","session","nomination","takeScreenshot","ref","_v","_s","version","staticRenderFns","public","isPublic","spectator","isSpectator","vote","_l","player","index","from","Math","max","swap","move","nominate","$event","$emit","handleTrigger","closed","isBluffsOpen","stopPropagation","toggleBluffs","openRoleModal","bluffs","fabled","isFabledOpen","toggleFabled","role","removeFabled","nightOrder","first","isNightOrder","firstNightReminder","other","otherNightReminder","selectedPlayer","dead","isDead","isVoteless","you","sessionId","id","playerId","votes","voteLocked","team","toggleStatus","_f","cancel","swapPlayer","movePlayer","nominatePlayer","highlight","isRolesDistributed","updatePlayer","active","isMenuOpen","changeName","removePlayer","disabled","claimSeat","reminder","removeReminder","image","setRole","firstNight","otherNight","reminders","ability","props","type","default","filters","nameToFontSize","methods","component","components","Token","required","computed","indexOf","indexAdjusted","lockedVote","zoom","unit","innerWidth","innerHeight","width","isSwap","handleEmojis","text","replace","height","x","y","$refs","getBoundingClientRect","prompt","closeMenu","$store","commit","modals","availableReminders","playerIndex","toggleModal","addReminder","close","_t","Modal","state","roles","forEach","some","bluff","map","remindersGlobal","availableRoles","Player","RoleModal","ReminderModal","bluffSize","method","params","confirm","to","undefined","edition","logo","teams","traveler","isOfficial","author","alive","townsfolk","outsider","minion","demon","nonTravelers","getters","filter","game","reconnecting","isReconnecting","ping","leaveSession","playerCount","success","isScreenshotSuccess","open","toggleMenu","tab","toggleGrimoire","toggleNight","toggleNightOrder","setZoom","round","setBackground","hostSession","joinSession","copySessionUrl","distributeRoles","voteHistory","addPlayer","randomizeSeatings","clearPlayers","clearRoles","stream","canvas","video","alert","navigator","mediaDevices","getDisplayMedia","cursor","audio","err","srcObject","play","setTimeout","context","getContext","setAttribute","videoWidth","videoHeight","drawImage","toBlob","blob","item","ClipboardItem","clipboard","write","Screenshot","dimensions","capture","random","toLocaleLowerCase","substr","permissions","query","then","url","location","href","split","link","writeText","popup","dispatch","teamRoles","selected","selectedRoles","assignRoles","selectRandomRoles","randomElement","arr","floor","roleSelection","values","reduce","a","b","hasSelectedSetupRoles","setup","$set","composition","keys","available","sort","pop","mounted","watch","isCustom","script","handleURL","handleUpload","openUpload","promptURL","setEdition","editions","scripts","upload","click","file","files","size","reader","FileReader","addEventListener","JSON","parse","parseRoles","e","message","readAsText","res","fetch","json","metaIndex","findIndex","meta","customRoles","assign","has","_m","reference","playersByRole","join","rolesGrouped","nominator","nominee","voters","ceil","isVoteInProgress","votingSpeed","currentVote","preventDefault","setVotingSpeed","countdown","pause","voteTimer","stop","start","finish","nominatorStyle","transform","transitionDuration","nomineeStyle","lock","rotation","min","find","canVote","reorder","setInterval","clearInterval","diff","speed","gradient","gradients","rolesFirstNight","rolesOtherNight","setFabled","fable","directives","rawName","expression","clearVoteHistory","majority","domProps","gamestate","input","target","select","copy","load","stringify","GameStateModal","VoteHistoryModal","FabledModal","NightOrderModal","Vote","ReferenceModal","Intro","TownInfo","TownSquare","Menu","EditionModal","RolesModal","Gradients","menu","ctrlKey","metaKey","LiveSession","store","_wss","_socket","_isSpectator","_gamestate","_store","_pingInterval","_pingTimer","_reconnectTimer","_players","_pings","connect","channel","disconnect","WebSocket","_handleMessage","onopen","_onOpen","onclose","code","reason","command","readyState","send","_send","sendGamestate","_ping","_handlePing","clearTimeout","console","log","_updateEdition","_updateFabled","_updateGamestate","_updatePlayer","_updateSeat","_handleVote","_handleLock","_handleBye","toString","_open","isLightweight","roleId","sendEdition","Array","missing","latency","now","Date","getTime","parseInt","pings","seat","oldIndex","fromST","payload","subscribe","hash","setVoteInProgress","lockVote","setIsNight","sendFabled","sendPlayer","NEWPLAYER","includes","Map","set","actions","rootState","mutations","isArray","namespaced","val","handleVote","claimedSeat","setSessionId","setPlayerId","setSpectator","setReconnecting","setPlayerCount","setPing","isBanishment","voteSync","use","editionJSONbyId","rolesJSONbyId","getRolesByEdition","localeCompare","imageBase","customRole","Store","gameState","strippedRole","prop","document","title","modal","status","plugins","socket","faIcons","fabIcons","add","config","productionTip","h","App","$mount","webpackContext","req","webpackContextResolve","Error","resolve","localStorage","getItem","parseFloat","setItem","removeItem"],"mappings":"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,8B,uBCA3CC,EAAOD,QAAU,IAA0B,4B,uBCA3CC,EAAOD,QAAU,IAA0B,2B,uBCA3CC,EAAOD,QAAU,IAA0B,gC,uBCA3CC,EAAOD,QAAU,IAA0B,kC,uBCA3CC,EAAOD,QAAU,IAA0B,+B,uBCA3CC,EAAOD,QAAU,IAA0B,gC,gDCA3CC,EAAOD,QAAU,IAA0B,yB,uBCA3CC,EAAOD,QAAU,IAA0B,4B,uBCA3CC,EAAOD,QAAU,IAA0B,2B,+GCA3C,W,uBCAAC,EAAOD,QAAU,IAA0B,6B,uBCA3CC,EAAOD,QAAU,IAA0B,yB,qBCA3CC,EAAOD,QAAU,IAA0B,6B,uBCA3CC,EAAOD,QAAU,IAA0B,4B,uBCA3CC,EAAOD,QAAU,IAA0B,2B,8CCA3CC,EAAOD,QAAU,IAA0B,0B,uBCA3CC,EAAOD,QAAU,IAA0B,kC,uBCA3CC,EAAOD,QAAU,IAA0B,0B,uBCA3CC,EAAOD,QAAU,IAA0B,+B,uBCA3CC,EAAOD,QAAU,IAA0B,+B,uBCA3CC,EAAOD,QAAU,IAA0B,8B,uBCA3CC,EAAOD,QAAU,IAA0B,2B,oCCA3C,W,uBCAAC,EAAOD,QAAU,IAA0B,wB,oCCA3C,W,uBCAAC,EAAOD,QAAU,IAA0B,yB,uBCA3CC,EAAOD,QAAU,IAA0B,8B,qBCA3CC,EAAOD,QAAU,IAA0B,gC,kCCA3C,W,gDCAAC,EAAOD,QAAU,IAA0B,4B,uBCA3CC,EAAOD,QAAU,IAA0B,8B,uBCA3CC,EAAOD,QAAU,IAA0B,+B,8CCA3CC,EAAOD,QAAU,IAA0B,6B,uBCA3CC,EAAOD,QAAU,IAA0B,2B,oCCA3C,W,uBCAAC,EAAOD,QAAU,IAA0B,4B,uBCA3CC,EAAOD,QAAU,IAA0B,wB,uBCA3CC,EAAOD,QAAU,IAA0B,8B,oCCA3C,W,qBCAAC,EAAOD,QAAU,IAA0B,iC,uBCA3CC,EAAOD,QAAU,IAA0B,kC,uBCA3CC,EAAOD,QAAU,IAA0B,2B,uBCA3CC,EAAOD,QAAU,IAA0B,+B,qBCA3CC,EAAOD,QAAU,IAA0B,yB,uBCA3CC,EAAOD,QAAU,IAA0B,+B,uBCA3CC,EAAOD,QAAU,IAA0B,8B,uBCA3CC,EAAOD,QAAU,IAA0B,iC,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","file":"js/app.54b65005.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"app\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// 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\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 \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([\"56d7\",\"chunk-vendors\"]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","module.exports = __webpack_public_path__ + \"img/washerwoman.a0c66e53.png\";","module.exports = __webpack_public_path__ + \"img/barista.fd2bba67.png\";","module.exports = __webpack_public_path__ + \"img/cerenovus.736554ca.png\";","module.exports = __webpack_public_path__ + \"img/amnesiac.03ce8f67.png\";","module.exports = __webpack_public_path__ + \"img/politician.32246fcf.png\";","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!./ReferenceModal.vue?vue&type=style&index=0&id=1f1dc41a&lang=scss&scoped=true&\"","module.exports = __webpack_public_path__ + \"img/tb.438499cd.png\";","module.exports = __webpack_public_path__ + \"img/shabaloth.f461dd08.png\";","module.exports = __webpack_public_path__ + \"img/lunatic.f2982146.png\";","module.exports = __webpack_public_path__ + \"img/oracle.63459162.png\";","module.exports = __webpack_public_path__ + \"img/ravenkeeper.552f1f2f.png\";","module.exports = __webpack_public_path__ + \"img/spiritofivory.1ec5112e.png\";","module.exports = __webpack_public_path__ + \"img/undertaker.1df72155.png\";","module.exports = __webpack_public_path__ + \"img/chambermaid.b6f002ce.png\";","module.exports = __webpack_public_path__ + \"img/plus.c11bf1ed.png\";","module.exports = __webpack_public_path__ + \"img/recluse.a6519a1d.png\";","module.exports = __webpack_public_path__ + \"img/mutant.b28a535c.png\";","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Screenshot.vue?vue&type=style&index=0&id=6443af38&scoped=true&lang=css&\"","module.exports = __webpack_public_path__ + \"img/buddhist.72caa1e8.png\";","module.exports = __webpack_public_path__ + \"img/chef.d4e7f9a6.png\";","module.exports = __webpack_public_path__ + \"img/preacher.f3f608a6.png\";","module.exports = __webpack_public_path__ + \"img/zombuul.ec71a259.png\";","module.exports = __webpack_public_path__ + \"img/sailor.631521c2.png\";","module.exports = __webpack_public_path__ + \"img/widow.ec8d8cb0.png\";","module.exports = __webpack_public_path__ + \"img/bonecollector.846af8c8.png\";","module.exports = __webpack_public_path__ + \"img/baron.9ce9bd3b.png\";","module.exports = __webpack_public_path__ + \"img/bureaucrat.88ec372a.png\";","module.exports = __webpack_public_path__ + \"img/bmr-minion.6559191b.png\";","module.exports = __webpack_public_path__ + \"img/leviathan.dfbff6e8.png\";","module.exports = __webpack_public_path__ + \"img/artist.f89690cd.png\";","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!./GameStateModal.vue?vue&type=style&index=0&id=8fd8456c&lang=scss&scoped=true&\"","module.exports = __webpack_public_path__ + \"img/snv.288a42ad.png\";","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!./NightOrderModal.vue?vue&type=style&index=0&id=4ac9211c&lang=scss&scoped=true&\"","module.exports = __webpack_public_path__ + \"img/sage.5afc100d.png\";","module.exports = __webpack_public_path__ + \"img/scapegoat.8bd95c23.png\";","module.exports = __webpack_public_path__ + \"img/philosopher.92032c70.png\";","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!./TownSquare.vue?vue&type=style&index=0&lang=scss&\"","module.exports = __webpack_public_path__ + \"img/butcher.e0b672b7.png\";","module.exports = __webpack_public_path__ + \"img/towncrier.18a4377b.png\";","module.exports = __webpack_public_path__ + \"img/cultleader.de1fca53.png\";","module.exports = __webpack_public_path__ + \"img/toymaker.07b2e8fa.png\";","module.exports = __webpack_public_path__ + \"img/vortox.6add3a3a.png\";","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!./Token.vue?vue&type=style&index=0&id=7c2c8be2&scoped=true&lang=scss&\"","module.exports = __webpack_public_path__ + \"img/deviant.e8a761ae.png\";","module.exports = __webpack_public_path__ + \"img/imp.cd0fa5b8.png\";","module.exports = __webpack_public_path__ + \"img/moonchild.6c84161e.png\";","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!./Gradients.vue?vue&type=style&index=0&id=1e202a64&lang=scss&scoped=true&\"","module.exports = __webpack_public_path__ + \"img/snakecharmer.e512cc1e.png\";","module.exports = __webpack_public_path__ + \"img/fortuneteller.4396927c.png\";","module.exports = __webpack_public_path__ + \"img/custom.5334aaeb.png\";","module.exports = __webpack_public_path__ + \"img/snv-minion.60768802.png\";","module.exports = __webpack_public_path__ + \"img/fool.a730aab3.png\";","module.exports = __webpack_public_path__ + \"img/apprentice.b7055345.png\";","module.exports = __webpack_public_path__ + \"img/librarian.6fd7f267.png\";","module.exports = __webpack_public_path__ + \"img/snv-outsider.5b5cae7f.png\";","module.exports = __webpack_public_path__ + \"img/soldier.451de0df.png\";","module.exports = __webpack_public_path__ + \"img/minstrel.1647382d.png\";","module.exports = __webpack_public_path__ + \"img/exorcist.8c0f5cac.png\";","module.exports = __webpack_public_path__ + \"img/harlot.1a418200.png\";","module.exports = __webpack_public_path__ + \"img/goon.719106f2.png\";","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:{\n screenshot: _vm.grimoire.isScreenshot,\n night: _vm.grimoire.isNight\n },style:({\n backgroundImage: _vm.grimoire.background\n ? (\"url('\" + (_vm.grimoire.background) + \"')\")\n : ''\n }),attrs:{\"id\":\"app\",\"tabindex\":\"-1\"},on:{\"keyup\":_vm.keyup}},[_c('div',{staticClass:\"backdrop\"}),_c('transition',{attrs:{\"name\":\"blur\"}},[(!_vm.players.length)?_c('Intro'):_vm._e(),(_vm.players.length && !_vm.session.nomination)?_c('TownInfo'):_vm._e(),(_vm.session.nomination)?_c('Vote'):_vm._e()],1),_c('TownSquare',{on:{\"screenshot\":_vm.takeScreenshot}}),_c('Menu',{ref:\"menu\"}),_c('EditionModal'),_c('FabledModal'),_c('RolesModal'),_c('ReferenceModal'),_c('NightOrderModal'),_c('VoteHistoryModal'),_c('GameStateModal'),_c('Gradients'),_c('span',{attrs:{\"id\":\"version\"}},[_vm._v(\"v\"+_vm._s(_vm.version))])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"square\",class:{\n public: _vm.grimoire.isPublic,\n spectator: _vm.session.isSpectator,\n vote: _vm.session.nomination\n },attrs:{\"id\":\"townsquare\"}},[_c('ul',{staticClass:\"circle\",class:['size-' + _vm.players.length]},_vm._l((_vm.players),function(player,index){return _c('Player',{key:index,class:{\n from: Math.max(_vm.swap, _vm.move, _vm.nominate) === index,\n swap: _vm.swap > -1,\n move: _vm.move > -1,\n nominate: _vm.nominate > -1\n },attrs:{\"player\":player},on:{\"screenshot\":function($event){return _vm.$emit('screenshot', $event)},\"trigger\":function($event){return _vm.handleTrigger(index, $event)}}})}),1),(_vm.players.length)?_c('div',{ref:\"bluffs\",staticClass:\"bluffs\",class:{ closed: !_vm.isBluffsOpen }},[_c('h3',[_c('font-awesome-icon',{attrs:{\"icon\":\"camera\"},on:{\"click\":function($event){$event.stopPropagation();return _vm.takeScreenshot($event)}}}),(_vm.session.isSpectator)?_c('span',[_vm._v(\"Other characters\")]):_c('span',[_vm._v(\"Demon bluffs\")]),_c('font-awesome-icon',{attrs:{\"icon\":\"times-circle\"},on:{\"click\":function($event){$event.stopPropagation();return _vm.toggleBluffs($event)}}}),_c('font-awesome-icon',{attrs:{\"icon\":\"plus-circle\"},on:{\"click\":function($event){$event.stopPropagation();return _vm.toggleBluffs($event)}}})],1),_c('ul',_vm._l((_vm.bluffSize),function(index){return _c('li',{key:index,on:{\"click\":function($event){return _vm.openRoleModal(index * -1)}}},[_c('Token',{attrs:{\"role\":_vm.bluffs[index - 1]}})],1)}),0)]):_vm._e(),(_vm.fabled.length)?_c('div',{staticClass:\"fabled\",class:{ closed: !_vm.isFabledOpen }},[_c('h3',[_c('span',[_vm._v(\"Fabled\")]),_c('font-awesome-icon',{attrs:{\"icon\":\"times-circle\"},on:{\"click\":function($event){$event.stopPropagation();return _vm.toggleFabled($event)}}}),_c('font-awesome-icon',{attrs:{\"icon\":\"plus-circle\"},on:{\"click\":function($event){$event.stopPropagation();return _vm.toggleFabled($event)}}})],1),_c('ul',_vm._l((_vm.fabled),function(role,index){return _c('li',{key:index,on:{\"click\":function($event){return _vm.removeFabled(index)}}},[(_vm.nightOrder.get(role).first && _vm.grimoire.isNightOrder)?_c('div',{staticClass:\"night-order first\"},[_c('em',[_vm._v(_vm._s(_vm.nightOrder.get(role).first)+\".\")]),(role.firstNightReminder)?_c('span',[_vm._v(_vm._s(role.firstNightReminder))]):_vm._e()]):_vm._e(),(_vm.nightOrder.get(role).other && _vm.grimoire.isNightOrder)?_c('div',{staticClass:\"night-order other\"},[_c('em',[_vm._v(_vm._s(_vm.nightOrder.get(role).other)+\".\")]),(role.otherNightReminder)?_c('span',[_vm._v(_vm._s(role.otherNightReminder))]):_vm._e()]):_vm._e(),_c('Token',{attrs:{\"role\":role}})],1)}),0)]):_vm._e(),_c('ReminderModal',{attrs:{\"player-index\":_vm.selectedPlayer}}),_c('RoleModal',{attrs:{\"player-index\":_vm.selectedPlayer}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('li',{style:(_vm.zoom)},[_c('div',{ref:\"player\",staticClass:\"player\",class:[\n {\n dead: _vm.player.isDead,\n 'no-vote': _vm.player.isVoteless,\n you: _vm.session.sessionId && _vm.player.id && _vm.player.id === _vm.session.playerId,\n 'vote-yes': _vm.session.votes[_vm.index],\n 'vote-lock': _vm.voteLocked\n },\n _vm.player.role.team\n ]},[_c('div',{staticClass:\"shroud\",on:{\"click\":function($event){return _vm.toggleStatus()}}}),_c('div',{staticClass:\"life\",on:{\"click\":function($event){return _vm.toggleStatus()}}}),(_vm.nightOrder.get(_vm.player).first && _vm.grimoire.isNightOrder)?_c('div',{staticClass:\"night-order first\"},[_c('em',[_vm._v(_vm._s(_vm.nightOrder.get(_vm.player).first)+\".\")]),(_vm.player.role.firstNightReminder)?_c('span',[_vm._v(_vm._s(_vm._f(\"handleEmojis\")(_vm.player.role.firstNightReminder)))]):_vm._e()]):_vm._e(),(_vm.nightOrder.get(_vm.player).other && _vm.grimoire.isNightOrder)?_c('div',{staticClass:\"night-order other\"},[_c('em',[_vm._v(_vm._s(_vm.nightOrder.get(_vm.player).other)+\".\")]),(_vm.player.role.otherNightReminder)?_c('span',[_vm._v(_vm._s(_vm._f(\"handleEmojis\")(_vm.player.role.otherNightReminder)))]):_vm._e()]):_vm._e(),_c('Token',{attrs:{\"role\":_vm.player.role},on:{\"set-role\":function($event){return _vm.$emit('trigger', ['openRoleModal'])}}}),_c('div',{staticClass:\"overlay\"},[_c('font-awesome-icon',{staticClass:\"vote\",attrs:{\"icon\":\"hand-paper\",\"title\":\"Hand UP\"},on:{\"click\":function($event){return _vm.vote()}}}),_c('font-awesome-icon',{staticClass:\"vote\",attrs:{\"icon\":\"times\",\"title\":\"Hand DOWN\"},on:{\"click\":function($event){return _vm.vote()}}}),_c('font-awesome-icon',{staticClass:\"cancel\",attrs:{\"icon\":\"times-circle\",\"title\":\"Cancel\"},on:{\"click\":function($event){return _vm.cancel()}}}),_c('font-awesome-icon',{staticClass:\"swap\",attrs:{\"icon\":\"exchange-alt\",\"title\":\"Swap seats with this player\"},on:{\"click\":function($event){return _vm.swapPlayer(_vm.player)}}}),_c('font-awesome-icon',{staticClass:\"move\",attrs:{\"icon\":\"redo-alt\",\"title\":\"Move player to this seat\"},on:{\"click\":function($event){return _vm.movePlayer(_vm.player)}}}),_c('font-awesome-icon',{staticClass:\"nominate\",attrs:{\"icon\":\"hand-point-right\",\"title\":\"Nominate this player\"},on:{\"click\":function($event){return _vm.nominatePlayer(_vm.player)}}})],1),(_vm.player.id && _vm.session.sessionId)?_c('font-awesome-icon',{staticClass:\"seat\",class:{ highlight: _vm.session.isRolesDistributed },attrs:{\"icon\":\"chair\"}}):_vm._e(),(_vm.player.isDead && !_vm.player.isVoteless)?_c('font-awesome-icon',{staticClass:\"has-vote\",attrs:{\"icon\":\"vote-yea\",\"title\":\"Ghost vote\"},on:{\"click\":function($event){return _vm.updatePlayer('isVoteless', true)}}}):_vm._e(),_c('div',{staticClass:\"name\",class:{ active: _vm.isMenuOpen },on:{\"click\":function($event){_vm.isMenuOpen = !_vm.isMenuOpen}}},[_vm._v(\" \"+_vm._s(_vm.player.name)+\" \")]),_c('transition',{attrs:{\"name\":\"fold\"}},[(_vm.isMenuOpen)?_c('ul',{staticClass:\"menu\"},[(!_vm.session.isSpectator)?[_c('li',{on:{\"click\":_vm.changeName}},[_c('font-awesome-icon',{attrs:{\"icon\":\"user-edit\"}}),_vm._v(\"Rename \")],1),(!_vm.session.nomination)?_c('li',{on:{\"click\":function($event){return _vm.nominatePlayer()}}},[_c('font-awesome-icon',{attrs:{\"icon\":\"hand-point-right\"}}),_vm._v(\" Nomination \")],1):_vm._e(),_c('li',{on:{\"click\":function($event){return _vm.movePlayer()}}},[_c('font-awesome-icon',{attrs:{\"icon\":\"redo-alt\"}}),_vm._v(\" Move player \")],1),_c('li',{on:{\"click\":function($event){return _vm.swapPlayer()}}},[_c('font-awesome-icon',{attrs:{\"icon\":\"exchange-alt\"}}),_vm._v(\" Swap seats \")],1),_c('li',{staticClass:\"screenshot\",on:{\"click\":_vm.takeScreenshot}},[_c('font-awesome-icon',{attrs:{\"icon\":\"camera\"}}),_vm._v(\" Screenshot \")],1),_c('li',{on:{\"click\":_vm.removePlayer}},[_c('font-awesome-icon',{attrs:{\"icon\":\"times-circle\"}}),_vm._v(\" Remove \")],1),(_vm.player.id && _vm.session.sessionId)?_c('li',{on:{\"click\":function($event){return _vm.updatePlayer('id', '', true)}}},[_c('font-awesome-icon',{attrs:{\"icon\":\"chair\"}}),_vm._v(\" Empty seat \")],1):_vm._e()]:_vm._e(),(_vm.session.isSpectator)?_c('li',{class:{ disabled: _vm.player.id && _vm.player.id !== _vm.session.playerId },on:{\"click\":_vm.claimSeat}},[_c('font-awesome-icon',{attrs:{\"icon\":\"chair\"}}),(!_vm.player.id)?[_vm._v(\" Claim seat \")]:(_vm.player.id === _vm.session.playerId)?[_vm._v(\" Vacate seat \")]:[_vm._v(\" Seat occupied\")]],2):_vm._e()],2):_vm._e()])],1),(_vm.player.reminders)?_vm._l((_vm.player.reminders),function(reminder){return _c('div',{key:reminder.role + ' ' + reminder.name,staticClass:\"reminder\",class:[reminder.role],on:{\"click\":function($event){return _vm.removeReminder(reminder)}}},[_c('span',{staticClass:\"icon\",style:({\n backgroundImage: (\"url(\" + (reminder.image ||\n require('../assets/icons/' + reminder.role + '.png')) + \")\")\n })}),_c('span',{staticClass:\"text\"},[_vm._v(_vm._s(reminder.name))])])}):_vm._e(),_c('div',{staticClass:\"reminder add\",on:{\"click\":function($event){return _vm.$emit('trigger', ['openReminderModal'])}}},[_c('span',{staticClass:\"icon\"})])],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"token\",class:[_vm.role.id],on:{\"click\":_vm.setRole}},[(_vm.role.id)?_c('span',{staticClass:\"icon\",style:({\n backgroundImage: (\"url(\" + (_vm.role.image ||\n require('../assets/icons/' + _vm.role.id + '.png')) + \")\")\n })}):_vm._e(),(_vm.role.firstNight || _vm.role.firstNightReminder)?_c('span',{staticClass:\"leaf-left\"}):_vm._e(),(_vm.role.otherNight || _vm.role.otherNightReminder)?_c('span',{staticClass:\"leaf-right\"}):_vm._e(),(_vm.role.reminders && _vm.role.reminders.length)?_c('span',{class:['leaf-top' + _vm.role.reminders.length]}):_vm._e(),(_vm.role.setup)?_c('span',{staticClass:\"leaf-orange\"}):_vm._e(),_c('svg',{staticClass:\"name\",attrs:{\"viewBox\":\"0 0 150 150\"}},[_c('path',{attrs:{\"d\":\"M 13 75 C 13 160, 138 160, 138 75\",\"id\":\"curve\",\"fill\":\"transparent\"}}),_c('text',{staticClass:\"label mozilla\",attrs:{\"width\":\"150\",\"x\":\"66.6%\",\"text-anchor\":\"middle\",\"font-size\":_vm._f(\"nameToFontSize\")(_vm.role.name)}},[_c('textPath',{attrs:{\"xlink:href\":\"#curve\"}},[_vm._v(\" \"+_vm._s(_vm.role.name)+\" \")])])]),_c('div',{staticClass:\"edition\",class:[(\"edition-\" + (_vm.role.edition)), _vm.role.team]}),(_vm.role.ability)?_c('div',{staticClass:\"ability\"},[_vm._v(\" \"+_vm._s(_vm.role.ability)+\" \")]):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Token.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Token.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Token.vue?vue&type=template&id=7c2c8be2&scoped=true&\"\nimport script from \"./Token.vue?vue&type=script&lang=js&\"\nexport * from \"./Token.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Token.vue?vue&type=style&index=0&id=7c2c8be2&scoped=true&lang=scss&\"\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 \"7c2c8be2\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Player.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Player.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Player.vue?vue&type=template&id=4902e118&\"\nimport script from \"./Player.vue?vue&type=script&lang=js&\"\nexport * from \"./Player.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Player.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.modals.reminder && _vm.availableReminders.length && _vm.players[_vm.playerIndex])?_c('Modal',{on:{\"close\":function($event){return _vm.toggleModal('reminder')}}},[_c('h3',[_vm._v(\"Choose a reminder token:\")]),_c('ul',{staticClass:\"reminders\"},_vm._l((_vm.availableReminders),function(reminder){return _c('li',{key:reminder.role + ' ' + reminder.name,staticClass:\"reminder\",class:[reminder.role],on:{\"click\":function($event){return _vm.addReminder(reminder)}}},[_c('span',{staticClass:\"icon\",style:({\n backgroundImage: (\"url(\" + (reminder.image ||\n require('../../assets/icons/' + reminder.role + '.png')) + \")\")\n })}),_c('span',{staticClass:\"text\"},[_vm._v(_vm._s(reminder.name))])])}),0)]):_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\":\"modal-fade\"}},[_c('div',{staticClass:\"modal-backdrop\",on:{\"click\":_vm.close}},[_c('div',{staticClass:\"modal\",attrs:{\"role\":\"dialog\",\"aria-labelledby\":\"modalTitle\",\"aria-describedby\":\"modalDescription\"},on:{\"click\":function($event){$event.stopPropagation();}}},[_c('font-awesome-icon',{staticClass:\"close\",attrs:{\"icon\":\"times-circle\"},on:{\"click\":_vm.close}}),_vm._t(\"default\")],2)])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Modal.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Modal.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Modal.vue?vue&type=template&id=58a2373b&\"\nimport script from \"./Modal.vue?vue&type=script&lang=js&\"\nexport * from \"./Modal.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Modal.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReminderModal.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReminderModal.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ReminderModal.vue?vue&type=template&id=379163d6&scoped=true&\"\nimport script from \"./ReminderModal.vue?vue&type=script&lang=js&\"\nexport * from \"./ReminderModal.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ReminderModal.vue?vue&type=style&index=0&id=379163d6&scoped=true&lang=scss&\"\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 \"379163d6\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.modals.role && _vm.availableRoles.length)?_c('Modal',{on:{\"close\":function($event){return _vm.toggleModal('role')}}},[_c('h3',[_vm._v(\" Choose a new character for \"+_vm._s(_vm.playerIndex >= 0 && _vm.players.length ? _vm.players[_vm.playerIndex].name : \"bluffing\")+\" \")]),_c('ul',{staticClass:\"tokens\"},_vm._l((_vm.availableRoles),function(role){return _c('li',{key:role.id,class:[role.team],on:{\"click\":function($event){return _vm.setRole(role)}}},[_c('Token',{attrs:{\"role\":role}})],1)}),0)]):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RoleModal.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RoleModal.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./RoleModal.vue?vue&type=template&id=608ee42c&scoped=true&\"\nimport script from \"./RoleModal.vue?vue&type=script&lang=js&\"\nexport * from \"./RoleModal.vue?vue&type=script&lang=js&\"\nimport style0 from \"./RoleModal.vue?vue&type=style&index=0&id=608ee42c&scoped=true&lang=scss&\"\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 \"608ee42c\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownSquare.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownSquare.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownSquare.vue?vue&type=template&id=a5bbcee8&\"\nimport script from \"./TownSquare.vue?vue&type=script&lang=js&\"\nexport * from \"./TownSquare.vue?vue&type=script&lang=js&\"\nimport style0 from \"./TownSquare.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('ul',{staticClass:\"info\"},[_c('li',{staticClass:\"edition\",class:['edition-' + _vm.edition.id],style:({\n backgroundImage: (\"url(\" + (_vm.edition.logo ||\n require('../assets/editions/' + _vm.edition.id + '.png')) + \")\")\n })}),(_vm.players.length - _vm.teams.traveler < 5)?_c('li',[_vm._v(\" Please add more players! \")]):_vm._e(),_c('li',[(!_vm.edition.isOfficial)?_c('span',{staticClass:\"meta\"},[_vm._v(\" \"+_vm._s(_vm.edition.name)+\" \"+_vm._s(_vm.edition.author ? \"by \" + _vm.edition.author : \"\")+\" \")]):_vm._e(),_c('span',[_vm._v(\" \"+_vm._s(_vm.players.length)+\" \"),_c('font-awesome-icon',{staticClass:\"players\",attrs:{\"icon\":\"users\"}})],1),_c('span',[_vm._v(\" \"+_vm._s(_vm.teams.alive)+\" \"),_c('font-awesome-icon',{staticClass:\"alive\",attrs:{\"icon\":\"heartbeat\"}})],1),_c('span',[_vm._v(\" \"+_vm._s(_vm.teams.votes)+\" \"),_c('font-awesome-icon',{staticClass:\"votes\",attrs:{\"icon\":\"vote-yea\"}})],1)]),(_vm.players.length - _vm.teams.traveler >= 5)?_c('li',[_c('span',[_vm._v(\" \"+_vm._s(_vm.teams.townsfolk)+\" \"),_c('font-awesome-icon',{staticClass:\"townsfolk\",attrs:{\"icon\":\"user-friends\"}})],1),_c('span',[_vm._v(\" \"+_vm._s(_vm.teams.outsider)+\" \"),_c('font-awesome-icon',{staticClass:\"outsider\",attrs:{\"icon\":_vm.teams.outsider > 1 ? 'user-friends' : 'user'}})],1),_c('span',[_vm._v(\" \"+_vm._s(_vm.teams.minion)+\" \"),_c('font-awesome-icon',{staticClass:\"minion\",attrs:{\"icon\":_vm.teams.minion > 1 ? 'user-friends' : 'user'}})],1),_c('span',[_vm._v(\" \"+_vm._s(_vm.teams.demon)+\" \"),_c('font-awesome-icon',{staticClass:\"demon\",attrs:{\"icon\":_vm.teams.demon > 1 ? 'user-friends' : 'user'}})],1),(_vm.teams.traveler)?_c('span',[_vm._v(\" \"+_vm._s(_vm.teams.traveler)+\" \"),_c('font-awesome-icon',{staticClass:\"traveler\",attrs:{\"icon\":_vm.teams.traveler > 1 ? 'user-friends' : 'user'}})],1):_vm._e(),(_vm.grimoire.isNight)?_c('span',[_vm._v(\" Night phase \"),_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'cloud-moon']}})],1):_vm._e()]):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownInfo.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TownInfo.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TownInfo.vue?vue&type=template&id=29072d10&scoped=true&\"\nimport script from \"./TownInfo.vue?vue&type=script&lang=js&\"\nexport * from \"./TownInfo.vue?vue&type=script&lang=js&\"\nimport style0 from \"./TownInfo.vue?vue&type=style&index=0&id=29072d10&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 \"29072d10\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{attrs:{\"id\":\"controls\"}},[_c('Screenshot',{ref:\"screenshot\"}),(_vm.session.sessionId)?_c('span',{staticClass:\"session\",class:{\n spectator: _vm.session.isSpectator,\n reconnecting: _vm.session.isReconnecting\n },attrs:{\"title\":((_vm.session.playerCount) + \" other players in this session\" + (_vm.session.ping ? ' (' + _vm.session.ping + 'ms latency)' : ''))},on:{\"click\":_vm.leaveSession}},[_c('font-awesome-icon',{attrs:{\"icon\":\"broadcast-tower\"}}),_vm._v(\" \"+_vm._s(_vm.session.playerCount)+\" \")],1):_vm._e(),_c('span',{staticClass:\"camera\"},[_c('font-awesome-icon',{class:{ success: _vm.grimoire.isScreenshotSuccess },attrs:{\"icon\":\"camera\",\"title\":\"Take a screenshot\"},on:{\"click\":function($event){return _vm.takeScreenshot()}}})],1),_c('div',{staticClass:\"menu\",class:{ open: _vm.grimoire.isMenuOpen }},[_c('font-awesome-icon',{attrs:{\"icon\":\"cog\"},on:{\"click\":_vm.toggleMenu}}),_c('ul',[_c('li',{staticClass:\"tabs\",class:_vm.tab},[_c('font-awesome-icon',{attrs:{\"icon\":\"book-open\"},on:{\"click\":function($event){_vm.tab = 'grimoire'}}}),_c('font-awesome-icon',{attrs:{\"icon\":\"broadcast-tower\"},on:{\"click\":function($event){_vm.tab = 'session'}}}),(!_vm.session.isSpectator)?_c('font-awesome-icon',{attrs:{\"icon\":\"users\"},on:{\"click\":function($event){_vm.tab = 'players'}}}):_vm._e(),_c('font-awesome-icon',{attrs:{\"icon\":\"theater-masks\"},on:{\"click\":function($event){_vm.tab = 'characters'}}}),_c('font-awesome-icon',{attrs:{\"icon\":\"question\"},on:{\"click\":function($event){_vm.tab = 'help'}}})],1),(_vm.tab === 'grimoire')?[_c('li',{staticClass:\"headline\"},[_vm._v(\"Grimoire\")]),(_vm.players.length)?_c('li',{on:{\"click\":_vm.toggleGrimoire}},[(!_vm.grimoire.isPublic)?[_vm._v(\"Hide\")]:_vm._e(),(_vm.grimoire.isPublic)?[_vm._v(\"Show\")]:_vm._e(),_c('em',[_vm._v(\"[G]\")])],2):_vm._e(),(!_vm.session.isSpectator)?_c('li',{on:{\"click\":_vm.toggleNight}},[(!_vm.grimoire.isNight)?[_vm._v(\"Switch to Night\")]:_vm._e(),(_vm.grimoire.isNight)?[_vm._v(\"Switch to Day\")]:_vm._e(),_c('em',[_c('font-awesome-icon',{attrs:{\"icon\":['fas', _vm.grimoire.isNight ? 'sun' : 'cloud-moon']}})],1)],2):_vm._e(),(_vm.players.length)?_c('li',{on:{\"click\":_vm.toggleNightOrder}},[_vm._v(\" Night order \"),_c('em',[_c('font-awesome-icon',{attrs:{\"icon\":[\n 'fas',\n _vm.grimoire.isNightOrder ? 'check-square' : 'square'\n ]}})],1)]):_vm._e(),(_vm.players.length)?_c('li',[_vm._v(\" Zoom \"),_c('em',[_c('font-awesome-icon',{attrs:{\"icon\":\"search-minus\"},on:{\"click\":function($event){return _vm.setZoom(_vm.grimoire.zoom - 1)}}}),_vm._v(\" \"+_vm._s(Math.round(100 + _vm.grimoire.zoom * 10))+\"% \"),_c('font-awesome-icon',{attrs:{\"icon\":\"search-plus\"},on:{\"click\":function($event){return _vm.setZoom(_vm.grimoire.zoom + 1)}}})],1)]):_vm._e(),_c('li',{on:{\"click\":_vm.setBackground}},[_vm._v(\" Background image \"),_c('em',[_c('font-awesome-icon',{attrs:{\"icon\":\"image\"}})],1)])]:_vm._e(),(_vm.tab === 'session')?[(_vm.session.sessionId)?_c('li',{staticClass:\"headline\"},[_vm._v(\" \"+_vm._s(_vm.session.isSpectator ? \"Playing\" : \"Hosting\")+\" \")]):_c('li',{staticClass:\"headline\"},[_vm._v(\" Live Session \")]),(!_vm.session.sessionId)?_c('li',{on:{\"click\":_vm.hostSession}},[_vm._v(\" Host (Storyteller)\"),_c('em',[_vm._v(\"[H]\")])]):_vm._e(),(!_vm.session.sessionId)?_c('li',{on:{\"click\":_vm.joinSession}},[_vm._v(\" Join (Player)\"),_c('em',[_vm._v(\"[J]\")])]):_vm._e(),(_vm.session.sessionId && _vm.session.ping)?_c('li',[_vm._v(\" Delay to \"+_vm._s(_vm.session.isSpectator ? \"host\" : \"players\")+\" \"),_c('em',[_vm._v(_vm._s(_vm.session.ping)+\"ms\")])]):_vm._e(),(_vm.session.sessionId)?_c('li',{on:{\"click\":_vm.copySessionUrl}},[_vm._v(\" Copy player link \"),_c('em',[_c('font-awesome-icon',{attrs:{\"icon\":\"copy\"}})],1)]):_vm._e(),(!_vm.session.isSpectator)?_c('li',{on:{\"click\":_vm.distributeRoles}},[_vm._v(\" Send Characters \"),_c('em',[_c('font-awesome-icon',{attrs:{\"icon\":\"theater-masks\"}})],1)]):_vm._e(),(_vm.session.voteHistory.length)?_c('li',{on:{\"click\":function($event){return _vm.toggleModal('voteHistory')}}},[_vm._v(\" Nomination history \"),_c('em',[_c('font-awesome-icon',{attrs:{\"icon\":\"hand-paper\"}})],1)]):_vm._e(),(_vm.session.sessionId)?_c('li',{on:{\"click\":_vm.leaveSession}},[_vm._v(\" Leave Session \"),_c('em',[_vm._v(_vm._s(_vm.session.sessionId))])]):_vm._e()]:_vm._e(),(_vm.tab === 'players' && !_vm.session.isSpectator)?[_c('li',{staticClass:\"headline\"},[_vm._v(\"Players\")]),(_vm.players.length < 20)?_c('li',{on:{\"click\":_vm.addPlayer}},[_vm._v(\"Add\"),_c('em',[_vm._v(\"[A]\")])]):_vm._e(),(_vm.players.length > 2)?_c('li',{on:{\"click\":_vm.randomizeSeatings}},[_vm._v(\" Randomize \"),_c('em',[_c('font-awesome-icon',{attrs:{\"icon\":\"dice\"}})],1)]):_vm._e(),(_vm.players.length)?_c('li',{on:{\"click\":_vm.clearPlayers}},[_vm._v(\" Remove all \"),_c('em',[_c('font-awesome-icon',{attrs:{\"icon\":\"trash-alt\"}})],1)]):_vm._e()]:_vm._e(),(_vm.tab === 'characters')?[_c('li',{staticClass:\"headline\"},[_vm._v(\"Characters\")]),(!_vm.session.isSpectator)?_c('li',{on:{\"click\":function($event){return _vm.toggleModal('edition')}}},[_vm._v(\" Select Edition \"),_c('em',[_vm._v(\"[E]\")])]):_vm._e(),(!_vm.session.isSpectator && _vm.players.length > 4)?_c('li',{on:{\"click\":function($event){return _vm.toggleModal('roles')}}},[_vm._v(\" Choose & Assign \"),_c('em',[_vm._v(\"[C]\")])]):_vm._e(),(!_vm.session.isSpectator)?_c('li',{on:{\"click\":function($event){return _vm.toggleModal('fabled')}}},[_vm._v(\" Add Fabled \"),_c('em',[_c('font-awesome-icon',{attrs:{\"icon\":\"dragon\"}})],1)]):_vm._e(),(_vm.players.length)?_c('li',{on:{\"click\":_vm.clearRoles}},[_vm._v(\" Remove all \"),_c('em',[_c('font-awesome-icon',{attrs:{\"icon\":\"trash-alt\"}})],1)]):_vm._e()]:_vm._e(),(_vm.tab === 'help')?[_c('li',{staticClass:\"headline\"},[_vm._v(\"Help\")]),_c('li',{on:{\"click\":function($event){return _vm.toggleModal('reference')}}},[_vm._v(\" Reference Sheet \"),_c('em',[_vm._v(\"[R]\")])]),_c('li',{on:{\"click\":function($event){return _vm.toggleModal('nightOrder')}}},[_vm._v(\" Night Order Sheet \"),_c('em',[_vm._v(\"[N]\")])]),_c('li',{on:{\"click\":function($event){return _vm.toggleModal('gameState')}}},[_vm._v(\" Game State JSON \"),_c('em',[_c('font-awesome-icon',{attrs:{\"icon\":\"file-code\"}})],1)]),_c('li',[_c('a',{attrs:{\"href\":\"https://discord.gg/Gd7ybwWbFk\",\"target\":\"_blank\"}},[_vm._v(\" Join Discord \")]),_c('em',[_c('a',{attrs:{\"href\":\"https://discord.gg/Gd7ybwWbFk\",\"target\":\"_blank\"}},[_c('font-awesome-icon',{attrs:{\"icon\":['fab', 'discord']}})],1)])]),_c('li',[_c('a',{attrs:{\"href\":\"https://github.com/bra1n/townsquare\",\"target\":\"_blank\"}},[_vm._v(\" Source code \")]),_c('em',[_c('a',{attrs:{\"href\":\"https://github.com/bra1n/townsquare\",\"target\":\"_blank\"}},[_c('font-awesome-icon',{attrs:{\"icon\":['fab', 'github']}})],1)])])]:_vm._e()],2)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{attrs:{\"id\":\"screenshot\"}},[_c('video',{ref:\"video\",attrs:{\"autoplay\":\"\"}}),_c('canvas',{ref:\"canvas\"})])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Screenshot.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Screenshot.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Screenshot.vue?vue&type=template&id=6443af38&scoped=true&\"\nimport script from \"./Screenshot.vue?vue&type=script&lang=js&\"\nexport * from \"./Screenshot.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Screenshot.vue?vue&type=style&index=0&id=6443af38&scoped=true&lang=css&\"\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 \"6443af38\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Menu.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Menu.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Menu.vue?vue&type=template&id=20e64ad8&scoped=true&\"\nimport script from \"./Menu.vue?vue&type=script&lang=js&\"\nexport * from \"./Menu.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Menu.vue?vue&type=style&index=0&id=20e64ad8&scoped=true&lang=scss&\"\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 \"20e64ad8\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.modals.roles && _vm.nonTravelers >= 5)?_c('Modal',{staticClass:\"roles\",on:{\"close\":function($event){return _vm.toggleModal('roles')}}},[_c('h3',[_vm._v(\"Select the characters for \"+_vm._s(_vm.nonTravelers)+\" players:\")]),_vm._l((_vm.roleSelection),function(teamRoles,team){return _c('ul',{key:team,staticClass:\"tokens\"},[_c('li',{staticClass:\"count\",class:[team]},[_vm._v(\" \"+_vm._s(teamRoles.filter(function (role) { return role.selected; }).length)+\" / \"+_vm._s(_vm.game[_vm.nonTravelers - 5][team])+\" \")]),_vm._l((teamRoles),function(role){return _c('li',{key:role.id,class:[role.team, role.selected ? 'selected' : ''],on:{\"click\":function($event){role.selected = !role.selected}}},[_c('Token',{attrs:{\"role\":role}})],1)})],2)}),(_vm.hasSelectedSetupRoles)?_c('div',{staticClass:\"warning\"},[_vm._v(\" Warning: there are characters selected that modify the game setup! The randomizer does not account for these characters. \")]):_vm._e(),_c('div',{staticClass:\"button-group\"},[_c('div',{staticClass:\"button\",class:{\n disabled: _vm.selectedRoles > _vm.nonTravelers || !_vm.selectedRoles\n },on:{\"click\":_vm.assignRoles}},[_c('font-awesome-icon',{attrs:{\"icon\":\"people-arrows\"}}),_vm._v(\" Assign \"+_vm._s(_vm.selectedRoles)+\" characters randomly \")],1),_c('div',{staticClass:\"button\",on:{\"click\":_vm.selectRandomRoles}},[_c('font-awesome-icon',{attrs:{\"icon\":\"random\"}}),_vm._v(\" Shuffle characters \")],1)])],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--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RolesModal.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RolesModal.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./RolesModal.vue?vue&type=template&id=ff145bbe&scoped=true&\"\nimport script from \"./RolesModal.vue?vue&type=script&lang=js&\"\nexport * from \"./RolesModal.vue?vue&type=script&lang=js&\"\nimport style0 from \"./RolesModal.vue?vue&type=style&index=0&id=ff145bbe&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 \"ff145bbe\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.modals.edition)?_c('Modal',{staticClass:\"editions\",on:{\"close\":function($event){return _vm.toggleModal('edition')}}},[(!_vm.isCustom)?_c('div',[_c('h3',[_vm._v(\"Select an edition:\")]),_c('ul',{staticClass:\"editions\"},[_vm._l((_vm.editions),function(edition){return _c('li',{key:edition.id,staticClass:\"edition\",class:['edition-' + edition.id],style:({\n backgroundImage: (\"url(\" + (require('../../assets/editions/' +\n edition.id +\n '.png')) + \")\")\n }),on:{\"click\":function($event){return _vm.setEdition(edition)}}},[_vm._v(\" \"+_vm._s(edition.name)+\" \")])}),_c('li',{staticClass:\"edition edition-custom\",style:({\n backgroundImage: (\"url(\" + (require('../../assets/editions/custom.png')) + \")\")\n }),on:{\"click\":function($event){_vm.isCustom = true}}},[_vm._v(\" Custom Script / Characters \")])],2)]):_c('div',{staticClass:\"custom\"},[_c('h3',[_vm._v(\"Load custom script / characters\")]),_vm._v(\" To play with a custom script, you need to select the characters you want to play with in the official \"),_c('a',{attrs:{\"href\":\"https://bloodontheclocktower.com/script-tool/\",\"target\":\"_blank\"}},[_vm._v(\"Script Tool\")]),_vm._v(\" and then upload the generated \\\"custom-list.json\\\" either directly here or provide a URL to such a hosted JSON file.\"),_c('br'),_c('br'),_vm._v(\" To play with custom characters, please read \"),_c('a',{attrs:{\"href\":\"https://github.com/bra1n/townsquare#custom-characters\",\"target\":\"_blank\"}},[_vm._v(\"the documentation\")]),_vm._v(\" on how to write a custom character definition file. \"),_c('b',[_vm._v(\"Only load custom JSON files from sources that you trust!\")]),_c('h3',[_vm._v(\"Some popular custom scripts:\")]),_c('ul',{staticClass:\"scripts\"},_vm._l((_vm.scripts),function(script,index){return _c('li',{key:index,on:{\"click\":function($event){return _vm.handleURL(script[1])}}},[_vm._v(\" \"+_vm._s(script[0])+\" \")])}),0),_c('input',{ref:\"upload\",attrs:{\"type\":\"file\",\"accept\":\"application/json\"},on:{\"change\":_vm.handleUpload}}),_c('div',{staticClass:\"button-group\"},[_c('div',{staticClass:\"button\",on:{\"click\":_vm.openUpload}},[_c('font-awesome-icon',{attrs:{\"icon\":\"file-upload\"}}),_vm._v(\" Upload JSON \")],1),_c('div',{staticClass:\"button\",on:{\"click\":_vm.promptURL}},[_c('font-awesome-icon',{attrs:{\"icon\":\"link\"}}),_vm._v(\" Enter URL \")],1),_c('div',{staticClass:\"button\",on:{\"click\":function($event){_vm.isCustom = false}}},[_c('font-awesome-icon',{attrs:{\"icon\":\"undo\"}}),_vm._v(\" Back \")],1)])])]):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditionModal.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditionModal.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./EditionModal.vue?vue&type=template&id=d6bb58ea&scoped=true&\"\nimport script from \"./EditionModal.vue?vue&type=script&lang=js&\"\nexport * from \"./EditionModal.vue?vue&type=script&lang=js&\"\nimport style0 from \"./EditionModal.vue?vue&type=style&index=0&id=d6bb58ea&scoped=true&lang=scss&\"\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 \"d6bb58ea\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"intro\"},[_c('img',{attrs:{\"src\":\"static/apple-icon.png\",\"alt\":\"\"}}),_vm._v(\" Welcome to the (unofficial) \"),_c('b',[_vm._v(\"Virtual Town Square and Grimoire\")]),_vm._v(\" for Blood on the Clocktower! Please add more players through the \"),_c('span',{staticClass:\"button\",on:{\"click\":_vm.toggleMenu}},[_c('font-awesome-icon',{attrs:{\"icon\":\"cog\"}}),_vm._v(\" Menu \")],1),_vm._v(\" on the top right or by pressing \"),_c('b',[_vm._v(\"[A]\")]),_vm._v(\". You can also join a game session by pressing \"),_c('b',[_vm._v(\"[J]\")]),_vm._v(\".\"),_c('br'),_vm._m(0)])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"footer\"},[_vm._v(\" This project is free and open source and can be found on \"),_c('a',{attrs:{\"href\":\"https://github.com/bra1n/townsquare\",\"target\":\"_blank\"}},[_vm._v(\"GitHub\")]),_vm._v(\". It is not affiliated with The Pandemonium Institute. \\\"Blood on the Clocktower\\\" is a trademark of Steven Medway and The Pandemonium Institute. \")])}]\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Intro.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Intro.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Intro.vue?vue&type=template&id=0ae0fea6&scoped=true&\"\nimport script from \"./Intro.vue?vue&type=script&lang=js&\"\nexport * from \"./Intro.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Intro.vue?vue&type=style&index=0&id=0ae0fea6&scoped=true&lang=scss&\"\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 \"0ae0fea6\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.modals.reference && _vm.roles.size)?_c('Modal',{staticClass:\"characters\",on:{\"close\":function($event){return _vm.toggleModal('reference')}}},[_c('font-awesome-icon',{staticClass:\"toggle\",attrs:{\"icon\":\"cloud-moon\",\"title\":\"Show Night Order\"},on:{\"click\":function($event){return _vm.toggleModal('nightOrder')}}}),_c('h3',[_vm._v(\" Character Reference \"),_c('font-awesome-icon',{attrs:{\"icon\":\"address-card\"}}),_vm._v(\" \"+_vm._s(_vm.edition.name || \"Custom Script\")+\" \")],1),_c('ul',{staticClass:\"legend\"},[_c('li',[_c('span',{staticClass:\"name\"},[_vm._v(\"Name\")]),_c('span',{staticClass:\"icon\"},[_vm._v(\"Icon\")]),_c('span',{staticClass:\"ability\"},[_vm._v(\"Ability\")]),(Object.keys(_vm.playersByRole).length)?_c('span',{staticClass:\"player\"},[_vm._v(\" Player \")]):_vm._e()])]),_vm._l((_vm.rolesGrouped),function(teamRoles,team){return _c('div',{key:team,class:[team]},[_c('h4',[_vm._v(_vm._s(team))]),_c('ul',_vm._l((teamRoles),function(role){return _c('li',{key:role.id,class:[team]},[_c('span',{staticClass:\"name\"},[_vm._v(_vm._s(role.name))]),(role.id)?_c('span',{staticClass:\"icon\",style:({\n backgroundImage: (\"url(\" + (role.image ||\n require('../../assets/icons/' + role.id + '.png')) + \")\")\n })}):_vm._e(),_c('span',{staticClass:\"ability\"},[_vm._v(_vm._s(role.ability))]),(Object.keys(_vm.playersByRole).length)?_c('span',{staticClass:\"player\"},[_vm._v(_vm._s(_vm.playersByRole[role.id] ? _vm.playersByRole[role.id].join(\", \") : \"\"))]):_vm._e()])}),0)])})],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--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReferenceModal.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReferenceModal.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ReferenceModal.vue?vue&type=template&id=1f1dc41a&scoped=true&\"\nimport script from \"./ReferenceModal.vue?vue&type=script&lang=js&\"\nexport * from \"./ReferenceModal.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ReferenceModal.vue?vue&type=style&index=0&id=1f1dc41a&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 \"1f1dc41a\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{attrs:{\"id\":\"vote\"}},[_c('div',{staticClass:\"arrows\"},[_c('span',{staticClass:\"nominee\",style:(_vm.nomineeStyle)}),_c('span',{staticClass:\"nominator\",style:(_vm.nominatorStyle)})]),_c('div',{staticClass:\"overlay\"},[_c('audio',{attrs:{\"src\":require(\"../assets/sounds/countdown.mp3\")}}),_c('em',{staticClass:\"blue\"},[_vm._v(_vm._s(_vm.nominator.name))]),_vm._v(\" nominated \"),_c('em',[_vm._v(_vm._s(_vm.nominee.name))]),_vm._v(\"! \"),_c('br'),(_vm.nominee.role.team !== 'traveler')?[_c('em',{staticClass:\"blue\"},[_vm._v(\" \"+_vm._s(_vm.voters.length)+\" vote\"+_vm._s(_vm.voters.length !== 1 ? \"s\" : \"\")+\" \")]),_vm._v(\" in favor \"),_c('em',[_vm._v(\"(majority is \"+_vm._s(Math.ceil(_vm.alive / 2))+\")\")])]:[_c('em',[_vm._v(_vm._s(Math.ceil(_vm.players.length / 2))+\" votes\")]),_vm._v(\" required for a \"),_c('em',[_vm._v(\"majority\")]),_vm._v(\". \")],(_vm.session.isVoteInProgress)?_c('div',[(_vm.voters.length)?_c('em',{staticClass:\"blue\"},[_vm._v(_vm._s(_vm.voters.join(\", \"))+\" \")]):_c('span',[_vm._v(\"nobody\")]),_vm._v(\" had their hand \"),_c('em',[_vm._v(\"UP\")])]):_vm._e(),(!_vm.session.isSpectator)?[(!_vm.session.isVoteInProgress)?_c('div',[_vm._v(\" Time per player: \"),_c('font-awesome-icon',{attrs:{\"icon\":\"minus-circle\"},on:{\"mousedown\":function($event){$event.preventDefault();return _vm.setVotingSpeed(-500)}}}),_vm._v(\" \"+_vm._s(_vm.session.votingSpeed / 1000)+\"s \"),_c('font-awesome-icon',{attrs:{\"icon\":\"plus-circle\"},on:{\"mousedown\":function($event){$event.preventDefault();return _vm.setVotingSpeed(500)}}})],1):_vm._e(),_c('div',{staticClass:\"button-group\"},[(!_vm.session.isVoteInProgress)?_c('div',{staticClass:\"button townsfolk\",on:{\"click\":_vm.countdown}},[_vm._v(\" Countdown \")]):_vm._e(),(!_vm.session.isVoteInProgress)?_c('div',{staticClass:\"button\",on:{\"click\":_vm.start}},[_vm._v(\" \"+_vm._s(_vm.session.lockedVote ? \"Restart\" : \"Start\")+\" \")]):[_c('div',{staticClass:\"button townsfolk\",class:{ disabled: !_vm.session.lockedVote },on:{\"click\":_vm.pause}},[_vm._v(\" \"+_vm._s(_vm.voteTimer ? \"Pause\" : \"Resume\")+\" \")]),_c('div',{staticClass:\"button\",on:{\"click\":_vm.stop}},[_vm._v(\"Reset\")])],_c('div',{staticClass:\"button demon\",on:{\"click\":_vm.finish}},[_vm._v(\"Close\")])],2)]:(_vm.canVote)?[(!_vm.session.isVoteInProgress)?_c('div',[_vm._v(\" \"+_vm._s(_vm.session.votingSpeed / 1000)+\" seconds between votes \")]):_vm._e(),_c('div',{staticClass:\"button-group\"},[_c('div',{staticClass:\"button townsfolk\",class:{ disabled: !_vm.currentVote },on:{\"click\":function($event){return _vm.vote(false)}}},[_vm._v(\" Hand DOWN \")]),_c('div',{staticClass:\"button demon\",class:{ disabled: _vm.currentVote },on:{\"click\":function($event){return _vm.vote(true)}}},[_vm._v(\" Hand UP \")])])]:(!_vm.player)?_c('div',[_vm._v(\" Please claim a seat to vote. \")]):_vm._e()],2),_c('transition',{attrs:{\"name\":\"blur\"}},[(_vm.session.isVoteInProgress && !_vm.session.lockedVote)?_c('div',{staticClass:\"countdown\"},[_c('span',[_vm._v(\"3\")]),_c('span',[_vm._v(\"2\")]),_c('span',[_vm._v(\"1\")]),_c('span',[_vm._v(\"GO\")]),_c('audio',{attrs:{\"autoplay\":\"\",\"src\":require(\"../assets/sounds/countdown.mp3\")}})]):_vm._e()])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Vote.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Vote.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Vote.vue?vue&type=template&id=292348ab&scoped=true&\"\nimport script from \"./Vote.vue?vue&type=script&lang=js&\"\nexport * from \"./Vote.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Vote.vue?vue&type=style&index=0&id=292348ab&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 \"292348ab\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{attrs:{\"id\":\"gradients\"}},_vm._l((_vm.gradients),function(gradient,index){return _c('svg',{key:index,attrs:{\"width\":\"0\",\"height\":\"0\"}},[_c('linearGradient',{attrs:{\"id\":gradient[0],\"x1\":\"50%\",\"y1\":\"100%\",\"x2\":\"50%\",\"y2\":\"0%\"}},[_c('stop',{style:({ 'stop-color': gradient[2], 'stop-opacity': 1 }),attrs:{\"offset\":\"0%\"}}),_c('stop',{style:({ 'stop-color': gradient[1], 'stop-opacity': 1 }),attrs:{\"offset\":\"100%\"}})],1)],1)}),0)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Gradients.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Gradients.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Gradients.vue?vue&type=template&id=1e202a64&scoped=true&\"\nimport script from \"./Gradients.vue?vue&type=script&lang=js&\"\nexport * from \"./Gradients.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Gradients.vue?vue&type=style&index=0&id=1e202a64&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 \"1e202a64\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.modals.nightOrder && _vm.roles.size)?_c('Modal',{staticClass:\"night-reference\",on:{\"close\":function($event){return _vm.toggleModal('nightOrder')}}},[_c('font-awesome-icon',{staticClass:\"toggle\",attrs:{\"icon\":\"address-card\",\"title\":\"Show Character Reference\"},on:{\"click\":function($event){return _vm.toggleModal('reference')}}}),_c('h3',[_vm._v(\" Night Order \"),_c('font-awesome-icon',{attrs:{\"icon\":\"cloud-moon\"}}),_vm._v(\" \"+_vm._s(_vm.edition.name || \"Custom Script\")+\" \")],1),_c('div',{staticClass:\"night\"},[_c('ul',{staticClass:\"first\"},[_c('li',{staticClass:\"headline\"},[_vm._v(\"First Night\")]),_vm._l((_vm.rolesFirstNight),function(role){return _c('li',{key:role.name,class:[role.team]},[_c('span',{staticClass:\"name\"},[_vm._v(\" \"+_vm._s(role.name)+\" \")]),(role.id)?_c('span',{staticClass:\"icon\",style:({\n backgroundImage: (\"url(\" + (role.image ||\n require('../../assets/icons/' + role.id + '.png')) + \")\")\n })}):_vm._e()])})],2),_c('ul',{staticClass:\"other\"},[_c('li',{staticClass:\"headline\"},[_vm._v(\"Other Nights\")]),_vm._l((_vm.rolesOtherNight),function(role){return _c('li',{key:role.name,class:[role.team]},[(role.id)?_c('span',{staticClass:\"icon\",style:({\n backgroundImage: (\"url(\" + (role.image ||\n require('../../assets/icons/' + role.id + '.png')) + \")\")\n })}):_vm._e(),_c('span',{staticClass:\"name\"},[_vm._v(\" \"+_vm._s(role.name)+\" \")])])})],2)])],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NightOrderModal.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NightOrderModal.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./NightOrderModal.vue?vue&type=template&id=4ac9211c&scoped=true&\"\nimport script from \"./NightOrderModal.vue?vue&type=script&lang=js&\"\nexport * from \"./NightOrderModal.vue?vue&type=script&lang=js&\"\nimport style0 from \"./NightOrderModal.vue?vue&type=style&index=0&id=4ac9211c&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 \"4ac9211c\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.modals.fabled && _vm.fabled.length)?_c('Modal',{on:{\"close\":function($event){return _vm.toggleModal('fabled')}}},[_c('h3',[_vm._v(\" Choose a fabled character to add to the game \")]),_c('ul',{staticClass:\"tokens\"},_vm._l((_vm.fabled),function(role){return _c('li',{key:role.id,on:{\"click\":function($event){return _vm.setFabled(role)}}},[_c('Token',{attrs:{\"role\":role}})],1)}),0)]):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FabledModal.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FabledModal.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./FabledModal.vue?vue&type=template&id=d6b399a0&scoped=true&\"\nimport script from \"./FabledModal.vue?vue&type=script&lang=js&\"\nexport * from \"./FabledModal.vue?vue&type=script&lang=js&\"\nimport style0 from \"./FabledModal.vue?vue&type=style&index=0&id=d6b399a0&scoped=true&lang=scss&\"\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 \"d6b399a0\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('Modal',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.modals.voteHistory && _vm.session.voteHistory),expression:\"modals.voteHistory && session.voteHistory\"}],staticClass:\"vote-history\",on:{\"close\":function($event){return _vm.toggleModal('voteHistory')}}},[_c('font-awesome-icon',{staticClass:\"clear\",attrs:{\"icon\":\"trash-alt\",\"title\":\"Clear history\"},on:{\"click\":_vm.clearVoteHistory}}),_c('h3',[_vm._v(\"Nomination history\")]),_c('table',[_c('thead',[_c('tr',[_c('td',[_vm._v(\"Nominator\")]),_c('td',[_vm._v(\"Nominee\")]),_c('td',[_vm._v(\"Type\")]),_c('td',[_vm._v(\"Majority\")]),_c('td',[_c('font-awesome-icon',{attrs:{\"icon\":\"hand-paper\"}}),_vm._v(\" Hand up\")],1)])]),_c('tbody',_vm._l((_vm.session.voteHistory),function(vote,index){return _c('tr',{key:index},[_c('td',[_vm._v(_vm._s(vote.nominator))]),_c('td',[_vm._v(_vm._s(vote.nominee))]),_c('td',[_vm._v(_vm._s(vote.type))]),_c('td',[_vm._v(_vm._s(vote.majority))]),_c('td',[_vm._v(\" \"+_vm._s(vote.votes.length)+\" \"),_c('font-awesome-icon',{attrs:{\"icon\":\"user-friends\"}}),_vm._v(\" \"+_vm._s(vote.votes.join(\", \"))+\" \")],1)])}),0)])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VoteHistoryModal.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VoteHistoryModal.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./VoteHistoryModal.vue?vue&type=template&id=44e13b65&scoped=true&\"\nimport script from \"./VoteHistoryModal.vue?vue&type=script&lang=js&\"\nexport * from \"./VoteHistoryModal.vue?vue&type=script&lang=js&\"\nimport style0 from \"./VoteHistoryModal.vue?vue&type=style&index=0&id=44e13b65&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 \"44e13b65\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.modals.gameState)?_c('Modal',{staticClass:\"game-state\",on:{\"close\":function($event){return _vm.toggleModal('gameState')}}},[_c('h3',[_vm._v(\"Current Game State\")]),_c('textarea',{domProps:{\"value\":_vm.gamestate},on:{\"input\":function($event){$event.stopPropagation();_vm.input = $event.target.value},\"click\":function($event){return $event.target.select()},\"keyup\":function($event){$event.stopPropagation();}}}),_c('div',{staticClass:\"button-group\"},[_c('div',{staticClass:\"button townsfolk\",on:{\"click\":_vm.copy}},[_c('font-awesome-icon',{attrs:{\"icon\":\"copy\"}}),_vm._v(\" Copy JSON \")],1),(!_vm.session.isSpectator)?_c('div',{staticClass:\"button demon\",on:{\"click\":_vm.load}},[_c('font-awesome-icon',{attrs:{\"icon\":\"cog\"}}),_vm._v(\" Load State \")],1):_vm._e()])]):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GameStateModal.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GameStateModal.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./GameStateModal.vue?vue&type=template&id=8fd8456c&scoped=true&\"\nimport script from \"./GameStateModal.vue?vue&type=script&lang=js&\"\nexport * from \"./GameStateModal.vue?vue&type=script&lang=js&\"\nimport style0 from \"./GameStateModal.vue?vue&type=style&index=0&id=8fd8456c&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 \"8fd8456c\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n","import mod from \"-!../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--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=2ef04b4e&\"\nimport script from \"./App.vue?vue&type=script&lang=js&\"\nexport * from \"./App.vue?vue&type=script&lang=js&\"\nimport style0 from \"./App.vue?vue&type=style&index=0&lang=scss&\"\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","class LiveSession {\n constructor(store) {\n this._wss = \"wss://live.clocktower.online:8080/\";\n //this._wss = \"wss://baumgart.biz:8080/\"; //todo: delete this\n //this._wss = \"ws://localhost:8081/\";\n this._socket = null;\n this._isSpectator = true;\n this._gamestate = [];\n this._store = store;\n this._pingInterval = 30 * 1000; // 30 seconds between pings\n this._pingTimer = null;\n this._reconnectTimer = null;\n this._players = {}; // map of players connected to a session\n this._pings = {}; // map of player IDs to ping\n // reconnect to previous session\n if (this._store.state.session.sessionId) {\n this.connect(this._store.state.session.sessionId);\n }\n }\n\n /**\n * Open a new session for the passed channel.\n * @param channel\n * @private\n */\n _open(channel) {\n this.disconnect();\n this._socket = new WebSocket(\n this._wss +\n channel +\n \"/\" +\n (this._isSpectator ? this._store.state.session.playerId : \"host\")\n );\n this._socket.addEventListener(\"message\", this._handleMessage.bind(this));\n this._socket.onopen = this._onOpen.bind(this);\n this._socket.onclose = err => {\n this._socket = null;\n clearInterval(this._pingTimer);\n this._pingTimer = null;\n if (err.code !== 1000) {\n // connection interrupted, reconnect after 3 seconds\n this._store.commit(\"session/setReconnecting\", true);\n this._reconnectTimer = setTimeout(\n () => this.connect(channel),\n 3 * 1000\n );\n } else {\n this._store.commit(\"session/setSessionId\", \"\");\n if (err.reason) alert(err.reason);\n }\n };\n }\n\n /**\n * Send a message through the socket.\n * @param command\n * @param params\n * @private\n */\n _send(command, params) {\n if (this._socket && this._socket.readyState === 1) {\n this._socket.send(JSON.stringify([command, params]));\n }\n }\n\n /**\n * Open event handler for socket.\n * @private\n */\n _onOpen() {\n if (this._isSpectator) {\n this._send(\"req\", \"gs\");\n } else {\n this.sendGamestate();\n }\n this._ping();\n }\n\n /**\n * Send a ping message with player ID and ST flag.\n * @private\n */\n _ping() {\n this._send(\"ping\", [\n this._isSpectator,\n this._store.state.session.playerId,\n \"latency\"\n ]);\n this._handlePing();\n clearTimeout(this._pingTimer);\n this._pingTimer = setTimeout(this._ping.bind(this), this._pingInterval);\n }\n\n /**\n * Handle an incoming socket message.\n * @param data\n * @private\n */\n _handleMessage({ data }) {\n let command, params;\n try {\n [command, params] = JSON.parse(data);\n } catch (err) {\n console.log(\"unsupported socket message\", data);\n }\n switch (command) {\n case \"req\":\n if (params === \"gs\") {\n this.sendGamestate();\n }\n break;\n case \"edition\":\n this._updateEdition(params);\n break;\n case \"fabled\":\n this._updateFabled(params);\n break;\n case \"gs\":\n this._updateGamestate(params);\n break;\n case \"player\":\n this._updatePlayer(params);\n break;\n case \"claim\":\n this._updateSeat(params);\n break;\n case \"ping\":\n this._handlePing(params);\n break;\n case \"nomination\":\n if (!this._isSpectator) return;\n if (!params) {\n // create vote history record\n this._store.commit(\n \"session/addHistory\",\n this._store.state.players.players\n );\n }\n this._store.commit(\"session/nomination\", { nomination: params });\n break;\n case \"swap\":\n if (!this._isSpectator) return;\n this._store.commit(\"players/swap\", params);\n break;\n case \"move\":\n if (!this._isSpectator) return;\n this._store.commit(\"players/move\", params);\n break;\n case \"isNight\":\n if (!this._isSpectator) return;\n this._store.commit(\"toggleNight\", params);\n break;\n case \"votingSpeed\":\n if (!this._isSpectator) return;\n this._store.commit(\"session/setVotingSpeed\", params);\n break;\n case \"clearVoteHistory\":\n if (!this._isSpectator) return;\n this._store.commit(\"session/clearVoteHistory\");\n break;\n case \"isVoteInProgress\":\n if (!this._isSpectator) return;\n this._store.commit(\"session/setVoteInProgress\", params);\n break;\n case \"vote\":\n this._handleVote(params);\n break;\n case \"lock\":\n this._handleLock(params);\n break;\n case \"bye\":\n this._handleBye(params);\n break;\n }\n }\n\n /**\n * Connect to a new live session, either as host or spectator.\n * Set a unique playerId if there isn't one yet.\n * @param channel\n */\n connect(channel) {\n if (!this._store.state.session.playerId) {\n this._store.commit(\n \"session/setPlayerId\",\n Math.random()\n .toString(36)\n .substr(2)\n );\n }\n this._pings = {};\n this._store.commit(\"session/setPlayerCount\", 0);\n this._store.commit(\"session/setPing\", 0);\n this._isSpectator = this._store.state.session.isSpectator;\n this._open(channel);\n }\n\n /**\n * Close the current session, if any.\n */\n disconnect() {\n this._pings = {};\n this._store.commit(\"session/setPlayerCount\", 0);\n this._store.commit(\"session/setPing\", 0);\n this._store.commit(\"session/setReconnecting\", false);\n clearTimeout(this._reconnectTimer);\n if (this._socket) {\n this._send(\"bye\", this._store.state.session.playerId);\n this._socket.close(1000);\n this._socket = null;\n }\n }\n\n /**\n * Publish the current gamestate.\n * Optional param to reduce traffic. (send only player data)\n * @param isLightweight\n */\n sendGamestate(isLightweight = false) {\n if (this._isSpectator) return;\n this._gamestate = this._store.state.players.players.map(player => ({\n name: player.name,\n id: player.id,\n isDead: player.isDead,\n isVoteless: player.isVoteless,\n ...(player.role && player.role.team === \"traveler\"\n ? { roleId: player.role.id }\n : {})\n }));\n if (isLightweight) {\n this._send(\"gs\", { gamestate: this._gamestate, isLightweight });\n } else {\n const { session, grimoire } = this._store.state;\n const { fabled } = this._store.state.players;\n this.sendEdition();\n this._send(\"gs\", {\n gamestate: this._gamestate,\n isNight: grimoire.isNight,\n nomination: session.nomination,\n votingSpeed: session.votingSpeed,\n lockedVote: session.lockedVote,\n isVoteInProgress: session.isVoteInProgress,\n fabled: fabled.map(({ id }) => id),\n ...(session.nomination ? { votes: session.votes } : {})\n });\n }\n }\n\n /**\n * Update the gamestate based on incoming data.\n * @param data\n * @private\n */\n _updateGamestate(data) {\n if (!this._isSpectator) return;\n const {\n gamestate,\n isLightweight,\n isNight,\n nomination,\n votingSpeed,\n votes,\n lockedVote,\n isVoteInProgress,\n fabled\n } = data;\n const players = this._store.state.players.players;\n // adjust number of players\n if (players.length < gamestate.length) {\n for (let x = players.length; x < gamestate.length; x++) {\n this._store.commit(\"players/add\", gamestate[x].name);\n }\n } else if (players.length > gamestate.length) {\n for (let x = players.length; x > gamestate.length; x--) {\n this._store.commit(\"players/remove\", x - 1);\n }\n }\n // update status for each player\n gamestate.forEach((state, x) => {\n const player = players[x];\n const { roleId } = state;\n // update relevant properties\n [\"name\", \"id\", \"isDead\", \"isVoteless\"].forEach(property => {\n const value = state[property];\n if (player[property] !== value) {\n this._store.commit(\"players/update\", { player, property, value });\n }\n });\n // roles are special, because of travelers\n if (roleId && player.role.id !== roleId) {\n const role = this._store.state.roles.get(roleId);\n this._store.commit(\"players/update\", {\n player,\n property: \"role\",\n value: role\n });\n } else if (!roleId && player.role.team === \"traveler\") {\n this._store.commit(\"players/update\", {\n player,\n property: \"role\",\n value: {}\n });\n }\n });\n if (!isLightweight) {\n this._store.commit(\"toggleNight\", !!isNight);\n this._store.commit(\"session/nomination\", {\n nomination,\n votes,\n votingSpeed,\n lockedVote,\n isVoteInProgress\n });\n this._store.commit(\"players/setFabled\", {\n fabled: fabled.map(id => this._store.state.fabled.get(id))\n });\n }\n }\n\n /**\n * Publish an edition update. ST only\n */\n sendEdition() {\n if (this._isSpectator) return;\n const { edition } = this._store.state;\n let roles;\n if (!edition.isOfficial) {\n roles = Array.from(this._store.state.roles.keys());\n }\n this._send(\"edition\", {\n edition: edition.isOfficial\n ? { id: edition.id }\n : Object.assign({}, edition, { logo: \"\" }),\n ...(roles ? { roles } : {})\n });\n }\n\n /**\n * Update edition and roles for custom editions.\n * @param edition\n * @param roles\n * @private\n */\n _updateEdition({ edition, roles }) {\n if (!this._isSpectator) return;\n this._store.commit(\"setEdition\", edition);\n if (roles) {\n this._store.commit(\n \"setCustomRoles\",\n roles.map(id => ({ id }))\n );\n if (this._store.state.roles.size !== roles.length) {\n const missing = [];\n roles.forEach(id => {\n if (!this._store.state.roles.get(id)) {\n missing.push(id);\n }\n });\n alert(\n `This session contains custom characters that can't be found. ` +\n `Please load them before joining! ` +\n `Missing roles: ${missing.join(\", \")}`\n );\n }\n }\n }\n\n /**\n * Publish a fabled update. ST only\n */\n sendFabled() {\n if (this._isSpectator) return;\n const { fabled } = this._store.state.players;\n this._send(\n \"fabled\",\n fabled.map(({ id }) => id)\n );\n }\n\n /**\n * Update fabled roles.\n * @param fabled\n * @private\n */\n _updateFabled(fabled) {\n if (!this._isSpectator) return;\n this._store.commit(\"players/setFabled\", {\n fabled: fabled.map(id => this._store.state.fabled.get(id))\n });\n }\n\n /**\n * Publish a player update.\n * @param player\n * @param property\n * @param value\n */\n sendPlayer({ player, property, value }) {\n if (this._isSpectator || property === \"reminders\") return;\n const index = this._store.state.players.players.indexOf(player);\n if (property === \"role\") {\n if (value.team && value.team === \"traveler\") {\n // update local gamestate to remember this player as a traveler\n this._gamestate[index].roleId = value.id;\n this._send(\"player\", {\n index,\n property,\n value: value.id\n });\n } else if (this._gamestate[index].roleId) {\n // player was previously a traveler\n delete this._gamestate[index].roleId;\n this._send(\"player\", { index, property, value: \"\" });\n }\n } else {\n this._send(\"player\", { index, property, value });\n }\n }\n\n /**\n * Update a player based on incoming data.\n * @param index\n * @param property\n * @param value\n * @private\n */\n _updatePlayer({ index, property, value }) {\n const player = this._store.state.players.players[index];\n if (!player) return;\n // special case where a player stops being a traveler\n if (property === \"role\") {\n if (!value && player.role.team === \"traveler\") {\n // reset to an unknown role\n this._store.commit(\"players/update\", {\n player,\n property: \"role\",\n value: {}\n });\n } else {\n // load role\n const role = this._store.state.roles.get(value);\n this._store.commit(\"players/update\", {\n player,\n property: \"role\",\n value: role\n });\n }\n } else {\n // just update the player otherwise\n this._store.commit(\"players/update\", { player, property, value });\n }\n }\n\n /**\n * Handle a ping message by another player / storyteller\n * @param isSpectator\n * @param playerId\n * @param timestamp\n * @private\n */\n _handlePing([isSpectator, playerId, latency] = []) {\n const now = new Date().getTime();\n // remove players that haven't sent a ping in twice the timespan\n for (let player in this._players) {\n if (now - this._players[player] > this._pingInterval * 2) {\n delete this._players[player];\n delete this._pings[player];\n }\n }\n // remove claimed seats from players that are no longer connected\n this._store.state.players.players.forEach(player => {\n if (!this._isSpectator && player.id && !this._players[player.id]) {\n this._store.commit(\"players/update\", {\n player,\n property: \"id\",\n value: \"\"\n });\n }\n });\n // store new player data\n if (playerId) {\n this._players[playerId] = now;\n const ping = parseInt(latency, 10);\n if (ping && ping > 0 && ping < 30 * 1000) {\n if (this._isSpectator && !isSpectator) {\n // ping to ST\n this._store.commit(\"session/setPing\", ping);\n } else if (!this._isSpectator) {\n // ping to Players\n this._pings[playerId] = ping;\n const pings = Object.values(this._pings);\n this._store.commit(\n \"session/setPing\",\n Math.round(pings.reduce((a, b) => a + b, 0) / pings.length)\n );\n }\n }\n }\n this._store.commit(\n \"session/setPlayerCount\",\n Object.keys(this._players).length\n );\n }\n\n /**\n * Handle a player leaving the sessions\n * @param playerId\n * @private\n */\n _handleBye(playerId) {\n delete this._players[playerId];\n this._store.commit(\n \"session/setPlayerCount\",\n Object.keys(this._players).length\n );\n }\n\n /**\n * Claim a seat, needs to be confirmed by the Storyteller.\n * Seats already occupied can't be claimed.\n * @param seat either -1 to vacate or the index of the seat claimed\n */\n claimSeat(seat) {\n if (!this._isSpectator) return;\n const players = this._store.state.players.players;\n if (players.length > seat && (seat < 0 || !players[seat].id)) {\n this._send(\"claim\", [seat, this._store.state.session.playerId]);\n }\n }\n\n /**\n * Update a player id associated with that seat.\n * @param index seat index or -1\n * @param value playerId to add / remove\n * @private\n */\n _updateSeat([index, value]) {\n if (this._isSpectator) return;\n const property = \"id\";\n const players = this._store.state.players.players;\n // remove previous seat\n const oldIndex = players.findIndex(({ id }) => id === value);\n if (oldIndex >= 0 && oldIndex !== index) {\n this._store.commit(\"players/update\", {\n player: players[oldIndex],\n property,\n value: \"\"\n });\n }\n // add playerId to new seat\n if (index >= 0) {\n const player = players[index];\n if (!player) return;\n this._store.commit(\"players/update\", { player, property, value });\n }\n // update player session list as if this was a ping\n this._handlePing([true, value]);\n }\n\n /**\n * Distribute player roles to all seated players in a direct message.\n * This will be split server side so that each player only receives their own (sub)message.\n */\n distributeRoles() {\n if (this._isSpectator) return;\n const message = {};\n this._store.state.players.players.forEach((player, index) => {\n if (player.id && player.role) {\n message[player.id] = [\n \"player\",\n { index, property: \"role\", value: player.role.id }\n ];\n }\n });\n if (Object.keys(message).length) {\n this._send(\"direct\", message);\n }\n }\n\n /**\n * A player nomination. ST only\n * This also syncs the voting speed to the players.\n * @param nomination [nominator, nominee]\n */\n nomination({ nomination } = {}) {\n if (this._isSpectator) return;\n const players = this._store.state.players.players;\n if (\n !nomination ||\n (players.length > nomination[0] && players.length > nomination[1])\n ) {\n this.setVotingSpeed(this._store.state.session.votingSpeed);\n this._send(\"nomination\", nomination);\n }\n }\n\n /**\n * Set the isVoteInProgress status. ST only\n */\n setVoteInProgress() {\n if (this._isSpectator) return;\n this._send(\"isVoteInProgress\", this._store.state.session.isVoteInProgress);\n }\n\n /**\n * Send the isNight status. ST only\n */\n setIsNight() {\n if (this._isSpectator) return;\n this._send(\"isNight\", this._store.state.grimoire.isNight);\n }\n\n /**\n * Send the voting speed. ST only\n * @param votingSpeed voting speed in seconds, minimum 1\n */\n setVotingSpeed(votingSpeed) {\n if (this._isSpectator) return;\n if (votingSpeed) {\n this._send(\"votingSpeed\", votingSpeed);\n }\n }\n\n /**\n * Clear the vote history for everyone. ST only\n */\n clearVoteHistory() {\n if (this._isSpectator) return;\n this._send(\"clearVoteHistory\");\n }\n\n /**\n * Send a vote. Player or ST\n * @param index Seat of the player\n * @param sync Flag whether to sync this vote with others or not\n */\n vote([index]) {\n const player = this._store.state.players.players[index];\n if (\n this._store.state.session.playerId === player.id ||\n !this._isSpectator\n ) {\n // send vote only if it is your own vote or you are the storyteller\n this._send(\"vote\", [\n index,\n this._store.state.session.votes[index],\n !this._isSpectator\n ]);\n }\n }\n\n /**\n * Handle an incoming vote, but only if it is from ST or unlocked.\n * @param index\n * @param vote\n * @param fromST\n */\n _handleVote([index, vote, fromST]) {\n const { session, players } = this._store.state;\n const playerCount = players.players.length;\n const indexAdjusted =\n (index - 1 + playerCount - session.nomination[1]) % playerCount;\n if (fromST || indexAdjusted >= session.lockedVote - 1) {\n this._store.commit(\"session/vote\", [index, vote]);\n }\n }\n\n /**\n * Lock a vote. ST only\n */\n lockVote() {\n if (this._isSpectator) return;\n const { lockedVote, votes, nomination } = this._store.state.session;\n const { players } = this._store.state.players;\n const index = (nomination[1] + lockedVote - 1) % players.length;\n this._send(\"lock\", [this._store.state.session.lockedVote, votes[index]]);\n }\n\n /**\n * Update vote lock and the locked vote, if it differs.\n * @param lock\n * @param vote\n * @private\n */\n _handleLock([lock, vote]) {\n this._store.commit(\"session/lockVote\", lock);\n if (lock > 1) {\n const { lockedVote, nomination } = this._store.state.session;\n const { players } = this._store.state.players;\n const index = (nomination[1] + lockedVote - 1) % players.length;\n if (this._store.state.session.votes[index] !== vote) {\n this._store.commit(\"session/vote\", [index, vote]);\n }\n }\n }\n\n /**\n * Swap two player seats. ST only\n * @param payload\n */\n swapPlayer(payload) {\n if (this._isSpectator) return;\n this._send(\"swap\", payload);\n }\n\n /**\n * Move a player to another seat. ST only\n * @param payload\n */\n movePlayer(payload) {\n if (this._isSpectator) return;\n this._send(\"move\", payload);\n }\n}\n\nexport default store => {\n // setup\n const session = new LiveSession(store);\n\n // listen to mutations\n store.subscribe(({ type, payload }) => {\n switch (type) {\n case \"session/setSessionId\":\n if (payload) {\n session.connect(payload);\n } else {\n window.location.hash = \"\";\n session.disconnect();\n }\n break;\n case \"session/claimSeat\":\n session.claimSeat(payload);\n break;\n case \"session/distributeRoles\":\n if (payload) {\n session.distributeRoles();\n }\n break;\n case \"session/nomination\":\n session.nomination(payload);\n break;\n case \"session/setVoteInProgress\":\n session.setVoteInProgress(payload);\n break;\n case \"session/voteSync\":\n session.vote(payload);\n break;\n case \"session/lockVote\":\n session.lockVote();\n break;\n case \"session/setVotingSpeed\":\n session.setVotingSpeed(payload);\n break;\n case \"session/clearVoteHistory\":\n session.clearVoteHistory();\n break;\n case \"toggleNight\":\n session.setIsNight();\n break;\n case \"setEdition\":\n session.sendEdition();\n break;\n case \"players/setFabled\":\n session.sendFabled();\n break;\n case \"players/swap\":\n session.swapPlayer(payload);\n break;\n case \"players/move\":\n session.movePlayer(payload);\n break;\n case \"players/set\":\n case \"players/clear\":\n case \"players/remove\":\n case \"players/add\":\n session.sendGamestate(true);\n break;\n case \"players/update\":\n session.sendPlayer(payload);\n break;\n }\n });\n\n // check for session Id in hash\n const sessionId = window.location.hash.substr(1);\n if (sessionId) {\n store.commit(\"session/setSpectator\", true);\n store.commit(\"session/setSessionId\", sessionId);\n }\n};\n","const NEWPLAYER = {\n name: \"\",\n id: \"\",\n role: {},\n reminders: [],\n isVoteless: false,\n isDead: false\n};\n\nconst state = () => ({\n players: [],\n fabled: [],\n bluffs: []\n});\n\nconst getters = {\n alive({ players }) {\n return players.filter(player => !player.isDead).length;\n },\n nonTravelers({ players }) {\n const nonTravelers = players.filter(\n player => player.role.team !== \"traveler\"\n );\n return Math.min(nonTravelers.length, 15);\n },\n // calculate a Map of player => night order\n nightOrder({ players, fabled }) {\n const firstNight = [0];\n const otherNight = [0];\n players.forEach(({ role }) => {\n if (role.firstNight && !firstNight.includes(role.firstNight)) {\n firstNight.push(role.firstNight);\n }\n if (role.otherNight && !otherNight.includes(role.otherNight)) {\n otherNight.push(role.otherNight);\n }\n });\n fabled.forEach(role => {\n if (role.firstNight && !firstNight.includes(role.firstNight)) {\n firstNight.push(role.firstNight);\n }\n if (role.otherNight && !otherNight.includes(role.otherNight)) {\n otherNight.push(role.otherNight);\n }\n });\n firstNight.sort((a, b) => a - b);\n otherNight.sort((a, b) => a - b);\n const nightOrder = new Map();\n players.forEach(player => {\n const first = Math.max(firstNight.indexOf(player.role.firstNight), 0);\n const other = Math.max(otherNight.indexOf(player.role.otherNight), 0);\n nightOrder.set(player, { first, other });\n });\n fabled.forEach(role => {\n const first = Math.max(firstNight.indexOf(role.firstNight), 0);\n const other = Math.max(otherNight.indexOf(role.otherNight), 0);\n nightOrder.set(role, { first, other });\n });\n return nightOrder;\n }\n};\n\nconst actions = {\n randomize({ state, commit }) {\n const players = state.players\n .map(a => [Math.random(), a])\n .sort((a, b) => a[0] - b[0])\n .map(a => a[1]);\n commit(\"set\", players);\n },\n clearRoles({ state, commit, rootState }) {\n let players;\n if (rootState.session.isSpectator) {\n players = state.players.map(player => {\n if (player.role.team !== \"traveler\") {\n player.role = {};\n }\n player.reminders = [];\n return player;\n });\n } else {\n players = state.players.map(({ name, id }) => ({\n ...NEWPLAYER,\n name,\n id\n }));\n }\n commit(\"set\", players);\n commit(\"setBluff\");\n }\n};\n\nconst mutations = {\n clear(state) {\n state.players = [];\n state.bluffs = [];\n },\n set(state, players = []) {\n state.players = players;\n },\n update(state, { player, property, value }) {\n const index = state.players.indexOf(player);\n if (index >= 0) {\n state.players[index][property] = value;\n }\n },\n add(state, name) {\n state.players.push({\n ...NEWPLAYER,\n name\n });\n },\n remove(state, index) {\n state.players.splice(index, 1);\n },\n swap(state, [from, to]) {\n [state.players[from], state.players[to]] = [\n state.players[to],\n state.players[from]\n ];\n // hack: \"modify\" the array so that Vue notices something changed\n state.players.splice(0, 0);\n },\n move(state, [from, to]) {\n state.players.splice(to, 0, state.players.splice(from, 1)[0]);\n },\n setBluff(state, { index, role } = {}) {\n if (index !== undefined) {\n state.bluffs.splice(index, 1, role);\n } else {\n state.bluffs = [];\n }\n },\n setFabled(state, { index, fabled } = {}) {\n if (index !== undefined) {\n state.fabled.splice(index, 1);\n } else if (fabled) {\n if (!Array.isArray(fabled)) {\n state.fabled.push(fabled);\n } else {\n state.fabled = fabled;\n }\n }\n }\n};\n\nexport default {\n namespaced: true,\n state,\n getters,\n actions,\n mutations\n};\n","// helper functions\nconst set = key => (state, val) => {\n state[key] = val;\n};\n\n/**\n * Handle a vote request.\n * If the vote is from a seat that is already locked, ignore it.\n * @param state session state\n * @param index seat of the player in the circle\n * @param vote true or false\n */\nconst handleVote = (state, [index, vote]) => {\n if (!state.nomination) return;\n state.votes = [...state.votes];\n state.votes[index] = vote === undefined ? !state.votes[index] : vote;\n};\n\nconst state = () => ({\n sessionId: \"\",\n isSpectator: false,\n isReconnecting: false,\n playerCount: 0,\n ping: 0,\n playerId: \"\",\n claimedSeat: -1,\n nomination: false,\n votes: [],\n lockedVote: 0,\n votingSpeed: 3000,\n isVoteInProgress: false,\n voteHistory: [],\n isRolesDistributed: false\n});\n\nconst getters = {};\n\nconst actions = {};\n\nconst mutations = {\n setSessionId: set(\"sessionId\"),\n setPlayerId: set(\"playerId\"),\n setSpectator: set(\"isSpectator\"),\n setReconnecting: set(\"isReconnecting\"),\n setPlayerCount: set(\"playerCount\"),\n setPing: set(\"ping\"),\n setVotingSpeed: set(\"votingSpeed\"),\n setVoteInProgress: set(\"isVoteInProgress\"),\n claimSeat: set(\"claimedSeat\"),\n distributeRoles: set(\"isRolesDistributed\"),\n nomination(\n state,\n { nomination, votes, votingSpeed, lockedVote, isVoteInProgress } = {}\n ) {\n state.nomination = nomination || false;\n state.votes = votes || [];\n state.votingSpeed = votingSpeed || state.votingSpeed;\n state.lockedVote = lockedVote || 0;\n state.isVoteInProgress = isVoteInProgress || false;\n },\n /**\n * Create an entry in the vote history log. Requires current player array because it might change later in the game.\n * Only stores votes that were completed.\n * @param state\n * @param players\n */\n addHistory(state, players) {\n if (!state.nomination || state.lockedVote <= players.length) return;\n const isBanishment = players[state.nomination[1]].team === \"traveler\";\n state.voteHistory.push({\n nominator: players[state.nomination[0]].name,\n nominee: players[state.nomination[1]].name,\n type: isBanishment ? \"Banishment\" : \"Execution\",\n majority: Math.ceil(\n players.filter(player => !player.isDead || isBanishment).length / 2\n ),\n votes: players\n .filter((player, index) => state.votes[index])\n .map(({ name }) => name)\n });\n },\n clearVoteHistory(state) {\n state.voteHistory = [];\n },\n /**\n * Store a vote with and without syncing it to the live session.\n * This is necessary in order to prevent infinite voting loops.\n * @param state\n * @param vote\n */\n vote: handleVote,\n voteSync: handleVote,\n lockVote(state, lock) {\n state.lockedVote = lock !== undefined ? lock : state.lockedVote + 1;\n }\n};\n\nexport default {\n namespaced: true,\n state,\n getters,\n actions,\n mutations\n};\n","import Vue from \"vue\";\nimport Vuex from \"vuex\";\nimport persistence from \"./persistence\";\nimport socket from \"./socket\";\nimport players from \"./modules/players\";\nimport session from \"./modules/session\";\nimport editionJSON from \"../editions.json\";\nimport rolesJSON from \"../roles.json\";\nimport fabledJSON from \"../fabled.json\";\n\nVue.use(Vuex);\n\nconst editionJSONbyId = new Map(\n editionJSON.map(edition => [edition.id, edition])\n);\nconst rolesJSONbyId = new Map(rolesJSON.map(role => [role.id, role]));\nconst fabled = new Map(fabledJSON.map(role => [role.id, role]));\n\nconst getRolesByEdition = (edition = editionJSON[0]) => {\n return new Map(\n rolesJSON\n .filter(r => r.edition === edition.id || edition.roles.includes(r.id))\n .sort((a, b) => b.team.localeCompare(a.team))\n .map(role => [role.id, role])\n );\n};\n\n// base definition for custom roles\nconst imageBase =\n \"https://raw.githubusercontent.com/bra1n/townsquare/main/src/assets/icons/\";\nconst customRole = {\n image: \"\",\n edition: \"custom\",\n firstNight: 0,\n firstNightReminder: \"\",\n otherNight: 0,\n otherNightReminder: \"\",\n reminders: [],\n remindersGlobal: [],\n setup: false,\n team: \"townsfolk\",\n isCustom: true\n};\n\nexport default new Vuex.Store({\n modules: {\n players,\n session\n },\n state: {\n grimoire: {\n isNight: false,\n isNightOrder: true,\n isPublic: true,\n isMenuOpen: false,\n isScreenshot: false,\n isScreenshotSuccess: false,\n zoom: 0,\n background: \"\"\n },\n modals: {\n edition: false,\n fabled: false,\n gameState: false,\n nightOrder: false,\n reference: false,\n reminder: false,\n role: false,\n roles: false,\n voteHistory: false\n },\n edition: editionJSONbyId.get(\"tb\"),\n roles: getRolesByEdition(),\n fabled\n },\n getters: {\n /**\n * Return all custom roles, with default values stripped.\n * @param roles\n * @returns {[]}\n */\n customRoles: ({ roles }) => {\n const customRoles = [];\n roles.forEach(role => {\n if (!role.isCustom) {\n customRoles.push({ id: role.id });\n } else {\n const strippedRole = {};\n for (let prop in role) {\n const value = role[prop];\n if (\n prop === \"image\" &&\n value.toLocaleLowerCase().includes(imageBase)\n ) {\n continue;\n }\n if (prop !== \"isCustom\" && value !== customRole[prop]) {\n strippedRole[prop] = value;\n }\n }\n customRoles.push(strippedRole);\n }\n });\n return customRoles;\n }\n },\n mutations: {\n toggleMenu({ grimoire }) {\n grimoire.isMenuOpen = !grimoire.isMenuOpen;\n },\n toggleGrimoire({ grimoire }, isPublic) {\n if (isPublic === true || isPublic === false) {\n grimoire.isPublic = isPublic;\n } else {\n grimoire.isPublic = !grimoire.isPublic;\n }\n document.title = `Blood on the Clocktower ${\n grimoire.isPublic ? \"Town Square\" : \"Grimoire\"\n }`;\n },\n toggleNight({ grimoire }, isNight) {\n if (isNight === true || isNight === false) {\n grimoire.isNight = isNight;\n } else {\n grimoire.isNight = !grimoire.isNight;\n }\n },\n toggleNightOrder({ grimoire }) {\n grimoire.isNightOrder = !grimoire.isNightOrder;\n },\n setZoom({ grimoire }, zoom) {\n grimoire.zoom = zoom;\n },\n setBackground({ grimoire }, background) {\n grimoire.background = background;\n },\n toggleModal({ modals }, name) {\n if (name) {\n modals[name] = !modals[name];\n }\n for (let modal in modals) {\n if (modal === name) continue;\n modals[modal] = false;\n }\n },\n updateScreenshot({ grimoire }, status) {\n if (status !== true && status !== false) {\n grimoire.isScreenshotSuccess = false;\n grimoire.isScreenshot = true;\n } else {\n grimoire.isScreenshotSuccess = status;\n grimoire.isScreenshot = false;\n }\n },\n /**\n * Store custom roles\n * @param state\n * @param roles Array of role IDs or full role definitions\n */\n setCustomRoles(state, roles) {\n state.roles = new Map(\n roles\n // map existing roles to base definition or pre-populate custom roles to ensure all properties\n .map(\n role =>\n rolesJSONbyId.get(role.id) ||\n state.roles.get(role.id) ||\n Object.assign({}, customRole, role)\n )\n // default empty icons to good / evil / traveler\n .map(role => {\n if (rolesJSONbyId.get(role.id)) return role;\n if (role.team === \"townsfolk\" || role.team === \"outsider\") {\n role.image = role.image || imageBase + \"good.png\";\n } else if (role.team === \"demon\" || role.team === \"minion\") {\n role.image = role.image || imageBase + \"evil.png\";\n } else {\n role.image = role.image || imageBase + \"custom.png\";\n }\n return role;\n })\n // filter out roles that don't match an existing role and also don't have name/ability/team\n .filter(role => role.name && role.ability && role.team)\n // sort by team\n .sort((a, b) => b.team.localeCompare(a.team))\n // convert to Map\n .map(role => [role.id, role])\n );\n },\n setEdition(state, edition) {\n if (editionJSONbyId.has(edition.id)) {\n state.edition = editionJSONbyId.get(edition.id);\n state.roles = getRolesByEdition(state.edition);\n } else {\n state.edition = edition;\n }\n state.modals.edition = false;\n }\n },\n plugins: [persistence, socket]\n});\n","import Vue from \"vue\";\nimport App from \"./App\";\nimport store from \"./store\";\nimport { library } from \"@fortawesome/fontawesome-svg-core\";\nimport { fas } from \"@fortawesome/free-solid-svg-icons\";\nimport { fab } from \"@fortawesome/free-brands-svg-icons\";\nimport { FontAwesomeIcon } from \"@fortawesome/vue-fontawesome\";\n\nconst faIcons = [\n \"AddressCard\",\n \"BookOpen\",\n \"BroadcastTower\",\n \"Camera\",\n \"Chair\",\n \"CheckSquare\",\n \"CloudMoon\",\n \"Cog\",\n \"Copy\",\n \"Dice\",\n \"Dragon\",\n \"ExchangeAlt\",\n \"FileCode\",\n \"FileUpload\",\n \"HandPaper\",\n \"HandPointRight\",\n \"Heartbeat\",\n \"Image\",\n \"Link\",\n \"MinusCircle\",\n \"PeopleArrows\",\n \"PlusCircle\",\n \"Question\",\n \"Random\",\n \"RedoAlt\",\n \"SearchMinus\",\n \"SearchPlus\",\n \"Square\",\n \"Sun\",\n \"TheaterMasks\",\n \"Times\",\n \"TimesCircle\",\n \"TrashAlt\",\n \"Undo\",\n \"User\",\n \"UserEdit\",\n \"UserFriends\",\n \"Users\",\n \"VoteYea\"\n];\nconst fabIcons = [\"Github\", \"Discord\"];\nlibrary.add(\n ...faIcons.map(i => fas[\"fa\" + i]),\n ...fabIcons.map(i => fab[\"fa\" + i])\n);\nVue.component(\"font-awesome-icon\", FontAwesomeIcon);\nVue.config.productionTip = false;\n\nnew Vue({\n render: h => h(App),\n store\n}).$mount(\"#app\");\n","module.exports = __webpack_public_path__ + \"img/cannibal.e2bfb541.png\";","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!./App.vue?vue&type=style&index=0&lang=scss&\"","module.exports = __webpack_public_path__ + \"img/duchess.cfec75dc.png\";","module.exports = __webpack_public_path__ + \"img/goblin.7ebbd9ad.png\";","module.exports = __webpack_public_path__ + \"img/x.fbca4d75.png\";","module.exports = __webpack_public_path__ + \"img/tb-minion.b01c557e.png\";","var map = {\n\t\"./acrobat.png\": \"887b\",\n\t\"./amnesiac.png\": \"043b\",\n\t\"./angel.png\": \"bfe2\",\n\t\"./apprentice.png\": \"4bea\",\n\t\"./artist.png\": \"2cd0\",\n\t\"./assassin.png\": \"9187\",\n\t\"./balloonist.png\": \"65db\",\n\t\"./barber.png\": \"fcc6\",\n\t\"./barista.png\": \"027a\",\n\t\"./baron.png\": \"24d3\",\n\t\"./beggar.png\": \"cfcc\",\n\t\"./bishop.png\": \"8030\",\n\t\"./bonecollector.png\": \"23b1\",\n\t\"./bountyhunter.png\": \"899d\",\n\t\"./buddhist.png\": \"1d01\",\n\t\"./bureaucrat.png\": \"25f6\",\n\t\"./butcher.png\": \"37dd\",\n\t\"./butler.png\": \"64fe\",\n\t\"./cannibal.png\": \"5bd9\",\n\t\"./cerenovus.png\": \"0436\",\n\t\"./chambermaid.png\": \"125e\",\n\t\"./chef.png\": \"1e83\",\n\t\"./clockmaker.png\": \"f93f\",\n\t\"./courtier.png\": \"ee02\",\n\t\"./cultleader.png\": \"398f\",\n\t\"./custom.png\": \"fd83\",\n\t\"./deusexfiasco.png\": \"9002\",\n\t\"./deviant.png\": \"3b65\",\n\t\"./devilsadvocate.png\": \"cd8b\",\n\t\"./djinn.png\": \"e222\",\n\t\"./doomsayer.png\": \"659f\",\n\t\"./dreamer.png\": \"71b8\",\n\t\"./drunk.png\": \"d97d\",\n\t\"./duchess.png\": \"5c56\",\n\t\"./empath.png\": \"bb7a\",\n\t\"./evil.png\": \"c24f\",\n\t\"./eviltwin.png\": \"e014\",\n\t\"./exorcist.png\": \"5072\",\n\t\"./fanggu.png\": \"6ac0\",\n\t\"./fibbin.png\": \"6eb1\",\n\t\"./fiddler.png\": \"64be\",\n\t\"./fisherman.png\": \"c5db\",\n\t\"./flowergirl.png\": \"66ae\",\n\t\"./fool.png\": \"4720\",\n\t\"./fortuneteller.png\": \"43e8\",\n\t\"./gambler.png\": \"dce6\",\n\t\"./general.png\": \"ac9c\",\n\t\"./goblin.png\": \"5c8e\",\n\t\"./godfather.png\": \"99d0\",\n\t\"./good.png\": \"667e\",\n\t\"./goon.png\": \"55aa\",\n\t\"./gossip.png\": \"cadc\",\n\t\"./grandmother.png\": \"c9f5\",\n\t\"./gunslinger.png\": \"ee92\",\n\t\"./harlot.png\": \"559e\",\n\t\"./hellslibrarian.png\": \"a367\",\n\t\"./imp.png\": \"3e70\",\n\t\"./innkeeper.png\": \"663c\",\n\t\"./investigator.png\": \"b570\",\n\t\"./judge.png\": \"f09b\",\n\t\"./juggler.png\": \"65ab\",\n\t\"./klutz.png\": \"adfc\",\n\t\"./leviathan.png\": \"2b04\",\n\t\"./librarian.png\": \"4d73\",\n\t\"./lilmonsta.png\": \"c492\",\n\t\"./lunatic.png\": \"0b61\",\n\t\"./mastermind.png\": \"f834\",\n\t\"./mathematician.png\": \"8888\",\n\t\"./matron.png\": \"b1cb\",\n\t\"./mayor.png\": \"b223\",\n\t\"./minstrel.png\": \"4efd\",\n\t\"./monk.png\": \"6741\",\n\t\"./moonchild.png\": \"3f65\",\n\t\"./mutant.png\": \"17ad\",\n\t\"./nodashii.png\": \"68a4\",\n\t\"./oracle.png\": \"0c12\",\n\t\"./pacifist.png\": \"fff1\",\n\t\"./philosopher.png\": \"3603\",\n\t\"./pithag.png\": \"7f07\",\n\t\"./plus.png\": \"160b\",\n\t\"./po.png\": \"c73a\",\n\t\"./poisoner.png\": \"f282\",\n\t\"./politician.png\": \"07ab\",\n\t\"./preacher.png\": \"2094\",\n\t\"./professor.png\": \"b30c\",\n\t\"./pukka.png\": \"a6a2\",\n\t\"./ravenkeeper.png\": \"0c59\",\n\t\"./recluse.png\": \"177d\",\n\t\"./revolutionary.png\": \"aa2d\",\n\t\"./sage.png\": \"30b6\",\n\t\"./sailor.png\": \"223c\",\n\t\"./saint.png\": \"6936\",\n\t\"./savant.png\": \"d715\",\n\t\"./scapegoat.png\": \"327a\",\n\t\"./scarletwoman.png\": \"f322\",\n\t\"./seamstress.png\": \"ac7c\",\n\t\"./sentinel.png\": \"af68\",\n\t\"./shabaloth.png\": \"0b29\",\n\t\"./slayer.png\": \"d62b\",\n\t\"./snakecharmer.png\": \"4021\",\n\t\"./soldier.png\": \"4e76\",\n\t\"./spiritofivory.png\": \"0d06\",\n\t\"./spy.png\": \"ec1e\",\n\t\"./stormcatcher.png\": \"a4c2\",\n\t\"./sweetheart.png\": \"f1e5\",\n\t\"./tealady.png\": \"ba9b\",\n\t\"./thief.png\": \"9ce3\",\n\t\"./tinker.png\": \"9f7e\",\n\t\"./towncrier.png\": \"38a5\",\n\t\"./toymaker.png\": \"39eb\",\n\t\"./undertaker.png\": \"0e20\",\n\t\"./vigormortis.png\": \"f4bd\",\n\t\"./virgin.png\": \"eff4\",\n\t\"./vortox.png\": \"3a43\",\n\t\"./voudon.png\": \"a710\",\n\t\"./washerwoman.png\": \"013f\",\n\t\"./widow.png\": \"22c9\",\n\t\"./witch.png\": \"f558\",\n\t\"./x.png\": \"5cf2\",\n\t\"./zombuul.png\": \"20ca\"\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 = \"61b0\";","module.exports = __webpack_public_path__ + \"img/fiddler.8c3b1cc0.png\";","module.exports = __webpack_public_path__ + \"img/butler.3763fa3d.png\";","module.exports = __webpack_public_path__ + \"img/doomsayer.34573e9a.png\";","module.exports = __webpack_public_path__ + \"img/juggler.7cc6d089.png\";","module.exports = __webpack_public_path__ + \"img/balloonist.3d6e31f8.png\";","module.exports = __webpack_public_path__ + \"img/innkeeper.8b0b87f1.png\";","module.exports = __webpack_public_path__ + \"img/good.9b3436c8.png\";","module.exports = __webpack_public_path__ + \"img/flowergirl.4ee69cb5.png\";","module.exports = __webpack_public_path__ + \"img/monk.a6f2667a.png\";","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!./RoleModal.vue?vue&type=style&index=0&id=608ee42c&scoped=true&lang=scss&\"","module.exports = __webpack_public_path__ + \"img/nodashii.5c943357.png\";","module.exports = __webpack_public_path__ + \"img/saint.f81db252.png\";","module.exports = __webpack_public_path__ + \"img/fanggu.cb4e346c.png\";","module.exports = __webpack_public_path__ + \"img/fibbin.2c83b0c2.png\";","module.exports = __webpack_public_path__ + \"img/dreamer.ab7f2328.png\";","module.exports = __webpack_public_path__ + \"img/tb-outsider.9ae6ef1b.png\";","module.exports = __webpack_public_path__ + \"img/bmr.1d06ca78.png\";","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!./Player.vue?vue&type=style&index=0&lang=scss&\"","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!./TownInfo.vue?vue&type=style&index=0&id=29072d10&lang=scss&scoped=true&\"","module.exports = __webpack_public_path__ + \"img/pithag.adc1ce12.png\";","module.exports = __webpack_public_path__ + \"img/bishop.dec14fdc.png\";","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!./Modal.vue?vue&type=style&index=0&lang=scss&\"","module.exports = __webpack_public_path__ + \"img/acrobat.b8ef8f5b.png\";","module.exports = __webpack_public_path__ + \"img/mathematician.31142ad1.png\";","module.exports = __webpack_public_path__ + \"img/bountyhunter.cc6eb160.png\";","module.exports = __webpack_public_path__ + \"img/deusexfiasco.90479b40.png\";","module.exports = __webpack_public_path__ + \"img/assassin.db54a5ff.png\";","module.exports = __webpack_public_path__ + \"img/luf.8e16a6e6.png\";","module.exports = __webpack_public_path__ + \"img/godfather.2febcd81.png\";","module.exports = __webpack_public_path__ + \"img/thief.60ce8845.png\";","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!./Menu.vue?vue&type=style&index=0&id=20e64ad8&scoped=true&lang=scss&\"","module.exports = __webpack_public_path__ + \"img/tinker.669b5612.png\";","module.exports = __webpack_public_path__ + \"img/hellslibrarian.ed49edab.png\";","module.exports = __webpack_public_path__ + \"img/tb-demon.0ac8cce6.png\";","module.exports = __webpack_public_path__ + \"img/stormcatcher.e0bdc1ee.png\";","module.exports = __webpack_public_path__ + \"img/pukka.cbbc2d26.png\";","module.exports = __webpack_public_path__ + \"img/voudon.2b1f0492.png\";","module.exports = __webpack_public_path__ + \"img/revolutionary.ae2abbef.png\";","module.exports = __webpack_public_path__ + \"img/seamstress.05f0eb74.png\";","module.exports = __webpack_public_path__ + \"img/general.1d8bb5aa.png\";","module.exports = __webpack_public_path__ + \"img/klutz.c7e784cd.png\";","module.exports = __webpack_public_path__ + \"img/sentinel.1fecd38b.png\";","module.exports = __webpack_public_path__ + \"img/matron.ffb17746.png\";","module.exports = __webpack_public_path__ + \"img/mayor.98dda8d8.png\";","module.exports = __webpack_public_path__ + \"img/professor.8a5ccf04.png\";","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!./VoteHistoryModal.vue?vue&type=style&index=0&id=44e13b65&lang=scss&scoped=true&\"","module.exports = __webpack_public_path__ + \"img/investigator.13194f19.png\";","module.exports = __webpack_public_path__ + \"img/tealady.2d47353e.png\";","module.exports = __webpack_public_path__ + \"img/empath.d7a89ed7.png\";","module.exports = __webpack_public_path__ + \"img/angel.016b2c65.png\";","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!./Intro.vue?vue&type=style&index=0&id=0ae0fea6&scoped=true&lang=scss&\"","module.exports = __webpack_public_path__ + \"img/evil.908a2622.png\";","module.exports = __webpack_public_path__ + \"img/lilmonsta.e4a265ca.png\";","module.exports = __webpack_public_path__ + \"img/fisherman.9077de7e.png\";","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!./ReminderModal.vue?vue&type=style&index=0&id=379163d6&scoped=true&lang=scss&\"","module.exports = __webpack_public_path__ + \"img/po.4c484011.png\";","module.exports = __webpack_public_path__ + \"img/grandmother.16001541.png\";","module.exports = __webpack_public_path__ + \"img/gossip.dd8d7312.png\";","module.exports = __webpack_public_path__ + \"img/bmr-demon.75dfa056.png\";","module.exports = __webpack_public_path__ + \"img/devilsadvocate.e455fea0.png\";","var map = {\n\t\"./bmr-demon.png\": \"cae1\",\n\t\"./bmr-minion.png\": \"28bf\",\n\t\"./bmr-outsider.png\": \"e898\",\n\t\"./bmr-townsfolk.png\": \"e988\",\n\t\"./bmr.png\": \"7496\",\n\t\"./custom.png\": \"441d\",\n\t\"./luf.png\": \"92d8\",\n\t\"./snv-demon.png\": \"f347\",\n\t\"./snv-minion.png\": \"451a\",\n\t\"./snv-outsider.png\": \"4dd9\",\n\t\"./snv-townsfolk.png\": \"ed00\",\n\t\"./snv.png\": \"2fd0\",\n\t\"./tb-demon.png\": \"a3b0\",\n\t\"./tb-minion.png\": \"5f4e\",\n\t\"./tb-outsider.png\": \"73a1\",\n\t\"./tb-townsfolk.png\": \"f7a3\",\n\t\"./tb.png\": \"0aaa\"\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 = \"ce23\";","module.exports = __webpack_public_path__ + \"img/beggar.b7a4fbda.png\";","module.exports = __webpack_public_path__ + \"img/slayer.0859544b.png\";","module.exports = __webpack_public_path__ + \"img/savant.16bfbc30.png\";","module.exports = __webpack_public_path__ + \"img/drunk.4883c5a1.png\";","module.exports = __webpack_public_path__ + \"img/gambler.000b4b9b.png\";","module.exports = store => {\n // initialize data\n if (localStorage.getItem(\"background\")) {\n store.commit(\"setBackground\", localStorage.background);\n }\n if (localStorage.getItem(\"zoom\")) {\n store.commit(\"setZoom\", parseFloat(localStorage.getItem(\"zoom\")));\n }\n if (localStorage.isPublic !== undefined) {\n store.commit(\"toggleGrimoire\", JSON.parse(localStorage.isPublic));\n }\n if (localStorage.roles !== undefined) {\n store.commit(\"setCustomRoles\", JSON.parse(localStorage.roles));\n store.commit(\"setEdition\", { id: \"custom\" });\n }\n if (localStorage.edition !== undefined) {\n // this will initialize state.roles for official editions\n store.commit(\"setEdition\", JSON.parse(localStorage.edition));\n }\n if (localStorage.bluffs !== undefined) {\n JSON.parse(localStorage.bluffs).forEach((role, index) => {\n store.commit(\"players/setBluff\", {\n index,\n role: store.state.roles.get(role) || {}\n });\n });\n }\n if (localStorage.fabled !== undefined) {\n store.commit(\"players/setFabled\", {\n fabled: JSON.parse(localStorage.fabled).map(id =>\n store.state.fabled.get(id)\n )\n });\n }\n if (localStorage.players) {\n store.commit(\n \"players/set\",\n JSON.parse(localStorage.players).map(player => ({\n ...player,\n role: store.state.roles.get(player.role) || {}\n }))\n );\n }\n /**** Session related data *****/\n if (localStorage.getItem(\"playerId\")) {\n store.commit(\"session/setPlayerId\", localStorage.getItem(\"playerId\"));\n }\n if (localStorage.getItem(\"session\")) {\n const [spectator, sessionId] = JSON.parse(localStorage.getItem(\"session\"));\n store.commit(\"session/setSpectator\", spectator);\n store.commit(\"session/setSessionId\", sessionId);\n }\n\n // listen to mutations\n store.subscribe(({ type, payload }, state) => {\n switch (type) {\n case \"toggleGrimoire\":\n localStorage.setItem(\n \"isPublic\",\n JSON.stringify(state.grimoire.isPublic)\n );\n break;\n case \"setBackground\":\n if (payload) {\n localStorage.setItem(\"background\", payload);\n } else {\n localStorage.removeItem(\"background\");\n }\n break;\n case \"setZoom\":\n if (payload !== 0) {\n localStorage.setItem(\"zoom\", payload);\n } else {\n localStorage.removeItem(\"zoom\");\n }\n break;\n case \"setEdition\":\n localStorage.setItem(\"edition\", JSON.stringify(payload));\n if (state.edition.isOfficial) {\n localStorage.removeItem(\"roles\");\n }\n break;\n case \"setCustomRoles\":\n if (!payload.length) {\n localStorage.removeItem(\"roles\");\n } else {\n localStorage.setItem(\n \"roles\",\n JSON.stringify(store.getters.customRoles)\n );\n }\n break;\n case \"players/setBluff\":\n localStorage.setItem(\n \"bluffs\",\n JSON.stringify(state.players.bluffs.map(({ id }) => id))\n );\n break;\n case \"players/setFabled\":\n localStorage.setItem(\n \"fabled\",\n JSON.stringify(state.players.fabled.map(({ id }) => id))\n );\n break;\n case \"players/add\":\n case \"players/update\":\n case \"players/remove\":\n case \"players/clear\":\n case \"players/set\":\n case \"players/swap\":\n case \"players/move\":\n if (state.players.players.length) {\n localStorage.setItem(\n \"players\",\n JSON.stringify(\n state.players.players.map(player => ({\n ...player,\n // simplify the stored data\n role: player.role.id || {}\n }))\n )\n );\n } else {\n localStorage.removeItem(\"players\");\n }\n break;\n case \"session/setSessionId\":\n if (payload) {\n localStorage.setItem(\n \"session\",\n JSON.stringify([state.session.isSpectator, payload])\n );\n } else {\n localStorage.removeItem(\"session\");\n }\n break;\n case \"session/setPlayerId\":\n if (payload) {\n localStorage.setItem(\"playerId\", payload);\n } else {\n localStorage.removeItem(\"playerId\");\n }\n break;\n }\n });\n};\n","module.exports = __webpack_public_path__ + \"img/eviltwin.06a5a8b8.png\";","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!./RolesModal.vue?vue&type=style&index=0&id=ff145bbe&lang=scss&scoped=true&\"","module.exports = __webpack_public_path__ + \"img/djinn.f10cec5c.png\";","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!./Vote.vue?vue&type=style&index=0&id=292348ab&lang=scss&scoped=true&\"","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!./EditionModal.vue?vue&type=style&index=0&id=d6bb58ea&scoped=true&lang=scss&\"","module.exports = __webpack_public_path__ + \"img/bmr-outsider.971a3d5d.png\";","module.exports = __webpack_public_path__ + \"img/bmr-townsfolk.9bf859b4.png\";","module.exports = __webpack_public_path__ + \"img/spy.b739966f.png\";","module.exports = __webpack_public_path__ + \"img/snv-townsfolk.83cf9a72.png\";","module.exports = __webpack_public_path__ + \"img/courtier.345180fb.png\";","module.exports = __webpack_public_path__ + \"img/gunslinger.9f84c9f2.png\";","module.exports = __webpack_public_path__ + \"img/virgin.eaf181e8.png\";","module.exports = __webpack_public_path__ + \"img/judge.79ec3877.png\";","module.exports = __webpack_public_path__ + \"img/sweetheart.ec1cef03.png\";","module.exports = __webpack_public_path__ + \"img/poisoner.44c80b94.png\";","module.exports = __webpack_public_path__ + \"img/scarletwoman.d2cdaffd.png\";","module.exports = __webpack_public_path__ + \"img/snv-demon.2fe55248.png\";","module.exports = __webpack_public_path__ + \"img/vigormortis.7716a80d.png\";","module.exports = __webpack_public_path__ + \"img/witch.2f895245.png\";","module.exports = __webpack_public_path__ + \"media/countdown.39b8ce06.mp3\";","module.exports = __webpack_public_path__ + \"img/tb-townsfolk.550a119b.png\";","module.exports = __webpack_public_path__ + \"img/mastermind.c3ba5fbb.png\";","module.exports = __webpack_public_path__ + \"img/clockmaker.41906ffc.png\";","module.exports = __webpack_public_path__ + \"img/barber.a354ad9e.png\";","module.exports = __webpack_public_path__ + \"img/custom.8ff972bc.png\";","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!./FabledModal.vue?vue&type=style&index=0&id=d6b399a0&scoped=true&lang=scss&\"","module.exports = __webpack_public_path__ + \"img/pacifist.ad2d0310.png\";"],"sourceRoot":""} \ No newline at end of file diff --git a/js/app.54b65005.js b/js/app.f26aa962.js similarity index 53% rename from js/app.54b65005.js rename to js/app.f26aa962.js index f814f8f..f41f425 100644 --- a/js/app.54b65005.js +++ b/js/app.f26aa962.js @@ -1,2 +1,2 @@ -(function(e){function t(t){for(var s,r,a=t[0],l=t[1],h=t[2],d=0,m=[];d