{"version":3,"sources":["webpack:///./@core/components/AppCollapseCard.vue?5715","webpack:///./node_modules/randomstring/lib/randomstring.js","webpack:///./node_modules/randomstring/lib/charset.js","webpack:///./node_modules/randomstring/index.js","webpack:///./src/views/kyc-form/section/recommendations/TheILPSubfunds.vue?b6bd","webpack:///./@core/components/basicRecommendation/TheILP.vue?7830","webpack:///./@core/components/AppCollapseCard.vue?8817","webpack:///./@core/components/AppCollapseCard.vue","webpack:///./@core/components/AppCollapseCard.vue?ee50","webpack:///./@core/components/AppCollapseCard.vue?e53b","webpack:///./@core/components/basicRecommendation/TheILPDetails.vue?74e3","webpack:///./@core/components/basicRecommendation/TheILPDetails.vue","webpack:///./@core/components/basicRecommendation/TheILPDetails.vue?19ba","webpack:///./@core/components/basicRecommendation/TheILPDetails.vue?e16e","webpack:///./@core/components/basicRecommendation/TheILP.vue","webpack:///./@core/components/basicRecommendation/TheILP.vue?59d3","webpack:///./@core/components/basicRecommendation/TheILP.vue?4533","webpack:///./src/views/kyc-form/section/recommendations/TheILPSubfunds.vue","webpack:///./src/views/kyc-form/section/recommendations/TheILPSubfunds.vue?6f29","webpack:///./src/views/kyc-form/section/recommendations/TheILPSubfunds.vue?3afd","webpack:///./@core/assets/myinfo-icon.svg","webpack:///./node_modules/randomstring/node_modules/randombytes/browser.js","webpack:///./@core/components/AppForm.vue?baa9","webpack:///./@core/components/AppCurrencyNA.vue?af5e","webpack:///./@core/tools/Formatter.ts","webpack:///./@core/components/basicRecommendation/TheILP.vue?2438","webpack:///./@core/components/basicRecommendation/TheILPDetails.vue?5f49","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","webpack:///./src/views/kyc-form/section/recommendations/TheILPSubfunds.vue?f6ad"],"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","render","_vm","_h","$createElement","_c","_self","attrs","ilpPortfolios","rcmdIlpProducts","kycForm","hasClient2","ilpFundList","portfolio","funds","on","saveIlp","staticRenderFns","staticClass","_t","_v","disabledAddPortfolio","createPortfolio","_l","card","key","slot","_s","getPortfolioTitle","_e","fund","fundIndex","name","convertToCurrencyFormat","invAmt","$event","removePortfolio","editPortfolio","toEditPortfolioModel","isEdit","maxFundsCanAdd","showModal","saveProduct","component","hideModal","isEditMode","portfolioStructure","portfolioModel","deleteFund","portfolioFundOnClick","class","placeholder","fundStructure","maxFundsToAdd","addFund","saveChanges","fundSelectionDialog","model","value","callback","$$v","searchText","expression","fundList","scopedSlots","_u","fn","ref","item","selectRecommendedFund","ILPPortfolioV2","selectedFundIndex","undefined","fundNumber","label","map","prod","productName","oid","onChange","oldVal","newVal","selectedProduct","find","product","issuerOid","rcmdReferenceId","referenceId","list","filter","issuer_oid","search","includes","splice","newFund","frequency","paymentMode","for","choice","fundName","$emit","uiService","alert","show","message","sharedVariable","inputModel","default","components","AppForm","RecycleScroller","AppDialog","editingIndex","currency","projectInfo","event","newProduct","client2Included","limitation","maxNum","portfoliosToDisplay","target","owner","Object","assign","findIndex","_portfolio","confirm","portfolioIndex","AppCollapseCard","TheILPDetails","kycFormStore","newIlpPortfolios","recommendations","validBasicProduct","productType","productCategory","toLocaleLowerCase","productMetaList","getILPProductList","fetchRecommendedProducts","State","Action","TheILP","oldBrowser","Error","crypto","global","msCrypto","size","rawBytes","Uint8Array","getRandomValues","bytes","Buffer","buffer","process","nextTick","Number","toLocaleString","uniqNoSet","arr","ret","indexOf","uniqSet","seen","Set","el","has","add","uniqSetWithForEach","forEach","doesForEachActuallyWork","style","structure","shouldShow","shouldDisabled","disabled","getCustomClass","hasErrors","focusId","getId","focusInner","getTestId","domProps","labelModelValue","labelModel","get","set","directives","rawName","labelKey","composing","$set","tooltip","eidx","msg","full","fullErr","multiple","optionCols","multiLimit","buttonName","cycleMode","displayDirection","setValue","blurHandler","getValue","checkboxColumnNo","compact","option","isMyInfo","getLabelId","setSelectValue","decimal","maxChar","currencyFormat","precision","futureDate","disabledFutureDate","rows","isVertical","maxSize","columns","getValueForTable","remove","maxLength","counterMsg","isModernTheme","maxlength","numberAndNAOnly","onBlur","onFocus","onSelect","inputModal","textIsSelected","number","convertCurrencyToNumber","remainingChar","toString","evt","window","charCode","which","keyCode","currentValue","isAlphabetN","isNonNumber","preventDefault","charCodeAt","isAlphabetA","formatValue","isNaN","source","useCurrency","currencyPrefix","replaceAll","inputValue","minimal","structures","errors","charLeft","getCharLeft","getCounterMsg","gridTemplateColumns","projectSettings","theme","condition","readOnly","Function","input","oriValue","String","labelValue","data","selectedOption","selectedIndex","_value","ex","uniqueID","snakeCaseKey","curAppForm","$el","hasOverflow","scrollWidth","clientWidth","eleId","ele","document","getElementById","focus","mc","classes","swe","first","s","scrollIntoView","behavior","block","arrangeCols","addEventListener","Date","now","deep","AppSmartSelect","AppCheckboxGroup","AppRadioSelection","AppDateInput","AppFormTable","AppCurrencyNA","AppDecimalNumber","AppTooltip"],"mappings":"kHAAA,W,oCCEA,IAAIA,EAAc,EAAQ,QACtBC,EAAU,EAAQ,QAGtB,SAASC,EAAkBC,GAEzB,IADA,IAAIC,EAAQ,GACHC,EAAI,EAAGA,EAAIF,EAAQE,IAC1BD,EAAME,KAAKC,KAAKC,MAAsB,IAAhBD,KAAKE,WAG7B,MAAO,CACLN,SACAO,UAAW,SAAUC,GACnB,OAAOP,EAAMO,KAKnB,SAASC,EAAgBT,GACvB,IACE,OAAOH,EAAYG,GACnB,MAAOU,GAEP,OAAOX,EAAkBC,IAI7B,SAASW,EAAcC,EAAKC,EAAeC,EAAOC,EAAQC,GAExD,IADA,IAAIC,EAASJ,EACJX,EAAI,EAAGA,EAAIU,EAAIZ,QAAUiB,EAAOjB,OAASe,EAAQb,IAAK,CAC7D,IAAIgB,EAAaN,EAAIL,UAAUL,GAC3BgB,EAAaF,IACfC,GAAUH,EAAMK,OAAOD,EAAaJ,EAAMd,SAG9C,OAAOiB,EAGT,SAASG,EAAeH,EAAQH,EAAOd,EAAQgB,EAASK,GACtDxB,EAAYG,GAAQ,SAASsB,EAAKV,GAC5BU,GAEFD,EAAGC,GAEL,IAAIC,EAAkBZ,EAAcC,EAAKK,EAAQH,EAAOd,EAAQgB,GAC5DO,EAAgBvB,OAASA,EAC3BoB,EAAeG,EAAiBT,EAAOd,EAAQgB,EAASK,GAExDA,EAAG,KAAME,MAKfC,EAAQC,SAAW,SAASC,EAASL,GACnC,IAEIrB,EAFA2B,EAAU,IAAI7B,EAEiBmB,EAAS,GAGrB,kBAAZS,GACT1B,EAAmC,kBAAnB0B,EAAQ1B,OAAsB0B,EAAQ1B,OAAS,GAE3D0B,EAAQC,QACVA,EAAQC,QAAQF,EAAQC,SAGxBA,EAAQC,QAAQ,gBAGdF,EAAQG,gBACVF,EAAQG,kBAAkBJ,EAAQG,gBAGhCH,EAAQK,UACVJ,EAAQK,mBAGVL,EAAQM,oBAEkB,kBAAZP,GACd1B,EAAS0B,EACTC,EAAQC,QAAQ,kBAGhB5B,EAAS,GACT2B,EAAQC,QAAQ,iBAIlB,IAAIM,EAAWP,EAAQb,MAAMd,OACzBgB,EAAU,IAAO,IAAMkB,EAE3B,IAAKb,EAAI,CACP,MAAOJ,EAAOjB,OAASA,EAAQ,CAC7B,IAAIY,EAAMH,EAAgBL,KAAK+B,KAAc,IAATnC,EAAegB,IACnDC,EAASN,EAAcC,EAAKK,EAAQU,EAAQb,MAAOd,EAAQgB,GAG7D,OAAOC,EAGTG,EAAeH,EAAQU,EAAQb,MAAOd,EAAQgB,EAASK,K,8CCvGzD,IAAIe,EAAY,EAAQ,QAExB,SAAStC,IACPuC,KAAKvB,MAAQ,GAGfhB,EAAQwC,UAAUV,QAAU,SAASW,GACnC,IAAIzB,EAEA0B,EAAc,aACdC,EAAc,6BACdC,EAAcD,EAAWE,cACzBC,EAAc,SACdC,EAAc,KACdC,EAAc,WAGhBhC,EADW,iBAATyB,EACMC,EAAUC,EAAaC,EAEf,YAATH,EACCC,EAEQ,eAATD,EACCE,EAAaC,EAEL,QAATH,EACCC,EAAUI,EAEF,WAATL,EACCM,EAEQ,UAATN,EACCO,EAGAP,EAGVF,KAAKvB,MAAQA,GAGfhB,EAAQwC,UAAUN,iBAAmB,WACnC,IAAIe,EAAkB,UACtBV,KAAKvB,MAAQuB,KAAKvB,MAAMkC,QAAQD,EAAiB,KAGnDjD,EAAQwC,UAAUR,kBAAoB,SAASD,GACtB,cAAnBA,EACFQ,KAAKvB,MAAQuB,KAAKvB,MAAM6B,cAEE,cAAnBd,IACPQ,KAAKvB,MAAQuB,KAAKvB,MAAMmC,gBAI5BnD,EAAQwC,UAAUL,iBAAmB,WACnC,IAAIiB,EAAUb,KAAKvB,MAAMqC,MAAM,IAC/BD,EAAUd,EAAUc,GACpBb,KAAKvB,MAAQoC,EAAQE,KAAK,KAG5BC,EAAO7B,QAAoB1B,G,qBC7D3BuD,EAAO7B,QAAU,EAAQ,S,2CCAzB,IAAI8B,EAAS,WAAa,IAAIC,EAAIlB,KAASmB,EAAGD,EAAIE,eAAmBC,EAAGH,EAAII,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACA,EAAG,SAAS,CAACE,MAAM,CAAC,cAAgBL,EAAIM,cAAc,gBAAkBN,EAAIO,gBAAgB,gBAAkBP,EAAIQ,QAAQC,WAAW,YAAcT,EAAIU,YAAY,WAAa,CAACC,UAAW,EAAGC,MAAO,IAAIC,GAAG,CAAC,KAAOb,EAAIc,YAAY,IAC3UC,EAAkB,G,8HCDlB,G,UAAS,WAAa,IAAIf,EAAIlB,KAASmB,EAAGD,EAAIE,eAAmBC,EAAGH,EAAII,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACA,EAAG,MAAM,CAACa,YAAY,SAAS,CAAChB,EAAIiB,GAAG,WAAU,WAAW,MAAO,CAACjB,EAAIkB,GAAG,qBAAoBf,EAAG,SAAS,CAACa,YAAY,uBAAuBX,MAAM,CAAC,SAAWL,EAAImB,sBAAsBN,GAAG,CAAC,MAAQb,EAAIoB,kBAAkB,CAACpB,EAAIkB,GAAG,eAAe,GAAGlB,EAAIqB,GAAIrB,EAAuB,qBAAE,SAASsB,EAAKrE,GAAO,MAAO,CAACkD,EAAG,kBAAkB,CAACoB,IAAK,OAAStE,GAAQ,CAACkD,EAAG,WAAW,CAACqB,KAAK,cAAc,CAACrB,EAAG,MAAM,CAACa,YAAY,cAAc,CAAChB,EAAIkB,GAAGlB,EAAIyB,GAAGzB,EAAI0B,kBAAkBJ,IAAO,SAASnB,EAAG,WAAW,CAACqB,KAAK,eAAe,CAAEF,EAAKV,OAAUU,EAAKV,MAAMnE,OAAS,EAAG0D,EAAG,SAAS,CAACoB,IAAK,OAAStE,EAAQ,cAAe+D,YAAY,YAAYX,MAAM,CAAC,KAAO,SAAS,CAACF,EAAG,SAAS,CAACH,EAAIkB,GAAG,eAAef,EAAG,SAAS,CAACE,MAAM,CAAC,KAAO,IAAI,CAACL,EAAIkB,GAAG,4BAA4B,GAAGlB,EAAI2B,KAAK3B,EAAIqB,GAAIC,EAAU,OAAE,SAASM,EAAKC,GAAW,OAAO1B,EAAG,SAAS,CAACoB,IAAK,OAAStE,EAAQ,SAAW4E,EAAWb,YAAY,cAAcX,MAAM,CAAC,KAAO,SAAS,CAACF,EAAG,SAAS,CAACH,EAAIkB,GAAGlB,EAAIyB,GAAGG,EAAKE,SAAS3B,EAAG,SAAS,CAACE,MAAM,CAAC,KAAO,IAAI,CAACL,EAAIkB,GAAGlB,EAAIyB,GAAGzB,EAAI+B,wBAAwBH,EAAKI,aAAa,OAAM,GAAG7B,EAAG,WAAW,CAACqB,KAAK,cAAc,CAACrB,EAAG,MAAM,CAACa,YAAY,cAAc,CAACb,EAAG,SAAS,CAACa,YAAY,aAAaH,GAAG,CAAC,MAAQ,SAASoB,GAAQ,OAAOjC,EAAIkC,gBAAgBZ,MAAS,CAACtB,EAAIkB,GAAG,iBAAiBf,EAAG,SAAS,CAACa,YAAY,cAAcH,GAAG,CAAC,MAAQ,SAASoB,GAAQ,OAAOjC,EAAImC,cAAcb,MAAS,CAACtB,EAAIkB,GAAG,oBAAoB,OAAOlB,EAAa,UAAEG,EAAG,gBAAgB,CAACE,MAAM,CAAC,WAAaL,EAAIoC,qBAAqB,gBAAkBpC,EAAIO,gBAAgB,WAAaP,EAAIqC,OAAO,YAAcrC,EAAIU,YAAY,cAAgBV,EAAIsC,gBAAgBzB,GAAG,CAAC,MAAQ,SAASoB,GAAQjC,EAAIuC,WAAY,GAAO,YAAc,SAASN,GAAQ,OAAOjC,EAAIwC,YAAYP,OAAYjC,EAAI2B,MAAM,KACjzD,EAAkB,G,sDCDlB,EAAS,WAAa,IAAI3B,EAAIlB,KAASmB,EAAGD,EAAIE,eAAmBC,EAAGH,EAAII,MAAMD,IAAIF,EAAG,OAAOE,EAAG,UAAU,CAACa,YAAY,WAAWX,MAAM,CAAC,OAAS,UAAU,CAACF,EAAG,cAAc,CAACA,EAAG,mBAAmB,CAACA,EAAG,WAAW,CAACqB,KAAK,SAAS,CAACxB,EAAIiB,GAAG,eAAe,GAAGjB,EAAIiB,GAAG,eAAed,EAAG,YAAY,CAACH,EAAIiB,GAAG,eAAe,IAAI,IAAI,IAAI,IACpU,EAAkB,GCkBD,E,qIAAwB,QCnB6V,I,wBCQtYwB,EAAY,eACd,EACA,EACA,GACA,EACA,KACA,WACA,MAIa,EAAAA,E,oBCnBX,EAAS,WAAa,IAAIzC,EAAIlB,KAASmB,EAAGD,EAAIE,eAAmBC,EAAGH,EAAII,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACA,EAAG,YAAY,CAACE,MAAM,CAAC,KAAO,UAAUQ,GAAG,CAAC,MAAQb,EAAI0C,YAAY,CAACvC,EAAG,WAAW,CAACqB,KAAK,UAAU,CAACxB,EAAIkB,GAAGlB,EAAIyB,GAAGzB,EAAI2C,WAAa,YAAc,eAAexC,EAAG,MAAM,CAACa,YAAY,YAAYX,MAAM,CAAC,KAAO,QAAQmB,KAAK,QAAQ,CAACrB,EAAG,UAAU,CAACE,MAAM,CAAC,SAAW,cAAc,WAAaL,EAAI4C,mBAAmB,MAAQ5C,EAAI6C,eAAe,QAAU,KAAK7C,EAAIkB,GAAG,kBAAkBlB,EAAIqB,GAAIrB,EAAI6C,eAAoB,OAAE,SAASjB,EAAK3E,GAAO,OAAOkD,EAAG,MAAM,CAACoB,IAAItE,EAAM+D,YAAY,wBAAwB,CAACb,EAAG,MAAM,CAACa,YAAY,kBAAkB,CAACb,EAAG,SAAS,CAACa,YAAY,aAAaX,MAAM,CAAC,KAAO,UAAUQ,GAAG,CAAC,MAAQ,SAASoB,GAAQ,OAAOjC,EAAI8C,WAAW7F,MAAU,CAAC+C,EAAIkB,GAAG,qBAAqBf,EAAG,MAAM,CAACa,YAAY,kBAAkB,CAACb,EAAG,MAAM,CAACa,YAAY,yCAAyC,CAACb,EAAG,QAAQ,CAACa,YAAY,SAAS,CAAChB,EAAIkB,GAAG,sBAAsBf,EAAG,YAAY,CAACa,YAAY,YAAYX,MAAM,CAAC,YAAa,cAAgBpD,EAAM,GAAK,SAAU4D,GAAG,CAAC,MAAQ,SAASoB,GAAQ,OAAOjC,EAAI+C,qBAAqB9F,MAAU,CAACkD,EAAG,MAAM,CAACa,YAAY,iBAAiB,CAACb,EAAG,MAAM,CAACa,YAAY,WAAWgC,MAAM,CAACC,aAAarB,EAAKE,OAAO,CAAC9B,EAAIkB,GAAGlB,EAAIyB,GAAGG,EAAKE,SAAS3B,EAAG,IAAI,CAACa,YAAY,0CAA0C,GAAGb,EAAG,UAAU,CAACa,YAAY,kBAAkBX,MAAM,CAAC,SAAY,YAAcpD,EAAO,WAAa+C,EAAIkD,cAAc,MAAQtB,EAAK,QAAU,MAAM,QAAOzB,EAAG,SAAS,CAACa,YAAY,4BAA4BX,MAAM,CAAC,SAAWL,EAAI6C,eAAejC,MAAMnE,SAAWuD,EAAImD,eAAetC,GAAG,CAAC,MAAQb,EAAIoD,UAAU,CAACpD,EAAIkB,GAAG,iBAAiB,GAAGf,EAAG,WAAW,CAACqB,KAAK,UAAU,CAACrB,EAAG,SAAS,CAACa,YAAY,cAAcH,GAAG,CAAC,MAAQb,EAAIqD,cAAc,CAACrD,EAAIkB,GAAGlB,EAAIyB,GAAGzB,EAAI2C,WAAa,eAAiB,aAAa,GAAI3C,EAAuB,oBAAEG,EAAG,YAAY,CAACE,MAAM,CAAC,YAAa,EAAK,KAAO,QAAQ,iBAAiB,IAAIQ,GAAG,CAAC,MAAQ,SAASoB,GAAQjC,EAAIsD,qBAAsB,KAAS,CAACnD,EAAG,WAAW,CAACqB,KAAK,UAAU,CAACxB,EAAIkB,GAAG,oBAAoBf,EAAG,MAAM,CAACE,MAAM,CAAC,KAAO,QAAQmB,KAAK,QAAQ,CAACrB,EAAG,MAAM,CAACa,YAAY,aAAa,CAACb,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,OAAO,YAAY,qBAAqB,YAAc,oBAAoBkD,MAAM,CAACC,MAAOxD,EAAc,WAAEyD,SAAS,SAAUC,GAAM1D,EAAI2D,WAAWD,GAAKE,WAAW,iBAAiB,GAAGzD,EAAG,MAAM,CAACa,YAAY,qBAAqB,CAACb,EAAG,kBAAkB,CAACa,YAAY,WAAWX,MAAM,CAAC,MAAQL,EAAI6D,SAAS,YAAY,GAAG,YAAY,OAAOC,YAAY9D,EAAI+D,GAAG,CAAC,CAACxC,IAAI,UAAUyC,GAAG,SAASC,GACh/E,IAAIC,EAAOD,EAAIC,KACf,MAAO,CAAC/D,EAAG,YAAY,CAACa,YAAY,OAAOH,GAAG,CAAC,MAAQ,SAASoB,GAAQ,OAAOjC,EAAImE,sBAAsBD,EAAKpC,SAAS,CAAC9B,EAAIkB,GAAGlB,EAAIyB,GAAGyC,EAAKpC,aAAa,MAAK,EAAM,cAAc,MAAM,GAAG9B,EAAI2B,MAAM,IAChM,EAAkB,G,kFC+ED,EAArB,yG,0BAYU,EAAAkB,eAAiC,IAAIuB,EAAA,KACrC,EAAAd,qBAAsB,EACtB,EAAAK,WAAa,GACb,EAAAU,uBAAoBC,EACX,EAAAC,WAAa,EAhBhC,yDAkBE,WAAsB,WACpB,MAAO,CACL,CACEC,MAAO,eACPjD,IAAK,MACLpD,QAASW,KAAKyB,gBAAgBkE,KAAI,SAAAC,GAChC,MAAO,CACLF,MAAOE,EAAKC,YACZnB,MAAOkB,EAAKE,QAGhBC,SAAU,SAACC,EAAQC,GACjB,IAAMC,EAAkB,EAAKzE,gBAAgB0E,MAAK,SAAAC,GAAO,OAAIA,EAAQN,MAAQG,KAC7E,EAAKlC,eAAef,KAApB,OAA2BkD,QAA3B,IAA2BA,OAA3B,EAA2BA,EAAiBL,YAC5C,EAAK9B,eAAesC,UAApB,OAAgCH,QAAhC,IAAgCA,OAAhC,EAAgCA,EAAiBG,UACjD,EAAKtC,eAAeuC,gBAApB,OAAsCJ,QAAtC,IAAsCA,OAAtC,EAAsCA,EAAiBK,iBAjCjE,yBAuCE,WACE,MAAO,CACL,CACEb,MAAO,wBACPjD,IAAK,SACLvC,KAAM,eA5Cd,oBAiDE,WAAY,WACJsG,EAAOxG,KAAK4B,YAAY6E,QAAO,SAAAL,GAAO,OAAIA,EAAQM,aAAe,EAAK3C,eAAesC,aAC3F,OAA+B,IAA3BrG,KAAK6E,WAAWlH,OACX6I,EAEFA,EAAKC,QAAO,SAAAE,GACjB,OAAOA,EAAO3D,KAAKpC,cAAcgG,SAAS,EAAK/B,WAAWjE,oBAvDhE,kCA2DE,SAAsBmC,GACpB/C,KAAKuF,kBAAoBxC,EACzB/C,KAAKwE,qBAAsB,IA7D/B,wBAgEE,SAAYrG,GACV6B,KAAK+D,eAAejC,MAAM+E,OAAO1I,EAAO,KAjE5C,qBAoEE,WACE,IAAM2I,EACN,CACE9D,KAAM,GACNE,OAAQ,EACR6D,UAAW,GACXC,YAAa,GACbC,IAAK,GACLC,OAAQ,IAEVlH,KAAK+D,eAAejC,MAAMhE,KAAKgJ,KA9EnC,mCAiFE,SAAuBK,GACrBnH,KAAK+D,eAAejC,MAAM9B,KAAKuF,mBAAmBvC,KAAOmE,EACzDnH,KAAKwE,qBAAsB,IAnF/B,yBAsFE,WACOxE,KAAK+D,eAAe+B,KAAmC,KAA5B9F,KAAK+D,eAAe+B,IAOpD9F,KAAKoH,MAAM,cAAepH,KAAK+D,gBAN7B/D,KAAKqH,UAAUC,MAAMC,KAAK,CACxBrH,KAAM,QACNsH,QAAS,wCA1FjB,uBAiGE,WACExH,KAAKoH,MAAM,WAlGf,qBAqGE,WAAO,MACLpH,KAAKqH,UAAYrH,KAAKyH,eAAeJ,WAGjC,UAAArH,KAAKyB,uBAAL,eAAsB9D,QAAS,IACjCqC,KAAK+D,eAAef,KAAOhD,KAAKyB,gBAAgB,GAAGoE,YACnD7F,KAAK+D,eAAesC,UAAYrG,KAAKyB,gBAAgB,GAAG4E,UACxDrG,KAAK+D,eAAeuC,gBAAkBtG,KAAKyB,gBAAgB,GAAG8E,eA5GpE,qBAgHE,WACMvG,KAAK0H,WACP1H,KAAK+D,eAAiB,uBAAU/D,KAAK0H,YAErC1H,KAAK+D,eAAiB,IAAIuB,EAAA,SApHhC,GAA2C,QACjC,gBAAP,kB,iCACO,gBAAP,kB,sCACyB,gBAAzB,eAAK,CAAEqC,SAAS,K,iCACT,gBAAP,kB,kCACqB,gBAArB,eAAK,CAAEA,QAAS,K,oCAGjB,gBADC,uB,qCAPkB,EAAa,gBARjC,eAAU,CACTC,WAAY,CACVC,UAAA,KACAC,gBAAA,OACAC,YAAA,SAIiB,WClFqY,ICQtZ,G,UAAY,eACd,EACA,EACA,GACA,EACA,KACA,WACA,OAIa,I,oBCyCM,EAArB,yG,0BAOU,EAAAtE,WAAY,EACZ,EAAAF,QAAS,EACT,EAAAyE,kBAAexC,EACf,EAAAlC,qBAAuB,IAAIgC,EAAA,KAVrC,gEAeE,SAAyBZ,GACvB,IAAQuD,EAAajI,KAAKkI,YAAlBD,SACR,OAAO,eAAwBvD,EAAOuD,KAjB1C,yBAoBE,SAAaE,GACX,IAAMC,EAAa,uBAAUD,GACzBnI,KAAKuD,OACPvD,KAAKwB,cAAcqF,OAAO7G,KAAKgI,aAAc,EAAGI,GAEhDpI,KAAKwB,cAAc1D,KAAKsK,GAG1BpI,KAAKoH,MAAM,QACXpH,KAAKuD,QAAS,EACdvD,KAAKyD,WAAY,IA9BrB,+BAiCE,WAAuB,WACrB,OAAOzD,KAAKwB,cAAciF,QAAO,SAAAjE,GAC/B,SAAK,EAAK6F,iBAAgC,OAAb7F,EAAKyE,SAC7BzE,EAAKsD,MAAQtD,EAAKQ,WApC7B,gCAyCE,WACE,GAA+B,qBAApBhD,KAAKsI,WACd,OAAO,EAET,IAAMC,EAASvI,KAAKsI,WAAWzG,UAC/B,OAAO7B,KAAKwI,oBAAoB7K,SAAW4K,IA9C/C,0BAiDE,WACE,GAA+B,qBAApBvI,KAAKsI,WAIhB,OAAOtI,KAAKsI,WAAWxG,QAtD3B,+BAyDE,SAAmB2G,GACjB,IAAKA,EAAQ,MAAO,eACpB,IAAMC,EAAQD,EAAOxB,IAAP,WAAiBwB,EAAOxB,IAAxB,KAAiC,GAC/C,gBAAUwB,EAAOzF,KAAjB,YAAyB0F,KA5D7B,6BA+DE,WAEE1I,KAAKsD,qBAAuB,IAAIgC,EAAA,KAChCtF,KAAKuD,QAAS,EACdvD,KAAKyD,WAAY,IAnErB,2BAsEE,SAAe5B,GACb7B,KAAKsD,qBAAuBqF,OAAOC,OAAO,IAAItD,EAAA,KAAkBzD,GAChE7B,KAAKgI,aAAehI,KAAKwB,cAAcqH,WAAU,SAAAC,GAAU,OAAIjH,IAAciH,KAC7E9I,KAAKuD,QAAS,EACdvD,KAAKyD,WAAY,IA1ErB,6BA6EE,SAAiB5B,GACf,GAAKkH,QAAQ,gCAAb,CACA,IAAMC,EAAiBhJ,KAAKwB,cAAcqH,WAAU,SAAAC,GAAU,OAAIjH,IAAciH,KAChF9I,KAAKwB,cAAcqF,OAAOmC,EAAgB,GAC1ChJ,KAAKoH,MAAM,aAjFf,GAAoC,QAC1B,gBAAP,kB,oCACO,gBAAP,kB,sCACyB,gBAAzB,eAAK,CAAEO,SAAS,K,sCACT,gBAAP,kB,kCACO,gBAAP,kB,iCAQD,gBADC,uB,kCAZkB,EAAM,gBAN1B,eAAU,CACTC,WAAY,CACVqB,gBAAA,EACAC,cAAA,MAGiB,WC5D8X,ICQ/Y,G,UAAY,eACd,EACA,EACA,GACA,EACA,KACA,WACA,OAIa,I,QCGTC,EAAe,eAAU,gBAOV,EAArB,6KAUE,WACE,OAAOnJ,KAAK0B,QAAQ0H,iBAAiB5H,gBAXzC,2BAcE,WACE,OAAOxB,KAAK0B,QAAQ2H,gBAAgBC,kBACjC7C,QAAO,SAAAL,GAAO,eAAI,UAAAA,EAAQmD,mBAAR,eAAqB3I,cAAcgG,SAAS,UAA5C,UACnBR,EAAQoD,uBADW,aACnB,EAAyBC,oBAAoB7C,SAAS,gCAjB5D,uBAoBE,WACE,OAAO5G,KAAK0J,gBAAgBC,sBArBhC,qBAwBE,WACE3J,KAAKoH,MAAM,UAzBf,qBA4BE,WACEpH,KAAK4J,+BA7BT,GAA4C,QAE1C,gBADCT,EAAaU,O,8BAId,gBADDV,EAAaU,O,sCAIZ,gBADCV,EAAaW,Q,+CAPK,EAAc,gBALlC,eAAU,CACTlC,WAAY,CACVmC,OAAA,MAGiB,WC7B0a,ICQ3b,G,UAAY,eACd,EACA9I,EACAgB,GACA,EACA,KACA,WACA,OAIa,e,gCCnBfjB,EAAO7B,QAAU,IAA0B,gC,qCCA3C,gBAEA,SAAS6K,IACP,MAAM,IAAIC,MAAM,8GAGlB,IAAIC,EAASC,EAAOD,QAAUC,EAAOC,SAQrC,SAAS5M,EAAa6M,EAAMrL,GAE1B,GAAIqL,EAAO,MAAO,MAAM,IAAIJ,MAAM,mCAElC,IAAIK,EAAW,IAAIH,EAAOI,WAAWF,GAIjCA,EAAO,GACTH,EAAOM,gBAAgBF,GAGzB,IAAIG,EAAQ,IAAIC,EAAOJ,EAASK,QAEhC,MAAkB,oBAAP3L,EACF4L,EAAQC,UAAS,WACtB7L,EAAG,KAAMyL,MAINA,EA1BLP,GAAUA,EAAOM,gBACnBxJ,EAAO7B,QAAU3B,EAEjBwD,EAAO7B,QAAU6K,I,8JCXnB,W,yDCAA,W,kFCAa/G,EAA0B,SAACyB,GAAwB,IAAjBuD,EAAiB,uDAAN,GACxD,OAAKvD,GAAmB,IAAVA,EAIPuD,EAAW6C,OAAOpG,GAAOqG,iBAHvB,K,kCCFX,W,kCCAA,W,mCCAA,YAKA,SAASC,EAAUC,GAGlB,IAFA,IAAIC,EAAM,GAEDrN,EAAI,EAAGA,EAAIoN,EAAItN,OAAQE,KACF,IAAzBqN,EAAIC,QAAQF,EAAIpN,KACnBqN,EAAIpN,KAAKmN,EAAIpN,IAIf,OAAOqN,EAIR,SAASE,EAAQH,GAChB,IAAII,EAAO,IAAIC,IACf,OAAOL,EAAIxE,QAAO,SAAU8E,GAC3B,IAAKF,EAAKG,IAAID,GAEb,OADAF,EAAKI,IAAIF,IACF,KAMV,SAASG,EAAmBT,GAC3B,IAAIC,EAAM,GAMV,OAJA,IAAKI,IAAIL,GAAMU,SAAQ,SAAUJ,GAChCL,EAAIpN,KAAKyN,MAGHL,EAKR,SAASU,IACR,IAAIV,GAAM,EAMV,OAJA,IAAKI,IAAI,EAAC,IAAQK,SAAQ,SAAUJ,GACnCL,EAAMK,MAGQ,IAARL,EAGJ,QAASf,EACyB,oBAA1BmB,IAAIrL,UAAU0L,SAA0BC,IAClD5K,EAAO7B,QAAUuM,EAEjB1K,EAAO7B,QAAUiM,EAGlBpK,EAAO7B,QAAU6L,I,wDC1DlB,IAAI/J,EAAS,WAAa,IAAIC,EAAIlB,KAASmB,EAAGD,EAAIE,eAAmBC,EAAGH,EAAII,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACa,YAAY,eAAe2J,MAAO3K,EAAa,UAAEK,MAAM,CAAC,GAAK,aAAa,CAACL,EAAIqB,GAAIrB,EAAqB,mBAAE,SAAS4K,GAAW,MAAO,CAAE5K,EAAI6K,WAAWD,EAAUvE,MAAOlG,EAAG,MAAM,CAACoB,IAAIqJ,EAAUrJ,IAAIP,YAAY,yBAAyBgC,MAAM,CAAC,CAAE,iBAAkBhD,EAAI8K,eAAeF,EAAUG,WAAY/K,EAAIgL,eAAeJ,IAAYvK,MAAM,CAAC,UAAUuK,EAAUK,UAAU,SAAWjL,EAAIkL,SAAWlL,EAAImL,MAAMP,EAAUrJ,KAAK,GAAM,OAAUvB,EAAImL,MAAMP,EAAUrJ,MAAQV,GAAG,CAAC,MAAQ,SAASoB,GAAQ,OAAOjC,EAAIoL,WAAWR,MAAc,CAAC,CAAEA,EAAoB,WAAEzK,EAAG,QAAQ,CAACa,YAAY,QAAQX,MAAM,CAAC,KAAO,OAAO,YAAcuK,EAAUpG,MAAM,YAAa,eAAkBxE,EAAIqL,UAAUT,EAAUrJ,MAAQ+J,SAAS,CAAC,MAAQtL,EAAIuL,gBAAgBX,EAAUY,WAAWC,QAAQ5K,GAAG,CAAC,MAAQ,SAASoB,GAAQ,OAAO2I,EAAUY,WAAWE,IAAIzJ,EAAOsF,OAAO/D,WAAYoH,EAAkB,SAAEzK,EAAG,QAAQ,CAACwL,WAAW,CAAC,CAAC7J,KAAK,QAAQ8J,QAAQ,UAAUpI,MAAOxD,EAAIuD,MAAMqH,EAAUiB,UAAWjI,WAAW,8BAA8B5C,YAAY,QAAQX,MAAM,CAAC,KAAO,OAAO,YAAa,eAAkBL,EAAIqL,UAAUT,EAAUrJ,MAAQ+J,SAAS,CAAC,MAAStL,EAAIuD,MAAMqH,EAAUiB,WAAYhL,GAAG,CAAC,MAAQ,SAASoB,GAAWA,EAAOsF,OAAOuE,WAAqB9L,EAAI+L,KAAK/L,EAAIuD,MAAOqH,EAAUiB,SAAU5J,EAAOsF,OAAO/D,WAAWxD,EAAI2B,KAAMiJ,EAAUY,YAAcZ,EAAUiB,SAAU1L,EAAG,IAAI,CAACa,YAAY,iCAAqD,oBAAnB4J,EAAU5L,KAA4BmB,EAAG,QAAQA,EAAG,QAAQ,CAACE,MAAM,CAAC,IAAML,EAAImL,MAAMP,EAAUrJ,KAAK,GAAKvB,EAAImL,MAAMP,EAAUrJ,KAAO,UAAU+J,SAAS,CAAC,UAAYtL,EAAIyB,GAAGmJ,EAAUpG,UAAWoG,EAAiB,QAAEzK,EAAG,aAAa,CAACE,MAAM,CAAC,cAAgBuK,EAAUoB,WAAWhM,EAAI2B,KAAM3B,EAAiB,cAAEA,EAAIqB,GAAIuJ,EAAgB,QAAE,SAAS3G,EAAIgI,GACxzD,IAAIC,EAAMjI,EAAIiI,IACd,OAAO/L,EAAG,MAAM,CAACoB,IAAMqJ,EAAa,IAAI,UAAYqB,EAAMjL,YAAY,WAAWgC,MAAM,CACzEmJ,KACW,IAATF,GAAcjM,EAAIoM,UAAcxB,EAAa,IAAI,UAAYqB,GAC/DpL,GAAG,CAAC,MAAQ,SAASoB,GAAQjC,EAAIoM,QAAWxB,EAAa,IAAI,UAAYqB,KAAQ,CAAC9L,EAAG,aAAa,CAACA,EAAG,OAAO,CAACa,YAAY,oBAAoBb,EAAG,OAAO,CAACE,MAAM,CAAC,KAAO,WAAWmB,KAAK,WAAW,CAACxB,EAAIkB,GAAGlB,EAAIyB,GAAGyK,SAAW,MAAKlM,EAAI2B,MAAOiJ,EAAUzM,SAA8B,UAAnByM,EAAU5L,KAAkBmB,EAAG,iBAAiB,CAACE,MAAM,CAAC,QAAUuK,EAAUzM,QAAQ,MAAQ6B,EAAIuD,MAAMqH,EAAUrJ,KAAK,SAAWqJ,EAAUyB,SAAS,KAAOzB,EAAU0B,WAAW,WAAa1B,EAAU2B,WAAW,WAAa3B,EAAU4B,WAAW,UAAY5B,EAAU6B,UAAU,iBAAmB7B,EAAU8B,iBAAiB,SAAW1M,EAAI8K,eAAeF,EAAUG,WAAWlK,GAAG,CAAC,MAAQ,SAASoB,GAAQ,OAAOjC,EAAI2M,SAAS/B,EAAW3I,IAAS,KAAO,SAASA,GAAQ,OAAOjC,EAAI4M,kBAAsC,oBAAnBhC,EAAU5L,KAA4BmB,EAAG,cAAc,CAACE,MAAM,CAAC,MAAQL,EAAI6M,SAASjC,GAAW,SAAW5K,EAAI8K,eAAeF,EAAUG,WAAWlK,GAAG,CAAC,OAAS,SAASoB,GAAQ,OAAOjC,EAAI2M,SAAS/B,EAAW3I,MAAW,CAACjC,EAAIkB,GAAG,IAAIlB,EAAIyB,GAAGmJ,EAAUpG,OAAO,OAAQoG,EAAUzM,SAA8B,aAAnByM,EAAU5L,KAAqBmB,EAAG,mBAAmB,CAACE,MAAM,CAAC,UAAYuK,EAAU,MAAQ5K,EAAIuD,MAAM,OAASqH,EAAUkC,iBAAiB,QAAUlC,EAAUmC,SAASlM,GAAG,CAAC,OAAS,SAASoB,GAAQ,OAAOjC,EAAI2M,SAAS/B,EAAW3I,IAAS,KAAO,SAASA,GAAQ,OAAOjC,EAAI4M,kBAAmBhC,EAAUzM,SAA8B,UAAnByM,EAAU5L,KAAkBmB,EAAG,oBAAoB,CAACE,MAAM,CAAC,QAAUuK,EAAUzM,QAAQ,MAAQ6B,EAAIuD,MAAMqH,EAAUrJ,KAAK,WAAaqJ,EAAU4B,WAAW,iBAAmB5B,EAAU8B,iBAAiB,SAAW1M,EAAI8K,eAAeF,EAAUG,WAAWlK,GAAG,CAAC,MAAQ,SAASoB,GAAQ,OAAOjC,EAAI2M,SAAS/B,EAAW3I,IAAS,KAAO,SAASA,GAAQ,OAAOjC,EAAI4M,kBAAsC,UAAnBhC,EAAU5L,KAAkBmB,EAAG,YAAY,CAACa,YAAY,oBAAoBX,MAAM,CAAC,MAAQL,EAAI6M,SAASjC,GAAW,SAAW5K,EAAI8K,eAAeF,EAAUG,UAAU,SAAW,GAAG,gBAAgB,GAAG,KAAO,QAAQ,eAAe,oBAAoBlK,GAAG,CAAC,OAAS,SAASoB,GAAQ,OAAOjC,EAAI2M,SAAS/B,EAAW3I,MAAWjC,EAAIqB,GAAIuJ,EAAiB,SAAE,SAASoC,EAAO/P,GAAO,OAAOkD,EAAG,YAAY,CAACoB,IAAItE,EAAMoD,MAAM,CAAC,MAAQ2M,EAAOxJ,MAAM,MAAQwJ,EAAOxI,YAAW,GAAIoG,EAAiB,QAAEzK,EAAG,SAAS,CAAC6C,MAAM,CAAE,kBAAmB4H,EAAUqC,UAAW5M,MAAM,CAAC,GAAKL,EAAImL,MAAMP,EAAUrJ,KAAK,YAAYvB,EAAIqL,UAAUT,EAAUrJ,KAAK,kBAAkBvB,EAAIkN,WAAWtC,EAAUrJ,KAAK,SAAWvB,EAAI8K,eAAeF,EAAUG,WAAWO,SAAS,CAAC,MAAQtL,EAAI6M,SAASjC,IAAY/J,GAAG,CAAC,MAAQ,SAASoB,GAAQ,OAAOjC,EAAImN,eAAelL,EAAOsF,OAAQqD,MAAc5K,EAAIqB,GAAIuJ,EAAiB,SAAE,SAASoC,EAAO/P,GAAO,OAAOkD,EAAG,SAAS,CAACoB,IAAItE,EAAMqO,SAAS,CAAC,MAAQ0B,EAAOxJ,QAAQ,CAACxD,EAAIkB,GAAG,IAAIlB,EAAIyB,GAAGuL,EAAOxI,OAAO,UAAS,GAAuB,mBAAnBoG,EAAU5L,KAA2B,CAACmB,EAAG,mBAAmB,CAAC6C,MAAM,CAAE,kBAAmB4H,EAAUqC,UAAW5M,MAAM,CAAC,QAAUuK,EAAUwC,QAAQ,WAAapN,EAAI6M,SAASjC,GAAW,SAAW5K,EAAI8K,eAAeF,EAAUG,WAAWlK,GAAG,CAAC,MAAQ,SAASoB,GAAQ,OAAOjC,EAAI2M,SAAS/B,EAAY3I,QAAiC,WAAnB2I,EAAU5L,MAAwC,SAAnB4L,EAAU5L,MAAsC,aAAnB4L,EAAU5L,KAAqBmB,EAAG,QAAQ,CAAC6C,MAAM,CAAE,kBAAmB4H,EAAUqC,UAAW5M,MAAM,CAAC,GAAKL,EAAImL,MAAMP,EAAUrJ,KAAK,YAAYvB,EAAIqL,UAAUT,EAAUrJ,KAAK,kBAAkBvB,EAAIkN,WAAWtC,EAAUrJ,KAAK,KAAOqJ,EAAU5L,KAAK,SAAWgB,EAAI8K,eAAeF,EAAUG,UAAU,UAAYH,EAAUyC,SAAS/B,SAAS,CAAC,MAAQtL,EAAI6M,SAASjC,IAAY/J,GAAG,CAAC,MAAQ,SAASoB,GAAQ,OAAOjC,EAAI2M,SAAS/B,EAAW3I,EAAOsF,OAAO/D,QAAQ,KAAO,SAASvB,GAAQ,OAAOjC,EAAI4M,kBAAsC,aAAnBhC,EAAU5L,KAAqBmB,EAAG,iBAAiB,CAAC6C,MAAM,CAAE,kBAAmB4H,EAAUqC,UAAW5M,MAAM,CAAC,GAAKL,EAAImL,MAAMP,EAAUrJ,KAAK,YAAYvB,EAAIqL,UAAUT,EAAUrJ,KAAK,SAAWqJ,EAAU0C,eAAe,kBAAkBtN,EAAIkN,WAAWtC,EAAUrJ,KAAK,MAAQvB,EAAI6M,SAASjC,GAAW,SAAW5K,EAAI8K,eAAeF,EAAUG,UAAU,UAAYH,EAAU2C,WAAW1M,GAAG,CAAC,MAAQ,SAASoB,GAAQ,OAAOjC,EAAI2M,SAAS/B,EAAW3I,IAAS,KAAO,SAASA,GAAQ,OAAOjC,EAAI4M,kBAAsC,SAAnBhC,EAAU5L,MAAsC,UAAnB4L,EAAU5L,KAAkBmB,EAAG,eAAe,CAAC6C,MAAM,CAAE,kBAAmB4H,EAAUqC,UAAW5M,MAAM,CAAC,MAAQL,EAAI6M,SAASjC,GAAW,GAAK5K,EAAImL,MAAMP,EAAUrJ,KAAK,aAAaqJ,EAAU5L,KAAK,YAAYgB,EAAIqL,UAAUT,EAAUrJ,KAAK,aAAaqJ,EAAUpG,MAAM,SAAWxE,EAAI8K,eAAeF,EAAUG,UAAU,WAAaH,EAAU4C,WAAW,mBAAqB5C,EAAU6C,oBAAoB5M,GAAG,CAAC,MAAQ,SAASoB,GAAQ,OAAOjC,EAAI2M,SAAS/B,EAAW3I,IAAS,KAAO,SAASA,GAAQ,OAAOjC,EAAI4M,kBAAsC,aAAnBhC,EAAU5L,KAAqBmB,EAAG,WAAW,CAAC6C,MAAM,CAAE,kBAAmB4H,EAAUqC,UAAW5M,MAAM,CAAC,GAAKL,EAAImL,MAAMP,EAAUrJ,KAAK,YAAYvB,EAAIqL,UAAUT,EAAUrJ,KAAK,kBAAkBvB,EAAIkN,WAAWtC,EAAUrJ,KAAK,SAAWvB,EAAI8K,eAAeF,EAAUG,UAAU,UAAYH,EAAUyC,QAAQ,KAAOzC,EAAU8C,MAAQ,IAAIpC,SAAS,CAAC,MAAQtL,EAAI6M,SAASjC,IAAY/J,GAAG,CAAC,MAAQ,SAASoB,GAAQ,OAAOjC,EAAI2M,SAAS/B,EAAW3I,EAAOsF,OAAO/D,QAAQ,KAAO,SAASvB,GAAQ,OAAOjC,EAAI4M,kBAAsC,UAAnBhC,EAAU5L,KAAkBmB,EAAG,eAAe,CAACa,YAAY,cAAcX,MAAM,CAAC,YAAa,EAAK,SAAWuK,EAAU+C,WAAW,QAAU/C,EAAUgD,QAAQ,OAAShD,EAAUiD,QAAQ,KAAO7N,EAAI8N,iBAAiBlD,IAAY/J,GAAG,CAAC,IAAM+J,EAAUL,IAAI,OAASK,EAAUmD,UAA4B,gBAAjBnD,EAAU5L,KAAsB,CAACmB,EAAG,gBAAgB,CAACE,MAAM,CAAC,WAAaL,EAAI6M,SAASjC,GAAW,SAAW5K,EAAI8K,eAAeF,EAAUG,UAAU,UAAYH,EAAUoD,WAAWnN,GAAG,CAAC,MAAQ,SAASoB,GAAQ,OAAOjC,EAAI2M,SAAS/B,EAAW3I,QAAa9B,EAAG,QAAQ,CAAC6C,MAAM,CAAE,kBAAmB4H,EAAUqC,UAAW5M,MAAM,CAAC,GAAKL,EAAImL,MAAMP,EAAUrJ,KAAK,YAAYvB,EAAIqL,UAAUT,EAAUrJ,KAAK,kBAAkBvB,EAAIkN,WAAWtC,EAAUrJ,KAAK,KAAO,OAAO,SAAWvB,EAAI8K,eAAeF,EAAUG,UAAU,UAAYH,EAAUyC,SAAS/B,SAAS,CAAC,MAAQtL,EAAI6M,SAASjC,IAAY/J,GAAG,CAAC,MAAQ,SAASoB,GAAQ,OAAOjC,EAAI2M,SAAS/B,EAAW3I,EAAOsF,OAAO/D,QAAQ,KAAO,SAASvB,GAAQ,OAAOjC,EAAI4M,YAAYhC,EAAW3I,EAAOsF,OAAO/D,WAAYoH,EAAkB,SAAEzK,EAAG,MAAM,CAACa,YAAY,kBAAkBX,MAAM,CAAC,IAAM,EAAQ,WAAmCL,EAAI2B,KAAMiJ,EAAUqD,YAAcjO,EAAIkO,cAAe/N,EAAG,MAAM,CAACa,YAAY,gBAAgB,CAAChB,EAAIkB,GAAG,IAAIlB,EAAIyB,GAAGmJ,EAAUqD,YAAY,OAAOjO,EAAI2B,MAAM,GAAG3B,EAAI2B,UAAS,IAC5zMZ,EAAkB,G,mRCNlB,EAAS,WAAa,IAAIf,EAAIlB,KAASmB,EAAGD,EAAIE,eAAmBC,EAAGH,EAAII,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACA,EAAG,QAAQ,CAACwL,WAAW,CAAC,CAAC7J,KAAK,QAAQ8J,QAAQ,UAAUpI,MAAOxD,EAAc,WAAE4D,WAAW,eAAevD,MAAM,CAAC,UAAYL,EAAImO,UAAU,SAAWnO,EAAI+K,UAAUO,SAAS,CAAC,MAAStL,EAAc,YAAGa,GAAG,CAAC,SAAW,SAASoB,GAAQ,OAAOjC,EAAIoO,gBAAgBnM,IAAS,KAAO,SAASA,GAAQ,OAAOjC,EAAIqO,UAAU,MAAQ,SAASpM,GAAQ,OAAOjC,EAAIsO,WAAW,OAAS,SAASrM,GAAQ,OAAOjC,EAAIuO,SAAStM,IAAS,MAAQ,SAASA,GAAWA,EAAOsF,OAAOuE,YAAqB9L,EAAIwO,WAAWvM,EAAOsF,OAAO/D,WAAYxD,EAAI+K,SAA0F/K,EAAI2B,KAApFxB,EAAG,MAAM,CAACa,YAAY,gBAAgB,CAAChB,EAAIkB,GAAG,IAAIlB,EAAIyB,GAAGzB,EAAIiO,YAAY,UACnsB,EAAkB,GCiBD,G,wCAArB,yG,0BASG,EAAAO,WAAa,GACb,EAAAC,gBAAiB,EAVpB,iDAYG,WACE,GAA8B,qBAAnB3P,KAAKqP,UAAhB,CACA,IAAMO,EAAS5P,KAAK6P,wBAAwB7P,KAAK0P,YAC3CI,EAAgB9P,KAAKqP,WAAaO,EAAOG,WAAWpS,QAAU,GACpE,OAAOmS,EAAgB,EAAhB,UAAuBA,EAAvB,wBAA6D,iCAhBzE,6BAmBG,SAAiBE,GACfA,EAAOA,GAAQC,OAAO9H,MACtB,IAAM+H,EAAYF,EAAIG,MAASH,EAAIG,MAAQH,EAAII,QAEzCC,EAAeL,EAAIvH,OAAO/D,MAChC,GAAI1E,KAAK2P,eAMP,OALK3P,KAAKsQ,YAAYJ,IAAalQ,KAAKuQ,YAAYL,GAClDF,EAAIQ,iBAEJxQ,KAAK2P,gBAAiB,GAEjB,EAST,GALmC,OAA/BU,EAAa/P,eACf0P,EAAIQ,iBAIFxQ,KAAKsQ,YAAYD,EAAaI,WAAW,IAAK,CAChD,GAAIzQ,KAAK0Q,YAAYR,GACnB,OAAO,EAETF,EAAIQ,iBAIN,QAAKH,IACCrQ,KAAKsQ,YAAYJ,OAMnBlQ,KAAKuQ,YAAYL,SACnBF,EAAIQ,oBAvDX,yBA6DG,SAAaN,GACX,OAAoB,KAAbA,GAAgC,MAAbA,IA9D/B,yBAiEG,SAAaA,GACX,OAAoB,KAAbA,GAAgC,KAAbA,IAlE/B,yBAqEG,SAAaA,GACX,OAAOA,EAAW,KAAOA,EAAW,IAAMA,EAAW,MAtE1D,oBAyEG,WACE,IAAKlQ,KAAK0P,YAAkC,MAApB1P,KAAK0P,WAG3B,OAFA1P,KAAK0P,WAAa1P,KAAK2Q,YAAY,SACnC3Q,KAAKoH,MAAM,QAAS,IAKtB,GAAsC,OAAlCpH,KAAK0P,WAAWpP,cAGlB,OAFAN,KAAK0P,WAAa,UAClB1P,KAAKoH,MAAM,QAAS,MAKtB,GAAIwJ,MAAM9F,OAAO9K,KAAK0P,aAGpB,OAFA1P,KAAK0P,WAAa,UAClB1P,KAAKoH,MAAM,QAAS,MAItB,IAAMwI,EAAS5P,KAAK6P,wBAAwB7P,KAAK0P,YACjD1P,KAAK0P,WAAa1P,KAAK2Q,YAAYf,GACnC5P,KAAKoH,MAAM,QAAS0D,OAAO8E,MAhGhC,qBAmGG,WACE5P,KAAK0P,WAAa1P,KAAK6P,wBAAwB7P,KAAK0P,cApGzD,sBAuGG,WACE1P,KAAK2P,gBAAiB,IAxG3B,yBA2GG,SAAakB,GAAM,QACjB,GAAsB,kBAAXA,EAAqB,CAC9B,GAA6B,OAAzBA,EAAOvQ,eAAqC,KAAXuQ,EACnC,OAAOA,EAETA,EAAS/F,OAAO+F,EAAOlQ,QAAQ,IAAK,IAAIA,QAAQ,IAAK,eACjC6E,IAAXqL,GAAkC,MAAVA,IACjCA,EAAS,IAEX,OAAO7Q,KAAK8Q,YAAc9Q,KAAK+Q,gBAAL,UAAsBF,SAAtB,aAAsB,EAAQ9F,eAAe,UAAhE,UAA2E8F,SAA3E,aAA2E,EAAQ9F,eAAe,WApH9G,qCAuHG,SAAyB9C,GACvB,OAAOA,EAAS+I,WAAWhR,KAAK+Q,eAAgB,IAAIC,WAAW,IAAK,MAxHzE,0BA2HG,WAAkB,MAChB,iBAAOhR,KAAKkI,YAAYD,gBAAxB,QAAoC,SA5HzC,gCAgIG,WACMjI,KAAKiR,YAAkC,MAApBjR,KAAKiR,YAAkD,IAA5BnG,OAAO9K,KAAKiR,YAC5DjR,KAAK0P,WAAa1P,KAAK2Q,YAAY3Q,KAAKiR,YAExCjR,KAAK0P,WAAa1P,KAAK2Q,YAAY,MApI1C,qBAwIE,WACE3Q,KAAK0P,WAAa1P,KAAK2Q,YAAY3Q,KAAKiR,gBAzI5C,GAA2C,SACjC,gBAAP,kB,iCACwB,gBAAxB,eAAK,CAAEtJ,SAAS,K,kCACM,gBAAtB,eAAK,CAAEA,QAAS,M,gCACS,gBAAzB,eAAK,CAAEA,SAAS,K,+BAGjB,gBADE,uB,kCA0HD,gBADA,eAAM,e,iCAOL,MAtIiB,EAAa,gBADjC,QACoB,WClBmX,I,wBCQpYhE,EAAY,eACd,EACA,EACA,GACA,EACA,KACA,WACA,MAIa,EAAAA,E,gCCgQM,EAArB,yG,0BAgBU,EAAAuN,SAAU,EAEV,EAAA9E,QAAU,KACV,EAAAkB,QAAU,KAnBpB,wDAqBE,WAAqB,WACnB,OAAOtN,KAAKmR,WAAWxL,KAAI,SAACmG,GAAa,MACjCrJ,EAAOqJ,EAAkBrJ,IACzB2O,GAAS,YAAKA,cAAL,eAAa3K,QAAO,SAACxH,GAAD,OAASA,EAAIwD,MAAQA,OAAQ,GAC1D8L,EAAU,eAAW,EAAK9J,MAAOhC,GACjC4O,EAAW,EAAKC,YAAY7O,GAC5B0M,EAAa,EAAKoC,cAAchD,EAAS8C,GAC/C,uBACED,SACAjF,WAAiB,OAANiF,QAAM,IAANA,OAAA,EAAAA,EAAQzT,QAAS,EAC5B4Q,UACAY,cACGrD,QAjCX,qBAsCE,WACE,MAAO,CACL0F,oBAAqB,UAAF,OAAYxR,KAAK+O,QAAjB,wBAxCzB,yBA4CE,WACE,MAAsC,WAA/B/O,KAAKyR,gBAAgBC,QA7ChC,2BAgDE,SAAenD,EAAS8C,GACtB,OAAKrR,KAAKoP,eACHb,EAAU8C,EAAW,EAAX,UAAkBA,EAAlB,sBAAiD,8BADlC,KAjDpC,4BAqDE,WAAqD,IAArCM,EAAqC,wDACnD,QAAI3R,KAAK4R,eACSpM,IAAdmM,IAEOA,aAAqBE,SACvBF,EAAU3R,KAAKyE,OAEfkN,KA5Db,wBAgEE,WAAgD,IAApCA,IAAoC,yDAC9C,YAAkBnM,IAAdmM,IAEOA,aAAqBE,SACvBF,EAAU3R,KAAKyE,OAEfkN,KAtEb,sBA0EE,SAAUG,GACR,GAAmB,aAAfA,EAAM5R,KAAqB,CAC7B,IAAM6R,EAAW/R,KAAKyE,MAAMqN,EAAMrP,KAClC,GAAwB,kBAAbsP,GAAyBA,aAAoBC,OACtD,OAAOlH,OAAO9K,KAAKyE,MAAMqN,EAAMrP,MAGnC,GAAIqP,EAAMrP,IACR,OAAOzC,KAAKyE,MAAMqN,EAAMrP,KACnB,GAAIqP,EAAMrN,MACf,OAAOqN,EAAMrN,MAAMkI,MAEnB,MAAM,IAAI1C,MAAJ,mCACwB6H,EAAMpM,MAD9B,iCAtFZ,6BAgGE,SAAiBuM,GACf,OAAQA,GAAa,OAjGzB,8BAoGE,SAAkBH,GAChB,GAAIA,EAAMrP,IACR,OAAOzC,KAAKyE,MAAMqN,EAAMrP,KACnB,GAAIqP,EAAMI,KACf,OAAOJ,EAAMI,KAEb,MAAM,IAAIjI,MAAJ,mCACwB6H,EAAMpM,MAD9B,iCA1GZ,4BAiHE,SAAgByC,EAAO2D,GACrB,IAAMqG,EAAiBrG,EAAUzM,QAAQ8I,EAAMiK,eAC/CpS,KAAK6N,SAAS/B,EAAWqG,EAAezN,SAnH5C,sBAsHE,SAAUoN,EAAiBO,GACzB,IAAM3N,EAA4B,WAAfoN,EAAM5R,MAAqBmS,GAAU,EAAIA,EAE5D,IAAIP,EAAMrP,IAQH,IAAIqP,EAAMrN,MAIf,OAHIqN,EAAM/L,UACR+L,EAAM/L,SAAS/F,KAAKyE,MAAMqN,EAAMrP,KAAMiC,GAEjCoN,EAAMrN,MAAMmI,IAAIlI,GAEvB,MAAM,IAAIuF,MAAJ,mCAAsC6H,EAAMpM,MAA5C,+BAbFoM,EAAM/L,UACR+L,EAAM/L,SAAS/F,KAAKyE,MAAMqN,EAAMrP,KAAMiC,GAGxC,IACE1E,KAAKyE,MAAMqN,EAAMrP,KAAOiC,EACxB,MAAO4N,OAhIf,mBA2IE,SAAO7P,GACL,OAAIzC,KAAKyE,OAAS,iBAAkBzE,KAAKyE,MACvC,UAAUzE,KAAKuS,SAAf,YAA2BvS,KAAKyE,MAAM+N,aAAa/P,KAGjD,yBAAYA,KACdA,EAAM,IAAarD,SAAS,IAG1BY,KAAKuS,SACP,UAAUvS,KAAKuS,SAAf,YAA2B9P,GAG7B,UAAUA,MAxJd,uBA2JE,SAAWA,GACT,GAAIzC,KAAKyE,OAAS,iBAAkBzE,KAAKyE,MACvC,gBAAUzE,KAAKyE,MAAM+N,aAAa/P,MA7JxC,wBAkKE,SAAYA,GACV,OAAOzC,KAAKqM,MAAM5J,GAAO,WAnK7B,yBAsKE,WACE,IAAMgQ,EAAazS,KAAK0S,IAClBC,EAAcF,EAAWG,YAAcH,EAAWI,YACpDF,IAAa3S,KAAKkR,SAAU,KAzKpC,yBA4KE,SAAaY,EAAiBO,GACxBrS,KAAKoP,gBACPpP,KAAKoM,QAAU,MAGb0F,GAAK,OAAIA,QAAJ,IAAIA,KAAOvC,QAClBuC,EAAMvC,OAAO8C,KAlLnB,wBAuLE,SAAYvG,GAEV,KAAIA,EAAUY,YAAcZ,EAAUiB,UAAYjB,EAAUrH,OAA5D,CACA,IAAMqO,EAAQ9S,KAAKqM,MAAMP,EAAUrJ,KACnCzC,KAAKoM,QAAU0G,EACf,IAAMC,EAAMC,SAASC,eAAeH,GAChCC,GAAKA,EAAIG,WA7LjB,yBAgME,SAAazQ,GAAW,MAChB0Q,EAAK,eAAWnT,KAAKyE,MAAOhC,GAClC,OAAO0Q,EAAKA,IAAM,UAAAnT,KAAKyE,MAAMhC,UAAX,eAAiB9E,SAAU,GAAKwV,IAlMtD,4BAqME,SAAgBrH,GACd,OAAOA,EAAUsH,QAAV,eAAwBtH,EAAUsH,SAAW,KAtMxD,wBAgNE,SAAYC,GACV,GAAKrT,KAAKoP,cAAV,CAEA,IAAMkE,EAAQD,EAAIlN,MAAK,SAACoN,GAAD,MAAO,QAASA,KACvC,GAAKD,EAAL,CACA,IAAMP,EAAMC,SAASC,eAAT,cAA+BjT,KAAKqM,MAAMiH,EAAM7Q,OACvDsQ,GACLA,EAAIS,eAAe,CAAEC,SAAU,SAAUC,MAAO,YAvNpD,qBA0NE,WACE1T,KAAK2T,gBA3NT,qBA8NE,WAAO,WACL3T,KAAK2T,cACL1D,OAAO2D,iBAAiB,UAAU,kBAAM,EAAKD,qBAhOjD,GAAqD,QAC3C,gBAAP,kB,iCACO,gBAAP,kB,4BACqB,gBAArB,eAAK,CAAEhM,QAAS,K,8BACT,gBAAP,kB,6BAED,gBADC,eAAK,CAAEA,QAAS,WAAQ,OAAOkM,KAAKC,U,+BAGX,gBAAzB,eAAK,CAAEnM,SAAS,K,+BAGjB,gBADC,uB,kCAID,gBADC,uB,sCAmMD,gBADC,eAAM,oBAAqB,CAAEoM,MAAM,K,yBASnC,MAxNkB,EAAO,gBAb3B,eAAU,CACTnM,WAAY,CACVoM,iBAAA,KACAC,mBAAA,KACAC,oBAAA,KACAC,eAAA,KACAC,eAAA,KACAC,cAAA,EACAC,mBAAA,KACAC,aAAA,SAIiB,WCnR6W,ICQ9X,G,UAAY,eACd,EACAtT,EACAgB,GACA,EACA,KACA,WACA,OAIa,S,2CCnBf,W","file":"js/chunk-7de051ac.e8221625.js","sourcesContent":["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!./AppCollapseCard.vue?vue&type=style&index=0&id=0f7c2052&lang=scss&scoped=true&\"","\"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\");","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('TheILP',{attrs:{\"ilpPortfolios\":_vm.ilpPortfolios,\"rcmdIlpProducts\":_vm.rcmdIlpProducts,\"client2Included\":_vm.kycForm.hasClient2,\"ilpFundList\":_vm.ilpFundList,\"limitation\":{portfolio: 3, funds: 8}},on:{\"save\":_vm.saveIlp}})],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._t(\"default\",function(){return [_vm._v(\"ILP/Sub funds\")]}),_c('button',{staticClass:\"add-plan btn-default\",attrs:{\"disabled\":_vm.disabledAddPortfolio},on:{\"click\":_vm.createPortfolio}},[_vm._v(\"Add Fund\")])],2),_vm._l((_vm.portfoliosToDisplay),function(card,index){return [_c('AppCollapseCard',{key:(\"ilp-\" + index)},[_c('template',{slot:\"cardHeader\"},[_c('div',{staticClass:\"cardHeader\"},[_vm._v(_vm._s(_vm.getPortfolioTitle(card))+\" \")])]),_c('template',{slot:\"cardContent\"},[(card.funds && card.funds.length > 0)?_c('el-row',{key:(\"ilp-\" + index + \"-fund-title\"),staticClass:\"cardTitle\",attrs:{\"type\":\"flex\"}},[_c('el-col',[_vm._v(\"Fund Name\")]),_c('el-col',{attrs:{\"span\":8}},[_vm._v(\"Investment Amount ($)\")])],1):_vm._e(),_vm._l((card.funds),function(fund,fundIndex){return _c('el-row',{key:(\"ilp-\" + index + \"-fund-\" + fundIndex),staticClass:\"cardContent\",attrs:{\"type\":\"flex\"}},[_c('el-col',[_vm._v(_vm._s(fund.name))]),_c('el-col',{attrs:{\"span\":8}},[_vm._v(_vm._s(_vm.convertToCurrencyFormat(fund.invAmt)))])],1)})],2),_c('template',{slot:\"cardFooter\"},[_c('div',{staticClass:\"cardFooter\"},[_c('button',{staticClass:\"btn-danger\",on:{\"click\":function($event){return _vm.removePortfolio(card)}}},[_vm._v(\"Delete Fund\")]),_c('button',{staticClass:\"btn-default\",on:{\"click\":function($event){return _vm.editPortfolio(card)}}},[_vm._v(\"Edit Fund\")])])])],2)]}),(_vm.showModal)?_c('TheILPDetails',{attrs:{\"inputModel\":_vm.toEditPortfolioModel,\"rcmdIlpProducts\":_vm.rcmdIlpProducts,\"isEditMode\":_vm.isEdit,\"ilpFundList\":_vm.ilpFundList,\"maxFundsToAdd\":_vm.maxFundsCanAdd},on:{\"close\":function($event){_vm.showModal = false},\"saveProduct\":function($event){return _vm.saveProduct($event)}}}):_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('el-card',{staticClass:\"box-card\",attrs:{\"shadow\":\"hover\"}},[_c('el-collapse',[_c('el-collapse-item',[_c('template',{slot:\"title\"},[_vm._t(\"cardHeader\")],2),_vm._t(\"cardContent\"),_c('el-footer',[_vm._t(\"cardFooter\")],2)],2)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { Vue } from 'vue-property-decorator'\n\nexport default class AppCollapseCard extends Vue {\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!./AppCollapseCard.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!./AppCollapseCard.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./AppCollapseCard.vue?vue&type=template&id=0f7c2052&scoped=true&\"\nimport script from \"./AppCollapseCard.vue?vue&type=script&lang=ts&\"\nexport * from \"./AppCollapseCard.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./AppCollapseCard.vue?vue&type=style&index=0&id=0f7c2052&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 \"0f7c2052\",\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('AppDialog',{attrs:{\"size\":'medium'},on:{\"close\":_vm.hideModal}},[_c('template',{slot:\"header\"},[_vm._v(_vm._s(_vm.isEditMode ? 'Edit Fund' : 'Add Fund'))]),_c('div',{staticClass:\"form-body\",attrs:{\"slot\":\"body\"},slot:\"body\"},[_c('AppForm',{attrs:{\"uniqueID\":\"ilp-product\",\"structures\":_vm.portfolioStructure,\"model\":_vm.portfolioModel,\"columns\":1}}),_vm._v(\" Select Funds \"),_vm._l((_vm.portfolioModel.funds),function(fund,index){return _c('div',{key:index,staticClass:\"form-body rider-item\"},[_c('div',{staticClass:\"wrapper-delete\"},[_c('button',{staticClass:\"btn-danger\",attrs:{\"type\":\"button\"},on:{\"click\":function($event){return _vm.deleteFund(index)}}},[_vm._v(\" Delete Fund \")])]),_c('div',{staticClass:\"fund-container\"},[_c('div',{staticClass:\"fund-selection input-group-with-theme\"},[_c('label',{staticClass:\"label\"},[_vm._v(\"Fund Recommended\")]),_c('el-button',{staticClass:\"selectBtn\",attrs:{\"data-test\":(\"portfolio-\" + (index+1) + \"-fund\")},on:{\"click\":function($event){return _vm.portfolioFundOnClick(index)}}},[_c('div',{staticClass:\"infoContainer\"},[_c('div',{staticClass:\"fundName\",class:{placeholder:!fund.name}},[_vm._v(_vm._s(fund.name))]),_c('i',{staticClass:\"el-icon-arrow-down dropdownArrow\"})])])],1),_c('AppForm',{staticClass:\"fund-investment\",attrs:{\"uniqueID\":(\"new-fund-\" + index),\"structures\":_vm.fundStructure,\"model\":fund,\"columns\":1}})],1)])}),_c('button',{staticClass:\"btn-default btn-add-rider\",attrs:{\"disabled\":_vm.portfolioModel.funds.length === _vm.maxFundsToAdd},on:{\"click\":_vm.addFund}},[_vm._v(\" Add Fund \")])],2),_c('template',{slot:\"footer\"},[_c('button',{staticClass:\"btn-default\",on:{\"click\":_vm.saveChanges}},[_vm._v(_vm._s(_vm.isEditMode ? 'Save Changes' : 'Add'))])])],2),(_vm.fundSelectionDialog)?_c('AppDialog',{attrs:{\"hideFooter\":true,\"size\":'small',\"append-to-body\":\"\"},on:{\"close\":function($event){_vm.fundSelectionDialog = false}}},[_c('template',{slot:\"header\"},[_vm._v(\"Search Product\")]),_c('div',{attrs:{\"slot\":\"body\"},slot:\"body\"},[_c('div',{staticClass:\"searchBar\"},[_c('el-input',{attrs:{\"type\":\"text\",\"data-test\":\"search-ilp-product\",\"placeholder\":\"Search product..\"},model:{value:(_vm.searchText),callback:function ($$v) {_vm.searchText=$$v},expression:\"searchText\"}})],1),_c('div',{staticClass:\"scrollerContainer\"},[_c('RecycleScroller',{staticClass:\"scroller\",attrs:{\"items\":_vm.fundList,\"item-size\":32,\"key-field\":\"oid\"},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar item = ref.item;\nreturn [_c('el-button',{staticClass:\"fund\",on:{\"click\":function($event){return _vm.selectRecommendedFund(item.name)}}},[_vm._v(_vm._s(item.name))])]}}],null,false,578860409)})],1)])],2):_vm._e()],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\nimport { Vue, Prop, Component } from 'vue-property-decorator'\nimport AppForm from '@core/components/AppForm.vue'\nimport { RecycleScroller } from 'vue-virtual-scroller'\nimport 'vue-virtual-scroller/dist/vue-virtual-scroller.css'\nimport AppDialog from '@core/components/AppDialog.vue'\nimport { FormStructure } from '@master/model/structure/FormStructure'\nimport { UIService } from '@core/services/UIService'\nimport { inject } from 'inversify-props'\nimport { SharedVariable } from '@core/model/SharedVariable'\nimport ILPPortfolioV2, { Fund } from '@master/model/kyc-form/ILPPortfolioV2'\nimport { cloneDeep } from 'lodash/fp'\n\nimport { ProductMeta } from '@master/model/common/ProductMeta'\nimport { BasicProductV2 } from '@master/model/kyc-form/product/BasicProductV2'\n\n@Component({\n components: {\n AppForm,\n RecycleScroller,\n AppDialog\n }\n})\n\nexport default class TheILPDetails extends Vue {\n @Prop() inputModel: ILPPortfolioV2\n @Prop() rcmdIlpProducts: BasicProductV2[]\n @Prop({ default: false }) isEditMode: boolean\n @Prop() ilpFundList: ProductMeta[]\n @Prop({ default: 8 }) maxFundsToAdd: number\n\n @inject()\n private sharedVariable: SharedVariable\n\n uiService: UIService\n\n private portfolioModel: ILPPortfolioV2 = new ILPPortfolioV2();\n private fundSelectionDialog = false\n private searchText = ''\n private selectedFundIndex = undefined\n private readonly fundNumber = 8\n\n get portfolioStructure (): FormStructure {\n return [\n {\n label: 'Product Name',\n key: 'oid',\n options: this.rcmdIlpProducts.map(prod => {\n return {\n label: prod.productName,\n value: prod.oid\n }\n }),\n onChange: (oldVal, newVal) => {\n const selectedProduct = this.rcmdIlpProducts.find(product => product.oid === newVal)\n this.portfolioModel.name = selectedProduct?.productName\n this.portfolioModel.issuerOid = selectedProduct?.issuerOid\n this.portfolioModel.rcmdReferenceId = selectedProduct?.referenceId\n }\n }\n ]\n }\n\n get fundStructure (): FormStructure {\n return [\n {\n label: 'Investment Amount ($)',\n key: 'invAmt',\n type: 'currency'\n }\n ]\n }\n\n get fundList () {\n const list = this.ilpFundList.filter(product => product.issuer_oid === this.portfolioModel.issuerOid)\n if (this.searchText.length === 0) {\n return list\n }\n return list.filter(search => {\n return search.name.toLowerCase().includes(this.searchText.toLowerCase())\n })\n }\n\n portfolioFundOnClick (fundIndex) {\n this.selectedFundIndex = fundIndex\n this.fundSelectionDialog = true\n }\n\n deleteFund (index) {\n this.portfolioModel.funds.splice(index, 1)\n }\n\n addFund () {\n const newFund: Fund =\n {\n name: '',\n invAmt: 0,\n frequency: '',\n paymentMode: '',\n for: '',\n choice: ''\n }\n this.portfolioModel.funds.push(newFund)\n }\n\n selectRecommendedFund (fundName) {\n this.portfolioModel.funds[this.selectedFundIndex].name = fundName\n this.fundSelectionDialog = false\n }\n\n saveChanges () {\n if (!this.portfolioModel.oid || this.portfolioModel.oid === '') {\n this.uiService.alert.show({\n type: 'error',\n message: 'Please key in valid product name.'\n })\n return\n }\n this.$emit('saveProduct', this.portfolioModel)\n }\n\n hideModal () {\n this.$emit('close')\n }\n\n mounted () {\n this.uiService = this.sharedVariable.uiService\n // populates the model with the first ilp rcmd product, if any\n // this is done because on ipad the fund list does not get populated by default\n if (this.rcmdIlpProducts?.length > 0) {\n this.portfolioModel.name = this.rcmdIlpProducts[0].productName\n this.portfolioModel.issuerOid = this.rcmdIlpProducts[0].issuerOid\n this.portfolioModel.rcmdReferenceId = this.rcmdIlpProducts[0].referenceId\n }\n }\n\n created () {\n if (this.inputModel) {\n this.portfolioModel = cloneDeep(this.inputModel)\n } else {\n this.portfolioModel = new ILPPortfolioV2()\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!./TheILPDetails.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!./TheILPDetails.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./TheILPDetails.vue?vue&type=template&id=6c1ed541&scoped=true&\"\nimport script from \"./TheILPDetails.vue?vue&type=script&lang=ts&\"\nexport * from \"./TheILPDetails.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./TheILPDetails.vue?vue&type=style&index=0&id=6c1ed541&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 \"6c1ed541\",\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\nimport { Component, Prop, Vue } from 'vue-property-decorator'\nimport { inject } from 'inversify-props'\nimport AppCollapseCard from '@core/components/AppCollapseCard.vue'\nimport { convertToCurrencyFormat } from '@core/tools/Formatter'\nimport TheILPDetails from './TheILPDetails.vue'\nimport { cloneDeep } from 'lodash'\nimport ILPPortfolioV2 from '@master/model/kyc-form/ILPPortfolioV2'\nimport { IProjectInfo } from '@master/config/IProjectInfo'\nimport { BasicProductV2 } from '@master/model/kyc-form/product/BasicProductV2'\nimport { ProductMeta } from '@master/model/common/ProductMeta'\n\n@Component({\n components: {\n AppCollapseCard,\n TheILPDetails\n }\n})\nexport default class TheILP extends Vue {\n @Prop() ilpPortfolios: ILPPortfolioV2[]\n @Prop() rcmdIlpProducts: BasicProductV2[]\n @Prop({ default: false }) client2Included: boolean\n @Prop() ilpFundList: ProductMeta[]\n @Prop() limitation?: { portfolio: number; funds: number }\n\n private showModal = false\n private isEdit = false\n private editingIndex = undefined\n private toEditPortfolioModel = new ILPPortfolioV2()\n\n @inject()\n private projectInfo: IProjectInfo\n\n convertToCurrencyFormat (value) {\n const { currency } = this.projectInfo\n return convertToCurrencyFormat(value, currency)\n }\n\n saveProduct (event) {\n const newProduct = cloneDeep(event) as ILPPortfolioV2\n if (this.isEdit) {\n this.ilpPortfolios.splice(this.editingIndex, 1, newProduct)\n } else {\n this.ilpPortfolios.push(newProduct)\n }\n\n this.$emit('save')\n this.isEdit = false\n this.showModal = false\n }\n\n get portfoliosToDisplay () {\n return this.ilpPortfolios.filter(card => {\n if (!this.client2Included && card.for === 'C2') return false\n if (!card.oid || !card.name) return false\n return true\n })\n }\n\n get disabledAddPortfolio () {\n if (typeof this.limitation === 'undefined') {\n return false\n }\n const maxNum = this.limitation.portfolio\n return this.portfoliosToDisplay.length === maxNum\n }\n\n get maxFundsCanAdd () {\n if (typeof this.limitation === 'undefined') {\n return undefined\n }\n\n return this.limitation.funds\n }\n\n getPortfolioTitle (target: any) {\n if (!target) return 'Invalid Card'\n const owner = target.for ? `(${target.for})` : ''\n return `${target.name} ${owner}`\n }\n\n createPortfolio () {\n // no more empty slot to create\n this.toEditPortfolioModel = new ILPPortfolioV2()\n this.isEdit = false\n this.showModal = true\n }\n\n editPortfolio (portfolio) {\n this.toEditPortfolioModel = Object.assign(new ILPPortfolioV2(), portfolio)\n this.editingIndex = this.ilpPortfolios.findIndex(_portfolio => portfolio === _portfolio)\n this.isEdit = true\n this.showModal = true\n }\n\n removePortfolio (portfolio) {\n if (!confirm('Confirm to remove this plan?')) return\n const portfolioIndex = this.ilpPortfolios.findIndex(_portfolio => portfolio === _portfolio)\n this.ilpPortfolios.splice(portfolioIndex, 1)\n this.$emit('save')\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!./TheILP.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!./TheILP.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./TheILP.vue?vue&type=template&id=62c1846e&scoped=true&\"\nimport script from \"./TheILP.vue?vue&type=script&lang=ts&\"\nexport * from \"./TheILP.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./TheILP.vue?vue&type=style&index=0&id=62c1846e&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 \"62c1846e\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { Component, Vue } from 'vue-property-decorator'\nimport { namespace } from 'vuex-class'\nimport KYCForm from '@company-common/model/kyc-form/KYCForm'\nimport 'vue-virtual-scroller/dist/vue-virtual-scroller.css'\nimport { ProductMetaList } from '@master/model/common/ProductMetaList'\nimport TheILP from '@core/components/basicRecommendation/TheILP.vue'\n\nconst kycFormStore = namespace('KYCFormStore')\n\n@Component({\n components: {\n TheILP\n }\n})\nexport default class TheILPSubfunds extends Vue {\n @kycFormStore.State\n kycForm!: KYCForm;\n\n@kycFormStore.State\n productMetaList: ProductMetaList\n\n @kycFormStore.Action\n private fetchRecommendedProducts!: () => void\n\n get ilpPortfolios () {\n return this.kycForm.newIlpPortfolios.ilpPortfolios\n }\n\n get rcmdIlpProducts () {\n return this.kycForm.recommendations.validBasicProduct\n .filter(product => product.productType?.toLowerCase().includes('ilp') ||\n product.productCategory?.toLocaleLowerCase().includes('investment-linked plan'))\n }\n\n get ilpFundList () {\n return this.productMetaList.getILPProductList()\n }\n\n saveIlp () {\n this.$emit('save')\n }\n\n created () {\n this.fetchRecommendedProducts()\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!./TheILPSubfunds.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!./TheILPSubfunds.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./TheILPSubfunds.vue?vue&type=template&id=0640df70&scoped=true&\"\nimport script from \"./TheILPSubfunds.vue?vue&type=script&lang=ts&\"\nexport * from \"./TheILPSubfunds.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./TheILPSubfunds.vue?vue&type=style&index=0&id=0640df70&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 \"0640df70\",\n null\n \n)\n\nexport default component.exports","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","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 const convertToCurrencyFormat = (value, currency = '') => {\n if (!value && value !== 0) {\n return ''\n }\n\n return currency + Number(value).toLocaleString()\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!./TheILP.vue?vue&type=style&index=0&id=62c1846e&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!./TheILPDetails.vue?vue&type=style&index=0&id=6c1ed541&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","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!./TheILPSubfunds.vue?vue&type=style&index=0&id=0640df70&lang=scss&scoped=true&\""],"sourceRoot":""}