angular-odata 0.102.6 → 0.110.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 (89) hide show
  1. package/esm2020/lib/api.mjs +47 -7
  2. package/esm2020/lib/client.mjs +6 -31
  3. package/esm2020/lib/helper.mjs +14 -7
  4. package/esm2020/lib/models/collection.mjs +27 -27
  5. package/esm2020/lib/models/model.mjs +14 -8
  6. package/esm2020/lib/models/options.mjs +47 -26
  7. package/esm2020/lib/options.mjs +8 -2
  8. package/esm2020/lib/resources/query/expressions/compute.mjs +3 -9
  9. package/esm2020/lib/resources/query/expressions/expand.mjs +3 -9
  10. package/esm2020/lib/resources/query/expressions/filter.mjs +11 -14
  11. package/esm2020/lib/resources/query/expressions/orderby.mjs +3 -9
  12. package/esm2020/lib/resources/query/expressions/search.mjs +2 -5
  13. package/esm2020/lib/resources/query/expressions/select.mjs +3 -9
  14. package/esm2020/lib/resources/query/expressions/syntax.mjs +12 -7
  15. package/esm2020/lib/resources/query/options.mjs +9 -3
  16. package/esm2020/lib/resources/request.mjs +30 -2
  17. package/esm2020/lib/resources/resource.mjs +13 -59
  18. package/esm2020/lib/resources/responses/annotations.mjs +21 -3
  19. package/esm2020/lib/resources/responses/response.mjs +1 -1
  20. package/esm2020/lib/resources/responses/types.mjs +1 -1
  21. package/esm2020/lib/resources/types/batch.mjs +6 -9
  22. package/esm2020/lib/resources/types/count.mjs +1 -1
  23. package/esm2020/lib/resources/types/entity-set.mjs +32 -10
  24. package/esm2020/lib/resources/types/entity.mjs +1 -1
  25. package/esm2020/lib/resources/types/media.mjs +1 -1
  26. package/esm2020/lib/resources/types/metadata.mjs +3 -5
  27. package/esm2020/lib/resources/types/navigation-property.mjs +24 -6
  28. package/esm2020/lib/resources/types/options.mjs +1 -1
  29. package/esm2020/lib/resources/types/property.mjs +24 -4
  30. package/esm2020/lib/resources/types/reference.mjs +1 -1
  31. package/esm2020/lib/resources/types/singleton.mjs +1 -4
  32. package/esm2020/lib/resources/types/value.mjs +2 -2
  33. package/esm2020/lib/schema/callable.mjs +4 -4
  34. package/esm2020/lib/schema/enum-type.mjs +9 -6
  35. package/esm2020/lib/schema/parsers/callable.mjs +9 -11
  36. package/esm2020/lib/schema/parsers/edm.mjs +18 -10
  37. package/esm2020/lib/schema/parsers/enum-type.mjs +21 -23
  38. package/esm2020/lib/schema/parsers/structured-type.mjs +10 -10
  39. package/esm2020/lib/schema/schema.mjs +5 -5
  40. package/esm2020/lib/schema/structured-type.mjs +6 -4
  41. package/esm2020/lib/services/entity-set.mjs +7 -7
  42. package/esm2020/lib/types.mjs +1 -1
  43. package/esm2020/lib/utils/enums.mjs +1 -1
  44. package/esm2020/lib/utils/http.mjs +1 -1
  45. package/esm2020/lib/utils/objects.mjs +1 -1
  46. package/fesm2015/angular-odata.mjs +418 -350
  47. package/fesm2015/angular-odata.mjs.map +1 -1
  48. package/fesm2020/angular-odata.mjs +408 -308
  49. package/fesm2020/angular-odata.mjs.map +1 -1
  50. package/lib/api.d.ts +10 -3
  51. package/lib/client.d.ts +139 -1425
  52. package/lib/helper.d.ts +4 -1
  53. package/lib/models/collection.d.ts +13 -6
  54. package/lib/models/model.d.ts +7 -9
  55. package/lib/models/options.d.ts +15 -9
  56. package/lib/options.d.ts +8 -2
  57. package/lib/resources/query/expressions/compute.d.ts +1 -3
  58. package/lib/resources/query/expressions/expand.d.ts +1 -3
  59. package/lib/resources/query/expressions/filter.d.ts +2 -4
  60. package/lib/resources/query/expressions/orderby.d.ts +1 -3
  61. package/lib/resources/query/expressions/search.d.ts +0 -1
  62. package/lib/resources/query/expressions/select.d.ts +1 -3
  63. package/lib/resources/query/handlers.d.ts +3 -1
  64. package/lib/resources/request.d.ts +13 -2
  65. package/lib/resources/resource.d.ts +2 -9
  66. package/lib/resources/responses/annotations.d.ts +20 -12
  67. package/lib/resources/responses/types.d.ts +3 -3
  68. package/lib/resources/types/count.d.ts +1 -1
  69. package/lib/resources/types/entity-set.d.ts +23 -6
  70. package/lib/resources/types/entity.d.ts +8 -24
  71. package/lib/resources/types/media.d.ts +7 -15
  72. package/lib/resources/types/metadata.d.ts +1 -1
  73. package/lib/resources/types/navigation-property.d.ts +26 -28
  74. package/lib/resources/types/options.d.ts +4 -2
  75. package/lib/resources/types/property.d.ts +28 -15
  76. package/lib/resources/types/reference.d.ts +3 -12
  77. package/lib/resources/types/singleton.d.ts +8 -27
  78. package/lib/schema/callable.d.ts +3 -1
  79. package/lib/schema/enum-type.d.ts +8 -2
  80. package/lib/schema/parsers/callable.d.ts +6 -6
  81. package/lib/schema/parsers/enum-type.d.ts +5 -10
  82. package/lib/schema/parsers/structured-type.d.ts +7 -5
  83. package/lib/schema/schema.d.ts +3 -2
  84. package/lib/schema/structured-type.d.ts +4 -3
  85. package/lib/services/entity-set.d.ts +15 -6
  86. package/lib/types.d.ts +4 -1
  87. package/lib/utils/http.d.ts +1 -1
  88. package/lib/utils/objects.d.ts +19 -5
  89. package/package.json +1 -1
@@ -19,10 +19,16 @@ export class ODataApiOptions {
19
19
  config.nonParenthesisForEmptyParameterFunction || false;
20
20
  }
21
21
  get parserOptions() {
22
- return { version: this.version, ...this.accept };
22
+ return {
23
+ version: this.version,
24
+ stringAsEnum: this.stringAsEnum,
25
+ deleteRefBy: this.deleteRefBy,
26
+ nonParenthesisForEmptyParameterFunction: this.nonParenthesisForEmptyParameterFunction,
27
+ ...this.accept,
28
+ };
23
29
  }
24
30
  get helper() {
25
31
  return ODataHelper[this.version];
26
32
  }
27
33
  }
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3B0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItb2RhdGEvc3JjL2xpYi9vcHRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVFBLE9BQU8sRUFDTCxvQkFBb0IsRUFDcEIsc0JBQXNCLEVBQ3RCLGVBQWUsR0FDaEIsTUFBTSxhQUFhLENBQUM7QUFFckIsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUV2QyxNQUFNLE9BQU8sZUFBZTtJQTBFMUIsWUFBWSxNQUFrQjtRQS9COUIsU0FBSSxHQVNBLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLENBQUM7UUF1QnhDLElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDLE9BQU8sSUFBSSxlQUFlLENBQUM7UUFDakQsSUFBSSxDQUFDLFlBQVksR0FBRyxNQUFNLENBQUMsWUFBWSxJQUFJLEtBQUssQ0FBQztRQUNqRCxJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLElBQUksRUFBRSxDQUFDO1FBQ2xDLElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUM7UUFDcEMsSUFBSSxDQUFDLGVBQWUsR0FBRyxNQUFNLENBQUMsZUFBZSxDQUFDO1FBQzlDLElBQUksQ0FBQyxhQUFhLEdBQUcsTUFBTSxDQUFDLGFBQWEsSUFBSSxzQkFBc0IsQ0FBQztRQUNwRSxJQUFJLENBQUMsV0FBVyxHQUFHLE1BQU0sQ0FBQyxXQUFXLElBQUksb0JBQW9CLENBQUM7UUFDOUQsSUFBSSxDQUFDLGdCQUFnQixHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsSUFBSSxFQUFFLENBQUM7UUFDdEQsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDO1FBQzVCLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQzVDLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQztRQUM1QixJQUFJLENBQUMsV0FBVyxHQUFHLE1BQU0sQ0FBQyxXQUFXLElBQUksTUFBTSxDQUFDO1FBQ2hELElBQUksQ0FBQyx1Q0FBdUM7WUFDMUMsTUFBTSxDQUFDLHVDQUF1QyxJQUFJLEtBQUssQ0FBQztJQUM1RCxDQUFDO0lBRUQsSUFBSSxhQUFhO1FBQ2YsT0FBTyxFQUFFLE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQ25ELENBQUM7SUFFRCxJQUFJLE1BQU07UUFDUixPQUFPLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDbkMsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQXBpT3B0aW9ucyxcbiAgRmV0Y2hQb2xpY3ksXG4gIE9EYXRhTWV0YWRhdGFUeXBlLFxuICBPRGF0YVZlcnNpb24sXG4gIFBhcnNlck9wdGlvbnMsXG4gIFF1ZXJ5T3B0aW9uTmFtZXMsXG59IGZyb20gJy4vdHlwZXMnO1xuaW1wb3J0IHtcbiAgREVGQVVMVF9GRVRDSF9QT0xJQ1ksXG4gIERFRkFVTFRfU1RSSVBfTUVUQURBVEEsXG4gIERFRkFVTFRfVkVSU0lPTixcbn0gZnJvbSAnLi9jb25zdGFudHMnO1xuXG5pbXBvcnQgeyBPRGF0YUhlbHBlciB9IGZyb20gJy4vaGVscGVyJztcblxuZXhwb3J0IGNsYXNzIE9EYXRhQXBpT3B0aW9ucyBpbXBsZW1lbnRzIEFwaU9wdGlvbnMge1xuICAvKipcbiAgICogRGVmYXVsdCBPRGF0YSB2ZXJzaW9uXG4gICAqL1xuICB2ZXJzaW9uOiBPRGF0YVZlcnNpb247XG4gIC8qKlxuICAgKiBTZW5kIGVudW0gYXMgc3RyaW5nIGluIHRoZSByZXF1ZXN0XG4gICAqL1xuICBzdHJpbmdBc0VudW06IGJvb2xlYW47XG4gIC8qKlxuICAgKiBTdHJpcCBtZXRhZGF0YSBmcm9tIHRoZSByZXNwb25zZVxuICAgKi9cbiAgc3RyaXBNZXRhZGF0YTogT0RhdGFNZXRhZGF0YVR5cGU7XG4gIC8qKlxuICAgKiBDYWNoZSBmZXRjaCBwb2xpY3lcbiAgICovXG4gIGZldGNoUG9saWN5OiBGZXRjaFBvbGljeTtcbiAgLyoqXG4gICAqIEV4dHJhIHBhcmFtcyB0byBiZSBzZW50IGluIHRoZSByZXF1ZXN0XG4gICAqL1xuICBwYXJhbXM6IHsgW3BhcmFtOiBzdHJpbmddOiBzdHJpbmcgfCBzdHJpbmdbXSB9O1xuICAvKipcbiAgICogRXh0cmEgaGVhZGVycyB0byBiZSBzZW50IGluIHRoZSByZXF1ZXN0XG4gICAqL1xuICBoZWFkZXJzOiB7IFtwYXJhbTogc3RyaW5nXTogc3RyaW5nIHwgc3RyaW5nW10gfTtcbiAgLyoqXG4gICAqIEh0dHAgcmVxdWVzdCB3aXRoIGNyZWRlbnRpYWxzXG4gICAqL1xuICB3aXRoQ3JlZGVudGlhbHM/OiBib29sZWFuO1xuICAvKipcbiAgICogU2VuZCBxdWVyeSBvcHRpb25zIGluIHRoZSByZXF1ZXN0IGJvZHlcbiAgICovXG4gIGJvZHlRdWVyeU9wdGlvbnM6IFF1ZXJ5T3B0aW9uTmFtZXNbXTtcbiAgLyoqXG4gICAqIEN1c3RvbWl6ZSBhY2NlcHQgaGVhZGVyIHdpdGggT0RhdGEgb3B0aW9uc1xuICAgKiBAbGluayBodHRwOi8vZG9jcy5vYXNpcy1vcGVuLm9yZy9vZGF0YS9vZGF0YS1qc29uLWZvcm1hdC92NC4wMS9vZGF0YS1qc29uLWZvcm1hdC12NC4wMS5odG1sI3NlY19SZXF1ZXN0aW5ndGhlSlNPTkZvcm1hdFxuICAgKi9cbiAgYWNjZXB0Pzoge1xuICAgIGV4cG9uZW50aWFsRGVjaW1hbHM/OiBib29sZWFuO1xuICAgIGllZWU3NTRDb21wYXRpYmxlPzogYm9vbGVhbjtcbiAgICBtZXRhZGF0YT86IE9EYXRhTWV0YWRhdGFUeXBlO1xuICAgIHN0cmVhbWluZz86IGJvb2xlYW47XG4gIH07XG4gIGV0YWc6IHtcbiAgICAvKipcbiAgICAgKiBAbGluayBodHRwOi8vZG9jcy5vYXNpcy1vcGVuLm9yZy9vZGF0YS9vZGF0YS92NC4wL2VycmF0YTAyL29zL2NvbXBsZXRlL3BhcnQxLXByb3RvY29sL29kYXRhLXY0LjAtZXJyYXRhMDItb3MtcGFydDEtcHJvdG9jb2wtY29tcGxldGUuaHRtbCNfVG9jNDA2Mzk4MjI5XG4gICAgICovXG4gICAgaWZNYXRjaDogYm9vbGVhbjtcbiAgICAvKipcbiAgICAgKiBAbGluayBodHRwOi8vZG9jcy5vYXNpcy1vcGVuLm9yZy9vZGF0YS9vZGF0YS92NC4wL2VycmF0YTAyL29zL2NvbXBsZXRlL3BhcnQxLXByb3RvY29sL29kYXRhLXY0LjAtZXJyYXRhMDItb3MtcGFydDEtcHJvdG9jb2wtY29tcGxldGUuaHRtbCNfVG9jNDA2Mzk4MjMwXG4gICAgICovXG4gICAgaWZOb25lTWF0Y2g6IGJvb2xlYW47XG4gIH0gPSB7IGlmTWF0Y2g6IHRydWUsIGlmTm9uZU1hdGNoOiBmYWxzZSB9O1xuICBwcmVmZXI/OiB7XG4gICAgLyoqXG4gICAgICogQGxpbmsgaHR0cDovL2RvY3Mub2FzaXMtb3Blbi5vcmcvb2RhdGEvb2RhdGEvdjQuMC9lcnJhdGEwMi9vcy9jb21wbGV0ZS9wYXJ0MS1wcm90b2NvbC9vZGF0YS12NC4wLWVycmF0YTAyLW9zLXBhcnQxLXByb3RvY29sLWNvbXBsZXRlLmh0bWwjX1RvYzQwNjM5ODIzOFxuICAgICAqL1xuICAgIG1heFBhZ2VTaXplPzogbnVtYmVyO1xuICAgIC8qKlxuICAgICAqIEBsaW5rIGh0dHA6Ly9kb2NzLm9hc2lzLW9wZW4ub3JnL29kYXRhL29kYXRhL3Y0LjAvZXJyYXRhMDIvb3MvY29tcGxldGUvcGFydDEtcHJvdG9jb2wvb2RhdGEtdjQuMC1lcnJhdGEwMi1vcy1wYXJ0MS1wcm90b2NvbC1jb21wbGV0ZS5odG1sI19Ub2M0MDYzOTgyNDBcbiAgICAgKi9cbiAgICByZXR1cm4/OiAncmVwcmVzZW50YXRpb24nIHwgJ21pbmltYWwnO1xuICAgIC8qKlxuICAgICAqIEBsaW5rIGh0dHA6Ly9kb2NzLm9hc2lzLW9wZW4ub3JnL29kYXRhL29kYXRhL3Y0LjAvZXJyYXRhMDIvb3MvY29tcGxldGUvcGFydDEtcHJvdG9jb2wvb2RhdGEtdjQuMC1lcnJhdGEwMi1vcy1wYXJ0MS1wcm90b2NvbC1jb21wbGV0ZS5odG1sI19Ub2M0MDYzOTgyMzZcbiAgICAgKi9cbiAgICBjb250aW51ZU9uRXJyb3I/OiBib29sZWFuO1xuICAgIC8qKlxuICAgICAqIEBsaW5rIGh0dHA6Ly9kb2NzLm9hc2lzLW9wZW4ub3JnL29kYXRhL29kYXRhL3Y0LjAvZXJyYXRhMDIvb3MvY29tcGxldGUvcGFydDEtcHJvdG9jb2wvb2RhdGEtdjQuMC1lcnJhdGEwMi1vcy1wYXJ0MS1wcm90b2NvbC1jb21wbGV0ZS5odG1sI19Ub2M0MDYzOTgyMzdcbiAgICAgKi9cbiAgICBpbmNsdWRlQW5ub3RhdGlvbnM/OiBzdHJpbmc7XG4gIH07XG4gIGRlbGV0ZVJlZkJ5OiAncGF0aCcgfCAnaWQnO1xuICBub25QYXJlbnRoZXNpc0ZvckVtcHR5UGFyYW1ldGVyRnVuY3Rpb246IGJvb2xlYW47XG5cbiAgY29uc3RydWN0b3IoY29uZmlnOiBBcGlPcHRpb25zKSB7XG4gICAgdGhpcy52ZXJzaW9uID0gY29uZmlnLnZlcnNpb24gfHwgREVGQVVMVF9WRVJTSU9OO1xuICAgIHRoaXMuc3RyaW5nQXNFbnVtID0gY29uZmlnLnN0cmluZ0FzRW51bSB8fCBmYWxzZTtcbiAgICB0aGlzLnBhcmFtcyA9IGNvbmZpZy5wYXJhbXMgfHwge307XG4gICAgdGhpcy5oZWFkZXJzID0gY29uZmlnLmhlYWRlcnMgfHwge307XG4gICAgdGhpcy53aXRoQ3JlZGVudGlhbHMgPSBjb25maWcud2l0aENyZWRlbnRpYWxzO1xuICAgIHRoaXMuc3RyaXBNZXRhZGF0YSA9IGNvbmZpZy5zdHJpcE1ldGFkYXRhIHx8IERFRkFVTFRfU1RSSVBfTUVUQURBVEE7XG4gICAgdGhpcy5mZXRjaFBvbGljeSA9IGNvbmZpZy5mZXRjaFBvbGljeSB8fCBERUZBVUxUX0ZFVENIX1BPTElDWTtcbiAgICB0aGlzLmJvZHlRdWVyeU9wdGlvbnMgPSBjb25maWcuYm9keVF1ZXJ5T3B0aW9ucyB8fCBbXTtcbiAgICB0aGlzLmFjY2VwdCA9IGNvbmZpZy5hY2NlcHQ7XG4gICAgT2JqZWN0LmFzc2lnbih0aGlzLmV0YWcsIGNvbmZpZy5ldGFnIHx8IHt9KTtcbiAgICB0aGlzLnByZWZlciA9IGNvbmZpZy5wcmVmZXI7XG4gICAgdGhpcy5kZWxldGVSZWZCeSA9IGNvbmZpZy5kZWxldGVSZWZCeSB8fCAncGF0aCc7XG4gICAgdGhpcy5ub25QYXJlbnRoZXNpc0ZvckVtcHR5UGFyYW1ldGVyRnVuY3Rpb24gPVxuICAgICAgY29uZmlnLm5vblBhcmVudGhlc2lzRm9yRW1wdHlQYXJhbWV0ZXJGdW5jdGlvbiB8fCBmYWxzZTtcbiAgfVxuXG4gIGdldCBwYXJzZXJPcHRpb25zKCk6IFBhcnNlck9wdGlvbnMge1xuICAgIHJldHVybiB7IHZlcnNpb246IHRoaXMudmVyc2lvbiwgLi4udGhpcy5hY2NlcHQgfTtcbiAgfVxuXG4gIGdldCBoZWxwZXIoKSB7XG4gICAgcmV0dXJuIE9EYXRhSGVscGVyW3RoaXMudmVyc2lvbl07XG4gIH1cbn1cbiJdfQ==
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3B0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItb2RhdGEvc3JjL2xpYi9vcHRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVFBLE9BQU8sRUFDTCxvQkFBb0IsRUFDcEIsc0JBQXNCLEVBQ3RCLGVBQWUsR0FDaEIsTUFBTSxhQUFhLENBQUM7QUFFckIsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUV2QyxNQUFNLE9BQU8sZUFBZTtJQWdGMUIsWUFBWSxNQUFrQjtRQTdCOUIsU0FBSSxHQVNBLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLENBQUM7UUFxQnhDLElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDLE9BQU8sSUFBSSxlQUFlLENBQUM7UUFDakQsSUFBSSxDQUFDLFlBQVksR0FBRyxNQUFNLENBQUMsWUFBWSxJQUFJLEtBQUssQ0FBQztRQUNqRCxJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLElBQUksRUFBRSxDQUFDO1FBQ2xDLElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUM7UUFDcEMsSUFBSSxDQUFDLGVBQWUsR0FBRyxNQUFNLENBQUMsZUFBZSxDQUFDO1FBQzlDLElBQUksQ0FBQyxhQUFhLEdBQUcsTUFBTSxDQUFDLGFBQWEsSUFBSSxzQkFBc0IsQ0FBQztRQUNwRSxJQUFJLENBQUMsV0FBVyxHQUFHLE1BQU0sQ0FBQyxXQUFXLElBQUksb0JBQW9CLENBQUM7UUFDOUQsSUFBSSxDQUFDLGdCQUFnQixHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsSUFBSSxFQUFFLENBQUM7UUFDdEQsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDO1FBQzVCLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQzVDLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQztRQUM1QixJQUFJLENBQUMsV0FBVyxHQUFHLE1BQU0sQ0FBQyxXQUFXLElBQUksTUFBTSxDQUFDO1FBQ2hELElBQUksQ0FBQyx1Q0FBdUM7WUFDMUMsTUFBTSxDQUFDLHVDQUF1QyxJQUFJLEtBQUssQ0FBQztJQUM1RCxDQUFDO0lBRUQsSUFBSSxhQUFhO1FBQ2YsT0FBTztZQUNMLE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTztZQUNyQixZQUFZLEVBQUUsSUFBSSxDQUFDLFlBQVk7WUFDL0IsV0FBVyxFQUFFLElBQUksQ0FBQyxXQUFXO1lBQzdCLHVDQUF1QyxFQUNyQyxJQUFJLENBQUMsdUNBQXVDO1lBQzlDLEdBQUcsSUFBSSxDQUFDLE1BQU07U0FDZixDQUFDO0lBQ0osQ0FBQztJQUVELElBQUksTUFBTTtRQUNSLE9BQU8sV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNuQyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBcGlPcHRpb25zLFxuICBGZXRjaFBvbGljeSxcbiAgT0RhdGFNZXRhZGF0YVR5cGUsXG4gIE9EYXRhVmVyc2lvbixcbiAgUGFyc2VyT3B0aW9ucyxcbiAgUXVlcnlPcHRpb25OYW1lcyxcbn0gZnJvbSAnLi90eXBlcyc7XG5pbXBvcnQge1xuICBERUZBVUxUX0ZFVENIX1BPTElDWSxcbiAgREVGQVVMVF9TVFJJUF9NRVRBREFUQSxcbiAgREVGQVVMVF9WRVJTSU9OLFxufSBmcm9tICcuL2NvbnN0YW50cyc7XG5cbmltcG9ydCB7IE9EYXRhSGVscGVyIH0gZnJvbSAnLi9oZWxwZXInO1xuXG5leHBvcnQgY2xhc3MgT0RhdGFBcGlPcHRpb25zIGltcGxlbWVudHMgQXBpT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBEZWZhdWx0IE9EYXRhIHZlcnNpb25cbiAgICovXG4gIHZlcnNpb246IE9EYXRhVmVyc2lvbjtcbiAgLyoqXG4gICAqIFNlbmQgZW51bSBhcyBzdHJpbmcgaW4gdGhlIHJlcXVlc3RcbiAgICovXG4gIHN0cmluZ0FzRW51bTogYm9vbGVhbjtcbiAgLyoqXG4gICAqIERlbGV0ZSByZWZlcmVuY2UgYnkgcGF0aCBvciBieSBpZFxuICAgKi9cbiAgZGVsZXRlUmVmQnk6ICdwYXRoJyB8ICdpZCc7XG4gIC8qKlxuICAgKiBObyB1c2UgcGFyZW50aGVzaXMgZm9yIGVtcHR5IHBhcmFtZXRlcnMgZnVuY3Rpb25zXG4gICAqL1xuICBub25QYXJlbnRoZXNpc0ZvckVtcHR5UGFyYW1ldGVyRnVuY3Rpb246IGJvb2xlYW47XG4gIC8qKlxuICAgKiBTdHJpcCBtZXRhZGF0YSBmcm9tIHRoZSByZXNwb25zZVxuICAgKi9cbiAgc3RyaXBNZXRhZGF0YTogT0RhdGFNZXRhZGF0YVR5cGU7XG4gIC8qKlxuICAgKiBDYWNoZSBmZXRjaCBwb2xpY3lcbiAgICovXG4gIGZldGNoUG9saWN5OiBGZXRjaFBvbGljeTtcbiAgLyoqXG4gICAqIEV4dHJhIHBhcmFtcyB0byBiZSBzZW50IGluIHRoZSByZXF1ZXN0XG4gICAqL1xuICBwYXJhbXM6IHsgW3BhcmFtOiBzdHJpbmddOiBzdHJpbmcgfCBzdHJpbmdbXSB9O1xuICAvKipcbiAgICogRXh0cmEgaGVhZGVycyB0byBiZSBzZW50IGluIHRoZSByZXF1ZXN0XG4gICAqL1xuICBoZWFkZXJzOiB7IFtwYXJhbTogc3RyaW5nXTogc3RyaW5nIHwgc3RyaW5nW10gfTtcbiAgLyoqXG4gICAqIEh0dHAgcmVxdWVzdCB3aXRoIGNyZWRlbnRpYWxzXG4gICAqL1xuICB3aXRoQ3JlZGVudGlhbHM/OiBib29sZWFuO1xuICAvKipcbiAgICogU2VuZCBxdWVyeSBvcHRpb25zIGluIHRoZSByZXF1ZXN0IGJvZHlcbiAgICovXG4gIGJvZHlRdWVyeU9wdGlvbnM6IFF1ZXJ5T3B0aW9uTmFtZXNbXTtcbiAgLyoqXG4gICAqIEN1c3RvbWl6ZSBhY2NlcHQgaGVhZGVyIHdpdGggT0RhdGEgb3B0aW9uc1xuICAgKiBAbGluayBodHRwOi8vZG9jcy5vYXNpcy1vcGVuLm9yZy9vZGF0YS9vZGF0YS1qc29uLWZvcm1hdC92NC4wMS9vZGF0YS1qc29uLWZvcm1hdC12NC4wMS5odG1sI3NlY19SZXF1ZXN0aW5ndGhlSlNPTkZvcm1hdFxuICAgKi9cbiAgYWNjZXB0Pzoge1xuICAgIGV4cG9uZW50aWFsRGVjaW1hbHM/OiBib29sZWFuO1xuICAgIGllZWU3NTRDb21wYXRpYmxlPzogYm9vbGVhbjtcbiAgICBtZXRhZGF0YT86IE9EYXRhTWV0YWRhdGFUeXBlO1xuICAgIHN0cmVhbWluZz86IGJvb2xlYW47XG4gIH07XG4gIGV0YWc6IHtcbiAgICAvKipcbiAgICAgKiBAbGluayBodHRwOi8vZG9jcy5vYXNpcy1vcGVuLm9yZy9vZGF0YS9vZGF0YS92NC4wL2VycmF0YTAyL29zL2NvbXBsZXRlL3BhcnQxLXByb3RvY29sL29kYXRhLXY0LjAtZXJyYXRhMDItb3MtcGFydDEtcHJvdG9jb2wtY29tcGxldGUuaHRtbCNfVG9jNDA2Mzk4MjI5XG4gICAgICovXG4gICAgaWZNYXRjaDogYm9vbGVhbjtcbiAgICAvKipcbiAgICAgKiBAbGluayBodHRwOi8vZG9jcy5vYXNpcy1vcGVuLm9yZy9vZGF0YS9vZGF0YS92NC4wL2VycmF0YTAyL29zL2NvbXBsZXRlL3BhcnQxLXByb3RvY29sL29kYXRhLXY0LjAtZXJyYXRhMDItb3MtcGFydDEtcHJvdG9jb2wtY29tcGxldGUuaHRtbCNfVG9jNDA2Mzk4MjMwXG4gICAgICovXG4gICAgaWZOb25lTWF0Y2g6IGJvb2xlYW47XG4gIH0gPSB7IGlmTWF0Y2g6IHRydWUsIGlmTm9uZU1hdGNoOiBmYWxzZSB9O1xuICBwcmVmZXI/OiB7XG4gICAgLyoqXG4gICAgICogQGxpbmsgaHR0cDovL2RvY3Mub2FzaXMtb3Blbi5vcmcvb2RhdGEvb2RhdGEvdjQuMC9lcnJhdGEwMi9vcy9jb21wbGV0ZS9wYXJ0MS1wcm90b2NvbC9vZGF0YS12NC4wLWVycmF0YTAyLW9zLXBhcnQxLXByb3RvY29sLWNvbXBsZXRlLmh0bWwjX1RvYzQwNjM5ODIzOFxuICAgICAqL1xuICAgIG1heFBhZ2VTaXplPzogbnVtYmVyO1xuICAgIC8qKlxuICAgICAqIEBsaW5rIGh0dHA6Ly9kb2NzLm9hc2lzLW9wZW4ub3JnL29kYXRhL29kYXRhL3Y0LjAvZXJyYXRhMDIvb3MvY29tcGxldGUvcGFydDEtcHJvdG9jb2wvb2RhdGEtdjQuMC1lcnJhdGEwMi1vcy1wYXJ0MS1wcm90b2NvbC1jb21wbGV0ZS5odG1sI19Ub2M0MDYzOTgyNDBcbiAgICAgKi9cbiAgICByZXR1cm4/OiAncmVwcmVzZW50YXRpb24nIHwgJ21pbmltYWwnO1xuICAgIC8qKlxuICAgICAqIEBsaW5rIGh0dHA6Ly9kb2NzLm9hc2lzLW9wZW4ub3JnL29kYXRhL29kYXRhL3Y0LjAvZXJyYXRhMDIvb3MvY29tcGxldGUvcGFydDEtcHJvdG9jb2wvb2RhdGEtdjQuMC1lcnJhdGEwMi1vcy1wYXJ0MS1wcm90b2NvbC1jb21wbGV0ZS5odG1sI19Ub2M0MDYzOTgyMzZcbiAgICAgKi9cbiAgICBjb250aW51ZU9uRXJyb3I/OiBib29sZWFuO1xuICAgIC8qKlxuICAgICAqIEBsaW5rIGh0dHA6Ly9kb2NzLm9hc2lzLW9wZW4ub3JnL29kYXRhL29kYXRhL3Y0LjAvZXJyYXRhMDIvb3MvY29tcGxldGUvcGFydDEtcHJvdG9jb2wvb2RhdGEtdjQuMC1lcnJhdGEwMi1vcy1wYXJ0MS1wcm90b2NvbC1jb21wbGV0ZS5odG1sI19Ub2M0MDYzOTgyMzdcbiAgICAgKi9cbiAgICBpbmNsdWRlQW5ub3RhdGlvbnM/OiBzdHJpbmc7XG4gIH07XG5cbiAgY29uc3RydWN0b3IoY29uZmlnOiBBcGlPcHRpb25zKSB7XG4gICAgdGhpcy52ZXJzaW9uID0gY29uZmlnLnZlcnNpb24gfHwgREVGQVVMVF9WRVJTSU9OO1xuICAgIHRoaXMuc3RyaW5nQXNFbnVtID0gY29uZmlnLnN0cmluZ0FzRW51bSB8fCBmYWxzZTtcbiAgICB0aGlzLnBhcmFtcyA9IGNvbmZpZy5wYXJhbXMgfHwge307XG4gICAgdGhpcy5oZWFkZXJzID0gY29uZmlnLmhlYWRlcnMgfHwge307XG4gICAgdGhpcy53aXRoQ3JlZGVudGlhbHMgPSBjb25maWcud2l0aENyZWRlbnRpYWxzO1xuICAgIHRoaXMuc3RyaXBNZXRhZGF0YSA9IGNvbmZpZy5zdHJpcE1ldGFkYXRhIHx8IERFRkFVTFRfU1RSSVBfTUVUQURBVEE7XG4gICAgdGhpcy5mZXRjaFBvbGljeSA9IGNvbmZpZy5mZXRjaFBvbGljeSB8fCBERUZBVUxUX0ZFVENIX1BPTElDWTtcbiAgICB0aGlzLmJvZHlRdWVyeU9wdGlvbnMgPSBjb25maWcuYm9keVF1ZXJ5T3B0aW9ucyB8fCBbXTtcbiAgICB0aGlzLmFjY2VwdCA9IGNvbmZpZy5hY2NlcHQ7XG4gICAgT2JqZWN0LmFzc2lnbih0aGlzLmV0YWcsIGNvbmZpZy5ldGFnIHx8IHt9KTtcbiAgICB0aGlzLnByZWZlciA9IGNvbmZpZy5wcmVmZXI7XG4gICAgdGhpcy5kZWxldGVSZWZCeSA9IGNvbmZpZy5kZWxldGVSZWZCeSB8fCAncGF0aCc7XG4gICAgdGhpcy5ub25QYXJlbnRoZXNpc0ZvckVtcHR5UGFyYW1ldGVyRnVuY3Rpb24gPVxuICAgICAgY29uZmlnLm5vblBhcmVudGhlc2lzRm9yRW1wdHlQYXJhbWV0ZXJGdW5jdGlvbiB8fCBmYWxzZTtcbiAgfVxuXG4gIGdldCBwYXJzZXJPcHRpb25zKCk6IFBhcnNlck9wdGlvbnMge1xuICAgIHJldHVybiB7XG4gICAgICB2ZXJzaW9uOiB0aGlzLnZlcnNpb24sXG4gICAgICBzdHJpbmdBc0VudW06IHRoaXMuc3RyaW5nQXNFbnVtLFxuICAgICAgZGVsZXRlUmVmQnk6IHRoaXMuZGVsZXRlUmVmQnksXG4gICAgICBub25QYXJlbnRoZXNpc0ZvckVtcHR5UGFyYW1ldGVyRnVuY3Rpb246XG4gICAgICAgIHRoaXMubm9uUGFyZW50aGVzaXNGb3JFbXB0eVBhcmFtZXRlckZ1bmN0aW9uLFxuICAgICAgLi4udGhpcy5hY2NlcHQsXG4gICAgfTtcbiAgfVxuXG4gIGdldCBoZWxwZXIoKSB7XG4gICAgcmV0dXJuIE9EYXRhSGVscGVyW3RoaXMudmVyc2lvbl07XG4gIH1cbn1cbiJdfQ==
@@ -5,16 +5,10 @@ export class ComputeExpression extends Expression {
5
5
  super({ children });
6
6
  this.names = names || [];
7
7
  }
