@credo-ts/core
Version:
<p align="center"> <br /> <img alt="Credo Logo" src="https://github.com/openwallet-foundation/credo-ts/blob/c7886cb8377ceb8ee4efe8d264211e561a75072d/images/credo-logo.png" height="250px" /> </p> <h1 align="center"><b>Credo - Core</b></h1
70 lines (69 loc) • 3.39 kB
JavaScript
import { asArray } from "../../../utils/array.mjs";
import "../../../utils/index.mjs";
import { VerificationMethod } from "./verificationMethod/VerificationMethod.mjs";
import "./verificationMethod/index.mjs";
import { DidDocument } from "./DidDocument.mjs";
//#region src/modules/dids/domain/DidDocumentBuilder.ts
var DidDocumentBuilder = class {
constructor(id) {
this.didDocument = new DidDocument({ id });
}
addContext(context) {
const currentContexts = asArray(this.didDocument.context);
if (currentContexts.includes(context)) return this;
this.didDocument.context = [...currentContexts, context];
return this;
}
addController(controller) {
const currentControllers = asArray(this.didDocument.controller);
if (currentControllers.includes(controller)) return this;
this.didDocument.controller = [...currentControllers, controller];
return this;
}
addService(service) {
if (!this.didDocument.service) this.didDocument.service = [];
this.didDocument.service.push(service);
return this;
}
addVerificationMethod(verificationMethod) {
if (!this.didDocument.verificationMethod) this.didDocument.verificationMethod = [];
this.didDocument.verificationMethod.push(verificationMethod instanceof VerificationMethod ? verificationMethod : new VerificationMethod(verificationMethod));
return this;
}
addAuthentication(authentication) {
if (!this.didDocument.authentication) this.didDocument.authentication = [];
const verificationMethod = authentication instanceof VerificationMethod || typeof authentication === "string" ? authentication : new VerificationMethod(authentication);
this.didDocument.authentication.push(verificationMethod);
return this;
}
addAssertionMethod(assertionMethod) {
if (!this.didDocument.assertionMethod) this.didDocument.assertionMethod = [];
const verificationMethod = assertionMethod instanceof VerificationMethod || typeof assertionMethod === "string" ? assertionMethod : new VerificationMethod(assertionMethod);
this.didDocument.assertionMethod.push(verificationMethod);
return this;
}
addCapabilityDelegation(capabilityDelegation) {
if (!this.didDocument.capabilityDelegation) this.didDocument.capabilityDelegation = [];
const verificationMethod = capabilityDelegation instanceof VerificationMethod || typeof capabilityDelegation === "string" ? capabilityDelegation : new VerificationMethod(capabilityDelegation);
this.didDocument.capabilityDelegation.push(verificationMethod);
return this;
}
addCapabilityInvocation(capabilityInvocation) {
if (!this.didDocument.capabilityInvocation) this.didDocument.capabilityInvocation = [];
const verificationMethod = capabilityInvocation instanceof VerificationMethod || typeof capabilityInvocation === "string" ? capabilityInvocation : new VerificationMethod(capabilityInvocation);
this.didDocument.capabilityInvocation.push(verificationMethod);
return this;
}
addKeyAgreement(keyAgreement) {
if (!this.didDocument.keyAgreement) this.didDocument.keyAgreement = [];
const verificationMethod = keyAgreement instanceof VerificationMethod || typeof keyAgreement === "string" ? keyAgreement : new VerificationMethod(keyAgreement);
this.didDocument.keyAgreement.push(verificationMethod);
return this;
}
build() {
return this.didDocument;
}
};
//#endregion
export { DidDocumentBuilder };
//# sourceMappingURL=DidDocumentBuilder.mjs.map