{"version":3,"sources":["webpack:///./src/api/rosters.ts","webpack:///./src/components/_global/RosterSelector.vue?8141","webpack:///./src/components/_global/RosterSelector.vue","webpack:///./src/components/_global/RosterSelector.vue?8f5b","webpack:///./src/components/_global/RosterSelector.vue?fcc1","webpack:///./src/config/presence-items.ts","webpack:///../../../src/mixins/button-group/index.ts","webpack:///../../../src/components/VBtnToggle/VBtnToggle.ts","webpack:///./src/components/composition/CompositionsEditorPage.vue?b67c","webpack:///./src/config/wishes-colors.ts","webpack:///./src/components/composition/components/WishesTooltipContent.vue?057a","webpack:///./src/components/composition/components/WishesTooltipContent.vue","webpack:///./src/components/composition/components/WishesTooltipContent.vue?acf6","webpack:///./src/components/composition/components/WishesTooltipContent.vue?53ad","webpack:///./src/components/composition/CompositionsEditorPage.vue","webpack:///./src/components/composition/CompositionsEditorPage.vue?e1e3","webpack:///./src/components/composition/CompositionsEditorPage.vue?4b38","webpack:///./src/config/wow/difficulties.ts"],"names":["fetchRosters","teamID","get","data","fetchTeamCharacters","refreshRoster","rosterID","patch","refreshAllRosters","saveAll","rosters","put","createRoster","post","deleteRoster","delete","render","_vm","this","_h","$createElement","_c","_self","staticClass","attrs","isLoading","canSetPreviousRoster","on","handleSetPreviousRoster","_v","$t","model","value","callback","$$v","activeRosterId","expression","canSetNextRoster","handleSetNextRoster","staticRenderFns","findIndex","x","id","length","val","$emit","externalModel","currentRosterIndex","type","String","component","VBtn","VIcon","VSelect","signupStates","UNKNOWN","ACCEPTED","TENTATIVE","DECLINED","presenceItems","icon","color","name","selectable","provide","btnToggle","computed","classes","methods","genData","mixins","props","backgroundColor","borderless","dense","group","rounded","shaped","tile","Boolean","themeClasses","setTextColor","setBackgroundColor","fetch","compositionGroup","canSave","handleSaveClick","_s","compositions","activeCompositionIndex","canClearCurrentComposition","handleClearCurrentCompositionClick","scopedSlots","_u","key","fn","ref","_g","canCopyCurrentComposition","handleCopyCurrentCompositionClick","canPasteCharacters","handlePasteCharactersClick","options","raid","colorPlayerCount","activeCompositionCharacters","activeComposition","displayWishes","c","wishesColorFunction","activeWishValue","undefined","find","signupState","handleRemoveCharacterFromComposition","handleMoveCharacterInComposition","handleCopyCharacterToComposition","handleCharacterContextMenu","displayAlts","displaySignupsComments","character","handleNoteChanged","$set","proxy","_e","activeRosterCharacters","activeRoster","characters","compositionID","role","staticStyle","canAddAllToCurrentComposition","handleAddAllToCurrentCompositionClick","wishesColors","default","wishValue","max","reduce","acc","curr","Math","signupComment","getTimeSince","activeLastLootWishesUpdateTime","_l","wish","k","loot","difficulty","difficulties","note","imageLinks","iconItem","alts","thumbnailClass","class","style","VDivider","VImg","VList","VListItem","VListItemAvatar","VListItemContent","VListItemSubtitle","VListItemTitle","teamModule","includes","applySecondaryInformations","hasUnsavedChanges","clipboardCharacters","fetchCompositionGroup","fetchWishes","computeAlts","currentTeam","filter","isDisabled","raidID","teams","getRaidWishes","wishes","allRostersCharacters","flatMap","r","result","rc","userID","push","teamMembers","notifyFetchCompositionGroup","$snackbar","openInfo","handleAPIError","some","ac","map","cloneCharacter","previousCompositionID","nextCompositionID","compositionToAddCharacterTo","charactersSet","compositionToDeleteCharacterFrom","ev","compositionToModifyCharacterFrom","characterToModify","roleInfo","roles","nonEmptyRoles","subroles","subRoleIndex","subRole","numberOfNonEmptyRoles","o","signups","boss","signup","xc","lastLootWishesUpdateTime","Date","parse","wishList","comment","State","components","DataFetcher","BuffList","GroupCard","WishesTooltipContent","CompositionsTabList","RosterSelector","beforeRouteLeave","to","from","next","that","answer","window","confirm","VBtnToggle","VCol","VContainer","VRow","VTextField","VTooltip","shortName"],"mappings":"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","file":"dist/js/chunk-e8a637d2.0a3f56d7.js","sourcesContent":["import axios from \"@/utils/axios\";\nimport { Guid } from \"@/domain/guid\";\nimport { GetRostersResponse } from \"@/api/rosters/get-rosters.response\";\n\n\nexport default {\n\tasync fetchRosters(teamID: Guid): Promise {\n\t\treturn (await axios().get(`/rosters/?teamID=${teamID}`)).data;\n\t},\n\tasync fetchTeamCharacters(teamID: Guid): Promise {\n\t\treturn (await axios().get(`/teams/${teamID}/characters/`)).data;\n\t},\n\tasync refreshRoster(rosterID: Guid): Promise {\n\t\treturn (await axios().patch(`/rosters/${rosterID}/characters/items/`)).data;\n\t},\n\tasync refreshAllRosters(teamID: Guid): Promise {\n\t\treturn (await axios().patch(`/rosters/characters/items/?teamID=${teamID}`)).data;\n\t},\n\tasync saveAll(rosters: any[]): Promise {\n\t\treturn (await axios().put(\"/rosters/\", rosters)).data;\n\t},\n\tasync createRoster(teamID: Guid): Promise {\n\t\treturn (await axios().post(`/teams/${teamID}/rosters/`)).data;\n\t},\n\tasync deleteRoster(rosterID: Guid): Promise {\n\t\treturn (await axios().delete(`/rosters/${rosterID}`)).data;\n\t}\n};","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"d-flex align-center w-full\"},[_c('v-btn',{attrs:{\"disabled\":_vm.isLoading || !_vm.canSetPreviousRoster,\"icon\":\"\"},on:{\"click\":_vm.handleSetPreviousRoster}},[_c('v-icon',[_vm._v(\"mdi-chevron-left\")])],1),_c('v-select',{staticClass:\"mx-2 flex-grow-1\",attrs:{\"items\":_vm.rosters,\"label\":_vm.$t('roster.roster'),\"dense\":\"\",\"outlined\":\"\",\"item-text\":\"name\",\"item-value\":\"id\",\"hide-details\":\"\"},model:{value:(_vm.activeRosterId),callback:function ($$v) {_vm.activeRosterId=$$v},expression:\"activeRosterId\"}}),_c('v-btn',{attrs:{\"disabled\":_vm.isLoading || !_vm.canSetNextRoster,\"icon\":\"\"},on:{\"click\":_vm.handleSetNextRoster}},[_c('v-icon',[_vm._v(\"mdi-chevron-right\")])],1)],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\n\n\n\n\nimport { Component, Vue, Prop, Model, Watch } from \"vue-property-decorator\";\n\n/**\n * A roster selector component.\n */\n@Component\nexport default class RosterSelector extends Vue {\n\t/// Injections\n\n\t/// Properties\n\t@Prop()\n\trosters!: any[] | null;\n\n\t@Prop()\n\tisLoading!: boolean;\n\n\n\t/// Attributes\n\n\n\tget canSetPreviousRoster() {\n\t\tif (!this.rosters) {\n\t\t\treturn false;\n\t\t}\n\t\treturn this.rosters.findIndex(x => x.id == this.activeRosterId) > 0;\n\t}\n\n\tget canSetNextRoster() {\n\t\tif (!this.rosters) {\n\t\t\treturn false;\n\t\t}\n\t\treturn this.rosters.findIndex(x => x.id == this.activeRosterId) < this.rosters.length - 1;\n\t}\n\n\t/** V-MODEL */\n\t@Model(\"change\", {type: String})\n\treadonly externalModel!: string | null;\n\n\tactiveRosterId: string | null = null;\n\n\t@Watch(\"activeRosterId\")\n\tonInternalModelChanged(val: string) {\n\t\tthis.$emit(\"change\", val);\n\t}\n\n\t@Watch(\"externalModel\")\n\tonExternalModelChanged(val: string) {\n\t\tthis.activeRosterId = val;\n\t}\n\n\tcreated() {\n\t\tthis.activeRosterId = this.externalModel;\n\t}\n\n\thandleSetPreviousRoster() {\n\t\tif (!this.rosters) {\n\t\t\treturn;\n\t\t}\n\t\tconst currentRosterIndex = this.rosters.findIndex(x => x.id == this.activeRosterId);\n\t\tthis.activeRosterId = this.rosters[(currentRosterIndex - 1 + this.rosters.length) % this.rosters.length].id;\n\t}\n\n\thandleSetNextRoster() {\n\t\tif (!this.rosters) {\n\t\t\treturn;\n\t\t}\n\t\tconst currentRosterIndex = this.rosters.findIndex(x => x.id == this.activeRosterId);\n\t\tthis.activeRosterId = this.rosters[(currentRosterIndex + 1 + this.rosters.length) % this.rosters.length].id;\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!./RosterSelector.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!./RosterSelector.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./RosterSelector.vue?vue&type=template&id=01bd99f7&\"\nimport script from \"./RosterSelector.vue?vue&type=script&lang=ts&\"\nexport * from \"./RosterSelector.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 { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VSelect } from 'vuetify/lib/components/VSelect';\ninstallComponents(component, {VBtn,VIcon,VSelect})\n","export const signupStates = {\n\tUNKNOWN: 0,\n\tACCEPTED: 1,\n\tTENTATIVE: 2,\n\tDECLINED: 3\n};\n\nexport interface PresenceItem {\n\tid: number;\n\ticon: string;\n\tcolor: string;\n\tname: string;\n\tselectable: boolean;\n};\n\nconst presenceItems: PresenceItem[] = [\n\t{\n\t\tid: signupStates.ACCEPTED,\n\t\ticon: \"fas fa-check\",\n\t\tcolor: \"success\",\n\t\tname: \"composition.state[1]\",\n\t\tselectable: true\n\t},\n\t{\n\t\tid: signupStates.TENTATIVE,\n\t\ticon: \"fas fa-question\",\n\t\tcolor: \"warning\",\n\t\tname: \"composition.state[2]\",\n\t\tselectable: true\n\t},\n\t{\n\t\tid: signupStates.DECLINED,\n\t\ticon: \"fas fa-times\",\n\t\tcolor: \"error\",\n\t\tname: \"composition.state[3]\",\n\t\tselectable: true\n\t},\n\t{\n\t\tid: signupStates.UNKNOWN,\n\t\ticon: \"fas fa-question\",\n\t\tcolor: \"grey lighten-1\",\n\t\tname: \"composition.state[0]\",\n\t\tselectable: false\n\t}\n];\n\nexport default presenceItems;","// Extensions\nimport { BaseItemGroup } from '../../components/VItemGroup/VItemGroup'\n\n/* @vue/component */\nexport default BaseItemGroup.extend({\n name: 'button-group',\n\n provide (): object {\n return {\n btnToggle: this,\n }\n },\n\n computed: {\n classes (): object {\n return BaseItemGroup.options.computed.classes.call(this)\n },\n },\n\n methods: {\n // Isn't being passed down through types\n genData: BaseItemGroup.options.methods.genData,\n },\n})\n","// Styles\nimport './VBtnToggle.sass'\n\n// Mixins\nimport ButtonGroup from '../../mixins/button-group'\nimport Colorable from '../../mixins/colorable'\n\n// Utilities\nimport mixins from '../../util/mixins'\n\n/* @vue/component */\nexport default mixins(\n ButtonGroup,\n Colorable\n).extend({\n name: 'v-btn-toggle',\n\n props: {\n backgroundColor: String,\n borderless: Boolean,\n dense: Boolean,\n group: Boolean,\n rounded: Boolean,\n shaped: Boolean,\n tile: Boolean,\n },\n\n computed: {\n classes (): object {\n return {\n ...ButtonGroup.options.computed.classes.call(this),\n 'v-btn-toggle': true,\n 'v-btn-toggle--borderless': this.borderless,\n 'v-btn-toggle--dense': this.dense,\n 'v-btn-toggle--group': this.group,\n 'v-btn-toggle--rounded': this.rounded,\n 'v-btn-toggle--shaped': this.shaped,\n 'v-btn-toggle--tile': this.tile,\n ...this.themeClasses,\n }\n },\n },\n\n methods: {\n genData () {\n const data = this.setTextColor(this.color, {\n ...ButtonGroup.options.methods.genData.call(this),\n })\n\n if (this.group) return data\n\n return this.setBackgroundColor(this.backgroundColor, data)\n },\n },\n})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('data-fetcher',{attrs:{\"fetch-data\":_vm.fetch}},[(_vm.compositionGroup != null)?_c('v-container',{attrs:{\"fluid\":\"\",\"grid-list-xl\":\"\",\"ma-0\":\"\",\"pa-0\":\"\"}},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"3\"}},[_c('v-row',[_c('v-col',[_c('v-btn',{staticClass:\"mr-2\",attrs:{\"disabled\":!_vm.canSave,\"block\":\"\",\"color\":\"primary\",\"depressed\":\"\"},on:{\"click\":_vm.handleSaveClick}},[_c('v-icon',{attrs:{\"left\":\"\"}},[_vm._v(\"save\")]),_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.$t('composition.save'))+\"\\n\\t\\t\\t\\t\\t\\t\")],1)],1)],1),_c('v-row',[_c('v-col',{staticClass:\"pt-1\"},[_c('compositions-tab-list',{attrs:{\"compositions\":_vm.compositionGroup.compositions},model:{value:(_vm.activeCompositionIndex),callback:function ($$v) {_vm.activeCompositionIndex=$$v},expression:\"activeCompositionIndex\"}})],1)],1)],1),_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"9\"}},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"6\"}},[_c('v-row',{attrs:{\"no-gutters\":\"\"}},[_c('v-col',[_c('v-btn',{staticClass:\"mr-2\",attrs:{\"disabled\":!_vm.canClearCurrentComposition,\"dark\":_vm.canClearCurrentComposition,\"color\":\"teal\",\"depressed\":\"\"},on:{\"click\":_vm.handleClearCurrentCompositionClick}},[_c('v-icon',{attrs:{\"left\":\"\"}},[_vm._v(\"clear\")]),_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.$t('composition.clear'))+\"\\n\\t\\t\\t\\t\\t\\t\\t\\t\")],1),_c('v-tooltip',{attrs:{\"top\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nreturn [_c('v-btn',_vm._g({staticClass:\"mr-2\",attrs:{\"disabled\":!_vm.canCopyCurrentComposition,\"dark\":_vm.canCopyCurrentComposition,\"color\":\"teal\",\"depressed\":\"\"},on:{\"click\":_vm.handleCopyCurrentCompositionClick}},on),[_c('v-icon',[_vm._v(\"content_copy\")])],1)]}}],null,false,930805882)},[_c('span',[_vm._v(_vm._s(_vm.$t('composition.copy')))])]),_c('v-tooltip',{attrs:{\"top\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nreturn [_c('v-btn',_vm._g({attrs:{\"disabled\":!_vm.canPasteCharacters,\"dark\":_vm.canPasteCharacters,\"color\":\"teal\",\"depressed\":\"\"},on:{\"click\":_vm.handlePasteCharactersClick}},on),[_c('v-icon',[_vm._v(\"content_paste\")])],1)]}}],null,false,1208184737)},[_c('span',[_vm._v(_vm._s(_vm.$t('composition.paste')))])])],1),_c('v-col',{staticClass:\"col-auto\"},[_c('v-btn-toggle',{attrs:{\"dense\":\"\",\"multiple\":\"\"},model:{value:(_vm.options),callback:function ($$v) {_vm.options=$$v},expression:\"options\"}},[_c('v-btn',{attrs:{\"disabled\":_vm.isLoading || !_vm.compositionGroup.raid}},[_c('v-tooltip',{attrs:{\"top\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nreturn [_c('div',_vm._g({},on),[_c('v-icon',[_vm._v(\"format_list_numbered\")])],1)]}}],null,false,2685858428)},[_c('span',[_vm._v(_vm._s(_vm.$t('composition.display_wishes')))])])],1),_c('v-btn',{attrs:{\"disabled\":_vm.isLoading}},[_c('v-tooltip',{attrs:{\"top\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nreturn [_c('div',_vm._g({},on),[_c('v-icon',[_vm._v(\"fab fa-battle-net\")])],1)]}}],null,false,194887784)},[_c('span',[_vm._v(_vm._s(_vm.$t('composition.display_alt_characters')))])])],1),_c('v-btn',{attrs:{\"disabled\":_vm.isLoading}},[_c('v-tooltip',{attrs:{\"top\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nreturn [_c('div',_vm._g({},on),[_c('v-icon',[_vm._v(\"fa-light fa-comments\")])],1)]}}],null,false,4044458625)},[_c('span',[_vm._v(_vm._s(_vm.$t('composition.display_signup_comments')))])])],1)],1)],1)],1),(_vm.activeComposition)?_c('group-card',{staticClass:\"mt-4\",attrs:{\"color-player-count\":_vm.colorPlayerCount,\"data\":_vm.activeCompositionCharacters,\"index\":_vm.activeComposition.id,\"label-background-color\":_vm.displayWishes ? function (c) { return _vm.wishesColorFunction(c.activeWishValue); } : null,\"label-content\":_vm.displayWishes ? function (c) { return (c.activeWishValue ? '(' + c.activeWishValue.length + ') ' + c.name : c.name); } : undefined,\"label-right-icon\":function (c) { return _vm.presenceItems.find(function (x) { return x.id == c.signupState; }) ? _vm.presenceItems.find(function (x) { return x.id == c.signupState; }).icon : null; },\"label-right-icon-color\":function (c) { return _vm.presenceItems.find(function (x) { return x.id == c.signupState; }) ? _vm.presenceItems.find(function (x) { return x.id == c.signupState; }).color : null; },\"label-size\":4,\"title\":_vm.activeComposition.name,\"display-i-lvl\":\"\",\"display-player-count\":\"\",\"display-total-i-lvl\":\"\",\"is-interactive\":\"\"},on:{\"on-delete\":_vm.handleRemoveCharacterFromComposition,\"on-move\":_vm.handleMoveCharacterInComposition,\"on-copy\":_vm.handleCopyCharacterToComposition,\"on-character-context\":_vm.handleCharacterContextMenu},scopedSlots:_vm._u([(_vm.displayWishes || _vm.displayAlts || _vm.displaySignupsComments)?{key:\"labelTooltip\",fn:function(ref){\nvar character = ref.character;\nreturn [_c('wishes-tooltip-content',{attrs:{\"character\":character}})]}}:null,{key:\"note\",fn:function(){return [_c('v-text-field',{staticClass:\"my-0\",attrs:{\"dense\":\"\",\"hide-details\":\"\",\"label\":\"Note\",\"outlined\":\"\"},on:{\"input\":_vm.handleNoteChanged},model:{value:(_vm.activeComposition.note),callback:function ($$v) {_vm.$set(_vm.activeComposition, \"note\", $$v)},expression:\"activeComposition.note\"}})]},proxy:true},{key:\"buffs\",fn:function(){return [_c('buff-list',{attrs:{\"characters\":_vm.activeCompositionCharacters}})]},proxy:true}],null,true)}):_vm._e()],1),_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"6\"}},[_c('v-row',{staticClass:\"mb-0 pb-0\",attrs:{\"no-gutters\":\"\"}},[(_vm.rosters)?_c('v-col',[_c('roster-selector',{attrs:{\"rosters\":_vm.rosters,\"is-loading\":_vm.isLoading},model:{value:(_vm.activeRosterId),callback:function ($$v) {_vm.activeRosterId=$$v},expression:\"activeRosterId\"}})],1):_vm._e()],1),(_vm.activeRoster)?_c('group-card',{staticClass:\"mt-3\",attrs:{\"data\":_vm.activeRosterCharacters,\"index\":_vm.activeRoster.id,\"label-background-color\":_vm.displayWishes ? function (c) { return _vm.wishesColorFunction(c.activeWishValue); } : null,\"label-content\":_vm.displayWishes ? function (c) { return (c.activeWishValue ? '(' + c.activeWishValue.length + ') ' + c.name : c.name); } : undefined,\"label-right-icon\":function (c) { return _vm.presenceItems.find(function (x) { return x.id == c.signupState; }) ? _vm.presenceItems.find(function (x) { return x.id == c.signupState; }).icon : null; },\"label-right-icon-color\":function (c) { return _vm.presenceItems.find(function (x) { return x.id == c.signupState; }) ? _vm.presenceItems.find(function (x) { return x.id == c.signupState; }).color : null; },\"label-size\":4,\"observed-data\":_vm.activeComposition ? _vm.activeComposition.characters : [],\"title\":_vm.activeRoster.name,\"display-i-lvl\":\"\",\"display-player-count\":\"\",\"is-interactive\":\"\",\"is-source\":\"\"},on:{\"on-copy\":function (character, compositionID, role) { return _vm.handleCopyCharacterToComposition(character, _vm.activeComposition.id, role); }},scopedSlots:_vm._u([(_vm.displayWishes || _vm.displayAlts || _vm.displaySignupsComments)?{key:\"labelTooltip\",fn:function(ref){\nvar character = ref.character;\nreturn [_c('wishes-tooltip-content',{attrs:{\"character\":character}})]}}:null,{key:\"note\",fn:function(){return [_c('v-btn',{staticStyle:{\"height\":\"40px\"},attrs:{\"disabled\":!_vm.canAddAllToCurrentComposition,\"dark\":_vm.canAddAllToCurrentComposition,\"color\":\"teal\",\"depressed\":\"\"},on:{\"click\":_vm.handleAddAllToCurrentCompositionClick}},[_c('v-icon',{attrs:{\"left\":\"\"}},[_vm._v(\"add\")]),_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.$t('composition.add_all'))+\"\\n\\t\\t\\t\\t\\t\\t\\t\\t\")],1)]},proxy:true}],null,true)}):_vm._e()],1)],1)],1)],1)],1):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { GetTeamRaidWishesResponse } from \"@/api/teams/get-team-raid-wishes.response\";\n\nexport const wishesColors = {\n\tdefault: \"lightgray\"\n};\n\nexport const wishesColorFunction = (wishValue: GetTeamRaidWishesResponse.Wish[] | null) => {\n\tif (wishValue == null) {\n\t\treturn wishesColors.default;\n\t}\n\tconst max = wishValue.reduce((acc: number, curr: GetTeamRaidWishesResponse.Wish) => Math.max(acc, curr.value), 0);\n\n\tif (max == 30) {\n\t\treturn \"#8BC34A\";\n\t}\n\telse if (max >= 20) {\n\t\treturn \"#FFEB3B\";\n\t}\n\telse if (max > 0) {\n\t\treturn \"#FF9800\";\n\t}\n\telse {\n\t\treturn \"#F44336\";\n\t}\n};","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"ma-3\"},[_c('h2',{staticClass:\"text-center mb-3\"},[_vm._v(_vm._s(_vm.character.name))]),(_vm.character.signupComment)?_c('v-divider'):_vm._e(),(_vm.character.signupComment)?_c('v-list',{attrs:{\"color\":\"transparent\",\"dark\":\"\"}},[_c('div',{staticClass:\"text-center\"},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.character.signupComment)+\"\\n\\t\\t\")])]):_vm._e(),(_vm.character.activeWishValue)?_c('v-divider'):_vm._e(),(_vm.character.activeWishValue)?_c('v-list',{attrs:{\"color\":\"transparent\",\"dark\":\"\"}},[(_vm.character.activeLastLootWishesUpdateTime)?_c('div',{staticClass:\"text-center\"},[_vm._v(\"Updated: \"+_vm._s(_vm.getTimeSince(_vm.character.activeLastLootWishesUpdateTime))+\" ago\\n\\t\\t\")]):_vm._e(),_vm._l((_vm.character.activeWishValue),function(wish,k){return _c('v-list-item',{key:k},[_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(_vm._s(wish.loot.name))]),_c('v-list-item-subtitle',[_vm._v(\"\\n\\t\\t\\t\\t\\t\"+_vm._s(_vm.$t((\"wishes_choices.\" + (wish.value))))+\"\\n\\t\\t\\t\\t\\t\"+_vm._s(wish.difficulty != 0 ? (\" - \" + (_vm.$t((\"raid_difficulties.\" + (_vm.difficulties.find(function (x) { return x.id == wish.difficulty; }).name))))) : '')+\"\\n\\t\\t\\t\\t\")]),(wish.note && wish.note != '')?_c('v-list-item-subtitle',{staticClass:\"font-italic\"},[_vm._v(_vm._s(wish.note))]):_vm._e()],1),_c('v-list-item-avatar',[_c('v-img',{attrs:{\"src\":_vm.imageLinks.iconItem(wish.loot.icon)}})],1)],1)})],2):_vm._e(),(_vm.character.alts && _vm.character.alts.length > 0 && _vm.character.activeWishValue)?_c('v-divider'):_vm._e(),(_vm.character.alts && _vm.character.alts.length > 0)?_c('v-list',{attrs:{\"color\":\"transparent\",\"dark\":\"\"}},_vm._l((_vm.character.alts),function(character,k){return _c('v-list-item',{key:k},[_c('v-list-item-avatar',[_c('v-img',{attrs:{\"src\":_vm.imageLinks.thumbnailClass(character.class)}})],1),_c('v-list-item-content',[_c('v-list-item-title',{staticClass:\"character-name--title\",style:({color: _vm.classes[character.class].color})},[_vm._v(_vm._s(character.name)+\"\\n\\t\\t\\t\\t\")])],1)],1)}),1):_vm._e()],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\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 Vue from \"vue\";\nimport { Prop, Component } from \"vue-property-decorator\";\n\n/**\n * Utils\n */\nimport { getTimeSince } from \"@/utils/date-helpers\";\nimport classes from \"@/config/wow/classes\";\nimport * as imageLinks from \"@/config/image-links\";\nimport difficulties from \"@/config/wow/difficulties\";\n\n/**\n * Character wishes tooltip content component.\n */\n@Component\nexport default class WishesTooltipContent extends Vue {\n\t/// Injections\n\tgetTimeSince = getTimeSince;\n\timageLinks = imageLinks;\n\tclasses = classes;\n\tdifficulties = difficulties;\n\n\t@Prop()\n\tcharacter!: any;\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!./WishesTooltipContent.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!./WishesTooltipContent.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./WishesTooltipContent.vue?vue&type=template&id=e2acd1a8&\"\nimport script from \"./WishesTooltipContent.vue?vue&type=script&lang=ts&\"\nexport * from \"./WishesTooltipContent.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 { VDivider } from 'vuetify/lib/components/VDivider';\nimport { VImg } from 'vuetify/lib/components/VImg';\nimport { VList } from 'vuetify/lib/components/VList';\nimport { VListItem } from 'vuetify/lib/components/VList';\nimport { VListItemAvatar } from 'vuetify/lib/components/VList';\nimport { VListItemContent } from 'vuetify/lib/components/VList';\nimport { VListItemSubtitle } from 'vuetify/lib/components/VList';\nimport { VListItemTitle } from 'vuetify/lib/components/VList';\ninstallComponents(component, {VDivider,VImg,VList,VListItem,VListItemAvatar,VListItemContent,VListItemSubtitle,VListItemTitle})\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\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\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, Prop, Vue } from \"vue-property-decorator\";\nimport { namespace } from \"vuex-class\";\nimport { NavigationGuardNext, Route } from \"vue-router\";\n\n/**\n * Utils\n */\nimport * as externalLinks from \"@/config/external-links\";\nimport * as imageLinks from \"@/config/image-links\";\n\nimport { colorPlayerCount } from \"./lib/helpers\";\nimport { wishesColorFunction } from \"@/config/wishes-colors\";\nimport presenceItems from \"@/config/presence-items\";\nimport roles, { SubRole } from \"@/config/wow/roles\";\n\n/**\n * Components\n */\nimport GroupCard from \"@/components/_global/GroupCard.vue\";\nimport WishesTooltipContent from \"./components/WishesTooltipContent.vue\";\nimport CompositionsTabList from \"./components/CompositionsTabList.vue\";\nimport RosterSelector from \"@/components/_global/RosterSelector.vue\";\nimport BuffList from \"./components/BuffList.vue\";\n\n/**\n * API\n */\nimport teamsAPI from \"@/api/teams\";\nimport rostersAPI from \"@/api/rosters\";\nimport compositionsAPI from \"@/api/compositions\";\nimport { CompositionGroupResponse, GetOneCompositionGroupResponse } from \"@/api/compositions/get-one-composition-group.response\";\nimport { GetOneTeamResponse } from \"@/api/teams/get-one-team.response\";\n\n\n/**\n * Types\n */\nimport { Guid } from \"@/domain/guid\";\nimport { GetRostersResponse } from \"@/api/rosters/get-rosters.response\";\nimport { GetTeamRaidWishesResponse } from \"@/api/teams/get-team-raid-wishes.response\";\nimport DataFetcher from \"@/components/_global/DataFetcher.vue\";\n\n/**\n * VueX Modules\n */\nconst teamModule = namespace(\"team\");\n\n/**\n * Compositions' editor page.\n */\n@Component({\n\tcomponents: {\n\t\tDataFetcher,\n\t\tBuffList,\n\t\tGroupCard,\n\t\tWishesTooltipContent,\n\t\tCompositionsTabList,\n\t\tRosterSelector\n\t},\n\tbeforeRouteLeave(to: Route, from: Route, next: NavigationGuardNext) {\n\t\tconst that = this as CompositionsEditorPage;\n\t\tif (!that.hasUnsavedChanges) {\n\t\t\treturn next();\n\t\t}\n\t\tconst answer = window.confirm(that.$t(\"global.alert_leave_page\") as string);\n\t\tif (answer) {\n\t\t\tnext();\n\t\t}\n\t\telse {\n\t\t\tnext(false);\n\t\t}\n\t}\n})\nexport default class CompositionsEditorPage extends Vue {\n\t/// Injections\n\texternalLinks = externalLinks;\n\timageLinks = imageLinks;\n\tcolorPlayerCount = colorPlayerCount;\n\twishesColorFunction = wishesColorFunction;\n\tpresenceItems = presenceItems;\n\n\t/// Props\n\t@Prop()\n\tcompositionGroup!: GetOneCompositionGroupResponse | null;\n\t@Prop()\n\tnotifyFetchCompositionGroup!: () => Promise;\n\n\t/// Attributes\n\tisLoading = false;\n\trosters: GetRostersResponse.Roster[] | null = null;\n\twishes: GetTeamRaidWishesResponse | null = null;\n\tteamMembers: any | null = null;\n\thasUnsavedChanges = false;\n\tactiveRosterId: Guid | null = null;\n\tactiveCompositionIndex = 0;\n\toptions: number[] = [];\n\tclipboardCharacters: CompositionGroupResponse.Character[] | null = null;\n\n\t/// VueX Modules\n\t@teamModule.State(\"team\")\n\tcurrentTeam!: GetOneTeamResponse;\n\n\tget displayWishes() {\n\t\treturn this.options.includes(0);\n\t}\n\n\tget displayAlts() {\n\t\treturn this.options.includes(1);\n\t}\n\n\tget displaySignupsComments() {\n\t\treturn this.options.includes(2);\n\t}\n\n\tget activeComposition() {\n\t\tif (!this.compositionGroup) {\n\t\t\treturn null;\n\t\t}\n\t\treturn this.compositionGroup.compositions[this.activeCompositionIndex];\n\t}\n\n\tget activeCompositionCharacters() {\n\t\treturn this.applySecondaryInformations(this.activeComposition);\n\t}\n\n\tget activeRoster() {\n\t\tif (!this.rosters) {\n\t\t\treturn null;\n\t\t}\n\t\treturn this.rosters.find(x => x.id == this.activeRosterId) ?? null;\n\t}\n\n\tget activeRosterCharacters() {\n\t\treturn this.applySecondaryInformations(this.activeRoster);\n\t}\n\n\tget canSave() {\n\t\treturn !this.isLoading && this.hasUnsavedChanges;\n\t}\n\n\tget canClearCurrentComposition() {\n\t\treturn !this.isLoading && this.activeComposition && this.activeComposition.characters.length > 0;\n\t}\n\n\tget canAddAllToCurrentComposition() {\n\t\treturn !this.isLoading;\n\t}\n\n\tget canCopyCurrentComposition() {\n\t\treturn !this.isLoading && this.activeComposition && this.activeComposition.characters.length > 0;\n\t}\n\n\tget canPasteCharacters() {\n\t\treturn !this.isLoading && this.clipboardCharacters != null;\n\t}\n\n\n\t/// Methods\n\tasync created() {\n\t}\n\n\tasync fetch() {\n\t\tawait this.fetchRosters();\n\t\tif (this.rosters != null && this.rosters.length > 0) {\n\t\t\tthis.activeRosterId = this.rosters[0].id;\n\t\t}\n\n\t\tawait this.fetchCompositionGroup();\n\n\t\tawait this.fetchWishes();\n\t\tthis.computeAlts();\n\t}\n\n\tasync fetchRosters() {\n\t\tconst rosters = await rostersAPI.fetchRosters(this.currentTeam.id);\n\t\tthis.rosters = rosters.filter(x => !x.isDisabled);\n\t}\n\n\tasync fetchWishes() {\n\t\tif (!this.compositionGroup || !this.compositionGroup.raidID) {\n\t\t\treturn;\n\t\t}\n\t\tthis.wishes = await teamsAPI.getRaidWishes(this.currentTeam.id, this.compositionGroup.raidID);\n\t}\n\n\tcomputeAlts() {\n\t\tif (this.rosters == null) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst allRostersCharacters = this.rosters\n\t\t\t.flatMap(r => r.characters);\n\t\tconst result: any = {};\n\t\tfor (const rc of allRostersCharacters) {\n\t\t\tif (rc.userID != null) {\n\t\t\t\tif (!result[rc.userID]) {\n\t\t\t\t\tresult[rc.userID] = [];\n\t\t\t\t}\n\n\t\t\t\tif (result[rc.userID].find((c: any) => c.id == rc.id) == null) {\n\t\t\t\t\tresult[rc.userID].push(rc);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tthis.teamMembers = result;\n\t}\n\n\tasync fetchCompositionGroup() {\n\t\tawait this.notifyFetchCompositionGroup();\n\t\tthis.hasUnsavedChanges = false;\n\t}\n\n\tasync handleSaveClick() {\n\t\tif (this.rosters == null) {\n\t\t\treturn;\n\t\t}\n\t\tthis.isLoading = true;\n\t\ttry {\n\t\t\tawait compositionsAPI.saveAll(this.compositionGroup);\n\t\t\tawait this.fetchCompositionGroup();\n\t\t\tthis.$snackbar.openInfo(this.$t(\"snackbar.save_success\"));\n\t\t} catch (error) {\n\t\t\tthis.handleAPIError(error);\n\t\t}\n\t\tthis.isLoading = false;\n\t}\n\n\tprivate cloneCharacter(c: any) {\n\t\treturn {...c};\n\t}\n\n\thandleAddAllToCurrentCompositionClick() {\n\t\tconst activeComposition = this.activeComposition;\n\t\tif (activeComposition == null) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst activeRoster = this.activeRoster;\n\t\tif (activeRoster == null) {\n\t\t\treturn;\n\t\t}\n\n\t\tactiveComposition.characters = [\n\t\t\t...activeComposition.characters,\n\t\t\t...activeRoster.characters\n\t\t\t\t.filter(x => !activeComposition.characters.some(ac => x.id === ac.id))\n\t\t\t\t.map(this.cloneCharacter)\n\t\t];\n\t\tthis.hasUnsavedChanges = true;\n\t}\n\n\thandleClearCurrentCompositionClick() {\n\t\tif (this.activeComposition == null) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.activeComposition.characters = [];\n\t\tthis.hasUnsavedChanges = true;\n\t}\n\n\thandleCopyCurrentCompositionClick() {\n\t\tif (this.activeComposition == null) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.clipboardCharacters = this.activeComposition.characters;\n\t\tthis.$snackbar.openInfo(this.$t(\"snackbar.characters_copied\"));\n\t}\n\n\thandlePasteCharactersClick() {\n\t\tif (this.activeComposition == null) {\n\t\t\treturn;\n\t\t}\n\t\tif (this.clipboardCharacters == null) {\n\t\t\treturn;\n\t\t}\n\t\tthis.activeComposition.characters = this.clipboardCharacters.map(this.cloneCharacter);\n\t\tthis.hasUnsavedChanges = true;\n\t}\n\n\thandleMoveCharacterInComposition(character: any, previousCompositionID: Guid, nextCompositionID: Guid, role: string) {\n\t\tif (this.compositionGroup == null) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.handleRemoveCharacterFromComposition(character, previousCompositionID);\n\t\tthis.handleCopyCharacterToComposition(character, nextCompositionID, role);\n\n\t\tthis.hasUnsavedChanges = true;\n\t}\n\n\thandleCopyCharacterToComposition(character: any, compositionID: Guid, role: string) {\n\t\tif (this.compositionGroup == null) {\n\t\t\treturn;\n\t\t}\n\t\tconst compositionToAddCharacterTo = this.compositionGroup.compositions.find(x => x.id === compositionID) ?? null;\n\t\tif (compositionToAddCharacterTo == null) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst charactersSet = compositionToAddCharacterTo.characters;\n\t\tcompositionToAddCharacterTo.characters = [...charactersSet.filter(x => x.id !== character.id), {\n\t\t\t...character,\n\t\t\trole: role\n\t\t}];\n\n\t\tthis.hasUnsavedChanges = true;\n\t}\n\n\thandleRemoveCharacterFromComposition(character: any, compositionID: Guid) {\n\t\tif (this.compositionGroup == null) {\n\t\t\treturn;\n\t\t}\n\t\tconst compositionToDeleteCharacterFrom = this.compositionGroup.compositions.find(x => x.id === compositionID) ?? null;\n\t\tif (compositionToDeleteCharacterFrom == null) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst charactersSet = compositionToDeleteCharacterFrom.characters;\n\t\tcompositionToDeleteCharacterFrom.characters = charactersSet.filter(x => x.id !== character.id);\n\n\t\tthis.hasUnsavedChanges = true;\n\t}\n\n\thandleNoteChanged() {\n\t\tthis.hasUnsavedChanges = true;\n\t}\n\n\thandleCharacterContextMenu(character: {\n\t\tid: Guid;\n\t}, rosterID: Guid, ev: Event) {\n\t\tif (this.rosters == null) {\n\t\t\treturn;\n\t\t}\n\t\tif (this.compositionGroup == null) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst compositionToModifyCharacterFrom = this.compositionGroup.compositions.find(c => c.id === rosterID) ?? null;\n\t\tif (compositionToModifyCharacterFrom == null) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst characterToModify = compositionToModifyCharacterFrom.characters.find(x => x.id == character.id) ?? null;\n\t\tif (characterToModify == null) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst roleInfo = roles.find(x => x.name == characterToModify.role) ?? null;\n\t\tif (roleInfo == null) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst nonEmptyRoles = roleInfo.subroles.filter(x => x != \"\") as SubRole[];\n\t\tif (nonEmptyRoles.length == 0) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst subRoleIndex = nonEmptyRoles.findIndex(x => x == characterToModify.subRole);\n\n\t\tconst numberOfNonEmptyRoles = nonEmptyRoles.length;\n\n\t\tcharacterToModify.subRole = nonEmptyRoles[(subRoleIndex + 1) % numberOfNonEmptyRoles];\n\n\t\tthis.hasUnsavedChanges = true;\n\t}\n\n\tprivate applySecondaryInformations(o: any) {\n\t\tconst compositionGroup = this.compositionGroup;\n\t\tif (compositionGroup == null) {\n\t\t\treturn [];\n\t\t}\n\n\t\tconst activeComposition = this.activeComposition;\n\t\tif (activeComposition == null) {\n\t\t\treturn [];\n\t\t}\n\n\t\tconst signups = compositionGroup.signups;\n\t\tif (signups == null) {\n\t\t\treturn [];\n\t\t}\n\n\t\tconst boss = activeComposition.boss;\n\t\treturn o ? o.characters.map((c: any) => {\n\t\t\tconst signup = signups.find(x => x.characters && x.characters.find(xc => xc.id == c.id) != null);\n\t\t\treturn {\n\t\t\t\t...c,\n\t\t\t\tactiveLastLootWishesUpdateTime: this.wishes && this.wishes[c.id] && this.wishes[c.id].lastLootWishesUpdateTime ? new Date(Date.parse(this.wishes[c.id].lastLootWishesUpdateTime)) : null,\n\t\t\t\tactiveWishValue: this.displayWishes && this.wishes && this.wishes[c.id] && boss ? this.wishes[c.id].wishList[boss.id] : null,\n\t\t\t\tsignupState: signup ? signup.signupState : null,\n\t\t\t\talts: this.displayAlts && this.teamMembers != null ? this.teamMembers[c.userID]?.filter((x: any) => x.id !== c.id) : null,\n\t\t\t\tsignupComment: this.displaySignupsComments && signup ? signup.comment : null\n\t\t\t};\n\t\t}) : [];\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!./CompositionsEditorPage.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!./CompositionsEditorPage.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./CompositionsEditorPage.vue?vue&type=template&id=85813726&\"\nimport script from \"./CompositionsEditorPage.vue?vue&type=script&lang=ts&\"\nexport * from \"./CompositionsEditorPage.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 { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VBtnToggle } from 'vuetify/lib/components/VBtnToggle';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\nimport { VTooltip } from 'vuetify/lib/components/VTooltip';\ninstallComponents(component, {VBtn,VBtnToggle,VCol,VContainer,VIcon,VRow,VTextField,VTooltip})\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":""}