UNPKG

@fly/cdn

Version:
31 lines 2.95 kB
/** * @module Middleware */ import { responseModifier } from "./builder"; /** * Middleware to set headers on responses * @param fetch * @param options */ export const responseHeaders = responseModifier(addResponseHeaders); /** * Sets provided headers on a response object * @private * @param resp * @param options * @hidden */ export async function addResponseHeaders(resp, headers) { if (headers) { for (const [k, v] of Object.entries(headers)) { if (v === false) { resp.headers.delete(k); } else if (v !== true) { // true implies pass through resp.headers.set(k, v.toString()); } } } return resp; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzcG9uc2UtaGVhZGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9taWRkbGV3YXJlL3Jlc3BvbnNlLWhlYWRlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFDSCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFTN0M7Ozs7R0FJRztBQUNILE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRyxnQkFBZ0IsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFBO0FBRW5FOzs7Ozs7R0FNRztBQUNILE1BQU0sQ0FBQyxLQUFLLFVBQVUsa0JBQWtCLENBQUMsSUFBYyxFQUFFLE9BQStCO0lBQ3RGLElBQUksT0FBTyxFQUFFO1FBQ1gsS0FBSyxNQUFNLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLE1BQU0sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDNUMsSUFBSSxDQUFDLEtBQUssS0FBSyxFQUFFO2dCQUNmLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFBO2FBQ3ZCO2lCQUFNLElBQVMsQ0FBQyxLQUFLLElBQUksRUFBRSxFQUFFLDRCQUE0QjtnQkFDeEQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFBO2FBQ2xDO1NBQ0Y7S0FDRjtJQUNELE9BQU8sSUFBSSxDQUFBO0FBQ2IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQG1vZHVsZSBNaWRkbGV3YXJlXG4gKi9cbmltcG9ydCB7IHJlc3BvbnNlTW9kaWZpZXIgfSBmcm9tIFwiLi9idWlsZGVyXCI7XG5cbi8qKlxuICogSGVhZGVyIG5hbWUvdmFsdWUgcGFpcnMgdG8gc2V0IG9uIGEgcmVzcG9uc2UuIFRoZSBib29sZWFuIGBmYWxzZWAgcmVtb3ZlcyB0aGUgaGVhZGVyIGVudGlyZWx5LlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJlc3BvbnNlSGVhZGVyc09wdGlvbnMge1xuICBbbmFtZTogc3RyaW5nXTogc3RyaW5nIHwgZmFsc2Vcbn1cblxuLyoqXG4gKiBNaWRkbGV3YXJlIHRvIHNldCBoZWFkZXJzIG9uIHJlc3BvbnNlc1xuICogQHBhcmFtIGZldGNoIFxuICogQHBhcmFtIG9wdGlvbnNcbiAqL1xuZXhwb3J0IGNvbnN0IHJlc3BvbnNlSGVhZGVycyA9IHJlc3BvbnNlTW9kaWZpZXIoYWRkUmVzcG9uc2VIZWFkZXJzKVxuXG4vKipcbiAqIFNldHMgcHJvdmlkZWQgaGVhZGVycyBvbiBhIHJlc3BvbnNlIG9iamVjdFxuICogQHByaXZhdGVcbiAqIEBwYXJhbSByZXNwIFxuICogQHBhcmFtIG9wdGlvbnMgXG4gKiBAaGlkZGVuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBhZGRSZXNwb25zZUhlYWRlcnMocmVzcDogUmVzcG9uc2UsIGhlYWRlcnM6IFJlc3BvbnNlSGVhZGVyc09wdGlvbnMpe1xuICBpZiAoaGVhZGVycykge1xuICAgIGZvciAoY29uc3QgW2ssIHZdIG9mIE9iamVjdC5lbnRyaWVzKGhlYWRlcnMpKSB7XG4gICAgICBpZiAodiA9PT0gZmFsc2UpIHtcbiAgICAgICAgcmVzcC5oZWFkZXJzLmRlbGV0ZShrKVxuICAgICAgfSBlbHNlIGlmICg8YW55PnYgIT09IHRydWUpIHsgLy8gdHJ1ZSBpbXBsaWVzIHBhc3MgdGhyb3VnaFxuICAgICAgICByZXNwLmhlYWRlcnMuc2V0KGssIHYudG9TdHJpbmcoKSlcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgcmV0dXJuIHJlc3Bcbn1cbiJdfQ==