{"version":3,"file":"JwtCryptoDriver.mjs","names":["JwtCryptoDriver","jwt: JwtService"],"sources":["../../../src/services/crypto/JwtCryptoDriver.ts"],"sourcesContent":["import { injectable, inject } from '@credo-ts/core'\nimport type { AgentContext } from '@credo-ts/core'\nimport { CryptoDriver } from './CryptoDriver'\nimport { JwtService } from '../JwtService'\n\n@injectable()\nexport class JwtCryptoDriver extends CryptoDriver {\n  public constructor(@inject(JwtService) private readonly jwt: JwtService) {\n    super()\n  }\n\n  // eslint-disable-next-line @typescript-eslint/no-explicit-any\n  public async sign(agentContext: AgentContext, document: any, keyHint?: any): Promise<any> {\n    const jwt = await this.jwt.signVcJwt(agentContext, document, keyHint)\n    return { ...document, proof: { type: 'JwtProof2020', jwt } }\n  }\n\n  // eslint-disable-next-line @typescript-eslint/no-explicit-any\n  public async verify(agentContext: AgentContext, input: any) {\n    const jwtStr = typeof input === 'string' ? input : String(input?.proof?.jwt || '')\n    const res = await this.jwt.verifyVcJwt(agentContext, jwtStr)\n    return { verified: !!res.verified, credential: res.payload?.vc, error: res.error }\n  }\n}\n\n"],"mappings":";;;;;;;;;;;;AAMO,4BAAMA,0BAAwB,aAAa;CAChD,AAAO,YAAY,AAAqCC,KAAiB;AACvE,SAAO;EAD+C;;CAKxD,MAAa,KAAK,cAA4B,UAAe,SAA6B;EACxF,MAAM,MAAM,MAAM,KAAK,IAAI,UAAU,cAAc,UAAU,QAAQ;AACrE,SAAO;GAAE,GAAG;GAAU,OAAO;IAAE,MAAM;IAAgB;IAAK;GAAE;;CAI9D,MAAa,OAAO,cAA4B,OAAY;EAC1D,MAAM,SAAS,OAAO,UAAU,WAAW,QAAQ,OAAO,OAAO,OAAO,OAAO,GAAG;EAClF,MAAM,MAAM,MAAM,KAAK,IAAI,YAAY,cAAc,OAAO;AAC5D,SAAO;GAAE,UAAU,CAAC,CAAC,IAAI;GAAU,YAAY,IAAI,SAAS;GAAI,OAAO,IAAI;GAAO;;;;CAhBrF,YAAY;oBAES,OAAO,WAAW"}