UNPKG

@mvp-factory/holy-upload

Version:

File upload processing system extracted from Holy Habit project with security validation and image optimization

91 lines 4.76 kB
"use strict"; /** * @mvp-factory/holy-upload * * File upload processing system extracted from Holy Habit project * with security validation and image optimization */ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { if (k2 === undefined) k2 = k; var desc = Object.getOwnPropertyDescriptor(m, k); if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { desc = { enumerable: true, get: function() { return m[k]; } }; } Object.defineProperty(o, k2, desc); }) : (function(o, m, k, k2) { if (k2 === undefined) k2 = k; o[k2] = m[k]; })); var __exportStar = (this && this.__exportStar) || function(m, exports) { for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); }; Object.defineProperty(exports, "__esModule", { value: true }); exports.name = exports.version = exports.HolyUpload = exports.FileUtils = exports.ImageOptimizer = exports.FileValidator = exports.UploadConfigManager = exports.ExpressUploadMiddleware = exports.UploadHandler = void 0; exports.createUploadHandler = createUploadHandler; exports.createExpressMiddleware = createExpressMiddleware; // Main classes var UploadHandler_1 = require("./handlers/UploadHandler"); Object.defineProperty(exports, "UploadHandler", { enumerable: true, get: function () { return UploadHandler_1.UploadHandler; } }); var ExpressUploadMiddleware_1 = require("./handlers/ExpressUploadMiddleware"); Object.defineProperty(exports, "ExpressUploadMiddleware", { enumerable: true, get: function () { return ExpressUploadMiddleware_1.ExpressUploadMiddleware; } }); // Configuration var UploadConfig_1 = require("./config/UploadConfig"); Object.defineProperty(exports, "UploadConfigManager", { enumerable: true, get: function () { return UploadConfig_1.UploadConfigManager; } }); // Validators var FileValidator_1 = require("./validators/FileValidator"); Object.defineProperty(exports, "FileValidator", { enumerable: true, get: function () { return FileValidator_1.FileValidator; } }); // Utilities var ImageOptimizer_1 = require("./utils/ImageOptimizer"); Object.defineProperty(exports, "ImageOptimizer", { enumerable: true, get: function () { return ImageOptimizer_1.ImageOptimizer; } }); var FileUtils_1 = require("./utils/FileUtils"); Object.defineProperty(exports, "FileUtils", { enumerable: true, get: function () { return FileUtils_1.FileUtils; } }); // Types and interfaces __exportStar(require("./types/Upload"), exports); // Default exports for convenience const UploadHandler_2 = require("./handlers/UploadHandler"); const ExpressUploadMiddleware_2 = require("./handlers/ExpressUploadMiddleware"); const UploadConfig_2 = require("./config/UploadConfig"); const FileValidator_2 = require("./validators/FileValidator"); const ImageOptimizer_2 = require("./utils/ImageOptimizer"); const FileUtils_2 = require("./utils/FileUtils"); exports.default = { UploadHandler: UploadHandler_2.UploadHandler, ExpressUploadMiddleware: ExpressUploadMiddleware_2.ExpressUploadMiddleware, UploadConfigManager: UploadConfig_2.UploadConfigManager, FileValidator: FileValidator_2.FileValidator, ImageOptimizer: ImageOptimizer_2.ImageOptimizer, FileUtils: FileUtils_2.FileUtils }; // Factory function for quick setup function createUploadHandler(config) { return new UploadHandler_2.UploadHandler(config); } function createExpressMiddleware(config) { return new ExpressUploadMiddleware_2.ExpressUploadMiddleware(config); } // Quick setup for common use cases exports.HolyUpload = { // Create handler with default configuration createHandler: (config) => new UploadHandler_2.UploadHandler(config), // Create Express middleware with default configuration createMiddleware: (config) => new ExpressUploadMiddleware_2.ExpressUploadMiddleware(config), // Create development configuration createDevConfig: () => UploadConfig_2.UploadConfigManager.createDevelopmentConfig(), // Create production configuration createProdConfig: () => UploadConfig_2.UploadConfigManager.createProductionConfig(), // Validate files quickly validateFile: FileValidator_2.FileValidator.validate, // Optimize images optimizeImage: ImageOptimizer_2.ImageOptimizer.optimize, // Utility functions utils: { generateSecureFilename: FileUtils_2.FileUtils.generateSecureFilename, sanitizeFilename: FileUtils_2.FileUtils.sanitizeFilename, formatBytes: FileUtils_2.FileUtils.formatBytes, ensureDirectory: FileUtils_2.FileUtils.ensureDirectory } }; // Version info exports.version = '1.0.0'; exports.name = '@mvp-factory/holy-upload'; //# sourceMappingURL=index.js.map