@1hive/connect-core
Version:
Access and interact with Aragon Organizations and their apps.
37 lines • 1.5 kB
JavaScript
var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, privateMap, value) {
if (!privateMap.has(receiver)) {
throw new TypeError("attempted to set private field on non-instance");
}
privateMap.set(receiver, value);
return value;
};
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, privateMap) {
if (!privateMap.has(receiver)) {
throw new TypeError("attempted to get private field on non-instance");
}
return privateMap.get(receiver);
};
var _organization;
export default class Permission {
constructor(data, organization) {
_organization.set(this, void 0);
__classPrivateFieldSet(this, _organization, organization);
this.allowed = data.allowed;
this.appAddress = data.appAddress;
this.granteeAddress = data.granteeAddress;
this.params = data.params;
this.roleHash = data.roleHash;
}
orgConnector() {
return __classPrivateFieldGet(this, _organization).connection.orgConnector;
}
async app() {
return this.orgConnector().appByAddress(__classPrivateFieldGet(this, _organization), this.appAddress);
}
async role() {
const roles = await this.orgConnector().rolesForAddress(__classPrivateFieldGet(this, _organization), this.appAddress);
return roles.find((role) => role.hash === this.roleHash);
}
}
_organization = new WeakMap();
//# sourceMappingURL=Permission.js.map