UNPKG

davatar

Version:

An npm package to generate avatar.

45 lines (39 loc) 1.08 kB
const { logger } = require("./customLogger"); const { NO_TEXT, TEXT_LENGTH, SIZE_LESS_OR_ZERO, MORE_THAN_MAX, SIZE_NAN, TEXT_NOT_STRING, } = require("./errorConstants"); function checkImageSize(size) { const isNumber = Number.isInteger(size); if (!isNumber) logger(SIZE_NAN); else { if (size <= 0) logger(SIZE_LESS_OR_ZERO); else if (size > 512) logger(MORE_THAN_MAX); else return true; } } function checkImageText(text) { const isString = typeof text === "string"; if (!text) logger(NO_TEXT); else { if (!isString) logger(TEXT_NOT_STRING); else if (text.trim().length < 2) logger(TEXT_LENGTH); else return true; } } function checkDataUrl(testUrl) { let testResult = false; if (!testUrl) return false; let base64regex = /^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/; let splitUrl = testUrl.split(","); let base64Test = base64regex.test(splitUrl[1]); testResult = splitUrl[0] === "data:image/png;base64" && base64Test ? true : false; return testResult; } module.exports = { checkDataUrl, checkImageSize, checkImageText };