UNPKG

@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
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