8
- static expression() {
9
- return new ComputeExpression();
10
- }
11
- static type() {
12
- return Field.factory();
13
- }
14
8
  static compute(opts, current) {
15
9
  return opts({
16
- t: ComputeExpression.type(),
17
- e: ComputeExpression.expression,
10
+ t: Field.factory(),
11
+ e: () => new ComputeExpression(),
18
12
  }, current);
19
13
  }
20
14
  render({ aliases, escape, prefix, } = {}) {
@@ -42,4 +36,4 @@ export class ComputeExpression extends Expression {
42
36
  return this._add(name, node);
43
37
  }
44
38
  }
45
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcHV0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItb2RhdGEvc3JjL2xpYi9yZXNvdXJjZXMvcXVlcnkvZXhwcmVzc2lvbnMvY29tcHV0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBQ3BDLE9BQU8sRUFDTCxLQUFLLEVBQ0wsU0FBUyxFQUdULFNBQVMsR0FFVixNQUFNLFVBQVUsQ0FBQztBQU1sQixNQUFNLE9BQU8saUJBQXFCLFNBQVEsVUFBYTtJQUVyRCxZQUFZLEVBQ1YsUUFBUSxFQUNSLEtBQUssTUFJSCxFQUFFO1FBQ0osS0FBSyxDQUFDLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQztRQUNwQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssSUFBSSxFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUVELE1BQU0sQ0FBQyxVQUFVO1FBQ2YsT0FBTyxJQUFJLGlCQUFpQixFQUFLLENBQUM7SUFDcEMsQ0FBQztJQUVELE1BQU0sQ0FBQyxJQUFJO1FBQ1QsT0FBTyxLQUFLLENBQUMsT0FBTyxFQUFLLENBQUM7SUFDNUIsQ0FBQztJQUVELE1BQU0sQ0FBQyxPQUFPLENBQ1osSUFHeUIsRUFDekIsT0FBOEI7UUFFOUIsT0FBTyxJQUFJLENBQ1Q7WUFDRSxDQUFDLEVBQUUsaUJBQWlCLENBQUMsSUFBSSxFQUFLO1lBQzlCLENBQUMsRUFBRSxpQkFBaUIsQ0FBQyxVQUFVO1NBQ2hDLEVBQ0QsT0FBTyxDQUNnQixDQUFDO0lBQzVCLENBQUM7SUFFRCxNQUFNLENBQUMsRUFDTCxPQUFPLEVBQ1AsTUFBTSxFQUNOLE1BQU0sTUFLSixFQUFFO1FBQ0osSUFBSSxRQUFRLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUN0QyxDQUFDLENBQUMsTUFBTSxDQUFDLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUN0QyxDQUFDO1FBQ0YsT0FBTyxJQUFJLENBQUMsS0FBSzthQUNkLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxPQUFPLElBQUksRUFBRSxDQUFDO2FBQ3JELElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNmLENBQUM7SUFFRCxLQUFLO1FBQ0gsT0FBTyxJQUFJLGlCQUFpQixDQUFDO1lBQzNCLFFBQVEsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQzlDLEtBQUssRUFBRSxDQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztTQUN2QixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sSUFBSSxDQUFDLElBQVksRUFBRSxJQUFnQjtRQUN6QyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN0QixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMxQixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxLQUFLLENBQ0gsSUFBWSxFQUNaLElBQXVFO1FBRXZFLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQztZQUNoQixDQUFDLEVBQUUsU0FBOEI7WUFDakMsQ0FBQyxFQUFFLFNBQThCO1NBQ2xDLENBQUMsQ0FBQztRQUNILE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDL0IsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBRdWVyeUN1c3RvbVR5cGUgfSBmcm9tICcuLi9idWlsZGVyJztcbmltcG9ydCB7IEV4cHJlc3Npb24gfSBmcm9tICcuL2Jhc2UnO1xuaW1wb3J0IHtcbiAgRmllbGQsXG4gIGZ1bmN0aW9ucyxcbiAgT0RhdGFGdW5jdGlvbnMsXG4gIE9EYXRhT3BlcmF0b3JzLFxuICBvcGVyYXRvcnMsXG4gIFJlbmRlcmFibGUsXG59IGZyb20gJy4vc3ludGF4JztcblxuZXhwb3J0IHR5cGUgQ29tcHV0ZUV4cHJlc3Npb25CdWlsZGVyPFQ+ID0ge1xuICB0OiBUO1xuICBlOiAoKSA9PiBDb21wdXRlRXhwcmVzc2lvbjxUPjtcbn07XG5leHBvcnQgY2xhc3MgQ29tcHV0ZUV4cHJlc3Npb248VD4gZXh0ZW5kcyBFeHByZXNzaW9uPFQ+IHtcbiAgbmFtZXM6IHN0cmluZ1tdO1xuICBjb25zdHJ1Y3Rvcih7XG4gICAgY2hpbGRyZW4sXG4gICAgbmFtZXMsXG4gIH06IHtcbiAgICBjaGlsZHJlbj86IFJlbmRlcmFibGVbXTtcbiAgICBuYW1lcz86IHN0cmluZ1tdO1xuICB9ID0ge30pIHtcbiAgICBzdXBlcih7IGNoaWxkcmVuIH0pO1xuICAgIHRoaXMubmFtZXMgPSBuYW1lcyB8fCBbXTtcbiAgfVxuXG4gIHN0YXRpYyBleHByZXNzaW9uPFQ+KCkge1xuICAgIHJldHVybiBuZXcgQ29tcHV0ZUV4cHJlc3Npb248VD4oKTtcbiAgfVxuXG4gIHN0YXRpYyB0eXBlPFQgZXh0ZW5kcyBvYmplY3Q+KCk6IFQge1xuICAgIHJldHVybiBGaWVsZC5mYWN0b3J5PFQ+KCk7XG4gIH1cblxuICBzdGF0aWMgY29tcHV0ZTxUIGV4dGVuZHMgb2JqZWN0PihcbiAgICBvcHRzOiAoXG4gICAgICBidWlsZGVyOiBDb21wdXRlRXhwcmVzc2lvbkJ1aWxkZXI8VD4sXG4gICAgICBjdXJyZW50PzogQ29tcHV0ZUV4cHJlc3Npb248VD5cbiAgICApID0+IENvbXB1dGVFeHByZXNzaW9uPFQ+LFxuICAgIGN1cnJlbnQ/OiBDb21wdXRlRXhwcmVzc2lvbjxUPlxuICApOiBDb21wdXRlRXhwcmVzc2lvbjxUPiB7XG4gICAgcmV0dXJuIG9wdHMoXG4gICAgICB7XG4gICAgICAgIHQ6IENvbXB1dGVFeHByZXNzaW9uLnR5cGU8VD4oKSxcbiAgICAgICAgZTogQ29tcHV0ZUV4cHJlc3Npb24uZXhwcmVzc2lvbixcbiAgICAgIH0sXG4gICAgICBjdXJyZW50XG4gICAgKSBhcyBDb21wdXRlRXhwcmVzc2lvbjxUPjtcbiAgfVxuXG4gIHJlbmRlcih7XG4gICAgYWxpYXNlcyxcbiAgICBlc2NhcGUsXG4gICAgcHJlZml4LFxuICB9OiB7XG4gICAgYWxpYXNlcz86IFF1ZXJ5Q3VzdG9tVHlwZVtdIHwgdW5kZWZpbmVkO1xuICAgIGVzY2FwZT86IGJvb2xlYW4gfCB1bmRlZmluZWQ7XG4gICAgcHJlZml4Pzogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICB9ID0ge30pOiBzdHJpbmcge1xuICAgIGxldCBjaGlsZHJlbiA9IHRoaXMuX2NoaWxkcmVuLm1hcCgobikgPT5cbiAgICAgIG4ucmVuZGVyKHsgYWxpYXNlcywgZXNjYXBlLCBwcmVmaXggfSlcbiAgICApO1xuICAgIHJldHVybiB0aGlzLm5hbWVzXG4gICAgICAubWFwKChuYW1lLCBpbmRleCkgPT4gYCR7Y2hpbGRyZW5baW5kZXhdfSBhcyAke25hbWV9YClcbiAgICAgIC5qb2luKCcsJyk7XG4gIH1cblxuICBjbG9uZSgpIHtcbiAgICByZXR1cm4gbmV3IENvbXB1dGVFeHByZXNzaW9uKHtcbiAgICAgIGNoaWxkcmVuOiB0aGlzLl9jaGlsZHJlbi5tYXAoKGMpID0+IGMuY2xvbmUoKSksXG4gICAgICBuYW1lczogWy4uLnRoaXMubmFtZXNdLFxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfYWRkKG5hbWU6IHN0cmluZywgbm9kZTogUmVuZGVyYWJsZSk6IENvbXB1dGVFeHByZXNzaW9uPFQ+IHtcbiAgICB0aGlzLm5hbWVzLnB1c2gobmFtZSk7XG4gICAgdGhpcy5fY2hpbGRyZW4ucHVzaChub2RlKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIGZpZWxkPFQgZXh0ZW5kcyBvYmplY3Q+KFxuICAgIG5hbWU6IHN0cmluZyxcbiAgICBvcHRzOiAoZTogeyBvOiBPRGF0YU9wZXJhdG9yczxUPjsgZjogT0RhdGFGdW5jdGlvbnM8VD4gfSkgPT4gUmVuZGVyYWJsZVxuICApOiBDb21wdXRlRXhwcmVzc2lvbjxUPiB7XG4gICAgY29uc3Qgbm9kZSA9IG9wdHMoe1xuICAgICAgbzogb3BlcmF0b3JzIGFzIE9EYXRhT3BlcmF0b3JzPFQ+LFxuICAgICAgZjogZnVuY3Rpb25zIGFzIE9EYXRhRnVuY3Rpb25zPFQ+LFxuICAgIH0pO1xuICAgIHJldHVybiB0aGlzLl9hZGQobmFtZSwgbm9kZSk7XG4gIH1cbn1cbiJdfQ==
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcHV0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItb2RhdGEvc3JjL2xpYi9yZXNvdXJjZXMvcXVlcnkvZXhwcmVzc2lvbnMvY29tcHV0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBQ3BDLE9BQU8sRUFDTCxLQUFLLEVBQ0wsU0FBUyxFQUdULFNBQVMsR0FFVixNQUFNLFVBQVUsQ0FBQztBQU1sQixNQUFNLE9BQU8saUJBQXFCLFNBQVEsVUFBYTtJQUVyRCxZQUFZLEVBQ1YsUUFBUSxFQUNSLEtBQUssTUFJSCxFQUFFO1FBQ0osS0FBSyxDQUFDLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQztRQUNwQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssSUFBSSxFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUVELE1BQU0sQ0FBQyxPQUFPLENBQ1osSUFHeUIsRUFDekIsT0FBOEI7UUFFOUIsT0FBTyxJQUFJLENBQ1Q7WUFDRSxDQUFDLEVBQUUsS0FBSyxDQUFDLE9BQU8sRUFBeUI7WUFDekMsQ0FBQyxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksaUJBQWlCLEVBQUs7U0FDcEMsRUFDRCxPQUFPLENBQ2dCLENBQUM7SUFDNUIsQ0FBQztJQUVELE1BQU0sQ0FBQyxFQUNMLE9BQU8sRUFDUCxNQUFNLEVBQ04sTUFBTSxNQUtKLEVBQUU7UUFDSixJQUFJLFFBQVEsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQ3RDLENBQUMsQ0FBQyxNQUFNLENBQUMsRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQ3RDLENBQUM7UUFDRixPQUFPLElBQUksQ0FBQyxLQUFLO2FBQ2QsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUMsR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUM7YUFDckQsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2YsQ0FBQztJQUVELEtBQUs7UUFDSCxPQUFPLElBQUksaUJBQWlCLENBQUM7WUFDM0IsUUFBUSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDOUMsS0FBSyxFQUFFLENBQUMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO1NBQ3ZCLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyxJQUFJLENBQUMsSUFBWSxFQUFFLElBQWdCO1FBQ3pDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3RCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzFCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELEtBQUssQ0FDSCxJQUFZLEVBQ1osSUFBdUU7UUFFdkUsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDO1lBQ2hCLENBQUMsRUFBRSxTQUE4QjtZQUNqQyxDQUFDLEVBQUUsU0FBOEI7U0FDbEMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztJQUMvQixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFF1ZXJ5Q3VzdG9tVHlwZSB9IGZyb20gJy4uL2J1aWxkZXInO1xuaW1wb3J0IHsgRXhwcmVzc2lvbiB9IGZyb20gJy4vYmFzZSc7XG5pbXBvcnQge1xuICBGaWVsZCxcbiAgZnVuY3Rpb25zLFxuICBPRGF0YUZ1bmN0aW9ucyxcbiAgT0RhdGFPcGVyYXRvcnMsXG4gIG9wZXJhdG9ycyxcbiAgUmVuZGVyYWJsZSxcbn0gZnJvbSAnLi9zeW50YXgnO1xuXG5leHBvcnQgdHlwZSBDb21wdXRlRXhwcmVzc2lvbkJ1aWxkZXI8VD4gPSB7XG4gIHQ6IFJlcXVpcmVkPFJlYWRvbmx5PFQ+PjtcbiAgZTogKCkgPT4gQ29tcHV0ZUV4cHJlc3Npb248VD47XG59O1xuZXhwb3J0IGNsYXNzIENvbXB1dGVFeHByZXNzaW9uPFQ+IGV4dGVuZHMgRXhwcmVzc2lvbjxUPiB7XG4gIG5hbWVzOiBzdHJpbmdbXTtcbiAgY29uc3RydWN0b3Ioe1xuICAgIGNoaWxkcmVuLFxuICAgIG5hbWVzLFxuICB9OiB7XG4gICAgY2hpbGRyZW4/OiBSZW5kZXJhYmxlW107XG4gICAgbmFtZXM/OiBzdHJpbmdbXTtcbiAgfSA9IHt9KSB7XG4gICAgc3VwZXIoeyBjaGlsZHJlbiB9KTtcbiAgICB0aGlzLm5hbWVzID0gbmFtZXMgfHwgW107XG4gIH1cblxuICBzdGF0aWMgY29tcHV0ZTxUIGV4dGVuZHMgb2JqZWN0PihcbiAgICBvcHRzOiAoXG4gICAgICBidWlsZGVyOiBDb21wdXRlRXhwcmVzc2lvbkJ1aWxkZXI8VD4sXG4gICAgICBjdXJyZW50PzogQ29tcHV0ZUV4cHJlc3Npb248VD5cbiAgICApID0+IENvbXB1dGVFeHByZXNzaW9uPFQ+LFxuICAgIGN1cnJlbnQ/OiBDb21wdXRlRXhwcmVzc2lvbjxUPlxuICApOiBDb21wdXRlRXhwcmVzc2lvbjxUPiB7XG4gICAgcmV0dXJuIG9wdHMoXG4gICAgICB7XG4gICAgICAgIHQ6IEZpZWxkLmZhY3Rvcnk8UmVhZG9ubHk8UmVxdWlyZWQ8VD4+PigpLFxuICAgICAgICBlOiAoKSA9PiBuZXcgQ29tcHV0ZUV4cHJlc3Npb248VD4oKSxcbiAgICAgIH0sXG4gICAgICBjdXJyZW50XG4gICAgKSBhcyBDb21wdXRlRXhwcmVzc2lvbjxUPjtcbiAgfVxuXG4gIHJlbmRlcih7XG4gICAgYWxpYXNlcyxcbiAgICBlc2NhcGUsXG4gICAgcHJlZml4LFxuICB9OiB7XG4gICAgYWxpYXNlcz86IFF1ZXJ5Q3VzdG9tVHlwZVtdIHwgdW5kZWZpbmVkO1xuICAgIGVzY2FwZT86IGJvb2xlYW4gfCB1bmRlZmluZWQ7XG4gICAgcHJlZml4Pzogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICB9ID0ge30pOiBzdHJpbmcge1xuICAgIGxldCBjaGlsZHJlbiA9IHRoaXMuX2NoaWxkcmVuLm1hcCgobikgPT5cbiAgICAgIG4ucmVuZGVyKHsgYWxpYXNlcywgZXNjYXBlLCBwcmVmaXggfSlcbiAgICApO1xuICAgIHJldHVybiB0aGlzLm5hbWVzXG4gICAgICAubWFwKChuYW1lLCBpbmRleCkgPT4gYCR7Y2hpbGRyZW5baW5kZXhdfSBhcyAke25hbWV9YClcbiAgICAgIC5qb2luKCcsJyk7XG4gIH1cblxuICBjbG9uZSgpIHtcbiAgICByZXR1cm4gbmV3IENvbXB1dGVFeHByZXNzaW9uKHtcbiAgICAgIGNoaWxkcmVuOiB0aGlzLl9jaGlsZHJlbi5tYXAoKGMpID0+IGMuY2xvbmUoKSksXG4gICAgICBuYW1lczogWy4uLnRoaXMubmFtZXNdLFxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfYWRkKG5hbWU6IHN0cmluZywgbm9kZTogUmVuZGVyYWJsZSk6IENvbXB1dGVFeHByZXNzaW9uPFQ+IHtcbiAgICB0aGlzLm5hbWVzLnB1c2gobmFtZSk7XG4gICAgdGhpcy5fY2hpbGRyZW4ucHVzaChub2RlKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIGZpZWxkPFQgZXh0ZW5kcyBvYmplY3Q+KFxuICAgIG5hbWU6IHN0cmluZyxcbiAgICBvcHRzOiAoZTogeyBvOiBPRGF0YU9wZXJhdG9yczxUPjsgZjogT0RhdGFGdW5jdGlvbnM8VD4gfSkgPT4gUmVuZGVyYWJsZVxuICApOiBDb21wdXRlRXhwcmVzc2lvbjxUPiB7XG4gICAgY29uc3Qgbm9kZSA9IG9wdHMoe1xuICAgICAgbzogb3BlcmF0b3JzIGFzIE9EYXRhT3BlcmF0b3JzPFQ+LFxuICAgICAgZjogZnVuY3Rpb25zIGFzIE9EYXRhRnVuY3Rpb25zPFQ+LFxuICAgIH0pO1xuICAgIHJldHVybiB0aGlzLl9hZGQobmFtZSwgbm9kZSk7XG4gIH1cbn1cbiJdfQ==
@@ -85,16 +85,10 @@ export class ExpandExpression extends Expression {
85
85
  constructor({ children, } = {}) {
86
86
  super({ children });
87
87
  }
88
- static expression() {
89
- return new ExpandExpression();
90
- }
91
- static type() {
92
- return Field.factory();
93
- }
94
88
  static expand(opts, current) {
95
89
  return opts({
96
- t: ExpandExpression.type(),
97
- e: ExpandExpression.expression,
90
+ t: Field.factory(),
91
+ e: () => new ExpandExpression(),
98
92
  }, current);
99
93
  }
100
94
  render({ aliases, escape, prefix, } = {}) {
@@ -118,4 +112,4 @@ export class ExpandExpression extends Expression {
118
112
  return this._add(node);
119
113
  }
120
114
  }
121
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwYW5kLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1vZGF0YS9zcmMvbGliL3Jlc291cmNlcy9xdWVyeS9leHByZXNzaW9ucy9leHBhbmQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEQsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVoRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBMkIsTUFBTSxVQUFVLENBQUM7QUFDckUsT0FBTyxFQUFFLGlCQUFpQixFQUE0QixNQUFNLFdBQVcsQ0FBQztBQUN4RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQTJCLE1BQU0sVUFBVSxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBMkIsTUFBTSxVQUFVLENBQUM7QUFDckUsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQWMsTUFBTSxVQUFVLENBQUM7QUFFckQsTUFBTSxPQUFPLFdBQVc7SUFDdEIsWUFDWSxLQUFVLEVBQ1osU0FBa0MsRUFBRTtRQURsQyxVQUFLLEdBQUwsS0FBSyxDQUFLO1FBQ1osV0FBTSxHQUFOLE1BQU0sQ0FBOEI7SUFDM0MsQ0FBQztJQUVKLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDO1FBQ3RCLE9BQU8sYUFBYSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxNQUFNO1FBQ0osT0FBTztZQUNMLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRTtTQUMzQixDQUFDO0lBQ0osQ0FBQztJQUVELE1BQU0sQ0FBQyxFQUNMLE9BQU8sRUFDUCxNQUFNLEVBQ04sTUFBTSxHQUtQO1FBQ0MsTUFBTSxNQUFNLEdBQThCO1lBQ3hDLGdCQUFnQixDQUFDLE1B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QUFDLENBQUM7UUFDMUIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsS0FBSyxDQUFJLEtBQVEsRUFBRSxJQUFrQztRQUNuRCxJQUFJLElBQUksR0FBRyxJQUFJLFdBQVcsQ0FBSSxLQUFLLENBQUMsQ0FBQztRQUNyQyxJQUFJLElBQUksS0FBSyxTQUFTO1lBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ25DLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN6QixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBRdWVyeU9wdGlvbk5hbWVzIH0gZnJvbSAnLi4vLi4vLi4vdHlwZXMnO1xuaW1wb3J0IHsgT2JqZWN0cywgVHlwZXMgfSBmcm9tICcuLi8uLi8uLi91dGlscyc7XG5pbXBvcnQgdHlwZSB7IFF1ZXJ5Q3VzdG9tVHlwZSB9IGZyb20gJy4uL2J1aWxkZXInO1xuaW1wb3J0IHsgRXhwcmVzc2lvbiB9IGZyb20gJy4vYmFzZSc7XG5pbXBvcnQgeyBGaWx0ZXJFeHByZXNzaW9uLCBGaWx0ZXJFeHByZXNzaW9uQnVpbGRlciB9IGZyb20gJy4vZmlsdGVyJztcbmltcG9ydCB7IE9yZGVyQnlFeHByZXNzaW9uLCBPcmRlckJ5RXhwcmVzc2lvbkJ1aWxkZXIgfSBmcm9tICcuL29yZGVyYnknO1xuaW1wb3J0IHsgU2VhcmNoRXhwcmVzc2lvbiwgU2VhcmNoRXhwcmVzc2lvbkJ1aWxkZXIgfSBmcm9tICcuL3NlYXJjaCc7XG5pbXBvcnQgeyBTZWxlY3RFeHByZXNzaW9uLCBTZWxlY3RFeHByZXNzaW9uQnVpbGRlciB9IGZyb20gJy4vc2VsZWN0JztcbmltcG9ydCB7IEZpZWxkLCByZW5kZXIsIFJlbmRlcmFibGUgfSBmcm9tICcuL3N5bnRheCc7XG5cbmV4cG9ydCBjbGFzcyBFeHBhbmRGaWVsZDxUPiBpbXBsZW1lbnRzIFJlbmRlcmFibGUge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcm90ZWN0ZWQgZmllbGQ6IGFueSxcbiAgICBwcml2YXRlIHZhbHVlczogeyBbbmFtZTogc3RyaW5nXTogYW55IH0gPSB7fVxuICApIHt9XG5cbiAgZ2V0IFtTeW1ib2wudG9TdHJpbmdUYWddKCkge1xuICAgIHJldHVybiAnRXhwYW5kRmllbGQnO1xuICB9XG5cbiAgdG9KU09OKCkge1xuICAgIHJldHVybiB7XG4gICAgICBmaWVsZDogdGhpcy5maWVsZC50b0pTT04oKSxcbiAgICB9O1xuICB9XG5cbiAgcmVuZGVyKHtcbiAgICBhbGlhc2VzLFxuICAgIGVzY2FwZSxcbiAgICBwcmVmaXgsXG4gIH06IHtcbiAgICBhbGlhc2VzPzogUXVlcnlDdXN0b21UeXBlW107XG4gICAgZXNjYXBlPzogYm9vbGVhbjtcbiAgICBwcmVmaXg/OiBzdHJpbmc7XG4gIH0pOiBzdHJpbmcge1xuICAgIGNvbnN0IHBhcmFtczogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfSA9IFtcbiAgICAgIFF1ZXJ5T3B0aW9uTmFtZXMuc2VsZWN0LFxuICAgICAgUXVlcnlPcHRpb25OYW1lcy5leHBhbmQsXG4gICAgICBRdWVyeU9wdGlvbk5hbWVzLmZpbHRlcixcbiAgICAgIFF1ZXJ5T3B0aW9uTmFtZXMuc2VhcmNoLFxuICAgICAgUXVlcnlPcHRpb25OYW1lcy5vcmRlckJ5LFxuICAgICAgUXVlcnlPcHRpb25OYW1lcy5za2lwLFxuICAgICAgUXVlcnlPcHRpb25OYW1lcy50b3AsXG4gICAgICBRdWVyeU9wdGlvbk5hbWVzLmxldmVscyxcbiAgICBdXG4gICAgICAuZmlsdGVyKChrZXkpID0+ICFUeXBlcy5pc0VtcHR5KHRoaXMudmFsdWVzW2tleV0pKVxuICAgICAgLnJlZHVjZSgoYWNjLCBrZXkpID0+IHtcbiAgICAgICAgbGV0IHZhbHVlOiBhbnkgPSB0aGlzLnZhbHVlc1trZXldO1xuICAgICAgICBpZiAoVHlwZXMucmF3VHlwZSh2YWx1ZSkuZW5kc1dpdGgoJ0V4cHJlc3Npb24nKSkge1xuICAgICAgICAgIHZhbHVlID0gKHZhbHVlIGFzIEV4cHJlc3Npb248VD4pLnJlbmRlcih7IGFsaWFzZXMsIHByZWZpeCwgZXNjYXBlIH0pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBPYmplY3QuYXNzaWduKGFjYywgeyBba2V5XTogdmFsdWUgfSk7XG4gICAgICB9LCB7fSk7XG4gICAgbGV0IGV4cGFuZCA9IGAke3JlbmRlcih0aGlzLmZpZWxkLCB7IGFsaWFzZXMsIGVzY2FwZSwgcHJlZml4IH0pfWA7XG4gICAgaWYgKCFUeXBlcy5pc0VtcHR5KHBhcmFtcykpIHtcbiAgICAgIGV4cGFuZCA9IGAke2V4cGFuZH0oJHtPYmplY3Qua2V5cyhwYXJhbXMpXG4gICAgICAgIC5tYXAoKGtleSkgPT4gYCQke2tleX09JHtwYXJhbXNba2V5XX1gKVxuICAgICAgICAuam9pbignOycpfSlgO1xuICAgIH1cbiAgICByZXR1cm4gZXhwYW5kO1xuICB9XG5cbiAgY2xvbmUoKSB7XG4gICAgY29uc3QgdmFsdWVzID0gT2JqZWN0LmtleXModGhpcy52YWx1ZXMpLnJlZHVjZShcbiAgICAgIChhY2MsIGtleSkgPT5cbiAgICAgICAgT2JqZWN0LmFzc2lnbihhY2MsIHsgW2tleV06IE9iamVjdHMuY2xvbmUodGhpcy52YWx1ZXNba2V5XSkgfSksXG4gICAgICB7fVxuICAgICk7XG4gICAgcmV0dXJuIG5ldyBFeHBhbmRGaWVsZCh0aGlzLmZpZWxkLmNsb25lKCksIHZhbHVlcyk7XG4gIH1cblxuICBzZWxlY3Q8VCBleHRlbmRzIG9iamVjdD4oXG4gICAgb3B0czogKFxuICAgICAgYnVpbGRlcjogU2VsZWN0RXhwcmVzc2lvbkJ1aWxkZXI8VD4sXG4gICAgICBjdXJyZW50PzogU2VsZWN0RXhwcmVzc2lvbjxUPlxuICAgICkgPT4gU2VsZWN0RXhwcmVzc2lvbjxUPlxuICApOiBTZWxlY3RFeHByZXNzaW9uPFQ+IHtcbiAgICByZXR1cm4gdGhpcy5vcHRpb24oXG4gICAgICBRdWVyeU9wdGlvbk5hbWVzLnNlbGVjdCxcbiAgICAgIFNlbGVjdEV4cHJlc3Npb24uc2VsZWN0PFQ+KG9wdHMsIHRoaXMudmFsdWVzW1F1ZXJ5T3B0aW9uTmFtZXMuc2VsZWN0XSlcbiAgICApO1xuICB9XG5cbiAgZXhwYW5kPFQgZXh0ZW5kcyBvYmplY3Q+KFxuICAgIG9wdHM6IChcbiAgICAgIGJ1aWxkZXI6IEV4cGFuZEV4cHJlc3Npb25CdWlsZGVyPFQ+LFxuICAgICAgY3VycmVudD86IEV4cGFuZEV4cHJlc3Npb248VD5cbiAgICApID0+IEV4cGFuZEV4cHJlc3Npb248VD5cbiAgKSB7XG4gICAgcmV0dXJuIHRoaXMub3B0aW9uKFxuICAgICAgUXVlcnlPcHRpb25OYW1lcy5leHBhbmQsXG4gICAgICBFeHBhbmRFeHByZXNzaW9uLmV4cGFuZDxUPihvcHRzLCB0aGlzLnZhbHVlc1tRdWVyeU9wdGlvbk5hbWVzLmV4cGFuZF0pXG4gICAgKTtcbiAgfVxuXG4gIGZpbHRlcjxUIGV4dGVuZHMgb2JqZWN0PihcbiAgICBvcHRzOiAoXG4gICAgICBidWlsZGVyOiBGaWx0ZXJFeHByZXNzaW9uQnVpbGRlcjxUPixcbiAgICAgIGN1cnJlbnQ/OiBGaWx0ZXJFeHByZXNzaW9uPFQ+XG4gICAgKSA9PiBGaWx0ZXJFeHByZXNzaW9uPFQ+XG4gICkge1xuICAgIHJldHVybiB0aGlzLm9wdGlvbihcbiAgICAgIFF1ZXJ5T3B0aW9uTmFtZXMuZmlsdGVyLFxuICAgICAgRmlsdGVyRXhwcmVzc2lvbi5maWx0ZXI8VD4ob3B0cywgdGhpcy52YWx1ZXNbUXVlcnlPcHRpb25OYW1lcy5maWx0ZXJdKVxuICAgICk7XG4gIH1cblxuICBzZWFyY2g8VCBleHRlbmRzIG9iamVjdD4oXG4gICAgb3B0czogKGJ1aWxkZXI6IFNlYXJjaEV4cHJlc3Npb25CdWlsZGVyPFQ+KSA9PiBTZWFyY2hFeHByZXNzaW9uPFQ+XG4gICkge1xuICAgIHJldHVybiB0aGlzLm9wdGlvbihcbiAgICAgIFF1ZXJ5T3B0aW9uTmFtZXMuc2VhcmNoLFxuICAgICAgU2VhcmNoRXhwcmVzc2lvbi5zZWFyY2g8VD4ob3B0cywgdGhpcy52YWx1ZXNbUXVlcnlPcHRpb25OYW1lcy5zZWFyY2hdKVxuICAgICk7XG4gIH1cblxuICBvcmRlckJ5PFQgZXh0ZW5kcyBvYmplY3Q+KFxuICAgIG9wdHM6IChcbiAgICAgIGJ1aWxkZXI6IE9yZGVyQnlFeHByZXNzaW9uQnVpbGRlcjxUPixcbiAgICAgIGN1cnJlbnQ/OiBPcmRlckJ5RXhwcmVzc2lvbjxUPlxuICAgICkgPT4gT3JkZXJCeUV4cHJlc3Npb248VD5cbiAgKSB7XG4gICAgcmV0dXJuIHRoaXMub3B0aW9uKFxuICAgICAgUXVlcnlPcHRpb25OYW1lcy5vcmRlckJ5LFxuICAgICAgT3JkZXJCeUV4cHJlc3Npb24ub3JkZXJCeTxUPihvcHRzLCB0aGlzLnZhbHVlc1tRdWVyeU9wdGlvbk5hbWVzLm9yZGVyQnldKVxuICAgICk7XG4gIH1cblxuICBza2lwKG46IG51bWJlcikge1xuICAgIHJldHVybiB0aGlzLm9wdGlvbjxudW1iZXI+KFF1ZXJ5T3B0aW9uTmFtZXMuc2tpcCwgbik7XG4gIH1cblxuICB0b3AobjogbnVtYmVyKSB7XG4gICAgcmV0dXJuIHRoaXMub3B0aW9uPG51bWJlcj4oUXVlcnlPcHRpb25OYW1lcy50b3AsIG4pO1xuICB9XG5cbiAgbGV2ZWxzKG46IG51bWJlciB8ICdtYXgnKSB7XG4gICAgcmV0dXJuIHRoaXMub3B0aW9uPG51bWJlciB8ICdtYXgnPihRdWVyeU9wdGlvbk5hbWVzLmxldmVscywgbik7XG4gIH1cblxuICAvLyBPcHRpb24gSGFuZGxlclxuICBwcml2YXRlIG9wdGlvbjxPPihuYW1lOiBRdWVyeU9wdGlvbk5hbWVzLCBvcHRzPzogTykge1xuICAgIGlmIChvcHRzICE9PSB1bmRlZmluZWQpIHRoaXMudmFsdWVzW25hbWVdID0gb3B0cztcbiAgICByZXR1cm4gdGhpcy52YWx1ZXNbbmFtZV07XG4gIH1cbn1cblxuZXhwb3J0IHR5cGUgRXhwYW5kRXhwcmVzc2lvbkJ1aWxkZXI8VD4gPSB7IHQ6IFQ7IGU6ICgpID0+IEV4cGFuZEV4cHJlc3Npb248VD4gfTtcbmV4cG9ydCBjbGFzcyBFeHBhbmRFeHByZXNzaW9uPFQ+IGV4dGVuZHMgRXhwcmVzc2lvbjxUPiB7XG4gIGNvbnN0cnVjdG9yKHtcbiAgICBjaGlsZHJlbixcbiAgfToge1xuICAgIGNoaWxkcmVuPzogUmVuZGVyYWJsZVtdO1xuICB9ID0ge30pIHtcbiAgICBzdXBlcih7IGNoaWxkcmVuIH0pO1xuICB9XG5cbiAgc3RhdGljIGV4cHJlc3Npb248VD4oKSB7XG4gICAgcmV0dXJuIG5ldyBFeHBhbmRFeHByZXNzaW9uPFQ+KCk7XG4gIH1cblxuICBzdGF0aWMgdHlwZTxUIGV4dGVuZHMgb2JqZWN0PigpOiBUIHtcbiAgICByZXR1cm4gRmllbGQuZmFjdG9yeTxUPigpO1xuICB9XG5cbiAgc3RhdGljIGV4cGFuZDxUIGV4dGVuZHMgb2JqZWN0PihcbiAgICBvcHRzOiAoXG4gICAgICBidWlsZGVyOiBFeHBhbmRFeHByZXNzaW9uQnVpbGRlcjxUPixcbiAgICAgIGN1cnJlbnQ/OiBFeHBhbmRFeHByZXNzaW9uPFQ+XG4gICAgKSA9PiBFeHBhbmRFeHByZXNzaW9uPFQ+LFxuICAgIGN1cnJlbnQ/OiBFeHBhbmRFeHByZXNzaW9uPFQ+XG4gICk6IEV4cGFuZEV4cHJlc3Npb248VD4ge1xuICAgIHJldHVybiBvcHRzKFxuICAgICAge1xuICAgICAgICB0OiBFeHBhbmRFeHByZXNzaW9uLnR5cGU8VD4oKSxcbiAgICAgICAgZTogRXhwYW5kRXhwcmVzc2lvbi5leHByZXNzaW9uLFxuICAgICAgfSxcbiAgICAgIGN1cnJlbnRcbiAgICApIGFzIEV4cGFuZEV4cHJlc3Npb248VD47XG4gIH1cblxuICByZW5kZXIoe1xuICAgIGFsaWFzZXMsXG4gICAgZXNjYXBlLFxuICAgIHByZWZpeCxcbiAgfToge1xuICAgIGFsaWFzZXM/OiBRdWVyeUN1c3RvbVR5cGVbXSB8IHVuZGVmaW5lZDtcbiAgICBlc2NhcGU/OiBib29sZWFuIHwgdW5kZWZpbmVkO1xuICAgIHByZWZpeD86IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgfSA9IHt9KTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fY2hpbGRyZW5cbiAgICAgIC5tYXAoKG4pID0+IG4ucmVuZGVyKHsgYWxpYXNlcywgZXNjYXBlLCBwcmVmaXggfSkpXG4gICAgICAuam9pbignLCcpO1xuICB9XG5cbiAgY2xvbmUoKSB7XG4gICAgcmV0dXJuIG5ldyBFeHBhbmRFeHByZXNzaW9uKHtcbiAgICAgIGNoaWxkcmVuOiB0aGlzLl9jaGlsZHJlbi5tYXAoKGMpID0+IGMuY2xvbmUoKSksXG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF9hZGQobm9kZTogUmVuZGVyYWJsZSk6IEV4cGFuZEV4cHJlc3Npb248VD4ge1xuICAgIHRoaXMuX2NoaWxkcmVuLnB1c2gobm9kZSk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBmaWVsZDxGPihmaWVsZDogRiwgb3B0cz86IChlOiBFeHBhbmRGaWVsZDxGPikgPT4gdm9pZCk6IEV4cGFuZEV4cHJlc3Npb248Rj4ge1xuICAgIGxldCBub2RlID0gbmV3IEV4cGFuZEZpZWxkPEY+KGZpZWxkKTtcbiAgICBpZiAob3B0cyAhPT0gdW5kZWZpbmVkKSBvcHRzKG5vZGUpO1xuICAgIHJldHVybiB0aGlzLl9hZGQobm9kZSk7XG4gIH1cbn1cbiJdfQ==
115
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwYW5kLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1vZGF0YS9zcmMvbGliL3Jlc291cmNlcy9xdWVyeS9leHByZXNzaW9ucy9leHBhbmQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEQsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVoRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBMkIsTUFBTSxVQUFVLENBQUM7QUFDckUsT0FBTyxFQUFFLGlCQUFpQixFQUE0QixNQUFNLFdBQVcsQ0FBQztBQUN4RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQTJCLE1BQU0sVUFBVSxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBMkIsTUFBTSxVQUFVLENBQUM7QUFDckUsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQWMsTUFBTSxVQUFVLENBQUM7QUFFckQsTUFBTSxPQUFPLFdBQVc7SUFDdEIsWUFDWSxLQUFVLEVBQ1osU0FBa0MsRUFBRTtRQURsQyxVQUFLLEdBQUwsS0FBSyxDQUFLO1FBQ1osV0FBTSxHQUFOLE1BQU0sQ0FBOEI7SUFDM0MsQ0FBQztJQUVKLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDO1FBQ3RCLE9BQU8sYUFBYSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxNQUFNO1FBQ0osT0FBTztZQUNMLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRTtTQUMzQixDQUFDO0lBQ0osQ0FBQztJQUVELE1BQU0sQ0FBQyxFQUNMLE9BQU8sRUFDUCxNQUFNLEVBQ04sTUFBTSxHQUtQO1FBQ0MsTUFBTSxNQUFNLEdBQThCO1lBQ3hDLGdCQUFnQixDQUFDLE1B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QyxDQUFDO1FBQ3JDLElBQUksSUFBSSxLQUFLLFNBQVM7WUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbkMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3pCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFF1ZXJ5T3B0aW9uTmFtZXMgfSBmcm9tICcuLi8uLi8uLi90eXBlcyc7XG5pbXBvcnQgeyBPYmplY3RzLCBUeXBlcyB9IGZyb20gJy4uLy4uLy4uL3V0aWxzJztcbmltcG9ydCB0eXBlIHsgUXVlcnlDdXN0b21UeXBlIH0gZnJvbSAnLi4vYnVpbGRlcic7XG5pbXBvcnQgeyBFeHByZXNzaW9uIH0gZnJvbSAnLi9iYXNlJztcbmltcG9ydCB7IEZpbHRlckV4cHJlc3Npb24sIEZpbHRlckV4cHJlc3Npb25CdWlsZGVyIH0gZnJvbSAnLi9maWx0ZXInO1xuaW1wb3J0IHsgT3JkZXJCeUV4cHJlc3Npb24sIE9yZGVyQnlFeHByZXNzaW9uQnVpbGRlciB9IGZyb20gJy4vb3JkZXJieSc7XG5pbXBvcnQgeyBTZWFyY2hFeHByZXNzaW9uLCBTZWFyY2hFeHByZXNzaW9uQnVpbGRlciB9IGZyb20gJy4vc2VhcmNoJztcbmltcG9ydCB7IFNlbGVjdEV4cHJlc3Npb24sIFNlbGVjdEV4cHJlc3Npb25CdWlsZGVyIH0gZnJvbSAnLi9zZWxlY3QnO1xuaW1wb3J0IHsgRmllbGQsIHJlbmRlciwgUmVuZGVyYWJsZSB9IGZyb20gJy4vc3ludGF4JztcblxuZXhwb3J0IGNsYXNzIEV4cGFuZEZpZWxkPFQ+IGltcGxlbWVudHMgUmVuZGVyYWJsZSB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCBmaWVsZDogYW55LFxuICAgIHByaXZhdGUgdmFsdWVzOiB7IFtuYW1lOiBzdHJpbmddOiBhbnkgfSA9IHt9XG4gICkge31cblxuICBnZXQgW1N5bWJvbC50b1N0cmluZ1RhZ10oKSB7XG4gICAgcmV0dXJuICdFeHBhbmRGaWVsZCc7XG4gIH1cblxuICB0b0pTT04oKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGZpZWxkOiB0aGlzLmZpZWxkLnRvSlNPTigpLFxuICAgIH07XG4gIH1cblxuICByZW5kZXIoe1xuICAgIGFsaWFzZXMsXG4gICAgZXNjYXBlLFxuICAgIHByZWZpeCxcbiAgfToge1xuICAgIGFsaWFzZXM/OiBRdWVyeUN1c3RvbVR5cGVbXTtcbiAgICBlc2NhcGU/OiBib29sZWFuO1xuICAgIHByZWZpeD86IHN0cmluZztcbiAgfSk6IHN0cmluZyB7XG4gICAgY29uc3QgcGFyYW1zOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9ID0gW1xuICAgICAgUXVlcnlPcHRpb25OYW1lcy5zZWxlY3QsXG4gICAgICBRdWVyeU9wdGlvbk5hbWVzLmV4cGFuZCxcbiAgICAgIFF1ZXJ5T3B0aW9uTmFtZXMuZmlsdGVyLFxuICAgICAgUXVlcnlPcHRpb25OYW1lcy5zZWFyY2gsXG4gICAgICBRdWVyeU9wdGlvbk5hbWVzLm9yZGVyQnksXG4gICAgICBRdWVyeU9wdGlvbk5hbWVzLnNraXAsXG4gICAgICBRdWVyeU9wdGlvbk5hbWVzLnRvcCxcbiAgICAgIFF1ZXJ5T3B0aW9uTmFtZXMubGV2ZWxzLFxuICAgIF1cbiAgICAgIC5maWx0ZXIoKGtleSkgPT4gIVR5cGVzLmlzRW1wdHkodGhpcy52YWx1ZXNba2V5XSkpXG4gICAgICAucmVkdWNlKChhY2MsIGtleSkgPT4ge1xuICAgICAgICBsZXQgdmFsdWU6IGFueSA9IHRoaXMudmFsdWVzW2tleV07XG4gICAgICAgIGlmIChUeXBlcy5yYXdUeXBlKHZhbHVlKS5lbmRzV2l0aCgnRXhwcmVzc2lvbicpKSB7XG4gICAgICAgICAgdmFsdWUgPSAodmFsdWUgYXMgRXhwcmVzc2lvbjxUPikucmVuZGVyKHsgYWxpYXNlcywgcHJlZml4LCBlc2NhcGUgfSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIE9iamVjdC5hc3NpZ24oYWNjLCB7IFtrZXldOiB2YWx1ZSB9KTtcbiAgICAgIH0sIHt9KTtcbiAgICBsZXQgZXhwYW5kID0gYCR7cmVuZGVyKHRoaXMuZmllbGQsIHsgYWxpYXNlcywgZXNjYXBlLCBwcmVmaXggfSl9YDtcbiAgICBpZiAoIVR5cGVzLmlzRW1wdHkocGFyYW1zKSkge1xuICAgICAgZXhwYW5kID0gYCR7ZXhwYW5kfSgke09iamVjdC5rZXlzKHBhcmFtcylcbiAgICAgICAgLm1hcCgoa2V5KSA9PiBgJCR7a2V5fT0ke3BhcmFtc1trZXldfWApXG4gICAgICAgIC5qb2luKCc7Jyl9KWA7XG4gICAgfVxuICAgIHJldHVybiBleHBhbmQ7XG4gIH1cblxuICBjbG9uZSgpIHtcbiAgICBjb25zdCB2YWx1ZXMgPSBPYmplY3Qua2V5cyh0aGlzLnZhbHVlcykucmVkdWNlKFxuICAgICAgKGFjYywga2V5KSA9PlxuICAgICAgICBPYmplY3QuYXNzaWduKGFjYywgeyBba2V5XTogT2JqZWN0cy5jbG9uZSh0aGlzLnZhbHVlc1trZXldKSB9KSxcbiAgICAgIHt9XG4gICAgKTtcbiAgICByZXR1cm4gbmV3IEV4cGFuZEZpZWxkKHRoaXMuZmllbGQuY2xvbmUoKSwgdmFsdWVzKTtcbiAgfVxuXG4gIHNlbGVjdDxUIGV4dGVuZHMgb2JqZWN0PihcbiAgICBvcHRzOiAoXG4gICAgICBidWlsZGVyOiBTZWxlY3RFeHByZXNzaW9uQnVpbGRlcjxUPixcbiAgICAgIGN1cnJlbnQ/OiBTZWxlY3RFeHByZXNzaW9uPFQ+XG4gICAgKSA9PiBTZWxlY3RFeHByZXNzaW9uPFQ+XG4gICk6IFNlbGVjdEV4cHJlc3Npb248VD4ge1xuICAgIHJldHVybiB0aGlzLm9wdGlvbihcbiAgICAgIFF1ZXJ5T3B0aW9uTmFtZXMuc2VsZWN0LFxuICAgICAgU2VsZWN0RXhwcmVzc2lvbi5zZWxlY3Q8VD4ob3B0cywgdGhpcy52YWx1ZXNbUXVlcnlPcHRpb25OYW1lcy5zZWxlY3RdKVxuICAgICk7XG4gIH1cblxuICBleHBhbmQ8VCBleHRlbmRzIG9iamVjdD4oXG4gICAgb3B0czogKFxuICAgICAgYnVpbGRlcjogRXhwYW5kRXhwcmVzc2lvbkJ1aWxkZXI8VD4sXG4gICAgICBjdXJyZW50PzogRXhwYW5kRXhwcmVzc2lvbjxUPlxuICAgICkgPT4gRXhwYW5kRXhwcmVzc2lvbjxUPlxuICApIHtcbiAgICByZXR1cm4gdGhpcy5vcHRpb24oXG4gICAgICBRdWVyeU9wdGlvbk5hbWVzLmV4cGFuZCxcbiAgICAgIEV4cGFuZEV4cHJlc3Npb24uZXhwYW5kPFQ+KG9wdHMsIHRoaXMudmFsdWVzW1F1ZXJ5T3B0aW9uTmFtZXMuZXhwYW5kXSlcbiAgICApO1xuICB9XG5cbiAgZmlsdGVyPFQgZXh0ZW5kcyBvYmplY3Q+KFxuICAgIG9wdHM6IChcbiAgICAgIGJ1aWxkZXI6IEZpbHRlckV4cHJlc3Npb25CdWlsZGVyPFQ+LFxuICAgICAgY3VycmVudD86IEZpbHRlckV4cHJlc3Npb248VD5cbiAgICApID0+IEZpbHRlckV4cHJlc3Npb248VD5cbiAgKSB7XG4gICAgcmV0dXJuIHRoaXMub3B0aW9uKFxuICAgICAgUXVlcnlPcHRpb25OYW1lcy5maWx0ZXIsXG4gICAgICBGaWx0ZXJFeHByZXNzaW9uLmZpbHRlcjxUPihvcHRzLCB0aGlzLnZhbHVlc1tRdWVyeU9wdGlvbk5hbWVzLmZpbHRlcl0pXG4gICAgKTtcbiAgfVxuXG4gIHNlYXJjaDxUIGV4dGVuZHMgb2JqZWN0PihcbiAgICBvcHRzOiAoYnVpbGRlcjogU2VhcmNoRXhwcmVzc2lvbkJ1aWxkZXI8VD4pID0+IFNlYXJjaEV4cHJlc3Npb248VD5cbiAgKSB7XG4gICAgcmV0dXJuIHRoaXMub3B0aW9uKFxuICAgICAgUXVlcnlPcHRpb25OYW1lcy5zZWFyY2gsXG4gICAgICBTZWFyY2hFeHByZXNzaW9uLnNlYXJjaDxUPihvcHRzLCB0aGlzLnZhbHVlc1tRdWVyeU9wdGlvbk5hbWVzLnNlYXJjaF0pXG4gICAgKTtcbiAgfVxuXG4gIG9yZGVyQnk8VCBleHRlbmRzIG9iamVjdD4oXG4gICAgb3B0czogKFxuICAgICAgYnVpbGRlcjogT3JkZXJCeUV4cHJlc3Npb25CdWlsZGVyPFQ+LFxuICAgICAgY3VycmVudD86IE9yZGVyQnlFeHByZXNzaW9uPFQ+XG4gICAgKSA9PiBPcmRlckJ5RXhwcmVzc2lvbjxUPlxuICApIHtcbiAgICByZXR1cm4gdGhpcy5vcHRpb24oXG4gICAgICBRdWVyeU9wdGlvbk5hbWVzLm9yZGVyQnksXG4gICAgICBPcmRlckJ5RXhwcmVzc2lvbi5vcmRlckJ5PFQ+KG9wdHMsIHRoaXMudmFsdWVzW1F1ZXJ5T3B0aW9uTmFtZXMub3JkZXJCeV0pXG4gICAgKTtcbiAgfVxuXG4gIHNraXAobjogbnVtYmVyKSB7XG4gICAgcmV0dXJuIHRoaXMub3B0aW9uPG51bWJlcj4oUXVlcnlPcHRpb25OYW1lcy5za2lwLCBuKTtcbiAgfVxuXG4gIHRvcChuOiBudW1iZXIpIHtcbiAgICByZXR1cm4gdGhpcy5vcHRpb248bnVtYmVyPihRdWVyeU9wdGlvbk5hbWVzLnRvcCwgbik7XG4gIH1cblxuICBsZXZlbHMobjogbnVtYmVyIHwgJ21heCcpIHtcbiAgICByZXR1cm4gdGhpcy5vcHRpb248bnVtYmVyIHwgJ21heCc+KFF1ZXJ5T3B0aW9uTmFtZXMubGV2ZWxzLCBuKTtcbiAgfVxuXG4gIC8vIE9wdGlvbiBIYW5kbGVyXG4gIHByaXZhdGUgb3B0aW9uPE8+KG5hbWU6IFF1ZXJ5T3B0aW9uTmFtZXMsIG9wdHM/OiBPKSB7XG4gICAgaWYgKG9wdHMgIT09IHVuZGVmaW5lZCkgdGhpcy52YWx1ZXNbbmFtZV0gPSBvcHRzO1xuICAgIHJldHVybiB0aGlzLnZhbHVlc1tuYW1lXTtcbiAgfVxufVxuXG5leHBvcnQgdHlwZSBFeHBhbmRFeHByZXNzaW9uQnVpbGRlcjxUPiA9IHtcbiAgdDogUmVhZG9ubHk8UmVxdWlyZWQ8VD4+O1xuICBlOiAoKSA9PiBFeHBhbmRFeHByZXNzaW9uPFQ+O1xufTtcbmV4cG9ydCBjbGFzcyBFeHBhbmRFeHByZXNzaW9uPFQ+IGV4dGVuZHMgRXhwcmVzc2lvbjxUPiB7XG4gIGNvbnN0cnVjdG9yKHtcbiAgICBjaGlsZHJlbixcbiAgfToge1xuICAgIGNoaWxkcmVuPzogUmVuZGVyYWJsZVtdO1xuICB9ID0ge30pIHtcbiAgICBzdXBlcih7IGNoaWxkcmVuIH0pO1xuICB9XG5cbiAgc3RhdGljIGV4cGFuZDxUIGV4dGVuZHMgb2JqZWN0PihcbiAgICBvcHRzOiAoXG4gICAgICBidWlsZGVyOiBFeHBhbmRFeHByZXNzaW9uQnVpbGRlcjxUPixcbiAgICAgIGN1cnJlbnQ/OiBFeHBhbmRFeHByZXNzaW9uPFQ+XG4gICAgKSA9PiBFeHBhbmRFeHByZXNzaW9uPFQ+LFxuICAgIGN1cnJlbnQ/OiBFeHBhbmRFeHByZXNzaW9uPFQ+XG4gICk6IEV4cGFuZEV4cHJlc3Npb248VD4ge1xuICAgIHJldHVybiBvcHRzKFxuICAgICAge1xuICAgICAgICB0OiBGaWVsZC5mYWN0b3J5PFJlYWRvbmx5PFJlcXVpcmVkPFQ+Pj4oKSxcbiAgICAgICAgZTogKCkgPT4gbmV3IEV4cGFuZEV4cHJlc3Npb248VD4oKSxcbiAgICAgIH0sXG4gICAgICBjdXJyZW50XG4gICAgKSBhcyBFeHBhbmRFeHByZXNzaW9uPFQ+O1xuICB9XG5cbiAgcmVuZGVyKHtcbiAgICBhbGlhc2VzLFxuICAgIGVzY2FwZSxcbiAgICBwcmVmaXgsXG4gIH06IHtcbiAgICBhbGlhc2VzPzogUXVlcnlDdXN0b21UeXBlW10gfCB1bmRlZmluZWQ7XG4gICAgZXNjYXBlPzogYm9vbGVhbiB8IHVuZGVmaW5lZDtcbiAgICBwcmVmaXg/OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gIH0gPSB7fSk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX2NoaWxkcmVuXG4gICAgICAubWFwKChuKSA9PiBuLnJlbmRlcih7IGFsaWFzZXMsIGVzY2FwZSwgcHJlZml4IH0pKVxuICAgICAgLmpvaW4oJywnKTtcbiAgfVxuXG4gIGNsb25lKCkge1xuICAgIHJldHVybiBuZXcgRXhwYW5kRXhwcmVzc2lvbih7XG4gICAgICBjaGlsZHJlbjogdGhpcy5fY2hpbGRyZW4ubWFwKChjKSA9PiBjLmNsb25lKCkpLFxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfYWRkKG5vZGU6IFJlbmRlcmFibGUpOiBFeHBhbmRFeHByZXNzaW9uPFQ+IHtcbiAgICB0aGlzLl9jaGlsZHJlbi5wdXNoKG5vZGUpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgZmllbGQ8Rj4oZmllbGQ6IEYsIG9wdHM/OiAoZTogRXhwYW5kRmllbGQ8Rj4pID0+IHZvaWQpOiBFeHBhbmRFeHByZXNzaW9uPEY+IHtcbiAgICBsZXQgbm9kZSA9IG5ldyBFeHBhbmRGaWVsZDxGPihmaWVsZCk7XG4gICAgaWYgKG9wdHMgIT09IHVuZGVmaW5lZCkgb3B0cyhub2RlKTtcbiAgICByZXR1cm4gdGhpcy5fYWRkKG5vZGUpO1xuICB9XG59XG4iXX0=
@@ -6,16 +6,10 @@ export class FilterExpression extends Expression {
6
6
  this._connector = connector || 'and';
7
7
  this._negated = negated || false;
8
8
  }
9
- static type() {
10
- return Field.factory();
11
- }
12
- static expression(connector = 'and') {
13
- return new FilterExpression({ connector });
14
- }
15
9
  static filter(opts, current) {
16
10
  return opts({
17
- t: FilterExpression.type(),
18
- e: FilterExpression.expression,
11
+ t: Field.factory(),
12
+ e: (connector = 'and') => new FilterExpression({ connector }),
19
13
  o: operators,
20
14
  f: functions,
21
15
  }, current);
@@ -140,16 +134,19 @@ export class FilterExpression extends Expression {
140
134
  return this._add(functions.endsWith(left, right, normalize));
141
135
  }
142
136
  any(left, opts, alias) {
143
- const exp = opts({
144
- t: Field.factory(),
145
- e: FilterExpression.expression,
146
- });
137
+ let exp = undefined;
138
+ if (opts !== undefined) {
139
+ exp = opts({
140
+ t: Field.factory(),
141
+ e: (connector = 'and') => new FilterExpression({ connector }),
142
+ });
143
+ }
147
144
  return this._add(syntax.any(left, exp, alias));
148
145
  }
149
146
  all(left, opts, alias) {
150
147
  const exp = opts({
151
148
  t: Field.factory(),
152
- e: FilterExpression.expression,
149
+ e: (connector = 'and') => new FilterExpression({ connector }),
153
150
  });
154
151
  return this._add(syntax.all(left, exp, alias));
155
152
  }
@@ -157,4 +154,4 @@ export class FilterExpression extends Expression {
157
154
  return this._add(syntax.isof(left, type));
158
155
  }
159
156
  }
160
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1vZGF0YS9zcmMvbGliL3Jlc291cmNlcy9xdWVyeS9leHByZXNzaW9ucy9maWx0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUNwQyxPQUFPLEVBQ0wsS0FBSyxFQUNMLFNBQVMsRUFDVCxRQUFRLEVBR1IsU0FBUyxFQUVULE1BQU0sR0FDUCxNQUFNLFVBQVUsQ0FBQztBQVVsQixNQUFNLE9BQU8sZ0JBQW9CLFNBQVEsVUFBYTtJQUdwRCxZQUFZLEVBQ1YsUUFBUSxFQUNSLFNBQVMsRUFDVCxPQUFPLE1BS0wsRUFBRTtRQUNKLEtBQUssQ0FBQyxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUM7UUFDcEIsSUFBSSxDQUFDLFVBQVUsR0FBRyxTQUFTLElBQUksS0FBSyxDQUFDO1FBQ3JDLElBQUksQ0FBQyxRQUFRLEdBQUcsT0FBTyxJQUFJLEtBQUssQ0FBQztJQUNuQyxDQUFDO0lBRUQsTUFBTSxDQUFDLElBQUk7UUFDVCxPQUFPLEtBQUssQ0FBQyxPQUFPLEVBQUssQ0FBQztJQUM1QixDQUFDO0lBRUQsTUFBTSxDQUFDLFVBQVUsQ0FBSSxZQUE2QixLQUFLO1FBQ3JELE9BQU8sSUFBSSxnQkFBZ0IsQ0FBSSxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUM7SUFDaEQsQ0FBQztJQUVELE1BQU0sQ0FBQyxNQUFNLENBQ1gsSUFHd0IsRUFDeEIsT0FBNkI7UUFFN0IsT0FBTyxJQUFJLENBQ1Q7WUFDRSxDQUFDLEVBQUUsZ0JBQWdCLENBQUMsSUFBSSxFQUFLO1lBQzdCLENBQUMsRUFBRSxnQkFBZ0IsQ0FBQyxVQUFVO1lBQzlCLENBQUMsRUFBRSxTQUE4QjtZQUNqQyxDQUFDLEVBQUUsU0FBOEI7U0FDbEMsRUFDRCxPQUFPLENBQ2UsQ0FBQztJQUMzQixD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QUVELEVBQUUsQ0FBQyxJQUFTLEVBQUUsS0FBVSxFQUFFLFNBQW1CO1FBQzNDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsU0FBUyxDQUFDLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBRUQsRUFBRSxDQUFDLElBQVMsRUFBRSxLQUFVLEVBQUUsU0FBbUI7UUFDM0MsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFFRCxFQUFFLENBQUMsSUFBUyxFQUFFLEtBQVUsRUFBRSxTQUFtQjtRQUMzQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUM7SUFDekQsQ0FBQztJQUVELEVBQUUsQ0FBQyxJQUFTLEVBQUUsS0FBVSxFQUFFLFNBQW1CO1FBQzNDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsU0FBUyxDQUFDLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBRUQsRUFBRSxDQUFDLElBQVMsRUFBRSxLQUFVLEVBQUUsU0FBbUI7UUFDM0MsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFFRCxFQUFFLENBQUMsSUFBUyxFQUFFLEtBQVUsRUFBRSxTQUFtQjtRQUMzQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUM7SUFDekQsQ0FBQztJQUVELEdBQUcsQ0FBQyxJQUFTLEVBQUUsS0FBVSxFQUFFLFNBQW1CO1FBQzVDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsU0FBUyxDQUFDLENBQUMsQ0FBQztJQUMxRCxDQUFDO0lBRUQsRUFBRSxDQUFDLElBQVMsRUFBRSxLQUFVLEVBQUUsU0FBbUI7UUFDM0MsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFFRCxRQUFRLENBQUMsSUFBUyxFQUFFLEtBQVUsRUFBRSxTQUFtQjtRQUNqRCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUM7SUFDL0QsQ0FBQztJQUVELFVBQVUsQ0FBQyxJQUFTLEVBQUUsS0FBVSxFQUFFLFNBQW1CO1FBQ25ELE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsU0FBUyxDQUFDLENBQUMsQ0FBQztJQUNqRSxDQUFDO0lBRUQsUUFBUSxDQUFDLElBQVMsRUFBRSxLQUFVLEVBQUUsU0FBbUI7UUFDakQsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFFRCxHQUFHLENBQ0QsSUFBUyxFQUNULElBR3lCLEVBQ3pCLEtBQWM7UUFFZCxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUM7WUFDZixDQUFDLEVBQUUsS0FBSyxDQUFDLE9BQU8sRUFBSztZQUNyQixDQUFDLEVBQUUsZ0JBQWdCLENBQUMsVUFBVTtTQUMvQixDQUF3QixDQUFDO1FBQzFCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxHQUFHLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUNqRCxDQUFDO0lBRUQsR0FBRyxDQUNELElBQVMsRUFDVCxJQUd5QixFQUN6QixLQUFjO1FBRWQsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDO1lBQ2YsQ0FBQyxFQUFFLEtBQUssQ0FBQyxPQUFPLEVBQUs7WUFDckIsQ0FBQyxFQUFFLGdCQUFnQixDQUFDLFVBQVU7U0FDL0IsQ0FBd0IsQ0FBQztRQUMxQixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDakQsQ0FBQztJQUlELElBQUksQ0FBQyxJQUFTLEVBQUUsSUFBYTtRQUMzQixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUM1QyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFF1ZXJ5Q3VzdG9tVHlwZSB9IGZyb20gJy4uL2J1aWxkZXInO1xuaW1wb3J0IHsgRXhwcmVzc2lvbiB9IGZyb20gJy4vYmFzZSc7XG5pbXBvcnQge1xuICBGaWVsZCxcbiAgZnVuY3Rpb25zLFxuICBHcm91cGluZyxcbiAgT0RhdGFGdW5jdGlvbnMsXG4gIE9EYXRhT3BlcmF0b3JzLFxuICBvcGVyYXRvcnMsXG4gIFJlbmRlcmFibGUsXG4gIHN5bnRheCxcbn0gZnJvbSAnLi9zeW50YXgnO1xuXG5leHBvcnQgdHlwZSBGaWx0ZXJDb25uZWN0b3IgPSAnYW5kJyB8ICdvcic7XG5cbmV4cG9ydCB0eXBlIEZpbHRlckV4cHJlc3Npb25CdWlsZGVyPFQ+ID0ge1xuICB0OiBUO1xuICBlOiAoY29ubmVjdG9yPzogRmlsdGVyQ29ubmVjdG9yKSA9PiBGaWx0ZXJFeHByZXNzaW9uPFQ+O1xuICBvOiBPRGF0YU9wZXJhdG9yczxUPjtcbiAgZjogT0RhdGFGdW5jdGlvbnM8VD47XG59O1xuZXhwb3J0IGNsYXNzIEZpbHRlckV4cHJlc3Npb248Rj4gZXh0ZW5kcyBFeHByZXNzaW9uPEY+IHtcbiAgcHJpdmF0ZSBfY29ubmVjdG9yOiBGaWx0ZXJDb25uZWN0b3I7XG4gIHByaXZhdGUgX25lZ2F0ZWQ6IGJvb2xlYW47XG4gIGNvbnN0cnVjdG9yKHtcbiAgICBjaGlsZHJlbixcbiAgICBjb25uZWN0b3IsXG4gICAgbmVnYXRlZCxcbiAgfToge1xuICAgIGNoaWxkcmVuPzogUmVuZGVyYWJsZVtdO1xuICAgIGNvbm5lY3Rvcj86IEZpbHRlckNvbm5lY3RvcjtcbiAgICBuZWdhdGVkPzogYm9vbGVhbjtcbiAgfSA9IHt9KSB7XG4gICAgc3VwZXIoeyBjaGlsZHJlbiB9KTtcbiAgICB0aGlzLl9jb25uZWN0b3IgPSBjb25uZWN0b3IgfHwgJ2FuZCc7XG4gICAgdGhpcy5fbmVnYXRlZCA9IG5lZ2F0ZWQgfHwgZmFsc2U7XG4gIH1cblxuICBzdGF0aWMgdHlwZTxUIGV4dGVuZHMgb2JqZWN0PigpOiBUIHtcbiAgICByZXR1cm4gRmllbGQuZmFjdG9yeTxUPigpO1xuICB9XG5cbiAgc3RhdGljIGV4cHJlc3Npb248VD4oY29ubmVjdG9yOiBGaWx0ZXJDb25uZWN0b3IgPSAnYW5kJykge1xuICAgIHJldHVybiBuZXcgRmlsdGVyRXhwcmVzc2lvbjxUPih7IGNvbm5lY3RvciB9KTtcbiAgfVxuXG4gIHN0YXRpYyBmaWx0ZXI8VCBleHRlbmRzIG9iamVjdD4oXG4gICAgb3B0czogKFxuICAgICAgYnVpbGRlcjogRmlsdGVyRXhwcmVzc2lvbkJ1aWxkZXI8VD4sXG4gICAgICBjdXJyZW50PzogRmlsdGVyRXhwcmVzc2lvbjxUPlxuICAgICkgPT4gRmlsdGVyRXhwcmVzc2lvbjxUPixcbiAgICBjdXJyZW50PzogRmlsdGVyRXhwcmVzc2lvbjxUPlxuICApOiBGaWx0ZXJFeHByZXNzaW9uPFQ+IHtcbiAgICByZXR1cm4gb3B0cyhcbiAgICAgIHtcbiAgICAgICAgdDogRmlsdGVyRXhwcmVzc2lvbi50eXBlPFQ+KCksXG4gICAgICAgIGU6IEZpbHRlckV4cHJlc3Npb24uZXhwcmVzc2lvbixcbiAgICAgICAgbzogb3BlcmF0b3JzIGFzIE9EYXRhT3BlcmF0b3JzPFQ+LFxuICAgICAgICBmOiBmdW5jdGlvbnMgYXMgT0RhdGFGdW5jdGlvbnM8VD4sXG4gICAgICB9LFxuICAgICAgY3VycmVudFxuICAgICkgYXMgRmlsdGVyRXhwcmVzc2lvbjxUPjtcbiAgfVxuXG4gIG92ZXJyaWRlIHRvSlNPTigpIHtcbiAgICByZXR1cm4ge1xuICAgICAgY2hpbGRyZW46IHRoaXMuX2NoaWxkcmVuLm1hcCgoYykgPT4gYy50b0pTT04oKSksXG4gICAgICBjb25uZWN0b3I6IHRoaXMuX2Nvbm5lY3RvcixcbiAgICAgIG5lZ2F0ZWQ6IHRoaXMuX25lZ2F0ZWQsXG4gICAgfTtcbiAgfVxuXG4gIGNvbm5lY3RvcigpIHtcbiAgICByZXR1cm4gdGhpcy5fY29ubmVjdG9yO1xuICB9XG5cbiAgbmVnYXRlZCgpIHtcbiAgICByZXR1cm4gdGhpcy5fbmVnYXRlZDtcbiAgfVxuXG4gIHJlbmRlcih7XG4gICAgYWxpYXNlcyxcbiAgICBlc2NhcGUsXG4gICAgcHJlZml4LFxuICB9OiB7XG4gICAgYWxpYXNlcz86IFF1ZXJ5Q3VzdG9tVHlwZVtdO1xuICAgIGVzY2FwZT86IGJvb2xlYW47XG4gICAgcHJlZml4Pzogc3RyaW5nO1xuICB9ID0ge30pOiBzdHJpbmcge1xuICAgIGxldCBjb250ZW50ID0gdGhpcy5fY2hpbGRyZW5cbiAgICAgIC5tYXAoKG4pID0+IG4ucmVuZGVyKHsgYWxpYXNlcywgZXNjYXBlLCBwcmVmaXggfSkpXG4gICAgICAuam9pbihgICR7dGhpcy5fY29ubmVjdG9yfSBgKTtcbiAgICBpZiAodGhpcy5fbmVnYXRlZCkge1xuICAgICAgY29udGVudCA9IGBub3QgKCR7Y29udGVudH0pYDtcbiAgICB9XG4gICAgcmV0dXJuIGNvbnRlbnQ7XG4gIH1cblxuICBjbG9uZSgpIHtcbiAgICByZXR1cm4gbmV3IEZpbHRlckV4cHJlc3Npb24oe1xuICAgICAgY2hpbGRyZW46IHRoaXMuX2NoaWxkcmVuLm1hcCgoYykgPT4gYy5jbG9uZSgpKSxcbiAgICAgIGNvbm5lY3RvcjogdGhpcy5fY29ubmVjdG9yLFxuICAgICAgbmVnYXRlZDogdGhpcy5fbmVnYXRlZCxcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX2FkZChcbiAgICBub2RlOiBSZW5kZXJhYmxlLFxuICAgIGNvbm5lY3Rvcj86IEZpbHRlckNvbm5lY3RvclxuICApOiBGaWx0ZXJFeHByZXNzaW9uPEY+IHtcbiAgICBpZiAoY29ubmVjdG9yICE9PSB1bmRlZmluZWQgJiYgdGhpcy5fY29ubmVjdG9yICE9PSBjb25uZWN0b3IpIHtcbiAgICAgIGxldCBjaGlsZHJlbjogUmVuZGVyYWJsZVtdID0gW107XG4gICAgICBpZiAodGhpcy5fY2hpbGRyZW4ubGVuZ3RoID4gMCkge1xuICAgICAgICBpZiAodGhpcy5fY2hpbGRyZW4ubGVuZ3RoID09PSAxKSB7XG4gICAgICAgICAgY2hpbGRyZW4gPSBbLi4udGhpcy5fY2hpbGRyZW5dO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGxldCBleHAgPSBuZXcgRmlsdGVyRXhwcmVzc2lvbjxGPih7XG4gICAgICAgICAgICBjaGlsZHJlbjogdGhpcy5fY2hpbGRyZW4sXG4gICAgICAgICAgICBjb25uZWN0b3I6IHRoaXMuX2Nvbm5lY3RvcixcbiAgICAgICAgICAgIG5lZ2F0ZWQ6IHRoaXMuX25lZ2F0ZWQsXG4gICAgICAgICAgfSk7XG4gICAgICAgICAgaWYgKGV4cC5sZW5ndGgoKSA+IDEpIHtcbiAgICAgICAgICAgIGNoaWxkcmVuLnB1c2gobmV3IEdyb3VwaW5nKGV4cCkpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjaGlsZHJlbi5wdXNoKGV4cCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBpZiAoXG4gICAgICAgIG5vZGUgaW5zdGFuY2VvZiBGaWx0ZXJFeHByZXNzaW9uICYmXG4gICAgICAgIChub2RlLmNvbm5lY3RvcigpID09PSBjb25uZWN0b3IgfHwgbm9kZS5sZW5ndGgoKSA9PT0gMSlcbiAgICAgICkge1xuICAgICAgICBjaGlsZHJlbiA9IFsuLi5jaGlsZHJlbiwgLi4ubm9kZS5jaGlsZHJlbigpXTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNoaWxkcmVuLnB1c2gobmV3IEdyb3VwaW5nKG5vZGUpKTtcbiAgICAgIH1cbiAgICAgIHRoaXMuX2Nvbm5lY3RvciA9IGNvbm5lY3RvcjtcbiAgICAgIHRoaXMuX2NoaWxkcmVuID0gY2hpbGRyZW47XG4gICAgfSBlbHNlIGlmIChcbiAgICAgIG5vZGUgaW5zdGFuY2VvZiBGaWx0ZXJFeHByZXNzaW9uICYmXG4gICAgICAhbm9kZS5uZWdhdGVkKCkgJiZcbiAgICAgIChub2RlLmNvbm5lY3RvcigpID09PSBjb25uZWN0b3IgfHwgbm9kZS5sZW5ndGgoKSA9PT0gMSlcbiAgICApIHtcbiAgICAgIHRoaXMuX2NoaWxkcmVuID0gWy4uLnRoaXMuX2NoaWxkcmVuLCAuLi5ub2RlLmNoaWxkcmVuKCldO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl9jaGlsZHJlbi5wdXNoKFxuICAgICAgICBub2RlIGluc3RhbmNlb2YgRmlsdGVyRXhwcmVzc2lvbiAmJiAhbm9kZS5uZWdhdGVkKClcbiAgICAgICAgICA/IG5ldyBHcm91cGluZyhub2RlKVxuICAgICAgICAgIDogbm9kZVxuICAgICAgKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBvcihleHA6IEZpbHRlckV4cHJlc3Npb248Rj4pOiBGaWx0ZXJFeHByZXNzaW9uPEY+IHtcbiAgICByZXR1cm4gdGhpcy5fYWRkKGV4cCwgJ29yJyk7XG4gIH1cblxuICBhbmQoZXhwOiBGaWx0ZXJFeHByZXNzaW9uPEY+KTogRmlsdGVyRXhwcmVzc2lvbjxGPiB7XG4gICAgcmV0dXJuIHRoaXMuX2FkZChleHAsICdhbmQnKTtcbiAgfVxuXG4gIG5vdChleHA6IEZpbHRlckV4cHJlc3Npb248Rj4pOiBGaWx0ZXJFeHByZXNzaW9uPEY+IHtcbiAgICBjb25zdCBub3RFeHAgPSBuZXcgRmlsdGVyRXhwcmVzc2lvbjxGPih7XG4gICAgICBjaGlsZHJlbjogZXhwLmNoaWxkcmVuKCksXG4gICAgICBjb25uZWN0b3I6IGV4cC5jb25uZWN0b3IoKSxcbiAgICAgIG5lZ2F0ZWQ6IHRydWUsXG4gICAgfSk7XG5cbiAgICByZXR1cm4gdGhpcy5fYWRkKG5vdEV4cCwgdGhpcy5fY29ubmVjdG9yKTtcbiAgfVxuXG4gIGVxKGxlZnQ6IGFueSwgcmlnaHQ6IGFueSwgbm9ybWFsaXplPzogYm9vbGVhbikge1xuICAgIHJldHVybiB0aGlzLl9hZGQob3BlcmF0b3JzLmVxKGxlZnQsIHJpZ2h0LCBub3JtYWxpemUpKTtcbiAgfVxuXG4gIG5lKGxlZnQ6IGFueSwgcmlnaHQ6IGFueSwgbm9ybWFsaXplPzogYm9vbGVhbikge1xuICAgIHJldHVybiB0aGlzLl9hZGQob3BlcmF0b3JzLm5lKGxlZnQsIHJpZ2h0LCBub3JtYWxpemUpKTtcbiAgfVxuXG4gIGd0KGxlZnQ6IGFueSwgcmlnaHQ6IGFueSwgbm9ybWFsaXplPzogYm9vbGVhbikge1xuICAgIHJldHVybiB0aGlzLl9hZGQob3BlcmF0b3JzLmd0KGxlZnQsIHJpZ2h0LCBub3JtYWxpemUpKTtcbiAgfVxuXG4gIGdlKGxlZnQ6IGFueSwgcmlnaHQ6IGFueSwgbm9ybWFsaXplPzogYm9vbGVhbikge1xuICAgIHJldHVybiB0aGlzLl9hZGQob3BlcmF0b3JzLmdlKGxlZnQsIHJpZ2h0LCBub3JtYWxpemUpKTtcbiAgfVxuXG4gIGx0KGxlZnQ6IGFueSwgcmlnaHQ6IGFueSwgbm9ybWFsaXplPzogYm9vbGVhbikge1xuICAgIHJldHVybiB0aGlzLl9hZGQob3BlcmF0b3JzLmx0KGxlZnQsIHJpZ2h0LCBub3JtYWxpemUpKTtcbiAgfVxuXG4gIGxlKGxlZnQ6IGFueSwgcmlnaHQ6IGFueSwgbm9ybWFsaXplPzogYm9vbGVhbikge1xuICAgIHJldHVybiB0aGlzLl9hZGQob3BlcmF0b3JzLmxlKGxlZnQsIHJpZ2h0LCBub3JtYWxpemUpKTtcbiAgfVxuXG4gIGhhcyhsZWZ0OiBhbnksIHJpZ2h0OiBhbnksIG5vcm1hbGl6ZT86IGJvb2xlYW4pIHtcbiAgICByZXR1cm4gdGhpcy5fYWRkKG9wZXJhdG9ycy5oYXMobGVmdCwgcmlnaHQsIG5vcm1hbGl6ZSkpO1xuICB9XG5cbiAgaW4obGVmdDogYW55LCByaWdodDogYW55LCBub3JtYWxpemU/OiBib29sZWFuKSB7XG4gICAgcmV0dXJuIHRoaXMuX2FkZChvcGVyYXRvcnMuaW4obGVmdCwgcmlnaHQsIG5vcm1hbGl6ZSkpO1xuICB9XG5cbiAgY29udGFpbnMobGVmdDogYW55LCByaWdodDogYW55LCBub3JtYWxpemU/OiBib29sZWFuKSB7XG4gICAgcmV0dXJuIHRoaXMuX2FkZChmdW5jdGlvbnMuY29udGFpbnMobGVmdCwgcmlnaHQsIG5vcm1hbGl6ZSkpO1xuICB9XG5cbiAgc3RhcnRzV2l0aChsZWZ0OiBhbnksIHJpZ2h0OiBhbnksIG5vcm1hbGl6ZT86IGJvb2xlYW4pIHtcbiAgICByZXR1cm4gdGhpcy5fYWRkKGZ1bmN0aW9ucy5zdGFydHNXaXRoKGxlZnQsIHJpZ2h0LCBub3JtYWxpemUpKTtcbiAgfVxuXG4gIGVuZHNXaXRoKGxlZnQ6IGFueSwgcmlnaHQ6IGFueSwgbm9ybWFsaXplPzogYm9vbGVhbikge1xuICAgIHJldHVybiB0aGlzLl9hZGQoZnVuY3Rpb25zLmVuZHNXaXRoKGxlZnQsIHJpZ2h0LCBub3JtYWxpemUpKTtcbiAgfVxuXG4gIGFueTxOIGV4dGVuZHMgb2JqZWN0PihcbiAgICBsZWZ0OiBOW10sXG4gICAgb3B0czogKGU6IHtcbiAgICAgIGU6IChjb25uZWN0b3I/OiBGaWx0ZXJDb25uZWN0b3IpID0+IEZpbHRlckV4cHJlc3Npb248Tj47XG4gICAgICB0OiBOO1xuICAgIH0pID0+IEZpbHRlckV4cHJlc3Npb248Tj4sXG4gICAgYWxpYXM/OiBzdHJpbmdcbiAgKTogRmlsdGVyRXhwcmVzc2lvbjxGPiB7XG4gICAgY29uc3QgZXhwID0gb3B0cyh7XG4gICAgICB0OiBGaWVsZC5mYWN0b3J5PE4+KCksXG4gICAgICBlOiBGaWx0ZXJFeHByZXNzaW9uLmV4cHJlc3Npb24sXG4gICAgfSkgYXMgRmlsdGVyRXhwcmVzc2lvbjxOPjtcbiAgICByZXR1cm4gdGhpcy5fYWRkKHN5bnRheC5hbnkobGVmdCwgZXhwLCBhbGlhcykpO1xuICB9XG5cbiAgYWxsPE4gZXh0ZW5kcyBvYmplY3Q+KFxuICAgIGxlZnQ6IE5bXSxcbiAgICBvcHRzOiAoZToge1xuICAgICAgdDogTjtcbiAgICAgIGU6IChjb25uZWN0b3I/OiBGaWx0ZXJDb25uZWN0b3IpID0+IEZpbHRlckV4cHJlc3Npb248Tj47XG4gICAgfSkgPT4gRmlsdGVyRXhwcmVzc2lvbjxOPixcbiAgICBhbGlhcz86IHN0cmluZ1xuICApOiBGaWx0ZXJFeHByZXNzaW9uPEY+IHtcbiAgICBjb25zdCBleHAgPSBvcHRzKHtcbiAgICAgIHQ6IEZpZWxkLmZhY3Rvcnk8Tj4oKSxcbiAgICAgIGU6IEZpbHRlckV4cHJlc3Npb24uZXhwcmVzc2lvbixcbiAgICB9KSBhcyBGaWx0ZXJFeHByZXNzaW9uPE4+O1xuICAgIHJldHVybiB0aGlzLl9hZGQoc3ludGF4LmFsbChsZWZ0LCBleHAsIGFsaWFzKSk7XG4gIH1cblxuICBpc29mKHR5cGU6IHN0cmluZyk6IEZpbHRlckV4cHJlc3Npb248Rj47XG4gIGlzb2YobGVmdDogRiwgdHlwZTogc3RyaW5nKTogRmlsdGVyRXhwcmVzc2lvbjxGPjtcbiAgaXNvZihsZWZ0OiBhbnksIHR5cGU/OiBzdHJpbmcpOiBGaWx0ZXJFeHByZXNzaW9uPEY+IHtcbiAgICByZXR1cm4gdGhpcy5fYWRkKHN5bnRheC5pc29mKGxlZnQsIHR5cGUpKTtcbiAgfVxufVxuIl19
157
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1vZGF0YS9zcmMvbGliL3Jlc291cmNlcy9xdWVyeS9leHByZXNzaW9ucy9maWx0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUNwQyxPQUFPLEVBQ0wsS0FBSyxFQUNMLFNBQVMsRUFDVCxRQUFRLEVBR1IsU0FBUyxFQUVULE1BQU0sR0FDUCxNQUFNLFVBQVUsQ0FBQztBQVVsQixNQUFNLE9BQU8sZ0JBQW9CLFNBQVEsVUFBYTtJQUdwRCxZQUFZLEVBQ1YsUUFBUSxFQUNSLFNBQVMsRUFDVCxPQUFPLE1BS0wsRUFBRTtRQUNKLEtBQUssQ0FBQyxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUM7UUFDcEIsSUFBSSxDQUFDLFVBQVUsR0FBRyxTQUFTLElBQUksS0FBSyxDQUFDO1FBQ3JDLElBQUksQ0FBQyxRQUFRLEdBQUcsT0FBTyxJQUFJLEtBQUssQ0FBQztJQUNuQyxDQUFDO0lBRUQsTUFBTSxDQUFDLE1BQU0sQ0FDWCxJQUd3QixFQUN4QixPQUE2QjtRQUU3QixPQUFPLElBQUksQ0FDVDtZQUNFLENBQUMsRUFBRSxLQUFLLENBQUMsT0FBTyxFQUF5QjtZQUN6QyxDQUFDLEVBQUUsQ0FBQyxZQUE2QixLQUFLLEVBQUUsRUFBRSxDQUN4QyxJQUFJLGdCQUFnQixDQUFJLEVBQUUsU0FBUyxFQUFFLENBQUM7WUFDeEMsQ0FBQyxFQUFFLFNBQThCO1lBQ2pDLENBQUMsRUFBRSxTQUE4QjtTQUNsQyxFQUNELE9BQU8sQ0FDZSxDQUFDO0lBQzNCLENBQUM7SUFFUSxNQUFNO1FBQ2IsT0FBTztZQUNMLFFBQVEsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxD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LENBQUMsQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFFRCxFQUFFLENBQUMsSUFBUyxFQUFFLEtBQVUsRUFBRSxTQUFtQjtRQUMzQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUM7SUFDekQsQ0FBQztJQUVELEVBQUUsQ0FBQyxJQUFTLEVBQUUsS0FBVSxFQUFFLFNBQW1CO1FBQzNDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsU0FBUyxDQUFDLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBRUQsRUFBRSxDQUFDLElBQVMsRUFBRSxLQUFVLEVBQUUsU0FBbUI7UUFDM0MsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFFRCxFQUFFLENBQUMsSUFBUyxFQUFFLEtBQVUsRUFBRSxTQUFtQjtRQUMzQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUM7SUFDekQsQ0FBQztJQUVELEVBQUUsQ0FBQyxJQUFTLEVBQUUsS0FBVSxFQUFFLFNBQW1CO1FBQzNDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsU0FBUyxDQUFDLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBRUQsR0FBRyxDQUFDLElBQVMsRUFBRSxLQUFVLEVBQUUsU0FBbUI7UUFDNUMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDO0lBQzFELENBQUM7SUFFRCxFQUFFLENBQUMsSUFBUyxFQUFFLEtBQVUsRUFBRSxTQUFtQjtRQUMzQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUM7SUFDekQsQ0FBQztJQUVELFFBQVEsQ0FBQyxJQUFTLEVBQUUsS0FBVSxFQUFFLFNBQW1CO1FBQ2pELE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsU0FBUyxDQUFDLENBQUMsQ0FBQztJQUMvRCxDQUFDO0lBRUQsVUFBVSxDQUFDLElBQVMsRUFBRSxLQUFVLEVBQUUsU0FBbUI7UUFDbkQsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDO0lBQ2pFLENBQUM7SUFFRCxRQUFRLENBQUMsSUFBUyxFQUFFLEtBQVUsRUFBRSxTQUFtQjtRQUNqRCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUM7SUFDL0QsQ0FBQztJQUVELEdBQUcsQ0FDRCxJQUFTLEVBQ1QsSUFHeUIsRUFDekIsS0FBYztRQUVkLElBQUksR0FBRyxHQUFHLFNBQVMsQ0FBQztRQUNwQixJQUFJLElBQUksS0FBSyxTQUFTLEVBQUU7WUFDdEIsR0FBRyxHQUFHLElBQUksQ0FBQztnQkFDVCxDQUFDLEVBQUUsS0FBSyxDQUFDLE9BQU8sRUFBeUI7Z0JBQ3pDLENBQUMsRUFBRSxDQUFDLFlBQTZCLEtBQUssRUFBRSxFQUFFLENBQ3hDLElBQUksZ0JBQWdCLENBQUksRUFBRSxTQUFTLEVBQUUsQ0FBQzthQUN6QyxDQUF3QixDQUFDO1NBQzNCO1FBQ0QsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ2pELENBQUM7SUFFRCxHQUFHLENBQ0QsSUFBUyxFQUNULElBR3lCLEVBQ3pCLEtBQWM7UUFFZCxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUM7WUFDZixDQUFDLEVBQUUsS0FBSyxDQUFDLE9BQU8sRUFBeUI7WUFDekMsQ0FBQyxFQUFFLENBQUMsWUFBNkIsS0FBSyxFQUFFLEVBQUUsQ0FDeEMsSUFBSSxnQkFBZ0IsQ0FBSSxFQUFFLFNBQVMsRUFBRSxDQUFDO1NBQ3pDLENBQXdCLENBQUM7UUFDMUIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ2pELENBQUM7SUFJRCxJQUFJLENBQUMsSUFBUyxFQUFFLElBQWE7UUFDM0IsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDNUMsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBRdWVyeUN1c3RvbVR5cGUgfSBmcm9tICcuLi9idWlsZGVyJztcbmltcG9ydCB7IEV4cHJlc3Npb24gfSBmcm9tICcuL2Jhc2UnO1xuaW1wb3J0IHtcbiAgRmllbGQsXG4gIGZ1bmN0aW9ucyxcbiAgR3JvdXBpbmcsXG4gIE9EYXRhRnVuY3Rpb25zLFxuICBPRGF0YU9wZXJhdG9ycyxcbiAgb3BlcmF0b3JzLFxuICBSZW5kZXJhYmxlLFxuICBzeW50YXgsXG59IGZyb20gJy4vc3ludGF4JztcblxuZXhwb3J0IHR5cGUgRmlsdGVyQ29ubmVjdG9yID0gJ2FuZCcgfCAnb3InO1xuXG5leHBvcnQgdHlwZSBGaWx0ZXJFeHByZXNzaW9uQnVpbGRlcjxUPiA9IHtcbiAgdDogUmVhZG9ubHk8UmVxdWlyZWQ8VD4+O1xuICBlOiAoY29ubmVjdG9yPzogRmlsdGVyQ29ubmVjdG9yKSA9PiBGaWx0ZXJFeHByZXNzaW9uPFQ+O1xuICBvOiBPRGF0YU9wZXJhdG9yczxUPjtcbiAgZjogT0RhdGFGdW5jdGlvbnM8VD47XG59O1xuZXhwb3J0IGNsYXNzIEZpbHRlckV4cHJlc3Npb248Rj4gZXh0ZW5kcyBFeHByZXNzaW9uPEY+IHtcbiAgcHJpdmF0ZSBfY29ubmVjdG9yOiBGaWx0ZXJDb25uZWN0b3I7XG4gIHByaXZhdGUgX25lZ2F0ZWQ6IGJvb2xlYW47XG4gIGNvbnN0cnVjdG9yKHtcbiAgICBjaGlsZHJlbixcbiAgICBjb25uZWN0b3IsXG4gICAgbmVnYXRlZCxcbiAgfToge1xuICAgIGNoaWxkcmVuPzogUmVuZGVyYWJsZVtdO1xuICAgIGNvbm5lY3Rvcj86IEZpbHRlckNvbm5lY3RvcjtcbiAgICBuZWdhdGVkPzogYm9vbGVhbjtcbiAgfSA9IHt9KSB7XG4gICAgc3VwZXIoeyBjaGlsZHJlbiB9KTtcbiAgICB0aGlzLl9jb25uZWN0b3IgPSBjb25uZWN0b3IgfHwgJ2FuZCc7XG4gICAgdGhpcy5fbmVnYXRlZCA9IG5lZ2F0ZWQgfHwgZmFsc2U7XG4gIH1cblxuICBzdGF0aWMgZmlsdGVyPFQgZXh0ZW5kcyBvYmplY3Q+KFxuICAgIG9wdHM6IChcbiAgICAgIGJ1aWxkZXI6IEZpbHRlckV4cHJlc3Npb25CdWlsZGVyPFQ+LFxuICAgICAgY3VycmVudD86IEZpbHRlckV4cHJlc3Npb248VD5cbiAgICApID0+IEZpbHRlckV4cHJlc3Npb248VD4sXG4gICAgY3VycmVudD86IEZpbHRlckV4cHJlc3Npb248VD5cbiAgKTogRmlsdGVyRXhwcmVzc2lvbjxUPiB7XG4gICAgcmV0dXJuIG9wdHMoXG4gICAgICB7XG4gICAgICAgIHQ6IEZpZWxkLmZhY3Rvcnk8UmVhZG9ubHk8UmVxdWlyZWQ8VD4+PigpLFxuICAgICAgICBlOiAoY29ubmVjdG9yOiBGaWx0ZXJDb25uZWN0b3IgPSAnYW5kJykgPT5cbiAgICAgICAgICBuZXcgRmlsdGVyRXhwcmVzc2lvbjxUPih7IGNvbm5lY3RvciB9KSxcbiAgICAgICAgbzogb3BlcmF0b3JzIGFzIE9EYXRhT3BlcmF0b3JzPFQ+LFxuICAgICAgICBmOiBmdW5jdGlvbnMgYXMgT0RhdGFGdW5jdGlvbnM8VD4sXG4gICAgICB9LFxuICAgICAgY3VycmVudFxuICAgICkgYXMgRmlsdGVyRXhwcmVzc2lvbjxUPjtcbiAgfVxuXG4gIG92ZXJyaWRlIHRvSlNPTigpIHtcbiAgICByZXR1cm4ge1xuICAgICAgY2hpbGRyZW46IHRoaXMuX2NoaWxkcmVuLm1hcCgoYykgPT4gYy50b0pTT04oKSksXG4gICAgICBjb25uZWN0b3I6IHRoaXMuX2Nvbm5lY3RvcixcbiAgICAgIG5lZ2F0ZWQ6IHRoaXMuX25lZ2F0ZWQsXG4gICAgfTtcbiAgfVxuXG4gIGNvbm5lY3RvcigpIHtcbiAgICByZXR1cm4gdGhpcy5fY29ubmVjdG9yO1xuICB9XG5cbiAgbmVnYXRlZCgpIHtcbiAgICByZXR1cm4gdGhpcy5fbmVnYXRlZDtcbiAgfVxuXG4gIHJlbmRlcih7XG4gICAgYWxpYXNlcyxcbiAgICBlc2NhcGUsXG4gICAgcHJlZml4LFxuICB9OiB7XG4gICAgYWxpYXNlcz86IFF1ZXJ5Q3VzdG9tVHlwZVtdO1xuICAgIGVzY2FwZT86IGJvb2xlYW47XG4gICAgcHJlZml4Pzogc3RyaW5nO1xuICB9ID0ge30pOiBzdHJpbmcge1xuICAgIGxldCBjb250ZW50ID0gdGhpcy5fY2hpbGRyZW5cbiAgICAgIC5tYXAoKG4pID0+IG4ucmVuZGVyKHsgYWxpYXNlcywgZXNjYXBlLCBwcmVmaXggfSkpXG4gICAgICAuam9pbihgICR7dGhpcy5fY29ubmVjdG9yfSBgKTtcbiAgICBpZiAodGhpcy5fbmVnYXRlZCkge1xuICAgICAgY29udGVudCA9IGBub3QgKCR7Y29udGVudH0pYDtcbiAgICB9XG4gICAgcmV0dXJuIGNvbnRlbnQ7XG4gIH1cblxuICBjbG9uZSgpIHtcbiAgICByZXR1cm4gbmV3IEZpbHRlckV4cHJlc3Npb24oe1xuICAgICAgY2hpbGRyZW46IHRoaXMuX2NoaWxkcmVuLm1hcCgoYykgPT4gYy5jbG9uZSgpKSxcbiAgICAgIGNvbm5lY3RvcjogdGhpcy5fY29ubmVjdG9yLFxuICAgICAgbmVnYXRlZDogdGhpcy5fbmVnYXRlZCxcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX2FkZChcbiAgICBub2RlOiBSZW5kZXJhYmxlLFxuICAgIGNvbm5lY3Rvcj86IEZpbHRlckNvbm5lY3RvclxuICApOiBGaWx0ZXJFeHByZXNzaW9uPEY+IHtcbiAgICBpZiAoY29ubmVjdG9yICE9PSB1bmRlZmluZWQgJiYgdGhpcy5fY29ubmVjdG9yICE9PSBjb25uZWN0b3IpIHtcbiAgICAgIGxldCBjaGlsZHJlbjogUmVuZGVyYWJsZVtdID0gW107XG4gICAgICBpZiAodGhpcy5fY2hpbGRyZW4ubGVuZ3RoID4gMCkge1xuICAgICAgICBpZiAodGhpcy5fY2hpbGRyZW4ubGVuZ3RoID09PSAxKSB7XG4gICAgICAgICAgY2hpbGRyZW4gPSBbLi4udGhpcy5fY2hpbGRyZW5dO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGxldCBleHAgPSBuZXcgRmlsdGVyRXhwcmVzc2lvbjxGPih7XG4gICAgICAgICAgICBjaGlsZHJlbjogdGhpcy5fY2hpbGRyZW4sXG4gICAgICAgICAgICBjb25uZWN0b3I6IHRoaXMuX2Nvbm5lY3RvcixcbiAgICAgICAgICAgIG5lZ2F0ZWQ6IHRoaXMuX25lZ2F0ZWQsXG4gICAgICAgICAgfSk7XG4gICAgICAgICAgaWYgKGV4cC5sZW5ndGgoKSA+IDEpIHtcbiAgICAgICAgICAgIGNoaWxkcmVuLnB1c2gobmV3IEdyb3VwaW5nKGV4cCkpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjaGlsZHJlbi5wdXNoKGV4cCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBpZiAoXG4gICAgICAgIG5vZGUgaW5zdGFuY2VvZiBGaWx0ZXJFeHByZXNzaW9uICYmXG4gICAgICAgIChub2RlLmNvbm5lY3RvcigpID09PSBjb25uZWN0b3IgfHwgbm9kZS5sZW5ndGgoKSA9PT0gMSlcbiAgICAgICkge1xuICAgICAgICBjaGlsZHJlbiA9IFsuLi5jaGlsZHJlbiwgLi4ubm9kZS5jaGlsZHJlbigpXTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNoaWxkcmVuLnB1c2gobmV3IEdyb3VwaW5nKG5vZGUpKTtcbiAgICAgIH1cbiAgICAgIHRoaXMuX2Nvbm5lY3RvciA9IGNvbm5lY3RvcjtcbiAgICAgIHRoaXMuX2NoaWxkcmVuID0gY2hpbGRyZW47XG4gICAgfSBlbHNlIGlmIChcbiAgICAgIG5vZGUgaW5zdGFuY2VvZiBGaWx0ZXJFeHByZXNzaW9uICYmXG4gICAgICAhbm9kZS5uZWdhdGVkKCkgJiZcbiAgICAgIChub2RlLmNvbm5lY3RvcigpID09PSBjb25uZWN0b3IgfHwgbm9kZS5sZW5ndGgoKSA9PT0gMSlcbiAgICApIHtcbiAgICAgIHRoaXMuX2NoaWxkcmVuID0gWy4uLnRoaXMuX2NoaWxkcmVuLCAuLi5ub2RlLmNoaWxkcmVuKCldO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl9jaGlsZHJlbi5wdXNoKFxuICAgICAgICBub2RlIGluc3RhbmNlb2YgRmlsdGVyRXhwcmVzc2lvbiAmJiAhbm9kZS5uZWdhdGVkKClcbiAgICAgICAgICA/IG5ldyBHcm91cGluZyhub2RlKVxuICAgICAgICAgIDogbm9kZVxuICAgICAgKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBvcihleHA6IEZpbHRlckV4cHJlc3Npb248Rj4pOiBGaWx0ZXJFeHByZXNzaW9uPEY+IHtcbiAgICByZXR1cm4gdGhpcy5fYWRkKGV4cCwgJ29yJyk7XG4gIH1cblxuICBhbmQoZXhwOiBGaWx0ZXJFeHByZXNzaW9uPEY+KTogRmlsdGVyRXhwcmVzc2lvbjxGPiB7XG4gICAgcmV0dXJuIHRoaXMuX2FkZChleHAsICdhbmQnKTtcbiAgfVxuXG4gIG5vdChleHA6IEZpbHRlckV4cHJlc3Npb248Rj4pOiBGaWx0ZXJFeHByZXNzaW9uPEY+IHtcbiAgICBjb25zdCBub3RFeHAgPSBuZXcgRmlsdGVyRXhwcmVzc2lvbjxGPih7XG4gICAgICBjaGlsZHJlbjogZXhwLmNoaWxkcmVuKCksXG4gICAgICBjb25uZWN0b3I6IGV4cC5jb25uZWN0b3IoKSxcbiAgICAgIG5lZ2F0ZWQ6IHRydWUsXG4gICAgfSk7XG5cbiAgICByZXR1cm4gdGhpcy5fYWRkKG5vdEV4cCwgdGhpcy5fY29ubmVjdG9yKTtcbiAgfVxuXG4gIGVxKGxlZnQ6IGFueSwgcmlnaHQ6IGFueSwgbm9ybWFsaXplPzogYm9vbGVhbikge1xuICAgIHJldHVybiB0aGlzLl9hZGQob3BlcmF0b3JzLmVxKGxlZnQsIHJpZ2h0LCBub3JtYWxpemUpKTtcbiAgfVxuXG4gIG5lKGxlZnQ6IGFueSwgcmlnaHQ6IGFueSwgbm9ybWFsaXplPzogYm9vbGVhbikge1xuICAgIHJldHVybiB0aGlzLl9hZGQob3BlcmF0b3JzLm5lKGxlZnQsIHJpZ2h0LCBub3JtYWxpemUpKTtcbiAgfVxuXG4gIGd0KGxlZnQ6IGFueSwgcmlnaHQ6IGFueSwgbm9ybWFsaXplPzogYm9vbGVhbikge1xuICAgIHJldHVybiB0aGlzLl9hZGQob3BlcmF0b3JzLmd0KGxlZnQsIHJpZ2h0LCBub3JtYWxpemUpKTtcbiAgfVxuXG4gIGdlKGxlZnQ6IGFueSwgcmlnaHQ6IGFueSwgbm9ybWFsaXplPzogYm9vbGVhbikge1xuICAgIHJldHVybiB0aGlzLl9hZGQob3BlcmF0b3JzLmdlKGxlZnQsIHJpZ2h0LCBub3JtYWxpemUpKTtcbiAgfVxuXG4gIGx0KGxlZnQ6IGFueSwgcmlnaHQ6IGFueSwgbm9ybWFsaXplPzogYm9vbGVhbikge1xuICAgIHJldHVybiB0aGlzLl9hZGQob3BlcmF0b3JzLmx0KGxlZnQsIHJpZ2h0LCBub3JtYWxpemUpKTtcbiAgfVxuXG4gIGxlKGxlZnQ6IGFueSwgcmlnaHQ6IGFueSwgbm9ybWFsaXplPzogYm9vbGVhbikge1xuICAgIHJldHVybiB0aGlzLl9hZGQob3BlcmF0b3JzLmxlKGxlZnQsIHJpZ2h0LCBub3JtYWxpemUpKTtcbiAgfVxuXG4gIGhhcyhsZWZ0OiBhbnksIHJpZ2h0OiBhbnksIG5vcm1hbGl6ZT86IGJvb2xlYW4pIHtcbiAgICByZXR1cm4gdGhpcy5fYWRkKG9wZXJhdG9ycy5oYXMobGVmdCwgcmlnaHQsIG5vcm1hbGl6ZSkpO1xuICB9XG5cbiAgaW4obGVmdDogYW55LCByaWdodDogYW55LCBub3JtYWxpemU/OiBib29sZWFuKSB7XG4gICAgcmV0dXJuIHRoaXMuX2FkZChvcGVyYXRvcnMuaW4obGVmdCwgcmlnaHQsIG5vcm1hbGl6ZSkpO1xuICB9XG5cbiAgY29udGFpbnMobGVmdDogYW55LCByaWdodDogYW55LCBub3JtYWxpemU/OiBib29sZWFuKSB7XG4gICAgcmV0dXJuIHRoaXMuX2FkZChmdW5jdGlvbnMuY29udGFpbnMobGVmdCwgcmlnaHQsIG5vcm1hbGl6ZSkpO1xuICB9XG5cbiAgc3RhcnRzV2l0aChsZWZ0OiBhbnksIHJpZ2h0OiBhbnksIG5vcm1hbGl6ZT86IGJvb2xlYW4pIHtcbiAgICByZXR1cm4gdGhpcy5fYWRkKGZ1bmN0aW9ucy5zdGFydHNXaXRoKGxlZnQsIHJpZ2h0LCBub3JtYWxpemUpKTtcbiAgfVxuXG4gIGVuZHNXaXRoKGxlZnQ6IGFueSwgcmlnaHQ6IGFueSwgbm9ybWFsaXplPzogYm9vbGVhbikge1xuICAgIHJldHVybiB0aGlzLl9hZGQoZnVuY3Rpb25zLmVuZHNXaXRoKGxlZnQsIHJpZ2h0LCBub3JtYWxpemUpKTtcbiAgfVxuXG4gIGFueTxOIGV4dGVuZHMgb2JqZWN0PihcbiAgICBsZWZ0OiBOW10sXG4gICAgb3B0cz86IChlOiB7XG4gICAgICBlOiAoY29ubmVjdG9yPzogRmlsdGVyQ29ubmVjdG9yKSA9PiBGaWx0ZXJFeHByZXNzaW9uPE4+O1xuICAgICAgdDogTjtcbiAgICB9KSA9PiBGaWx0ZXJFeHByZXNzaW9uPE4+LFxuICAgIGFsaWFzPzogc3RyaW5nXG4gICk6IEZpbHRlckV4cHJlc3Npb248Rj4ge1xuICAgIGxldCBleHAgPSB1bmRlZmluZWQ7XG4gICAgaWYgKG9wdHMgIT09IHVuZGVmaW5lZCkge1xuICAgICAgZXhwID0gb3B0cyh7XG4gICAgICAgIHQ6IEZpZWxkLmZhY3Rvcnk8UmVhZG9ubHk8UmVxdWlyZWQ8Tj4+PigpLFxuICAgICAgICBlOiAoY29ubmVjdG9yOiBGaWx0ZXJDb25uZWN0b3IgPSAnYW5kJykgPT5cbiAgICAgICAgICBuZXcgRmlsdGVyRXhwcmVzc2lvbjxOPih7IGNvbm5lY3RvciB9KSxcbiAgICAgIH0pIGFzIEZpbHRlckV4cHJlc3Npb248Tj47XG4gICAgfVxuICAgIHJldHVybiB0aGlzLl9hZGQoc3ludGF4LmFueShsZWZ0LCBleHAsIGFsaWFzKSk7XG4gIH1cblxuICBhbGw8TiBleHRlbmRzIG9iamVjdD4oXG4gICAgbGVmdDogTltdLFxuICAgIG9wdHM6IChlOiB7XG4gICAgICB0OiBOO1xuICAgICAgZTogKGNvbm5lY3Rvcj86IEZpbHRlckNvbm5lY3RvcikgPT4gRmlsdGVyRXhwcmVzc2lvbjxOPjtcbiAgICB9KSA9PiBGaWx0ZXJFeHByZXNzaW9uPE4+LFxuICAgIGFsaWFzPzogc3RyaW5nXG4gICk6IEZpbHRlckV4cHJlc3Npb248Rj4ge1xuICAgIGNvbnN0IGV4cCA9IG9wdHMoe1xuICAgICAgdDogRmllbGQuZmFjdG9yeTxSZWFkb25seTxSZXF1aXJlZDxOPj4+KCksXG4gICAgICBlOiAoY29ubmVjdG9yOiBGaWx0ZXJDb25uZWN0b3IgPSAnYW5kJykgPT5cbiAgICAgICAgbmV3IEZpbHRlckV4cHJlc3Npb248Tj4oeyBjb25uZWN0b3IgfSksXG4gICAgfSkgYXMgRmlsdGVyRXhwcmVzc2lvbjxOPjtcbiAgICByZXR1cm4gdGhpcy5fYWRkKHN5bnRheC5hbGwobGVmdCwgZXhwLCBhbGlhcykpO1xuICB9XG5cbiAgaXNvZih0eXBlOiBzdHJpbmcpOiBGaWx0ZXJFeHByZXNzaW9uPEY+O1xuICBpc29mKGxlZnQ6IEYsIHR5cGU6IHN0cmluZyk6IEZpbHRlckV4cHJlc3Npb248Rj47XG4gIGlzb2YobGVmdDogYW55LCB0eXBlPzogc3RyaW5nKTogRmlsdGVyRXhwcmVzc2lvbjxGPiB7XG4gICAgcmV0dXJuIHRoaXMuX2FkZChzeW50YXguaXNvZihsZWZ0LCB0eXBlKSk7XG4gIH1cbn1cbiJdfQ==
@@ -25,16 +25,10 @@ export class OrderByExpression extends Expression {
25
25
  constructor({ children, } = {}) {
26
26
  super({ children });
27
27
  }
28
- static expression() {
29
- return new OrderByExpression();
30
- }
31
- static type() {
32
- return Field.factory();
33
- }
34
28
  static orderBy(opts, current) {
35
29
  return opts({
36
- t: OrderByExpression.type(),
37
- e: OrderByExpression.expression,
30
+ t: Field.factory(),
31
+ e: () => new OrderByExpression(),
38
32
  }, current);
39
33
  }
40
34
  _add(node) {
@@ -59,4 +53,4 @@ export class OrderByExpression extends Expression {
59
53
  return this._add(new OrderByField(field, 'desc'));
60
54
  }
61
55
  }
62
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JkZXJieS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItb2RhdGEvc3JjL2xpYi9yZXNvdXJjZXMvcXVlcnkvZXhwcmVzc2lvbnMvb3JkZXJieS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFjLE1BQU0sVUFBVSxDQUFDO0FBRXJELE1BQU0sT0FBTyxZQUFZO0lBQ3ZCLFlBQXNCLEtBQWlCLEVBQVksS0FBcUI7UUFBbEQsVUFBSyxHQUFMLEtBQUssQ0FBWTtRQUFZLFVBQUssR0FBTCxLQUFLLENBQWdCO0lBQUcsQ0FBQztJQUU1RSxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQztRQUN0QixPQUFPLGNBQWMsQ0FBQztJQUN4QixDQUFDO0lBRUQsTUFBTTtRQUNKLE9BQU87WUFDTCxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUU7WUFDMUIsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLO1NBQ2xCLENBQUM7SUFDSixDQUFDO0lBRUQsTUFBTSxDQUFDLEVBQ0wsT0FBTyxFQUNQLE1BQU0sRUFDTixNQUFNLEdBS1A7UUFDQyxPQUFPLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxDQUFDLElBQUksSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQzVFLENBQUM7SUFFRCxLQUFLO1FBQ0gsT0FBTyxJQUFJLFlBQVksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMxRCxDQUFDO0NBQ0Y7QUFNRCxNQUFNLE9BQU8saUJBQXFCLFNBQVEsVUFBYTtJQUNyRCxZQUFZLEVBQ1YsUUFBUSxNQUdOLEVBQUU7UUFDSixLQUFLLENBQUMsRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFDO0lBQ3RCLENBQUM7SUFFRCxNQUFNLENBQUMsVUFBVTtRQUNmLE9BQU8sSUFBSSxpQkFBaUIsRUFBSyxDQUFDO0lBQ3BDLENBQUM7SUFFRCxNQUFNLENBQUMsSUFBSTtRQUNULE9BQU8sS0FBSyxDQUFDLE9BQU8sRUFBSyxDQUFDO0lBQzVCLENBQUM7SUFFRCxNQUFNLENBQUMsT0FBTyxDQUNaLElBR3lCLEVBQ3pCLE9BQThCO1FBRTlCLE9BQU8sSUFBSSxDQUNUO1lBQ0UsQ0FBQyxFQUFFLGlCQUFpQixDQUFDLElBQUksRUFBSztZQUM5QixDQUFDLEVBQUUsaUJBQWlCLENBQUMsVUFBVTtTQUNoQyxFQUNELE9BQU8sQ0FDZ0IsQ0FBQztJQUM1QixDQUFDO0lBRU8sSUFBSSxDQUFDLElBQWdCO1FBQzNCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzFCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELE1BQU0sQ0FBQyxFQUNMLE9BQU8sRUFDUCxNQUFNLEVBQ04sTUFBTSxNQUtKLEVBQUU7UUFDSixJQUFJLE9BQU8sR0FBRyxJQUFJLENBQUMsU0FBUzthQUN6QixHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUM7YUFDakQsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ2IsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQztJQUVELEtBQUs7UUFDSCxPQUFPLElBQUksaUJBQWlCLENBQUM7WUFDM0IsUUFBUSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUM7U0FDL0MsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFNBQVMsQ0FBQyxLQUFVO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLFlBQVksQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUNuRCxDQUFDO0lBRUQsVUFBVSxDQUFDLEtBQVU7UUFDbkIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksWUFBWSxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDO0lBQ3BELENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgUXVlcnlDdXN0b21UeXBlIH0gZnJvbSAnLi4vYnVpbGRlcic7XG5pbXBvcnQgeyBFeHByZXNzaW9uIH0gZnJvbSAnLi9iYXNlJztcbmltcG9ydCB7IHJlbmRlciwgRmllbGQsIFJlbmRlcmFibGUgfSBmcm9tICcuL3N5bnRheCc7XG5cbmV4cG9ydCBjbGFzcyBPcmRlckJ5RmllbGQgaW1wbGVtZW50cyBSZW5kZXJhYmxlIHtcbiAgY29uc3RydWN0b3IocHJvdGVjdGVkIGZpZWxkOiBSZW5kZXJhYmxlLCBwcm90ZWN0ZWQgb3JkZXI6ICdhc2MnIHwgJ2Rlc2MnKSB7fVxuXG4gIGdldCBbU3ltYm9sLnRvU3RyaW5nVGFnXSgpIHtcbiAgICByZXR1cm4gJ09yZGVyQnlGaWVsZCc7XG4gIH1cblxuICB0b0pTT04oKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGZpZWxkOiB0aGlzLmZpZWxkLnRvSlNPTigpLFxuICAgICAgb3JkZXI6IHRoaXMub3JkZXIsXG4gICAgfTtcbiAgfVxuXG4gIHJlbmRlcih7XG4gICAgYWxpYXNlcyxcbiAgICBlc2NhcGUsXG4gICAgcHJlZml4LFxuICB9OiB7XG4gICAgYWxpYXNlcz86IFF1ZXJ5Q3VzdG9tVHlwZVtdO1xuICAgIGVzY2FwZT86IGJvb2xlYW47XG4gICAgcHJlZml4Pzogc3RyaW5nO1xuICB9KTogc3RyaW5nIHtcbiAgICByZXR1cm4gYCR7cmVuZGVyKHRoaXMuZmllbGQsIHsgYWxpYXNlcywgZXNjYXBlLCBwcmVmaXggfSl9ICR7dGhpcy5vcmRlcn1gO1xuICB9XG5cbiAgY2xvbmUoKSB7XG4gICAgcmV0dXJuIG5ldyBPcmRlckJ5RmllbGQodGhpcy5maWVsZC5jbG9uZSgpLCB0aGlzLm9yZGVyKTtcbiAgfVxufVxuXG5leHBvcnQgdHlwZSBPcmRlckJ5RXhwcmVzc2lvbkJ1aWxkZXI8VD4gPSB7XG4gIHQ6IFQ7XG4gIGU6ICgpID0+IE9yZGVyQnlFeHByZXNzaW9uPFQ+O1xufTtcbmV4cG9ydCBjbGFzcyBPcmRlckJ5RXhwcmVzc2lvbjxUPiBleHRlbmRzIEV4cHJlc3Npb248VD4ge1xuICBjb25zdHJ1Y3Rvcih7XG4gICAgY2hpbGRyZW4sXG4gIH06IHtcbiAgICBjaGlsZHJlbj86IFJlbmRlcmFibGVbXTtcbiAgfSA9IHt9KSB7XG4gICAgc3VwZXIoeyBjaGlsZHJlbiB9KTtcbiAgfVxuXG4gIHN0YXRpYyBleHByZXNzaW9uPFQ+KCkge1xuICAgIHJldHVybiBuZXcgT3JkZXJCeUV4cHJlc3Npb248VD4oKTtcbiAgfVxuXG4gIHN0YXRpYyB0eXBlPFQgZXh0ZW5kcyBvYmplY3Q+KCk6IFQge1xuICAgIHJldHVybiBGaWVsZC5mYWN0b3J5PFQ+KCk7XG4gIH1cblxuICBzdGF0aWMgb3JkZXJCeTxUIGV4dGVuZHMgb2JqZWN0PihcbiAgICBvcHRzOiAoXG4gICAgICBidWlsZGVyOiBPcmRlckJ5RXhwcmVzc2lvbkJ1aWxkZXI8VD4sXG4gICAgICBjdXJyZW50PzogT3JkZXJCeUV4cHJlc3Npb248VD5cbiAgICApID0+IE9yZGVyQnlFeHByZXNzaW9uPFQ+LFxuICAgIGN1cnJlbnQ/OiBPcmRlckJ5RXhwcmVzc2lvbjxUPlxuICApOiBPcmRlckJ5RXhwcmVzc2lvbjxUPiB7XG4gICAgcmV0dXJuIG9wdHMoXG4gICAgICB7XG4gICAgICAgIHQ6IE9yZGVyQnlFeHByZXNzaW9uLnR5cGU8VD4oKSxcbiAgICAgICAgZTogT3JkZXJCeUV4cHJlc3Npb24uZXhwcmVzc2lvbixcbiAgICAgIH0sXG4gICAgICBjdXJyZW50XG4gICAgKSBhcyBPcmRlckJ5RXhwcmVzc2lvbjxUPjtcbiAgfVxuXG4gIHByaXZhdGUgX2FkZChub2RlOiBSZW5kZXJhYmxlKTogT3JkZXJCeUV4cHJlc3Npb248VD4ge1xuICAgIHRoaXMuX2NoaWxkcmVuLnB1c2gobm9kZSk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICByZW5kZXIoe1xuICAgIGFsaWFzZXMsXG4gICAgZXNjYXBlLFxuICAgIHByZWZpeCxcbiAgfToge1xuICAgIGFsaWFzZXM/OiBRdWVyeUN1c3RvbVR5cGVbXSB8IHVuZGVmaW5lZDtcbiAgICBlc2NhcGU/OiBib29sZWFuIHwgdW5kZWZpbmVkO1xuICAgIHByZWZpeD86IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgfSA9IHt9KTogc3RyaW5nIHtcbiAgICBsZXQgY29udGVudCA9IHRoaXMuX2NoaWxkcmVuXG4gICAgICAubWFwKChuKSA9PiBuLnJlbmRlcih7IGFsaWFzZXMsIGVzY2FwZSwgcHJlZml4IH0pKVxuICAgICAgLmpvaW4oYCxgKTtcbiAgICByZXR1cm4gY29udGVudDtcbiAgfVxuXG4gIGNsb25lKCkge1xuICAgIHJldHVybiBuZXcgT3JkZXJCeUV4cHJlc3Npb24oe1xuICAgICAgY2hpbGRyZW46IHRoaXMuX2NoaWxkcmVuLm1hcCgoYykgPT4gYy5jbG9uZSgpKSxcbiAgICB9KTtcbiAgfVxuXG4gIGFzY2VuZGluZyhmaWVsZDogYW55KSB7XG4gICAgcmV0dXJuIHRoaXMuX2FkZChuZXcgT3JkZXJCeUZpZWxkKGZpZWxkLCAnYXNjJykpO1xuICB9XG5cbiAgZGVzY2VuZGluZyhmaWVsZDogYW55KSB7XG4gICAgcmV0dXJuIHRoaXMuX2FkZChuZXcgT3JkZXJCeUZpZWxkKGZpZWxkLCAnZGVzYycpKTtcbiAgfVxufVxuIl19
56
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JkZXJieS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItb2RhdGEvc3JjL2xpYi9yZXNvdXJjZXMvcXVlcnkvZXhwcmVzc2lvbnMvb3JkZXJieS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFjLE1BQU0sVUFBVSxDQUFDO0FBRXJELE1BQU0sT0FBTyxZQUFZO0lBQ3ZCLFlBQXNCLEtBQWlCLEVBQVksS0FBcUI7UUFBbEQsVUFBSyxHQUFMLEtBQUssQ0FBWTtRQUFZLFVBQUssR0FBTCxLQUFLLENBQWdCO0lBQUcsQ0FBQztJQUU1RSxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQztRQUN0QixPQUFPLGNBQWMsQ0FBQztJQUN4QixDQUFDO0lBRUQsTUFBTTtRQUNKLE9BQU87WUFDTCxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUU7WUFDMUIsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLO1NBQ2xCLENBQUM7SUFDSixDQUFDO0lBRUQsTUFBTSxDQUFDLEVBQ0wsT0FBTyxFQUNQLE1BQU0sRUFDTixNQUFNLEdBS1A7UUFDQyxPQUFPLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxDQUFDLElBQUksSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQzVFLENBQUM7SUFFRCxLQUFLO1FBQ0gsT0FBTyxJQUFJLFlBQVksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMxRCxDQUFDO0NBQ0Y7QUFNRCxNQUFNLE9BQU8saUJBQXFCLFNBQVEsVUFBYTtJQUNyRCxZQUFZLEVBQ1YsUUFBUSxNQUdOLEVBQUU7UUFDSixLQUFLLENBQUMsRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFDO0lBQ3RCLENBQUM7SUFFRCxNQUFNLENBQUMsT0FBTyxDQUNaLElBR3lCLEVBQ3pCLE9BQThCO1FBRTlCLE9BQU8sSUFBSSxDQUNUO1lBQ0UsQ0FBQyxFQUFFLEtBQUssQ0FBQyxPQUFPLEVBQXlCO1lBQ3pDLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFJLGlCQUFpQixFQUFLO1NBQ3BDLEVBQ0QsT0FBTyxDQUNnQixDQUFDO0lBQzVCLENBQUM7SUFFTyxJQUFJLENBQUMsSUFBZ0I7UUFDM0IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDMUIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsTUFBTSxDQUFDLEVBQ0wsT0FBTyxFQUNQLE1BQU0sRUFDTixNQUFNLE1BS0osRUFBRTtRQUNKLElBQUksT0FBTyxHQUFHLElBQUksQ0FBQyxTQUFTO2FBQ3pCLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQzthQUNqRCxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDYixPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDO0lBRUQsS0FBSztRQUNILE9BQU8sSUFBSSxpQkFBaUIsQ0FBQztZQUMzQixRQUFRLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztTQUMvQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsU0FBUyxDQUFDLEtBQVU7UUFDbEIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksWUFBWSxDQUFDLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFFRCxVQUFVLENBQUMsS0FBVTtRQUNuQixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxZQUFZLENBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFDcEQsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBRdWVyeUN1c3RvbVR5cGUgfSBmcm9tICcuLi9idWlsZGVyJztcbmltcG9ydCB7IEV4cHJlc3Npb24gfSBmcm9tICcuL2Jhc2UnO1xuaW1wb3J0IHsgcmVuZGVyLCBGaWVsZCwgUmVuZGVyYWJsZSB9IGZyb20gJy4vc3ludGF4JztcblxuZXhwb3J0IGNsYXNzIE9yZGVyQnlGaWVsZCBpbXBsZW1lbnRzIFJlbmRlcmFibGUge1xuICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgZmllbGQ6IFJlbmRlcmFibGUsIHByb3RlY3RlZCBvcmRlcjogJ2FzYycgfCAnZGVzYycpIHt9XG5cbiAgZ2V0IFtTeW1ib2wudG9TdHJpbmdUYWddKCkge1xuICAgIHJldHVybiAnT3JkZXJCeUZpZWxkJztcbiAgfVxuXG4gIHRvSlNPTigpIHtcbiAgICByZXR1cm4ge1xuICAgICAgZmllbGQ6IHRoaXMuZmllbGQudG9KU09OKCksXG4gICAgICBvcmRlcjogdGhpcy5vcmRlcixcbiAgICB9O1xuICB9XG5cbiAgcmVuZGVyKHtcbiAgICBhbGlhc2VzLFxuICAgIGVzY2FwZSxcbiAgICBwcmVmaXgsXG4gIH06IHtcbiAgICBhbGlhc2VzPzogUXVlcnlDdXN0b21UeXBlW107XG4gICAgZXNjYXBlPzogYm9vbGVhbjtcbiAgICBwcmVmaXg/OiBzdHJpbmc7XG4gIH0pOiBzdHJpbmcge1xuICAgIHJldHVybiBgJHtyZW5kZXIodGhpcy5maWVsZCwgeyBhbGlhc2VzLCBlc2NhcGUsIHByZWZpeCB9KX0gJHt0aGlzLm9yZGVyfWA7XG4gIH1cblxuICBjbG9uZSgpIHtcbiAgICByZXR1cm4gbmV3IE9yZGVyQnlGaWVsZCh0aGlzLmZpZWxkLmNsb25lKCksIHRoaXMub3JkZXIpO1xuICB9XG59XG5cbmV4cG9ydCB0eXBlIE9yZGVyQnlFeHByZXNzaW9uQnVpbGRlcjxUPiA9IHtcbiAgdDogUmVhZG9ubHk8UmVxdWlyZWQ8VD4+O1xuICBlOiAoKSA9PiBPcmRlckJ5RXhwcmVzc2lvbjxUPjtcbn07XG5leHBvcnQgY2xhc3MgT3JkZXJCeUV4cHJlc3Npb248VD4gZXh0ZW5kcyBFeHByZXNzaW9uPFQ+IHtcbiAgY29uc3RydWN0b3Ioe1xuICAgIGNoaWxkcmVuLFxuICB9OiB7XG4gICAgY2hpbGRyZW4/OiBSZW5kZXJhYmxlW107XG4gIH0gPSB7fSkge1xuICAgIHN1cGVyKHsgY2hpbGRyZW4gfSk7XG4gIH1cblxuICBzdGF0aWMgb3JkZXJCeTxUIGV4dGVuZHMgb2JqZWN0PihcbiAgICBvcHRzOiAoXG4gICAgICBidWlsZGVyOiBPcmRlckJ5RXhwcmVzc2lvbkJ1aWxkZXI8VD4sXG4gICAgICBjdXJyZW50PzogT3JkZXJCeUV4cHJlc3Npb248VD5cbiAgICApID0+IE9yZGVyQnlFeHByZXNzaW9uPFQ+LFxuICAgIGN1cnJlbnQ/OiBPcmRlckJ5RXhwcmVzc2lvbjxUPlxuICApOiBPcmRlckJ5RXhwcmVzc2lvbjxUPiB7XG4gICAgcmV0dXJuIG9wdHMoXG4gICAgICB7XG4gICAgICAgIHQ6IEZpZWxkLmZhY3Rvcnk8UmVhZG9ubHk8UmVxdWlyZWQ8VD4+PigpLFxuICAgICAgICBlOiAoKSA9PiBuZXcgT3JkZXJCeUV4cHJlc3Npb248VD4oKSxcbiAgICAgIH0sXG4gICAgICBjdXJyZW50XG4gICAgKSBhcyBPcmRlckJ5RXhwcmVzc2lvbjxUPjtcbiAgfVxuXG4gIHByaXZhdGUgX2FkZChub2RlOiBSZW5kZXJhYmxlKTogT3JkZXJCeUV4cHJlc3Npb248VD4ge1xuICAgIHRoaXMuX2NoaWxkcmVuLnB1c2gobm9kZSk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICByZW5kZXIoe1xuICAgIGFsaWFzZXMsXG4gICAgZXNjYXBlLFxuICAgIHByZWZpeCxcbiAgfToge1xuICAgIGFsaWFzZXM/OiBRdWVyeUN1c3RvbVR5cGVbXSB8IHVuZGVmaW5lZDtcbiAgICBlc2NhcGU/OiBib29sZWFuIHwgdW5kZWZpbmVkO1xuICAgIHByZWZpeD86IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgfSA9IHt9KTogc3RyaW5nIHtcbiAgICBsZXQgY29udGVudCA9IHRoaXMuX2NoaWxkcmVuXG4gICAgICAubWFwKChuKSA9PiBuLnJlbmRlcih7IGFsaWFzZXMsIGVzY2FwZSwgcHJlZml4IH0pKVxuICAgICAgLmpvaW4oYCxgKTtcbiAgICByZXR1cm4gY29udGVudDtcbiAgfVxuXG4gIGNsb25lKCkge1xuICAgIHJldHVybiBuZXcgT3JkZXJCeUV4cHJlc3Npb24oe1xuICAgICAgY2hpbGRyZW46IHRoaXMuX2NoaWxkcmVuLm1hcCgoYykgPT4gYy5jbG9uZSgpKSxcbiAgICB9KTtcbiAgfVxuXG4gIGFzY2VuZGluZyhmaWVsZDogYW55KSB7XG4gICAgcmV0dXJuIHRoaXMuX2FkZChuZXcgT3JkZXJCeUZpZWxkKGZpZWxkLCAnYXNjJykpO1xuICB9XG5cbiAgZGVzY2VuZGluZyhmaWVsZDogYW55KSB7XG4gICAgcmV0dXJuIHRoaXMuX2FkZChuZXcgT3JkZXJCeUZpZWxkKGZpZWxkLCAnZGVzYycpKTtcbiAgfVxufVxuIl19
@@ -27,12 +27,9 @@ export class SearchExpression extends Expression {
27
27
  this._connector = connector || 'AND';
28
28
  this._negated = negated || false;
29
29
  }
30
- static expression(connector = 'AND') {
31
- return new SearchExpression({ connector });
32
- }
33
30
  static search(opts, current) {
34
31
  return opts({
35
- e: SearchExpression.expression,
32
+ e: (connector = 'AND') => new SearchExpression({ connector }),
36
33
  }, current);
37
34
  }
38
35
  _add(node, connector) {
@@ -122,4 +119,4 @@ export class SearchExpression extends Expression {
122
119
  return this._add(new SearchTerm(value));
123
120
  }
124
121
  }
125
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1vZGF0YS9zcmMvbGliL3Jlc291cmNlcy9xdWVyeS9leHByZXNzaW9ucy9zZWFyY2gudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXZDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFDcEMsT0FBTyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQWMsTUFBTSxVQUFVLENBQUM7QUFJeEQsTUFBTSxPQUFPLFVBQVU7SUFDckIsWUFBc0IsS0FBYTtRQUFiLFVBQUssR0FBTCxLQUFLLENBQVE7SUFBRyxDQUFDO0lBRXZDLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDO1FBQ3RCLE9BQU8sWUFBWSxDQUFDO0lBQ3RCLENBQUM7SUFFRCxNQUFNO1FBQ0osT0FBTztZQUNMLEtBQUssRUFBRSxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQztZQUMxQixLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7U0FDbEIsQ0FBQztJQUNKLENBQUM7SUFFRCxNQUFNLENBQUMsRUFDTCxPQUFPLEVBQ1AsTUFBTSxFQUNOLE1BQU0sR0FLUDtRQUNDLE9BQU8sR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLENBQUMsRUFBRSxDQUFDO0lBQzlELENBQUM7SUFFRCxLQUFLO1FBQ0gsT0FBTyxJQUFJLFVBQVUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDcEMsQ0FBQztDQUNGO0FBS0QsTUFBTSxPQUFPLGdCQUFvQixTQUFRLFVBQWE7SUFHcEQsWUFBWSxFQUNWLFFBQVEsRUFDUixTQUFTLEVBQ1QsT0FBTyxNQUtMLEVBQUU7UUFDSixLQUFLLENBQUMsRUFB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QyxHQUFHLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDL0IsQ0FBQztJQUVELEdBQUcsQ0FBQyxHQUF3QjtRQUMxQixNQUFNLE1BQU0sR0FBRyxJQUFJLGdCQUFnQixDQUFJO1lBQ3JDLFFBQVEsRUFBRSxHQUFHLENBQUMsUUFBUSxFQUFFO1lBQ3hCLFNBQVMsRUFBRSxHQUFHLENBQUMsU0FBUyxFQUFFO1lBQzFCLE9BQU8sRUFBRSxJQUFJO1NBQ2QsQ0FBQyxDQUFDO1FBRUgsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUVELElBQUksQ0FBQyxLQUFVO1FBQ2IsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDMUMsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHlwZXMgfSBmcm9tICcuLi8uLi8uLi91dGlscyc7XG5pbXBvcnQgdHlwZSB7IFF1ZXJ5Q3VzdG9tVHlwZSB9IGZyb20gJy4uL2J1aWxkZXInO1xuaW1wb3J0IHsgRXhwcmVzc2lvbiB9IGZyb20gJy4vYmFzZSc7XG5pbXBvcnQgeyByZW5kZXIsIEdyb3VwaW5nLCBSZW5kZXJhYmxlIH0gZnJvbSAnLi9zeW50YXgnO1xuXG5leHBvcnQgdHlwZSBTZWFyY2hDb25uZWN0b3IgPSAnQU5EJyB8ICdPUic7XG5cbmV4cG9ydCBjbGFzcyBTZWFyY2hUZXJtIGltcGxlbWVudHMgUmVuZGVyYWJsZSB7XG4gIGNvbnN0cnVjdG9yKHByb3RlY3RlZCB2YWx1ZTogc3RyaW5nKSB7fVxuXG4gIGdldCBbU3ltYm9sLnRvU3RyaW5nVGFnXSgpIHtcbiAgICByZXR1cm4gJ1NlYXJjaFRlcm0nO1xuICB9XG5cbiAgdG9KU09OKCkge1xuICAgIHJldHVybiB7XG4gICAgICAkdHlwZTogVHlwZXMucmF3VHlwZSh0aGlzKSxcbiAgICAgIHZhbHVlOiB0aGlzLnZhbHVlLFxuICAgIH07XG4gIH1cblxuICByZW5kZXIoe1xuICAgIGFsaWFzZXMsXG4gICAgZXNjYXBlLFxuICAgIHByZWZpeCxcbiAgfToge1xuICAgIGFsaWFzZXM/OiBRdWVyeUN1c3RvbVR5cGVbXTtcbiAgICBlc2NhcGU/OiBib29sZWFuO1xuICAgIHByZWZpeD86IHN0cmluZztcbiAgfSk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGAke3JlbmRlcih0aGlzLnZhbHVlLCB7IGFsaWFzZXMsIGVzY2FwZSwgcHJlZml4IH0pfWA7XG4gIH1cblxuICBjbG9uZSgpIHtcbiAgICByZXR1cm4gbmV3IFNlYXJjaFRlcm0odGhpcy52YWx1ZSk7XG4gIH1cbn1cblxuZXhwb3J0IHR5cGUgU2VhcmNoRXhwcmVzc2lvbkJ1aWxkZXI8VD4gPSB7XG4gIGU6IChjb25uZWN0b3I/OiBTZWFyY2hDb25uZWN0b3IpID0+IFNlYXJjaEV4cHJlc3Npb248VD47XG59O1xuZXhwb3J0IGNsYXNzIFNlYXJjaEV4cHJlc3Npb248VD4gZXh0ZW5kcyBFeHByZXNzaW9uPFQ+IHtcbiAgcHJpdmF0ZSBfY29ubmVjdG9yOiBTZWFyY2hDb25uZWN0b3I7XG4gIHByaXZhdGUgX25lZ2F0ZWQ6IGJvb2xlYW47XG4gIGNvbnN0cnVjdG9yKHtcbiAgICBjaGlsZHJlbixcbiAgICBjb25uZWN0b3IsXG4gICAgbmVnYXRlZCxcbiAgfToge1xuICAgIGNoaWxkcmVuPzogUmVuZGVyYWJsZVtdO1xuICAgIGNvbm5lY3Rvcj86IFNlYXJjaENvbm5lY3RvcjtcbiAgICBuZWdhdGVkPzogYm9vbGVhbjtcbiAgfSA9IHt9KSB7XG4gICAgc3VwZXIoeyBjaGlsZHJlbiB9KTtcbiAgICB0aGlzLl9jb25uZWN0b3IgPSBjb25uZWN0b3IgfHwgJ0FORCc7XG4gICAgdGhpcy5fbmVnYXRlZCA9IG5lZ2F0ZWQgfHwgZmFsc2U7XG4gIH1cblxuICBzdGF0aWMgZXhwcmVzc2lvbjxUPihjb25uZWN0b3I6IFNlYXJjaENvbm5lY3RvciA9ICdBTkQnKSB7XG4gICAgcmV0dXJuIG5ldyBTZWFyY2hFeHByZXNzaW9uPFQ+KHsgY29ubmVjdG9yIH0pO1xuICB9XG5cbiAgc3RhdGljIHNlYXJjaDxUIGV4dGVuZHMgb2JqZWN0PihcbiAgICBvcHRzOiAoXG4gICAgICBidWlsZGVyOiBTZWFyY2hFeHByZXNzaW9uQnVpbGRlcjxUPixcbiAgICAgIGN1cnJlbnQ/OiBTZWFyY2hFeHByZXNzaW9uPFQ+XG4gICAgKSA9PiBTZWFyY2hFeHByZXNzaW9uPFQ+LFxuICAgIGN1cnJlbnQ/OiBTZWFyY2hFeHByZXNzaW9uPFQ+XG4gICk6IFNlYXJjaEV4cHJlc3Npb248VD4ge1xuICAgIHJldHVybiBvcHRzKFxuICAgICAge1xuICAgICAgICBlOiBTZWFyY2hFeHByZXNzaW9uLmV4cHJlc3Npb24sXG4gICAgICB9LFxuICAgICAgY3VycmVudFxuICAgICkgYXMgU2VhcmNoRXhwcmVzc2lvbjxUPjtcbiAgfVxuXG4gIHByaXZhdGUgX2FkZChcbiAgICBub2RlOiBSZW5kZXJhYmxlLFxuICAgIGNvbm5lY3Rvcj86IFNlYXJjaENvbm5lY3RvclxuICApOiBTZWFyY2hFeHByZXNzaW9uPFQ+IHtcbiAgICBpZiAoY29ubmVjdG9yICE9PSB1bmRlZmluZWQgJiYgdGhpcy5fY29ubmVjdG9yICE9PSBjb25uZWN0b3IpIHtcbiAgICAgIGxldCBjaGlsZHJlbjogUmVuZGVyYWJsZVtdID0gW107XG4gICAgICBpZiAodGhpcy5fY2hpbGRyZW4ubGVuZ3RoID4gMCkge1xuICAgICAgICBpZiAodGhpcy5fY2hpbGRyZW4ubGVuZ3RoID09PSAxKSB7XG4gICAgICAgICAgY2hpbGRyZW4gPSBbLi4udGhpcy5fY2hpbGRyZW5dO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGxldCBleHAgPSBuZXcgU2VhcmNoRXhwcmVzc2lvbjxUPih7XG4gICAgICAgICAgICBjaGlsZHJlbjogdGhpcy5fY2hpbGRyZW4sXG4gICAgICAgICAgICBjb25uZWN0b3I6IHRoaXMuX2Nvbm5lY3RvcixcbiAgICAgICAgICAgIG5lZ2F0ZWQ6IHRoaXMuX25lZ2F0ZWQsXG4gICAgICAgICAgfSk7XG4gICAgICAgICAgaWYgKGV4cC5sZW5ndGgoKSA+IDEpIHtcbiAgICAgICAgICAgIGNoaWxkcmVuLnB1c2gobmV3IEdyb3VwaW5nKGV4cCkpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjaGlsZHJlbi5wdXNoKGV4cCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBpZiAoXG4gICAgICAgIG5vZGUgaW5zdGFuY2VvZiBTZWFyY2hFeHByZXNzaW9uICYmXG4gICAgICAgIChub2RlLmNvbm5lY3RvcigpID09PSBjb25uZWN0b3IgfHwgbm9kZS5sZW5ndGgoKSA9PT0gMSlcbiAgICAgICkge1xuICAgICAgICBjaGlsZHJlbiA9IFsuLi5jaGlsZHJlbiwgLi4ubm9kZS5jaGlsZHJlbigpXTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNoaWxkcmVuLnB1c2gobmV3IEdyb3VwaW5nKG5vZGUpKTtcbiAgICAgIH1cbiAgICAgIHRoaXMuX2Nvbm5lY3RvciA9IGNvbm5lY3RvcjtcbiAgICAgIHRoaXMuX2NoaWxkcmVuID0gY2hpbGRyZW47XG4gICAgfSBlbHNlIGlmIChcbiAgICAgIG5vZGUgaW5zdGFuY2VvZiBTZWFyY2hFeHByZXNzaW9uICYmXG4gICAgICAhbm9kZS5uZWdhdGVkKCkgJiZcbiAgICAgIChub2RlLmNvbm5lY3RvcigpID09PSBjb25uZWN0b3IgfHwgbm9kZS5sZW5ndGgoKSA9PT0gMSlcbiAgICApIHtcbiAgICAgIHRoaXMuX2NoaWxkcmVuID0gWy4uLnRoaXMuX2NoaWxkcmVuLCAuLi5ub2RlLmNoaWxkcmVuKCldO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl9jaGlsZHJlbi5wdXNoKFxuICAgICAgICBub2RlIGluc3RhbmNlb2YgU2VhcmNoRXhwcmVzc2lvbiAmJiAhbm9kZS5uZWdhdGVkKClcbiAgICAgICAgICA/IG5ldyBHcm91cGluZyhub2RlKVxuICAgICAgICAgIDogbm9kZVxuICAgICAgKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICByZW5kZXIoe1xuICAgIGFsaWFzZXMsXG4gICAgZXNjYXBlLFxuICAgIHByZWZpeCxcbiAgfToge1xuICAgIGFsaWFzZXM/OiBRdWVyeUN1c3RvbVR5cGVbXSB8IHVuZGVmaW5lZDtcbiAgICBlc2NhcGU/OiBib29sZWFuIHwgdW5kZWZpbmVkO1xuICAgIHByZWZpeD86IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgfSA9IHt9KTogc3RyaW5nIHtcbiAgICBsZXQgY29udGVudCA9IHRoaXMuX2NoaWxkcmVuXG4gICAgICAubWFwKChuKSA9PiBuLnJlbmRlcih7IGFsaWFzZXMsIGVzY2FwZSwgcHJlZml4IH0pKVxuICAgICAgLmpvaW4oYCAke3RoaXMuX2Nvbm5lY3Rvcn0gYCk7XG4gICAgcmV0dXJuIGNvbnRlbnQ7XG4gIH1cblxuICBjbG9uZSgpIHtcbiAgICByZXR1cm4gbmV3IFNlYXJjaEV4cHJlc3Npb24oe1xuICAgICAgY2hpbGRyZW46IHRoaXMuX2NoaWxkcmVuLm1hcCgoYykgPT4gYy5jbG9uZSgpKSxcbiAgICAgIGNvbm5lY3RvcjogdGhpcy5fY29ubmVjdG9yLFxuICAgICAgbmVnYXRlZDogdGhpcy5fbmVnYXRlZCxcbiAgICB9KTtcbiAgfVxuXG4gIG92ZXJyaWRlIHRvSlNPTigpIHtcbiAgICByZXR1cm4ge1xuICAgICAgY2hpbGRyZW46IHRoaXMuX2NoaWxkcmVuLm1hcCgoYykgPT4gYy50b0pTT04oKSksXG4gICAgICBjb25uZWN0b3I6IHRoaXMuX2Nvbm5lY3RvcixcbiAgICAgIG5lZ2F0ZWQ6IHRoaXMuX25lZ2F0ZWQsXG4gICAgfTtcbiAgfVxuXG4gIGNvbm5lY3RvcigpIHtcbiAgICByZXR1cm4gdGhpcy5fY29ubmVjdG9yO1xuICB9XG5cbiAgbmVnYXRlZCgpIHtcbiAgICByZXR1cm4gdGhpcy5fbmVnYXRlZDtcbiAgfVxuXG4gIG9yKGV4cDogU2VhcmNoRXhwcmVzc2lvbjxUPik6IFNlYXJjaEV4cHJlc3Npb248VD4ge1xuICAgIHJldHVybiB0aGlzLl9hZGQoZXhwLCAnT1InKTtcbiAgfVxuXG4gIGFuZChleHA6IFNlYXJjaEV4cHJlc3Npb248VD4pOiBTZWFyY2hFeHByZXNzaW9uPFQ+IHtcbiAgICByZXR1cm4gdGhpcy5fYWRkKGV4cCwgJ0FORCcpO1xuICB9XG5cbiAgbm90KGV4cDogU2VhcmNoRXhwcmVzc2lvbjxUPik6IFNlYXJjaEV4cHJlc3Npb248VD4ge1xuICAgIGNvbnN0IG5vdEV4cCA9IG5ldyBTZWFyY2hFeHByZXNzaW9uPFQ+KHtcbiAgICAgIGNoaWxkcmVuOiBleHAuY2hpbGRyZW4oKSxcbiAgICAgIGNvbm5lY3RvcjogZXhwLmNvbm5lY3RvcigpLFxuICAgICAgbmVnYXRlZDogdHJ1ZSxcbiAgICB9KTtcblxuICAgIHJldHVybiB0aGlzLl9hZGQobm90RXhwLCB0aGlzLl9jb25uZWN0b3IpO1xuICB9XG5cbiAgdGVybSh2YWx1ZTogYW55KSB7XG4gICAgcmV0dXJuIHRoaXMuX2FkZChuZXcgU2VhcmNoVGVybSh2YWx1ZSkpO1xuICB9XG59XG4iXX0=
122
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1vZGF0YS9zcmMvbGliL3Jlc291cmNlcy9xdWVyeS9leHByZXNzaW9ucy9zZWFyY2gudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXZDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFDcEMsT0FBTyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQWMsTUFBTSxVQUFVLENBQUM7QUFJeEQsTUFBTSxPQUFPLFVBQVU7SUFDckIsWUFBc0IsS0FBYTtRQUFiLFVBQUssR0FBTCxLQUFLLENBQVE7SUFBRyxDQUFDO0lBRXZDLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDO1FBQ3RCLE9BQU8sWUFBWSxDQUFDO0lBQ3RCLENBQUM7SUFFRCxNQUFNO1FBQ0osT0FBTztZQUNMLEtBQUssRUFBRSxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQztZQUMxQixLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7U0FDbEIsQ0FBQztJQUNKLENBQUM7SUFFRCxNQUFNLENBQUMsRUFDTCxPQUFPLEVBQ1AsTUFBTSxFQUNOLE1BQU0sR0FLUDtRQUNDLE9BQU8sR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLENBQUMsRUFBRSxDQUFDO0lBQzlELENBQUM7SUFFRCxLQUFLO1FBQ0gsT0FBTyxJQUFJLFVBQVUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDcEMsQ0FBQztDQUNGO0FBS0QsTUFBTSxPQUFPLGdCQUFvQixTQUFRLFVBQWE7SUFHcEQsWUFBWSxFQUNWLFFBQVEsRUFDUixTQUFTLEVBQ1QsT0FBTyxNQUtMLEVBQUU7UUFDSixLQUFLLENBQUMsRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFDO1FBQ3BCLElBQUksQ0FBQyxVQUFVLEdBQUcsU0FBUyxJQUFJLEtBQUssQ0FBQztRQUNyQyxJQUFJLENBQUMsUUFBUSxHQUFHLE9BQU8sSUFBSSxLQUFLLENBQUM7SUFDbkMsQ0FBQztJQUVELE1BQU0sQ0FBQyxNQUFNLENBQ1gsSUFHd0IsRUFDeEIsT0FBNkI7UUFFN0IsT0FBTyxJQUFJLENBQ1Q7WUFDRSxDQUFDLEVBQUUsQ0FBQyxZQUE2QixLQUFLLEVBQUUsRUFBRSxDQUN4QyxJQUFJLGdCQUFnQixDQUFJLEVBQUUsU0FBUyxFQUFFLENBQUM7U0FDekMsRUFDRCxPQUFPLENBQ2UsQ0FBQztJQUMzQixDQUFDO0lBRU8sSUFBSSxDQUNWLElBQWdCLEVBQ2hCLFNBQTJCO1FBRTNCLElBQUksU0FBUyxLQUFLLFNBQVMsSUFBSSxJQUFJLENBQUMsVUFBVSxLQUFLLFNBQVMsRUFBRTtZQUM1RCxJQUFJLFFBQVEsR0FBaUIsRUFBRSxDQUFDO1lBQ2hDLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO2dCQUM3QixJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtvQkFDL0IsUUFBUSxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7aUJBQ2hDO3FCQUFNO29CQUNMLElBQUksR0FBRyxHQUFHLElBQUksZ0JBQWdCLENBQUk7d0JBQ2hDLFFBQVEsRUFBRSxJQUFJLENBQUMsU0FBUzt3QkFDeEIsU0FBUyxFQUFFLElBQUksQ0FBQyxVQUFVO3dCQUMxQixPQUFPLEVBQUUsSUFBSSxDQUFDLFFBQVE7cUJBQ3ZCLENBQUMsQ0FBQztvQkFDSCxJQUFJLEdBQUcsQ0FBQyxNQUFNLEVBQUUsR0FBRyxDQUFDLEVBQUU7d0JBQ3BCLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztxQkFDbEM7eUJBQU07d0JBQ0wsUUFBUSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztxQkFDcEI7aUJBQ0Y7YUFDRjtZQUNELElBQ0UsSUFBSSxZQUFZLGdCQUFnQjtnQkFDaEMsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLEtBQUssU0FBUyxJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUUsS0FBSyxDQUFDLENBQUMsRUFDdkQ7Z0JBQ0EsUUFBUSxHQUFHLENBQUMsR0FBRyxRQUFRLEVBQUUsR0FBRyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQzthQUM5QztpQkFBTTtnQkFDTCxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7YUFDbkM7WUFDRCxJQUFJLENBQUMsVUFBVSxHQUFHLFNBQVMsQ0FBQztZQUM1QixJQUFJLENBQUMsU0FBUyxHQUFHLFFBQVEsQ0FBQztTQUMzQjthQUFNLElBQ0wsSUFBSSxZQUFZLGdCQUFnQjtZQUNoQyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDZixDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsS0FBSyxTQUFTLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsQ0FBQyxFQUN2RDtZQUNBLElBQUksQ0FBQyxTQUFTLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxTQUFTLEVBQUUsR0FBRyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztTQUMxRDthQUFNO1lBQ0wsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQ2pCLElBQUksWUFBWSxnQkFBZ0IsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUU7Z0JBQ2pELENBQUMsQ0FBQyxJQUFJLFFBQVEsQ0FBQyxJQUFJLENBQUM7Z0JBQ3BCLENBQUMsQ0FBQyxJQUFJLENBQ1QsQ0FBQztTQUNIO1FBQ0QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsTUFBTSxDQUFDLEVBQ0wsT0FBTyxFQUNQLE1BQU0sRUFDTixNQUFNLE1BS0osRUFBRTtRQUNKLElBQUksT0FBTyxHQUFHLElBQUksQ0FBQyxTQUFTO2FBQ3pCLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQzthQUNqRCxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsVUFBVSxHQUFHLENBQUMsQ0FBQztRQUNoQyxPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDO0lBRUQsS0FBSztRQUNILE9BQU8sSUFBSSxnQkFBZ0IsQ0FBQztZQUMxQixRQUFRLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUM5QyxTQUFTLEVBQUUsSUFBSSxDQUFDLFVBQVU7WUFDMUIsT0FBTyxFQUFFLElBQUksQ0FBQyxRQUFRO1NBQ3ZCLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFUSxNQUFNO1FBQ2IsT0FBTztZQUNMLFFBQVEsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQy9DLFNBQVMsRUFBRSxJQUFJLENBQUMsVUFBVTtZQUMxQixPQUFPLEVBQUUsSUFBSSxDQUFDLFFBQVE7U0FDdkIsQ0FBQztJQUNKLENBQUM7SUFFRCxTQUFTO1FBQ1AsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxPQUFPO1FBQ0wsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxFQUFFLENBQUMsR0FBd0I7UUFDekIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUM5QixDQUFDO0lBRUQsR0FBRyxDQUFDLEdBQXdCO1FBQzFCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDL0IsQ0FBQztJQUVELEdBQUcsQ0FBQyxHQUF3QjtRQUMxQixNQUFNLE1BQU0sR0FBRyxJQUFJLGdCQUFnQixDQUFJO1lBQ3JDLFFBQVEsRUFBRSxHQUFHLENBQUMsUUFBUSxFQUFFO1lBQ3hCLFNBQVMsRUFBRSxHQUFHLENBQUMsU0FBUyxFQUFFO1lBQzFCLE9BQU8sRUFBRSxJQUFJO1NBQ2QsQ0FBQyxDQUFDO1FBRUgsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUVELElBQUksQ0FBQyxLQUFVO1FBQ2IsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDMUMsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHlwZXMgfSBmcm9tICcuLi8uLi8uLi91dGlscyc7XG5pbXBvcnQgdHlwZSB7IFF1ZXJ5Q3VzdG9tVHlwZSB9IGZyb20gJy4uL2J1aWxkZXInO1xuaW1wb3J0IHsgRXhwcmVzc2lvbiB9IGZyb20gJy4vYmFzZSc7XG5pbXBvcnQgeyByZW5kZXIsIEdyb3VwaW5nLCBSZW5kZXJhYmxlIH0gZnJvbSAnLi9zeW50YXgnO1xuXG5leHBvcnQgdHlwZSBTZWFyY2hDb25uZWN0b3IgPSAnQU5EJyB8ICdPUic7XG5cbmV4cG9ydCBjbGFzcyBTZWFyY2hUZXJtIGltcGxlbWVudHMgUmVuZGVyYWJsZSB7XG4gIGNvbnN0cnVjdG9yKHByb3RlY3RlZCB2YWx1ZTogc3RyaW5nKSB7fVxuXG4gIGdldCBbU3ltYm9sLnRvU3RyaW5nVGFnXSgpIHtcbiAgICByZXR1cm4gJ1NlYXJjaFRlcm0nO1xuICB9XG5cbiAgdG9KU09OKCkge1xuICAgIHJldHVybiB7XG4gICAgICAkdHlwZTogVHlwZXMucmF3VHlwZSh0aGlzKSxcbiAgICAgIHZhbHVlOiB0aGlzLnZhbHVlLFxuICAgIH07XG4gIH1cblxuICByZW5kZXIoe1xuICAgIGFsaWFzZXMsXG4gICAgZXNjYXBlLFxuICAgIHByZWZpeCxcbiAgfToge1xuICAgIGFsaWFzZXM/OiBRdWVyeUN1c3RvbVR5cGVbXTtcbiAgICBlc2NhcGU/OiBib29sZWFuO1xuICAgIHByZWZpeD86IHN0cmluZztcbiAgfSk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGAke3JlbmRlcih0aGlzLnZhbHVlLCB7IGFsaWFzZXMsIGVzY2FwZSwgcHJlZml4IH0pfWA7XG4gIH1cblxuICBjbG9uZSgpIHtcbiAgICByZXR1cm4gbmV3IFNlYXJjaFRlcm0odGhpcy52YWx1ZSk7XG4gIH1cbn1cblxuZXhwb3J0IHR5cGUgU2VhcmNoRXhwcmVzc2lvbkJ1aWxkZXI8VD4gPSB7XG4gIGU6IChjb25uZWN0b3I/OiBTZWFyY2hDb25uZWN0b3IpID0+IFNlYXJjaEV4cHJlc3Npb248VD47XG59O1xuZXhwb3J0IGNsYXNzIFNlYXJjaEV4cHJlc3Npb248VD4gZXh0ZW5kcyBFeHByZXNzaW9uPFQ+IHtcbiAgcHJpdmF0ZSBfY29ubmVjdG9yOiBTZWFyY2hDb25uZWN0b3I7XG4gIHByaXZhdGUgX25lZ2F0ZWQ6IGJvb2xlYW47XG4gIGNvbnN0cnVjdG9yKHtcbiAgICBjaGlsZHJlbixcbiAgICBjb25uZWN0b3IsXG4gICAgbmVnYXRlZCxcbiAgfToge1xuICAgIGNoaWxkcmVuPzogUmVuZGVyYWJsZVtdO1xuICAgIGNvbm5lY3Rvcj86IFNlYXJjaENvbm5lY3RvcjtcbiAgICBuZWdhdGVkPzogYm9vbGVhbjtcbiAgfSA9IHt9KSB7XG4gICAgc3VwZXIoeyBjaGlsZHJlbiB9KTtcbiAgICB0aGlzLl9jb25uZWN0b3IgPSBjb25uZWN0b3IgfHwgJ0FORCc7XG4gICAgdGhpcy5fbmVnYXRlZCA9IG5lZ2F0ZWQgfHwgZmFsc2U7XG4gIH1cblxuICBzdGF0aWMgc2VhcmNoPFQgZXh0ZW5kcyBvYmplY3Q+KFxuICAgIG9wdHM6IChcbiAgICAgIGJ1aWxkZXI6IFNlYXJjaEV4cHJlc3Npb25CdWlsZGVyPFQ+LFxuICAgICAgY3VycmVudD86IFNlYXJjaEV4cHJlc3Npb248VD5cbiAgICApID0+IFNlYXJjaEV4cHJlc3Npb248VD4sXG4gICAgY3VycmVudD86IFNlYXJjaEV4cHJlc3Npb248VD5cbiAgKTogU2VhcmNoRXhwcmVzc2lvbjxUPiB7XG4gICAgcmV0dXJuIG9wdHMoXG4gICAgICB7XG4gICAgICAgIGU6IChjb25uZWN0b3I6IFNlYXJjaENvbm5lY3RvciA9ICdBTkQnKSA9PlxuICAgICAgICAgIG5ldyBTZWFyY2hFeHByZXNzaW9uPFQ+KHsgY29ubmVjdG9yIH0pLFxuICAgICAgfSxcbiAgICAgIGN1cnJlbnRcbiAgICApIGFzIFNlYXJjaEV4cHJlc3Npb248VD47XG4gIH1cblxuICBwcml2YXRlIF9hZGQoXG4gICAgbm9kZTogUmVuZGVyYWJsZSxcbiAgICBjb25uZWN0b3I/OiBTZWFyY2hDb25uZWN0b3JcbiAgKTogU2VhcmNoRXhwcmVzc2lvbjxUPiB7XG4gICAgaWYgKGNvbm5lY3RvciAhPT0gdW5kZWZpbmVkICYmIHRoaXMuX2Nvbm5lY3RvciAhPT0gY29ubmVjdG9yKSB7XG4gICAgICBsZXQgY2hpbGRyZW46IFJlbmRlcmFibGVbXSA9IFtdO1xuICAgICAgaWYgKHRoaXMuX2NoaWxkcmVuLmxlbmd0aCA+IDApIHtcbiAgICAgICAgaWYgKHRoaXMuX2NoaWxkcmVuLmxlbmd0aCA9PT0gMSkge1xuICAgICAgICAgIGNoaWxkcmVuID0gWy4uLnRoaXMuX2NoaWxkcmVuXTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBsZXQgZXhwID0gbmV3IFNlYXJjaEV4cHJlc3Npb248VD4oe1xuICAgICAgICAgICAgY2hpbGRyZW46IHRoaXMuX2NoaWxkcmVuLFxuICAgICAgICAgICAgY29ubmVjdG9yOiB0aGlzLl9jb25uZWN0b3IsXG4gICAgICAgICAgICBuZWdhdGVkOiB0aGlzLl9uZWdhdGVkLFxuICAgICAgICAgIH0pO1xuICAgICAgICAgIGlmIChleHAubGVuZ3RoKCkgPiAxKSB7XG4gICAgICAgICAgICBjaGlsZHJlbi5wdXNoKG5ldyBHcm91cGluZyhleHApKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY2hpbGRyZW4ucHVzaChleHApO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaWYgKFxuICAgICAgICBub2RlIGluc3RhbmNlb2YgU2VhcmNoRXhwcmVzc2lvbiAmJlxuICAgICAgICAobm9kZS5jb25uZWN0b3IoKSA9PT0gY29ubmVjdG9yIHx8IG5vZGUubGVuZ3RoKCkgPT09IDEpXG4gICAgICApIHtcbiAgICAgICAgY2hpbGRyZW4gPSBbLi4uY2hpbGRyZW4sIC4uLm5vZGUuY2hpbGRyZW4oKV07XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjaGlsZHJlbi5wdXNoKG5ldyBHcm91cGluZyhub2RlKSk7XG4gICAgICB9XG4gICAgICB0aGlzLl9jb25uZWN0b3IgPSBjb25uZWN0b3I7XG4gICAgICB0aGlzLl9jaGlsZHJlbiA9IGNoaWxkcmVuO1xuICAgIH0gZWxzZSBpZiAoXG4gICAgICBub2RlIGluc3RhbmNlb2YgU2VhcmNoRXhwcmVzc2lvbiAmJlxuICAgICAgIW5vZGUubmVnYXRlZCgpICYmXG4gICAgICAobm9kZS5jb25uZWN0b3IoKSA9PT0gY29ubmVjdG9yIHx8IG5vZGUubGVuZ3RoKCkgPT09IDEpXG4gICAgKSB7XG4gICAgICB0aGlzLl9jaGlsZHJlbiA9IFsuLi50aGlzLl9jaGlsZHJlbiwgLi4ubm9kZS5jaGlsZHJlbigpXTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5fY2hpbGRyZW4ucHVzaChcbiAgICAgICAgbm9kZSBpbnN0YW5jZW9mIFNlYXJjaEV4cHJlc3Npb24gJiYgIW5vZGUubmVnYXRlZCgpXG4gICAgICAgICAgPyBuZXcgR3JvdXBpbmcobm9kZSlcbiAgICAgICAgICA6IG5vZGVcbiAgICAgICk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgcmVuZGVyKHtcbiAgICBhbGlhc2VzLFxuICAgIGVzY2FwZSxcbiAgICBwcmVmaXgsXG4gIH06IHtcbiAgICBhbGlhc2VzPzogUXVlcnlDdXN0b21UeXBlW10gfCB1bmRlZmluZWQ7XG4gICAgZXNjYXBlPzogYm9vbGVhbiB8IHVuZGVmaW5lZDtcbiAgICBwcmVmaXg/OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gIH0gPSB7fSk6IHN0cmluZyB7XG4gICAgbGV0IGNvbnRlbnQgPSB0aGlzLl9jaGlsZHJlblxuICAgICAgLm1hcCgobikgPT4gbi5yZW5kZXIoeyBhbGlhc2VzLCBlc2NhcGUsIHByZWZpeCB9KSlcbiAgICAgIC5qb2luKGAgJHt0aGlzLl9jb25uZWN0b3J9IGApO1xuICAgIHJldHVybiBjb250ZW50O1xuICB9XG5cbiAgY2xvbmUoKSB7XG4gICAgcmV0dXJuIG5ldyBTZWFyY2hFeHByZXNzaW9uKHtcbiAgICAgIGNoaWxkcmVuOiB0aGlzLl9jaGlsZHJlbi5tYXAoKGMpID0+IGMuY2xvbmUoKSksXG4gICAgICBjb25uZWN0b3I6IHRoaXMuX2Nvbm5lY3RvcixcbiAgICAgIG5lZ2F0ZWQ6IHRoaXMuX25lZ2F0ZWQsXG4gICAgfSk7XG4gIH1cblxuICBvdmVycmlkZSB0b0pTT04oKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGNoaWxkcmVuOiB0aGlzLl9jaGlsZHJlbi5tYXAoKGMpID0+IGMudG9KU09OKCkpLFxuICAgICAgY29ubmVjdG9yOiB0aGlzLl9jb25uZWN0b3IsXG4gICAgICBuZWdhdGVkOiB0aGlzLl9uZWdhdGVkLFxuICAgIH07XG4gIH1cblxuICBjb25uZWN0b3IoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2Nvbm5lY3RvcjtcbiAgfVxuXG4gIG5lZ2F0ZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX25lZ2F0ZWQ7XG4gIH1cblxuICBvcihleHA6IFNlYXJjaEV4cHJlc3Npb248VD4pOiBTZWFyY2hFeHByZXNzaW9uPFQ+IHtcbiAgICByZXR1cm4gdGhpcy5fYWRkKGV4cCwgJ09SJyk7XG4gIH1cblxuICBhbmQoZXhwOiBTZWFyY2hFeHByZXNzaW9uPFQ+KTogU2VhcmNoRXhwcmVzc2lvbjxUPiB7XG4gICAgcmV0dXJuIHRoaXMuX2FkZChleHAsICdBTkQnKTtcbiAgfVxuXG4gIG5vdChleHA6IFNlYXJjaEV4cHJlc3Npb248VD4pOiBTZWFyY2hFeHByZXNzaW9uPFQ+IHtcbiAgICBjb25zdCBub3RFeHAgPSBuZXcgU2VhcmNoRXhwcmVzc2lvbjxUPih7XG4gICAgICBjaGlsZHJlbjogZXhwLmNoaWxkcmVuKCksXG4gICAgICBjb25uZWN0b3I6IGV4cC5jb25uZWN0b3IoKSxcbiAgICAgIG5lZ2F0ZWQ6IHRydWUsXG4gICAgfSk7XG5cbiAgICByZXR1cm4gdGhpcy5fYWRkKG5vdEV4cCwgdGhpcy5fY29ubmVjdG9yKTtcbiAgfVxuXG4gIHRlcm0odmFsdWU6IGFueSkge1xuICAgIHJldHVybiB0aGlzLl9hZGQobmV3IFNlYXJjaFRlcm0odmFsdWUpKTtcbiAgfVxufVxuIl19
@@ -4,16 +4,10 @@ export class SelectExpression extends Expression {
4
4
  constructor({ children, } = {}) {
5
5
  super({ children });
6
6
  }
7
- static expression() {
8
- return new SelectExpression();
9
- }
10
- static type() {
11
- return Field.factory();
12
- }
13
7
  static select(opts, current) {
14
8
  return opts({
15
- t: SelectExpression.type(),
16
- e: SelectExpression.expression,
9
+ t: Field.factory(),
10
+ e: () => new SelectExpression(),
17
11
  }, current);
18
12
  }
19
13
  render({ aliases, escape, prefix, } = {}) {
@@ -34,4 +28,4 @@ export class SelectExpression extends Expression {
34
28
  return this._add(field);
35
29
  }
36
30
  }
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1vZGF0YS9zcmMvbGliL3Jlc291cmNlcy9xdWVyeS9leHByZXNzaW9ucy9zZWxlY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUNwQyxPQUFPLEVBQUUsS0FBSyxFQUFjLE1BQU0sVUFBVSxDQUFDO0FBRzdDLE1BQU0sT0FBTyxnQkFBb0IsU0FBUSxVQUFhO0lBQ3BELFlBQVksRUFDVixRQUFRLE1BR04sRUFBRTtRQUNKLEtBQUssQ0FBQyxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUM7SUFDdEIsQ0FBQztJQUVELE1BQU0sQ0FBQyxVQUFVO1FBQ2YsT0FBTyxJQUFJLGdCQUFnQixFQUFLLENBQUM7SUFDbkMsQ0FBQztJQUVELE1BQU0sQ0FBQyxJQUFJO1FBQ1QsT0FBTyxLQUFLLENBQUMsT0FBTyxFQUFLLENBQUM7SUFDNUIsQ0FBQztJQUVELE1BQU0sQ0FBQyxNQUFNLENBQ1gsSUFHd0IsRUFDeEIsT0FBNkI7UUFFN0IsT0FBTyxJQUFJLENBQ1Q7WUFDRSxDQUFDLEVBQUUsZ0JBQWdCLENBQUMsSUFBSSxFQUFLO1lBQzdCLENBQUMsRUFBRSxnQkFBZ0IsQ0FBQyxVQUFVO1NBQy9CLEVBQ0QsT0FBTyxDQUNlLENBQUM7SUFDM0IsQ0FBQztJQUVELE1BQU0sQ0FBQyxFQUNMLE9BQU8sRUFDUCxNQUFNLEVBQ04sTUFBTSxNQUtKLEVBQUU7UUFDSixPQUFPLElBQUksQ0FBQyxTQUFTO2FBQ2xCLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQzthQUNqRCxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDZixDQUFDO0lBRUQsS0FBSztRQUNILE9BQU8sSUFBSSxnQkFBZ0IsQ0FBQztZQUMxQixRQUFRLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztTQUMvQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sSUFBSSxDQUFDLElBQWdCO1FBQzNCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzFCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELEtBQUssQ0FBQyxLQUFVO1FBQ2QsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzFCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgUXVlcnlDdXN0b21UeXBlIH0gZnJvbSAnLi4vYnVpbGRlcic7XG5pbXBvcnQgeyBFeHByZXNzaW9uIH0gZnJvbSAnLi9iYXNlJztcbmltcG9ydCB7IEZpZWxkLCBSZW5kZXJhYmxlIH0gZnJvbSAnLi9zeW50YXgnO1xuXG5leHBvcnQgdHlwZSBTZWxlY3RFeHByZXNzaW9uQnVpbGRlcjxUPiA9IHsgdDogVDsgZTogKCkgPT4gU2VsZWN0RXhwcmVzc2lvbjxUPiB9O1xuZXhwb3J0IGNsYXNzIFNlbGVjdEV4cHJlc3Npb248VD4gZXh0ZW5kcyBFeHByZXNzaW9uPFQ+IHtcbiAgY29uc3RydWN0b3Ioe1xuICAgIGNoaWxkcmVuLFxuICB9OiB7XG4gICAgY2hpbGRyZW4/OiBSZW5kZXJhYmxlW107XG4gIH0gPSB7fSkge1xuICAgIHN1cGVyKHsgY2hpbGRyZW4gfSk7XG4gIH1cblxuICBzdGF0aWMgZXhwcmVzc2lvbjxUPigpIHtcbiAgICByZXR1cm4gbmV3IFNlbGVjdEV4cHJlc3Npb248VD4oKTtcbiAgfVxuXG4gIHN0YXRpYyB0eXBlPFQgZXh0ZW5kcyBvYmplY3Q+KCk6IFQge1xuICAgIHJldHVybiBGaWVsZC5mYWN0b3J5PFQ+KCk7XG4gIH1cblxuICBzdGF0aWMgc2VsZWN0PFQgZXh0ZW5kcyBvYmplY3Q+KFxuICAgIG9wdHM6IChcbiAgICAgIGJ1aWxkZXI6IFNlbGVjdEV4cHJlc3Npb25CdWlsZGVyPFQ+LFxuICAgICAgY3VycmVudD86IFNlbGVjdEV4cHJlc3Npb248VD5cbiAgICApID0+IFNlbGVjdEV4cHJlc3Npb248VD4sXG4gICAgY3VycmVudD86IFNlbGVjdEV4cHJlc3Npb248VD5cbiAgKTogU2VsZWN0RXhwcmVzc2lvbjxUPiB7XG4gICAgcmV0dXJuIG9wdHMoXG4gICAgICB7XG4gICAgICAgIHQ6IFNlbGVjdEV4cHJlc3Npb24udHlwZTxUPigpLFxuICAgICAgICBlOiBTZWxlY3RFeHByZXNzaW9uLmV4cHJlc3Npb24sXG4gICAgICB9LFxuICAgICAgY3VycmVudFxuICAgICkgYXMgU2VsZWN0RXhwcmVzc2lvbjxUPjtcbiAgfVxuXG4gIHJlbmRlcih7XG4gICAgYWxpYXNlcyxcbiAgICBlc2NhcGUsXG4gICAgcHJlZml4LFxuICB9OiB7XG4gICAgYWxpYXNlcz86IFF1ZXJ5Q3VzdG9tVHlwZVtdIHwgdW5kZWZpbmVkO1xuICAgIGVzY2FwZT86IGJvb2xlYW4gfCB1bmRlZmluZWQ7XG4gICAgcHJlZml4Pzogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICB9ID0ge30pOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9jaGlsZHJlblxuICAgICAgLm1hcCgobikgPT4gbi5yZW5kZXIoeyBhbGlhc2VzLCBlc2NhcGUsIHByZWZpeCB9KSlcbiAgICAgIC5qb2luKCcsJyk7XG4gIH1cblxuICBjbG9uZSgpIHtcbiAgICByZXR1cm4gbmV3IFNlbGVjdEV4cHJlc3Npb24oe1xuICAgICAgY2hpbGRyZW46IHRoaXMuX2NoaWxkcmVuLm1hcCgoYykgPT4gYy5jbG9uZSgpKSxcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX2FkZChub2RlOiBSZW5kZXJhYmxlKTogU2VsZWN0RXhwcmVzc2lvbjxUPiB7XG4gICAgdGhpcy5fY2hpbGRyZW4ucHVzaChub2RlKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIGZpZWxkKGZpZWxkOiBhbnkpOiBTZWxlY3RFeHByZXNzaW9uPFQ+IHtcbiAgICByZXR1cm4gdGhpcy5fYWRkKGZpZWxkKTtcbiAgfVxufVxuIl19
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1vZGF0YS9zcmMvbGliL3Jlc291cmNlcy9xdWVyeS9leHByZXNzaW9ucy9zZWxlY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUNwQyxPQUFPLEVBQUUsS0FBSyxFQUFjLE1BQU0sVUFBVSxDQUFDO0FBTTdDLE1BQU0sT0FBTyxnQkFBb0IsU0FBUSxVQUFhO0lBQ3BELFlBQVksRUFDVixRQUFRLE1BR04sRUFBRTtRQUNKLEtBQUssQ0FBQyxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUM7SUFDdEIsQ0FBQztJQUVELE1BQU0sQ0FBQyxNQUFNLENBQ1gsSUFHd0IsRUFDeEIsT0FBNkI7UUFFN0IsT0FBTyxJQUFJLENBQ1Q7WUFDRSxDQUFDLEVBQUUsS0FBSyxDQUFDLE9BQU8sRUFBeUI7WUFDekMsQ0FBQyxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksZ0JBQWdCLEVBQUs7U0FDbkMsRUFDRCxPQUFPLENBQ2UsQ0FBQztJQUMzQixDQUFDO0lBRUQsTUFBTSxDQUFDLEVBQ0wsT0FBTyxFQUNQLE1BQU0sRUFDTixNQUFNLE1BS0osRUFBRTtRQUNKLE9BQU8sSUFBSSxDQUFDLFNBQVM7YUFDbEIsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDO2FBQ2pELElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNmLENBQUM7SUFFRCxLQUFLO1FBQ0gsT0FBTyxJQUFJLGdCQUFnQixDQUFDO1lBQzFCLFFBQVEsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDO1NBQy9DLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyxJQUFJLENBQUMsSUFBZ0I7UUFDM0IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDMUIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsS0FBSyxDQUFDLEtBQVU7UUFDZCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDMUIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBRdWVyeUN1c3RvbVR5cGUgfSBmcm9tICcuLi9idWlsZGVyJztcbmltcG9ydCB7IEV4cHJlc3Npb24gfSBmcm9tICcuL2Jhc2UnO1xuaW1wb3J0IHsgRmllbGQsIFJlbmRlcmFibGUgfSBmcm9tICcuL3N5bnRheCc7XG5cbmV4cG9ydCB0eXBlIFNlbGVjdEV4cHJlc3Npb25CdWlsZGVyPFQ+ID0ge1xuICB0OiBSZWFkb25seTxSZXF1aXJlZDxUPj47XG4gIGU6ICgpID0+IFNlbGVjdEV4cHJlc3Npb248VD47XG59O1xuZXhwb3J0IGNsYXNzIFNlbGVjdEV4cHJlc3Npb248VD4gZXh0ZW5kcyBFeHByZXNzaW9uPFQ+IHtcbiAgY29uc3RydWN0b3Ioe1xuICAgIGNoaWxkcmVuLFxuICB9OiB7XG4gICAgY2hpbGRyZW4/OiBSZW5kZXJhYmxlW107XG4gIH0gPSB7fSkge1xuICAgIHN1cGVyKHsgY2hpbGRyZW4gfSk7XG4gIH1cblxuICBzdGF0aWMgc2VsZWN0PFQgZXh0ZW5kcyBvYmplY3Q+KFxuICAgIG9wdHM6IChcbiAgICAgIGJ1aWxkZXI6IFNlbGVjdEV4cHJlc3Npb25CdWlsZGVyPFQ+LFxuICAgICAgY3VycmVudD86IFNlbGVjdEV4cHJlc3Npb248VD5cbiAgICApID0+IFNlbGVjdEV4cHJlc3Npb248VD4sXG4gICAgY3VycmVudD86IFNlbGVjdEV4cHJlc3Npb248VD5cbiAgKTogU2VsZWN0RXhwcmVzc2lvbjxUPiB7XG4gICAgcmV0dXJuIG9wdHMoXG4gICAgICB7XG4gICAgICAgIHQ6IEZpZWxkLmZhY3Rvcnk8UmVhZG9ubHk8UmVxdWlyZWQ8VD4+PigpLFxuICAgICAgICBlOiAoKSA9PiBuZXcgU2VsZWN0RXhwcmVzc2lvbjxUPigpLFxuICAgICAgfSxcbiAgICAgIGN1cnJlbnRcbiAgICApIGFzIFNlbGVjdEV4cHJlc3Npb248VD47XG4gIH1cblxuICByZW5kZXIoe1xuICAgIGFsaWFzZXMsXG4gICAgZXNjYXBlLFxuICAgIHByZWZpeCxcbiAgfToge1xuICAgIGFsaWFzZXM/OiBRdWVyeUN1c3RvbVR5cGVbXSB8IHVuZGVmaW5lZDtcbiAgICBlc2NhcGU/OiBib29sZWFuIHwgdW5kZWZpbmVkO1xuICAgIHByZWZpeD86IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgfSA9IHt9KTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fY2hpbGRyZW5cbiAgICAgIC5tYXAoKG4pID0+IG4ucmVuZGVyKHsgYWxpYXNlcywgZXNjYXBlLCBwcmVmaXggfSkpXG4gICAgICAuam9pbignLCcpO1xuICB9XG5cbiAgY2xvbmUoKSB7XG4gICAgcmV0dXJuIG5ldyBTZWxlY3RFeHByZXNzaW9uKHtcbiAgICAgIGNoaWxkcmVuOiB0aGlzLl9jaGlsZHJlbi5tYXAoKGMpID0+IGMuY2xvbmUoKSksXG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF9hZGQobm9kZTogUmVuZGVyYWJsZSk6IFNlbGVjdEV4cHJlc3Npb248VD4ge1xuICAgIHRoaXMuX2NoaWxkcmVuLnB1c2gobm9kZSk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBmaWVsZChmaWVsZDogYW55KTogU2VsZWN0RXhwcmVzc2lvbjxUPiB7XG4gICAgcmV0dXJuIHRoaXMuX2FkZChmaWVsZCk7XG4gIH1cbn1cbiJdfQ==