odatafy-parser
Version:
generate odatafy ast from odata query parameters
23 lines (22 loc) • 744 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const errors_1 = require("../types/errors");
const utils_1 = require("../utils");
const helpers_1 = require("./helpers");
exports.default = {
/**
* Parser for levels expressions
* @param expr levels expression as string
* @example levelsParser.parse("5");
* @returns integer number for levels or "max"
*/
parse: function (expr) {
if (expr == 'max') {
return 'max';
}
if ((0, helpers_1.isPositiveInteger)(expr)) {
return parseInt(expr);
}
throw (0, utils_1.getOdatafyParserError)("levels must be positive integer or 'max'", errors_1.OdatafyQueryOptions.Levels);
}
};