{"version":3,"sources":["webpack:///./src/config/wow/armor-types.ts","webpack:///./src/components/composition/CompositionsViewPage.vue?395e","webpack:///./src/components/composition/CompositionsViewPage.vue","webpack:///./src/components/composition/CompositionsViewPage.vue?fd97","webpack:///./src/components/composition/CompositionsViewPage.vue?d82f"],"names":["type","classes","render","_vm","this","_h","$createElement","_c","_self","attrs","fetch","compositionGroup","compositions","model","value","callback","$$v","activeCompositionIndex","expression","activeComposition","characters","length","name","boss","imageLinks","thumbnailBoss","urlSlug","isOneOfMyCharacterInComposition","colorPlayerCount","scopedSlots","_u","key","fn","staticClass","isLoading","on","$event","handleDiscordBroadcast","_v","proxy","_s","note","_e","staticRenderFns","teamModule","hasPermission","roles","MANAGE_DISCORD","hasFeaturePermission","DISCORD","currentTeam","discordBroadcastChannelId","fetchCompositionGroup","notifyFetchCompositionGroup","composition","broadcastToDiscord","id","$snackbar","openInfo","$t","handleAPIError","State","components","DataFetcher","BuffList","GroupCard","CompositionsTabList","component","VBtn","VCol","VContainer","VIcon","VRow"],"mappings":"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","file":"dist/js/chunk-9a3f2640.a321a0a3.js","sourcesContent":["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 _c('data-fetcher',{attrs:{\"fetch-data\":_vm.fetch}},[(_vm.compositionGroup != null)?_c('v-container',{attrs:{\"fluid\":\"\",\"pa-0\":\"\",\"ma-0\":\"\"}},[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"6\",\"lg\":\"3\"}},[_c('compositions-tab-list',{attrs:{\"compositions\":_vm.compositionGroup.compositions,\"hide-unused\":\"\"},model:{value:(_vm.activeCompositionIndex),callback:function ($$v) {_vm.activeCompositionIndex=$$v},expression:\"activeCompositionIndex\"}})],1),(_vm.activeComposition && _vm.activeComposition.characters.length > 0)?_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"6\",\"lg\":\"6\"}},[_c('group-card',{attrs:{\"title\":_vm.activeComposition.name,\"title-image-src\":_vm.activeComposition.boss ? _vm.imageLinks.thumbnailBoss(_vm.activeComposition.boss.urlSlug) : null,\"title-right-icon\":_vm.activeComposition.isOneOfMyCharacterInComposition ? 'check' : null,\"data\":_vm.activeComposition.characters,\"label-size\":4,\"color-player-count\":_vm.colorPlayerCount,\"title-alignment\":\"left\",\"display-i-lvl\":\"\",\"display-player-count\":\"\",\"display-total-i-lvl\":\"\"},scopedSlots:_vm._u([(_vm.canBroadcastToDiscord)?{key:\"leftArea\",fn:function(){return [_c('v-btn',{staticClass:\"ml-2 pa-0\",attrs:{\"loading\":_vm.isLoading,\"disabled\":_vm.isLoading,\"small\":\"\",\"text\":\"\",\"icon\":\"\",\"color\":\"blue\"},on:{\"click\":function($event){return _vm.handleDiscordBroadcast(_vm.activeComposition)}}},[_c('v-icon',{attrs:{\"small\":\"\"}},[_vm._v(\"fab fa-discord\")])],1)]},proxy:true}:null,(_vm.activeComposition.note)?{key:\"note\",fn:function(){return [_vm._v(\"\\n\\t\\t\\t\\t\\t\\t\"+_vm._s(_vm.activeComposition.note)+\"\\n\\t\\t\\t\\t\\t\")]},proxy:true}:null,{key:\"buffs\",fn:function(){return [_c('buff-list',{attrs:{\"characters\":_vm.activeComposition.characters}})]},proxy:true}],null,true)})],1):_vm._e()],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\n\nimport { Component, Vue, Prop } from \"vue-property-decorator\";\nimport { namespace } from \"vuex-class\";\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 { roles, features } from \"@/config/roles\";\n\nimport { colorPlayerCount } from \"./lib/helpers\";\n\nimport { getElegantDateString } from \"@/utils/date-helpers\";\nimport { teamUrl } from \"@/utils/url-helpers\";\n\n/**\n * Components\n */\nimport GroupCard from \"@/components/_global/GroupCard.vue\";\nimport CompositionsTabList from \"./components/CompositionsTabList.vue\";\nimport BuffList from \"@/components/composition/components/BuffList.vue\";\n\n/**\n * API\n */\nimport compositionsAPI from \"@/api/compositions\";\nimport { GetOneTeamResponse } from \"@/api/teams/get-one-team.response\";\nimport { GetOneCompositionGroupResponse } from \"@/api/compositions/get-one-composition-group.response\";\nimport DataFetcher from \"@/components/_global/DataFetcher.vue\";\n\n\n/**\n * Types\n */\n\n/**\n * VueX Modules\n */\nconst teamModule = namespace(\"team\");\n\n/**\n * Compositions' view page.\n */\n@Component({\n\tcomponents: {\n\t\tDataFetcher,\n\t\tBuffList,\n\t\tGroupCard,\n\t\tCompositionsTabList\n\t}\n})\nexport default class CompositionsViewPage extends Vue {\n\t/// Injections\n\tclasses = classes;\n\texternalLinks = externalLinks;\n\timageLinks = imageLinks;\n\tarmorTypes = armorTypes;\n\tcolorPlayerCount = colorPlayerCount;\n\tgetElegantDateString = getElegantDateString;\n\n\tteamUrl = teamUrl;\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\tactiveCompositionIndex = 0;\n\n\t/// VueX Modules\n\t@teamModule.State(\"team\")\n\tcurrentTeam!: GetOneTeamResponse;\n\n\tget canBroadcastToDiscord() {\n\t\treturn this.hasPermission(roles.MANAGE_DISCORD) && this.hasFeaturePermission(features.DISCORD) && this.currentTeam.discordBroadcastChannelId;\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\t/// Methods\n\tasync created() {\n\t}\n\n\tasync fetch() {\n\t\tawait this.fetchCompositionGroup();\n\t}\n\n\tasync fetchCompositionGroup() {\n\t\tawait this.notifyFetchCompositionGroup();\n\t}\n\n\tasync handleDiscordBroadcast(composition: any) {\n\t\tthis.isLoading = true;\n\t\ttry {\n\t\t\tawait compositionsAPI.broadcastToDiscord(composition.id);\n\t\t\tthis.$snackbar.openInfo(this.$t(\"snackbar.broadcast_discord_success\"));\n\t\t} catch (error) {\n\t\t\tthis.handleAPIError(error);\n\t\t}\n\t\tthis.isLoading = false;\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!./CompositionsViewPage.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!./CompositionsViewPage.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./CompositionsViewPage.vue?vue&type=template&id=2a4c3fa8&\"\nimport script from \"./CompositionsViewPage.vue?vue&type=script&lang=ts&\"\nexport * from \"./CompositionsViewPage.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 { 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';\ninstallComponents(component, {VBtn,VCol,VContainer,VIcon,VRow})\n"],"sourceRoot":""}