multer-s3-sharp-resizer
Version:
storage engine for multer to upload multiple images of different sizes to s3 object storage
24 lines • 1.06 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const stream_1 = require("stream");
const path_1 = __importDefault(require("path"));
const service_getDefaultFilenameBase_1 = __importDefault(require("./service.getDefaultFilenameBase"));
exports.default = async (req, input, getFilenameBase = service_getDefaultFilenameBase_1.default, metadata) => {
if (!input.key && !input.file)
throw new Error('No Key or function for key generation was provided!');
const stream = new stream_1.PassThrough();
const upload = input.s3.upload({
Bucket: input.bucket,
Key: input.key || `${getFilenameBase(req, input.file)}${path_1.default.extname(input.file.originalname)}`,
Body: stream,
Metadata: await metadata(req, input.file)
}).promise();
return {
upload,
stream
};
};
//# sourceMappingURL=service.uploadFromStream.js.map