e2ed
Version:
E2E testing framework over Playwright
27 lines (26 loc) • 1.02 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.applyHeadersMapper = void 0;
const getEquivalentHeadersNames_1 = require("./getEquivalentHeadersNames");
/**
* Map exists headers to new headers and merge this new headers to exists headers.
* @internal
*/
const applyHeadersMapper = (headers, mapper) => {
const copyOfHeaders = { ...headers };
const newHeaders = mapper(copyOfHeaders);
const mutableHeaders = headers;
for (const [name, value] of Object.entries(newHeaders)) {
if (value === undefined) {
const equivalentNames = (0, getEquivalentHeadersNames_1.getEquivalentHeadersNames)(mutableHeaders, name);
for (const currentName of equivalentNames) {
// eslint-disable-next-line @typescript-eslint/no-dynamic-delete
delete mutableHeaders[currentName];
}
}
else {
mutableHeaders[name] = value;
}
}
};
exports.applyHeadersMapper = applyHeadersMapper;