{"version":3,"file":"CredoSha256Provider.mjs","names":[],"sources":["../../../../src/crypto/webcrypto/providers/CredoSha256Provider.ts"],"sourcesContent":["import * as core from 'webcrypto-core'\nimport { Sha256 } from '../../hashes'\nimport type { HashAlgorithm } from '../types'\n\nexport class CredoSha256Provider extends core.ProviderCrypto {\n  public name = 'SHA-256'\n  public usages = []\n\n  public override async onDigest(algorithm: HashAlgorithm, data: ArrayBuffer): Promise<ArrayBuffer> {\n    switch (algorithm.name.toUpperCase()) {\n      case 'SHA-256': {\n        const hash = new Sha256().hash(new Uint8Array(data))\n        return hash.buffer as ArrayBuffer\n      }\n      default:\n        throw new Error(`Hashing algorithm: ${JSON.stringify(algorithm)} is not supported`)\n    }\n  }\n}\n"],"mappings":";;;;AAIA,IAAa,sBAAb,cAAyC,KAAK,eAAe;;;EAC3D,KAAO,OAAO;EACd,KAAO,SAAS,CAAC;;CAEjB,MAAsB,SAAS,WAA0B,MAAyC;EAChG,QAAQ,UAAU,KAAK,YAAY,GAAnC;GACE,KAAK,WAEH,OADa,IAAI,OAAO,CAAC,CAAC,KAAK,IAAI,WAAW,IAAI,CACxC,CAAC,CAAC;GAEd,SACE,MAAM,IAAI,MAAM,sBAAsB,KAAK,UAAU,SAAS,EAAE,kBAAkB;EACtF;CACF;AACF"}