UNPKG

claire-framework

Version:

- được viết bằng TypeScript - hỗ trợ websocket và HTTP request - hỗ trợ CLI để generate base project (claire-cli)

25 lines 2.14 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const stream_1 = __importDefault(require("stream")); const mime_types_1 = __importDefault(require("mime-types")); const AbstractHttpResponder_1 = require("../controller/http/AbstractHttpResponder"); class DefaultFileResponder extends AbstractHttpResponder_1.AbstractHttpResponder { constructor() { super(); } static predictMimeType(fileName) { return mime_types_1.default.lookup(fileName); } response(response, value) { const readStream = new stream_1.default.PassThrough(); readStream.end(value.buffer); response.set('Content-disposition', 'attachment; filename=' + value.fileName); response.set('Content-Type', value.contentType || DefaultFileResponder.predictMimeType(value.fileName) || 'text/plain'); readStream.pipe(response); } } exports.DefaultFileResponder = DefaultFileResponder; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGVmYXVsdEZpbGVSZXNwb25kZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9saWIvZGVmYXVsdC1pbXBsZW1lbnRhdGlvbnMvRGVmYXVsdEZpbGVSZXNwb25kZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxvREFBNEI7QUFDNUIsNERBQThCO0FBRTlCLG9GQUErRTtBQUUvRSxNQUFhLG9CQUFxQixTQUFRLDZDQUFxQjtJQUUzRDtRQUNJLEtBQUssRUFBRSxDQUFDO0lBQ1osQ0FBQztJQUVPLE1BQU0sQ0FBQyxlQUFlLENBQUMsUUFBZ0I7UUFDM0MsT0FBTyxvQkFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBRU0sUUFBUSxDQUFDLFFBQXNCLEVBQUUsS0FBaUU7UUFDckcsTUFBTSxVQUFVLEdBQUcsSUFBSSxnQkFBTSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQzVDLFVBQVUsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzdCLFFBQVEsQ0FBQyxHQUFHLENBQUMscUJBQXFCLEVBQUUsdUJBQXVCLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzlFLFFBQVEsQ0FBQyxHQUFHLENBQUMsY0FBYyxFQUFFLEtBQUssQ0FBQyxXQUFXLElBQUksb0JBQW9CLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxZQUFZLENBQUMsQ0FBQztRQUN4SCxVQUFVLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzlCLENBQUM7Q0FFSjtBQWxCRCxvREFrQkMifQ==