{"version":3,"sources":["webpack:///./src/pages/tech-team/InternalToolsLeaderboard.vue?99a4","webpack:///./src/pages/tech-team/InternalToolsLeaderboard.vue","webpack:///./src/pages/tech-team/InternalToolsLeaderboard.vue?ed81","webpack:///./src/pages/tech-team/InternalToolsLeaderboard.vue?31eb"],"names":["State","render","_vm","this","_h","$createElement","_c","_self","currentState","READY","attrs","tableHeaders","leaderboard","scopedSlots","_u","key","fn","ref","item","_v","_s","Math","round","successRate","errorRate","ERROR","errorMessage","LOADING","_e","staticRenderFns","text","value","sortable","align","load","requests","post","response","data","message","component","VDataTable"],"mappings":"yHAAA,ICyBKA,EDzBDC,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAQF,EAAIM,eAAiBN,EAAIF,MAAMS,MAAOH,EAAG,MAAM,CAACA,EAAG,eAAe,CAACI,MAAM,CAAC,QAAUR,EAAIS,aAAa,MAAQT,EAAIU,aAAaC,YAAYX,EAAIY,GAAG,CAAC,CAACC,IAAI,mBAAmBC,GAAG,SAASC,GACvR,IAAIC,EAAOD,EAAIC,KACf,MAAO,CAAChB,EAAIiB,GAAG,IAAIjB,EAAIkB,GAAGC,KAAKC,MAAyB,IAAnBJ,EAAKK,cAAoB,SAAS,CAACR,IAAI,iBAAiBC,GAAG,SAASC,GACzG,IAAIC,EAAOD,EAAIC,KACf,MAAO,CAAChB,EAAIiB,GAAG,IAAIjB,EAAIkB,GAAGC,KAAKC,MAAuB,IAAjBJ,EAAKM,YAAkB,UAAU,MAAK,EAAM,eAAe,GAAItB,EAAIM,eAAiBN,EAAIF,MAAMyB,MAAOnB,EAAG,MAAM,CAACJ,EAAIiB,GAAG,IAAIjB,EAAIkB,GAAGlB,EAAIwB,cAAc,OAAQxB,EAAIM,eAAiBN,EAAIF,MAAM2B,QAASrB,EAAG,MAAM,CAACJ,EAAIiB,GAAG,kBAAkBjB,EAAI0B,MAC3QC,EAAkB,G,6GCoBtB,SAAK7B,GACD,uBACA,mBACA,oBAHJ,CAAKA,MAAK,KAyBV,IAAqB,EAArB,yG,0BACI,EAAAA,MAAQA,EACR,EAAAQ,aAAeR,EAAM2B,QACrB,EAAAD,aAA4B,KAC5B,EAAAd,YAAkC,GAClC,EAAAD,aAAe,CACX,CACImB,KAAM,OACNC,MAAO,WACPC,UAAU,GAEd,CACIF,KAAM,QACNC,MAAO,QACPE,MAAO,OAEX,CACIH,KAAM,eACNC,MAAO,cACPE,MAAO,OAEX,CACIH,KAAM,aACNC,MAAO,YACPE,MAAO,QAxBnB,uNA6Bc9B,KAAK+B,OA7BnB,+RAiCQ/B,KAAKK,aAAeR,EAAM2B,QAjClC,kBAmCmCQ,EAAA,KAASC,KAAK,4CAnCjD,OAmCkBC,EAnClB,OAoCYlC,KAAKS,YAAcyB,EAASC,KAAK1B,YACjCT,KAAKK,aAAeR,EAAMS,MArCtC,mDAuCYN,KAAKK,aAAeR,EAAMyB,MAC1BtB,KAAKuB,aAAe,KAAEa,QAxClC,uHAAsD,QAAjC,EAAwB,gBAD5C,QACoB,WClDgZ,I,6CCOjaC,EAAY,eACd,EACAvC,EACA4B,GACA,EACA,KACA,KACA,MAIa,aAAAW,EAAiB,QAKhC,IAAkBA,EAAW,CAACC,aAAA","file":"js/chunk-2d0e2ce5.425a7ba7.js","sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.currentState === _vm.State.READY)?_c('div',[_c('v-data-table',{attrs:{\"headers\":_vm.tableHeaders,\"items\":_vm.leaderboard},scopedSlots:_vm._u([{key:\"item.successRate\",fn:function(ref){\nvar item = ref.item;\nreturn [_vm._v(\" \"+_vm._s(Math.round(item.successRate * 100))+\"% \")]}},{key:\"item.errorRate\",fn:function(ref){\nvar item = ref.item;\nreturn [_vm._v(\" \"+_vm._s(Math.round(item.errorRate * 100))+\"% \")]}}],null,false,3250610505)})],1):(_vm.currentState === _vm.State.ERROR)?_c('div',[_vm._v(\" \"+_vm._s(_vm.errorMessage)+\" \")]):(_vm.currentState === _vm.State.LOADING)?_c('div',[_vm._v(\" Loading... \")]):_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\nimport { Component, Vue } from 'vue-property-decorator'\nimport { DefaultServerResponse } from '@/components/ui/TechTaskCard.vue'\nimport requests from '@/helpers/requests'\n\n\nenum State {\n LOADING = 'loading',\n READY = 'ready',\n ERROR = 'error'\n}\n\n\ninterface LeaderboardEntry {\n username: string;\n total: number;\n success: number;\n error: number;\n successRate: number;\n ErrorRate: number;\n}\n\n\ninterface ResponseData extends DefaultServerResponse {\n data: {\n leaderboard: LeaderboardEntry[];\n };\n}\n\n\n@Component\nexport default class InternalToolsLeaderboard extends Vue {\n State = State\n currentState = State.LOADING\n errorMessage: null|string = null\n leaderboard: LeaderboardEntry[] = []\n tableHeaders = [\n {\n text: 'User',\n value: 'username',\n sortable: false\n },\n {\n text: 'Count',\n value: 'total',\n align: 'end'\n },\n {\n text: 'Success Rate',\n value: 'successRate',\n align: 'end'\n },\n {\n text: 'Error Rate',\n value: 'errorRate',\n align: 'end'\n }\n ]\n\n async mounted() {\n await this.load()\n }\n\n async load() {\n this.currentState = State.LOADING\n try {\n const response = await requests.post('/support/nerd/load-tech-task-leaderboard') as ResponseData\n this.leaderboard = response.data.leaderboard\n this.currentState = State.READY\n } catch(e) {\n this.currentState = State.ERROR\n this.errorMessage = e.message\n }\n }\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!./InternalToolsLeaderboard.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!./InternalToolsLeaderboard.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./InternalToolsLeaderboard.vue?vue&type=template&id=3d139f75&\"\nimport script from \"./InternalToolsLeaderboard.vue?vue&type=script&lang=ts&\"\nexport * from \"./InternalToolsLeaderboard.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 { VDataTable } from 'vuetify/lib/components/VDataTable';\ninstallComponents(component, {VDataTable})\n"],"sourceRoot":""}