#0
nonstandard
0.00004000 BSV
Q!»ËKRr¤"Ë&ßUïn¥Ò(fF;ZüÛQó!¨MäâO<P{=s¨Ï§Èáå@6Qá4S4ãê½tÅR®Mø{"__cls":"class KYCProcessSC {\n constructor(owners = [], agent, fund, requirements = []) {\n this._owners = owners;\n this.agent = agent;\n this.fund = fund;\n this.requirements = requirements.map(req => [req[0] || '', req[1] || '', '', 'Not Uploaded']);\n this.kycOnboarded = false;\n }\n\n addOwners(publicKeys) {\n this._owners = [...new Set(this._owners.concat(publicKeys))];\n }\n\n uploadKYCRequirement(reqName, documentId) {\n const curRequirement = this.requirements.find(req => req[0] === reqName);\n if (!!curRequirement) {\n curRequirement[2] = documentId;\n curRequirement[3] = 'Uploaded';\n } else {\n throw new Error('No such requirement');\n }\n }\n\n approveKyc(reqName) {\n const curRequirement = this.requirements.find(req => req[0] === reqName);\n if (!!curRequirement) {\n curRequirement[3] = 'Approved';\n if (this.requirements.every(r => r[3] === 'Approved')) this.kycOnboarded = true;\n } else {\n throw new Error('No such requirement');\n }\n }\n\n rejectKyc(reqName) {\n const curRequirement = this.requirements.find(req => req[0] === reqName);\n if (!!curRequirement) {\n curRequirement[3] = 'Rejected';\n this.kycOnboarded = false;\n } else {\n throw new Error('No such requirement');\n }\n }\n\n addRequirement(reqName) {\n const curRequirement = this.requirements.find(req => req[0] === reqName);\n if (!!curRequirement) {\n throw new Error('Such requirement already exists');\n } else {\n this.requirements.push([curRequirement[0], curRequirement[1], '', 'Not Uploaded']);\n }\n }\n\n removeRequirement(reqName) {\n const curRequirementIndex = this.requirements.findIndex(req => req[0] === reqName);\n if (curRequirementIndex > -1) {\n this.requirements.splice(curRequirementIndex, 1);\n } else {\n throw new Error('No such requirement');\n }\n }\n}","__index":{"obj":0},"__func":"constructor","__args":[["03bbcb4b5272a422cb26df55ef6e1ea58684d228660e463b9f175afcdb51071cf3","03a84de4e24f3c507b8f3d7304a88ecfa7c8e1e5403651e1345334e3ea81bd74c5"],"b55f277875ad1bca2848daf848fdb051327ebeb5a413291d7cedd6f90b943ece:0","869428e525cb6b6451557aabdc77212bf711e9b34a32244a19f6cc3992be2c75:0",[["Passport","2 Years"]]]}u
https://whatsonchain.com/tx/b434d36107ef64ddc2f91c4b73385d6e7f75e54c22e44c119a309df23eb90fff