@balena/odata-parser 2.2.9 → 2.3.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.
@@ -1,3 +1,14 @@
1
+ - commits:
2
+ - subject: Add source map
3
+ hash: a6bb5e67fac1cdcc69491800ad042f003fa13556
4
+ body: ""
5
+ footer:
6
+ Change-type: minor
7
+ change-type: minor
8
+ author: Pagan Gazzard
9
+ version: 2.3.0
10
+ title: "'Add source map'"
11
+ date: 2022-06-06T16:33:40.752Z
1
12
  - commits:
2
13
  - subject: Update dependencies
3
14
  hash: e63884d3e86c2654fd601cacc53f3e8e61bb1d87
@@ -15,7 +26,7 @@
15
26
  author: Pagan Gazzard
16
27
  version: 2.2.9
17
28
  title: "'Remove circleci/update deps'"
18
- date: 2022-04-08T13:17:42.408Z
29
+ date: 2022-04-08T13:13:27.932Z
19
30
  - commits:
20
31
  - subject: Remove some typescript strict mode exceptions
21
32
  hash: 639771285e9aaae52bff21ff38eda5f921101a63
package/CHANGELOG.md CHANGED
@@ -4,6 +4,11 @@ All notable changes to this project will be documented in this file
4
4
  automatically by Versionist. DO NOT EDIT THIS FILE MANUALLY!
5
5
  This project adheres to [Semantic Versioning](http://semver.org/).
6
6
 
7
+ # v2.3.0
8
+ ## (2022-06-06)
9
+
10
+ * Add source map [Pagan Gazzard]
11
+
7
12
  # v2.2.9
8
13
  ## (2022-04-08)
9
14
 
package/odata-parser.js CHANGED
@@ -1,4 +1,4 @@
1
- // Generated by Peggy 1.2.0.
1
+ // Generated by Peggy 2.0.1.
2
2
  //
3
3
  // https://peggyjs.org/
4
4
 
@@ -12,6 +12,7 @@ function peg$subclass(child, parent) {
12
12
 
13
13
  function peg$SyntaxError(message, expected, found, location) {
14
14
  var self = Error.call(this, message);
15
+ // istanbul ignore next Check is a necessary evil to support older environments
15
16
  if (Object.setPrototypeOf) {
16
17
  Object.setPrototypeOf(self, peg$SyntaxError.prototype);
17
18
  }
@@ -47,14 +48,15 @@ peg$SyntaxError.prototype.format = function(sources) {
47
48
  var loc = this.location.source + ":" + s.line + ":" + s.column;
48
49
  if (src) {
49
50
  var e = this.location.end;
50
- var filler = peg$padEnd("", s.line.toString().length);
51
+ var filler = peg$padEnd("", s.line.toString().length, ' ');
51
52
  var line = src[s.line - 1];
52
53
  var last = s.line === e.line ? e.column : line.length + 1;
54
+ var hatLen = (last - s.column) || 1;
53
55
  str += "\n --> " + loc + "\n"
54
56
  + filler + " |\n"
55
57
  + s.line + " | " + line + "\n"
56
- + filler + " | " + peg$padEnd("", s.column - 1)
57
- + peg$padEnd("", last - s.column, "^");
58
+ + filler + " | " + peg$padEnd("", s.column - 1, ' ')
59
+ + peg$padEnd("", hatLen, "^");
58
60
  } else {
59
61
  str += "\n at " + loc;
60
62
  }
@@ -75,7 +77,7 @@ peg$SyntaxError.buildMessage = function(expected, found) {
75
77
  : classEscape(part);
76
78
  });
77
79
 
78
- return "[" + (expectation.inverted ? "^" : "") + escapedParts + "]";
80
+ return "[" + (expectation.inverted ? "^" : "") + escapedParts.join("") + "]";
79
81
  },
80
82
 
81
83
  any: function() {
@@ -395,13 +397,13 @@ function peg$parse(input, options) {
395
397
  var peg$f0 = function() {reset(); return true;};
396
398
  var peg$f1 = function(tree) { return { tree: tree, binds: binds } };
397
399
  var peg$f2 = function() {
398
- reset();
399
- var tree = eval(`peg$parse${options.rule}()`);
400
- return {
401
- tree,
402
- binds
403
- }
404
- };
400
+ reset();
401
+ var tree = eval(`peg$parse${options.rule}()`);
402
+ return {
403
+ tree,
404
+ binds
405
+ }
406
+ };
405
407
  var peg$f3 = function(model) { return model };
406
408
  var peg$f4 = function() { return { resource: '$metadata' } };
407
409
  var peg$f5 = function() { return { resource: '$serviceroot' } };
@@ -411,19 +413,19 @@ function peg$parse(input, options) {
411
413
  var peg$f9 = function(name, s) { return [ 'Text', s ] };
412
414
  var peg$f10 = function(name, value) { return !binds['@' + name] };
413
415
  var peg$f11 = function(name, value) {
414
- binds['@' + name] = value
415
- return {
416
- name: '@' + name,
417
- value: value
418
- }
419
- };
416
+ binds['@' + name] = value
417
+ return {
418
+ name: '@' + name,
419
+ value: value
420
+ }
421
+ };
420
422
  var peg$f12 = function(name, value) { return { name: name, value: value } };
421
423
  var peg$f13 = function(property, properties) { return { name: '$orderby', value: { properties: [property, ...properties] } } };
422
424
  var peg$f14 = function(property) { return 'desc' };
423
425
  var peg$f15 = function(property, order) {
424
- property.order = order;
425
- return property
426
- };
426
+ property.order = order;
427
+ return property
428
+ };
427
429
  var peg$f16 = function(value) { return { name: '$top', value: value } };
428
430
  var peg$f17 = function(value) { return { name: '$skip', value: value } };
429
431
  var peg$f18 = function() { return '' };
@@ -436,97 +438,111 @@ function peg$parse(input, options) {
436
438
  var peg$f25 = function(type, metadata) { return { name: '$format', value: { type, metadata } } };
437
439
  var peg$f26 = function(type) { return { name: '$format', value: type } };
438
440
  var peg$f27 = function() {
439
- precedence = 0;
440
- };
441
+ precedence = 0;
442
+ };
441
443
  var peg$f28 = function() {
442
- return precedence;
443
- };
444
+ return precedence;
445
+ };
444
446
  var peg$f29 = function(minPrecedence, x) { return [x] };
445
447
  var peg$f30 = function(minPrecedence, lhs, op) {
446
- precedence = operatorPrecedence[op] + 1
447
- return precedence > minPrecedence
448
- };
448
+ precedence = operatorPrecedence[op] + 1
449
+ return precedence > minPrecedence
450
+ };
449
451
  var peg$f31 = function(minPrecedence, lhs, op, rhs) {
450
- if (Array.isArray(lhs[0]) && op === lhs[0][0]) {
451
- lhs[0].push(rhs);
452
- } else {
453
- lhs[0] = [ op, lhs[0], rhs ];
454
- }
455
- };
452
+ if (Array.isArray(lhs[0]) && op === lhs[0][0]) {
453
+ lhs[0].push(rhs);
454
+ } else {
455
+ lhs[0] = [ op, lhs[0], rhs ];
456
+ }
457
+ };
456
458
  var peg$f32 = function(minPrecedence, lhs, op, rhs) {lhs[0] = [ op, lhs[0], rhs ]};
