xlucene-parser 0.58.3 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (48) hide show
  1. package/README.md +1 -1
  2. package/dist/src/cached-parser.d.ts +2 -2
  3. package/dist/src/cached-parser.d.ts.map +1 -1
  4. package/dist/src/cached-parser.js +4 -8
  5. package/dist/src/cached-parser.js.map +1 -1
  6. package/dist/src/context.d.ts +2 -2
  7. package/dist/src/context.d.ts.map +1 -1
  8. package/dist/src/context.js +17 -47
  9. package/dist/src/context.js.map +1 -1
  10. package/dist/src/functions/geo/box.d.ts +1 -1
  11. package/dist/src/functions/geo/box.d.ts.map +1 -1
  12. package/dist/src/functions/geo/box.js +10 -12
  13. package/dist/src/functions/geo/box.js.map +1 -1
  14. package/dist/src/functions/geo/contains-point.d.ts +1 -1
  15. package/dist/src/functions/geo/contains-point.d.ts.map +1 -1
  16. package/dist/src/functions/geo/contains-point.js +10 -12
  17. package/dist/src/functions/geo/contains-point.js.map +1 -1
  18. package/dist/src/functions/geo/distance.d.ts +1 -1
  19. package/dist/src/functions/geo/distance.d.ts.map +1 -1
  20. package/dist/src/functions/geo/distance.js +10 -12
  21. package/dist/src/functions/geo/distance.js.map +1 -1
  22. package/dist/src/functions/geo/polygon.d.ts +1 -1
  23. package/dist/src/functions/geo/polygon.d.ts.map +1 -1
  24. package/dist/src/functions/geo/polygon.js +31 -56
  25. package/dist/src/functions/geo/polygon.js.map +1 -1
  26. package/dist/src/functions/index.d.ts +1 -1
  27. package/dist/src/functions/index.d.ts.map +1 -1
  28. package/dist/src/functions/index.js +14 -21
  29. package/dist/src/functions/index.js.map +1 -1
  30. package/dist/src/index.d.ts +5 -5
  31. package/dist/src/index.d.ts.map +1 -1
  32. package/dist/src/index.js +5 -21
  33. package/dist/src/index.js.map +1 -1
  34. package/dist/src/interfaces.js +2 -5
  35. package/dist/src/interfaces.js.map +1 -1
  36. package/dist/src/parser.d.ts +1 -1
  37. package/dist/src/parser.d.ts.map +1 -1
  38. package/dist/src/parser.js +29 -53
  39. package/dist/src/parser.js.map +1 -1
  40. package/dist/src/peg-engine.d.ts +28 -19
  41. package/dist/src/peg-engine.d.ts.map +1 -1
  42. package/dist/src/peg-engine.js +6677 -4071
  43. package/dist/src/peg-engine.js.map +1 -1
  44. package/dist/src/utils.d.ts +2 -2
  45. package/dist/src/utils.d.ts.map +1 -1
  46. package/dist/src/utils.js +75 -129
  47. package/dist/src/utils.js.map +1 -1
  48. package/package.json +8 -6
@@ -1,59 +1,34 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- Object.defineProperty(exports, "__esModule", { value: true });
26
- const utils = __importStar(require("@terascope/utils"));
27
- const t = __importStar(require("@terascope/types"));
28
- const utils_1 = require("@terascope/utils");
29
- const utils_2 = require("../../utils");
1
+ import * as utils from '@terascope/utils';
2
+ import { GeoShapeType, ESGeoShapeType, GeoShapeRelation, xLuceneFieldType } from '@terascope/types';
3
+ import { toString, geoRelationFP, validateListCoords, polyHasHoles } from '@terascope/utils';
4
+ import { getFieldValue, logger } from '../../utils.js';
30
5
  const compatMapping = {
31
- [t.GeoShapeType.Polygon]: t.ESGeoShapeType.Polygon,
32
- [t.GeoShapeType.MultiPolygon]: t.ESGeoShapeType.MultiPolygon,
6
+ [GeoShapeType.Polygon]: ESGeoShapeType.Polygon,
7
+ [GeoShapeType.MultiPolygon]: ESGeoShapeType.MultiPolygon,
33
8
  };
