rolesContains{Us, Member} doesn't call wasm

This commit is contained in:
NicolasCantu 2025-03-12 15:45:30 +01:00
parent e62a04ea57
commit 1952ade39c

View File

@ -691,24 +691,27 @@ export default class Services {
return true; return true;
} }
rolesContainsUs(roles: any): boolean { rolesContainsUs(roles: Record<string, RoleDefinition>): boolean {
let us;
try { try {
this.sdkClient.roles_contains_us(JSON.stringify(roles)); us = this.sdkClient.get_member();
} catch (e) { } catch (e) {
return false; throw e;
} }
return true; return this.rolesContainsMember(roles, us.sp_addresses);
} }
rolesContainsMember(roles: any, member: string[]): boolean { rolesContainsMember(roles: Record<string, RoleDefinition>, member: string[]): boolean {
try { let res = false;
this.sdkClient.roles_contains_member(JSON.stringify(roles), member); for (const [roleName, roleDef] of Object.entries(roles)) {
} catch (e) { for (const otherMember of roleDef.members) {
return false; if (res) { return true }
res = this.compareMembers(member, otherMember.sp_addresses);
}
} }
return true; return res;
} }
async dumpWallet() { async dumpWallet() {
@ -1210,7 +1213,7 @@ export default class Services {
try { try {
const roles = this.getRoles(process); const roles = this.getRoles(process);
if (this.rolesContainsUs(roles)) { if (roles && this.rolesContainsUs(roles)) {
this.myProcesses.add(processId); this.myProcesses.add(processId);
} }
} catch (e) { } catch (e) {