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 • 4.14 kB
{"version":3,"file":"W3cCredentialsModule.mjs","names":[],"sources":["../../../src/modules/vc/W3cCredentialsModule.ts"],"sourcesContent":["import type { DependencyManager, Module } from '../../plugins'\nimport {\n VERIFICATION_METHOD_TYPE_ED25519_VERIFICATION_KEY_2018,\n VERIFICATION_METHOD_TYPE_ED25519_VERIFICATION_KEY_2020,\n} from '../dids'\nimport { Ed25519PublicJwk } from '../kms'\nimport { JsonLdModuleConfig } from './jsonld'\nimport { W3cJwtCredentialService } from './jwt-vc'\nimport {\n SignatureSuiteRegistry,\n SignatureSuiteToken,\n type SuiteInfo,\n} from './linked-data-proofs/SignatureSuiteRegistry'\nimport { Ed25519Signature2018, Ed25519Signature2020 } from './linked-data-proofs/signature-suites'\nimport { W3cJsonLdCredentialService } from './linked-data-proofs/W3cJsonLdCredentialService'\nimport { W3cCredentialRepository } from './repository/W3cCredentialRepository'\nimport { W3cCredentialService } from './W3cCredentialService'\nimport { W3cCredentialsApi } from './W3cCredentialsApi'\nimport type { W3cCredentialsModuleConfigOptions } from './W3cCredentialsModuleConfig'\nimport { W3cCredentialsModuleConfig } from './W3cCredentialsModuleConfig'\n\n/**\n * @public\n */\nexport class W3cCredentialsModule implements Module {\n public readonly config: W3cCredentialsModuleConfig\n public readonly api = W3cCredentialsApi\n\n public constructor(config?: W3cCredentialsModuleConfigOptions) {\n this.config = new W3cCredentialsModuleConfig(config)\n }\n\n public register(dependencyManager: DependencyManager) {\n dependencyManager.registerSingleton(W3cCredentialService)\n dependencyManager.registerSingleton(W3cJwtCredentialService)\n dependencyManager.registerSingleton(W3cJsonLdCredentialService)\n dependencyManager.registerSingleton(W3cCredentialRepository)\n\n // Register the config\n dependencyManager.registerInstance(W3cCredentialsModuleConfig, this.config)\n\n // Guard for shared JsonLdModuleConfig token if no standalone JsonLdModule\n // registered, would otherwise be silently overwritten\n if (!dependencyManager.isRegistered(JsonLdModuleConfig)) {\n dependencyManager.registerInstance(JsonLdModuleConfig, this.config)\n }\n\n // Collect any suites registered via the deprecated SignatureSuiteToken for backward compatibility.\n // External consumers that used registerInstance(SignatureSuiteToken, suite) will still work until\n // SignatureSuiteToken is removed in 0.8.\n const tokenRegisteredSuites = dependencyManager.isRegistered(SignatureSuiteToken)\n ? (dependencyManager.container.resolveAll<SuiteInfo>(SignatureSuiteToken) as SuiteInfo[])\n : []\n\n // Always register ed25519 signature suites\n dependencyManager.registerInstance(\n SignatureSuiteRegistry,\n new SignatureSuiteRegistry([\n ...tokenRegisteredSuites,\n {\n suiteClass: Ed25519Signature2018,\n proofType: 'Ed25519Signature2018',\n verificationMethodTypes: [VERIFICATION_METHOD_TYPE_ED25519_VERIFICATION_KEY_2018],\n supportedPublicJwkTypes: [Ed25519PublicJwk],\n } satisfies SuiteInfo,\n {\n suiteClass: Ed25519Signature2020,\n proofType: 'Ed25519Signature2020',\n verificationMethodTypes: [VERIFICATION_METHOD_TYPE_ED25519_VERIFICATION_KEY_2020],\n supportedPublicJwkTypes: [Ed25519PublicJwk],\n } satisfies SuiteInfo,\n ])\n )\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAwBA,IAAa,uBAAb,MAAoD;CAIlD,YAAmB,QAA4C;EAF/D,KAAgB,MAAM;EAGpB,KAAK,SAAS,IAAI,2BAA2B,MAAM;CACrD;CAEA,SAAgB,mBAAsC;EACpD,kBAAkB,kBAAkB,oBAAoB;EACxD,kBAAkB,kBAAkB,uBAAuB;EAC3D,kBAAkB,kBAAkB,0BAA0B;EAC9D,kBAAkB,kBAAkB,uBAAuB;EAG3D,kBAAkB,iBAAiB,4BAA4B,KAAK,MAAM;EAI1E,IAAI,CAAC,kBAAkB,aAAa,kBAAkB,GACpD,kBAAkB,iBAAiB,oBAAoB,KAAK,MAAM;EAMpE,MAAM,wBAAwB,kBAAkB,aAAa,mBAAmB,IAC3E,kBAAkB,UAAU,WAAsB,mBAAmB,IACtE,CAAC;EAGL,kBAAkB,iBAChB,wBACA,IAAI,uBAAuB;GACzB,GAAG;GACH;IACE,YAAY;IACZ,WAAW;IACX,yBAAyB,CAAC,sDAAsD;IAChF,yBAAyB,CAAC,gBAAgB;GAC5C;GACA;IACE,YAAY;IACZ,WAAW;IACX,yBAAyB,CAAC,sDAAsD;IAChF,yBAAyB,CAAC,gBAAgB;GAC5C;EACF,CAAC,CACH;CACF;AACF"}