UNPKG

@azure/cosmos

Version:
49 lines (48 loc) 2.2 kB
var __defProp = Object.defineProperty; var __getOwnPropDesc = Object.getOwnPropertyDescriptor; var __getOwnPropNames = Object.getOwnPropertyNames; var __hasOwnProp = Object.prototype.hasOwnProperty; var __export = (target, all) => { for (var name in all) __defProp(target, name, { get: all[name], enumerable: true }); }; var __copyProps = (to, from, except, desc) => { if (from && typeof from === "object" || typeof from === "function") { for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); } return to; }; var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); var headers_exports = {}; __export(headers_exports, { generateHeaders: () => generateHeaders }); module.exports = __toCommonJS(headers_exports); var import_hmac = require("./hmac.js"); var import_common = require("../common/index.js"); async function generateHeaders(masterKey, method, resourceType = import_common.ResourceType.none, resourceId = "", date = /* @__PURE__ */ new Date()) { if (masterKey.startsWith("type=sas&")) { return { [import_common.Constants.HttpHeaders.Authorization]: encodeURIComponent(masterKey), [import_common.Constants.HttpHeaders.XDate]: date.toUTCString() }; } const sig = await signature(masterKey, method, resourceType, resourceId, date); return { [import_common.Constants.HttpHeaders.Authorization]: sig, [import_common.Constants.HttpHeaders.XDate]: date.toUTCString() }; } async function signature(masterKey, method, resourceType, resourceId = "", date = /* @__PURE__ */ new Date()) { const type = "master"; const version = "1.0"; const text = method.toLowerCase() + "\n" + resourceType.toLowerCase() + "\n" + resourceId + "\n" + date.toUTCString().toLowerCase() + "\n\n"; const signed = await (0, import_hmac.hmac)(masterKey, text); return encodeURIComponent("type=" + type + "&ver=" + version + "&sig=" + signed); } // Annotate the CommonJS export names for ESM import in node: 0 && (module.exports = { generateHeaders });