{"version":3,"sources":["webpack:///./src/components/Team/Lineups/LineupManager.vue?95e6","webpack:///src/components/Team/Lineups/LineupManager.vue","webpack:///./src/components/Team/Lineups/LineupManager.vue?5e6f","webpack:///./src/components/Team/Lineups/LineupManager.vue","webpack:///./src/components/Team/Lineups/LineupDetails.vue?00d6","webpack:///src/components/Team/Lineups/LineupDetails.vue","webpack:///./src/components/Team/Lineups/LineupDetails.vue?0b9c","webpack:///./src/components/Team/Lineups/LineupDetails.vue","webpack:///./src/classes/Lineup.js"],"names":["render","_vm","this","_h","$createElement","_c","_self","staticClass","attrs","lineups","loading","model","value","callback","$$v","selected","expression","show","selectedLineup","division","team","tokenStatus","on","onCancelClick","_e","$event","stopPropagation","_v","_s","loadLineups","window","_l","lineup","i","key","showButtons","staticRenderFns","props","data","computed","find","methods","newRoster","push","Lineup","id","teamId","name","type","filter","$VBL","get","handleInput","$emit","mounted","watch","val","components","LineupDetails","component","VBtn","VCard","VCardText","VCol","VContainer","VExpandTransition","VIcon","VRow","VSelect","VWindow","VWindowItem","hideName","class","editing","$set","players","length","playersNeeded","params","tournamentId","tournament","query","tab","position","n","ref","refInFor","getAvailable","item","getPlayerName","disabled","onChange","showSwapObj","swap","alternates","removePosition","removedPlayers","availablePlayers","scopedSlots","_u","fn","jersey","valid","nonStarter","proxy","user","vbl","confirmDelete","doDelete","editable","applyAll","takenPlayers","dirty","currentBtn","icon","color","click","save","edit","dto","oDto","JSON","stringify","starters","map","me","x","top","bottom","cancel","p","blur","ref2","focus","post","delete","positions","player","v","startInEdit","VAlert","VCardActions","VCheckbox","VChip","VDialog","VFabTransition","VSimpleTable","VSpacer","VTextField","VToolbar","VToolbarTitle","update","parse","exclude","DtoUpdate","startsWith","pairs","replace","Array","keys","f","console","log","a","_type","initPostions","flatten","m","includes","forEach"],"mappings":"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","file":"js/chunk-50354d86.9c2ac5bb.js","sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.selector)?_c('v-container',{staticClass:\"pa-0\",attrs:{\"fluid\":\"\"}},[_c('v-row',{attrs:{\"dense\":\"\"}},[_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('v-select',{attrs:{\"items\":_vm.lineups,\"label\":\"Lineup\",\"item-text\":\"name\",\"item-value\":\"id\",\"loading\":_vm.loading,\"color\":\"color3\",\"item-color\":\"color3\",\"placeholder\":\"Select A Lineup\"},model:{value:(_vm.selected),callback:function ($$v) {_vm.selected=$$v},expression:\"selected\"}})],1),_c('v-expand-transition',[(_vm.show && _vm.selectedLineup)?_c('v-col',{staticClass:\"text-center\",attrs:{\"cols\":\"12\"}},[_c('lineup-details',{attrs:{\"lineup\":_vm.selectedLineup,\"division\":_vm.division,\"team\":_vm.team,\"tokenStatus\":_vm.tokenStatus,\"disabled\":true,\"hideName\":true},on:{\"cancel-click\":_vm.onCancelClick}})],1):_vm._e()],1),_c('v-expand-transition',[(_vm.selectedLineup)?_c('v-col',{staticClass:\"text-center\",attrs:{\"cols\":\"12\"}},[_c('v-btn',{attrs:{\"color\":\"color3\",\"text\":\"\",\"x-small\":\"\"},on:{\"click\":function($event){$event.stopPropagation();_vm.show = !_vm.show}}},[_vm._v(_vm._s(_vm.show ? 'Hide' : 'show')+\" Lineup\")])],1):_vm._e()],1)],1)],1):_c('v-card',{attrs:{\"color\":\"grey lighten-4\"}},[_c('v-container',{attrs:{\"fluid\":\"\"}},[_c('v-row',{staticClass:\"title justify-space-between align-center\",attrs:{\"dense\":\"\"}},[_vm._v(\" Line-Up Manager \"),_c('v-btn',{attrs:{\"color\":\"color3\",\"x-small\":\"\",\"text\":\"\",\"icon\":\"\",\"loading\":_vm.loading},on:{\"click\":function($event){$event.stopPropagation();return _vm.loadLineups($event)}}},[_c('v-icon',[_vm._v(\"fas fa-sync-alt\")])],1)],1),_c('loading-bar',{attrs:{\"value\":_vm.loading}}),_c('v-row',{attrs:{\"dense\":\"\"}},[_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('v-window',{attrs:{\"touchless\":\"\"},model:{value:(_vm.window),callback:function ($$v) {_vm.window=$$v},expression:\"window\"}},[_c('v-window-item',{attrs:{\"value\":0}},[_c('v-card-text',{staticClass:\"text-center title\"},[_c('div',[_vm._v(\"You don't have any lineups yet\")])]),(false)?_c('v-card-text',{staticClass:\"text-center title\"},[_c('v-btn',{attrs:{\"color\":\"color3\",\"text\":\"\"},on:{\"click\":function($event){$event.stopPropagation();return _vm.newRoster($event)}}},[_c('v-icon',{staticClass:\"mr-3\"},[_vm._v(\"fas fa-plus\")]),_vm._v(\" Add a lineup \")],1)],1):_vm._e()],1),_c('v-window-item',{attrs:{\"value\":1}},[_c('v-row',{attrs:{\"dense\":\"\"}},[_vm._l((_vm.lineups),function(lineup,i){return _c('v-col',{key:((lineup.id) + \"-\" + i),attrs:{\"cols\":\"12\",\"sm\":\"6\"}},[_c('v-card',{staticClass:\"ma-1\",attrs:{\"color\":\"grey lighten-4\",\"height\":\"100%\"}},[_c('lineup-details',{attrs:{\"lineup\":lineup,\"division\":_vm.division,\"team\":_vm.team,\"tokenStatus\":_vm.tokenStatus,\"showButtons\":_vm.showButtons},on:{\"cancel-click\":_vm.onCancelClick}})],1)],1)}),(false)?_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('v-card',{staticClass:\"ma-1 d-flex align-center justify-center\",attrs:{\"color\":\"grey lighten-2\"}},[_c('v-btn',{attrs:{\"color\":\"color3\",\"text\":\"\"},on:{\"click\":function($event){$event.stopPropagation();return _vm.newRoster($event)}}},[_c('v-icon',{staticClass:\"mr-3\"},[_vm._v(\"fas fa-plus\")]),_vm._v(\" Add a lineup \")],1)],1)],1):_vm._e()],2)],1)],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n  <v-container fluid v-if=\"selector\" class=\"pa-0\">\r\n    <v-row dense>\r\n      <v-col cols=\"12\">\r\n        <v-select\r\n          :items=\"lineups\"\r\n          v-model=\"selected\"\r\n          label=\"Lineup\"\r\n          item-text=\"name\"\r\n          item-value=\"id\"\r\n          :loading=\"loading\"\r\n          color=\"color3\"\r\n          item-color=\"color3\"\r\n          placeholder=\"Select A Lineup\"\r\n        ></v-select>\r\n      </v-col>\r\n      <v-expand-transition>\r\n        <v-col cols=\"12\" class=\"text-center\" v-if=\"show && selectedLineup\">\r\n          <lineup-details\r\n            :lineup=\"selectedLineup\"\r\n            :division=\"division\"\r\n            :team=\"team\"\r\n            @cancel-click=\"onCancelClick\"\r\n            :tokenStatus=\"tokenStatus\"\r\n            :disabled=\"true\"\r\n            :hideName=\"true\"\r\n          ></lineup-details>\r\n        </v-col>\r\n      </v-expand-transition>\r\n      <v-expand-transition>\r\n        <v-col cols=\"12\" class=\"text-center\" v-if=\"selectedLineup\">\r\n          <v-btn\r\n            color=\"color3\"\r\n            text x-small\r\n            @click.stop=\"show = !show\"\r\n          >{{show ? 'Hide' : 'show'}} Lineup</v-btn>\r\n        </v-col>\r\n      </v-expand-transition>\r\n    </v-row>\r\n  </v-container>\r\n  <v-card color=\"grey lighten-4\" v-else>\r\n    <v-container fluid>\r\n      <v-row dense class=\"title justify-space-between align-center\">\r\n        Line-Up Manager\r\n        <!--\r\n          <ncaa-print></ncaa-print>\r\n        -->\r\n        <v-btn\r\n          color=\"color3\"\r\n          x-small\r\n          text icon\r\n          :loading=\"loading\"\r\n          @click.stop=\"loadLineups\"\r\n        >\r\n          <v-icon>fas fa-sync-alt</v-icon>\r\n        </v-btn>\r\n      </v-row>\r\n      <loading-bar :value=\"loading\"></loading-bar>\r\n      <v-row dense>\r\n        <v-col cols=\"12\">\r\n            <v-window v-model=\"window\" touchless>\r\n              <v-window-item :value=\"0\">\r\n                  <v-card-text class=\"text-center title\">\r\n                    <div>You don't have any lineups yet</div>\r\n                  </v-card-text>\r\n                  <v-card-text class=\"text-center title\" v-if=\"false\">\r\n                    <v-btn color=\"color3\" text @click.stop=\"newRoster\">\r\n                      <v-icon class=\"mr-3\">fas fa-plus</v-icon>\r\n                      Add a lineup\r\n                    </v-btn>\r\n                  </v-card-text>\r\n              </v-window-item>\r\n              <v-window-item :value=\"1\">\r\n                <v-row dense>\r\n                  <v-col cols=\"12\" sm=\"6\" v-for=\"(lineup, i) in lineups\" :key=\"`${lineup.id}-${i}`\">\r\n                    <v-card\r\n                      color=\"grey lighten-4\"\r\n                      class=\"ma-1\"\r\n                      height=\"100%\"\r\n                    >\r\n                      <lineup-details\r\n                        :lineup=\"lineup\"\r\n                        :division=\"division\"\r\n                        :team=\"team\"\r\n                        @cancel-click=\"onCancelClick\"\r\n                        :tokenStatus=\"tokenStatus\"\r\n                        :showButtons=\"showButtons\"\r\n                      ></lineup-details>\r\n                    </v-card>\r\n                  </v-col>\r\n                  <v-col cols=\"12\" v-if=\"false\">\r\n                    <v-card\r\n                      color=\"grey lighten-2\"\r\n                      class=\"ma-1 d-flex align-center justify-center\"\r\n                    >\r\n                    <v-btn color=\"color3\" text @click.stop=\"newRoster\">\r\n                      <v-icon class=\"mr-3\">fas fa-plus</v-icon>\r\n                      Add a lineup\r\n                    </v-btn>\r\n                    </v-card>\r\n                  </v-col>\r\n                </v-row>\r\n              </v-window-item>\r\n            </v-window>\r\n        </v-col>\r\n      </v-row>\r\n    </v-container>\r\n  </v-card>\r\n</template>\r\n\r\n<script>\r\nimport LineupDetails from './LineupDetails'\r\n// import NcaaPrint from './NcaaPrint'\r\nimport Lineup from '@/classes/Lineup'\r\n\r\nexport default {\r\n  props: ['team', 'tournament', 'division', 'selector', 'tokenStatus', 'value', 'showButtons'],\r\n  data () {\r\n    return {\r\n      window: 0,\r\n      lineups: [],\r\n      loading: false,\r\n      selected: this.value,\r\n      show: true\r\n    }\r\n  },\r\n  computed: {\r\n    selectedLineup () {\r\n      return this.lineups && this.selected && this.lineups.find(f => f.id === this.selected)\r\n    }\r\n  },\r\n  methods: {\r\n    newRoster () {\r\n      this.team && this.lineups.push(new Lineup({\r\n        id: 0,\r\n        teamId: this.team.id,\r\n        name: `Line Up ${this.lineups.length + 1}`,\r\n        type: this.division.props.find(f => f.startsWith('lineups-dual-'))\r\n      }))\r\n      this.window = 1\r\n    },\r\n    onCancelClick () {\r\n      this.lineups = this.lineups.filter(f => f.id !== 0)\r\n    },\r\n    loadLineups () {\r\n      this.loading = true\r\n      this.$VBL.team.lineups.get(this.team.id)\r\n        .then(r => {\r\n          this.lineups = r.data.map(m => new Lineup(m))\r\n          this.window = this.lineups.length === 0 ? 0 : 1\r\n        })\r\n        .catch(e => { console.log(e) })\r\n        .finally(() => { this.loading = false })\r\n    },\r\n    handleInput (e) {\r\n      this.$emit('input', this.selected)\r\n    }\r\n  },\r\n  mounted () {\r\n    this.loadLineups()\r\n  },\r\n  watch: {\r\n    'lineups.length': function (val) {\r\n      if (!val) this.window = 0\r\n    },\r\n    selected: 'handleInput'\r\n  },\r\n  components: {\r\n    LineupDetails\r\n    // NcaaPrint\r\n  }\r\n}\r\n</script>\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LineupManager.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LineupManager.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./LineupManager.vue?vue&type=template&id=7384d018&\"\nimport script from \"./LineupManager.vue?vue&type=script&lang=js&\"\nexport * from \"./LineupManager.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VExpandTransition } from 'vuetify/lib/components/transitions';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSelect } from 'vuetify/lib/components/VSelect';\nimport { VWindow } from 'vuetify/lib/components/VWindow';\nimport { VWindowItem } from 'vuetify/lib/components/VWindow';\ninstallComponents(component, {VBtn,VCard,VCardText,VCol,VContainer,VExpandTransition,VIcon,VRow,VSelect,VWindow,VWindowItem})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-card',{staticClass:\"fill-height flexcard\",attrs:{\"flat\":_vm.hideName}},[_c('v-card-text',{staticClass:\"grow\",class:{ 'pa-0': _vm.hideName }},[_c('v-row',{attrs:{\"dense\":\"\"}},[(!_vm.hideName)?_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":\"Name\",\"disabled\":!_vm.editing,\"color\":\"color3\",\"outlined\":\"\"},model:{value:(_vm.model.name),callback:function ($$v) {_vm.$set(_vm.model, \"name\", $$v)},expression:\"model.name\"}})],1):_vm._e(),(_vm.players.length < _vm.playersNeeded)?_c('v-col',[_c('v-alert',{attrs:{\"type\":\"error\",\"prominent\":\"\",\"text\":\"\"}},[_vm._v(\" You do not have enough players on your roster \")]),_c('v-btn',{attrs:{\"color\":\"color3 color3Text--text\",\"to\":{ name: 'division-team', params: { tournamentId: _vm.tournament.id, teamId: _vm.team.id }, query: { tab: 'partner' } }}},[_vm._v(\" Please update your roster \")])],1):[_c('v-col',{staticClass:\"pa-0\",attrs:{\"cols\":\"12\"}},[_c('v-card',{staticClass:\"pa-1\",attrs:{\"color\":\"red\"}},[_c('div',{staticClass:\"red lighten-4 red--text\"},[_vm._v(\"Players\")]),_c('v-card-text',{staticClass:\"white pa-1\"},[_c('v-row',{attrs:{\"dense\":\"\"}},_vm._l((_vm.model.starters),function(position,i){return _c('v-col',{key:position.n,attrs:{\"cols\":\"12\"}},[_c('v-select',{ref:(\"select\" + (position.n)),refInFor:true,staticClass:\"mt-0\",attrs:{\"dense\":\"\",\"items\":_vm.getAvailable(position),\"item-text\":function (item) { return _vm.getPlayerName(item.id); },\"item-value\":\"id\",\"label\":(\"Pair No. \" + (position.n)),\"multiple\":\"\",\"attach\":\"\",\"chips\":\"\",\"deletable-chips\":\"\",\"small-chips\":\"\",\"disabled\":!_vm.editing || _vm.disabled,\"hide-details\":\"\",\"color\":\"color3\",\"item-color\":\"color3\",\"autofocus\":position.n === 1 && position.players.length < 2,\"append-icon\":\"\",\"outlined\":\"\"},on:{\"change\":function () { return _vm.onChange(position); }},model:{value:(position.players),callback:function ($$v) {_vm.$set(position, \"players\", $$v)},expression:\"position.players\"}}),(_vm.editing && _vm.showSwapObj[i])?_c('v-btn',{attrs:{\"color\":\"color3\",\"small\":\"\",\"text\":\"\"},on:{\"click\":function($event){$event.stopPropagation();return _vm.swap(position.n)}}},[_c('v-icon',{attrs:{\"small\":\"\"}},[_vm._v(\"fas fa-long-arrow-up\")]),_c('v-icon',{attrs:{\"small\":\"\"}},[_vm._v(\"fas fa-long-arrow-down\")])],1):_vm._e()],1)}),1)],1)],1)],1),_c('v-col',{staticClass:\"pa-0\",attrs:{\"cols\":\"12\"}},[(_vm.model.alternates.length > 0)?_c('v-card',{staticClass:\"pa-1 mt-3\",attrs:{\"color\":\"green\"}},[_c('div',{staticClass:\"green lighten-4 green--text\"},[_vm._v(\"Alternates\")]),_c('v-card-text',{staticClass:\"white pa-1\"},[_c('v-row',{attrs:{\"dense\":\"\"}},_vm._l((_vm.model.alternates),function(position,i){return _c('v-col',{key:(\"alt-\" + i),attrs:{\"cols\":\"12\"}},[_c('v-chip',{attrs:{\"disabled\":_vm.disabled,\"small\":\"\",\"close\":_vm.editing && !_vm.disabled},on:{\"click:close\":function($event){return _vm.removePosition(position)}}},[_vm._v(_vm._s(_vm.getPlayerName(position.players[0])))])],1)}),1)],1)],1):_vm._e()],1),_c('v-col',{staticClass:\"pa-0\",attrs:{\"cols\":\"12\"}},[(_vm.model.removedPlayers.length > 0)?_c('v-card',{staticClass:\"pa-1 mt-3\",attrs:{\"color\":\"blue\"}},[_c('div',{staticClass:\"blue lighten-4 blue--text\"},[_vm._v(\"Removed Players\")]),_c('v-card-text',{staticClass:\"white pa-1\"},[_c('v-row',{attrs:{\"dense\":\"\"}},_vm._l((_vm.model.removedPlayers),function(position,i){return _c('v-col',{key:(\"removed-\" + i),attrs:{\"cols\":\"12\"}},[_c('v-chip',{attrs:{\"disabled\":_vm.disabled,\"small\":\"\",\"close\":_vm.editing && !_vm.disabled},on:{\"click:close\":function($event){return _vm.removePosition(position)}}},[_vm._v(_vm._s(_vm.getPlayerName(position.players[0])))])],1)}),1)],1)],1):_vm._e()],1),_c('v-col',{attrs:{\"cols\":\"12\"}},[(_vm.team)?_c('v-checkbox',{attrs:{\"label\":\"Apply to all future matches\",\"color\":\"success\",\"disabled\":!_vm.editing || _vm.disabled},model:{value:(_vm.model.applyAll),callback:function ($$v) {_vm.$set(_vm.model, \"applyAll\", $$v)},expression:\"model.applyAll\"}}):_vm._e()],1)]],2),_c('v-expand-transition',[(_vm.availablePlayers.length > 0)?_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('v-card',{attrs:{\"flat\":!_vm.editing,\"outlined\":!_vm.editing}},[_c('v-toolbar',{attrs:{\"dense\":\"\",\"color\":_vm.editing ? 'color2 color2Text--text' : 'grey lighten-2 grey--text',\"flat\":!_vm.editing}},[_c('v-toolbar-title',[_vm._v(\" Other Players \")])],1),_c('v-card-text',[_c('v-simple-table',{attrs:{\"dense\":\"\"},scopedSlots:_vm._u([{key:\"default\",fn:function(){return [_c('tbody',_vm._l((_vm.availablePlayers),function(item){return _c('tr',{key:item.id},[_c('td',{staticClass:\"text-left\"},[_vm._v(_vm._s(item.name)+\" \"+_vm._s(item.jersey ? (\"#\" + (item.jersey)) : ''))]),_c('td',{staticClass:\"text-left\"},[_c('v-fab-transition',[(_vm.model.valid && _vm.editing)?_c('v-btn',{attrs:{\"color\":\"green\",\"text\":\"\",\"x-small\":\"\"},on:{\"click\":function($event){$event.stopPropagation();return _vm.nonStarter(item, 'alt')}}},[_vm._v(\"Alternate\")]):_vm._e()],1)],1),_c('td',{staticClass:\"text-left\"},[_c('v-fab-transition',[(_vm.model.valid && _vm.editing)?_c('v-btn',{attrs:{\"color\":\"blue\",\"text\":\"\",\"x-small\":\"\"},on:{\"click\":function($event){$event.stopPropagation();return _vm.nonStarter(item, 'removed')}}},[_vm._v(\"Removed\")]):_vm._e()],1)],1)])}),0)]},proxy:true}],null,false,3864954301)})],1)],1)],1)],1):_vm._e()],1)],1),(_vm.showButtons)?_c('v-card-actions',{staticClass:\"justify-end shrink\"},[_c('v-fab-transition',[(_vm.editing || (_vm.user && _vm.user.vbl))?_c('v-btn',{attrs:{\"color\":\"error\",\"x-small\":\"\",\"text\":\"\",\"icon\":\"\",\"disabled\":_vm.loading},on:{\"click\":function($event){_vm.confirmDelete = true}}},[_c('v-icon',[_vm._v(\"fas fa-trash\")])],1):_vm._e()],1),(false)?[_c('v-spacer'),_c('v-fab-transition',[(_vm.editing)?_c('v-btn',{attrs:{\"color\":\"error white--text\",\"fab\":\"\",\"small\":\"\",\"disabled\":_vm.loading},on:{\"click\":_vm.cancel}},[_c('v-icon',[_vm._v(\"fas fa-times\")])],1):_vm._e()],1),_c('v-fab-transition',[_c('v-btn',{key:_vm.currentBtn.key,attrs:{\"color\":_vm.currentBtn.color,\"disabled\":_vm.currentBtn.disabled,\"loading\":_vm.loading,\"fab\":\"\",\"small\":\"\"},on:{\"click\":function($event){$event.stopPropagation();return _vm.currentBtn.click($event)}}},[_c('v-icon',[_vm._v(_vm._s(_vm.currentBtn.icon))])],1)],1)]:_vm._e()],2):_vm._e(),_c('v-dialog',{attrs:{\"persistent\":\"\",\"max-width\":\"500px\",\"transition\":\"dialog-transition\"},model:{value:(_vm.confirmDelete),callback:function ($$v) {_vm.confirmDelete=$$v},expression:\"confirmDelete\"}},[_c('v-card',[_c('v-card-text',{staticClass:\"text-center pa-3\"},[_c('div',{staticClass:\"title\"},[_vm._v(\"Are you sure?\")]),_c('div',{staticClass:\"mb-3\"},[_vm._v(\"Deleteing a lineup can not be undone\")]),_c('v-btn',{staticClass:\"mr-3\",attrs:{\"color\":\"success white--text\",\"loading\":_vm.loading},on:{\"click\":_vm.doDelete}},[_vm._v(\"Yes\")]),_c('v-btn',{attrs:{\"color\":\"error white--text\",\"disabled\":_vm.loading},on:{\"click\":function($event){_vm.confirmDelete = false}}},[_vm._v(\"No\")])],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n  <v-card class=\"fill-height flexcard\" :flat=\"hideName\">\r\n    <v-card-text class=\"grow\" :class=\"{ 'pa-0': hideName }\">\r\n      <v-row dense>\r\n        <v-col cols=\"12\" v-if=\"!hideName\">\r\n          <v-text-field\r\n            label=\"Name\"\r\n            v-model=\"model.name\"\r\n            :disabled=\"!editing\"\r\n            color=\"color3\"\r\n            outlined\r\n          ></v-text-field>\r\n        </v-col>\r\n        <v-col v-if=\"players.length < playersNeeded\">\r\n          <v-alert type=\"error\" prominent text>\r\n            You do not have enough players on your roster\r\n          </v-alert>\r\n          <v-btn color=\"color3 color3Text--text\" :to=\"{ name: 'division-team', params: { tournamentId: tournament.id, teamId: team.id }, query: { tab: 'partner' } }\">\r\n            Please update your roster\r\n          </v-btn>\r\n        </v-col>\r\n        <template v-else>\r\n          <v-col cols=\"12\" class=\"pa-0\">\r\n            <v-card color=\"red\" class=\"pa-1\">\r\n              <div class=\"red lighten-4 red--text\">Players</div>\r\n              <v-card-text class=\"white pa-1\">\r\n                <v-row dense>\r\n                  <v-col cols=\"12\"\r\n                    v-for=\"(position, i) in model.starters\" :key=\"position.n\"\r\n                  >\r\n                    <v-select\r\n                      class=\"mt-0\" dense\r\n                      :ref=\"`select${position.n}`\"\r\n                      :items=\"getAvailable(position)\"\r\n                      :item-text=\"item => getPlayerName(item.id)\"\r\n                      item-value=\"id\"\r\n                      v-model=\"position.players\"\r\n                      :label=\"`Pair No. ${position.n}`\"\r\n                      multiple attach @change=\"() => onChange(position)\"\r\n                      chips deletable-chips small-chips\r\n                      :disabled=\"!editing || disabled\"\r\n                      hide-details\r\n                      color=\"color3\"\r\n                      item-color=\"color3\"\r\n                      :autofocus=\"position.n === 1 && position.players.length < 2\"\r\n                      append-icon=\"\"\r\n                      outlined\r\n                    ></v-select>\r\n                    <v-btn\r\n                      v-if=\"editing && showSwapObj[i]\"\r\n                      color=\"color3\"\r\n                      small\r\n                      text\r\n                      @click.stop=\"swap(position.n)\"\r\n                    >\r\n                      <v-icon small>fas fa-long-arrow-up</v-icon>\r\n                      <v-icon small>fas fa-long-arrow-down</v-icon>\r\n                    </v-btn>\r\n                  </v-col>\r\n\r\n                </v-row>\r\n              </v-card-text>\r\n            </v-card>\r\n          </v-col>\r\n          <v-col cols=\"12\" class=\"pa-0\">\r\n            <v-card color=\"green\" class=\"pa-1 mt-3\" v-if=\"model.alternates.length > 0\">\r\n              <div class=\"green lighten-4 green--text\">Alternates</div>\r\n              <v-card-text class=\"white pa-1\">\r\n                <v-row dense>\r\n                  <v-col cols=\"12\"\r\n                    v-for=\"(position, i) in model.alternates\" :key=\"`alt-${i}`\"\r\n                  >\r\n                    <v-chip :disabled=\"disabled\" small :close=\"editing && !disabled\" @click:close=\"removePosition(position)\">{{ getPlayerName(position.players[0]) }}</v-chip>\r\n                  </v-col>\r\n\r\n                </v-row>\r\n              </v-card-text>\r\n            </v-card>\r\n          </v-col>\r\n          <v-col cols=\"12\" class=\"pa-0\">\r\n            <v-card color=\"blue\" class=\"pa-1 mt-3\" v-if=\"model.removedPlayers.length > 0\">\r\n              <div class=\"blue lighten-4 blue--text\">Removed Players</div>\r\n              <v-card-text class=\"white pa-1\">\r\n                <v-row dense>\r\n                  <v-col cols=\"12\"\r\n                    v-for=\"(position, i) in model.removedPlayers\"  :key=\"`removed-${i}`\"\r\n                  >\r\n                    <v-chip :disabled=\"disabled\" small :close=\"editing && !disabled\" @click:close=\"removePosition(position)\">{{ getPlayerName(position.players[0]) }}</v-chip>\r\n                  </v-col>\r\n                </v-row>\r\n              </v-card-text>\r\n            </v-card>\r\n          </v-col>\r\n          <v-col cols=\"12\">\r\n            <v-checkbox\r\n              v-if=\"team\"\r\n              label=\"Apply to all future matches\"\r\n              v-model=\"model.applyAll\"\r\n              color=\"success\"\r\n              :disabled=\"!editing || disabled\"\r\n            ></v-checkbox>\r\n          </v-col>\r\n        </template>\r\n      </v-row>\r\n      <v-expand-transition>\r\n        <v-row v-if=\"availablePlayers.length > 0\">\r\n          <v-col cols=\"12\">\r\n            <v-card :flat=\"!editing\" :outlined=\"!editing\">\r\n              <v-toolbar\r\n                dense\r\n                :color=\"editing ? 'color2 color2Text--text' : 'grey lighten-2 grey--text'\"\r\n                :flat=\"!editing\"\r\n              >\r\n                <v-toolbar-title>\r\n                  Other Players\r\n                </v-toolbar-title>\r\n              </v-toolbar>\r\n              <v-card-text>\r\n                <v-simple-table dense>\r\n                  <template v-slot:default>\r\n                    <tbody>\r\n                      <tr\r\n                        v-for=\"item in availablePlayers\"\r\n                        :key=\"item.id\"\r\n                      >\r\n                        <td class=\"text-left\">{{ item.name }} {{ item.jersey ? `#${item.jersey}` : '' }}</td>\r\n                        <td class=\"text-left\">\r\n                          <v-fab-transition>\r\n                            <v-btn\r\n                              v-if=\"model.valid && editing\"\r\n                              color=\"green\"\r\n                              text x-small\r\n                              @click.stop=\"nonStarter(item, 'alt')\"\r\n                            >Alternate</v-btn>\r\n                          </v-fab-transition>\r\n                        </td>\r\n                        <td class=\"text-left\">\r\n                          <v-fab-transition>\r\n                            <v-btn\r\n                              v-if=\"model.valid && editing\"\r\n                              color=\"blue\"\r\n                              text x-small\r\n                              @click.stop=\"nonStarter(item, 'removed')\"\r\n                            >Removed</v-btn>\r\n                          </v-fab-transition>\r\n                        </td>\r\n                      </tr>\r\n                    </tbody>\r\n                  </template>\r\n                </v-simple-table>\r\n              </v-card-text>\r\n            </v-card>\r\n          </v-col>\r\n        </v-row>\r\n\r\n      </v-expand-transition>\r\n    </v-card-text>\r\n    <v-card-actions class=\"justify-end shrink\" v-if=\"showButtons\">\r\n      <v-fab-transition>\r\n        <v-btn\r\n          v-if=\"editing || (user && user.vbl)\"\r\n          color=\"error\"\r\n          x-small text icon\r\n          @click=\"confirmDelete = true\"\r\n          :disabled=\"loading\"\r\n        >\r\n          <v-icon>fas fa-trash</v-icon>\r\n        </v-btn>\r\n      </v-fab-transition>\r\n      <template v-if=\"false\">\r\n        <v-spacer></v-spacer>\r\n        <v-fab-transition>\r\n          <v-btn\r\n            color=\"error white--text\"\r\n            fab small\r\n            @click=\"cancel\"\r\n            :disabled=\"loading\"\r\n            v-if=\"editing\"\r\n          >\r\n            <v-icon>fas fa-times</v-icon>\r\n          </v-btn>\r\n        </v-fab-transition>\r\n        <v-fab-transition>\r\n          <v-btn\r\n            :key=\"currentBtn.key\"\r\n            :color=\"currentBtn.color\"\r\n            :disabled=\"currentBtn.disabled\"\r\n            @click.stop=\"currentBtn.click\"\r\n            :loading=\"loading\"\r\n            fab small\r\n          >\r\n            <v-icon>{{currentBtn.icon}}</v-icon>\r\n          </v-btn>\r\n        </v-fab-transition>\r\n      </template>\r\n    </v-card-actions>\r\n    <v-dialog\r\n      v-model=\"confirmDelete\"\r\n      persistent\r\n      max-width=\"500px\"\r\n      transition=\"dialog-transition\"\r\n    >\r\n      <v-card>\r\n        <v-card-text class=\"text-center pa-3\">\r\n          <div class=\"title\">Are you sure?</div>\r\n          <div class=\"mb-3\">Deleteing a lineup can not be undone</div>\r\n          <v-btn color=\"success white--text\" class=\"mr-3\" @click=\"doDelete\" :loading=\"loading\">Yes</v-btn>\r\n          <v-btn color=\"error white--text\" @click=\"confirmDelete = false\" :disabled=\"loading\">No</v-btn>\r\n        </v-card-text>\r\n      </v-card>\r\n    </v-dialog>\r\n  </v-card>\r\n</template>\r\n\r\n<script>\r\nimport Lineup from '@/classes/Lineup'\r\nimport { firstBy } from 'thenby'\r\nimport { mapGetters } from 'vuex'\r\n\r\nexport default {\r\n  props: ['lineup', 'team', 'tokenStatus', 'disabled', 'hideName', 'showButtons', 'startInEdit'],\r\n  data () {\r\n    return {\r\n      editable: null,\r\n      editing: false,\r\n      loading: false,\r\n      confirmDelete: false,\r\n      applyAll: false\r\n    }\r\n  },\r\n  computed: {\r\n    ...mapGetters(['tournament', 'user']),\r\n    model () {\r\n      return this.lineup\r\n      // return this.editing ? this.editable : this.lineup\r\n    },\r\n    players () {\r\n      return this.team.players\r\n    },\r\n    playersNeeded () {\r\n      return this.lineup.playersNeeded\r\n    },\r\n    takenPlayers () {\r\n      return this.model.players\r\n    },\r\n    availablePlayers () {\r\n      return this.players.filter(f => !this.takenPlayers.includes(f.id))\r\n    },\r\n    valid () {\r\n      return this.dirty // && this.editable.valid\r\n    },\r\n    currentBtn () {\r\n      return this.editing ? {\r\n        icon: 'fas fa-save',\r\n        color: 'success white-text',\r\n        disabled: !this.valid,\r\n        key: 'save',\r\n        click: this.save\r\n      } : {\r\n        icon: 'fas fa-pencil',\r\n        color: 'color3Text color3--text',\r\n        key: 'edit',\r\n        click: this.edit\r\n      }\r\n    },\r\n    dto () {\r\n      return this.model && this.model.dto\r\n    },\r\n    oDto () {\r\n      return this.lineup && this.lineup.dto\r\n    },\r\n    dirty () {\r\n      return this.dto && (this.dto.id === 0 || JSON.stringify(this.dto) !== JSON.stringify(this.lineup.dto))\r\n    },\r\n    showSwapObj () {\r\n      return this.model.starters.map(me => {\r\n        if (me.n === this.model.starters.length) return false\r\n        const before = this.model.starters.find(f => f.n === me.n - 1)\r\n        const after = this.model.starters.find(f => f.n === me.n + 1)\r\n        return me.players.length > 0 || (before && before.players.length > 0) || (after && after.players.length > 0)\r\n      })\r\n    }\r\n  },\r\n  methods: {\r\n    getPlayerName (id) {\r\n      const x = this.players && this.players.find(f => f.id === id)\r\n      if (!x) return 'Missing Player'\r\n      const j = x.jersey ? ` #${x.jersey}` : ''\r\n      return `${x.fullname}${j}`\r\n    },\r\n    swap (n) {\r\n      const top = this.model.positions.find(f => f.n === n)\r\n      const bottom = this.model.positions.find(f => f.n === n + 1)\r\n      if (top && bottom) {\r\n        const t = [...top.players]\r\n        const b = [...bottom.players]\r\n        top.players = [...b]\r\n        bottom.players = [...t]\r\n      }\r\n    },\r\n    edit () {\r\n      this.editable = new Lineup(JSON.parse(JSON.stringify(this.lineup.dto)))\r\n      this.editing = true\r\n    },\r\n    cancel () {\r\n      this.$emit('cancel-click')\r\n      this.editing = false\r\n      this.editable = null\r\n    },\r\n    getAvailable (p) {\r\n      return [...this.availablePlayers, ...this.players.filter(f => p.players.includes(f.id))].sort(firstBy('name'))\r\n    },\r\n    onChange (p) {\r\n      const validPlayerIds = this.players.map(m => m.id)\r\n      p.players = p.players.filter(f => validPlayerIds.includes(f))\r\n      if (p.players.length === 2) {\r\n        const s = `select${p.n}`\r\n        const ref = this.$refs[s]\r\n        ref && ref[0] && ref[0].blur()\r\n        const s2 = `select${p.n + 1}`\r\n        const ref2 = this.$refs[s2]\r\n        ref2 && ref2[0] && ref2[0].focus()\r\n      }\r\n    },\r\n    save () {\r\n      // NOT USED\r\n      if (this.valid) {\r\n        this.loading = true\r\n        this.$VBL.team.lineups.post({ lineup: this.dto }, this.$route.query.token)\r\n          .then(r => {\r\n            this.lineup.update(r.data)\r\n            this.cancel()\r\n          })\r\n          .catch(e => console.log(e))\r\n          .finally(() => { this.loading = false })\r\n      }\r\n    },\r\n    doDelete () {\r\n      this.loading = true\r\n      this.$VBL.team.lineups.delete({ lineup: this.lineup }, this.$route.query.token)\r\n        .then(r => {\r\n          this.lineup.id = 0\r\n          this.cancel()\r\n        })\r\n        .catch(e => console.log(e))\r\n        .finally(() => { this.loading = false })\r\n    },\r\n    nonStarter (player, type) {\r\n      this.model.positions.push({\r\n        type: type,\r\n        players: [player.id]\r\n      })\r\n    },\r\n    removePosition (position) {\r\n      this.model.removePosition(position)\r\n    }\r\n  },\r\n  watch: {\r\n    valid: function (v) {\r\n      this.$emit('valid-change', v)\r\n    }\r\n  },\r\n  mounted () {\r\n    this.lineup && (this.lineup.id === 0 || this.startInEdit) && this.edit()\r\n  }\r\n}\r\n</script>\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LineupDetails.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LineupDetails.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./LineupDetails.vue?vue&type=template&id=02b8eb6c&\"\nimport script from \"./LineupDetails.vue?vue&type=script&lang=js&\"\nexport * from \"./LineupDetails.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VAlert } from 'vuetify/lib/components/VAlert';\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardActions } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCheckbox } from 'vuetify/lib/components/VCheckbox';\nimport { VChip } from 'vuetify/lib/components/VChip';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VDialog } from 'vuetify/lib/components/VDialog';\nimport { VExpandTransition } from 'vuetify/lib/components/transitions';\nimport { VFabTransition } from 'vuetify/lib/components/transitions';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSelect } from 'vuetify/lib/components/VSelect';\nimport { VSimpleTable } from 'vuetify/lib/components/VDataTable';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\nimport { VToolbar } from 'vuetify/lib/components/VToolbar';\nimport { VToolbarTitle } from 'vuetify/lib/components/VToolbar';\ninstallComponents(component, {VAlert,VBtn,VCard,VCardActions,VCardText,VCheckbox,VChip,VCol,VDialog,VExpandTransition,VFabTransition,VIcon,VRow,VSelect,VSimpleTable,VSpacer,VTextField,VToolbar,VToolbarTitle})\n","import DtoUpdate from './DtoUpdate'\r\nimport flatten from '@/helpers/ArrayFlatten'\r\n\r\nexport default class Lineup {\r\n  id = 0\r\n  name = null\r\n  _type = null\r\n  teamId = null\r\n  positions = []\r\n  applyAll = false\r\n\r\n  constructor (dto) {\r\n    if (dto) {\r\n      this.update(dto)\r\n    }\r\n  }\r\n\r\n  update (dto) {\r\n    if (typeof dto === 'string') dto = JSON.parse(dto)\r\n    const exclude = ['positions']\r\n    DtoUpdate(dto, this, exclude)\r\n\r\n    if (dto.positions) {\r\n      this.positions = dto.positions\r\n    }\r\n\r\n    // this.ensurePositions()\r\n  }\r\n\r\n  get type () {\r\n    return this._type\r\n  }\r\n\r\n  set type (val) {\r\n    this._type = (val || 'lineups-dual-1')\r\n    this.initPostions()\r\n  }\r\n\r\n  initPostions () {\r\n    if (this.type.startsWith('lineups-dual-')) {\r\n      const pairs = +this.type.replace('lineups-dual-', '')\r\n      this.positions = [...Array(pairs).keys()].map(i => {\r\n        return {\r\n          type: 'dual',\r\n          n: ++i,\r\n          players: []\r\n        }\r\n      })\r\n    }\r\n  }\r\n\r\n  ensurePositions () {\r\n    if (this.type.startsWith('lineups-dual-')) {\r\n      const pairs = +this.type.replace('lineups-dual-', '')\r\n      let i = 0\r\n      for (i = 1; i <= pairs; i++) {\r\n        const x = this.positions.find(f => f.type === 'dual' && f.n === i)\r\n        if (!x) {\r\n          console.log('missing position')\r\n          this.positions.push({\r\n            type: 'dual',\r\n            n: i,\r\n            players: []\r\n          })\r\n        }\r\n      }\r\n\r\n      for (i = 1; i <= 6; i++) {\r\n        const x = this.positions.find(f => f.type === 'alt' && f.n === i)\r\n        if (!x) {\r\n          this.positions.push({\r\n            type: 'alt',\r\n            n: i,\r\n            players: []\r\n          })\r\n        }\r\n      }\r\n\r\n      for (i = 1; i <= 6; i++) {\r\n        const x = this.positions.find(f => f.type === 'removed' && f.n === i)\r\n        if (!x) {\r\n          this.positions.push({\r\n            type: 'removed',\r\n            n: i,\r\n            players: []\r\n          })\r\n        }\r\n      }\r\n    }\r\n  }\r\n\r\n  get starters () {\r\n    return this.positions.filter(f => f.type === 'dual')\r\n  }\r\n\r\n  get alternates () {\r\n    return this.positions.filter(f => f.type === 'alt')\r\n  }\r\n\r\n  get removedPlayers () {\r\n    return this.positions.filter(f => f.type === 'removed')\r\n  }\r\n\r\n  get valid () {\r\n    return this.name && this.type && this.starters.filter(f => f.players.length !== 2).length === 0\r\n  }\r\n\r\n  get dto () {\r\n    return {\r\n      id: this.id,\r\n      name: this.name,\r\n      type: this.type,\r\n      positions: this.positions,\r\n      teamId: this.teamId,\r\n      applyAll: this.applyAll\r\n    }\r\n  }\r\n\r\n  get players () {\r\n    return flatten(this.positions.map(m => m.players))\r\n  }\r\n\r\n  get playersNeeded () {\r\n    let n = 0\r\n    this.positions.filter(f => ['dual'].includes(f.type)).forEach(p => {\r\n      n = n + (p.type === 'dual' ? 2 : 1)\r\n    })\r\n    return n\r\n  }\r\n\r\n  removePosition (p) {\r\n    const a = JSON.stringify(p)\r\n    this.positions = this.positions.filter(f => JSON.stringify(f) !== a)\r\n  }\r\n}\r\n"],"sourceRoot":""}