457
459
  var peg$f33 = function(minPrecedence, lhs) { return lhs[0] };
458
460
  var peg$f34 = function(minPrecedence) {return minPrecedence > 0};
459
461
  var peg$f35 = function(minPrecedence) {
460
- precedence = 0;
461
- return peg$parseFilterByExpressionLoop()
462
- };
462
+ precedence = 0;
463
+ return peg$parseFilterByExpressionLoop()
464
+ };
463
465
  var peg$f36 = function(first, rest) { return [ first, ...rest ] };
464
466
  var peg$f37 = function(methodName, first, rest) { return [ first, ...rest ] };
465
467
  var peg$f38 = function(methodName) { return [] };
466
468
  var peg$f39 = function(methodName, args) { return args.length === methods[methodName] || (Array.isArray(methods[methodName]) && methods[methodName].includes(args.length)) };
467
469
  var peg$f40 = function(methodName, args) { return [ 'call', { args: args, method: methodName } ] };
468
470
  var peg$f41 = function(name, identifier, expression) { return { expression: expression, identifier: identifier, method: name } };
469
- var peg$f42 = function(path, paths) { return [path, ...paths] };
470
- var peg$f43 = function(resource, property) { return true };
471
- var peg$f44 = function(resource, property, count) { return { name: resource, property, count } };
472
- var peg$f45 = function(resource) { return true };
473
- var peg$f46 = function(resource, count, option, options) { return CollapseObjectArray([option, ...options]) };
474
- var peg$f47 = function(resource, count) { return {} };
475
- var peg$f48 = function(resource, count, optionsObj, next) { return { name: resource, property: next, count: count, options: optionsObj} };
476
- var peg$f49 = function(resource, next) { return { name: resource, property: next } };
477
- var peg$f50 = function(resource, lambda) { return { name: resource, lambda: lambda } };
478
- var peg$f51 = function(resource, method) { return { name: resource, method: method } };
479
- var peg$f52 = function(keyBind, keyBinds) { return CollapseObjectArray([keyBind, ...keyBinds]) };
480
- var peg$f53 = function(name, value) { return { name, value }};
481
- var peg$f54 = function(resource) { return { resource } };
482
- var peg$f55 = function(result, key) { result.key = key };
483
- var peg$f56 = function(result, link) {result.link = link};
484
- var peg$f57 = function(result, property) {result.property = property};
485
- var peg$f58 = function(result) {result.count = true};
486
- var peg$f59 = function(result) { return result };
487
- var peg$f60 = function(result, options) {result.options = options};
488
- var peg$f61 = function(resourceName) { return decodeURIComponent(resourceName) };
489
- var peg$f62 = function(sign, d) { return Number(sign + d) };
490
- var peg$f63 = function(d) { return parseInt(d, 10) };
491
- var peg$f64 = function() { return null };
492
- var peg$f65 = function() { return true };
493
- var peg$f66 = function() { return false };
494
- var peg$f67 = function(sign, day, hour, minute, second) {return hour || minute || second};
495
- var peg$f68 = function(sign, day, hour, minute, second) {
496
- return {
497
- hour: hour || undefined,
498
- minute: minute || undefined,
499
- second: second || undefined
500
- }
501
- };
502
- var peg$f69 = function(sign, day, time) {return day || time};
503
- var peg$f70 = function(sign, day, time) { return {
504
- negative: sign === '-',
505
- day: day || undefined,
506
- hour: time ? time.hour : undefined,
507
- minute: time ? time.minute : undefined,
508
- second: time ? time.second : undefined,
509
- } };
510
- var peg$f71 = function(d) { return Number(d) };
511
- var peg$f72 = function(text) { return decodeURIComponent(text) };
512
- var peg$f73 = function() { return '+' };
513
- var peg$f74 = function() { return '\'' };
514
- var peg$f75 = function(text) { return decodeURIComponent(text.join('')) };
515
- var peg$f76 = function(param) { return { bind: '@' + param } };
516
- var peg$f77 = function(n) { return Bind('Real', n) };
517
- var peg$f78 = function() { return 'Date Time' };
518
- var peg$f79 = function() { return 'Date' };
519
- var peg$f80 = function(type, date) { return Date.parse(date) };
520
- var peg$f81 = function(type, date) { return isNaN(date) };
521
- var peg$f82 = function(type, date) { return [type, date] };
522
- var peg$f83 = function(d) { return Bind(d[0], d[1]) };
523
- var peg$f84 = function(b) { return Bind('Boolean', b) };
524
- var peg$f85 = function(resource) {
525
- var bind = Bind('ContentReference', resource)
526
- return { resource: bind, key: bind }
527
- };
528
- var peg$f86 = function(t) { return Bind('Text', t) };
529
-
471
+ var peg$f42 = function(methodName, first, rest) { return [ first, ...rest ] };
472
+ var peg$f43 = function(methodName) { return [] };
473
+ var peg$f44 = function(methodName, args) { return [ 'call', { args: args, method: methodName } ] };
474
+ var peg$f45 = function(path, paths) { return [path, ...paths] };
475
+ var peg$f46 = function(resource, property) { return true };
476
+ var peg$f47 = function(resource, property, count) { return { name: resource, property, count } };
477
+ var peg$f48 = function(path, paths) { return [path, ...paths] };
478
+ var peg$f49 = function(resource) { return true };
479
+ var peg$f50 = function(resource, count, option, options) { return CollapseObjectArray([option, ...options]) };
480
+ var peg$f51 = function(resource, count) { return {} };
481
+ var peg$f52 = function(resource, count, optionsObj, next) { return { name: resource, property: next, count: count, options: optionsObj} };
482
+ var peg$f53 = function(resource, next) { return { name: resource, property: next } };
483
+ var peg$f54 = function(resource, lambda) { return { name: resource, lambda: lambda } };
484
+ var peg$f55 = function(resource, method) { return { name: resource, method: method } };
485
+ var peg$f56 = function(keyBind, keyBinds) { return CollapseObjectArray([keyBind, ...keyBinds]) };
486
+ var peg$f57 = function(name, value) { return { name, value }};
487
+ var peg$f58 = function(resource) { return { resource } };
488
+ var peg$f59 = function(result, key) { result.key = key };
489
+ var peg$f60 = function(result, link) {result.link = link};
490
+ var peg$f61 = function(result, property) {result.property = property};
491
+ var peg$f62 = function(result) {result.count = true};
492
+ var peg$f63 = function(result) { return result };
493
+ var peg$f64 = function(result, link) {result.link = link};
494
+ var peg$f65 = function(result, property) {result.property = property};
495
+ var peg$f66 = function(result) { return result };
496
+ var peg$f67 = function(result, options) {result.options = options};
497
+ var peg$f68 = function(result) { return result };
498
+ var peg$f69 = function(resource) { return { resource } };
499
+ var peg$f70 = function(result, key) { result.key = key };
500
+ var peg$f71 = function(result, link) {result.link = link};
501
+ var peg$f72 = function(result, property) {result.property = property};
502
+ var peg$f73 = function(result) {result.count = true};
503
+ var peg$f74 = function(result, options) {result.options = options};
504
+ var peg$f75 = function(result) { return result };
505
+ var peg$f76 = function(resourceName) { return decodeURIComponent(resourceName) };
506
+ var peg$f77 = function(sign, d) { return Number(sign + d) };
507
+ var peg$f78 = function(d) { return parseInt(d, 10) };
508
+ var peg$f79 = function() { return null };
509
+ var peg$f80 = function() { return true };
510
+ var peg$f81 = function() { return false };
511
+ var peg$f82 = function(sign, day, hour, minute, second) {return hour || minute || second};
512
+ var peg$f83 = function(sign, day, hour, minute, second) {
513
+ return {
514
+ hour: hour || undefined,
515
+ minute: minute || undefined,
516
+ second: second || undefined
517
+ }
518
+ };
519
+ var peg$f84 = function(sign, day, time) {return day || time};
520
+ var peg$f85 = function(sign, day, time) { return {
521
+ negative: sign === '-',
522
+ day: day || undefined,
523
+ hour: time ? time.hour : undefined,
524
+ minute: time ? time.minute : undefined,
525
+ second: time ? time.second : undefined,
526
+ } };
527
+ var peg$f86 = function(d) { return Number(d) };
528
+ var peg$f87 = function(text) { return decodeURIComponent(text) };
529
+ var peg$f88 = function() { return '+' };
530
+ var peg$f89 = function() { return '\'' };
531
+ var peg$f90 = function(text) { return decodeURIComponent(text.join('')) };
532
+ var peg$f91 = function(param) { return { bind: '@' + param } };
533
+ var peg$f92 = function(n) { return Bind('Real', n) };
534
+ var peg$f93 = function() { return 'Date Time' };
535
+ var peg$f94 = function() { return 'Date' };
536
+ var peg$f95 = function(type, date) { return Date.parse(date) };
537
+ var peg$f96 = function(type, date) { return isNaN(date) };
538
+ var peg$f97 = function(type, date) { return [type, date] };
539
+ var peg$f98 = function(d) { return Bind(d[0], d[1]) };
540
+ var peg$f99 = function(b) { return Bind('Boolean', b) };
541
+ var peg$f100 = function(resource) {
542
+ var bind = Bind('ContentReference', resource)
543
+ return { resource: bind, key: bind }
544
+ };
545
+ var peg$f101 = function(t) { return Bind('Text', t) };
530
546
  var peg$currPos = 0;
