#0
nonstandard
0.00004000 BSV
Q!B).! 2ôÁkeûÅù³Ü2÷6þ¥ûA]!ƹȤ|jY{3`aS¹Y¸>çâ,$¸QaR®M² {"__cls":"class KYCProcessSC {\n constructor(\n owners = [],\n agent,\n fund,\n requirements = []\n ) {\n this._owners = owners;\n this.agent = agent\n this.fund = fund\n this.requirements = requirements.map(req => [req, '', '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[1] = documentId\n curRequirement[2] = 'Pending'\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[2] = 'Approved'\n if(this.requirements.every((r) => r[2] === '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[2] = '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([reqName, '', '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 }\n}","__index":{"obj":0},"__func":"constructor","__args":[["0342292e2100328cf49e1196c16b65fbc591adf9b3dc32f736fea5fb415d0e8091","03c6b9c8a47c0c6a17597b33608a6102ad53b9590b1e18b83e98e7e22c24b85161"],"8ceef6e87b844e9d9e71f5212cccd100af4b29508dadc278e2cf10158b98727b:0","84a40f59478f97102c93a05120ed8ac6163e15901a16a3567f13f344c9f7f18f:0",[["Passport","2 Years"]]]}u
https://whatsonchain.com/tx/6b1ef478d29090e211baccb9a5bef6d8ea1f091110ced7e79bab089616349a75