34
- const relations = new Set(Object.values(t.GeoShapeRelation));
9
+ const relations = new Set(Object.values(GeoShapeRelation));
35
10
  function validate(params, variables) {
36
11
  const geoPointsParam = params.find((node) => node.field === 'points');
37
12
  const geoRelationParam = params.find((node) => node.field === 'relation');
38
13
  let relation;
39
14
  if (geoRelationParam) {
40
- const geoRelationValue = (0, utils_2.getFieldValue)(geoRelationParam.value, variables);
15
+ const geoRelationValue = getFieldValue(geoRelationParam.value, variables);
41
16
  if (!relations.has(geoRelationValue)) {
42
17
  throw new TypeError(`Invalid relation value "${geoRelationValue}"`);
43
18
  }
44
19
  relation = geoRelationValue;
45
20
  }
46
21
  else {
47
- relation = t.GeoShapeRelation.Within;
22
+ relation = GeoShapeRelation.Within;
48
23
  }
49
24
  if (geoPointsParam == null) {
50
25
  throw new TypeError('Invalid geoPolygon query, need to specify a "points" parameter');
51
26
  }
52
27
  let polygonShape = {
53
- type: t.GeoShapeType.Polygon,
28
+ type: GeoShapeType.Polygon,
54
29
  coordinates: []
55
30
  };
56
- const geoPointsValue = (0, utils_2.getFieldValue)(geoPointsParam.value, variables);
31
+ const geoPointsValue = getFieldValue(geoPointsParam.value, variables);
57
32
  if (utils.isGeoShapePolygon(geoPointsValue) || utils.isGeoShapeMultiPolygon(geoPointsValue)) {
58
33
  polygonShape = geoPointsValue;
59
34
  }
@@ -66,7 +41,7 @@ function validate(params, variables) {
66
41
  const { lat, lon } = utils.parseGeoPoint(value);
67
42
  return [lon, lat];
68
43
  });
69
- const coords = (0, utils_1.validateListCoords)(points);
44
+ const coords = validateListCoords(points);
70
45
  polygonShape.coordinates = coords;
71
46
  }
72
47
  return { polygonShape, relation };
@@ -89,7 +64,7 @@ const geoPolygon = {
89
64
  }
90
65
  const types = utils.uniq(results);
