%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /var/www/html/hr/web/js/
Upload File :
Create Path :
Current File : /var/www/html/hr/web/js/chunk-170ce8db.492942df.js.map

{"version":3,"sources":["webpack:///./src/components/Pagination.vue?fb44","webpack:///src/components/Pagination.vue","webpack:///./src/components/Pagination.vue?b5ee","webpack:///./src/components/Pagination.vue","webpack:///./node_modules/core-js/modules/es.array.find.js","webpack:///./src/views/timecards/ApproveTimecards.vue?2d7d","webpack:///./src/components/timecards/TimecardsApprovalTable.vue?0e00","webpack:///src/components/timecards/TimecardsApprovalTable.vue","webpack:///./src/components/timecards/TimecardsApprovalTable.vue?b3b0","webpack:///./src/components/timecards/TimecardsApprovalTable.vue","webpack:///src/views/timecards/ApproveTimecards.vue","webpack:///./src/views/timecards/ApproveTimecards.vue?f65b","webpack:///./src/views/timecards/ApproveTimecards.vue"],"names":["render","_vm","this","_h","$createElement","_c","_self","staticClass","_v","_s","$t","attrs","pagination","per_page","paginationOptions","on","$event","$emit","_e","max","total_pages","pageChange","model","value","callback","$$v","expression","staticRenderFns","component","$","$find","find","addToUnscopables","arrayMethodUsesToLength","FIND","SKIPS_HOLES","USES_TO_LENGTH","Array","target","proto","forced","callbackfn","arguments","length","undefined","selectedTimecards","approveAll","approveSelected","approveSelectedToZero","unApproveSelected","loadingExport","exportTimecards","preventDefault","search","loadingSelect","availableProjects","getSelectedProject","makeProjectLabel","setSelectedProject","getProjects","showApprovedFilterOptions","getShowApprovedFilter","setShowApprovedFilter","setFromDate","selectedFromDate","setToDate","selectedToDate","loadingList","ref","tableHeader","list","updatingTimecards","updateSelectedTimecardsList","openDetails","changePage","changePerPage","timecardsList","scopedSlots","_u","key","fn","data","_l","tr","indexTr","user","name","surname","project","client","date","_f","notes","hours","approved_hours","stopPropagation","prevent","$set","selectedEntries","slot","title","i","class","queryParams","page","include","from","to","show_approved"],"mappings":"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","file":"js/chunk-170ce8db.492942df.js","sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"flex\"},[(_vm.selectPerPage)?_c('div',{staticClass:\"flex items-center\"},[_c('span',{staticClass:\"mr-2 whitespace-pre\"},[_vm._v(_vm._s(_vm.$t('labels.per_page'))+\":\")]),_c('div',{staticClass:\"z-500 w-20\"},[_c('base-multiselect',{staticClass:\"-mt-4\",attrs:{\"value\":_vm.pagination.per_page,\"options\":_vm.paginationOptions,\"selectedLabel\":\"\",\"selectLabel\":\"\",\"deselectLabel\":\"\",\"allow-empty\":false},on:{\"input\":function($event){return _vm.$emit('selectedPerPage', $event)}}})],1)]):_vm._e(),_c('vs-pagination',{staticClass:\"mt-2\",attrs:{\"max\":_vm.max,\"total\":_vm.pagination.total_pages},on:{\"input\":_vm.pageChange},model:{value:(_vm.value),callback:function ($$v) {_vm.value=$$v},expression:\"value\"}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <div class=\"flex\">\n    <div v-if=\"selectPerPage\" class=\"flex items-center\">\n      <span class=\"mr-2 whitespace-pre\">{{ $t('labels.per_page') }}:</span>\n      <div class=\"z-500 w-20\">\n        <base-multiselect\n          :value=\"pagination.per_page\"\n          :options=\"paginationOptions\"\n          @input=\"$emit('selectedPerPage', $event)\"\n          selectedLabel=\"\"\n          selectLabel=\"\"\n          deselectLabel=\"\"\n          class=\"-mt-4\"\n          :allow-empty=\"false\"/>\n      </div>\n    </div>\n    <vs-pagination :max=\"max\" :total=\"pagination.total_pages\" @input=\"pageChange\" class=\"mt-2\"\n                   v-model=\"value\"></vs-pagination>\n  </div>\n</template>\n\n<script>\n  export default {\n    name:'Pagination',\n    props:{\n      pagination:{\n        type:Object,\n        required:true\n      },\n      max:{\n        type:Number,\n        default:7\n      },\n      selectPerPage: {\n        type:Boolean,\n        default:false\n      }\n    },\n    data:() => ({\n      paginationOptions:[5, 10, 15, 20, 30, 50, 100],\n      value:null\n    }),\n    methods:{\n      pageChange(val) {\n        this.$emit('input', val)\n      }\n    },\n    created() {\n      this.value = this.pagination.current_page\n    }\n  }\n</script>\n\n<style scoped>\n\n</style>\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!./Pagination.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!./Pagination.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Pagination.vue?vue&type=template&id=cb826a88&scoped=true&\"\nimport script from \"./Pagination.vue?vue&type=script&lang=js&\"\nexport * from \"./Pagination.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  \"cb826a88\",\n  null\n  \n)\n\nexport default component.exports","'use strict';\nvar $ = require('../internals/export');\nvar $find = require('../internals/array-iteration').find;\nvar addToUnscopables = require('../internals/add-to-unscopables');\nvar arrayMethodUsesToLength = require('../internals/array-method-uses-to-length');\n\nvar FIND = 'find';\nvar SKIPS_HOLES = true;\n\nvar USES_TO_LENGTH = arrayMethodUsesToLength(FIND);\n\n// Shouldn't skip holes\nif (FIND in []) Array(1)[FIND](function () { SKIPS_HOLES = false; });\n\n// `Array.prototype.find` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.find\n$({ target: 'Array', proto: true, forced: SKIPS_HOLES || !USES_TO_LENGTH }, {\n  find: function find(callbackfn /* , that = undefined */) {\n    return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n  }\n});\n\n// https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables(FIND);\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"view-container\"},[_c('vue-portal',{attrs:{\"to\":\"hrsys-navbar-actions\"}},[_c('div',{staticClass:\"flex\"},[_c('vx-tooltip',{staticClass:\"ml-2\",attrs:{\"text\":_vm.$t('buttons.approve_all'),\"position\":\"bottom\"}},[_c('base-button',{staticClass:\"self-end\",attrs:{\"color\":\"success\",\"disabled\":!!_vm.selectedTimecards.length,\"icon\":\"check-double\"},on:{\"click\":_vm.approveAll}})],1),_c('vx-tooltip',{staticClass:\"ml-2\",attrs:{\"text\":_vm.$t('buttons.approve_selected'),\"position\":\"bottom\"}},[_c('base-button',{staticClass:\"self-end\",attrs:{\"color\":\"primary\",\"disabled\":!_vm.selectedTimecards.length,\"icon\":\"check\"},on:{\"click\":_vm.approveSelected}})],1),_c('vx-tooltip',{staticClass:\"ml-2\",attrs:{\"text\":_vm.$t('buttons.approve_to_zero'),\"position\":\"bottom\"}},[_c('base-button',{staticClass:\"self-end\",attrs:{\"color\":\"warning\",\"disabled\":!_vm.selectedTimecards.length,\"icon\":\"check\"},on:{\"click\":_vm.approveSelectedToZero}})],1),_c('vx-tooltip',{staticClass:\"ml-2\",attrs:{\"text\":_vm.$t('buttons.disapprove'),\"position\":\"bottom\"}},[_c('base-button',{staticClass:\"self-end\",attrs:{\"color\":\"danger\",\"disabled\":!_vm.selectedTimecards.length,\"icon\":\"times\"},on:{\"click\":_vm.unApproveSelected}})],1),_c('vx-tooltip',{staticClass:\"ml-2\",attrs:{\"text\":_vm.$t('buttons.export'),\"position\":\"bottom\"}},[_c('base-button',{staticClass:\"self-end\",attrs:{\"loading\":_vm.loadingExport,\"disabled\":!!_vm.selectedTimecards.length,\"icon\":\"download\"},on:{\"click\":_vm.exportTimecards}})],1)],1)]),_c('form',{on:{\"submit\":function($event){$event.preventDefault();return _vm.search($event)}}},[_c('div',{staticClass:\"flex mb-3\"},[_c('base-multiselect',{staticClass:\"z-500 mx-1 flex-1\",attrs:{\"input-label\":_vm.$t('projects.project'),\"loading\":_vm.loadingSelect,\"options\":_vm.availableProjects,\"value\":_vm.getSelectedProject,\"custom-label\":_vm.makeProjectLabel,\"name\":_vm.$t('projects.project'),\"track-by\":\"id\"},on:{\"input\":_vm.setSelectedProject,\"search-change\":_vm.getProjects}}),_c('div',{staticClass:\"z-500 w-32 mx-1\"},[_c('base-multiselect',{attrs:{\"input-label\":_vm.$t('buttons.approved'),\"options\":_vm.showApprovedFilterOptions,\"value\":_vm.getShowApprovedFilter,\"selectedLabel\":\"\",\"selectLabel\":\"\",\"deselectLabel\":\"\",\"allow-empty\":false,\"label\":\"name\",\"name\":_vm.$t('buttons.approved'),\"track-by\":\"name\"},on:{\"input\":_vm.setShowApprovedFilter}})],1),_c('div',{staticClass:\"flex w-64\"},[_c('date-picker',{staticClass:\"mx-1\",attrs:{\"input-label\":_vm.$t('timecards.filter.from'),\"name\":_vm.$t('timecards.filter.from')},on:{\"input\":_vm.setFromDate},model:{value:(_vm.selectedFromDate),callback:function ($$v) {_vm.selectedFromDate=$$v},expression:\"selectedFromDate\"}}),_c('date-picker',{staticClass:\"mx-1\",attrs:{\"input-label\":_vm.$t('timecards.filter.to'),\"name\":_vm.$t('timecards.filter.to')},on:{\"input\":_vm.setToDate},model:{value:(_vm.selectedToDate),callback:function ($$v) {_vm.selectedToDate=$$v},expression:\"selectedToDate\"}})],1),_c('base-button',{staticClass:\"self-end mx-1 mb-1\",attrs:{\"icon\":\"search\",\"type\":\"submit\"}})],1)]),_c('base-loader',{attrs:{\"loading\":_vm.loadingList}},[_c('timecards-approval-table',{ref:\"timecardsTable\",attrs:{\"header\":_vm.tableHeader,\"timecardsList\":_vm.list,\"updatingTimecards\":_vm.updatingTimecards,\"selected-entries\":_vm.selectedTimecards},on:{\"entriesUpdate\":_vm.updateSelectedTimecardsList,\"details\":_vm.openDetails}}),(_vm.pagination.total)?_c('pagination',{attrs:{\"select-per-page\":true,\"pagination\":_vm.pagination},on:{\"input\":_vm.changePage,\"selectedPerPage\":_vm.changePerPage}}):_vm._e()],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('vs-table',{attrs:{\"data\":_vm.timecardsList,\"multiple\":\"\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar data = ref.data;\nreturn _vm._l((data),function(tr,indexTr){return _c('vs-tr',{key:indexTr,staticClass:\"whitespace-pre\",attrs:{\"data\":tr}},[_c('vs-td',{attrs:{\"data\":tr.user.name}},[_vm._v(\" \"+_vm._s(tr.user.name)+\" \"+_vm._s(tr.user.surname)+\" \")]),_c('vs-td',{attrs:{\"data\":tr.project.name}},[_vm._v(\" \"+_vm._s(tr.project.client.name)+\" - \"+_vm._s(tr.project.name)+\" \")]),_c('vs-td',{attrs:{\"data\":tr.date}},[_vm._v(\" \"+_vm._s(_vm._f(\"date\")(tr.date,'MMM Do'))+\" \")]),_c('vs-td',{staticClass:\"max-w-xs truncate\",attrs:{\"data\":tr.notes}},[_vm._v(\" \"+_vm._s(tr.notes)+\" \")]),_c('vs-td',{attrs:{\"data\":tr.hours}},[_vm._v(\" \"+_vm._s(tr.hours)+\" \")]),_c('vs-td',{attrs:{\"data\":tr.approved_hours}},[_c('base-input',{staticClass:\"w-20 mx-px\",attrs:{\"type\":\"number\",\"min\":0},on:{\"click\":function($event){$event.stopPropagation();return _vm.prevent(tr)}},model:{value:(tr.approved_hours),callback:function ($$v) {_vm.$set(tr, \"approved_hours\", $$v)},expression:\"tr.approved_hours\"}})],1),_c('vs-td',{staticClass:\"text-right w-1\"},[_c('div',{staticClass:\"flex justify-end\"},[_c('vx-tooltip',{attrs:{\"text\":_vm.$t('buttons.details'),\"position\":\"top\"}},[_c('base-button',{staticClass:\"mx-px\",attrs:{\"icon\":\"info\"},on:{\"click\":function($event){$event.stopPropagation();return _vm.$emit('details', tr)}}})],1)],1)])],1)})}}]),model:{value:(_vm.selectedEntries),callback:function ($$v) {_vm.selectedEntries=$$v},expression:\"selectedEntries\"}},[_c('template',{slot:\"thead\"},_vm._l((_vm.header),function(title,i){return _c('vs-th',{key:i,staticClass:\"whitespace-pre text-base\",class:{'float-right': title === _vm.$t('timecards.table.actions')}},[_vm._v(_vm._s(title)+\" \")])}),1)],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n\n  <vs-table :data=\"timecardsList\" multiple v-model=\"selectedEntries\">\n\n    <template slot=\"thead\">\n      <vs-th :key=\"i\" class=\"whitespace-pre text-base\" v-for=\"(title, i) in header\"\n             :class=\"{'float-right': title === $t('timecards.table.actions')}\">{{ title }}\n      </vs-th>\n    </template>\n\n    <template slot-scope=\"{data}\">\n      <vs-tr :data=\"tr\" :key=\"indexTr\" class=\"whitespace-pre\" v-for=\"(tr, indexTr) in data\">\n        <vs-td :data=\"tr.user.name\">\n          {{ tr.user.name }} {{ tr.user.surname }}\n        </vs-td>\n        <vs-td :data=\"tr.project.name\">\n          {{ tr.project.client.name }} - {{ tr.project.name }}\n        </vs-td>\n        <vs-td :data=\"tr.date\">\n          {{ tr.date | date('MMM Do') }}\n        </vs-td>\n        <vs-td :data=\"tr.notes\" class=\"max-w-xs truncate\">\n          {{ tr.notes }}\n        </vs-td>\n        <vs-td :data=\"tr.hours\">\n          {{ tr.hours }}\n        </vs-td>\n        <vs-td :data=\"tr.approved_hours\">\n          <base-input v-model=\"tr.approved_hours\"\n                      type=\"number\"\n                      :min=\"0\"\n                      @click.stop=\"prevent(tr)\"\n                      class=\"w-20 mx-px\"/>\n        </vs-td>\n        <vs-td class=\"text-right w-1\">\n          <div class=\"flex justify-end\">\n            <vx-tooltip :text=\"$t('buttons.details')\" position=\"top\">\n              <base-button @click.stop=\"$emit('details', tr)\" class=\"mx-px\" icon=\"info\"></base-button>\n            </vx-tooltip>\n          </div>\n        </vs-td>\n      </vs-tr>\n    </template>\n  </vs-table>\n</template>\n\n<script>\n  export default {\n    name: \"TimeCardTable\",\n    props: {\n      header: {\n        type: Array,\n        required: true\n      },\n      timecardsList: {\n        type: Array,\n        required: true\n      },\n      updatingTimecards: {\n        type: Array,\n        required: true\n      },\n    },\n    data: () => ({\n      selectedEntries: []\n    }),\n    methods: {\n      isUpdating (id) {\n        return this.updatingTimecards.indexOf(id) > -1\n      },\n      clearSelectedEntries () {\n        this.selectedEntries = []\n      },\n      prevent (timecard) {\n        //To prevent row from being selected\n        const exists = this.selectedEntries.find(x => x.id === timecard.id);\n        if (!exists) {\n          timecard.approved_hours = timecard.approved_hours ? timecard.approved_hours : timecard.hours;\n          this.selectedEntries.push(timecard);\n        }\n      },\n      prepareTimecard (timecard) {\n        return {\n          id: timecard.id,\n          approved_hours: parseFloat(timecard.approved_hours || timecard.hours)\n        }\n      }\n    },\n    watch: {\n      selectedEntries: {\n        deep: true,\n        handler (newArray) {\n          this.$emit('entriesUpdate', newArray.map(timecard => {\n            const tableRow = this.timecardsList.find(x => x.id === timecard.id);\n            if (tableRow && !tableRow.approved_hours) {\n              tableRow.approved_hours = tableRow.hours;\n            }\n            return this.prepareTimecard(timecard);\n          }))\n        }\n      }\n    }\n  }\n</script>\n\n<style scoped>\n</style>\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!./TimecardsApprovalTable.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!./TimecardsApprovalTable.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TimecardsApprovalTable.vue?vue&type=template&id=8bda559e&scoped=true&\"\nimport script from \"./TimecardsApprovalTable.vue?vue&type=script&lang=js&\"\nexport * from \"./TimecardsApprovalTable.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  \"8bda559e\",\n  null\n  \n)\n\nexport default component.exports","<template>\n  <div class=\"view-container\">\n    <vue-portal to=\"hrsys-navbar-actions\">\n      <div class=\"flex\">\n        <vx-tooltip :text=\"$t('buttons.approve_all')\" class=\"ml-2\" position=\"bottom\">\n          <base-button @click=\"approveAll\"\n                       class=\"self-end\"\n                       color=\"success\"\n                       :disabled=\"!!selectedTimecards.length\"\n                       icon=\"check-double\"/>\n        </vx-tooltip>\n        <vx-tooltip :text=\"$t('buttons.approve_selected')\" class=\"ml-2\" position=\"bottom\">\n          <base-button @click=\"approveSelected\"\n                       class=\"self-end\"\n                       color=\"primary\"\n                       :disabled=\"!selectedTimecards.length\"\n                       icon=\"check\"/>\n        </vx-tooltip>\n        <vx-tooltip :text=\"$t('buttons.approve_to_zero')\" class=\"ml-2\" position=\"bottom\">\n          <base-button @click=\"approveSelectedToZero\"\n                       class=\"self-end\"\n                       color=\"warning\"\n                       :disabled=\"!selectedTimecards.length\"\n                       icon=\"check\"/>\n        </vx-tooltip>\n        <vx-tooltip :text=\"$t('buttons.disapprove')\" class=\"ml-2\" position=\"bottom\">\n          <base-button @click=\"unApproveSelected\"\n                       class=\"self-end\"\n                       color=\"danger\"\n                       :disabled=\"!selectedTimecards.length\"\n                       icon=\"times\"/>\n        </vx-tooltip>\n        <vx-tooltip :text=\"$t('buttons.export')\" class=\"ml-2\" position=\"bottom\">\n          <base-button @click=\"exportTimecards\"\n                       class=\"self-end\"\n                       :loading=\"loadingExport\"\n                       :disabled=\"!!selectedTimecards.length\"\n                       icon=\"download\"/>\n        </vx-tooltip>\n      </div>\n    </vue-portal>\n    <form @submit.prevent=\"search\">\n      <div class=\"flex mb-3\">\n        <base-multiselect\n          :input-label=\"$t('projects.project')\"\n          :loading=\"loadingSelect\"\n          :options=\"availableProjects\"\n          :value=\"getSelectedProject\"\n          @input=\"setSelectedProject\"\n          class=\"z-500 mx-1 flex-1\"\n          :custom-label=\"makeProjectLabel\"\n          :name=\"$t('projects.project')\"\n          track-by=\"id\"\n          @search-change=\"getProjects\"/>\n        <div class=\"z-500 w-32 mx-1\">\n          <base-multiselect\n            :input-label=\"$t('buttons.approved')\"\n            :options=\"showApprovedFilterOptions\"\n            :value=\"getShowApprovedFilter\"\n            selectedLabel=\"\"\n            selectLabel=\"\"\n            deselectLabel=\"\"\n            :allow-empty=\"false\"\n            label=\"name\"\n            :name=\"$t('buttons.approved')\"\n            @input=\"setShowApprovedFilter\"\n            track-by=\"name\"/>\n        </div>\n\n        <div class=\"flex w-64\">\n          <date-picker :input-label=\"$t('timecards.filter.from')\"\n                       :name=\"$t('timecards.filter.from')\"\n                       class=\"mx-1\"\n                       @input=\"setFromDate\"\n                       v-model=\"selectedFromDate\"/>\n          <date-picker :input-label=\"$t('timecards.filter.to')\"\n                       :name=\"$t('timecards.filter.to')\"\n                       class=\"mx-1\"\n                       @input=\"setToDate\"\n                       v-model=\"selectedToDate\"/>\n        </div>\n        <base-button class=\"self-end mx-1 mb-1\" icon=\"search\" type=\"submit\"/>\n      </div>\n    </form>\n    <base-loader :loading=\"loadingList\">\n      <timecards-approval-table\n        ref=\"timecardsTable\"\n        :header=\"tableHeader\"\n        :timecardsList=\"list\"\n        :updatingTimecards=\"updatingTimecards\"\n        :selected-entries=\"selectedTimecards\"\n        @entriesUpdate=\"updateSelectedTimecardsList\"\n        @details=\"openDetails\"/>\n      <pagination :select-per-page=\"true\"\n                  :pagination=\"pagination\"\n                  @input=\"changePage\"\n                  @selectedPerPage=\"changePerPage\"\n                  v-if=\"pagination.total\"/>\n    </base-loader>\n  </div>\n</template>\n\n<script>\n  import * as moment from 'moment';\n  import TimecardsApprovalTable from \"../../components/timecards/TimecardsApprovalTable\";\n  import Pagination from \"../../components/Pagination\";\n  import DatePicker from \"../../components/DatePicker\";\n  import Timecards from \"../../services/Timecards\";\n  import Projects from \"../../services/Projects\";\n  import EventBus from \"../../utilities/eventBus\";\n\n  export default {\n    name:\"ApproveTimecards\",\n    components:{\n      TimecardsApprovalTable,\n      Pagination,\n      DatePicker\n    },\n    data:() => ({\n      list:[],\n      availableProjects:[],\n      pagination:{},\n      queryParams:{\n        page:1,\n        include:'project.client,user',\n        from:moment().startOf('month').format('YYYY-MM-DD'),\n        to:moment().format('YYYY-MM-DD'),\n        show_approved:false\n      },\n      updatingTimecards:[],\n      selectedTimecards:[],\n      loadingExport:false,\n      loadingList:false,\n      loadingSelect:false,\n      selectedFromDate:moment().startOf('month').toDate(),\n      selectedToDate:moment().toDate(),\n    }),\n    methods:{\n      getProjects(search) {\n        this.loadingSelect = true\n        const query = {search: search, include: 'client'}\n        Projects.list(query).then(result => {\n          this.availableProjects = result.data\n        }).catch(error => {\n          this.$notificationService.error(error.message)\n        }).finally(() => {\n          this.loadingSelect = false\n        })\n      },\n      setFromDate(date) {\n        this.queryParams.from = moment(date).format('YYYY-MM-DD')\n      },\n      setToDate(date) {\n        this.queryParams.to = moment(date).format('YYYY-MM-DD')\n      },\n      getTimecards() {\n        this.loadingList = true\n        this.$refs.timecardsTable.clearSelectedEntries()\n        Timecards.toApprove(this.queryParams).then(res => {\n          this.list = res.data\n          this.pagination = res.meta.pagination\n        }).catch(error => {\n          this.$notificationService.error(error.message)\n        }).finally(() => {\n          this.loadingList = false\n        })\n      },\n      openDetails(timecard) {\n        EventBus.$emit('updateTimecard', timecard)\n      },\n      search() {\n        this.$router.push({query:this.queryParams}).catch(() => {\n        })\n        this.queryParams.page = 1\n        this.getTimecards()\n      },\n      getUrlParams() {\n        let vm = this;\n        if (this.$route.query.page) {\n          vm.queryParams = Object.assign({}, vm.$route.query);\n        }\n      },\n      changePage(newPage) {\n        this.queryParams.page = newPage\n        this.$router.push({query:this.queryParams}).catch(() => {\n        })\n        this.getTimecards()\n      },\n      changePerPage(event) {\n        this.queryParams.per_page = event;\n        this.search()\n      },\n      updateSelectedTimecardsList(updatedList) {\n        this.selectedTimecards = updatedList\n      },\n      approveAll() {\n        this.$vs.dialog({\n          type:'confirm',\n          color:'warning',\n          title:this.$t('timecards.prompts.approveAllTitle'),\n          text:this.$t('timecards.prompts.approveAllMessage'),\n          accept:() => {\n            Timecards.approveAll().then(() => {\n              this.getTimecards()\n            }, (error) => {\n              this.$notificationService.error(error.message);\n            });\n          }\n        });\n      },\n      approveSelected() {\n        this.$vs.dialog({\n          type:'confirm',\n          color:'success',\n          title:this.$t('timecards.prompts.approveSelectedTitle'),\n          text:this.$t('timecards.prompts.approveSelectedMessage'),\n          accept:() => {\n            Timecards.bulkApprove(this.selectedTimecards).then(() => {\n              this.getTimecards()\n            }, (error) => {\n              this.$notificationService.error(error.message);\n            });\n          }\n        });\n      },\n      approveSelectedToZero() {\n        this.$vs.dialog({\n          type:'confirm',\n          color:'danger',\n          title:this.$t('timecards.prompts.approveSelectedZeroTitle'),\n          text:this.$t('timecards.prompts.approveSelectedZeroMessage'),\n          accept:() => {\n            this.selectedTimecards.forEach(timecard => timecard.approved_hours = 0)\n            Timecards.bulkApprove(this.selectedTimecards).then(() => {\n              this.getTimecards()\n            }, (error) => {\n              this.$notificationService.error(error.message);\n            });\n          }\n        });\n      },\n      unApproveSelected() {\n        this.$vs.dialog({\n          type:'confirm',\n          color:'danger',\n          title:this.$t('timecards.prompts.unApprove'),\n          text:this.$t('timecards.prompts.unApproveMessage'),\n          accept:() => {\n            const ids = this.selectedTimecards.map(t => t.id);\n            Timecards.bulkUnApprove(ids).then(() => {\n              this.getTimecards()\n            }, (error) => {\n              this.$notificationService.error(error.message);\n            });\n          }\n        });\n      },\n      exportTimecards() {\n        this.loadingExport = true;\n        Timecards.export(this.queryParams).catch((error) => {\n          this.$notificationService.error(error.message);\n        }).finally(() => {\n          this.loadingExport = false;\n        });\n      },\n      setSelectedProject(project) {\n        if (project.id) this.queryParams.project_id = project.id\n      },\n      setShowApprovedFilter(option) {\n        this.queryParams.show_approved = option.value\n      },\n      makeProjectLabel({client,name}) {\n        return `${client.name} - ${name}`\n      }\n    },\n    computed:{\n      showApprovedFilterOptions() {\n       return [\n         {name: this.$t('buttons.show'), value: true},\n         {name: this.$t('buttons.hide'), value: false}\n       ]\n      },\n      getSelectedProject() {\n        return this.availableProjects.find(project => project.id === parseInt(this.queryParams.project_id))\n      },\n      getShowApprovedFilter() {\n        return this.showApprovedFilterOptions.find(option => option.value === this.queryParams.show_approved)\n      },\n      tableHeader() {\n        return ([\n          this.$t('timecards.table.user'),\n          this.$t('timecards.table.project'),\n          this.$t('timecards.table.date'),\n          this.$t('timecards.table.notes'),\n          this.$t('timecards.table.hours'),\n          this.$t('timecards.table.approved_hours'),\n          this.$t('timecards.table.actions')\n        ])\n      }\n    },\n    mounted() {\n      this.getUrlParams();\n      this.getTimecards();\n      EventBus.$on('timecardDone', () => {\n        this.getTimecards()\n      })\n    },\n  }\n</script>\n\n<style scoped>\n\n</style>\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!./ApproveTimecards.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!./ApproveTimecards.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ApproveTimecards.vue?vue&type=template&id=467d5a60&scoped=true&\"\nimport script from \"./ApproveTimecards.vue?vue&type=script&lang=js&\"\nexport * from \"./ApproveTimecards.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  \"467d5a60\",\n  null\n  \n)\n\nexport default component.exports"],"sourceRoot":""}

Zerion Mini Shell 1.0