UNPKG

quality-tools

Version:

Biblioteca com ferramentas de qualidade e manipulação de imagem

30 lines (29 loc) 1.22 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.convertToWebp = convertToWebp; const sharp_1 = __importDefault(require("sharp")); const path_1 = __importDefault(require("path")); const fs_1 = __importDefault(require("fs")); /** * Converte qualquer imagem para .webp * @param inputPath Caminho da imagem original * @param outputPath Caminho para salvar a imagem .webp (opcional) * @param quality Qualidade da imagem (0-100), padrão: 80 * @returns Caminho da imagem convertida */ async function convertToWebp(inputPath, outputPath, quality = 80) { if (!fs_1.default.existsSync(inputPath)) { throw new Error(`Arquivo não encontrado: ${inputPath}`); } const ext = path_1.default.extname(inputPath); const baseName = path_1.default.basename(inputPath, ext); const dir = path_1.default.dirname(inputPath); const finalOutput = outputPath || path_1.default.join(dir, `${baseName}.webp`); await (0, sharp_1.default)(inputPath) .webp({ quality }) .toFile(finalOutput); return finalOutput; }