UNPKG

@azure/cosmos

Version:
1 lines 1.76 kB
{"version":3,"file":"hmac-browser.mjs","sourceRoot":"","sources":["../../../src/utils/hmac-browser.mts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,GAAW,EAAE,OAAe;IACrD,MAAM,YAAY,GAAqB,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,CAAC;IACnF,MAAM,cAAc,GAAG,IAAI,UAAU,CACnC,CAAC,GAAG,QAAQ,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CACvE,CAAC;IACF,MAAM,UAAU,GAAG,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IACzC,MAAM,SAAS,GAAG,MAAM,YAAY,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,KAAK,EAAE;QAC5F,MAAM;KACP,CAAC,CAAC;IACH,MAAM,SAAS,GAAG,MAAM,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE,SAAS,EAAE,cAAc,CAAC,CAAC;IAE1F,OAAO,YAAY,CAAC,SAAS,CAAC,CAAC;AACjC,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { encodeUTF8, encodeBase64 } from \"./encode.js\";\nimport atob from \"./atob.js\";\nimport { globalCrypto } from \"./globalCrypto.js\";\n\nexport async function hmac(key: string, message: string): Promise<string> {\n const importParams: HmacImportParams = { name: \"HMAC\", hash: { name: \"SHA-256\" } };\n const encodedMessage = new Uint8Array(\n [...unescape(encodeURIComponent(message))].map((c) => c.charCodeAt(0)),\n );\n const encodedKey = encodeUTF8(atob(key));\n const cryptoKey = await globalCrypto.subtle.importKey(\"raw\", encodedKey, importParams, false, [\n \"sign\",\n ]);\n const signature = await globalCrypto.subtle.sign(importParams, cryptoKey, encodedMessage);\n\n return encodeBase64(signature);\n}\n"]}