@svta/common-media-library
Version:
A common library for media playback in JavaScript
33 lines • 1.12 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.fromCmcdHeaders = fromCmcdHeaders;
const CMCD_OBJECT_js_1 = require("./CMCD_OBJECT.js");
const CMCD_REQUEST_js_1 = require("./CMCD_REQUEST.js");
const CMCD_SESSION_js_1 = require("./CMCD_SESSION.js");
const CMCD_STATUS_js_1 = require("./CMCD_STATUS.js");
const decodeCmcd_js_1 = require("./decodeCmcd.js");
const keys = [CMCD_OBJECT_js_1.CMCD_OBJECT, CMCD_REQUEST_js_1.CMCD_REQUEST, CMCD_SESSION_js_1.CMCD_SESSION, CMCD_STATUS_js_1.CMCD_STATUS];
/**
* Decode CMCD data from request headers.
*
* @param headers - The request headers to decode.
*
* @returns The decoded CMCD data.
*
* @group CMCD
*
* @beta
*
* @example
* {@includeCode ../../test/cmcd/fromCmcdHeaders.test.ts#example}
*/
function fromCmcdHeaders(headers) {
if (!(headers instanceof Headers)) {
headers = new Headers(headers);
}
return keys.reduce((acc, key) => {
const value = headers.get(key);
return Object.assign(acc, (0, decodeCmcd_js_1.decodeCmcd)(value));
}, {});
}
//# sourceMappingURL=fromCmcdHeaders.js.map