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

1 lines • 2.22 kB
{"version":3,"file":"DidJwk.mjs","names":[],"sources":["../../../../../src/modules/dids/methods/jwk/DidJwk.ts"],"sourcesContent":["import { JsonEncoder } from '../../../../utils'\nimport { PublicJwk } from '../../../kms'\nimport { parseDid } from '../../domain/parse'\nimport { getDidJwkDocument } from './didJwkDidDocument'\n\nexport class DidJwk {\n private constructor(\n public readonly did: string,\n public readonly publicJwk: PublicJwk\n ) {}\n\n public get allowsEncrypting() {\n return this.publicJwk.toJson().use === 'enc' || this.publicJwk.supportedEncryptionKeyAgreementAlgorithms.length > 0\n }\n\n public get allowsSigning() {\n return this.publicJwk.toJson().use === 'sig' || this.publicJwk.supportedSignatureAlgorithms.length > 0\n }\n\n public static fromDid(did: string) {\n const parsed = parseDid(did)\n const jwkJson = JsonEncoder.fromBase64Url(parsed.id)\n\n // This validates the jwk\n const publicJwk = PublicJwk.fromUnknown(jwkJson)\n\n return new DidJwk(did, publicJwk)\n }\n\n /**\n * A did:jwk DID can only have one verification method, and the verification method\n * id will always be `<did>#0`.\n */\n public get verificationMethodId() {\n return `${this.did}#0`\n }\n\n public static fromPublicJwk(publicJwk: PublicJwk) {\n const did = `did:jwk:${JsonEncoder.toBase64Url(publicJwk.toJson({ includeKid: false }))}`\n\n return new DidJwk(did, publicJwk)\n }\n\n public get jwkJson() {\n return this.publicJwk.toJson()\n }\n\n public get didDocument() {\n return getDidJwkDocument(this)\n }\n}\n"],"mappings":";;;;;;;;;;AAKA,IAAa,SAAb,MAAa,OAAO;CAClB,AAAQ,YACN,AAAgB,KAChB,AAAgB,WAChB;EAFgB;EACA;;CAGlB,IAAW,mBAAmB;AAC5B,SAAO,KAAK,UAAU,QAAQ,CAAC,QAAQ,SAAS,KAAK,UAAU,0CAA0C,SAAS;;CAGpH,IAAW,gBAAgB;AACzB,SAAO,KAAK,UAAU,QAAQ,CAAC,QAAQ,SAAS,KAAK,UAAU,6BAA6B,SAAS;;CAGvG,OAAc,QAAQ,KAAa;EACjC,MAAM,SAAS,SAAS,IAAI;EAC5B,MAAM,UAAU,YAAY,cAAc,OAAO,GAAG;AAKpD,SAAO,IAAI,OAAO,KAFA,UAAU,YAAY,QAAQ,CAEf;;;;;;CAOnC,IAAW,uBAAuB;AAChC,SAAO,GAAG,KAAK,IAAI;;CAGrB,OAAc,cAAc,WAAsB;AAGhD,SAAO,IAAI,OAFC,WAAW,YAAY,YAAY,UAAU,OAAO,EAAE,YAAY,OAAO,CAAC,CAAC,IAEhE,UAAU;;CAGnC,IAAW,UAAU;AACnB,SAAO,KAAK,UAAU,QAAQ;;CAGhC,IAAW,cAAc;AACvB,SAAO,kBAAkB,KAAK"}