@1hive/connect-core
Version:
Access and interact with Aragon Organizations and their apps.
43 lines • 1.62 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 _metadata;
import { resolveArtifact, resolveManifest } from '../utils/metadata';
export default class Repo {
constructor(data, metadata) {
_metadata.set(this, void 0);
__classPrivateFieldSet(this, _metadata, metadata);
this.address = data.address;
this.contentUri = data.contentUri;
this.lastVersion = data.lastVersion;
this.name = data.name;
this.registry = data.registry;
this.registryAddress = data.registryAddress;
}
static async create(data, organization) {
const artifact = await resolveArtifact(organization.connection.ipfs, data);
const manifest = await resolveManifest(organization.connection.ipfs, data);
return new Repo(data, [artifact, manifest]);
}
get artifact() {
return __classPrivateFieldGet(this, _metadata)[0];
}
get manifest() {
return __classPrivateFieldGet(this, _metadata)[1];
}
get roles() {
return this.artifact.roles;
}
}
_metadata = new WeakMap();
//# sourceMappingURL=Repo.js.map