{"version":3,"sources":["webpack:///./@core/pages/bsc/model/BscMetaList.ts","webpack:///./node_modules/core-js/internals/same-value.js","webpack:///./@core/pages/bsc/BscHome.vue?aa59","webpack:///./@core/pages/bsc/BscHome.vue?3a4b","webpack:///./@core/pages/bsc/BscHomeMixin.ts","webpack:///./@core/pages/bsc/BscHome.vue","webpack:///./@core/pages/bsc/BscHome.vue?ad87","webpack:///./@core/pages/bsc/BscHome.vue?ecb7","webpack:///./node_modules/core-js/modules/es.string.search.js","webpack:///./@core/pages/bsc/model/BscMeta.ts","webpack:///./@core/components/AppDatatable.vue?fa4e","webpack:///./@core/components/AppDatatable.vue","webpack:///./@core/components/AppDatatable.vue?a0c0","webpack:///./@core/components/AppDatatable.vue?89f0","webpack:///./@core/components/AppDatatable.vue?8f2d","webpack:///./@core/components/AppDecimalNumber.vue?6388","webpack:///./@core/components/AppDecimalNumber.vue?0ecc","webpack:///./@core/components/AppDecimalNumber.vue","webpack:///./@core/components/AppDecimalNumber.vue?4e6d","webpack:///./@core/components/AppDecimalNumber.vue?d906"],"names":["BscReviewMetaList","data","groupedList","this","list","forEach","bscReview","indexOf","map","e","reviewOid","caseReviewedTotal","cat1InfractionTotal","cat2InfractionTotal","adminErrorTotal","push","module","exports","Object","is","x","y","render","_vm","_h","$createElement","_c","_self","staticClass","_v","attrs","on","addNewReview","directives","name","rawName","value","expression","modifiers","domProps","$event","target","composing","txtSearchBscReview","trim","$forceUpdate","bscReviewListColumns","bscReviewList","prop","order","showNewQuarterReviewModal","openNewQuarterReviewModal","slot","$$selectedVal","Array","prototype","filter","call","options","o","selected","val","_value","_n","selectedYear","multiple","_l","year","key","_s","selectedQuarter","txtSearchUser","userListColumns","userList","handleUserSelection","saveReview","_e","staticRenderFns","bscReviewMetaList","selectedYearOptions","selectedUser","label","field","startYear","Date","getFullYear","i","groupByReviewOid","dateCreated","formattedDate","redirect","every","bsc","reviewYear","reviewQuarter","rows","length","uiService","alert","show","type","message","isQuarterReviewNotExisted","bscQuarterInfo","review_year","review_quarter","bscQuarterUsers","user","user_oid","oid","adviser_name","fullname","contact_no","mobile","rnf_number","masRepno","adviser_code","companyCode","case_reviewed_total","cat_1_infraction_total","cat_2_infraction_total","admin_error_total","checkUsers","bscQuarterObj","bsc_data","JSON","stringify","selected_users","$api","bscRecords","saveSupervisorDirectorReview","fetchData","supervisorUsers","systemrole","params","supervisor","supervisorOid","rnfNumber","supervisorCode","supervisorName","supervisorReview","add","userHeader","account","query","queryArgs","headers","groupStatus","res","_user","UserMeta","assignData","listReviewMeta","unixTime","dateService","format","Number","sharedVariable","components","AppDatatable","AppDialog","component","fixRegExpWellKnownSymbolLogic","anObject","requireObjectCoercible","sameValue","toString","getMethod","regExpExec","SEARCH","nativeSearch","maybeCallNative","regexp","O","searcher","undefined","RegExp","string","rx","S","done","previousLastIndex","lastIndex","result","index","BscReviewHeader","BscReviewMeta","userOid","adviserCode","adviserName","bscGrade","isauReviewer","class","ref","currentPageData","hasNoError","selectionKey","tableRowClassName","sortChange","rowClick","handleSelection","column","sortable","scopedSlots","_u","fn","scope","row","$set","handleCustomEvent","option","decimal","disabled","convertToCurrency","_t","button","$emit","shouldDisabled","stopPropagation","infoFrom","infoTo","total","currentPage","pageSizesDisplay","pageSize","pageChange","handleSizeChange","pageSizes","sortBy","sizes","size","lastSize","Math","round","search","searchKeyword","toLowerCase","filters","includes","filteredData","sort","a","b","sortedData","slice","error","emit","window","location","href","appdatatable","$refs","clearSelection","currencySymbol","toLocaleString","minimumFractionDigits","maximumFractionDigits","clearCheckboxOnHeader","default","AppDecimalNumber","triggerKeyEvent","numberAndDecimalOnly","onBlur","onFocus","onSelect","inputModal","textIsSelected","valueChange","evt","event","keyCode","which","currentValue","isNonNumberAndNonDecimal","preventDefault","isDecimal","allowDecimal","number","split","caratPos","srcElement","selectionStart","dotPos","isNonNumber","formatValue","replaceAll","source","convertTo","formatter","Intl","NumberFormat","inputValue"],"mappings":"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","file":"js/chunk-d1f8f086.0ceb0594.js","sourcesContent":["import { MetaList } from '@master/model/common/MetaList'\nimport { BscReviewHeader, BscReviewMeta } from './BscMeta'\nimport { sum } from '@master/model/kyc-form/need-analysis/math'\n\nexport class BscReviewMetaList extends MetaList {\n list: BscReviewMeta[]\n\n constructor (data: (string | number)[][]) {\n super(BscReviewHeader, data, BscReviewMeta)\n }\n\n groupByReviewOid () {\n const groupedList = []\n this.list.forEach(bscReview => {\n const indexOf = groupedList.map(e => e.reviewOid).indexOf(bscReview.reviewOid)\n\n if (indexOf < 0) {\n bscReview.caseReviewedTotal = bscReview.caseReviewedTotal ?? 0\n bscReview.cat1InfractionTotal = bscReview.cat1InfractionTotal ?? 0\n bscReview.cat2InfractionTotal = bscReview.cat2InfractionTotal ?? 0\n bscReview.adminErrorTotal = bscReview.adminErrorTotal ?? 0\n groupedList.push({ ...bscReview })\n } else {\n groupedList[indexOf].caseReviewedTotal = sum(groupedList[indexOf].caseReviewedTotal, bscReview.caseReviewedTotal) ?? 0\n groupedList[indexOf].cat1InfractionTotal = sum(groupedList[indexOf].cat1InfractionTotal, bscReview.cat1InfractionTotal) ?? 0\n groupedList[indexOf].cat2InfractionTotal = sum(groupedList[indexOf].cat2InfractionTotal, bscReview.cat2InfractionTotal) ?? 0\n groupedList[indexOf].adminErrorTotal = sum(groupedList[indexOf].adminErrorTotal, bscReview.adminErrorTotal) ?? 0\n }\n })\n return groupedList\n }\n}\n","// `SameValue` abstract operation\n// https://tc39.es/ecma262/#sec-samevalue\n// eslint-disable-next-line es/no-object-is -- safe\nmodule.exports = Object.is || function is(x, y) {\n // eslint-disable-next-line no-self-compare -- NaN check\n return x === y ? x !== 0 || 1 / x === 1 / y : x != x && y != y;\n};\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BscHome.vue?vue&type=style&index=0&id=05e0cc0e&lang=scss&scoped=true&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"page\"},[_c('div',{staticClass:\"tab-top\"},[_c('div',{staticClass:\"tab-header\"},[_c('div',{staticClass:\"tab-links tab-first active\"},[_vm._v(\" Review Summary \"),_c('span',{staticClass:\"add-client\",attrs:{\"id\":\"add-client\",\"aria-label\":\"Add Client\"},on:{\"click\":_vm.addNewReview}},[_c('i',{staticClass:\"fas fa-plus\"})])]),_c('div',{staticClass:\"search-wrapper\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model.trim\",value:(_vm.txtSearchBscReview),expression:\"txtSearchBscReview\",modifiers:{\"trim\":true}}],staticClass:\"txt-search\",attrs:{\"type\":\"search\",\"data-test\":\"bsc-review-search-keyword\"},domProps:{\"value\":(_vm.txtSearchBscReview)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.txtSearchBscReview=$event.target.value.trim()},\"blur\":function($event){return _vm.$forceUpdate()}}})])]),_c('AppDatatable',{attrs:{\"columns\":_vm.bscReviewListColumns,\"data\":_vm.bscReviewList,\"sort\":{prop: 'dateCreated', order: 'descending'},\"search\":_vm.txtSearchBscReview,\"show\":true}})],1),(_vm.showNewQuarterReviewModal)?_c('AppDialog',{staticClass:\"newQuarterReviewModal\",attrs:{\"size\":\"flexible\"},on:{\"close\":function($event){_vm.showNewQuarterReviewModal = false},\"open\":_vm.openNewQuarterReviewModal}},[_c('template',{slot:\"header\"},[_vm._v(\"Add New Quarter Review\")]),_c('div',{attrs:{\"slot\":\"body\"},slot:\"body\"},[_c('div',{staticClass:\"year-quarter-options\"},[_c('div',[_c('p',[_vm._v(\"BSC Review Year:\")]),_c('select',{directives:[{name:\"model\",rawName:\"v-model.number\",value:(_vm.selectedYear),expression:\"selectedYear\",modifiers:{\"number\":true}}],on:{\"change\":function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = \"_value\" in o ? o._value : o.value;return _vm._n(val)}); _vm.selectedYear=$event.target.multiple ? $$selectedVal : $$selectedVal[0]}}},_vm._l((_vm.selectedYearOptions),function(year){return _c('option',{key:year,domProps:{\"value\":year}},[_vm._v(_vm._s(year))])}),0)]),_c('div',[_c('p',[_vm._v(\"BSC Review Quarter:\")]),_c('select',{directives:[{name:\"model\",rawName:\"v-model.number\",value:(_vm.selectedQuarter),expression:\"selectedQuarter\",modifiers:{\"number\":true}}],on:{\"change\":function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = \"_value\" in o ? o._value : o.value;return _vm._n(val)}); _vm.selectedQuarter=$event.target.multiple ? $$selectedVal : $$selectedVal[0]}}},[_c('option',{attrs:{\"value\":\"1\"}},[_vm._v(\"1\")]),_c('option',{attrs:{\"value\":\"2\"}},[_vm._v(\"2\")]),_c('option',{attrs:{\"value\":\"3\"}},[_vm._v(\"3\")]),_c('option',{attrs:{\"value\":\"4\"}},[_vm._v(\"4\")])])])]),_c('div',{staticClass:\"search-user\"},[_c('p',[_vm._v(\"Please select new users to add in this review:\")]),_c('input',{directives:[{name:\"model\",rawName:\"v-model.trim\",value:(_vm.txtSearchUser),expression:\"txtSearchUser\",modifiers:{\"trim\":true}}],staticClass:\"txt-search\",attrs:{\"type\":\"search\",\"data-test\":\"user-search-keyword\"},domProps:{\"value\":(_vm.txtSearchUser)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.txtSearchUser=$event.target.value.trim()},\"blur\":function($event){return _vm.$forceUpdate()}}})]),_c('AppDatatable',{staticClass:\"user-list\",attrs:{\"columns\":_vm.userListColumns,\"data\":_vm.userList,\"sort\":{prop: 'names', order: 'ascending'},\"search\":_vm.txtSearchUser,\"show\":true,\"selectionKey\":\"oid\"},on:{\"selectionChange\":_vm.handleUserSelection}})],1),_c('template',{slot:\"footer\"},[_c('button',{staticClass:\"btn-default\",on:{\"click\":_vm.saveReview}},[_c('i',{staticClass:\"fas fa-plus\"}),_vm._v(\" Create \")])])],2):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/* eslint-disable @typescript-eslint/camelcase */\nimport { inject } from 'inversify-props'\nimport API from '@core/services/API'\nimport { Component, Vue } from 'vue-property-decorator'\nimport AppDatatable from '@core/components/AppDatatable.vue'\nimport { IDateService } from '@master/services/IDateService'\nimport { BscReviewHeader } from './model/BscMeta'\nimport { BscReviewMetaList } from './model/BscMetaList'\nimport { UIService } from '@core/services/UIService'\nimport { SharedVariable } from '@core/model/SharedVariable'\nimport { UserMeta } from '@core/model/common/UserMeta'\nimport AppDialog from '@core/components/AppDialog.vue'\n\n@Component({\n components: {\n AppDatatable,\n AppDialog\n }\n})\nexport class BscHomeMixin extends Vue {\n @inject()\n protected dateService: IDateService\n\n @inject()\n protected $api: API\n\n uiService: UIService\n\n @inject()\n private sharedVariable: SharedVariable\n\n protected txtSearchBscReview = ''\n protected bscReviewMetaList: BscReviewMetaList = null\n protected showNewQuarterReviewModal = false\n protected selectedYear: number = this.selectedYearOptions[0]\n protected selectedQuarter = 1\n\n // For modal\n protected txtSearchUser = ''\n protected userList: UserMeta[] = []\n protected selectedUser: UserMeta[] = []\n\n get userListColumns () {\n return [\n { label: 'Username', field: 'names' },\n { label: 'Full Name', field: 'fullname' },\n { label: 'System Role', field: 'systemrole' },\n { label: 'RNF Number', field: 'masRepno' }\n ]\n }\n\n get selectedYearOptions () {\n const options = []\n const startYear = new Date().getFullYear() - 2\n for (let i = 0; i < 5; i++) {\n options.push(startYear + i)\n }\n return options\n }\n\n get bscReviewList () {\n return !this.bscReviewMetaList ? [] : this.bscReviewMetaList.groupByReviewOid().map(bscReview => {\n return {\n ...bscReview,\n dateCreated: this.formattedDate(bscReview.dateCreated),\n redirect: `/live/bsc-list-new/${bscReview.reviewOid}`\n }\n })\n }\n\n get bscReviewListColumns () {\n return [\n { label: 'Date Created', field: 'dateCreated' },\n { label: 'Review Year', field: 'reviewYear' },\n { label: 'Review Quarter', field: 'reviewQuarter' },\n { label: 'No of Cases Reviewed', field: 'caseReviewedTotal' },\n { label: 'No of Category 1 Infractions', field: 'cat1InfractionTotal' },\n { label: 'No of Category 2 Infractions', field: 'cat2InfractionTotal' },\n { label: 'No of Administrative Errors', field: 'adminErrorTotal' }\n ]\n }\n\n get isQuarterReviewNotExisted () {\n return this.bscReviewList.every(bsc => `${bsc.reviewYear}${bsc.reviewQuarter}` !== `${this.selectedYear}${this.selectedQuarter}`)\n }\n\n handleUserSelection (rows: any[]) {\n this.selectedUser = rows\n }\n\n async saveReview () {\n if (this.selectedUser.length === 0) {\n await this.uiService.alert.show({\n type: 'warning',\n message: 'Please select at least one person to include in this course'\n })\n return\n }\n\n if (!this.isQuarterReviewNotExisted) {\n await this.uiService.alert.show({\n type: 'warning',\n message: 'An existing review with the same year and quarter has already been created.'\n })\n return\n }\n\n const bscQuarterInfo = {\n review_year: this.selectedYear,\n review_quarter: this.selectedQuarter\n }\n\n const bscQuarterUsers = this.selectedUser.map(user => {\n return {\n user_oid: user.oid,\n adviser_name: user.fullname,\n contact_no: user.mobile,\n rnf_number: user.masRepno,\n adviser_code: user.companyCode,\n case_reviewed_total: 0,\n cat_1_infraction_total: 0,\n cat_2_infraction_total: 0,\n admin_error_total: 0\n }\n })\n\n const checkUsers = bscQuarterUsers.every(user => user)\n\n if (!checkUsers) {\n await this.uiService.alert.show({\n type: 'warning',\n message: 'Some selected users are undefined'\n })\n return\n }\n\n const bscQuarterObj = {\n bsc_data: JSON.stringify(bscQuarterInfo),\n selected_users: JSON.stringify(bscQuarterUsers)\n }\n\n // add to review summary table\n await this.$api.bscRecords.saveReview(bscQuarterObj)\n // if there is supervisor or director, then add the record to supervisor review table\n await this.saveSupervisorDirectorReview()\n await this.fetchData()\n this.showNewQuarterReviewModal = false\n }\n\n async saveSupervisorDirectorReview () {\n const supervisorUsers = this.selectedUser.filter(user => user.systemrole === 'director' || user.systemrole === 'supervisor')\n if (!supervisorUsers) return\n\n const params = supervisorUsers.map(supervisor => {\n return {\n supervisorOid: supervisor.oid,\n reviewYear: this.selectedYear,\n reviewQuarter: this.selectedQuarter,\n rnfNumber: supervisor.masRepno,\n supervisorCode: supervisor.companyCode,\n supervisorName: supervisor.fullname\n }\n })\n\n const { message } = await this.$api.bsc.supervisorReview.add(params)\n if (message) {\n alert(message)\n }\n }\n\n addNewReview () {\n this.showNewQuarterReviewModal = true\n }\n\n async openNewQuarterReviewModal () {\n const userHeader = [\n '_oid',\n 'names',\n 'fullname',\n 'systemrole',\n 'mobile',\n 'mas_repno',\n 'company_code'\n ]\n this.selectedUser = []\n const res = await this.$api.account.list({\n query: 'systemrole = ? OR systemrole = ? OR systemrole = ?',\n queryArgs: JSON.stringify(['adviser', 'supervisor', 'director']),\n headers: JSON.stringify(userHeader),\n groupStatus: 'user'\n })\n this.userList = res.data.map((_user) => {\n const user = new UserMeta()\n user.assignData(userHeader, _user)\n return user\n })\n }\n\n async fetchData () {\n const res = await this.$api.bscRecords.listReviewMeta({\n headers: JSON.stringify(BscReviewHeader)\n })\n this.bscReviewMetaList = new BscReviewMetaList(res.data)\n }\n\n formattedDate (unixTime: number) {\n return this.dateService.format(Number(unixTime), 'YYYY-MM-DD')\n }\n\n async mounted () {\n // take injected UIService and set it to local\n this.uiService = this.sharedVariable.uiService\n\n await this.fetchData()\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 { Mixins } from 'vue-property-decorator'\nimport { BscHomeMixin } from './BscHomeMixin'\n\nexport default class BscHome extends Mixins(BscHomeMixin) {\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!./BscHome.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!./BscHome.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./BscHome.vue?vue&type=template&id=05e0cc0e&scoped=true&\"\nimport script from \"./BscHome.vue?vue&type=script&lang=ts&\"\nexport * from \"./BscHome.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./BscHome.vue?vue&type=style&index=0&id=05e0cc0e&lang=scss&scoped=true&\"\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 \"05e0cc0e\",\n null\n \n)\n\nexport default component.exports","'use strict';\nvar call = require('../internals/function-call');\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar anObject = require('../internals/an-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar sameValue = require('../internals/same-value');\nvar toString = require('../internals/to-string');\nvar getMethod = require('../internals/get-method');\nvar regExpExec = require('../internals/regexp-exec-abstract');\n\n// @@search logic\nfixRegExpWellKnownSymbolLogic('search', function (SEARCH, nativeSearch, maybeCallNative) {\n return [\n // `String.prototype.search` method\n // https://tc39.es/ecma262/#sec-string.prototype.search\n function search(regexp) {\n var O = requireObjectCoercible(this);\n var searcher = regexp == undefined ? undefined : getMethod(regexp, SEARCH);\n return searcher ? call(searcher, regexp, O) : new RegExp(regexp)[SEARCH](toString(O));\n },\n // `RegExp.prototype[@@search]` method\n // https://tc39.es/ecma262/#sec-regexp.prototype-@@search\n function (string) {\n var rx = anObject(this);\n var S = toString(string);\n var res = maybeCallNative(nativeSearch, rx, S);\n\n if (res.done) return res.value;\n\n var previousLastIndex = rx.lastIndex;\n if (!sameValue(previousLastIndex, 0)) rx.lastIndex = 0;\n var result = regExpExec(rx, S);\n if (!sameValue(rx.lastIndex, previousLastIndex)) rx.lastIndex = previousLastIndex;\n return result === null ? -1 : result.index;\n }\n ];\n});\n","import { RawKey } from '@master/annotation/RawKey'\nimport { Meta } from '@master/model/common/Meta'\n\nexport const BscReviewHeader = [\n '_oid',\n 'review_oid',\n 'user_oid',\n 'date_created',\n 'review_year',\n 'review_quarter',\n 'adviser_code',\n 'rnf_number',\n 'adviser_name',\n 'bsc_grade',\n 'case_reviewed_total',\n 'cat_1_infraction_total',\n 'cat_2_infraction_total',\n 'admin_error_total',\n 'isau_reviewer'\n]\n\n// This is for Bsc List New page\nexport class BscReviewMeta extends Meta {\n @RawKey('_oid')\n oid = ''\n\n reviewOid = ''\n userOid = ''\n dateCreated: number = undefined\n reviewYear: number = undefined\n reviewQuarter: number = undefined\n adviserCode = ''\n rnfNumber = ''\n adviserName = ''\n bscGrade = ''\n caseReviewedTotal: number = undefined\n cat1InfractionTotal: number = undefined\n cat2InfractionTotal: number = undefined\n adminErrorTotal: number = undefined\n isauReviewer = ''\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"datatable\",class:{'active': _vm.show, 'inactive': !_vm.show}},[_c('el-table',{directives:[{name:\"loading\",rawName:\"v-loading\",value:(_vm.loading),expression:\"loading\"}],ref:\"appdatatable\",attrs:{\"data\":_vm.currentPageData,\"stripe\":_vm.hasNoError,\"size\":\"mini\",\"row-key\":_vm.selectionKey,\"row-class-name\":_vm.tableRowClassName,\"header-cell-class-name\":'cell-header'},on:{\"sort-change\":_vm.sortChange,\"row-click\":_vm.rowClick,\"selection-change\":_vm.handleSelection}},[(_vm.selectionKey)?_c('el-table-column',{attrs:{\"type\":\"selection\",\"reserve-selection\":true}}):_vm._e(),_vm._l((_vm.columns),function(column){return [(column.options)?_c('el-table-column',{key:column.field,attrs:{\"prop\":column.field,\"label\":column.label,\"align\":\"center\",\"sortable\":column.sortable === undefined ? true : column.sortable},scopedSlots:_vm._u([{key:\"default\",fn:function(scope){return [_c('select',{directives:[{name:\"model\",rawName:\"v-model.lazy\",value:(scope.row[column.field]),expression:\"scope.row[column.field]\",modifiers:{\"lazy\":true}}],on:{\"change\":[function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = \"_value\" in o ? o._value : o.value;return val}); _vm.$set(scope.row, column.field, $event.target.multiple ? $$selectedVal : $$selectedVal[0])},function($event){return _vm.handleCustomEvent(scope.row)}]}},_vm._l((column.options),function(option,index){return _c('option',{key:index,domProps:{\"value\":option.value}},[_vm._v(_vm._s(option.label))])}),0)]}}],null,true)}):(column.type)?_c('el-table-column',{key:column.field,attrs:{\"prop\":column.field,\"label\":column.label,\"align\":\"center\",\"sortable\":column.sortable === undefined ? true : column.sortable},scopedSlots:_vm._u([{key:\"default\",fn:function(scope){return [(column.type==='number')?[_c('input',{directives:[{name:\"model\",rawName:\"v-model.number.lazy\",value:(scope.row[column.field]),expression:\"scope.row[column.field]\",modifiers:{\"number\":true,\"lazy\":true}}],attrs:{\"type\":column.type},domProps:{\"value\":(scope.row[column.field])},on:{\"change\":[function($event){_vm.$set(scope.row, column.field, _vm._n($event.target.value))},function($event){return _vm.handleCustomEvent(scope.row)}],\"blur\":function($event){return _vm.$forceUpdate()}}})]:(column.type === 'decimal-number')?[_c('AppDecimalNumber',{attrs:{\"decimal\":column.decimal,\"inputValue\":scope.row[column.field],\"disabled\":column.disabled}})]:(column.type === 'currency')?[_c('label',[_vm._v(_vm._s(_vm.convertToCurrency(scope.row[column.field])))])]:(column.type === 'action')?_vm._t(\"action\",function(){return _vm._l((column.buttons),function(button,index){return _c('button',{key:index,on:{\"click\":function($event){return _vm.$emit(button, scope.row)}}},[_vm._v(_vm._s(button))])})}):(column.type === 'actionWithFeatures')?_vm._t(\"action\",function(){return _vm._l((column.buttons),function(button,index){return _c('button',{key:index,attrs:{\"disabled\":button.shouldDisabled},on:{\"click\":function($event){return _vm.$emit(button.label, scope.row)}}},[_vm._v(_vm._s(button.label))])})}):_c('input',{directives:[{name:\"model\",rawName:\"v-model.lazy\",value:(scope.row[column.field]),expression:\"scope.row[column.field]\",modifiers:{\"lazy\":true}}],attrs:{\"type\":column.type},domProps:{\"value\":(scope.row[column.field])},on:{\"change\":[function($event){return _vm.$set(scope.row, column.field, $event.target.value)},function($event){return _vm.handleCustomEvent(scope.row)}]}})]}}],null,true)}):_c('el-table-column',{key:column.field,attrs:{\"prop\":column.field,\"label\":column.label,\"align\":\"center\",\"sortable\":column.sortable === undefined ? true : column.sortable,\"show-overflow-tooltip\":true},scopedSlots:_vm._u([{key:\"content\",fn:function(scope){return [_c('div',[_vm._v(_vm._s(scope.row[column.field]))])]}}],null,true)})]}),(_vm.redirect)?_c('el-table-column',{key:'redirect',attrs:{\"prop\":'redirect',\"align\":\"center\",\"sortable\":false},scopedSlots:_vm._u([{key:\"default\",fn:function(scope){return [_c('div',{on:{\"click\":function($event){$event.stopPropagation();return _vm.$emit('redirect', scope.row)}}},[_c('i',{staticClass:\"fas fa-external-link-alt\"})])]}}],null,false,2100746354)}):_vm._e()],2),_c('div',{staticClass:\"table-footer\"},[_c('div',{staticClass:\"table-info\"},[_vm._v(\"Show \"+_vm._s(_vm.infoFrom)+\" to \"+_vm._s(_vm.infoTo)+\" of \"+_vm._s(_vm.total)+\" entries\")]),_c('el-pagination',{attrs:{\"current-page\":_vm.currentPage,\"total\":_vm.total,\"hide-on-single-page\":false,\"page-sizes\":_vm.pageSizesDisplay,\"page-size\":_vm.pageSize,\"layout\":\"sizes, prev, pager, next, jumper\",\"background\":\"\"},on:{\"current-change\":_vm.pageChange,\"size-change\":_vm.handleSizeChange}})],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\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, Watch } from 'vue-property-decorator'\nimport { isUndefined } from 'lodash/fp'\nimport AppDecimalNumber from './AppDecimalNumber.vue'\n\nexport interface Column {\n label: string;\n field: string;\n sortable?: boolean;\n options: { label: string; value: string }[];\n}\n\ninterface Sort {\n prop: string;\n order: 'ascending' | 'decending';\n}\n\n@Component({\n components: {\n AppDecimalNumber\n }\n})\nexport default class TheDatatable extends Vue {\n @Prop() readonly loading!: boolean\n @Prop() readonly columns!: Array\n @Prop() readonly data!: Array\n @Prop() readonly filters: Array\n @Prop() readonly sort!: Sort\n @Prop() readonly search!: string\n @Prop({ default: true }) readonly show!: boolean\n @Prop({ default: false }) readonly redirect!: boolean\n @Prop() readonly selectionKey: string\n private pageSizes = [10, 50, 100, 500, 1000]\n private pageSize = 10\n private currentPage = 1\n private sortBy: Sort = {\n prop: this.data[0],\n order: 'ascending'\n }\n\n @Prop() clearSelection: boolean\n\n get pageSizesDisplay () {\n // return first size(10), if data total less than 10\n if (this.total < this.pageSizes[0]) return [this.pageSizes[0]]\n\n // get all the size that less than total\n const sizes = this.pageSizes.filter(size => size < this.total)\n\n // push last size\n const lastSize = (Math.round(this.total / 10) + 1) * 10\n sizes.push(lastSize)\n\n return sizes\n }\n\n get filteredData () {\n if (isUndefined(this.search)) return this.data\n\n const searchKeyword = this.search.trim().toLowerCase()\n const data = (this.filters && this.filters.length) ? this.filters : this.data\n return data.filter(value => {\n const result = JSON.stringify(value).toLowerCase().includes(searchKeyword)\n return result\n })\n }\n\n get sortedData () {\n const data = this.filteredData.sort((a, b) => {\n if (this.sortBy.order === 'ascending') {\n if (a[this.sortBy.prop] > b[this.sortBy.prop]) { return 1 }\n if (a[this.sortBy.prop] < b[this.sortBy.prop]) { return -1 }\n } else {\n if (a[this.sortBy.prop] > b[this.sortBy.prop]) { return -1 }\n if (a[this.sortBy.prop] < b[this.sortBy.prop]) { return 1 }\n }\n return 0\n })\n return data\n }\n\n get currentPageData () {\n return this.sortedData.slice((this.currentPage - 1) * this.pageSize, this.pageSize * this.currentPage)\n }\n\n get total () {\n return this.filteredData.length\n }\n\n get infoFrom () {\n if (this.currentPage !== 1) {\n return (this.currentPage - 1) * this.pageSize + 1\n } else {\n return this.filteredData.length ? 1 : 0\n }\n }\n\n get infoTo () {\n return this.currentPageData.length < this.pageSize\n ? this.pageSize * (this.currentPage - 1) + this.currentPageData.length\n : this.pageSize * this.currentPage\n }\n\n get hasNoError () {\n return this.data.every(e => e.error === undefined)\n }\n\n pageChange (currentPage: number): void {\n this.currentPage = currentPage\n this.$emit('pageChangeCustom', this.currentPage)\n }\n\n sortChange (sort: Sort): void {\n this.sortBy.prop = sort.prop\n this.sortBy.order = sort.order || 'ascending'\n }\n\n rowClick (row: any): void {\n if (row.emit) this.$emit('rowClickCustom', row)\n if (!row.redirect) return\n window.location.href = row.redirect\n }\n\n handleSelection (rows: any[]) {\n this.$emit('selectionChange', rows)\n }\n\n handleCustomEvent (row) {\n this.$emit('customEventSelect', row)\n }\n\n tableRowClassName ({ row }) {\n if (row.error) {\n return 'warning-row'\n } else {\n return ''\n }\n }\n\n clearCheckboxOnHeader () {\n const appdatatable = this.$refs.appdatatable as any\n if (this.selectionKey && appdatatable) {\n appdatatable.clearSelection()\n }\n }\n\n handleSizeChange (val) {\n this.pageSize = val\n }\n\n convertToCurrency (value, currencySymbol = '') {\n if (!value && value !== 0) return ''\n return currencySymbol + Number(value).toLocaleString(undefined, {\n minimumFractionDigits: 2,\n maximumFractionDigits: 2\n })\n }\n\n mounted () {\n this.sortBy = this.sort\n this.clearCheckboxOnHeader()\n }\n\n @Watch('clearSelection')\n clearSelectionCheckbox () {\n if (this.clearSelection) {\n this.clearCheckboxOnHeader()\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!./AppDatatable.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!./AppDatatable.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./AppDatatable.vue?vue&type=template&id=4b557606&scoped=true&\"\nimport script from \"./AppDatatable.vue?vue&type=script&lang=ts&\"\nexport * from \"./AppDatatable.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./AppDatatable.vue?vue&type=style&index=0&id=4b557606&lang=scss&scoped=true&\"\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 \"4b557606\",\n null\n \n)\n\nexport default component.exports","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppDatatable.vue?vue&type=style&index=0&id=4b557606&lang=scss&scoped=true&\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppDecimalNumber.vue?vue&type=style&index=0&id=36b94185&lang=scss&scoped=true&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.inputModal),expression:\"inputModal\"}],staticClass:\"decimal-input\",attrs:{\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.inputModal)},on:{\"keyup\":function($event){return _vm.triggerKeyEvent($event)},\"keydown\":function($event){return _vm.triggerKeyEvent($event)},\"keypress\":function($event){return _vm.numberAndDecimalOnly($event)},\"blur\":function($event){return _vm.onBlur()},\"focus\":function($event){return _vm.onFocus()},\"select\":function($event){return _vm.onSelect($event)},\"input\":function($event){if($event.target.composing){ return; }_vm.inputModal=$event.target.value}}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\nimport { Component, Prop, Vue, Watch } from 'vue-property-decorator'\n\n@Component\nexport default class AppDecimalNumber extends Vue {\n @Prop() inputValue\n @Prop({ default: 2 }) decimal?: number\n @Prop({ default: false }) disabled?: boolean\n\n inputModal = ''\n textIsSelected = false\n valueChange = false\n\n numberAndDecimalOnly (evt) {\n evt = (evt) || window.event\n const keyCode = (evt.which) ? evt.which : evt.keyCode\n\n const currentValue = evt.target.value\n this.valueChange = true\n if (this.textIsSelected) {\n if (this.isNonNumberAndNonDecimal(keyCode)) {\n evt.preventDefault()\n } else {\n this.textIsSelected = false\n }\n return true\n }\n\n if (this.isNonNumberAndNonDecimal(keyCode)) {\n evt.preventDefault()\n }\n\n if (this.isDecimal(keyCode)) {\n if (!this.allowDecimal) {\n evt.preventDefault()\n }\n if (currentValue.indexOf('.') >= 0) {\n evt.preventDefault() // cannot key in more than 1 decimal\n }\n }\n\n if (this.decimal) { // constraint to decimal length that can enter\n const number = currentValue.split('.')\n let caratPos = currentValue.length\n if (evt.srcElement.selectionStart || evt.srcElement.selectionStart === '0') {\n caratPos = evt.srcElement.selectionStart\n }\n const dotPos = currentValue.indexOf('.')\n if (caratPos > dotPos && dotPos > -1 && number[1].length > this.decimal - 1) {\n evt.preventDefault()\n }\n }\n }\n\n triggerKeyEvent () {\n this.valueChange = true\n }\n\n get allowDecimal () {\n return this.decimal !== 0\n }\n\n isNonNumberAndNonDecimal (keyCode) {\n if (!this.allowDecimal) return this.isNonNumber(keyCode)\n return this.isNonNumber(keyCode) && (this.allowDecimal && !this.isDecimal(keyCode))\n }\n\n isDecimal (keyCode) {\n return keyCode === 46\n }\n\n isNonNumber (keyCode) {\n // not number and not decimal\n return keyCode > 31 && (keyCode < 48 || keyCode > 57)\n }\n\n onBlur () {\n if (!this.valueChange && !this.inputModal) { // if user only tap on and tap out the empty field and no edit anything\n this.inputModal = this.formatValue(undefined)\n return // no need emit value as there is no value, so that undefined is saved\n }\n\n this.inputModal = this.formatValue(this.inputModal)\n this.$emit('input', this.formatValue(this.inputModal, 'num')) // should convert to number type when return back\n }\n\n onFocus () {\n // convert string to number\n this.valueChange = false\n this.inputModal = this.inputModal.replaceAll(',', '')\n }\n\n onSelect () {\n this.textIsSelected = true\n this.valueChange = false\n }\n\n formatValue (source, convertTo: 'str' | 'num' = 'str') {\n if (typeof source === 'string') {\n if (source) {\n source = Number(source.replaceAll(',', ''))\n } else if (source === '' && this.valueChange) {\n source = 0 // so that when clear value, it is auto set to 0\n }\n } else if (source === undefined || source == null) {\n source = ''\n }\n\n if (convertTo === 'str') {\n if (source === '') return source\n const formatter = new Intl.NumberFormat('en-US', {\n minimumFractionDigits: this.decimal ?? 0,\n maximumFractionDigits: this.decimal ?? 8\n })\n return formatter.format(source)\n }\n\n if (!source) {\n return 0\n }\n\n return source\n }\n\n @Watch('inputValue')\n inputValueOnChange () {\n if (this.inputValue) {\n this.inputModal = this.formatValue(this.inputValue)\n } else {\n this.inputModal = this.formatValue('')\n }\n }\n\n mounted () {\n this.inputModal = this.formatValue(this.inputValue)\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!./AppDecimalNumber.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!./AppDecimalNumber.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./AppDecimalNumber.vue?vue&type=template&id=36b94185&scoped=true&\"\nimport script from \"./AppDecimalNumber.vue?vue&type=script&lang=ts&\"\nexport * from \"./AppDecimalNumber.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./AppDecimalNumber.vue?vue&type=style&index=0&id=36b94185&lang=scss&scoped=true&\"\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 \"36b94185\",\n null\n \n)\n\nexport default component.exports"],"sourceRoot":""}