{"version":3,"sources":["webpack:///./node_modules/randomstring/lib/randomstring.js","webpack:///./node_modules/randomstring/lib/charset.js","webpack:///./node_modules/randomstring/index.js","webpack:///./@core/pages/new-business-register/components/policy-list/AddManualNbrDTO.ts","webpack:///./@core/assets/myinfo-icon.svg","webpack:///./node_modules/randomstring/node_modules/randombytes/browser.js","webpack:///./@core/pages/new-business-register/components/policy/ViewPolicyPlaceHolderSection.vue?93c5","webpack:///./@core/pages/new-business-register/components/policy/ViewPolicyPlaceHolderSection.vue","webpack:///./@core/pages/new-business-register/components/policy/ViewPolicyPlaceHolderSection.vue?7142","webpack:///./@core/pages/new-business-register/components/policy/ViewPolicyPlaceHolderSection.vue?d02f","webpack:///./@core/pages/new-business-register/components/policy/page/RiderPage.vue?87c3","webpack:///./@core/pages/new-business-register/components/policy/EmployeeBenefitPolicySection.vue?c407","webpack:///./@core/pages/new-business-register/components/policy/EmployeeBenefitPolicySection.vue","webpack:///./@core/pages/new-business-register/components/policy/EmployeeBenefitPolicySection.vue?9765","webpack:///./@core/pages/new-business-register/components/policy/EmployeeBenefitPolicySection.vue?e437","webpack:///./@core/pages/new-business-register/components/policy/EmployeeBenefitPolicyDetailSection.vue?527b","webpack:///./@core/pages/new-business-register/components/policy/EmployeeBenefitPolicyDetailSection.vue","webpack:///./@core/pages/new-business-register/components/policy/EmployeeBenefitPolicyDetailSection.vue?339b","webpack:///./@core/pages/new-business-register/components/policy/EmployeeBenefitPolicyDetailSection.vue?1aa5","webpack:///./@core/pages/new-business-register/components/policy/RiderSection.vue?3197","webpack:///./@core/pages/new-business-register/components/policy/RiderSection.vue","webpack:///./@core/pages/new-business-register/components/policy/RiderSection.vue?c2da","webpack:///./@core/pages/new-business-register/components/policy/RiderSection.vue?f3a5","webpack:///./@core/pages/new-business-register/components/policy/RiderDetailSection.vue?c68b","webpack:///./@core/pages/new-business-register/components/policy/RiderDetailSection.vue","webpack:///./@core/pages/new-business-register/components/policy/RiderDetailSection.vue?8853","webpack:///./@core/pages/new-business-register/components/policy/RiderDetailSection.vue?fea8","webpack:///./@core/pages/new-business-register/components/policy/page/RiderPage.vue","webpack:///./@core/pages/new-business-register/components/policy/page/RiderPage.vue?2f5e","webpack:///./@core/pages/new-business-register/components/policy/page/RiderPage.vue?cfbf","webpack:///./@core/components/AppForm.vue?baa9","webpack:///./@core/components/AppCurrencyNA.vue?af5e","webpack:///./@core/pages/new-business-register/components/policy/RiderSection.vue?db46","webpack:///./node_modules/randomstring/node_modules/array-uniq/index.js","webpack:///./@core/components/AppForm.vue?4190","webpack:///./@core/components/AppCurrencyNA.vue?2c19","webpack:///./@core/components/AppCurrencyNA.vue","webpack:///./@core/components/AppCurrencyNA.vue?4219","webpack:///./@core/components/AppCurrencyNA.vue?6502","webpack:///./@core/components/AppForm.vue","webpack:///./@core/components/AppForm.vue?cec5","webpack:///./@core/components/AppForm.vue?3db6"],"names":["randomBytes","Charset","unsafeRandomBytes","length","stack","i","push","Math","floor","random","readUInt8","index","safeRandomBytes","e","processString","buf","initialString","chars","reqLen","maxByte","string","randomByte","charAt","getAsyncString","cb","err","generatedString","exports","generate","options","charset","setType","capitalization","setcapitalization","readable","removeUnreadable","removeDuplicates","charsLen","ceil","arrayUniq","this","prototype","type","numbers","charsLower","charsUpper","toUpperCase","hexChars","binaryChars","octalChars","unreadableChars","replace","toLowerCase","charMap","split","join","module","AddManualNbrDTO","oldBrowser","Error","crypto","global","msCrypto","size","rawBytes","Uint8Array","getRandomValues","bytes","Buffer","buffer","process","nextTick","render","_vm","_h","$createElement","_c","_self","staticClass","showDetail","_e","_v","_t","staticRenderFns","default","component","attrs","issuerOptions","ebSubPolicies","ebOptions","on","insertNewPolicy","viewPolicyDetails","removePolicy","policyInView","nbrStatusOptions","updateSubPolicy","policy","riderSubPolicies","riderOptions","staticStyle","isOpsStaff","subPolicies","ebProductStructure","addRepeat","removeRepeat","policyClicked","$store","getters","currentUser","systemrole","$emit","idx","uiService","confirm","show","message","isConfirm","oid","label","key","disabled","productOptions","model","get","productMetadata","productStatus","set","val","value","sharedVariable","components","AppFormTable","isDisabled","$event","subPolicyStructure","policyNumber","AppForm","tableStructure","addRider","removeRider","sumAssured","premiumAmount","creationType","isAutoCreated","precision","ncp","duration","clientPolicyStore","kycFormStore","policyToAdd","adviserOid","mainNbrOid","clientOid","applicationDate","Date","now","lineOfBusiness","includes","addNewSubPolicy","result","retrieveSubPolicies","alert","selectedPolicyInView","removeSubPolicy","deleted","name","policyToUpdate","saveSubPolicy","filter","productTypeDetailed","companyFound","cdMetaList","getFullList","find","company","principal","companyShortName","companyDetailsName","productList","originalList","product","productOid","retrieveEbProductList","mainPolicyProduct","productFamilyCode","issuer_oid","map","retrieveRidersUsingFamilyCode","rider","fetchCompanyDetails","fetchAllActiveInactiveProducts","State","Action","EmployeeBenefitPolicySection","EmployeeBenefitPolicyDetailSection","RiderSection","RiderDetailSection","ViewPolicyPlaceHolderSection","uniqNoSet","arr","ret","indexOf","uniqSet","seen","Set","el","has","add","uniqSetWithForEach","forEach","doesForEachActuallyWork","style","_l","structure","shouldShow","class","shouldDisabled","getCustomClass","hasErrors","focusId","getId","focusInner","getTestId","domProps","labelModelValue","labelModel","target","directives","rawName","labelKey","expression","composing","$set","_s","tooltip","ref","eidx","msg","full","fullErr","slot","multiple","optionCols","multiLimit","buttonName","cycleMode","displayDirection","setValue","blurHandler","getValue","checkboxColumnNo","compact","option","isMyInfo","getLabelId","setSelectValue","decimal","maxChar","currencyFormat","futureDate","disabledFutureDate","rows","isVertical","maxSize","columns","getValueForTable","remove","maxLength","counterMsg","isModernTheme","maxlength","numberAndNAOnly","onBlur","onFocus","onSelect","inputModal","textIsSelected","number","convertCurrencyToNumber","remainingChar","toString","evt","window","event","charCode","which","keyCode","currentValue","isAlphabetN","isNonNumber","preventDefault","charCodeAt","isAlphabetA","formatValue","isNaN","Number","source","undefined","useCurrency","currencyPrefix","toLocaleString","currency","replaceAll","projectInfo","inputValue","minimal","structures","errors","charLeft","getCharLeft","getCounterMsg","gridTemplateColumns","projectSettings","theme","condition","readOnly","Function","input","oriValue","String","labelValue","data","selectedOption","selectedIndex","_value","onChange","ex","uniqueID","snakeCaseKey","curAppForm","$el","hasOverflow","scrollWidth","clientWidth","eleId","ele","document","getElementById","focus","mc","classes","swe","first","s","scrollIntoView","behavior","block","arrangeCols","addEventListener","deep","AppSmartSelect","AppCheckboxGroup","AppRadioSelection","AppDateInput","AppCurrencyNA","AppDecimalNumber","AppTooltip"],"mappings":"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","file":"js/chunk-5fa0ce14.88dc8821.js","sourcesContent":["\"use strict\";\n\nvar randomBytes = require('randombytes');\nvar Charset = require('./charset.js');\n\n\nfunction unsafeRandomBytes(length) {\n var stack = [];\n for (var i = 0; i < length; i++) {\n stack.push(Math.floor(Math.random() * 255));\n }\n\n return {\n length,\n readUInt8: function (index) {\n return stack[index];\n }\n };\n}\n\nfunction safeRandomBytes(length) {\n try {\n return randomBytes(length);\n } catch (e) {\n /* React/React Native Fix + Eternal loop removed */\n return unsafeRandomBytes(length);\n }\n}\n\nfunction processString(buf, initialString, chars, reqLen, maxByte) {\n var string = initialString;\n for (var i = 0; i < buf.length && string.length < reqLen; i++) {\n var randomByte = buf.readUInt8(i);\n if (randomByte < maxByte) {\n string += chars.charAt(randomByte % chars.length);\n }\n }\n return string;\n}\n\nfunction getAsyncString(string, chars, length, maxByte, cb) {\n randomBytes(length, function(err, buf) {\n if (err) {\n // Since it is waiting for entropy, errors are legit and we shouldn't just keep retrying\n cb(err);\n }\n var generatedString = processString(buf, string, chars, length, maxByte);\n if (generatedString.length < length) {\n getAsyncString(generatedString, chars, length, maxByte, cb);\n } else {\n cb(null, generatedString);\n }\n })\n}\n\nexports.generate = function(options, cb) {\n var charset = new Charset();\n\n var length, chars, capitalization, string = '';\n\n // Handle options\n if (typeof options === 'object') {\n length = typeof options.length === 'number' ? options.length : 32;\n\n if (options.charset) {\n charset.setType(options.charset);\n }\n else {\n charset.setType('alphanumeric');\n }\n\n if (options.capitalization) {\n charset.setcapitalization(options.capitalization);\n }\n\n if (options.readable) {\n charset.removeUnreadable();\n }\n\n charset.removeDuplicates();\n }\n else if (typeof options === 'number') {\n length = options;\n charset.setType('alphanumeric');\n }\n else {\n length = 32;\n charset.setType('alphanumeric');\n }\n\n // Generate the string\n var charsLen = charset.chars.length;\n var maxByte = 256 - (256 % charsLen);\n\n if (!cb) {\n while (string.length < length) {\n var buf = safeRandomBytes(Math.ceil(length * 256 / maxByte));\n string = processString(buf, string, charset.chars, length, maxByte);\n }\n\n return string;\n }\n\n getAsyncString(string, charset.chars, length, maxByte, cb);\n\n};\n","var arrayUniq = require('array-uniq');\n\nfunction Charset() {\n this.chars = '';\n}\n\nCharset.prototype.setType = function(type) {\n var chars;\n\n var numbers = '0123456789';\n var charsLower = 'abcdefghijklmnopqrstuvwxyz';\n var charsUpper = charsLower.toUpperCase();\n var hexChars = 'abcdef';\n var binaryChars = '01';\n var octalChars = '01234567';\n\n if (type === 'alphanumeric') {\n chars = numbers + charsLower + charsUpper;\n }\n else if (type === 'numeric') {\n chars = numbers;\n }\n else if (type === 'alphabetic') {\n chars = charsLower + charsUpper;\n }\n else if (type === 'hex') {\n chars = numbers + hexChars;\n }\n else if (type === 'binary') {\n chars = binaryChars;\n }\n else if (type === 'octal') {\n chars = octalChars;\n }\n else {\n chars = type;\n }\n\n this.chars = chars;\n}\n\nCharset.prototype.removeUnreadable = function() {\n var unreadableChars = /[0OIl]/g;\n this.chars = this.chars.replace(unreadableChars, '');\n}\n\nCharset.prototype.setcapitalization = function(capitalization) {\n if (capitalization === 'uppercase') {\n this.chars = this.chars.toUpperCase();\n }\n else if (capitalization === 'lowercase') {\n this.chars = this.chars.toLowerCase();\n }\n}\n\nCharset.prototype.removeDuplicates = function() {\n var charMap = this.chars.split('');\n charMap = arrayUniq(charMap);\n this.chars = charMap.join('');\n}\n\nmodule.exports = exports = Charset;\n","module.exports = require(\"./lib/randomstring\");","import { ManualNbrDTOV2 } from '../../api'\n\nexport default class AddManualNbrDTO implements ManualNbrDTOV2 {\n clientOid: string;\n adviserOid: string;\n lineOfBusiness: string;\n applicationDate: number;\n mainNbrOid?: string;\n}\n","module.exports = __webpack_public_path__ + \"img/myinfo-icon.28e75045.svg\";","'use strict'\n\nfunction oldBrowser () {\n throw new Error('secure random number generation not supported by this browser\\nuse chrome, FireFox or Internet Explorer 11')\n}\n\nvar crypto = global.crypto || global.msCrypto\n\nif (crypto && crypto.getRandomValues) {\n module.exports = randomBytes\n} else {\n module.exports = oldBrowser\n}\n\nfunction randomBytes (size, cb) {\n // phantomjs needs to throw\n if (size > 65536) throw new Error('requested too many random bytes')\n // in case browserify isn't using the Uint8Array version\n var rawBytes = new global.Uint8Array(size)\n\n // This will not work in older browsers.\n // See https://developer.mozilla.org/en-US/docs/Web/API/window.crypto.getRandomValues\n if (size > 0) { // getRandomValues fails on IE if size == 0\n crypto.getRandomValues(rawBytes)\n }\n // phantomjs doesn't like a buffer being passed here\n var bytes = new Buffer(rawBytes.buffer)\n\n if (typeof cb === 'function') {\n return process.nextTick(function () {\n cb(null, bytes)\n })\n }\n\n return bytes\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"title\"}),(!_vm.showDetail)?_c('div',{staticClass:\"form-body\"},[_vm._v(\" Click on a record to view more details. \")]):_vm._e(),(_vm.showDetail)?_vm._t(\"details\"):_vm._e()],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\nimport { Component, Vue, Prop } from 'vue-property-decorator'\n\n@Component\nexport default class ViewPolicyPlaceHolderSection extends Vue {\n @Prop({ default: false }) showDetail: boolean\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!./ViewPolicyPlaceHolderSection.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!./ViewPolicyPlaceHolderSection.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ViewPolicyPlaceHolderSection.vue?vue&type=template&id=7016af26&scoped=true&\"\nimport script from \"./ViewPolicyPlaceHolderSection.vue?vue&type=script&lang=ts&\"\nexport * from \"./ViewPolicyPlaceHolderSection.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 \"7016af26\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[(_vm.isEmployeeBenefit)?_c('div',[_c('EmployeeBenefitPolicySection',{attrs:{\"issuerOptions\":_vm.issuerOptions,\"subPolicies\":_vm.ebSubPolicies,\"productOptions\":_vm.ebOptions},on:{\"employee-benefit-policy-new\":_vm.insertNewPolicy,\"employee-benefit-policy-clicked\":_vm.viewPolicyDetails,\"employee-benefit-policy-remove-policy\":_vm.removePolicy}}),(_vm.policyInView)?_c('EmployeeBenefitPolicyDetailSection',{attrs:{\"productOptions\":_vm.ebOptions,\"issuerOptions\":_vm.issuerOptions,\"policyInView\":_vm.policyInView,\"nbrStatusOptions\":_vm.nbrStatusOptions},on:{\"employee-benefits-policy-save-sub\":_vm.updateSubPolicy}}):_c('ViewPolicyPlaceHolderSection')],1):_c('div',[_c('RiderSection',{attrs:{\"policy\":_vm.policy,\"subPolicies\":_vm.riderSubPolicies,\"productOptions\":_vm.riderOptions},on:{\"life-insurance-policy-new-sub\":_vm.insertNewPolicy,\"life-insurance-policy-clicked-sub\":_vm.viewPolicyDetails,\"life-insurance-policy-remove-sub\":_vm.removePolicy}}),(_vm.policyInView)?_c('RiderDetailSection',{attrs:{\"policyInView\":_vm.policyInView,\"policy\":_vm.policy,\"productOptions\":_vm.riderOptions},on:{\"life-insurance-policy-save-sub\":_vm.updateSubPolicy}}):_c('ViewPolicyPlaceHolderSection')],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('div',[_c('div',{staticClass:\"title\"},[_vm._v(\"Rider List\")]),_c('div',{staticClass:\"form-body\"},[_c('AppFormTable',{staticStyle:{\"width\":\"100%\"},attrs:{\"vertical\":false,\"maxSize\":_vm.isOpsStaff ? 0 : _vm.subPolicies.length + 2,\"fields\":_vm.ebProductStructure,\"data\":_vm.subPolicies,\"isPagination\":true},on:{\"add\":_vm.addRepeat,\"remove\":_vm.removeRepeat,\"app-form-table-row-clicked\":_vm.policyClicked}})],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/* eslint-disable @typescript-eslint/camelcase */\nimport { Component, Prop, Vue } from 'vue-property-decorator'\nimport AppFormTable from '@core/components/AppFormTable.vue'\nimport { ClientPolicyDto } from '../../api'\nimport { UIService } from '@core/services/UIService'\nimport { inject } from 'inversify-props'\nimport { SharedVariable } from '@core/model/SharedVariable'\nimport { TableFormStructure } from '@master/model/structure/FormStructure'\nimport { options } from '@core/model/UIOptions'\n\n@Component({\n components: {\n AppFormTable\n }\n})\nexport default class TransactionSection extends Vue {\n @Prop({ default: () => [] }) private subPolicies: ClientPolicyDto[]\n @Prop({ default: () => [] }) private productOptions: options[]\n @Prop({ default: () => [] }) private issuerOptions: options[]\n\n uiService: UIService\n\n @inject()\n private sharedVariable: SharedVariable\n\n get isDisabled () {\n return true\n }\n\n get isOpsStaff () {\n // @TODO: To remove away anything related to store\n return this.$store.getters.currentUser.systemrole !== 'ops-staff'\n }\n\n addRepeat () {\n this.$emit('employee-benefit-policy-new')\n }\n\n async removeRepeat (idx: number) {\n const isConfirm = await this.uiService.confirm.show({\n type: 'success',\n message: 'Are you sure to delete the selected policy?'\n }) as boolean\n\n if (isConfirm) {\n this.$emit('employee-benefit-policy-remove-policy', this.subPolicies[idx].oid)\n }\n }\n\n get ebProductStructure (): TableFormStructure {\n return [\n {\n label: 'Principal',\n key: 'principal',\n type: 'dropdown',\n options: this.issuerOptions,\n disabled: true\n },\n {\n label: 'Product Name',\n key: 'productOid',\n type: 'dropdown',\n options: this.productOptions,\n disabled: true\n },\n {\n label: 'Policy Status',\n model: {\n get: (idx) => this.subPolicies[idx].productMetadata.productStatus,\n set: (idx, val) => {\n // intentionally left blank because it is disabled\n }\n },\n type: 'dropdown',\n options: [\n { label: '', value: '' },\n { label: 'New Business', value: 'new' },\n { label: 'Renewal', value: 'renewal' },\n { label: 'Lapsed', value: 'lapsed' },\n { label: 'Withdrawn', value: 'withdrawn' }\n ],\n disabled: true\n },\n {\n label: 'Effective Date',\n key: 'approvedDate',\n type: 'date',\n disabled: true\n },\n {\n label: 'Expiry Date',\n key: 'endDate',\n type: 'date',\n disabled: true\n }\n ]\n }\n\n policyClicked (index: number) {\n this.$emit('employee-benefit-policy-clicked', this.subPolicies[index])\n }\n\n mounted () {\n this.uiService = this.sharedVariable.uiService\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!./EmployeeBenefitPolicySection.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!./EmployeeBenefitPolicySection.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./EmployeeBenefitPolicySection.vue?vue&type=template&id=4e59e06a&scoped=true&\"\nimport script from \"./EmployeeBenefitPolicySection.vue?vue&type=script&lang=ts&\"\nexport * from \"./EmployeeBenefitPolicySection.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 \"4e59e06a\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"title\"},[_vm._v(\" Rider In View \"),_c('div',{staticClass:\"btn-container\"},[_c('button',{staticClass:\"btn-default\",attrs:{\"disabled\":_vm.isDisabled},on:{\"click\":function($event){return _vm.$emit('employee-benefits-policy-save-sub', _vm.policyInView)}}},[_vm._v(\"Update Rider\")])])]),_c('div',{staticClass:\"form-body\"},[_c('AppForm',{attrs:{\"structures\":_vm.subPolicyStructure,\"model\":_vm.policyInView,\"columns\":2}})],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { Component, Prop, Vue } from 'vue-property-decorator'\nimport AppForm from '@core/components/AppForm.vue'\nimport { ClientPolicyDto } from '@core/pages/CommissionModule/api'\nimport { FormStructure } from '@master/model/structure/FormStructure'\nimport { options } from '@master/model/options/Options'\n\n@Component({\n components: {\n AppForm\n }\n})\nexport default class EmployeeBenefitPolicyDetailSection extends Vue {\n @Prop({ default: {} }) policyInView: ClientPolicyDto\n @Prop({ default: () => [] }) productOptions: options[]\n @Prop({ default: () => [] }) issuerOptions: options[]\n @Prop({ default: () => [] }) nbrStatusOptions: options[]\n\n get isDisabled () {\n return this.$store.getters.currentUser.systemrole !== 'ops-staff'\n }\n\n get subPolicyStructure (): FormStructure {\n return [\n {\n label: 'Sub Policy Number',\n model: {\n get: () => this.policyInView.productMetadata.policyNumber,\n set: (val) => {\n this.policyInView.productMetadata.policyNumber = val\n }\n },\n disabled: this.isDisabled\n },\n {\n label: 'Policy Status',\n model: {\n get: () => this.policyInView.productMetadata.productStatus,\n set: (val) => {\n this.policyInView.productMetadata.productStatus = val\n }\n },\n options: [\n { label: '', value: '' },\n { label: 'New Business', value: 'new' },\n { label: 'Renewal', value: 'renewal' },\n { label: 'Lapsed', value: 'lapsed' },\n { label: 'Withdrawn', value: 'withdrawn' }\n ],\n disabled: this.isDisabled\n },\n {\n label: 'Product',\n key: 'productOid',\n options: this.productOptions,\n disabled: this.isDisabled\n },\n {\n label: 'Effective Date',\n key: 'approvedDate',\n type: 'date',\n disabled: this.isDisabled\n },\n {\n label: 'Expiry Date',\n key: 'endDate',\n type: 'date',\n disabled: this.isDisabled\n },\n {\n label: 'NBR Status Date',\n key: 'opsApprovalDate',\n type: 'date',\n disabled: this.isDisabled\n },\n {\n label: 'NBR Application Status',\n key: 'status',\n options: this.nbrStatusOptions,\n disabled: this.isDisabled\n }\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!./EmployeeBenefitPolicyDetailSection.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!./EmployeeBenefitPolicyDetailSection.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./EmployeeBenefitPolicyDetailSection.vue?vue&type=template&id=1b6cc801&scoped=true&\"\nimport script from \"./EmployeeBenefitPolicyDetailSection.vue?vue&type=script&lang=ts&\"\nexport * from \"./EmployeeBenefitPolicyDetailSection.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 \"1b6cc801\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"title\"},[_vm._v(\"Rider List\")]),_c('div',{staticClass:\"form-body\"},[_c('div',{staticClass:\"rider-details-tab\"},[_c('sub',[_vm._v(\"BA - Benefit Amount | Prem - Premium | NCP - Non Commissioned Premium\")]),_c('AppFormTable',{staticStyle:{\"width\":\"100%\"},attrs:{\"vertical\":false,\"maxSize\":_vm.isOpsStaff ? 0 : _vm.subPolicies.length + 2,\"fields\":_vm.tableStructure,\"data\":_vm.subPolicies,\"isPagination\":true},on:{\"add\":_vm.addRider,\"remove\":_vm.removeRider,\"app-form-table-row-clicked\":_vm.policyClicked}})],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/* eslint-disable @typescript-eslint/camelcase */\nimport { Component, Prop, Vue } from 'vue-property-decorator'\nimport AppFormTable from '@core/components/AppFormTable.vue'\nimport { ClientPolicyDto } from '../../api'\nimport { TableFormStructure } from '@master/model/structure/FormStructure'\nimport { UIService } from '@core/services/UIService'\nimport { inject } from 'inversify-props'\nimport { SharedVariable } from '@core/model/SharedVariable'\nimport { options } from '@core/model/UIOptions'\n\n@Component({\n components: {\n AppFormTable\n }\n})\nexport default class RiderSection extends Vue {\n @Prop({ default: () => [] }) private subPolicies: ClientPolicyDto[]\n @Prop({ default: {} }) private policy: ClientPolicyDto\n @Prop({ default: () => [] }) private productOptions: options[]\n\n uiService: UIService\n\n @inject()\n private sharedVariable: SharedVariable\n\n get isDisabled () {\n return true\n }\n\n get isOpsStaff () {\n // @TODO: To remove anything related to store\n return this.$store.getters.currentUser.systemrole !== 'ops-staff'\n }\n\n get tableStructure (): TableFormStructure {\n return [\n {\n label: 'Rider Name',\n key: 'productOid',\n type: 'dropdown',\n options: this.productOptions,\n disabled: this.isDisabled\n },\n {\n label: 'Benefit Amount ($)',\n type: 'currency',\n model: {\n get: (idx) => this.subPolicies[idx].productMetadata?.sumAssured,\n set: (idx, val) => {\n // intentionally left blank\n }\n },\n disabled: this.isDisabled\n },\n {\n label: 'Prem ($)',\n type: 'currency',\n model: {\n get: (idx) => this.subPolicies[idx].productMetadata?.premiumAmount,\n set: (idx, val) => {\n // intentionally left blank\n }\n },\n disabled: this.isDisabled\n },\n {\n label: 'Effective Date',\n type: 'date',\n key: 'startDate',\n disabled: this.isDisabled\n },\n {\n label: 'Expiry Date',\n type: 'date',\n key: 'endDate',\n disabled: this.isDisabled\n }\n ]\n }\n\n get lifeInsuranceFields () {\n return this.policy.type === 'lifeinsurance'\n }\n\n addRider () {\n this.$emit('life-insurance-policy-new-sub')\n }\n\n async removeRider (idx: number) {\n const isConfirm = await this.uiService.confirm.show({\n type: 'success',\n message: 'Are you sure to delete the selected policy?'\n }) as boolean\n\n if (isConfirm) {\n this.$emit('life-insurance-policy-remove-sub', this.subPolicies[idx].oid)\n }\n }\n\n policyClicked (index: number) {\n this.$emit('life-insurance-policy-clicked-sub', this.subPolicies[index])\n }\n\n mounted () {\n this.uiService = this.sharedVariable.uiService\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!./RiderSection.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!./RiderSection.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./RiderSection.vue?vue&type=template&id=6d1937a4&scoped=true&\"\nimport script from \"./RiderSection.vue?vue&type=script&lang=ts&\"\nexport * from \"./RiderSection.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./RiderSection.vue?vue&type=style&index=0&id=6d1937a4&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 \"6d1937a4\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"title\"},[_vm._v(\" Rider In View \"),_c('div',{staticClass:\"btn-container\"},[_c('button',{staticClass:\"btn-default\",attrs:{\"disabled\":_vm.isDisabled},on:{\"click\":function($event){return _vm.$emit('life-insurance-policy-save-sub', _vm.policyInView)}}},[_vm._v(\"Update Rider\")])])]),_c('div',{staticClass:\"form-body\"},[_c('AppForm',{attrs:{\"structures\":_vm.subPolicyStructure,\"model\":_vm.policyInView,\"columns\":2}})],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { Component, Prop, Vue } from 'vue-property-decorator'\nimport AppForm from '@core/components/AppForm.vue'\nimport { ClientPolicyDto } from '@core/pages/CommissionModule/api'\nimport { FormStructure } from '@master/model/structure/FormStructure'\nimport { options } from '@core/model/UIOptions'\n\n/**\n * In the future, can combine this section with employee benefit's detail section\n * but I just create for the sake of time\n */\n@Component({\n components: {\n AppForm\n }\n})\nexport default class RiderDetailSection extends Vue {\n @Prop({ default: {} }) policyInView: ClientPolicyDto\n @Prop({ default: {} }) policy: ClientPolicyDto\n @Prop({ default: () => [] }) productOptions: options[]\n\n get isDisabled () {\n // Remove anything related to store\n return this.$store.getters.currentUser.systemrole !== 'ops-staff'\n }\n\n get isAutoCreated () {\n return this.policyInView?.creationType === 'auto'\n }\n\n /* eslint-disable @typescript-eslint/camelcase */\n get subPolicyStructure (): FormStructure {\n return [\n {\n label: 'Rider Name',\n key: 'productOid',\n options: this.productOptions,\n disabled: this.isDisabled || this.isAutoCreated\n },\n {\n label: 'Benefit Amount ($)',\n type: 'currency',\n precision: 2,\n model: {\n get: () => this.policyInView.productMetadata?.sumAssured,\n set: (val) => {\n this.policyInView.productMetadata.sumAssured = val\n }\n },\n disabled: this.isDisabled\n },\n {\n label: 'Prem ($)',\n type: 'currency',\n precision: 2,\n model: {\n get: () => this.policyInView.productMetadata?.premiumAmount,\n set: (val) => {\n this.policyInView.productMetadata.premiumAmount = val\n }\n },\n disabled: this.isDisabled\n },\n {\n label: 'NCP ($)',\n type: 'currency',\n precision: 2,\n model: {\n get: () => this.policyInView.productMetadata?.ncp,\n set: (val) => {\n this.policyInView.productMetadata.ncp = val\n }\n },\n disabled: this.isDisabled\n },\n {\n label: 'Effective Date',\n type: 'date',\n key: 'startDate',\n disabled: this.isDisabled\n },\n {\n label: 'Expiry Date',\n type: 'date',\n key: 'endDate',\n disabled: this.isDisabled\n },\n {\n label: 'Duration',\n model: {\n get: () => this.policyInView.productMetadata?.duration,\n set: (val) => {\n this.policyInView.productMetadata.duration = val\n }\n },\n disabled: this.isDisabled\n }\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!./RiderDetailSection.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!./RiderDetailSection.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./RiderDetailSection.vue?vue&type=template&id=44537ade&scoped=true&\"\nimport script from \"./RiderDetailSection.vue?vue&type=script&lang=ts&\"\nexport * from \"./RiderDetailSection.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 \"44537ade\",\n null\n \n)\n\nexport default component.exports","\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 { ClientPolicyDto, PolicyIndividualDTO } from '@core/pages/new-business-register/api'\nimport { Component, Vue } from 'vue-property-decorator'\nimport { namespace } from 'vuex-class'\nimport EmployeeBenefitPolicySection from '../EmployeeBenefitPolicySection.vue'\nimport EmployeeBenefitPolicyDetailSection from '../EmployeeBenefitPolicyDetailSection.vue'\nimport RiderSection from '../RiderSection.vue'\nimport RiderDetailSection from '../RiderDetailSection.vue'\nimport ViewPolicyPlaceHolderSection from '../ViewPolicyPlaceHolderSection.vue'\nimport { ClientPolicy } from '@core/pages/new-business-register/components/policy/model/ClientPolicyDTO'\nimport { UIService } from '@core/services/UIService'\nimport { inject } from 'inversify-props'\nimport { SharedVariable } from '@core/model/SharedVariable'\nimport AddManualNbrDTO from '../../policy-list/AddManualNbrDTO'\nimport { generalProductTypes, isInclude, riderProductTypes } from '@master/model/common/ProductMeta'\nimport { ProductList } from '@core/pages/adminProductList/model/ProductList'\nimport { CompanyDetailsMetaList } from '@core/pages/companyDetails/model/CompanyDetailsMetaList'\n\nconst clientPolicyStore = namespace('ClientPolicyStore')\nconst kycFormStore = namespace('KYCFormStore')\n\n@Component({\n components: {\n EmployeeBenefitPolicySection,\n EmployeeBenefitPolicyDetailSection,\n RiderSection,\n RiderDetailSection,\n ViewPolicyPlaceHolderSection\n }\n})\nexport default class RiderPage extends Vue {\n @clientPolicyStore.State\n private policy: ClientPolicyDto\n\n @clientPolicyStore.State\n private policyInView: ClientPolicyDto\n\n @clientPolicyStore.State\n private policyIndividuals: PolicyIndividualDTO[]\n\n @clientPolicyStore.State\n private nbrStatusOptions\n\n @kycFormStore.State\n private productList: ProductList\n\n // please refer to https://wenconsulting.atlassian.net/jira/software/c/projects/IFAM/issues/IFAM-1336\n // to get the function code\n @kycFormStore.Action\n private fetchAllActiveInactiveProducts\n\n @clientPolicyStore.Action\n private retrieveSubPolicies\n\n @clientPolicyStore.State\n private subPolicies: ClientPolicyDto[]\n\n @clientPolicyStore.Action\n private removeSubPolicy\n\n @clientPolicyStore.Action\n private addNewSubPolicy\n\n @clientPolicyStore.Action\n private selectedPolicyInView\n\n @clientPolicyStore.Action\n private saveSubPolicy\n\n @kycFormStore.State\n private cdMetaList: CompanyDetailsMetaList\n\n @kycFormStore.Action\n private fetchCompanyDetails!: () => void\n\n uiService: UIService\n\n @inject()\n private sharedVariable: SharedVariable\n\n async insertNewPolicy () {\n const isConfirm = await this.uiService.confirm.show({\n type: 'warning',\n message: 'Create a new rider?'\n }) as boolean\n\n if (isConfirm) {\n const policyToAdd = new AddManualNbrDTO()\n policyToAdd.adviserOid = this.policy.adviserOid\n policyToAdd.mainNbrOid = this.policy.oid\n policyToAdd.clientOid = this.policy.clientOid\n policyToAdd.applicationDate = Date.now()\n // we will change it once the user has chosen the product and we update there\n policyToAdd.lineOfBusiness = ['employeebenefits', 'group-eb', 'group-eb-tailored'].includes(this.policy.type) ? 'general' : 'Insurance-Rider'\n const result = await this.addNewSubPolicy(policyToAdd)\n\n if (result) {\n await this.retrieveSubPolicies(this.policy.oid)\n this.uiService.alert.show({\n type: 'success',\n message: 'Successfully created rider.'\n })\n }\n }\n }\n\n async viewPolicyDetails (policy: ClientPolicy) {\n this.selectedPolicyInView(policy)\n }\n\n async removePolicy (oid: string) {\n const deleted = await this.removeSubPolicy(oid)\n\n if (deleted) {\n this.uiService.alert.show({\n type: 'success',\n message: `Deleted ${deleted.name}.`\n })\n }\n }\n\n async updateSubPolicy (policyToUpdate: ClientPolicyDto) {\n const result = await this.saveSubPolicy(policyToUpdate)\n if (result) {\n this.uiService.alert.show({\n type: 'success',\n message: `Updated ${this.policyInView.name}.`\n })\n }\n }\n\n get ebSubPolicies () {\n return this.subPolicies.filter(policy => isInclude(generalProductTypes, policy?.productTypeDetailed || '') || isInclude(generalProductTypes, policy?.type || ''))\n }\n\n get riderSubPolicies () {\n return this.subPolicies.filter(policy => isInclude(riderProductTypes, policy?.productTypeDetailed || '') || isInclude(riderProductTypes, policy?.type || ''))\n }\n\n get isEmployeeBenefit () {\n return ['employeebenefits', 'group-eb', 'group-eb-tailored'].includes(this.policy.type)\n }\n\n /**\n * For now, we just set to as the main policy's issuer option\n */\n get issuerOptions () {\n const companyFound = this.cdMetaList.getFullList().find(company => company.oid === this.policy.principal || company.companyShortName === this.policy.principal || company.companyDetailsName === this.policy.principal)\n\n return companyFound ? [{\n label: companyFound.companyDetailsName,\n value: companyFound.oid\n }] : []\n }\n\n get mainPolicyProduct () {\n return this.productList.originalList.find(product => product.oid === this.policy.productOid)\n }\n\n get ebOptions () {\n return this.productList.retrieveEbProductList(this.mainPolicyProduct?.productFamilyCode, this.mainPolicyProduct?.oid, this.mainPolicyProduct?.issuer_oid).map(product => {\n return {\n label: product.name,\n value: product.oid\n }\n })\n }\n\n get riderOptions () {\n return this.productList.retrieveRidersUsingFamilyCode(this.mainPolicyProduct?.productFamilyCode, this.mainPolicyProduct?.issuer_oid, []).map(rider => {\n return {\n label: rider.name,\n value: rider.oid\n }\n })\n }\n\n async mounted () {\n this.uiService = this.sharedVariable.uiService\n this.selectedPolicyInView(null)\n this.fetchCompanyDetails()\n await this.retrieveSubPolicies(this.policy.oid)\n await this.fetchAllActiveInactiveProducts()\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!./RiderPage.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!./RiderPage.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./RiderPage.vue?vue&type=template&id=442dc994&\"\nimport script from \"./RiderPage.vue?vue&type=script&lang=ts&\"\nexport * from \"./RiderPage.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","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!./AppForm.vue?vue&type=style&index=0&id=11928856&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!./AppCurrencyNA.vue?vue&type=style&index=0&id=423a3b72&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!./RiderSection.vue?vue&type=style&index=0&id=6d1937a4&lang=scss&scoped=true&\"","'use strict';\n\n// there's 3 implementations written in increasing order of efficiency\n\n// 1 - no Set type is defined\nfunction uniqNoSet(arr) {\n\tvar ret = [];\n\n\tfor (var i = 0; i < arr.length; i++) {\n\t\tif (ret.indexOf(arr[i]) === -1) {\n\t\t\tret.push(arr[i]);\n\t\t}\n\t}\n\n\treturn ret;\n}\n\n// 2 - a simple Set type is defined\nfunction uniqSet(arr) {\n\tvar seen = new Set();\n\treturn arr.filter(function (el) {\n\t\tif (!seen.has(el)) {\n\t\t\tseen.add(el);\n\t\t\treturn true;\n\t\t}\n\t});\n}\n\n// 3 - a standard Set type is defined and it has a forEach method\nfunction uniqSetWithForEach(arr) {\n\tvar ret = [];\n\n\t(new Set(arr)).forEach(function (el) {\n\t\tret.push(el);\n\t});\n\n\treturn ret;\n}\n\n// V8 currently has a broken implementation\n// https://github.com/joyent/node/issues/8449\nfunction doesForEachActuallyWork() {\n\tvar ret = false;\n\n\t(new Set([true])).forEach(function (el) {\n\t\tret = el;\n\t});\n\n\treturn ret === true;\n}\n\nif ('Set' in global) {\n\tif (typeof Set.prototype.forEach === 'function' && doesForEachActuallyWork()) {\n\t\tmodule.exports = uniqSetWithForEach;\n\t} else {\n\t\tmodule.exports = uniqSet;\n\t}\n} else {\n\tmodule.exports = uniqNoSet;\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"column-group\",style:(_vm.gridStyle),attrs:{\"id\":\"app-form\"}},[_vm._l((_vm.structuresDetails),function(structure){return [(_vm.shouldShow(structure.show))?_c('div',{key:structure.key,staticClass:\"input-group-with-theme\",class:[{ 'input-disabled': _vm.shouldDisabled(structure.disabled)}, _vm.getCustomClass(structure)],attrs:{\"has-msg\":structure.hasErrors,\"focusing\":_vm.focusId == _vm.getId(structure.key),\"id\":(\"box-\" + (_vm.getId(structure.key)))},on:{\"click\":function($event){return _vm.focusInner(structure)}}},[[(structure.labelModel)?_c('input',{staticClass:\"label\",attrs:{\"type\":\"text\",\"placeholder\":structure.label,\"data-test\":(\"label-input:\" + (_vm.getTestId(structure.key)))},domProps:{\"value\":_vm.labelModelValue(structure.labelModel.get())},on:{\"input\":function($event){return structure.labelModel.set($event.target.value)}}}):(structure.labelKey)?_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.model[structure.labelKey]),expression:\"model[structure.labelKey]\"}],staticClass:\"label\",attrs:{\"type\":\"text\",\"data-test\":(\"label-input:\" + (_vm.getTestId(structure.key)))},domProps:{\"value\":(_vm.model[structure.labelKey])},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.model, structure.labelKey, $event.target.value)}}}):_vm._e(),(structure.labelModel || structure.labelKey)?_c('i',{staticClass:\"fa fa-pencil-alt right-sided\"}):(structure.type === 'single-checkbox')?_c('span'):_c('label',{attrs:{\"for\":_vm.getId(structure.key),\"id\":_vm.getId(structure.key) + '_label'},domProps:{\"innerHTML\":_vm._s(structure.label)}}),(structure.tooltip)?_c('AppTooltip',{attrs:{\"tooltipConfig\":structure.tooltip}}):_vm._e(),(_vm.isModernTheme)?_vm._l((structure.errors),function(ref,eidx){\nvar msg = ref.msg;\nreturn _c('div',{key:((structure.key) + \"-error-\" + eidx),staticClass:\"form-msg\",class:{\n full:\n eidx === 0 || _vm.fullErr === ((structure.key) + \"-error-\" + eidx),\n },on:{\"click\":function($event){_vm.fullErr = (structure.key) + \"-error-\" + eidx}}},[_c('el-tooltip',[_c('span',{staticClass:\"el-icon-warning\"}),_c('span',{attrs:{\"slot\":\"content\"},slot:\"content\"},[_vm._v(_vm._s(msg))])])],1)}):_vm._e()],(structure.options && structure.type === 'smart')?_c('AppSmartSelect',{attrs:{\"options\":structure.options,\"value\":_vm.model[structure.key],\"multiple\":structure.multiple,\"cols\":structure.optionCols,\"multiLimit\":structure.multiLimit,\"buttonName\":structure.buttonName,\"cycleMode\":structure.cycleMode,\"displayDirection\":structure.displayDirection,\"disabled\":_vm.shouldDisabled(structure.disabled)},on:{\"input\":function($event){return _vm.setValue(structure, $event)},\"blur\":function($event){return _vm.blurHandler()}}}):(structure.type === 'single-checkbox')?_c('el-checkbox',{attrs:{\"value\":_vm.getValue(structure),\"disabled\":_vm.shouldDisabled(structure.disabled)},on:{\"change\":function($event){return _vm.setValue(structure, $event)}}},[_vm._v(\" \"+_vm._s(structure.label)+\" \")]):(structure.options && structure.type === 'checkbox')?_c('AppCheckboxGroup',{attrs:{\"structure\":structure,\"model\":_vm.model,\"column\":structure.checkboxColumnNo,\"compact\":structure.compact},on:{\"change\":function($event){return _vm.setValue(structure, $event)},\"blur\":function($event){return _vm.blurHandler()}}}):(structure.options && structure.type === 'radio')?_c('AppRadioSelection',{attrs:{\"options\":structure.options,\"value\":_vm.model[structure.key],\"buttonName\":structure.buttonName,\"displayDirection\":structure.displayDirection,\"disabled\":_vm.shouldDisabled(structure.disabled)},on:{\"input\":function($event){return _vm.setValue(structure, $event)},\"blur\":function($event){return _vm.blurHandler()}}}):(structure.type === 'multi')?_c('el-select',{staticClass:\"form-multi-select\",attrs:{\"value\":_vm.getValue(structure),\"disabled\":_vm.shouldDisabled(structure.disabled),\"multiple\":\"\",\"collapse-tags\":\"\",\"size\":'small',\"popper-class\":'wen-popper-class'},on:{\"change\":function($event){return _vm.setValue(structure, $event)}}},_vm._l((structure.options),function(option,index){return _c('el-option',{key:index,attrs:{\"value\":option.value,\"label\":option.label}})}),1):(structure.options)?_c('select',{class:{ 'myinfo-disabled': structure.isMyInfo },attrs:{\"id\":_vm.getId(structure.key),\"data-test\":_vm.getTestId(structure.key),\"aria-labelledby\":_vm.getLabelId(structure.key),\"disabled\":_vm.shouldDisabled(structure.disabled)},domProps:{\"value\":_vm.getValue(structure)},on:{\"input\":function($event){return _vm.setSelectValue($event.target, structure)}}},_vm._l((structure.options),function(option,index){return _c('option',{key:index,domProps:{\"value\":option.value}},[_vm._v(\" \"+_vm._s(option.label)+\" \")])}),0):(structure.type === 'decimal-number')?[_c('AppDecimalNumber',{class:{ 'myinfo-disabled': structure.isMyInfo },attrs:{\"decimal\":structure.decimal,\"inputValue\":_vm.getValue(structure),\"disabled\":_vm.shouldDisabled(structure.disabled)},on:{\"input\":function($event){return _vm.setValue(structure, $event)}}})]:(structure.type === 'number' || structure.type === 'time' || structure.type === 'password')?_c('input',{class:{ 'myinfo-disabled': structure.isMyInfo },attrs:{\"id\":_vm.getId(structure.key),\"data-test\":_vm.getTestId(structure.key),\"aria-labelledby\":_vm.getLabelId(structure.key),\"type\":structure.type,\"disabled\":_vm.shouldDisabled(structure.disabled),\"maxlength\":structure.maxChar},domProps:{\"value\":_vm.getValue(structure)},on:{\"input\":function($event){return _vm.setValue(structure, $event.target.value)},\"blur\":function($event){return _vm.blurHandler()}}}):(structure.type === 'currency')?_c('currency-input',{class:{ 'myinfo-disabled': structure.isMyInfo },attrs:{\"id\":_vm.getId(structure.key),\"data-test\":_vm.getTestId(structure.key),\"currency\":structure.currencyFormat,\"aria-labelledby\":_vm.getLabelId(structure.key),\"value\":_vm.getValue(structure),\"disabled\":_vm.shouldDisabled(structure.disabled),\"precision\":structure.precision},on:{\"input\":function($event){return _vm.setValue(structure, $event)},\"blur\":function($event){return _vm.blurHandler()}}}):(structure.type === 'date' || structure.type === 'month')?_c('AppDateInput',{class:{ 'myinfo-disabled': structure.isMyInfo },attrs:{\"value\":_vm.getValue(structure),\"id\":_vm.getId(structure.key),\"input-type\":structure.type,\"data-test\":_vm.getTestId(structure.key),\"aria-label\":structure.label,\"disabled\":_vm.shouldDisabled(structure.disabled),\"futureDate\":structure.futureDate,\"disabledFutureDate\":structure.disabledFutureDate},on:{\"input\":function($event){return _vm.setValue(structure, $event)},\"blur\":function($event){return _vm.blurHandler()}}}):(structure.type === 'textarea')?_c('textarea',{class:{ 'myinfo-disabled': structure.isMyInfo },attrs:{\"id\":_vm.getId(structure.key),\"data-test\":_vm.getTestId(structure.key),\"aria-labelledby\":_vm.getLabelId(structure.key),\"disabled\":_vm.shouldDisabled(structure.disabled),\"maxlength\":structure.maxChar,\"rows\":structure.rows || 10},domProps:{\"value\":_vm.getValue(structure)},on:{\"input\":function($event){return _vm.setValue(structure, $event.target.value)},\"blur\":function($event){return _vm.blurHandler()}}}):(structure.type === 'table')?_c('AppFormTable',{staticClass:\"inner-table\",attrs:{\"innerTable\":true,\"vertical\":structure.isVertical,\"maxSize\":structure.maxSize,\"fields\":structure.columns,\"data\":_vm.getValueForTable(structure)},on:{\"add\":structure.add,\"remove\":structure.remove}}):(structure.type==='na-currency')?[_c('AppCurrencyNA',{attrs:{\"inputValue\":_vm.getValue(structure),\"disabled\":_vm.shouldDisabled(structure.disabled),\"maxlength\":structure.maxLength},on:{\"input\":function($event){return _vm.setValue(structure, $event)}}})]:_c('input',{class:{ 'myinfo-disabled': structure.isMyInfo },attrs:{\"id\":_vm.getId(structure.key),\"data-test\":_vm.getTestId(structure.key),\"aria-labelledby\":_vm.getLabelId(structure.key),\"type\":\"text\",\"disabled\":_vm.shouldDisabled(structure.disabled),\"maxlength\":structure.maxChar},domProps:{\"value\":_vm.getValue(structure)},on:{\"input\":function($event){return _vm.setValue(structure, $event.target.value)},\"blur\":function($event){return _vm.blurHandler(structure, $event.target.value)}}}),(structure.isMyInfo)?_c('img',{staticClass:\"input-hint logo\",attrs:{\"src\":require(\"@core/assets/myinfo-icon.svg\")}}):_vm._e(),(structure.counterMsg && _vm.isModernTheme)?_c('div',{staticClass:\"char-counter\"},[_vm._v(\" \"+_vm._s(structure.counterMsg)+\" \")]):_vm._e()],2):_vm._e()]})],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.inputModal),expression:\"inputModal\"}],attrs:{\"maxlength\":_vm.maxlength,\"disabled\":_vm.disabled},domProps:{\"value\":(_vm.inputModal)},on:{\"keypress\":function($event){return _vm.numberAndNAOnly($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}}}),(!_vm.disabled)?_c('div',{staticClass:\"char-counter\"},[_vm._v(\" \"+_vm._s(_vm.counterMsg)+\" \")]):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\nimport { Component, Prop, Vue, Watch } from 'vue-property-decorator'\nimport { IProjectInfo } from '@master/config/IProjectInfo'\nimport { inject } from 'inversify-props'\n\n@Component\nexport default class AppCurrencyNA extends Vue {\n @Prop() inputValue\n @Prop({ default: true }) useCurrency!: boolean\n @Prop({ default: 10 }) maxlength?: number\n @Prop({ default: false }) disabled: boolean\n\n @inject()\n private projectInfo: IProjectInfo\n\n inputModal = ''\n textIsSelected = false\n\n get counterMsg () {\n if (typeof this.maxlength === 'undefined') return\n const number = this.convertCurrencyToNumber(this.inputModal)\n const remainingChar = this.maxlength - (number.toString().length || 0)\n return remainingChar > 0 ? `${remainingChar} letter(s) remaining` : 'Max character limit reached'\n }\n\n numberAndNAOnly (evt) {\n evt = (evt) || window.event\n const charCode = (evt.which) ? evt.which : evt.keyCode\n\n const currentValue = evt.target.value\n if (this.textIsSelected) {\n if (!this.isAlphabetN(charCode) && this.isNonNumber(charCode)) {\n evt.preventDefault()\n } else {\n this.textIsSelected = false\n }\n return true\n }\n\n // if current value is 'NA', cannot key in other character\n if (currentValue.toUpperCase() === 'NA') {\n evt.preventDefault()\n }\n\n // if current value is N, the followed char must be A\n if (this.isAlphabetN(currentValue.charCodeAt(0))) {\n if (this.isAlphabetA(charCode)) {\n return true\n }\n evt.preventDefault() // only can accept A\n }\n\n // if there is empty value, it can either key in char N or number only\n if (!currentValue) {\n if (this.isAlphabetN(charCode)) {\n return true\n }\n }\n\n // cannot key in non number value\n if (this.isNonNumber(charCode)) {\n evt.preventDefault()\n } else {\n return true\n }\n }\n\n isAlphabetN (charCode) {\n return charCode === 78 || charCode === 110\n }\n\n isAlphabetA (charCode) {\n return charCode === 65 || charCode === 97\n }\n\n isNonNumber (charCode) {\n return charCode > 31 && (charCode < 48 || charCode > 57)\n }\n\n onBlur () {\n if (!this.inputModal && this.inputModal !== '0') {\n this.inputModal = this.formatValue('')\n this.$emit('input', '')\n return\n }\n\n // format na to NA to display\n if (this.inputModal.toUpperCase() === 'NA') {\n this.inputModal = 'NA'\n this.$emit('input', 'NA')\n return\n }\n\n // in case only key in 'n' and on blur, format it to NA\n if (isNaN(Number(this.inputModal))) {\n this.inputModal = 'NA'\n this.$emit('input', 'NA')\n return\n }\n\n const number = this.convertCurrencyToNumber(this.inputModal)\n this.inputModal = this.formatValue(number)\n this.$emit('input', Number(number))\n }\n\n onFocus () {\n this.inputModal = this.convertCurrencyToNumber(this.inputModal)\n }\n\n onSelect () {\n this.textIsSelected = true\n }\n\n formatValue (source) {\n if (typeof source === 'string') {\n if (source.toUpperCase() === 'NA' || source === '') {\n return source\n }\n source = Number(source.replace('$', '').replace(',', ''))\n } else if (source === undefined || source == null) {\n source = ''\n }\n return this.useCurrency ? this.currencyPrefix + source?.toLocaleString('en-US') : source?.toLocaleString('en-US')\n }\n\n convertCurrencyToNumber (currency) {\n return currency.replaceAll(this.currencyPrefix, '').replaceAll(',', '')\n }\n\n get currencyPrefix () {\n return this.projectInfo.currency ?? 'SGD$'\n }\n\n @Watch('inputValue')\n inputValueOnChange () {\n if (this.inputValue || this.inputValue === '0' || Number(this.inputValue) === 0) {\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!./AppCurrencyNA.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!./AppCurrencyNA.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./AppCurrencyNA.vue?vue&type=template&id=423a3b72&scoped=true&\"\nimport script from \"./AppCurrencyNA.vue?vue&type=script&lang=ts&\"\nexport * from \"./AppCurrencyNA.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./AppCurrencyNA.vue?vue&type=style&index=0&id=423a3b72&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 \"423a3b72\",\n null\n \n)\n\nexport default component.exports","\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\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\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { Base } from '@master/model/Base'\nimport { FormStructure, Input, TableSetup } from '@master/model/structure/FormStructure'\nimport { Component, Prop, Vue, Watch } from 'vue-property-decorator'\nimport AppCheckboxGroup from '@core/components/AppCheckboxGroup.vue'\nimport AppFormTable from '@core/components/AppFormTable.vue'\nimport AppRadioSelection from '@core/components/AppRadioSelection.vue'\nimport AppSmartSelect from '@core/components/AppSmartSelect.vue'\nimport { inject } from 'inversify-props'\nimport { IDateService } from '@master/services/IDateService'\nimport AppDateInput from './AppDateInput.vue'\nimport { getMaxChar } from '@master/annotation/MaxChar'\nimport { IProjectSettings } from '@master/config/IProjectSettings'\nimport { isUndefined } from 'lodash/fp'\nimport randomstring from 'randomstring'\nimport AppCurrencyNA from './AppCurrencyNA.vue'\nimport AppDecimalNumber from './AppDecimalNumber.vue'\nimport AppTooltip from './AppTooltip.vue'\n\n@Component({\n components: {\n AppSmartSelect,\n AppCheckboxGroup,\n AppRadioSelection,\n AppDateInput,\n AppFormTable,\n AppCurrencyNA,\n AppDecimalNumber,\n AppTooltip\n }\n})\n\nexport default class AppForm extends Vue {\n @Prop() readonly structures!: FormStructure[];\n @Prop() readonly model!: T;\n @Prop({ default: 1 }) readonly columns: number;\n @Prop() readonly errors?: { key: string; msg: string }[];\n @Prop({ default: () => { return Date.now() } })\n readonly uniqueID: string;\n\n @Prop({ default: false }) readonly readOnly: boolean;\n\n @inject()\n private dateService: IDateService;\n\n @inject()\n private projectSettings: IProjectSettings;\n\n private minimal = true;\n // private renderCnt = 0;\n private focusId = null;\n private fullErr = null;\n\n get structuresDetails () {\n return this.structures.map((structure) => {\n const key = (structure as any).key\n const errors = this.errors?.filter((err) => err.key === key) || []\n const maxChar = getMaxChar(this.model, key)\n const charLeft = this.getCharLeft(key)\n const counterMsg = this.getCounterMsg(maxChar, charLeft)\n return {\n errors,\n hasErrors: errors?.length > 0,\n maxChar,\n counterMsg,\n ...structure\n }\n })\n }\n\n get gridStyle () {\n return {\n gridTemplateColumns: `repeat(${this.columns}, minmax(0, 1fr))`\n }\n }\n\n get isModernTheme () {\n return this.projectSettings.theme === 'Modern'\n }\n\n getCounterMsg (maxChar, charLeft) {\n if (!this.isModernTheme) return '' // counterMsg only used in Modern Theme\n return maxChar ? charLeft > 0 ? `${charLeft} letters remaining` : 'Max character limit reached' : ''\n }\n\n shouldDisabled (condition: boolean | Function = false) {\n if (this.readOnly) return true\n if (condition === undefined) {\n return false\n } else if (condition instanceof Function) {\n return condition(this.model)\n } else {\n return condition\n }\n }\n\n shouldShow (condition: boolean | Function = true) {\n if (condition === undefined) {\n return false\n } else if (condition instanceof Function) {\n return condition(this.model)\n } else {\n return condition\n }\n }\n\n getValue (input: Input) {\n if (input.type === 'currency') {\n const oriValue = this.model[input.key]\n if (typeof oriValue === 'string' || oriValue instanceof String) {\n return Number(this.model[input.key])\n }\n }\n if (input.key) {\n return this.model[input.key]\n } else if (input.model) {\n return input.model.get()\n } else {\n throw new Error(\n `Invalid config for label ${input.label}: key or model is required`\n )\n }\n }\n\n /**\n * Return null as the label if it is empty so\n * that the placeholder will appear\n */\n labelModelValue (labelValue: string) {\n return !labelValue ? null : labelValue\n }\n\n getValueForTable (input: TableSetup) {\n if (input.key) {\n return this.model[input.key]\n } else if (input.data) {\n return input.data\n } else {\n throw new Error(\n `Invalid config for label ${input.label}: key or model is required`\n )\n }\n }\n\n // this is to resolve the issue of event.target.value is always passed as string, but our use cases might need number\n setSelectValue (event, structure) {\n const selectedOption = structure.options[event.selectedIndex]\n this.setValue(structure, selectedOption.value)\n }\n\n setValue (input: Input, _value: T[keyof T]) {\n const value: any = input.type === 'number' ? +_value || 0 : _value\n\n if (input.key) {\n if (input.onChange) {\n input.onChange(this.model[input.key], value)\n }\n // when only has getter (for currency input), sidestep the error\n try {\n this.model[input.key] = value\n } catch (ex) {}\n } else if (input.model) {\n if (input.onChange) {\n input.onChange(this.model[input.key], value)\n }\n return input.model.set(value)\n } else {\n throw new Error(`Invalid config for label ${input.label}: key or model is required`)\n }\n }\n\n getId (key: string) {\n if (this.model && 'snakeCaseKey' in this.model) {\n return `${this.uniqueID}_${this.model.snakeCaseKey(key)}`\n }\n\n if (isUndefined(key)) {\n key = randomstring.generate(6)\n }\n\n if (this.uniqueID) {\n return `${this.uniqueID}_${key}`\n }\n\n return `${key}`\n }\n\n getTestId (key: string) {\n if (this.model && 'snakeCaseKey' in this.model) {\n return `${this.model.snakeCaseKey(key)}`\n }\n return undefined\n }\n\n getLabelId (key: string) {\n return this.getId(key) + '_label'\n }\n\n arrangeCols () {\n const curAppForm = this.$el\n const hasOverflow = curAppForm.scrollWidth > curAppForm.clientWidth\n if (hasOverflow) this.minimal = true\n }\n\n blurHandler (input: Input, _value: T[keyof T]) {\n if (this.isModernTheme) {\n this.focusId = null\n }\n\n if (input && input?.onBlur) {\n input.onBlur(_value)\n }\n }\n\n // use to handle Modern theme\n focusInner (structure: any) {\n // this means label is also editable, thus do not auto focus input\n if (structure.labelModel || structure.labelKey || structure.model) return\n const eleId = this.getId(structure.key)\n this.focusId = eleId\n const ele = document.getElementById(eleId)\n if (ele) ele.focus()\n }\n\n getCharLeft (key: string) {\n const mc = getMaxChar(this.model, key)\n return mc ? mc - (this.model[key]?.length || 0) : mc\n }\n\n getCustomClass (structure) {\n return structure.classes ? [...structure.classes] : []\n }\n\n // @Watch('structures')\n // structuresUpdated () {\n // // this is to allow view to be updated when structures change\n // this.renderCnt++\n // }\n\n @Watch('structuresDetails', { deep: true })\n focusError (swe) {\n if (!this.isModernTheme) return // this is used for Modern Theme\n\n const first = swe.find((s) => 'msg' in s)\n if (!first) return\n const ele = document.getElementById(`box-${this.getId(first.key)}`)\n if (!ele) return\n ele.scrollIntoView({ behavior: 'smooth', block: 'end' })\n }\n\n updated () {\n this.arrangeCols()\n }\n\n mounted () {\n this.arrangeCols()\n window.addEventListener('resize', () => this.arrangeCols())\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!./AppForm.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!./AppForm.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./AppForm.vue?vue&type=template&id=11928856&scoped=true&\"\nimport script from \"./AppForm.vue?vue&type=script&lang=ts&\"\nexport * from \"./AppForm.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./AppForm.vue?vue&type=style&index=0&id=11928856&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 \"11928856\",\n null\n \n)\n\nexport default component.exports"],"sourceRoot":""}