@cubejs-client/ngx 0.28.51 → 0.29.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,40 +1,22 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * Generated from: src/query-builder/query.ts
4
- * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
5
- */
6
1
  import { isQueryPresent } from '@cubejs-client/core';
7
2
  import { StateSubject } from './common';
8
3
  import { BaseMember, FilterMember, Order, TimeDimensionMember } from './query-members';
9
- /** @enum {string} */
10
- const MemberType = {
11
- Measures: "measures",
12
- Dimensions: "dimensions",
13
- Segments: "segments",
14
- TimeDimensions: "timeDimensions",
15
- Filters: "filters",
16
- Order: "order",
17
- };
18
- export { MemberType };
4
+ export var MemberType;
5
+ (function (MemberType) {
6
+ MemberType["Measures"] = "measures";
7
+ MemberType["Dimensions"] = "dimensions";
8
+ MemberType["Segments"] = "segments";
9
+ MemberType["TimeDimensions"] = "timeDimensions";
10
+ MemberType["Filters"] = "filters";
11
+ MemberType["Order"] = "order";
12
+ })(MemberType || (MemberType = {}));
19
13
  export class Query extends StateSubject {
20
- /**
21
- * @param {?} meta
22
- * @param {?=} _onBeforeChange
23
- */
24
- constructor(meta, _onBeforeChange = (/**
25
- * @param {?} newQuery
26
- * @return {?}
27
- */
28
- (newQuery) => newQuery)) {
14
+ constructor(meta, _onBeforeChange = (newQuery) => newQuery) {
29
15
  super({});
30
16
  this.meta = meta;
31
17
  this._onBeforeChange = _onBeforeChange;
32
18
  this.init();
33
19
  }
34
- /**
35
- * @private
36
- * @return {?}
37
- */
38
20
  init() {
39
21
  this.measures = new BaseMember(this, MemberType.Measures);
40
22
  this.dimensions = new BaseMember(this, MemberType.Dimensions);
@@ -43,59 +25,20 @@ export class Query extends StateSubject {
43
25
  this.filters = new FilterMember(this);
44
26
  this.order = new Order(this);
45
27
  }
46
- /**
47
- * @return {?}
48
- */
49
28
  asCubeQuery() {
50
29
  return this.subject.getValue() || {};
51
30
  }
52
- /**
53
- * @param {?} query
54
- * @return {?}
55
- */
56
31
  setQuery(query) {
57
32
  this.subject.next(this._onBeforeChange(query, this.subject.getValue(), this));
58
33
  }
59
- /**
60
- * @param {?} partialQuery
61
- * @return {?}
62
- */
63
34
  setPartialQuery(partialQuery) {
64
35
  this.subject.next(this._onBeforeChange(Object.assign(Object.assign({}, this.subject.getValue()), partialQuery), this.subject.getValue(), this));
65
36
  }
66
- /**
67
- * @param {?} limit
68
- * @return {?}
69
- */
70
37
  setLimit(limit) {
71
38
  this.setPartialQuery({ limit });
72
39
  }
73
- /**
74
- * @return {?}
75
- */
76
40
  isPresent() {
77
41
  return isQueryPresent(this.asCubeQuery());
78
42
  }
79
43
  }
80
- if (false) {
81
- /** @type {?} */
82
- Query.prototype.measures;
83
- /** @type {?} */
84
- Query.prototype.dimensions;
85
- /** @type {?} */
86
- Query.prototype.segments;
87
- /** @type {?} */
88
- Query.prototype.timeDimensions;
89
- /** @type {?} */
90
- Query.prototype.filters;
91
- /** @type {?} */
92
- Query.prototype.order;
93
- /** @type {?} */
94
- Query.prototype.meta;
95
- /**
96
- * @type {?}
97
- * @private
98
- */
99
- Query.prototype._onBeforeChange;
100
- }
101
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnkuanMiLCJzb3VyY2VSb290IjoiL2hvbWUvcnVubmVyL3dvcmsvY3ViZS5qcy9jdWJlLmpzL3BhY2thZ2VzL2N1YmVqcy1jbGllbnQtbmd4LyIsInNvdXJjZXMiOlsic3JjL3F1ZXJ5LWJ1aWxkZXIvcXVlcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQUUsY0FBYyxFQUE2QixNQUFNLHFCQUFxQixDQUFDO0FBRWhGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDeEMsT0FBTyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLG1CQUFtQixFQUFFLE1BQU0saUJBQWlCLENBQUM7O0FBRXZGLE1BQVksVUFBVTtJQUNwQixRQUFRLFlBQWE7SUFDckIsVUFBVSxjQUFlO0lBQ3pCLFFBQVEsWUFBYTtJQUNyQixjQUFjLGtCQUFtQjtJQUNqQyxPQUFPLFdBQVk7SUFDbkIsS0FBSyxTQUFVO0VBQ2hCOztBQVFELE1BQU0sT0FBTyxLQUFNLFNBQVEsWUFBd0I7Ozs7O0lBUWpELFlBQ1MsSUFBVSxFQUNUOzs7O0lBQW9DLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxRQUFRLENBQUE7UUFFbEUsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBSEgsU0FBSSxHQUFKLElBQUksQ0FBTTtRQUNULG9CQUFlLEdBQWYsZUFBZSxDQUEyQztRQUdsRSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDZCxDQUFDOzs7OztJQUVPLElBQUk7UUFDVixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksVUFBVSxDQUFDLElBQUksRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDMUQsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLFVBQVUsQ0FBQyxJQUFJLEVBQUUsVUFBVSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQzlELElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxVQUFVLENBQUMsSUFBSSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUMxRCxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksbUJBQW1CLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDcEQsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN0QyxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQy9CLENBQUM7Ozs7SUFFRCxXQUFXO1FBQ1QsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQztJQUN2QyxDQUFDOzs7OztJQUVELFFBQVEsQ0FBQyxLQUFpQjtRQUN4QixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDaEYsQ0FBQzs7Ozs7SUFFRCxlQUFlLENBQUMsWUFBaUM7UUFDL0MsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQ2YsSUFBSSxDQUFDLGVBQWUsaUNBRWIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsR0FDdkIsWUFBWSxHQUVqQixJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxFQUN2QixJQUFJLENBQ0wsQ0FDRixDQUFDO0lBQ0osQ0FBQzs7Ozs7SUFFRCxRQUFRLENBQUMsS0FBYTtRQUNwQixJQUFJLENBQUMsZUFBZSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUNsQyxDQUFDOzs7O0lBRUQsU0FBUztRQUNQLE9BQU8sY0FBYyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO0lBQzVDLENBQUM7Q0FDRjs7O0lBcERDLHlCQUFxQjs7SUFDckIsMkJBQXVCOztJQUN2Qix5QkFBcUI7O0lBQ3JCLCtCQUFvQzs7SUFDcEMsd0JBQXNCOztJQUN0QixzQkFBYTs7SUFHWCxxQkFBaUI7Ozs7O0lBQ2pCLGdDQUFrRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGlzUXVlcnlQcmVzZW50LCBNZXRhLCBRdWVyeSBhcyBUQ3ViZVF1ZXJ5IH0gZnJvbSAnQGN1YmVqcy1jbGllbnQvY29yZSc7XG5cbmltcG9ydCB7IFN0YXRlU3ViamVjdCB9IGZyb20gJy4vY29tbW9uJztcbmltcG9ydCB7IEJhc2VNZW1iZXIsIEZpbHRlck1lbWJlciwgT3JkZXIsIFRpbWVEaW1lbnNpb25NZW1iZXIgfSBmcm9tICcuL3F1ZXJ5LW1lbWJlcnMnO1xuXG5leHBvcnQgZW51bSBNZW1iZXJUeXBlIHtcbiAgTWVhc3VyZXMgPSAnbWVhc3VyZXMnLFxuICBEaW1lbnNpb25zID0gJ2RpbWVuc2lvbnMnLFxuICBTZWdtZW50cyA9ICdzZWdtZW50cycsXG4gIFRpbWVEaW1lbnNpb25zID0gJ3RpbWVEaW1lbnNpb25zJyxcbiAgRmlsdGVycyA9ICdmaWx0ZXJzJyxcbiAgT3JkZXIgPSAnb3JkZXInLFxufVxuXG5leHBvcnQgdHlwZSBPbkNoYW5nZUNhbGxiYWNrID0gKFxuICBuZXdRdWVyeTogVEN1YmVRdWVyeSxcbiAgb2xkUXVlcnk6IFRDdWJlUXVlcnksXG4gIHF1ZXJ5OiBRdWVyeVxuKSA9PiBUQ3ViZVF1ZXJ5O1xuXG5leHBvcnQgY2xhc3MgUXVlcnkgZXh0ZW5kcyBTdGF0ZVN1YmplY3Q8VEN1YmVRdWVyeT4ge1xuICBtZWFzdXJlczogQmFzZU1lbWJlcjtcbiAgZGltZW5zaW9uczogQmFzZU1lbWJlcjtcbiAgc2VnbWVudHM6IEJhc2VNZW1iZXI7XG4gIHRpbWVEaW1lbnNpb25zOiBUaW1lRGltZW5zaW9uTWVtYmVyO1xuICBmaWx0ZXJzOiBGaWx0ZXJNZW1iZXI7XG4gIG9yZGVyOiBPcmRlcjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgbWV0YTogTWV0YSxcbiAgICBwcml2YXRlIF9vbkJlZm9yZUNoYW5nZTogT25DaGFuZ2VDYWxsYmFjayA9IChuZXdRdWVyeSkgPT4gbmV3UXVlcnlcbiAgKSB7XG4gICAgc3VwZXIoe30pO1xuICAgIHRoaXMuaW5pdCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0KCkge1xuICAgIHRoaXMubWVhc3VyZXMgPSBuZXcgQmFzZU1lbWJlcih0aGlzLCBNZW1iZXJUeXBlLk1lYXN1cmVzKTtcbiAgICB0aGlzLmRpbWVuc2lvbnMgPSBuZXcgQmFzZU1lbWJlcih0aGlzLCBNZW1iZXJUeXBlLkRpbWVuc2lvbnMpO1xuICAgIHRoaXMuc2VnbWVudHMgPSBuZXcgQmFzZU1lbWJlcih0aGlzLCBNZW1iZXJUeXBlLlNlZ21lbnRzKTtcbiAgICB0aGlzLnRpbWVEaW1lbnNpb25zID0gbmV3IFRpbWVEaW1lbnNpb25NZW1iZXIodGhpcyk7XG4gICAgdGhpcy5maWx0ZXJzID0gbmV3IEZpbHRlck1lbWJlcih0aGlzKTtcbiAgICB0aGlzLm9yZGVyID0gbmV3IE9yZGVyKHRoaXMpO1xuICB9XG5cbiAgYXNDdWJlUXVlcnkoKTogVEN1YmVRdWVyeSB7XG4gICAgcmV0dXJuIHRoaXMuc3ViamVjdC5nZXRWYWx1ZSgpIHx8IHt9O1xuICB9XG5cbiAgc2V0UXVlcnkocXVlcnk6IFRDdWJlUXVlcnkpIHtcbiAgICB0aGlzLnN1YmplY3QubmV4dCh0aGlzLl9vbkJlZm9yZUNoYW5nZShxdWVyeSwgdGhpcy5zdWJqZWN0LmdldFZhbHVlKCksIHRoaXMpKTtcbiAgfVxuXG4gIHNldFBhcnRpYWxRdWVyeShwYXJ0aWFsUXVlcnk6IFBhcnRpYWw8VEN1YmVRdWVyeT4pIHtcbiAgICB0aGlzLnN1YmplY3QubmV4dChcbiAgICAgIHRoaXMuX29uQmVmb3JlQ2hhbmdlKFxuICAgICAgICB7XG4gICAgICAgICAgLi4udGhpcy5zdWJqZWN0LmdldFZhbHVlKCksXG4gICAgICAgICAgLi4ucGFydGlhbFF1ZXJ5LFxuICAgICAgICB9LFxuICAgICAgICB0aGlzLnN1YmplY3QuZ2V0VmFsdWUoKSxcbiAgICAgICAgdGhpc1xuICAgICAgKVxuICAgICk7XG4gIH1cblxuICBzZXRMaW1pdChsaW1pdDogbnVtYmVyKSB7XG4gICAgdGhpcy5zZXRQYXJ0aWFsUXVlcnkoeyBsaW1pdCB9KTtcbiAgfVxuICBcbiAgaXNQcmVzZW50KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBpc1F1ZXJ5UHJlc2VudCh0aGlzLmFzQ3ViZVF1ZXJ5KCkpO1xuICB9XG59XG4iXX0=
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvcXVlcnktYnVpbGRlci9xdWVyeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUE2QixNQUFNLHFCQUFxQixDQUFDO0FBRWhGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDeEMsT0FBTyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLG1CQUFtQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFdkYsTUFBTSxDQUFOLElBQVksVUFPWDtBQVBELFdBQVksVUFBVTtJQUNwQixtQ0FBcUIsQ0FBQTtJQUNyQix1Q0FBeUIsQ0FBQTtJQUN6QixtQ0FBcUIsQ0FBQTtJQUNyQiwrQ0FBaUMsQ0FBQTtJQUNqQyxpQ0FBbUIsQ0FBQTtJQUNuQiw2QkFBZSxDQUFBO0FBQ2pCLENBQUMsRUFQVyxVQUFVLEtBQVYsVUFBVSxRQU9yQjtBQVFELE1BQU0sT0FBTyxLQUFNLFNBQVEsWUFBd0I7SUFRakQsWUFDUyxJQUFVLEVBQ1Qsa0JBQW9DLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxRQUFRO1FBRWxFLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUhILFNBQUksR0FBSixJQUFJLENBQU07UUFDVCxvQkFBZSxHQUFmLGVBQWUsQ0FBMkM7UUFHbEUsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2QsQ0FBQztJQUVPLElBQUk7UUFDVixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksVUFBVSxDQUFDLElBQUksRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDMUQsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLFVBQVUsQ0FBQyxJQUFJLEVBQUUsVUFBVSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQzlELElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxVQUFVLENBQUMsSUFBSSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUMxRCxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksbUJBQW1CLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDcEQsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN0QyxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFFRCxXQUFXO1FBQ1QsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQztJQUN2QyxDQUFDO0lBRUQsUUFBUSxDQUFDLEtBQWlCO1FBQ3hCLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUNoRixDQUFDO0lBRUQsZUFBZSxDQUFDLFlBQWlDO1FBQy9DLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUNmLElBQUksQ0FBQyxlQUFlLGlDQUViLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFLEdBQ3ZCLFlBQVksR0FFakIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsRUFDdkIsSUFBSSxDQUNMLENBQ0YsQ0FBQztJQUNKLENBQUM7SUFFRCxRQUFRLENBQUMsS0FBYTtRQUNwQixJQUFJLENBQUMsZUFBZSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBRUQsU0FBUztRQUNQLE9BQU8sY0FBYyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO0lBQzVDLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGlzUXVlcnlQcmVzZW50LCBNZXRhLCBRdWVyeSBhcyBUQ3ViZVF1ZXJ5IH0gZnJvbSAnQGN1YmVqcy1jbGllbnQvY29yZSc7XG5cbmltcG9ydCB7IFN0YXRlU3ViamVjdCB9IGZyb20gJy4vY29tbW9uJztcbmltcG9ydCB7IEJhc2VNZW1iZXIsIEZpbHRlck1lbWJlciwgT3JkZXIsIFRpbWVEaW1lbnNpb25NZW1iZXIgfSBmcm9tICcuL3F1ZXJ5LW1lbWJlcnMnO1xuXG5leHBvcnQgZW51bSBNZW1iZXJUeXBlIHtcbiAgTWVhc3VyZXMgPSAnbWVhc3VyZXMnLFxuICBEaW1lbnNpb25zID0gJ2RpbWVuc2lvbnMnLFxuICBTZWdtZW50cyA9ICdzZWdtZW50cycsXG4gIFRpbWVEaW1lbnNpb25zID0gJ3RpbWVEaW1lbnNpb25zJyxcbiAgRmlsdGVycyA9ICdmaWx0ZXJzJyxcbiAgT3JkZXIgPSAnb3JkZXInLFxufVxuXG5leHBvcnQgdHlwZSBPbkNoYW5nZUNhbGxiYWNrID0gKFxuICBuZXdRdWVyeTogVEN1YmVRdWVyeSxcbiAgb2xkUXVlcnk6IFRDdWJlUXVlcnksXG4gIHF1ZXJ5OiBRdWVyeVxuKSA9PiBUQ3ViZVF1ZXJ5O1xuXG5leHBvcnQgY2xhc3MgUXVlcnkgZXh0ZW5kcyBTdGF0ZVN1YmplY3Q8VEN1YmVRdWVyeT4ge1xuICBtZWFzdXJlczogQmFzZU1lbWJlcjtcbiAgZGltZW5zaW9uczogQmFzZU1lbWJlcjtcbiAgc2VnbWVudHM6IEJhc2VNZW1iZXI7XG4gIHRpbWVEaW1lbnNpb25zOiBUaW1lRGltZW5zaW9uTWVtYmVyO1xuICBmaWx0ZXJzOiBGaWx0ZXJNZW1iZXI7XG4gIG9yZGVyOiBPcmRlcjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgbWV0YTogTWV0YSxcbiAgICBwcml2YXRlIF9vbkJlZm9yZUNoYW5nZTogT25DaGFuZ2VDYWxsYmFjayA9IChuZXdRdWVyeSkgPT4gbmV3UXVlcnlcbiAgKSB7XG4gICAgc3VwZXIoe30pO1xuICAgIHRoaXMuaW5pdCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0KCkge1xuICAgIHRoaXMubWVhc3VyZXMgPSBuZXcgQmFzZU1lbWJlcih0aGlzLCBNZW1iZXJUeXBlLk1lYXN1cmVzKTtcbiAgICB0aGlzLmRpbWVuc2lvbnMgPSBuZXcgQmFzZU1lbWJlcih0aGlzLCBNZW1iZXJUeXBlLkRpbWVuc2lvbnMpO1xuICAgIHRoaXMuc2VnbWVudHMgPSBuZXcgQmFzZU1lbWJlcih0aGlzLCBNZW1iZXJUeXBlLlNlZ21lbnRzKTtcbiAgICB0aGlzLnRpbWVEaW1lbnNpb25zID0gbmV3IFRpbWVEaW1lbnNpb25NZW1iZXIodGhpcyk7XG4gICAgdGhpcy5maWx0ZXJzID0gbmV3IEZpbHRlck1lbWJlcih0aGlzKTtcbiAgICB0aGlzLm9yZGVyID0gbmV3IE9yZGVyKHRoaXMpO1xuICB9XG5cbiAgYXNDdWJlUXVlcnkoKTogVEN1YmVRdWVyeSB7XG4gICAgcmV0dXJuIHRoaXMuc3ViamVjdC5nZXRWYWx1ZSgpIHx8IHt9O1xuICB9XG5cbiAgc2V0UXVlcnkocXVlcnk6IFRDdWJlUXVlcnkpIHtcbiAgICB0aGlzLnN1YmplY3QubmV4dCh0aGlzLl9vbkJlZm9yZUNoYW5nZShxdWVyeSwgdGhpcy5zdWJqZWN0LmdldFZhbHVlKCksIHRoaXMpKTtcbiAgfVxuXG4gIHNldFBhcnRpYWxRdWVyeShwYXJ0aWFsUXVlcnk6IFBhcnRpYWw8VEN1YmVRdWVyeT4pIHtcbiAgICB0aGlzLnN1YmplY3QubmV4dChcbiAgICAgIHRoaXMuX29uQmVmb3JlQ2hhbmdlKFxuICAgICAgICB7XG4gICAgICAgICAgLi4udGhpcy5zdWJqZWN0LmdldFZhbHVlKCksXG4gICAgICAgICAgLi4ucGFydGlhbFF1ZXJ5LFxuICAgICAgICB9LFxuICAgICAgICB0aGlzLnN1YmplY3QuZ2V0VmFsdWUoKSxcbiAgICAgICAgdGhpc1xuICAgICAgKVxuICAgICk7XG4gIH1cblxuICBzZXRMaW1pdChsaW1pdDogbnVtYmVyKSB7XG4gICAgdGhpcy5zZXRQYXJ0aWFsUXVlcnkoeyBsaW1pdCB9KTtcbiAgfVxuICBcbiAgaXNQcmVzZW50KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBpc1F1ZXJ5UHJlc2VudCh0aGlzLmFzQ3ViZVF1ZXJ5KCkpO1xuICB9XG59XG4iXX0=