odatafy-parser
Version:
generate odatafy ast from odata query parameters
41 lines (40 loc) • 1.44 kB
TypeScript
import computeParser from './parsing/computeParser';
import filterParser from './parsing/filterParser';
import orderbyParser from './parsing/orderbyParser';
import skipParser from './parsing/skipParser';
import topParser from './parsing/topParser';
import expandParser from './parsing/expandParser';
import selectParser from './parsing/selectParser';
import { FilterNode, OrderbyNode, ExpandNode, ComputeNode, SelectNode, SearchNode } from './types/nodes';
import searchParser from './parsing/searchParser';
export type oDataParameters = {
filter?: string;
orderby?: string;
skip?: string;
top?: string;
expand?: string;
compute?: string;
select?: string;
search?: string;
count?: string;
};
export type oDataParseResult = {
filter?: FilterNode;
orderby?: OrderbyNode;
skip?: number;
top?: number;
expand?: ExpandNode;
compute?: ComputeNode;
select?: SelectNode;
search?: SearchNode;
count?: boolean;
};
/**
* parse oData parameter expressions from url
* @param oDataUrl oData url as string, from req.url
* @example //returns {top: 4}
* parseODataUrl("//https://services.odata.org/v2/northwind/northwind.svc/Customers?$top=4")
* @returns parsed oData parameters
*/
export declare function parseODataUrl(oDataUrl: string): oDataParseResult;
export { filterParser, orderbyParser, skipParser, topParser, expandParser, computeParser, selectParser, searchParser };