@triliumnext/express-partial-content
Version:
A partial content handler implementation for any readable stream with Express. Based on this blog post: https://www.codeproject.com/Articles/813480/HTTP-Partial-Content-In-Node-js.
17 lines • 1.43 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.setCacheControlHeaderNoCache = exports.setContentDispositionHeader = exports.setContentRangeHeader = exports.setAcceptRangesHeader = exports.setContentLengthHeader = exports.setContentTypeHeader = exports.setHeader = exports.getRangeHeader = exports.getHeader = void 0;
const getHeader = (name, req) => req.headers[name];
exports.getHeader = getHeader;
exports.getRangeHeader = exports.getHeader.bind(null, "range");
const setHeader = (name, value, res) => res.setHeader(name, value);
exports.setHeader = setHeader;
exports.setContentTypeHeader = exports.setHeader.bind(null, "Content-Type");
exports.setContentLengthHeader = exports.setHeader.bind(null, "Content-Length");
exports.setAcceptRangesHeader = exports.setHeader.bind(null, "Accept-Ranges", "bytes");
const setContentRangeHeader = (range, size, res) => (0, exports.setHeader)("Content-Range", `bytes ${range ? `${range.start}-${range.end}` : "*"}/${size}`, res);
exports.setContentRangeHeader = setContentRangeHeader;
const setContentDispositionHeader = (fileName, res) => (0, exports.setHeader)("Content-Disposition", `attachment; filename*=utf-8''${encodeURIComponent(fileName)}`, res);
exports.setContentDispositionHeader = setContentDispositionHeader;
exports.setCacheControlHeaderNoCache = exports.setHeader.bind(null, "Cache-Control", "no-cache");
//# sourceMappingURL=utils.js.map