531
547
  var peg$savedPos = 0;
532
548
  var peg$posDetailsCache = [{ line: 1, column: 1 }];
@@ -3126,7 +3142,7 @@ function peg$parse(input, options) {
3126
3142
  }
3127
3143
  s7 = peg$parsespaces();
3128
3144
  peg$savedPos = s4;
3129
- s4 = peg$f37(s1, s5, s6);
3145
+ s4 = peg$f42(s1, s5, s6);
3130
3146
  } else {
3131
3147
  peg$currPos = s4;
3132
3148
  s4 = peg$FAILED;
@@ -3135,7 +3151,7 @@ function peg$parse(input, options) {
3135
3151
  s4 = peg$currPos;
3136
3152
  s5 = '';
3137
3153
  peg$savedPos = s4;
3138
- s5 = peg$f38(s1);
3154
+ s5 = peg$f43(s1);
3139
3155
  s4 = s5;
3140
3156
  }
3141
3157
  if (s4 !== peg$FAILED) {
@@ -3148,7 +3164,7 @@ function peg$parse(input, options) {
3148
3164
  }
3149
3165
  if (s5 !== peg$FAILED) {
3150
3166
  peg$savedPos = s0;
3151
- s0 = peg$f40(s1, s4);
3167
+ s0 = peg$f44(s1, s4);
3152
3168
  } else {
3153
3169
  peg$currPos = s0;
3154
3170
  s0 = peg$FAILED;
@@ -3231,7 +3247,7 @@ function peg$parse(input, options) {
3231
3247
  }
3232
3248
  }
3233
3249
  peg$savedPos = s0;
3234
- s0 = peg$f42(s1, s2);
3250
+ s0 = peg$f45(s1, s2);
3235
3251
  } else {
3236
3252
  peg$currPos = s0;
3237
3253
  s0 = peg$FAILED;
@@ -3290,14 +3306,14 @@ function peg$parse(input, options) {
3290
3306
  }
3291
3307
  if (s4 !== peg$FAILED) {
3292
3308
  peg$savedPos = s3;
3293
- s4 = peg$f43(s1, s2);
3309
+ s4 = peg$f46(s1, s2);
3294
3310
  }
3295
3311
  s3 = s4;
3296
3312
  if (s3 === peg$FAILED) {
3297
3313
  s3 = null;
3298
3314
  }
3299
3315
  peg$savedPos = s0;
3300
- s0 = peg$f44(s1, s2, s3);
3316
+ s0 = peg$f47(s1, s2, s3);
3301
3317
  } else {
3302
3318
  peg$currPos = s0;
3303
3319
  s0 = peg$FAILED;
@@ -3368,7 +3384,7 @@ function peg$parse(input, options) {
3368
3384
  }
3369
3385
  }
3370
3386
  peg$savedPos = s0;
3371
- s0 = peg$f42(s1, s2);
3387
+ s0 = peg$f48(s1, s2);
3372
3388
  } else {
3373
3389
  peg$currPos = s0;
3374
3390
  s0 = peg$FAILED;
@@ -3404,7 +3420,7 @@ function peg$parse(input, options) {
3404
3420
  }
3405
3421
  if (s3 !== peg$FAILED) {
3406
3422
  peg$savedPos = s2;
3407
- s3 = peg$f45(s1);
3423
+ s3 = peg$f49(s1);
3408
3424
  }
3409
3425
  s2 = s3;
3410
3426
  if (s2 === peg$FAILED) {
@@ -3467,7 +3483,7 @@ function peg$parse(input, options) {
3467
3483
  }
3468
3484
  }
3469
3485
  peg$savedPos = s5;
3470
- s5 = peg$f46(s1, s2, s6, s7);
3486
+ s5 = peg$f50(s1, s2, s6, s7);
3471
3487
  } else {
3472
3488
  peg$currPos = s5;
3473
3489
  s5 = peg$FAILED;
@@ -3476,7 +3492,7 @@ function peg$parse(input, options) {
3476
3492
  s5 = peg$currPos;
3477
3493
  s6 = '';
3478
3494
  peg$savedPos = s5;
3479
- s6 = peg$f47(s1, s2);
3495
+ s6 = peg$f51(s1, s2);
3480
3496
  s5 = s6;
3481
3497
  }
3482
3498
  if (s5 !== peg$FAILED) {
@@ -3528,7 +3544,7 @@ function peg$parse(input, options) {
3528
3544
  s4 = null;
3529
3545
  }
3530
3546
  peg$savedPos = s0;
3531
- s0 = peg$f48(s1, s2, s3, s4);
3547
+ s0 = peg$f52(s1, s2, s3, s4);
3532
3548
  } else {
3533
3549
  peg$currPos = s0;
3534
3550
  s0 = peg$FAILED;
@@ -3566,7 +3582,7 @@ function peg$parse(input, options) {
3566
3582
  s4 = peg$parseLambdaPropertyPath();
3567
3583
  if (s4 !== peg$FAILED) {
3568
3584
  peg$savedPos = s3;
3569
- s4 = peg$f49(s1, s4);
3585
+ s4 = peg$f53(s1, s4);
3570
3586
  }
3571
3587
  s3 = s4;
3572
3588
  if (s3 === peg$FAILED) {
@@ -3574,7 +3590,7 @@ function peg$parse(input, options) {
3574
3590
  s4 = peg$parseLambdaMethodCall();
3575
3591
  if (s4 !== peg$FAILED) {
3576
3592
  peg$savedPos = s3;
3577
- s4 = peg$f50(s1, s4);
3593
+ s4 = peg$f54(s1, s4);
3578
3594
  }
3579
3595
  s3 = s4;
3580
3596
  if (s3 === peg$FAILED) {
@@ -3582,7 +3598,7 @@ function peg$parse(input, options) {
3582
3598
  s4 = peg$parseResourceMethodCall();
3583
3599
  if (s4 !== peg$FAILED) {
3584
3600
  peg$savedPos = s3;
3585
- s4 = peg$f51(s1, s4);
3601
+ s4 = peg$f55(s1, s4);
3586
3602
  }
3587
3603
  s3 = s4;
3588
3604
  }
@@ -3678,7 +3694,7 @@ function peg$parse(input, options) {
3678
3694
  }
3679
3695
  }
3680
3696
  peg$savedPos = s2;
3681
- s2 = peg$f52(s3, s4);
3697
+ s2 = peg$f56(s3, s4);
3682
3698
  } else {
3683
3699
  peg$currPos = s2;
3684
3700
  s2 = peg$FAILED;
@@ -3738,7 +3754,7 @@ function peg$parse(input, options) {
3738
3754
  s3 = peg$parseKeyBind();
3739
3755
  if (s3 !== peg$FAILED) {
3740
3756
  peg$savedPos = s0;
3741
- s0 = peg$f53(s1, s3);
3757
+ s0 = peg$f57(s1, s3);
3742
3758
  } else {
3743
3759
  peg$currPos = s0;
3744
3760
  s0 = peg$FAILED;
@@ -3846,7 +3862,7 @@ function peg$parse(input, options) {
3846
3862
  s4 = peg$parseResourceName();
3847
3863
  if (s4 !== peg$FAILED) {
3848
3864
  peg$savedPos = s3;
3849
- s4 = peg$f54(s4);
3865
+ s4 = peg$f58(s4);
3850
3866
  }
3851
3867
  s3 = s4;
3852
3868
  if (s3 !== peg$FAILED) {
@@ -3855,7 +3871,7 @@ function peg$parse(input, options) {
3855
3871
  s6 = peg$parseKey();
3856
3872
  if (s6 !== peg$FAILED) {
3857
3873
  peg$savedPos = s5;
3858
- s6 = peg$f55(s3, s6);
3874
+ s6 = peg$f59(s3, s6);
3859
3875
  }
3860
3876
  s5 = s6;
3861
3877
  if (s5 !== peg$FAILED) {
@@ -3863,7 +3879,7 @@ function peg$parse(input, options) {
3863
3879
  s7 = peg$parseLinks();
3864
3880
  if (s7 !== peg$FAILED) {
3865
3881
  peg$savedPos = s6;
3866
- s7 = peg$f56(s3, s7);
3882
+ s7 = peg$f60(s3, s7);
3867
3883
  }
3868
3884
  s6 = s7;
3869
3885
  if (s6 === peg$FAILED) {
@@ -3871,7 +3887,7 @@ function peg$parse(input, options) {
3871
3887
  s7 = peg$parseSubPathSegment();
3872
3888
  if (s7 !== peg$FAILED) {
3873
3889
  peg$savedPos = s6;
3874
- s7 = peg$f57(s3, s7);
3890
+ s7 = peg$f61(s3, s7);
3875
3891
  }
3876
3892
  s6 = s7;
3877
3893
  }
@@ -3895,7 +3911,7 @@ function peg$parse(input, options) {
3895
3911
  }
3896
3912
  if (s5 !== peg$FAILED) {
3897
3913
  peg$savedPos = s4;
3898
- s5 = peg$f58(s3);
3914
+ s5 = peg$f62(s3);
3899
3915
  }
3900
3916
  s4 = s5;
3901
3917
  }
@@ -3903,7 +3919,7 @@ function peg$parse(input, options) {
3903
3919
  s4 = null;
3904
3920
  }
3905
3921
  peg$savedPos = s1;
3906
- s1 = peg$f59(s3);
3922
+ s1 = peg$f63(s3);
3907
3923
  } else {
3908
3924
  peg$currPos = s1;
3909
3925
  s1 = peg$FAILED;
@@ -3920,7 +3936,7 @@ function peg$parse(input, options) {
3920
3936
  s4 = peg$parseLinks();
3921
3937
  if (s4 !== peg$FAILED) {
3922
3938
  peg$savedPos = s3;
3923
- s4 = peg$f56(s2, s4);
3939
+ s4 = peg$f64(s2, s4);
3924
3940
  }
3925
3941
  s3 = s4;
3926
3942
  if (s3 === peg$FAILED) {
@@ -3928,7 +3944,7 @@ function peg$parse(input, options) {
3928
3944
  s4 = peg$parseSubPathSegment();
3929
3945
  if (s4 !== peg$FAILED) {
3930
3946
  peg$savedPos = s3;
3931
- s4 = peg$f57(s2, s4);
3947
+ s4 = peg$f65(s2, s4);
3932
3948
  }
3933
3949
  s3 = s4;
3934
3950
  }
@@ -3936,7 +3952,7 @@ function peg$parse(input, options) {
3936
3952
  s3 = null;
3937
3953
  }
3938
3954
  peg$savedPos = s1;
3939
- s1 = peg$f59(s2);
3955
+ s1 = peg$f66(s2);
3940
3956
  } else {
3941
3957
  peg$currPos = s1;
3942
3958
  s1 = peg$FAILED;
@@ -3956,7 +3972,7 @@ function peg$parse(input, options) {
3956
3972
  s5 = peg$parseQueryOptions();
3957
3973
  if (s5 !== peg$FAILED) {
3958
3974
  peg$savedPos = s4;
3959
- s5 = peg$f60(s1, s5);
3975
+ s5 = peg$f67(s1, s5);
3960
3976
  }
3961
3977
  s4 = s5;
3962
3978
  if (s4 === peg$FAILED) {
@@ -3972,7 +3988,7 @@ function peg$parse(input, options) {
3972
3988
  s2 = null;
3973
3989
  }
3974
3990
  peg$savedPos = s0;
3975
- s0 = peg$f59(s1);
3991
+ s0 = peg$f68(s1);
3976
3992
  } else {
3977
3993
  peg$currPos = s0;
3978
3994
  s0 = peg$FAILED;
@@ -4008,7 +4024,7 @@ function peg$parse(input, options) {
4008
4024
  s3 = peg$parseResourceName();
4009
4025
  if (s3 !== peg$FAILED) {
4010
4026
  peg$savedPos = s2;
4011
- s3 = peg$f54(s3);
4027
+ s3 = peg$f69(s3);
4012
4028
  }
4013
4029
  s2 = s3;
4014
4030
  if (s2 !== peg$FAILED) {
@@ -4016,7 +4032,7 @@ function peg$parse(input, options) {
4016
4032
  s4 = peg$parseKey();
4017
4033
  if (s4 !== peg$FAILED) {
4018
4034
  peg$savedPos = s3;
4019
- s4 = peg$f55(s2, s4);
4035
+ s4 = peg$f70(s2, s4);
4020
4036
  }
4021
4037
  s3 = s4;
4022
4038
  if (s3 === peg$FAILED) {
@@ -4034,7 +4050,7 @@ function peg$parse(input, options) {
4034
4050
  s6 = peg$parseSubPathSegment();
4035
4051
  if (s6 !== peg$FAILED) {
4036
4052
  peg$savedPos = s4;
4037
- s4 = peg$f56(s2, s6);
4053
+ s4 = peg$f71(s2, s6);
4038
4054
  } else {
4039
4055
  peg$currPos = s4;
4040
4056
  s4 = peg$FAILED;
@@ -4048,7 +4064,7 @@ function peg$parse(input, options) {
4048
4064
  s5 = peg$parseSubPathSegment();
4049
4065
  if (s5 !== peg$FAILED) {
4050
4066
  peg$savedPos = s4;
4051
- s5 = peg$f57(s2, s5);
4067
+ s5 = peg$f72(s2, s5);
4052
4068
  }
4053
4069
  s4 = s5;
4054
4070
  }
@@ -4065,7 +4081,7 @@ function peg$parse(input, options) {
4065
4081
  }
4066
4082
  if (s6 !== peg$FAILED) {
4067
4083
  peg$savedPos = s5;
4068
- s6 = peg$f58(s2);
4084
+ s6 = peg$f73(s2);
4069
4085
  }
4070
4086
  s5 = s6;
4071
4087
  if (s5 === peg$FAILED) {
@@ -4084,7 +4100,7 @@ function peg$parse(input, options) {
4084
4100
  s9 = peg$parseQueryOptions();
4085
4101
  if (s9 !== peg$FAILED) {
4086
4102
  peg$savedPos = s8;
4087
- s9 = peg$f60(s2, s9);
4103
+ s9 = peg$f74(s2, s9);
4088
4104
  }
4089
4105
  s8 = s9;
4090
4106
  if (s8 === peg$FAILED) {
@@ -4100,7 +4116,7 @@ function peg$parse(input, options) {
4100
4116
  s6 = null;
4101
4117
  }
4102
4118
  peg$savedPos = s0;
4103
- s0 = peg$f59(s2);
4119
+ s0 = peg$f75(s2);
4104
4120
  } else {
4105
4121
  peg$currPos = s0;
4106
4122
  s0 = peg$FAILED;
@@ -4158,7 +4174,7 @@ function peg$parse(input, options) {
4158
4174
  }
4159
4175
  if (s1 !== peg$FAILED) {
4160
4176
  peg$savedPos = s0;
4161
- s1 = peg$f61(s1);
4177
+ s1 = peg$f76(s1);
4162
4178
  }
4163
4179
  s0 = s1;
4164
4180
 
@@ -4265,7 +4281,7 @@ function peg$parse(input, options) {
4265
4281
  }
4266
4282
  if (s2 !== peg$FAILED) {
4267
4283
  peg$savedPos = s0;
4268
- s0 = peg$f62(s1, s2);
4284
+ s0 = peg$f77(s1, s2);
4269
4285
  } else {
4270
4286
  peg$currPos = s0;
4271
4287
  s0 = peg$FAILED;
@@ -4323,7 +4339,7 @@ function peg$parse(input, options) {
4323
4339
  }
4324
4340
  if (s1 !== peg$FAILED) {
4325
4341
  peg$savedPos = s0;
4326
- s1 = peg$f63(s1);
4342
+ s1 = peg$f78(s1);
4327
4343
  }
4328
4344
  s0 = s1;
4329
4345
 
@@ -4354,7 +4370,7 @@ function peg$parse(input, options) {
4354
4370
  }
4355
4371
  if (s1 !== peg$FAILED) {
4356
4372
  peg$savedPos = s0;
4357
- s1 = peg$f64();
4373
+ s1 = peg$f79();
4358
4374
  }
4359
4375
  s0 = s1;
4360
4376
 
@@ -4385,7 +4401,7 @@ function peg$parse(input, options) {
4385
4401
  }
4386
4402
  if (s1 !== peg$FAILED) {
4387
4403
  peg$savedPos = s0;
4388
- s1 = peg$f65();
4404
+ s1 = peg$f80();
4389
4405
  }
4390
4406
  s0 = s1;
4391
4407
  if (s0 === peg$FAILED) {
@@ -4399,7 +4415,7 @@ function peg$parse(input, options) {
4399
4415
  }
4400
4416
  if (s1 !== peg$FAILED) {
4401
4417
  peg$savedPos = s0;
4402
- s1 = peg$f66();
4418
+ s1 = peg$f81();
4403
4419
  }
4404
4420
  s0 = s1;
4405
4421
  }
@@ -4544,7 +4560,7 @@ function peg$parse(input, options) {
4544
4560
  s10 = null;
4545
4561
  }
4546
4562
  peg$savedPos = peg$currPos;
4547
- s11 = peg$f67(s3, s5, s8, s9, s10);
4563
+ s11 = peg$f82(s3, s5, s8, s9, s10);
4548
4564
  if (s11) {
4549
4565
  s11 = undefined;
4550
4566
  } else {
@@ -4552,7 +4568,7 @@ function peg$parse(input, options) {
4552
4568
  }
4553
4569
  if (s11 !== peg$FAILED) {
4554
4570
  peg$savedPos = s6;
4555
- s6 = peg$f68(s3, s5, s8, s9, s10);
4571
+ s6 = peg$f83(s3, s5, s8, s9, s10);
4556
4572
  } else {
4557
4573
  peg$currPos = s6;
4558
4574
  s6 = peg$FAILED;
@@ -4565,7 +4581,7 @@ function peg$parse(input, options) {
4565
4581
  s6 = null;
4566
4582
  }
4567
4583
  peg$savedPos = peg$currPos;
4568
- s7 = peg$f69(s3, s5, s6);
4584
+ s7 = peg$f84(s3, s5, s6);
4569
4585
  if (s7) {
4570
4586
  s7 = undefined;
4571
4587
  } else {
@@ -4575,7 +4591,7 @@ function peg$parse(input, options) {
4575
4591
  s8 = peg$parseApostrophe();
4576
4592
  if (s8 !== peg$FAILED) {
4577
4593
  peg$savedPos = s0;
4578
- s0 = peg$f70(s3, s5, s6);
4594
+ s0 = peg$f85(s3, s5, s6);
4579
4595
  } else {
4580
4596
  peg$currPos = s0;
4581
4597
  s0 = peg$FAILED;
@@ -4696,7 +4712,7 @@ function peg$parse(input, options) {
4696
4712
  }
4697
4713
  if (s1 !== peg$FAILED) {
4698
4714
  peg$savedPos = s0;
4699
- s1 = peg$f71(s1);
4715
+ s1 = peg$f86(s1);
4700
4716
  }
4701
4717
  s0 = s1;
4702
4718
  if (s0 === peg$FAILED) {
@@ -4742,7 +4758,7 @@ function peg$parse(input, options) {
4742
4758
  }
4743
4759
  s1 = input.substring(s1, peg$currPos);
4744
4760
  peg$savedPos = s0;
4745
- s1 = peg$f72(s1);
4761
+ s1 = peg$f87(s1);
4746
4762
  s0 = s1;
4747
4763
 
4748
4764
  peg$resultsCache[key] = { nextPos: peg$currPos, result: s0 };
@@ -4780,7 +4796,7 @@ function peg$parse(input, options) {
4780
4796
  }
4781
4797
  if (s1 !== peg$FAILED) {
4782
4798
  peg$savedPos = s0;
4783
- s1 = peg$f73();
4799
+ s1 = peg$f88();
4784
4800
  }
4785
4801
  s0 = s1;
4786
4802
  if (s0 === peg$FAILED) {
@@ -4832,7 +4848,7 @@ function peg$parse(input, options) {
4832
4848
  }
4833
4849
  if (s1 !== peg$FAILED) {
4834
4850
  peg$savedPos = s0;
4835
- s1 = peg$f74();
4851
+ s1 = peg$f89();
4836
4852
  }
4837
4853
  s0 = s1;
4838
4854
  }
@@ -4954,7 +4970,7 @@ function peg$parse(input, options) {
4954
4970
  s3 = peg$parseApostrophe();
4955
4971
  if (s3 !== peg$FAILED) {
4956
4972
  peg$savedPos = s0;
4957
- s0 = peg$f75(s2);
4973
+ s0 = peg$f90(s2);
4958
4974
  } else {
4959
4975
  peg$currPos = s0;
4960
4976
  s0 = peg$FAILED;
@@ -4993,7 +5009,7 @@ function peg$parse(input, options) {
4993
5009
  s2 = peg$parseResourceName();
4994
5010
  if (s2 !== peg$FAILED) {
4995
5011
  peg$savedPos = s0;
4996
- s0 = peg$f76(s2);
5012
+ s0 = peg$f91(s2);
4997
5013
  } else {
4998
5014
  peg$currPos = s0;
4999
5015
  s0 = peg$FAILED;
@@ -5024,7 +5040,7 @@ function peg$parse(input, options) {
5024
5040
  s1 = peg$parseNumber();
5025
5041
  if (s1 !== peg$FAILED) {
5026
5042
  peg$savedPos = s0;
5027
- s1 = peg$f77(s1);
5043
+ s1 = peg$f92(s1);
5028
5044
  }
5029
5045
  s0 = s1;
5030
5046
 
@@ -5056,7 +5072,7 @@ function peg$parse(input, options) {
5056
5072
  }
5057
5073
  if (s2 !== peg$FAILED) {
5058
5074
  peg$savedPos = s1;
5059
- s2 = peg$f78();
5075
+ s2 = peg$f93();
5060
5076
  }
5061
5077
  s1 = s2;
5062
5078
  if (s1 === peg$FAILED) {
@@ -5070,7 +5086,7 @@ function peg$parse(input, options) {
5070
5086
  }
5071
5087
  if (s2 !== peg$FAILED) {
5072
5088
  peg$savedPos = s1;
5073
- s2 = peg$f79();
5089
+ s2 = peg$f94();
5074
5090
  }
5075
5091
  s1 = s2;
5076
5092
  }
@@ -5079,12 +5095,12 @@ function peg$parse(input, options) {
5079
5095
  s3 = peg$parseQuotedText();
5080
5096
  if (s3 !== peg$FAILED) {
5081
5097
  peg$savedPos = s2;
5082
- s3 = peg$f80(s1, s3);
5098
+ s3 = peg$f95(s1, s3);
5083
5099
  }
5084
5100
  s2 = s3;
5085
5101
  if (s2 !== peg$FAILED) {
5086
5102
  peg$savedPos = peg$currPos;
5087
- s3 = peg$f81(s1, s2);
5103
+ s3 = peg$f96(s1, s2);
5088
5104
  if (s3) {
5089
5105
  s3 = peg$FAILED;
5090
5106
  } else {
@@ -5092,7 +5108,7 @@ function peg$parse(input, options) {
5092
5108
  }
5093
5109
  if (s3 !== peg$FAILED) {
5094
5110
  peg$savedPos = s0;
5095
- s0 = peg$f82(s1, s2);
5111
+ s0 = peg$f97(s1, s2);
5096
5112
  } else {
5097
5113
  peg$currPos = s0;
5098
5114
  s0 = peg$FAILED;
@@ -5127,7 +5143,7 @@ function peg$parse(input, options) {
5127
5143
  s1 = peg$parseDate();
5128
5144
  if (s1 !== peg$FAILED) {
5129
5145
  peg$savedPos = s0;
5130
- s1 = peg$f83(s1);
5146
+ s1 = peg$f98(s1);
5131
5147
  }
5132
5148
  s0 = s1;
5133
5149
 
@@ -5152,7 +5168,7 @@ function peg$parse(input, options) {
5152
5168
  s1 = peg$parseBoolean();
5153
5169
  if (s1 !== peg$FAILED) {
5154
5170
  peg$savedPos = s0;
5155
- s1 = peg$f84(s1);
5171
+ s1 = peg$f99(s1);
5156
5172
  }
5157
5173
  s0 = s1;
5158
5174
 
@@ -5185,7 +5201,7 @@ function peg$parse(input, options) {
5185
5201
  s2 = peg$parseResourceName();
5186
5202
  if (s2 !== peg$FAILED) {
5187
5203
  peg$savedPos = s0;
5188
- s0 = peg$f85(s2);
5204
+ s0 = peg$f100(s2);
5189
5205
  } else {
5190
5206
  peg$currPos = s0;
5191
5207
  s0 = peg$FAILED;
@@ -5216,7 +5232,7 @@ function peg$parse(input, options) {
5216
5232
  s1 = peg$parseQuotedText();
5217
5233
  if (s1 !== peg$FAILED) {
5218
5234
  peg$savedPos = s0;
5219
- s1 = peg$f86(s1);
5235
+ s1 = peg$f101(s1);
5220
5236
  }
5221
5237
  s0 = s1;
5222
5238
 
@@ -5339,93 +5355,92 @@ function peg$parse(input, options) {
5339
5355
  }
5340
5356
 
5341
5357
 
5342
- var methods = {
5343
- cast: [ 1, 2 ],
5344
- ceiling: 1,
5345
- concat: 2,
5346
- contains: 2,
5347
- date: 1,
5348
- day: 1,
5349
- endswith: 2,
5350
- floor: 1,
5351
- fractionalseconds: 1,
5352
- hour: 1,
5353
- indexof: 2,
5354
- isof: [ 1, 2 ],
5355
- length: 1,
5356
- maxdatetime: 0,
5357
- mindatetime: 0,
5358
- minute: 1,
5359
- month: 1,
5360
- now: 0,
5361
- replace: 3,
5362
- round: 1,
5363
- second: 1,
5364
- startswith: 2,
5365
- substringof: 2,
5366
- substring: [ 2, 3 ],
5367
- time: 1,
5368
- tolower: 1,
5369
- totaloffsetminutes: 1,
5370
- totalseconds: 1,
5371
- toupper: 1,
5372
- trim: 1,
5373
- year: 1
5374
- };
5375
-
5376
- var operatorPrecedence = {
5377
- or: 0,
5378
- and: 0,
5379
- eq: 1,
5380
- ne: 1,
5381
- gt: 1,
5382
- ge: 1,
5383
- lt: 1,
5384
- le: 1,
5385
- sub: 2,
5386
- add: 3,
5387
- mod: 4,
5388
- div: 5,
5389
- mul: 6
5390
- };
5391
-
5392
- // v4 operator precedence
5393
- // var operatorPrecedence = {
5394
- // or: 0,
5395
- // and: 1,
5396
- // eq: 2,
5397
- // ne: 2,
5398
- // gt: 3,
5399
- // ge: 3,
5400
- // lt: 3,
5401
- // le: 3,
5402
- // add: 4,
5403
- // sub: 4,
5404
- // mul: 5,
5405
- // div: 5,
5406
- // mod: 5
5407
- // };
5408
-
5409
- var binds = [];
5410
- var precedence = 0;
5411
- function reset() {
5412
- binds = [];
5413
- precedence = 0;
5414
- };
5415
-
5416
- function CollapseObjectArray(options) {
5417
- var optionsObj = {};
5418
- for(var i in options) {
5419
- optionsObj[options[i].name] = options[i].value;
5420
- }
5421
- return optionsObj;
5422
- };
5423
-
5424
- function Bind(type, value) {
5425
- binds.push([type, value])
5426
- return { bind: binds.length - 1 }
5427
- }
5428
-
5358
+ var methods = {
5359
+ cast: [ 1, 2 ],
5360
+ ceiling: 1,
5361
+ concat: 2,
5362
+ contains: 2,
5363
+ date: 1,
5364
+ day: 1,
5365
+ endswith: 2,
5366
+ floor: 1,
5367
+ fractionalseconds: 1,
5368
+ hour: 1,
5369
+ indexof: 2,
5370
+ isof: [ 1, 2 ],
5371
+ length: 1,
5372
+ maxdatetime: 0,
5373
+ mindatetime: 0,
5374
+ minute: 1,
5375
+ month: 1,
5376
+ now: 0,
5377
+ replace: 3,
5378
+ round: 1,
5379
+ second: 1,
5380
+ startswith: 2,
5381
+ substringof: 2,
5382
+ substring: [ 2, 3 ],
5383
+ time: 1,
5384
+ tolower: 1,
5385
+ totaloffsetminutes: 1,
5386
+ totalseconds: 1,
5387
+ toupper: 1,
5388
+ trim: 1,
5389
+ year: 1
5390
+ };
5391
+
5392
+ var operatorPrecedence = {
5393
+ or: 0,
5394
+ and: 0,
5395
+ eq: 1,
5396
+ ne: 1,
5397
+ gt: 1,
5398
+ ge: 1,
5399
+ lt: 1,
5400
+ le: 1,
5401
+ sub: 2,
5402
+ add: 3,
5403
+ mod: 4,
5404
+ div: 5,
5405
+ mul: 6
5406
+ };
5407
+
5408
+ // v4 operator precedence
5409
+ // var operatorPrecedence = {
5410
+ // or: 0,
5411
+ // and: 1,
5412
+ // eq: 2,
5413
+ // ne: 2,
5414
+ // gt: 3,
5415
+ // ge: 3,
5416
+ // lt: 3,
5417
+ // le: 3,
5418
+ // add: 4,
5419
+ // sub: 4,
5420
+ // mul: 5,
5421
+ // div: 5,
5422
+ // mod: 5
5423
+ // };
5424
+
5425
+ var binds = [];
5426
+ var precedence = 0;
5427
+ function reset() {
5428
+ binds = [];
5429
+ precedence = 0;
5430
+ };
5431
+
5432
+ function CollapseObjectArray(options) {
5433
+ var optionsObj = {};
5434
+ for(var i in options) {
5435
+ optionsObj[options[i].name] = options[i].value;
5436
+ }
5437
+ return optionsObj;
5438
+ };
5439
+
5440
+ function Bind(type, value) {
5441
+ binds.push([type, value])
5442
+ return { bind: binds.length - 1 }
5443
+ }
5429
5444
 
5430
5445
  peg$result = peg$startRuleFunction();
5431
5446
 
@@ -5450,3 +5465,4 @@ module.exports = {
5450
5465
  SyntaxError: peg$SyntaxError,
5451
5466
  parse: peg$parse
5452
5467
  };
5468
+ //# sourceMappingURL=odata-parser.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@balena/odata-parser",
3
- "version": "2.2.9",
3
+ "version": "2.3.0",
4
4
  "description": "An OData parser written in OMeta",
5
5
  "main": "odata-parser.js",
6
6
  "scripts": {
@@ -9,7 +9,7 @@
9
9
  "test": "mocha",
10
10
  "posttest": "npm run lint",
11
11
  "prepublish": "require-npm4-to-publish",
12
- "prepare": "peggy --extra-options-file odata-parser.config.json --output odata-parser.js odata-parser.pegjs",
12
+ "prepare": "peggy --source-map --extra-options-file odata-parser.config.json --output odata-parser.js odata-parser.pegjs",
13
13
  "prettify": "balena-lint -e ts -e js --typescript --fix odata-parser.d.ts test"
14
14
  },
15
15
  "repository": "https://github.com/balena-io-modules/odata-parser.git",
@@ -17,18 +17,18 @@
17
17
  "license": "BSD",
18
18
  "devDependencies": {
19
19
  "@balena/lint": "^6.2.0",
20
- "@types/chai": "^4.3.0",
21
- "@types/lodash": "^4.14.181",
22
- "@types/mocha": "^9.1.0",
20
+ "@types/chai": "^4.3.1",
21
+ "@types/lodash": "^4.14.182",
22
+ "@types/mocha": "^9.1.1",
23
23
  "chai": "^4.3.6",
24
24
  "husky": "^4.3.8",
25
- "lint-staged": "^12.3.7",
25
+ "lint-staged": "^12.5.0",
26
26
  "lodash": "^4.17.21",
27
27
  "mocha": "^9.2.2",
28
- "peggy": "^1.2.0",
28
+ "peggy": "^2.0.1",
29
29
  "require-npm4-to-publish": "^1.0.0",
30
- "ts-node": "^10.7.0",
31
- "typescript": "^4.6.3"
30
+ "ts-node": "^10.8.1",
31
+ "typescript": "^4.7.3"
32
32
  },
33
33
  "husky": {
34
34
  "hooks": {
@@ -42,6 +42,6 @@
42
42
  "_": "test/run.js"
43
43
  },
44
44
  "versionist": {
45
- "publishedAt": "2022-04-08T13:17:42.546Z"
45
+ "publishedAt": "2022-06-06T16:33:40.852Z"
46
46
  }
47
47
  }