@forestadmin/forestadmin-client
Version:
This package contains the logic to use the ForestAdmin API inside an agent.
25 lines • 1.99 kB
JavaScript
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const chained_sql_query_error_1 = __importDefault(require("./errors/chained-sql-query-error"));
const empty_sql_query_error_1 = __importDefault(require("./errors/empty-sql-query-error"));
const non_select_sql_query_error_1 = __importDefault(require("./errors/non-select-sql-query-error"));
const QUERY_SELECT = /^SELECT\s[^]*FROM\s[^]*$/i;
function verifySQLQuery(inputQuery) {
const inputQueryTrimmed = inputQuery?.trim();
if (!inputQueryTrimmed) {
throw new empty_sql_query_error_1.default();
}
if (inputQueryTrimmed.includes(';') &&
inputQueryTrimmed.indexOf(';') < inputQueryTrimmed.length - 1) {
throw new chained_sql_query_error_1.default();
}
if (!QUERY_SELECT.test(inputQueryTrimmed)) {
throw new non_select_sql_query_error_1.default();
}
return true;
}
exports.default = verifySQLQuery;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyaWZ5LXNxbC1xdWVyeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wZXJtaXNzaW9ucy92ZXJpZnktc3FsLXF1ZXJ5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsK0ZBQW9FO0FBQ3BFLDJGQUFnRTtBQUNoRSxxR0FBeUU7QUFFekUsTUFBTSxZQUFZLEdBQUcsMkJBQTJCLENBQUM7QUFFakQsU0FBd0IsY0FBYyxDQUFDLFVBQXlCO0lBQzlELE1BQU0saUJBQWlCLEdBQUcsVUFBVSxFQUFFLElBQUksRUFBRSxDQUFDO0lBRTdDLElBQUksQ0FBQyxpQkFBaUIsRUFBRTtRQUN0QixNQUFNLElBQUksK0JBQWtCLEVBQUUsQ0FBQztLQUNoQztJQUVELElBQ0UsaUJBQWlCLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQztRQUMvQixpQkFBaUIsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEdBQUcsaUJBQWlCLENBQUMsTUFBTSxHQUFHLENBQUMsRUFDN0Q7UUFDQSxNQUFNLElBQUksaUNBQW9CLEVBQUUsQ0FBQztLQUNsQztJQUVELElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEVBQUU7UUFDekMsTUFBTSxJQUFJLG9DQUFzQixFQUFFLENBQUM7S0FDcEM7SUFFRCxPQUFPLElBQUksQ0FBQztBQUNkLENBQUM7QUFuQkQsaUNBbUJDIn0=
;