91
66
  if (types.length > 1) {
92
- throw new utils.TSError(`Invalid geoPolygon query against different field types: ${(0, utils_1.toString)(types)}`, {
67
+ throw new utils.TSError(`Invalid geoPolygon query against different field types: ${toString(types)}`, {
93
68
  context: { safe: true },
94
69
  statusCode: 400
95
70
  });
@@ -100,11 +75,11 @@ const geoPolygon = {
100
75
  type = typeConfig[node.field];
101
76
  // can remove the second check when "geo" if fully deprecated
102
77
  }
103
- const targetIsGeoPoint = type === t.xLuceneFieldType.GeoPoint
104
- || type === t.xLuceneFieldType.Geo
78
+ const targetIsGeoPoint = type === xLuceneFieldType.GeoPoint
79
+ || type === xLuceneFieldType.Geo
105
80
  || type === undefined;
106
- const isDisjoint = relation === t.GeoShapeRelation.Disjoint;
107
- if (targetIsGeoPoint && (0, utils_1.polyHasHoles)(polygonShape) && isDisjoint) {
81
+ const isDisjoint = relation === GeoShapeRelation.Disjoint;
82
+ if (targetIsGeoPoint && polyHasHoles(polygonShape) && isDisjoint) {
108
83
  throw new Error('Invalid argument points, when running a disjoint query with a polygon/multi-polygon with holes, it must be against data of type geo-json');
109
84
  }
110
85
  function makeESPolyQuery(field, points) {
@@ -132,7 +107,7 @@ const geoPolygon = {
132
107
  must_not: []
133
108
  }
134
109
  };
135
- if (relation === t.GeoShapeRelation.Disjoint) {
110
+ if (relation === GeoShapeRelation.Disjoint) {
136
111
  // we do not want results that the field does not exist
137
112
  filter.bool.filter.push({ exists: { field } });
138
113
  holes.bool.must_not.push(makeESPolyQuery(field, coordinates[0]));
@@ -154,8 +129,8 @@ const geoPolygon = {
154
129
  function esPolyToPointQuery(field) {
155
130
  if (utils.isGeoShapePolygon(polygonShape)) {
156
131
  const query = makePolygonQuery(field, polygonShape.coordinates);
157
- if (utils_2.logger.level() === 10)
158
- utils_2.logger.trace('built geo polygon to point query', { query });
132
+ if (logger.level() === 10)
133
+ logger.trace('built geo polygon to point query', { query });
159
134
  return { query };
160
135
  }
161
136
  if (utils.isGeoShapeMultiPolygon(polygonShape)) {
@@ -163,20 +138,20 @@ const geoPolygon = {
163
138
  const query = {
164
139
  bool: {}
165
140
  };
166
- if (relation === t.GeoShapeRelation.Disjoint) {
141
+ if (relation === GeoShapeRelation.Disjoint) {
167
142
  query.bool.must = dsl;
168
143
  }
169
144
  else {
170
145
  query.bool.should = dsl;
171
146
  }
172
- if (utils_2.logger.level() === 10)
173
- utils_2.logger.trace('built geo polygon to point query', { query });
147
+ if (logger.level() === 10)
148
+ logger.trace('built geo polygon to point query', { query });
174
149
  return { query };
175
150
  }
176
151
  return { query: {} };
177
152
  }
178
153
  function esPolyToPolyQuery(field) {
179
- const esType = compatMapping[polygonShape.type] || t.ESGeoShapeType.Polygon;
154
+ const esType = compatMapping[polygonShape.type] || ESGeoShapeType.Polygon;
180
155
  const query = {
181
156
  geo_shape: {
182
157
  [field]: {
@@ -188,24 +163,24 @@ const geoPolygon = {
188
163
  }
189
164
  }
190
165
  };
191
- if (utils_2.logger.level() === 10)
192
- utils_2.logger.trace('built geo polygon to polygon query', { query });
166
+ if (logger.level() === 10)
167
+ logger.trace('built geo polygon to polygon query', { query });
193
168
  return { query };
194
169
  }
195
170
  if (targetIsGeoPoint) {
196
- if (relation === t.GeoShapeRelation.Contains) {
197
- throw new Error(`Cannot query against geo-points with relation set to "${t.GeoShapeRelation.Contains}"`);
171
+ if (relation === GeoShapeRelation.Contains) {
172
+ throw new Error(`Cannot query against geo-points with relation set to "${GeoShapeRelation.Contains}"`);
198
173
  }
199
174
  return {
200
- match: (0, utils_1.geoRelationFP)(polygonShape, relation),
175
+ match: geoRelationFP(polygonShape, relation),
201
176
  toElasticsearchQuery: esPolyToPointQuery
202
177
  };
203
178
  }
204
179
  return {
205
- match: (0, utils_1.geoRelationFP)(polygonShape, relation),
180
+ match: geoRelationFP(polygonShape, relation),
206
181
  toElasticsearchQuery: esPolyToPolyQuery
207
182
  };
208
183
  }
209
184
  };
210
- exports.default = geoPolygon;
185
+ export default geoPolygon;
211
186
  //# sourceMappingURL=polygon.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"polygon.js","sourceRoot":"","sources":["../../../../src/functions/geo/polygon.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"polygon.js","sourceRoot":"","sources":["../../../../src/functions/geo/polygon.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { xLuceneTypeConfig, xLuceneVariables } from '@terascope/types';
2
- import { FunctionDefinition, FunctionMethods, FunctionNode } from '../interfaces';
2
+ import { FunctionDefinition, FunctionMethods, FunctionNode } from '../interfaces.js';
3
3
  export declare enum xLuceneFunction {
4
4
  geoDistance = "geoDistance",
5
5
  geoBox = "geoBox",
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/functions/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAKvE,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAElF,oBAAY,eAAe;IACvB,WAAW,gBAAgB;IAC3B,MAAM,WAAW;IACjB,UAAU,eAAe;IACzB,gBAAgB,qBAAqB;CACxC;AAED,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAKxE,CAAC;AAEF,wBAAgB,YAAY,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,EAAE;IAC3D,IAAI,EAAE,YAAY,CAAC;IACnB,SAAS,CAAC,EAAE,gBAAgB,CAAC;IAC7B,WAAW,EAAE,iBAAiB,CAAC;CAClC,GAAG,eAAe,CASlB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/functions/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAKvE,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAErF,oBAAY,eAAe;IACvB,WAAW,gBAAgB;IAC3B,MAAM,WAAW;IACjB,UAAU,eAAe;IACzB,gBAAgB,qBAAqB;CACxC;AAED,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAKxE,CAAC;AAEF,wBAAgB,YAAY,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,EAAE;IAC3D,IAAI,EAAE,YAAY,CAAC;IACnB,SAAS,CAAC,EAAE,gBAAgB,CAAC;IAC7B,WAAW,EAAE,iBAAiB,CAAC;CAClC,GAAG,eAAe,CASlB"}
@@ -1,34 +1,27 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.initFunction = exports.xLuceneFunctions = exports.xLuceneFunction = void 0;
7
- const box_1 = __importDefault(require("./geo/box"));
8
- const distance_1 = __importDefault(require("./geo/distance"));
9
- const polygon_1 = __importDefault(require("./geo/polygon"));
10
- const contains_point_1 = __importDefault(require("./geo/contains-point"));
11
- var xLuceneFunction;
1
+ import geoBoxFn from './geo/box.js';
2
+ import geoDistanceFn from './geo/distance.js';
3
+ import geoPolygonFn from './geo/polygon.js';
4
+ import geoContainsPointFn from './geo/contains-point.js';
5
+ export var xLuceneFunction;
12
6
  (function (xLuceneFunction) {
13
7
  xLuceneFunction["geoDistance"] = "geoDistance";
14
8
  xLuceneFunction["geoBox"] = "geoBox";
15
9
  xLuceneFunction["geoPolygon"] = "geoPolygon";
16
10
  xLuceneFunction["geoContainsPoint"] = "geoContainsPoint";
17
- })(xLuceneFunction || (exports.xLuceneFunction = xLuceneFunction = {}));
18
- exports.xLuceneFunctions = {
19
- geoDistance: distance_1.default,
20
- geoBox: box_1.default,
21
- geoPolygon: polygon_1.default,
22
- geoContainsPoint: contains_point_1.default
11
+ })(xLuceneFunction || (xLuceneFunction = {}));
12
+ export const xLuceneFunctions = {
13
+ geoDistance: geoDistanceFn,
14
+ geoBox: geoBoxFn,
15
+ geoPolygon: geoPolygonFn,
16
+ geoContainsPoint: geoContainsPointFn
23
17
  };
24
- function initFunction({ node, variables, type_config }) {
25
- const fnType = exports.xLuceneFunctions[node.name];
18
+ export function initFunction({ node, variables, type_config }) {
19
+ const fnType = xLuceneFunctions[node.name];
26
20
  if (fnType == null) {
27
21
  throw new TypeError(`Unknown xLucene function "${node.name}"`);
28
22
  }
29
23
  return fnType.create({
30
- type_config, node, variables: variables !== null && variables !== void 0 ? variables : {}
24
+ type_config, node, variables: variables ?? {}
31
25
  });
32
26
  }
33
- exports.initFunction = initFunction;
34
27
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/functions/index.ts"],"names":[],"mappings":";;;;;;AACA,oDAAiC;AACjC,8DAA2C;AAC3C,4DAAyC;AACzC,0EAAsD;AAGtD,IAAY,eAKX;AALD,WAAY,eAAe;IACvB,8CAA2B,CAAA;IAC3B,oCAAiB,CAAA;IACjB,4CAAyB,CAAA;IACzB,wDAAqC,CAAA;AACzC,CAAC,EALW,eAAe,+BAAf,eAAe,QAK1B;AAEY,QAAA,gBAAgB,GAAgD;IACzE,WAAW,EAAE,kBAAa;IAC1B,MAAM,EAAE,aAAQ;IAChB,UAAU,EAAE,iBAAY;IACxB,gBAAgB,EAAE,wBAAkB;CACvC,CAAC;AAEF,SAAgB,YAAY,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAI1D;IACG,MAAM,MAAM,GAAG,wBAAgB,CAAC,IAAI,CAAC,IAAI,CAAiC,CAAC;IAC3E,IAAI,MAAM,IAAI,IAAI,EAAE;QAChB,MAAM,IAAI,SAAS,CAAC,6BAA6B,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC;KAClE;IAED,OAAO,MAAM,CAAC,MAAM,CAAC;QACjB,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,aAAT,SAAS,cAAT,SAAS,GAAI,EAAE;KAChD,CAAC,CAAC;AACP,CAAC;AAbD,oCAaC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/functions/index.ts"],"names":[],"mappings":"AACA,OAAO,QAAQ,MAAM,cAAc,CAAC;AACpC,OAAO,aAAa,MAAM,mBAAmB,CAAC;AAC9C,OAAO,YAAY,MAAM,kBAAkB,CAAC;AAC5C,OAAO,kBAAkB,MAAM,yBAAyB,CAAC;AAGzD,MAAM,CAAN,IAAY,eAKX;AALD,WAAY,eAAe;IACvB,8CAA2B,CAAA;IAC3B,oCAAiB,CAAA;IACjB,4CAAyB,CAAA;IACzB,wDAAqC,CAAA;AACzC,CAAC,EALW,eAAe,KAAf,eAAe,QAK1B;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAgD;IACzE,WAAW,EAAE,aAAa;IAC1B,MAAM,EAAE,QAAQ;IAChB,UAAU,EAAE,YAAY;IACxB,gBAAgB,EAAE,kBAAkB;CACvC,CAAC;AAEF,MAAM,UAAU,YAAY,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAI1D;IACG,MAAM,MAAM,GAAG,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAiC,CAAC;IAC3E,IAAI,MAAM,IAAI,IAAI,EAAE;QAChB,MAAM,IAAI,SAAS,CAAC,6BAA6B,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC;KAClE;IAED,OAAO,MAAM,CAAC,MAAM,CAAC;QACjB,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,IAAI,EAAE;KAChD,CAAC,CAAC;AACP,CAAC"}
@@ -1,6 +1,6 @@
1
- export * from './parser';
2
- export * from './cached-parser';
3
- export * from './interfaces';
4
- export * from './utils';
5
- export * from './functions';
1
+ export * from './parser.js';
2
+ export * from './cached-parser.js';
3
+ export * from './interfaces.js';
4
+ export * from './utils.js';
5
+ export * from './functions/index.js';
6
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,oBAAoB,CAAC;AACnC,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAC;AAC3B,cAAc,sBAAsB,CAAC"}
package/dist/src/index.js CHANGED
@@ -1,22 +1,6 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./parser"), exports);
18
- __exportStar(require("./cached-parser"), exports);
19
- __exportStar(require("./interfaces"), exports);
20
- __exportStar(require("./utils"), exports);
21
- __exportStar(require("./functions"), exports);
1
+ export * from './parser.js';
2
+ export * from './cached-parser.js';
3
+ export * from './interfaces.js';
4
+ export * from './utils.js';
5
+ export * from './functions/index.js';
22
6
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,kDAAgC;AAChC,+CAA6B;AAC7B,0CAAwB;AACxB,8CAA4B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,oBAAoB,CAAC;AACnC,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAC;AAC3B,cAAc,sBAAsB,CAAC"}
@@ -1,7 +1,4 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.NodeType = void 0;
4
- var NodeType;
1
+ export var NodeType;
5
2
  (function (NodeType) {
6
3
  NodeType["LogicalGroup"] = "logical-group";
7
4
  NodeType["FieldGroup"] = "field-group";
@@ -15,5 +12,5 @@ var NodeType;
15
12
  NodeType["Empty"] = "empty";
16
13
  NodeType["Function"] = "function";
17
14
  NodeType["TermList"] = "term-list";
18
- })(NodeType || (exports.NodeType = NodeType = {}));
15
+ })(NodeType || (NodeType = {}));
19
16
  //# sourceMappingURL=interfaces.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../src/interfaces.ts"],"names":[],"mappings":";;;AA4CA,IAAY,QAaX;AAbD,WAAY,QAAQ;IAChB,0CAA8B,CAAA;IAC9B,sCAA0B,CAAA;IAC1B,uCAA2B,CAAA;IAC3B,iCAAqB,CAAA;IACrB,yBAAa,CAAA;IACb,6BAAiB,CAAA;IACjB,2BAAe,CAAA;IACf,6BAAiB,CAAA;IACjB,iCAAqB,CAAA;IACrB,2BAAe,CAAA;IACf,iCAAqB,CAAA;IACrB,kCAAsB,CAAA;AAC1B,CAAC,EAbW,QAAQ,wBAAR,QAAQ,QAanB"}
1
+ {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../src/interfaces.ts"],"names":[],"mappings":"AA4CA,MAAM,CAAN,IAAY,QAaX;AAbD,WAAY,QAAQ;IAChB,0CAA8B,CAAA;IAC9B,sCAA0B,CAAA;IAC1B,uCAA2B,CAAA;IAC3B,iCAAqB,CAAA;IACrB,yBAAa,CAAA;IACb,6BAAiB,CAAA;IACjB,2BAAe,CAAA;IACf,6BAAiB,CAAA;IACjB,iCAAqB,CAAA;IACrB,2BAAe,CAAA;IACf,iCAAqB,CAAA;IACrB,kCAAsB,CAAA;AAC1B,CAAC,EAbW,QAAQ,KAAR,QAAQ,QAanB"}
@@ -1,5 +1,5 @@
1
1
  import { xLuceneTypeConfig, xLuceneVariables } from '@terascope/types';
2
- import * as i from './interfaces';
2
+ import * as i from './interfaces.js';
3
3
  /**
4
4
  * Parse a xLucene query
5
5
  */
@@ -1 +1 @@
1
- {"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../src/parser.ts"],"names":[],"mappings":"AAGA,OAAO,EAAoB,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEzF,OAAO,KAAK,CAAC,MAAM,cAAc,CAAC;AAOlC;;EAEE;AACF,qBAAa,MAAM;IACf,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC;IACrB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,UAAU,EAAE,iBAAiB,CAAC;IACvC,QAAQ,CAAC,kBAAkB,EAAE,OAAO,CAAC;gBAGjC,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE,CAAC,CAAC,aAAa,EACzB,aAAa,CAAC,EAAE,CAAC,CAAC,IAAI;IA+D1B,WAAW,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,KAAK,OAAO,GAAG,CAAC,CAAC,IAAI;IAsHhF;;MAEE;IACF,QAAQ,CAAC,CAAC,SAAS,CAAC,CAAC,QAAQ,EAAE,GAAC,SAAS,CAAC,CAAC,QAAQ,EAAE,EACjD,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,KAAK,IAAI,EAAE,kBAAkB,UAAQ,GACjE,IAAI;IAmCP;;MAEE;IACF,YAAY,CACR,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,YAAY,KAAK,IAAI,EAClC,kBAAkB,UAAO,GAC1B,IAAI;IAQP;;;MAGE;IACF,iBAAiB,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,YAAY,KAAK,IAAI,GAAG,IAAI;IAsBrF,eAAe,CACX,cAAc,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,EACvC,cAAc,EAAE,CAAC,UAAU,EAAE,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,IAAI,GACxD,IAAI;IA+DP;;MAEE;IACF,gBAAgB,CAAC,SAAS,EAAE,gBAAgB,GAAG,MAAM;IA8BrD;;MAEE;IACF,OAAO,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI;CAkCjE"}
1
+ {"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../src/parser.ts"],"names":[],"mappings":"AAIA,OAAO,EAAoB,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEzF,OAAO,KAAK,CAAC,MAAM,iBAAiB,CAAC;AAOrC;;EAEE;AACF,qBAAa,MAAM;IACf,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC;IACrB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,UAAU,EAAE,iBAAiB,CAAC;IACvC,QAAQ,CAAC,kBAAkB,EAAE,OAAO,CAAC;gBAGjC,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE,CAAC,CAAC,aAAa,EACzB,aAAa,CAAC,EAAE,CAAC,CAAC,IAAI;IA+D1B,WAAW,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,KAAK,OAAO,GAAG,CAAC,CAAC,IAAI;IAsHhF;;MAEE;IACF,QAAQ,CAAC,CAAC,SAAS,CAAC,CAAC,QAAQ,EAAE,GAAC,SAAS,CAAC,CAAC,QAAQ,EAAE,EACjD,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,KAAK,IAAI,EAAE,kBAAkB,UAAQ,GACjE,IAAI;IAmCP;;MAEE;IACF,YAAY,CACR,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,YAAY,KAAK,IAAI,EAClC,kBAAkB,UAAO,GAC1B,IAAI;IAQP;;;MAGE;IACF,iBAAiB,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,YAAY,KAAK,IAAI,GAAG,IAAI;IAsBrF,eAAe,CACX,cAAc,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,EACvC,cAAc,EAAE,CAAC,UAAU,EAAE,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,IAAI,GACxD,IAAI;IA+DP;;MAEE;IACF,gBAAgB,CAAC,SAAS,EAAE,gBAAgB,GAAG,MAAM;IA8BrD;;MAEE;IACF,OAAO,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI;CAkCjE"}
@@ -1,43 +1,21 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.Parser = void 0;
27
- const utils_1 = require("@terascope/utils");
28
- const types_1 = require("@terascope/types");
29
- const peg_engine_1 = require("./peg-engine");
30
- const i = __importStar(require("./interfaces"));
31
- const utils = __importStar(require("./utils"));
1
+ import { TSError, trim, isRegExpLike, cloneDeep, unset, get } from '@terascope/utils';
2
+ import { xLuceneFieldType } from '@terascope/types';
3
+ import { parse } from './peg-engine.js';
4
+ import * as i from './interfaces.js';
5
+ import * as utils from './utils.js';
32
6
  const termTypes = new Set(utils.termTypes.filter((type) => (type !== i.NodeType.Range && type !== i.NodeType.Function)));
33
7
  /**
34
8
  * Parse a xLucene query
35
9
  */
36
- class Parser {
10
+ export class Parser {
11
+ ast;
12
+ query;
13
+ typeConfig;
14
+ filterNilVariables;
37
15
  constructor(query, options, _overrideNode) {
38
- this.query = (0, utils_1.trim)(query || '');
39
- this.filterNilVariables = !!(options === null || options === void 0 ? void 0 : options.filterNilVariables);
40
- this.typeConfig = { ...options === null || options === void 0 ? void 0 : options.type_config };
16
+ this.query = trim(query || '');
17
+ this.filterNilVariables = !!options?.filterNilVariables;
18
+ this.typeConfig = { ...options?.type_config };
41
19
  if (_overrideNode) {
42
20
  this.ast = _overrideNode;
43
21
  return;
@@ -46,13 +24,12 @@ class Parser {
46
24
  typeConfig: this.typeConfig,
47
25
  };
48
26
  try {
49
- this.ast = (0, peg_engine_1.parse)(this.query, { contextArg });
50
- if (options === null || options === void 0 ? void 0 : options.filterNilVariables) {
27
+ this.ast = parse(this.query, { contextArg });
28
+ if (options?.filterNilVariables) {
51
29
  if (!options.variables) {
52
30
  utils.logger.warn('Parser filtering out undefined variables but no variables were provided. Consider adding variables or not running in "filterNilVariables" mode.');
53
31
  }
54
32
  this.ast = this.filterNodes(this.ast, (_node) => {
55
- var _a, _b, _c, _d;
56
33
  let type = '';
57
34
  let value = '';
58
35
  let node = _node;
@@ -66,13 +43,13 @@ class Parser {
66
43
  value = node.value.value;
67
44
  }
68
45
  if (utils.isRange(node)) {
69
- type = (_a = node.left.value.type) !== null && _a !== void 0 ? _a : (_b = node.right) === null || _b === void 0 ? void 0 : _b.value.type;
70
- value = (_c = node.left.value.value) !== null && _c !== void 0 ? _c : (_d = node.right) === null || _d === void 0 ? void 0 : _d.value.value;
46
+ type = node.left.value.type ?? node.right?.value.type;
47
+ value = node.left.value.value ?? node.right?.value.value;
71
48
  }
72
49
  function keep(nodeType, nodeVariable) {
73
50
  if (nodeType !== 'variable')
74
51
  return true;
75
- if (nodeVariable in ((options === null || options === void 0 ? void 0 : options.variables) || {}))
52
+ if (nodeVariable in (options?.variables || {}))
76
53
  return true;
77
54
  return false;
78
55
  }
@@ -88,14 +65,14 @@ class Parser {
88
65
  if (err && err.message.includes('Expected ,')) {
89
66
  err.message = err.message.replace('Expected ,', 'Expected');
90
67
  }
91
- throw new utils_1.TSError(err, {
68
+ throw new TSError(err, {
92
69
  reason: `Failure to parse xLucene query "${this.query}"`,
93
70
  });
94
71
  }
95
72
  }
96
73
  filterNodes(ast, fn) {
97
74
  const filterNode = (ogNode, parent) => {
98
- const clone = (0, utils_1.cloneDeep)(ogNode);
75
+ const clone = cloneDeep(ogNode);
99
76
  if (utils.isLogicalGroup(clone) || utils.isFieldGroup(clone)) {
100
77
  const filtered = clone.flow
101
78
  .map((f) => {
@@ -127,7 +104,7 @@ class Parser {
127
104
  return;
128
105
  })
129
106
  .filter(// filter out flows with zero nodes
130
- (f) => !!(f === null || f === void 0 ? void 0 : f.nodes.filter(Boolean).length));
107
+ (f) => !!f?.nodes.filter(Boolean).length);
131
108
  if (!filtered.length) {
132
109
  return {
133
110
  type: i.NodeType.Empty
@@ -146,11 +123,11 @@ class Parser {
146
123
  if (clone.right) {
147
124
  keepRight = fn(clone.right, clone);
148
125
  if (!keepRight) {
149
- (0, utils_1.unset)(clone, 'right');
126
+ unset(clone, 'right');
150
127
  }
151
128
  }
152
129
  if (!keepLeft) {
153
- (0, utils_1.unset)(clone, 'left');
130
+ unset(clone, 'left');
154
131
  if (keepRight && clone.right) {
155
132
  clone.left = { ...clone.right, };
156
133
  }
@@ -321,12 +298,12 @@ class Parser {
321
298
  resolveVariables(variables) {
322
299
  const validatedVariables = utils.validateVariables(variables);
323
300
  const ast = this.mapNode((node, parent) => {
324
- const allowNil = (parent === null || parent === void 0 ? void 0 : parent.type) === i.NodeType.Conjunction;
301
+ const allowNil = parent?.type === i.NodeType.Conjunction;
325
302
  if (utils.isTermList(node)) {
326
303
  return coerceTermList(node, validatedVariables);
327
304
  }
328
305
  if ('value' in node) {
329
- return coerceNodeValue(node, validatedVariables, (parent === null || parent === void 0 ? void 0 : parent.type) === i.NodeType.Function, allowNil);
306
+ return coerceNodeValue(node, validatedVariables, parent?.type === i.NodeType.Function, allowNil);
330
307
  }
331
308
  if (utils.isRange(node)) {
332
309
  coerceRange(node, validatedVariables, allowNil);
@@ -373,7 +350,6 @@ class Parser {
373
350
  return mapNode(this.ast);
374
351
  }
375
352
  }
376
- exports.Parser = Parser;
377
353
  function coerceTermList(node, variables) {
378
354
  const values = utils.getFieldValue(node.value, variables);
379
355
  return {
@@ -399,8 +375,8 @@ function coerceNodeValue(node, variables, skipAutoFieldGroup, allowNil, isRange
399
375
  const coerceFn = allowNil && value == null
400
376
  ? () => null
401
377
  : utils.makeCoerceFn(node.field_type);
402
- const type = (0, utils_1.get)(node, 'type');
403
- const field = (0, utils_1.get)(node, 'field', '');
378
+ const type = get(node, 'type');
379
+ const field = get(node, 'field', '');
404
380
  if (Array.isArray(value)) {
405
381
  if (skipAutoFieldGroup) {
406
382
  return {
@@ -428,7 +404,7 @@ function coerceNodeValue(node, variables, skipAutoFieldGroup, allowNil, isRange
428
404
  };
429
405
  return fieldGroup;
430
406
  }
431
- if (type !== i.NodeType.Regexp && (0, utils_1.isRegExpLike)(value)) {
407
+ if (type !== i.NodeType.Regexp && isRegExpLike(value)) {
432
408
  return {
433
409
  type: i.NodeType.Regexp,
434
410
  field,
@@ -440,7 +416,7 @@ function coerceNodeValue(node, variables, skipAutoFieldGroup, allowNil, isRange
440
416
  }
441
417
  };
442
418
  }
443
- if (node.field_type === types_1.xLuceneFieldType.IPRange) {
419
+ if (node.field_type === xLuceneFieldType.IPRange) {
444
420
  return utils.createIPRangeFromTerm(node, value);
445
421
  }
446
422
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"parser.js","sourceRoot":"","sources":["../../src/parser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parser.js","sourceRoot":"","sources":["../../src/parser.ts"],"names":[],"mappings":"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"}