{"version":3,"sources":["webpack:///./src/utils/ranking-helpers.ts","webpack:///./src/mixins/now-mixin.ts","webpack:///./src/config/wow/armor-types.ts","webpack:///./src/components/dashboard/GearPage.vue?c077","webpack:///./src/components/dashboard/GearPage.vue","webpack:///./src/components/dashboard/GearPage.vue?c282","webpack:///./src/components/dashboard/GearPage.vue?2c27","webpack:///./src/components/_global/CharacterSpecCell.vue?f5e6","webpack:///./src/components/_global/CharacterSpecCell.vue","webpack:///./src/components/_global/CharacterSpecCell.vue?1e25","webpack:///./src/components/_global/CharacterSpecCell.vue?ec69","webpack:///./src/components/_global/CharacterSynchronizationStatus.vue?2b34","webpack:///./src/components/_global/CharacterSynchronizationStatus.vue","webpack:///./src/components/_global/CharacterSynchronizationStatus.vue?9aed","webpack:///./src/components/_global/CharacterSynchronizationStatus.vue?3bdd","webpack:///./src/utils/sort-helpers.ts","webpack:///./src/config/wow/difficulties.ts"],"names":["rank","dataRange","dataRangeSorted","slice","sort","a","b","val","indexOf","classNameColorRank","r","artifact","legendary","epic","rare","classNameTierSetsComplete","n","NowMixin","Date","undefined","this","startRegularTimeUpdating","clearTimeout","timeoutHandle","that","setTimeout","now","type","classes","render","_vm","_h","$createElement","_c","_self","displayedRoster","attrs","staticClass","headers","displayedData","scopedSlots","_u","key","fn","ref","props","staticStyle","$vuetify","breakpoint","lgAndUp","_v","_s","$t","item","lastSyncTime","class","rankFunctionIlvl","averageItemLevelEquipped","rankFunctionSockets","sockets","_l","setType","getSlotName","set","getClassFromDifficulty","difficulty","substring","_e","total","setTypes","length","staticRenderFns","teamModule","classFromDifficulty","difficulties","result","text","value","align","sortable","push","x","ilvl","characters","map","gearItems","reduce","prev","curr","gearItem","find","isSet","itemLevel","filter","sumBy","role","name","rosters","id","$route","params","rosterId","isLoading","activeRosterID","itemSetElement","hasOwnProperty","gearType","c","greatVaultScore","State","components","CharacterCell","CharacterSpecCell","CharacterSynchronizationStatus","component","VCol","VContainer","VDataTable","VRow","style","simple","character","color","theme","dark","imageLinks","thumbnailClass","specs","mainSpecNum","required","Boolean","default","VAvatar","VChip","on","_g","differenceInMinutesBetweenDates","getTimeSince","VIcon","VTooltip","sortByAsc","f","sortByDesc","shortName"],"mappings":"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","file":"dist/js/chunk-3a9d0c83.beb5ae51.js","sourcesContent":["export const rank: (dataRange: number[]) => (val: number) => number = (dataRange: number[]) => {\n\tconst dataRangeSorted = dataRange.slice().sort((a, b) => (b - a));\n\treturn (val: number) => {\n\t\tif (val == 0) {\n\t\t\treturn 0;\n\t\t}\n\t\treturn dataRangeSorted.indexOf(val) + 1;\n\t};\n};\n\nexport const classNameColorRank = (r: number) => {\n\treturn {\n\t\tartifact: r === 1,\n\t\tlegendary: 2 <= r && r <= 5,\n\t\tepic: 6 <= r && r <= 10,\n\t\trare: 11 <= r && r <= 15\n\t};\n};\n\nexport const classNameTierSetsComplete = (n: number) => {\n\treturn {\n\t\t\"no-bonus-set\": n < 2,\n\t\t\"bonus-set-2\": 2 <= n && n < 4,\n\t\t\"bonus-set-4\": 4 <= n && n <= 5\n\t};\n};\n\n\n// const average = function (array: any[], elementFunction: any) {\n// \tlet sum = 0;\n// \tlet count = 0;\n// \tfor (const a of array) {\n// \t\tconst e = elementFunction(a);\n// \t\tif (e) {\n// \t\t\tsum += e;\n// \t\t\t++count;\n// \t\t}\n// \t}\n// \treturn count > 0 ? sum / count : 0;\n// };\n\n// const nFormatter = function (num: number, digits: number) {\n// \tconst si = [\n// \t\t// { value: 1E18, symbol: \"E\" },\n// \t\t// { value: 1E15, symbol: \"P\" },\n// \t\t// { value: 1E12, symbol: \"T\" },\n// \t\t{ value: 1E9, symbol: \"B\" },\n// \t\t{ value: 1E6, symbol: \"M\" },\n// \t\t{ value: 1E3, symbol: \"k\" }\n// \t];\n// \tconst rx = /\\.0+$|(\\.[0-9]*[1-9])0+$/;\n// \tfor (const s of si) {\n// \t\tif (num >= s.value) {\n// \t\t\treturn (num / s.value).toFixed(digits).replace(rx, \"$1\") + s.symbol;\n// \t\t}\n// \t}\n// \treturn num.toFixed(digits).replace(rx, \"$1\");\n// };\n","// mixin.js\nimport Vue from \"vue\";\nimport Component from \"vue-class-component\";\n\ntype Timeout = ReturnType;\n\n// You can declare a mixin as the same style as components.\n@Component\nexport default class NowMixin extends Vue {\n\tnow = new Date();\n\ttimeoutHandle: Timeout | undefined = undefined;\n\n\tcreated() {\n\t\tthis.startRegularTimeUpdating();\n\t}\n\n\tbeforeDestroy() {\n\t\tclearTimeout(this.timeoutHandle as number | undefined);\n\t}\n\n\tstartRegularTimeUpdating() {\n\t\tconst that: NowMixin = this;\n\t\tthat.timeoutHandle = setTimeout(async function () {\n\t\t\tthat.now = new Date();\n\t\t\tthat.startRegularTimeUpdating();\n\t\t}, 1000);\n\t}\n}","export default [{\n\ttype: \"Cloth\",\n\tclasses: [8, 5, 9]\n}, {\n\ttype: \"Leather\",\n\tclasses: [4, 11, 10, 12]\n}, {\n\ttype: \"Mail\",\n\tclasses: [7, 3, 13]\n}, {\n\ttype: \"Plate\",\n\tclasses: [1, 2, 6]\n}];","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.displayedRoster != null)?_c('v-container',{attrs:{\"fluid\":\"\",\"grid-list-xl\":\"\",\"ma-0\":\"\",\"pa-0\":\"\"}},[_c('v-row',[_c('v-col',[_c('v-data-table',{staticClass:\"small-padding\",attrs:{\"headers\":_vm.headers,\"items\":_vm.displayedData,\"items-per-page\":-1,\"mobile-breakpoint\":0,\"dense\":\"\",\"hide-default-footer\":\"\",\"sort-by\":\"gearTotal\",\"sort-desc\":\"\"},scopedSlots:_vm._u([{key:\"header\",fn:function(ref){\nvar props = ref.props;\nreturn [_c('thead',{staticClass:\"v-data-table-header\"},[_c('tr',[_c('th',{staticClass:\"text-center parent-header subtitle-2\",staticStyle:{\"border-bottom\":\"0\"},attrs:{\"colspan\":_vm.$vuetify.breakpoint.lgAndUp ? 3 : 2}}),_c('th',{staticClass:\"text-center parent-header subtitle-2\",staticStyle:{\"border-bottom\":\"0\"},attrs:{\"colspan\":\"2\"}},[_vm._v(_vm._s(_vm.$t('dashboard.header_gear')))]),_c('th',{staticClass:\"text-center parent-header subtitle-2\",staticStyle:{\"border-bottom\":\"0\"},attrs:{\"colspan\":\"6\"}},[_vm._v(_vm._s(_vm.$t('dashboard.header_tier_pieces_equipped')))])])])]}},{key:\"item.sync\",fn:function(ref){\nvar item = ref.item;\nreturn [_c('character-synchronization-status',{attrs:{\"last-sync-time\":item.lastSyncTime,\"now\":_vm.now}})]}},{key:\"item.name\",fn:function(ref){\nvar item = ref.item;\nreturn [_c('character-cell',{attrs:{\"character\":item}})]}},{key:\"item.class\",fn:function(ref){\nvar item = ref.item;\nreturn [_c('character-spec-cell',{attrs:{\"character\":item}})]}},{key:\"item.averageItemLevelEquipped\",fn:function(ref){\nvar item = ref.item;\nreturn [_c('span',{class:['warcraft', 'colored', _vm.classNameColorRank(_vm.rankFunctionIlvl(item.averageItemLevelEquipped))]},[_vm._v(_vm._s(item.averageItemLevelEquipped ? item.averageItemLevelEquipped : '-'))])]}},{key:\"item.sockets\",fn:function(ref){\nvar item = ref.item;\nreturn [_c('span',{class:['warcraft', 'colored', _vm.classNameColorRank(_vm.rankFunctionSockets(item.sockets))]},[_vm._v(_vm._s(item.sockets ? item.sockets : '-'))])]}},_vm._l((_vm.setTypes),function(setType){return {key:_vm.getSlotName(setType),fn:function(ref){\nvar item = ref.item;\nreturn [_c('span',{key:setType},[(item.set != null && item.set[setType])?_c('span',{class:_vm.getClassFromDifficulty(item.set, setType)},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\"+_vm._s((\"\" + (item.set[setType].ilvl)))+\"\\n\\t\\t\\t\\t\\t\\t\\t\"),(item.set[setType].difficulty)?_c('span',[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\\t(\"+_vm._s(item.set[setType].difficulty.substring(0, 1))+\")\\n\\t\\t\\t\\t\\t\\t\\t\")]):_vm._e()]):_c('span',[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\\t-\\n\\t\\t\\t\\t\\t\\t\")])])]}}}),{key:\"item.set.total\",fn:function(ref){\nvar item = ref.item;\nreturn [(item.set != null)?_c('span',{class:_vm.classNameTierSetsComplete(item.set.total)},[_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(item.set.total)+\" / \"+_vm._s(_vm.setTypes.length)+\"\\n\\t\\t\\t\\t\\t\")]):_c('span',[_vm._v(\"-\")])]}}],null,true)})],1)],1)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { Component, Mixins, Prop } from \"vue-property-decorator\";\nimport { namespace } from \"vuex-class\";\nimport _ from \"lodash\";\n\n/**\n * Utils\n */\nimport classes from \"@/config/wow/classes\";\nimport * as externalLinks from \"@/config/external-links\";\nimport * as imageLinks from \"@/config/image-links\";\nimport armorTypes from \"@/config/wow/armor-types\";\nimport difficulties from \"@/config/wow/difficulties\";\n\nimport { getElegantDateString, getLocaleStringFromDateString, getTimeSince } from \"@/utils/date-helpers\";\n\nimport { rank, classNameColorRank, classNameTierSetsComplete } from \"@/utils/ranking-helpers\";\n\n\n/**\n * Components\n */\nimport CharacterCell from \"@/components/_global/CharacterCell.vue\";\nimport CharacterSpecCell from \"@/components/_global/CharacterSpecCell.vue\";\nimport CharacterSynchronizationStatus from \"@/components/_global/CharacterSynchronizationStatus.vue\";\n\n/**\n * Mixins\n */\nimport mixinNow from \"@/mixins/now-mixin\";\n\n/**\n * API\n */\nimport { GetOneTeamResponse } from \"@/api/teams/get-one-team.response\";\nimport { Guid } from \"@/domain/guid\";\nimport { GetRostersResponse } from \"@/api/rosters/get-rosters.response\";\nimport { sortByAsc } from \"@/utils/sort-helpers\";\n\n/**\n * Types\n */\n\n/**\n * VueX Modules\n */\nconst teamModule = namespace(\"team\");\n\nconst setTypes = [\"head\", \"shoulder\", \"chest\", \"hands\", \"legs\"];\n\ntype Difficulty = \"MYTHIC\" | \"HEROIC\" | \"NORMAL\" | \"LFR\";\n\nconst classFromDifficulty: { [key: string]: string } = {\n\t\"MYTHIC\": \"legendary\",\n\t\"HEROIC\": \"epic\",\n\t\"NORMAL\": \"rare\"\n};\n\ninterface ItemSetElement {\n\tilvl: number;\n\tdifficulty: Difficulty | null;\n}\n\n/**\n * Rosters great vault page.\n */\n@Component({\n\tcomponents: {\n\t\tCharacterCell,\n\t\tCharacterSpecCell,\n\t\tCharacterSynchronizationStatus\n\t}\n})\nexport default class GearPage extends Mixins(mixinNow) {\n\t/// Injections\n\tclasses = classes;\n\texternalLinks = externalLinks;\n\timageLinks = imageLinks;\n\tarmorTypes = armorTypes;\n\tdifficulties = difficulties;\n\tgetTimeSince = getTimeSince;\n\tgetElegantDateString = getElegantDateString;\n\tgetLocaleStringFromDateString = getLocaleStringFromDateString;\n\n\tclassNameColorRank = classNameColorRank;\n\tclassNameTierSetsComplete = classNameTierSetsComplete;\n\n\tsetTypes = setTypes;\n\tclassFromDifficulty = classFromDifficulty;\n\n\t/// Props\n\t@Prop()\n\trosters!: GetRostersResponse.Roster[];\n\n\t/// Attributes\n\tisLoading = false;\n\n\n\tactiveRosterID: Guid | null = null;\n\n\t/// VueX Modules\n\t@teamModule.State(\"team\")\n\tcurrentTeam!: GetOneTeamResponse;\n\n\tget headers() {\n\t\tconst result: any[] = [\n\t\t\t{\n\t\t\t\ttext: \"\",\n\t\t\t\tvalue: \"sync\",\n\t\t\t\talign: \"left\",\n\t\t\t\tsortable: false,\n\t\t\t\tclass: \"collapsing\"\n\t\t\t},\n\t\t\t{\n\t\t\t\ttext: this.$t(\"character.name\"),\n\t\t\t\tvalue: \"name\",\n\t\t\t\talign: \"left\",\n\t\t\t\tsortable: false\n\t\t\t}\n\t\t];\n\n\t\tif (this.$vuetify.breakpoint.lgAndUp) {\n\t\t\tresult.push({\n\t\t\t\ttext: this.$t(\"character.class\"),\n\t\t\t\tvalue: \"class\",\n\t\t\t\talign: \"left\"\n\t\t\t});\n\t\t}\n\n\t\tresult.push({\n\t\t\ttext: this.$t(\"character.ilvl\"),\n\t\t\tvalue: \"averageItemLevelEquipped\",\n\t\t\talign: \"center\",\n\t\t\tclass: \"collapsing\"\n\t\t}, {\n\t\t\ttext: this.$t(\"character.sockets\"),\n\t\t\tvalue: \"sockets\",\n\t\t\talign: \"center\",\n\t\t\tclass: \"collapsing\"\n\t\t});\n\n\n\t\tresult.push(\n\t\t\t{\n\t\t\t\ttext: this.$t(\"character.gear.head\"),\n\t\t\t\tvalue: \"set.head\",\n\t\t\t\talign: \"center\",\n\t\t\t\tsortable: true,\n\t\t\t\tsort: sortByAsc(x => x?.ilvl ?? 0),\n\t\t\t\tclass: \"collapsing\"\n\t\t\t},\n\t\t\t{\n\t\t\t\ttext: this.$t(\"character.gear.shoulder\"),\n\t\t\t\tvalue: \"set.shoulder\",\n\t\t\t\talign: \"center\",\n\t\t\t\tsortable: true,\n\t\t\t\tsort: sortByAsc(x => x?.ilvl ?? 0),\n\t\t\t\tclass: \"collapsing\"\n\t\t\t},\n\t\t\t{\n\t\t\t\ttext: this.$t(\"character.gear.chest\"),\n\t\t\t\tvalue: \"set.chest\",\n\t\t\t\talign: \"center\",\n\t\t\t\tsortable: true,\n\t\t\t\tsort: sortByAsc(x => x?.ilvl ?? 0),\n\t\t\t\tclass: \"collapsing\"\n\t\t\t},\n\t\t\t{\n\t\t\t\ttext: this.$t(\"character.gear.hands\"),\n\t\t\t\tvalue: \"set.hands\",\n\t\t\t\talign: \"center\",\n\t\t\t\tsortable: true,\n\t\t\t\tsort: sortByAsc(x => x?.ilvl ?? 0),\n\t\t\t\tclass: \"collapsing\"\n\t\t\t},\n\t\t\t{\n\t\t\t\ttext: this.$t(\"character.gear.legs\"),\n\t\t\t\tvalue: \"set.legs\",\n\t\t\t\talign: \"center\",\n\t\t\t\tsortable: true,\n\t\t\t\tsort: sortByAsc(x => x?.ilvl ?? 0),\n\t\t\t\tclass: \"collapsing\"\n\t\t\t},\n\t\t\t{\n\t\t\t\ttext: \"Total\",\n\t\t\t\tvalue: \"set.total\",\n\t\t\t\talign: \"center\",\n\t\t\t\tsortable: true,\n\t\t\t\tclass: \"collapsing\"\n\t\t\t}\n\t\t);\n\n\t\treturn result;\n\t}\n\n\tget displayedData() {\n\t\tif (this.displayedRoster == null) {\n\t\t\treturn [];\n\t\t}\n\n\t\treturn this.displayedRoster.characters\n\t\t\t.map((x) => ({\n\t\t\t\t...x,\n\t\t\t\tset: x.gearItems ? setTypes.reduce((prev, curr) => {\n\t\t\t\t\tconst gearItem = x.gearItems.find((gearItem) => gearItem.type == curr && gearItem.isSet);\n\t\t\t\t\treturn {\n\t\t\t\t\t\t...prev,\n\t\t\t\t\t\t[curr]: gearItem != null ? {\n\t\t\t\t\t\t\tilvl: gearItem.itemLevel,\n\t\t\t\t\t\t\tdifficulty: gearItem.difficulty\n\t\t\t\t\t\t} : null\n\t\t\t\t\t};\n\t\t\t\t}, {\n\t\t\t\t\ttotal: x.gearItems.filter((gearItem) => gearItem.isSet).length\n\t\t\t\t}) : null,\n\t\t\t\tsockets: x.gearItems ? _.sumBy(x.gearItems, (gearItem) => gearItem.sockets) : null\n\t\t\t}))\n\t\t\t.sort((a, b) => {\n\t\t\t\treturn ((a.role < b.role) ? 1 : (a.role > b.role) ? -1 : 0)\n\t\t\t\t\t|| (b.averageItemLevelEquipped - a.averageItemLevelEquipped)\n\t\t\t\t\t|| ((a.name < b.name) ? -1 : (a.name > b.name) ? 1 : 0);\n\t\t\t});\n\t}\n\n\t/**\n\t * The current roster to display.\n\t */\n\tget displayedRoster(): GetRostersResponse.Roster | null {\n\t\treturn this.rosters.find(x => x.id == this.$route.params.rosterId) ?? null;\n\t}\n\n\t/// Methods\n\tasync created() {\n\t\tthis.isLoading = true;\n\n\t\tif (this.rosters && this.rosters.length > 0) {\n\t\t\tthis.activeRosterID = this.rosters[0].id;\n\t\t}\n\n\t\tthis.isLoading = false;\n\t}\n\n\tgetClassFromDifficulty(itemSetElement: { [key: string]: ItemSetElement }, setType: string) {\n\n\t\treturn [\n\t\t\t\"warcraft\",\n\t\t\t\"colored\",\n\t\t\titemSetElement != null && itemSetElement[setType] && classFromDifficulty.hasOwnProperty(itemSetElement[setType].difficulty as string)\n\t\t\t\t? classFromDifficulty[itemSetElement[setType].difficulty as string]\n\t\t\t\t: undefined\n\t\t];\n\t\t//return item.set != null && item.set[setType] && classFromDifficulty ? classFromDifficulty[] : undefined;\n\t}\n\n\n\tgetSlotName(gearType: string) {\n\t\treturn `item.set.${gearType}`;\n\t}\n\n\tget rankFunctionGreatVaultScore() {\n\t\treturn rank(this.displayedData.map((c) => c.greatVaultScore));\n\t}\n\n\tget rankFunctionIlvl() {\n\t\treturn rank(this.displayedData.map((c) => c.averageItemLevelEquipped));\n\t}\n\n\tget rankFunctionSockets() {\n\t\treturn rank(this.displayedData.map((c) => c.sockets ?? 0));\n\t}\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--14-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GearPage.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--14-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GearPage.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./GearPage.vue?vue&type=template&id=3c58d8fe&\"\nimport script from \"./GearPage.vue?vue&type=script&lang=ts&\"\nexport * from \"./GearPage.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VDataTable } from 'vuetify/lib/components/VDataTable';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCol,VContainer,VDataTable,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-chip',{style:({'width':'100%', 'white-space': 'nowrap', 'border':0, 'padding': (_vm.simple ? '18px' : '20px')}),attrs:{\"color\":_vm.classes[_vm.character.class].color,\"outlined\":_vm.$vuetify.theme.dark,\"label\":\"\"}},[_c('v-avatar',{class:{'premium large': !_vm.simple},attrs:{\"left\":\"\"}},[_c('img',{attrs:{\"src\":_vm.imageLinks.thumbnailClass(_vm.character.class)}})]),_vm._v(\"\\n\\t\"+_vm._s(_vm.classes[_vm.character.class].specs[_vm.character.mainSpecNum - 1]\n\t\t\t? _vm.classes[_vm.character.class].specs[_vm.character.mainSpecNum - 1].name + \" \"\n\t\t\t: '')+\"\\n\\t\"+_vm._s(_vm.classes[_vm.character.class].name)+\"\\n\")],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport Vue from \"vue\";\nimport { Prop, Component } from \"vue-property-decorator\";\n\n/**\n * Utils\n */\nimport classes from \"@/config/wow/classes\";\nimport * as imageLinks from \"@/config/image-links\";\n\n\n/**\n * Character cell component.\n */\n@Component\nexport default class CharacterSpecCell extends Vue {\n\t// Injections\n\timageLinks = imageLinks;\n\tclasses = classes;\n\n\t@Prop({required: true})\n\tcharacter!: {\n\t\tmainSpecNum: number;\n\t\tclass: string;\n\t};\n\n\t@Prop({type: Boolean, default: false})\n\tsimple!: boolean;\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--14-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CharacterSpecCell.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--14-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CharacterSpecCell.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./CharacterSpecCell.vue?vue&type=template&id=556e084c&\"\nimport script from \"./CharacterSpecCell.vue?vue&type=script&lang=ts&\"\nexport * from \"./CharacterSpecCell.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VAvatar } from 'vuetify/lib/components/VAvatar';\nimport { VChip } from 'vuetify/lib/components/VChip';\ninstallComponents(component, {VAvatar,VChip})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-tooltip',{attrs:{\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nreturn [_c('span',_vm._g({},on),[(_vm.lastSyncTime != null && _vm.differenceInMinutesBetweenDates(new Date(_vm.lastSyncTime), _vm.now) <= 60)?_c('v-icon',{attrs:{\"color\":\"green\"}},[_vm._v(\"check\")]):(_vm.lastSyncTime != null && _vm.differenceInMinutesBetweenDates(new Date(_vm.lastSyncTime), _vm.now) <= 60*15)?_c('v-icon',{attrs:{\"color\":\"orange\"}},[_vm._v(\"check\")]):(_vm.lastSyncTime != null && _vm.differenceInMinutesBetweenDates(new Date(_vm.lastSyncTime), _vm.now) <= 60*24)?_c('v-icon',{attrs:{\"color\":\"red\"}},[_vm._v(\"check\")]):_c('v-icon',{attrs:{\"color\":\"orange\"}},[_vm._v(\"warning\")])],1)]}}])},[_c('span',[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.$t('dashboard.synchronized_'))+\"\\n\\t\\t\"),_c('strong',[_vm._v(_vm._s(_vm.lastSyncTime ? _vm.getTimeSince(new Date(_vm.lastSyncTime), _vm.now) + ' ago' : _vm.$t('global.never')))])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport Vue from \"vue\";\nimport { Prop, Component } from \"vue-property-decorator\";\n\n/**\n * Utils\n */\nimport { differenceInMinutesBetweenDates, getTimeSince } from \"@/utils/date-helpers\";\n\n/**\n * Character short synchronization status component.\n */\n@Component\nexport default class CharacterSynchronizationStatus extends Vue {\n\t// Injections\n\tdifferenceInMinutesBetweenDates = differenceInMinutesBetweenDates;\n\tgetTimeSince = getTimeSince;\n\n\t@Prop()\n\tnow!: Date;\n\n\t@Prop()\n\tlastSyncTime!: string;\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--14-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CharacterSynchronizationStatus.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--14-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CharacterSynchronizationStatus.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./CharacterSynchronizationStatus.vue?vue&type=template&id=5c9ec4bb&\"\nimport script from \"./CharacterSynchronizationStatus.vue?vue&type=script&lang=ts&\"\nexport * from \"./CharacterSynchronizationStatus.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VTooltip } from 'vuetify/lib/components/VTooltip';\ninstallComponents(component, {VIcon,VTooltip})\n","export const sortByAsc = (f: (x: T) => string | number) => {\n\treturn (a: T, b: T): number => {\n\t\tif (f(a) < f(b)) { return -1; }\n\t\tif (f(a) > f(b)) { return 1; }\n\t\treturn 0;\n\t};\n};\n\nexport const sortByDesc = (f: (x: T) => string | number) => {\n\treturn (a: T, b: T): number => {\n\t\tif (f(a) < f(b)) { return 1; }\n\t\tif (f(a) > f(b)) { return -1; }\n\t\treturn 0;\n\t};\n};","export default [\n\t{ id: 2, name: \"normal\", val: -3, shortName: \"N\" },\n\t{ id: 3, name: \"heroic\", val: -2, shortName: \"H\" },\n\t{ id: 4, name: \"mythic\", val: -1, shortName: \"M\" }\n];"],"sourceRoot":""}