UNPKG

convert-base64-to-image

Version:

This is a node package that helps you to convert base64 string created by javascript file reader to image downloadable file

61 lines (60 loc) 1.87 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.bufferToImageAndWriteImageToPath = exports.convertBase64ToBuffer = exports.readBase64File = void 0; var fs = require("fs"); var manipulateUTF8String = function (utf8) { try { var base64 = utf8.split(',')[1]; return base64; } catch (error) { throw new Error('Invalid base64 string'); } }; var readBase64File = function (base64) { try { var utf8OrBase64String = base64 ? base64 : fs.readFileSync('base64String.txt', 'utf8'); var base64String = manipulateUTF8String(utf8OrBase64String); return base64String; } catch (error) { throw error; } }; exports.readBase64File = readBase64File; var convertBase64ToBuffer = function (base64) { try { var buffer = Buffer.from(base64, 'base64'); return buffer; } catch (error) { throw error; } }; exports.convertBase64ToBuffer = convertBase64ToBuffer; /** * @name bufferToImageAndWriteImageToPath * @description Takes a buffer and converts it to image and writes image to path. * @param {Buffer} buffer Buffer to be converted to image. * @param {string} path Full path to write image to e.g /path/to/image.png * * @returns {void} */ var bufferToImageAndWriteImageToPath = function (buffer, path) { try { var fullPath = path.split('/'); var fileName = fullPath.at(-1); var dir = fullPath.slice(0, -1).join('/'); if (!fs.existsSync(dir)) { fs.mkdirSync(dir, { recursive: true }); fs.writeFileSync("".concat(dir, "/").concat(fileName), buffer); } else { fs.writeFileSync(path, buffer); } } catch (error) { throw error; } }; exports.bufferToImageAndWriteImageToPath = bufferToImageAndWriteImageToPath;