@rashedmakkouk/dev-utils
Version:
Utility library.
32 lines (31 loc) • 1.02 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
/** Utilities */
const isNumber_1 = __importDefault(require("lodash/isNumber"));
const sqlstring_1 = require("sqlstring");
/**
* Sanitizes and formats SQL input data for safe use in MySQL query statements.
*
* @returns Escaped string.
*/
function escape(value, options = {}) {
if (value == null) {
return value;
}
const { escapeId = false, parseInteger = false, stripQuote = false, } = options;
if (parseInteger) {
return parseInt((0, sqlstring_1.escape)(value), 10);
}
else if (escapeId) {
return (0, sqlstring_1.escapeId)(value);
}
else {
return !stripQuote || (0, isNumber_1.default)(value)
? (0, sqlstring_1.escape)(value)
: (0, sqlstring_1.escape)(value).slice(1, -1);
}
}
exports.default = escape;