@den4ik92/ng2-smart-table 1.0.0 → 1.0.1

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.
@@ -196,7 +196,7 @@ export class LocalDataSource extends DataSource {
196
196
  if (this.filterConf.filters) {
197
197
  if (this.filterConf.andOperator) {
198
198
  this.filterConf.filters.forEach((fieldConf) => {
199
- if (fieldConf['search'].length > 0) {
199
+ if (fieldConf['search']?.length > 0) {
200
200
  data = LocalFilter
201
201
  .filter(data, fieldConf['field'], fieldConf['search'], fieldConf['filter']);
202
202
  }
@@ -205,7 +205,7 @@ export class LocalDataSource extends DataSource {
205
205
  else {
206
206
  let mergedData = [];
207
207
  this.filterConf.filters.forEach((fieldConf) => {
208
- if (fieldConf['search'].length > 0) {
208
+ if (fieldConf['search']?.length > 0) {
209
209
  mergedData = mergedData.concat(LocalFilter
210
210
  .filter(data, fieldConf['field'], fieldConf['search'], fieldConf['filter']));
211
211
  }
@@ -225,4 +225,4 @@ export class LocalDataSource extends DataSource {
225
225
  return data;
226
226
  }
227
227
  }
228
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWwuZGF0YS1zb3VyY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZzItc21hcnQtdGFibGUvc3JjL2xpYi9saWIvZGF0YS1zb3VyY2UvbG9jYWwvbG9jYWwuZGF0YS1zb3VyY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM1QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE1BQU0sT0FBTyxlQUFnQixTQUFRLFVBQVU7SUFXN0MsWUFBWSxPQUFtQixFQUFFO1FBQy9CLEtBQUssRUFBRSxDQUFDO1FBVkEsU0FBSSxHQUFlLEVBQUUsQ0FBQztRQUN0QixzQkFBaUIsR0FBZSxFQUFFLENBQUM7UUFDbkMsYUFBUSxHQUFlLEVBQUUsQ0FBQztRQUMxQixlQUFVLEdBQVE7WUFDMUIsT0FBTyxFQUFFLEVBQUU7WUFDWCxXQUFXLEVBQUUsSUFBSTtTQUNsQixDQUFDO1FBQ1EsZUFBVSxHQUFRLEVBQUUsQ0FBQztRQUs3QixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztJQUNuQixDQUFDO0lBRUQsSUFBSSxDQUFDLElBQWdCO1FBQ25CLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBRWpCLE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMxQixDQUFDO0lBRUQsT0FBTyxDQUFDLE9BQVk7UUFDbEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUVqQixJQUFJLENBQUMsSUFBSSxDQUFDLE9B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QUFVLEdBQVEsRUFBRSxDQUFDO2dCQUN6QixJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxTQUFjLEVBQUUsRUFBRTtvQkFDakQsSUFBSSxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTt3QkFDbEMsVUFBVSxHQUFHLFVBQVUsQ0FBQyxNQUFNLENBQUMsV0FBVzs2QkFDdkMsTUFBTSxDQUFDLElBQUksRUFBRSxTQUFTLENBQUMsT0FBTyxDQUFDLEVBQUUsU0FBUyxDQUFDLFFBQVEsQ0FBQyxFQUFFLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUM7cUJBQ2hGO2dCQUNILENBQUMsQ0FBQyxDQUFDO2dCQUNILDBCQUEwQjtnQkFDMUIsSUFBSSxHQUFHLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFTLEVBQUUsR0FBUSxFQUFFLEdBQVEsRUFBRSxFQUFFO29CQUN6RCxPQUFPLEdBQUcsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFDO2dCQUNuQyxDQUFDLENBQUMsQ0FBQzthQUNKO1NBQ0Y7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFUyxRQUFRLENBQUMsSUFBZ0I7UUFDakMsSUFBSSxJQUFJLENBQUMsVUFBVSxJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsRUFBRTtZQUM1RSxJQUFJLEdBQUcsVUFBVSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7U0FDdkY7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IExvY2FsU29ydGVyIH0gZnJvbSAnLi9sb2NhbC5zb3J0ZXInO1xuaW1wb3J0IHsgTG9jYWxGaWx0ZXIgfSBmcm9tICcuL2xvY2FsLmZpbHRlcic7XG5pbXBvcnQgeyBMb2NhbFBhZ2VyIH0gZnJvbSAnLi9sb2NhbC5wYWdlcic7XG5pbXBvcnQgeyBEYXRhU291cmNlIH0gZnJvbSAnLi4vZGF0YS1zb3VyY2UnO1xuaW1wb3J0IHsgZGVlcEV4dGVuZCB9IGZyb20gJy4uLy4uL2hlbHBlcnMnO1xuXG5leHBvcnQgY2xhc3MgTG9jYWxEYXRhU291cmNlIGV4dGVuZHMgRGF0YVNvdXJjZSB7XG5cbiAgcHJvdGVjdGVkIGRhdGE6IEFycmF5PGFueT4gPSBbXTtcbiAgcHJvdGVjdGVkIGZpbHRlcmVkQW5kU29ydGVkOiBBcnJheTxhbnk+ID0gW107XG4gIHByb3RlY3RlZCBzb3J0Q29uZjogQXJyYXk8YW55PiA9IFtdO1xuICBwcm90ZWN0ZWQgZmlsdGVyQ29uZjogYW55ID0ge1xuICAgIGZpbHRlcnM6IFtdLFxuICAgIGFuZE9wZXJhdG9yOiB0cnVlLFxuICB9O1xuICBwcm90ZWN0ZWQgcGFnaW5nQ29uZjogYW55ID0ge307XG5cbiAgY29uc3RydWN0b3IoZGF0YTogQXJyYXk8YW55PiA9IFtdKSB7XG4gICAgc3VwZXIoKTtcblxuICAgIHRoaXMuZGF0YSA9IGRhdGE7XG4gIH1cblxuICBsb2FkKGRhdGE6IEFycmF5PGFueT4pOiBQcm9taXNlPGFueT4ge1xuICAgIHRoaXMuZGF0YSA9IGRhdGE7XG5cbiAgICByZXR1cm4gc3VwZXIubG9hZChkYXRhKTtcbiAgfVxuXG4gIHByZXBlbmQoZWxlbWVudDogYW55KTogUHJvbWlzZTxhbnk+IHtcbiAgICB0aGlzLnJlc2V0KHRydWUpO1xuXG4gICAgdGhpcy5kYXRhLnVuc2hpZnQoZWxlbWVudCk7XG4gICAgcmV0dXJuIHN1cGVyLnByZXBlbmQoZWxlbWVudCk7XG4gIH1cblxuICBhcHBlbmQoZWxlbWVudDogYW55KTogUHJvbWlzZTxhbnk+IHtcbiAgICB0aGlzLnJlc2V0KHRydWUpO1xuXG4gICAgdGhpcy5kYXRhLnB1c2goZWxlbWVudCk7XG4gICAgcmV0dXJuIHN1cGVyLmFwcGVuZChlbGVtZW50KTtcbiAgfVxuXG4gIGFkZChlbGVtZW50OiBhbnkpOiBQcm9taXNlPGFueT4ge1xuICAgIHRoaXMuZGF0YS5wdXNoKGVsZW1lbnQpO1xuXG4gICAgcmV0dXJuIHN1cGVyLmFkZChlbGVtZW50KTtcbiAgfVxuXG4gIHJlbW92ZShlbGVtZW50OiBhbnkpOiBQcm9taXNlPGFueT4ge1xuICAgIHRoaXMuZGF0YSA9IHRoaXMuZGF0YS5maWx0ZXIoZWwgPT4gZWwgIT09IGVsZW1lbnQpO1xuXG4gICAgcmV0dXJuIHN1cGVyLnJlbW92ZShlbGVtZW50KTtcbiAgfVxuXG4gIHVwZGF0ZShlbGVtZW50OiBhbnksIHZhbHVlczogYW55KTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgdGhpcy5maW5kKGVsZW1lbnQpLnRoZW4oKGZvdW5kKSA9PiB7XG4gICAgICAgIGZvdW5kID0gZGVlcEV4dGVuZChmb3VuZCwgdmFsdWVzKTtcbiAgICAgICAgc3VwZXIudXBkYXRlKGZvdW5kLCB2YWx1ZXMpLnRoZW4ocmVzb2x2ZSkuY2F0Y2gocmVqZWN0KTtcbiAgICAgIH0pLmNhdGNoKHJlamVjdCk7XG4gICAgfSk7XG4gIH1cblxuICBmaW5kKGVsZW1lbnQ6IGFueSk6IFByb21pc2U8YW55PiB7XG4gICAgY29uc3QgZm91bmQgPSB0aGlzLmRhdGEuZmluZChlbCA9PiBlbCA9PT0gZWxlbWVudCk7XG4gICAgaWYgKGZvdW5kKSB7XG4gICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKGZvdW5kKTtcbiAgICB9XG5cbiAgICByZXR1cm4gUHJvbWlzZS5yZWplY3QobmV3IEVycm9yKCdFbGVtZW50IHdhcyBub3QgZm91bmQgaW4gdGhlIGRhdGFzZXQnKSk7XG4gIH1cblxuICBnZXRFbGVtZW50cygpOiBQcm9taXNlPGFueT4ge1xuICAgIGNvbnN0IGRhdGEgPSB0aGlzLmRhdGEuc2xpY2UoMCk7XG4gICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSh0aGlzLnByZXBhcmVEYXRhKGRhdGEpKTtcbiAgfVxuXG4gIGdldEZpbHRlcmVkQW5kU29ydGVkKCk6IFByb21pc2U8YW55PiB7XG4gICAgbGV0IGRhdGEgPSB0aGlzLmRhdGEuc2xpY2UoMCk7XG4gICAgdGhpcy5wcmVwYXJlRGF0YShkYXRhKTtcbiAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHRoaXMuZmlsdGVyZWRBbmRTb3J0ZWQpO1xuICB9XG5cbiAgZ2V0QWxsKCk6IFByb21pc2U8YW55PiB7XG4gICAgY29uc3QgZGF0YSA9IHRoaXMuZGF0YS5zbGljZSgwKTtcbiAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKGRhdGEpO1xuICB9XG5cbiAgcmVzZXQoc2lsZW50ID0gZmFsc2UpIHtcbiAgICBpZiAoc2lsZW50KSB7XG4gICAgICB0aGlzLmZpbHRlckNvbmYgPSB7XG4gICAgICAgIGZpbHRlcnM6IFtdLFxuICAgICAgICBhbmRPcGVyYXRvcjogdHJ1ZSxcbiAgICAgIH07XG4gICAgICB0aGlzLnNvcnRDb25mID0gW107XG4gICAgICB0aGlzLnBhZ2luZ0NvbmZbJ3BhZ2UnXSA9IDE7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc2V0RmlsdGVyKFtdLCB0cnVlLCBmYWxzZSk7XG4gICAgICB0aGlzLnNldFNvcnQoW10sIGZhbHNlKTtcbiAgICAgIHRoaXMuc2V0UGFnZSgxKTtcbiAgICB9XG4gIH1cblxuICBlbXB0eSgpOiBQcm9taXNlPGFueT4ge1xuICAgIHRoaXMuZGF0YSA9IFtdO1xuXG4gICAgcmV0dXJuIHN1cGVyLmVtcHR5KCk7XG4gIH1cblxuICBjb3VudCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmZpbHRlcmVkQW5kU29ydGVkLmxlbmd0aDtcbiAgfVxuXG4gIC8qKlxuICAgKlxuICAgKiBBcnJheSBvZiBjb25mIG9iamVjdHNcbiAgICogW1xuICAgKiAge2ZpZWxkOiBzdHJpbmcsIGRpcmVjdGlvbjogYXNjfGRlc2N8bnVsbCwgY29tcGFyZTogRnVuY3Rpb258bnVsbH0sXG4gICAqIF1cbiAgICogQHBhcmFtIGNvbmZcbiAgICogQHBhcmFtIGRvRW1pdFxuICAgKiBAcmV0dXJucyB7TG9jYWxEYXRhU291cmNlfVxuICAgKi9cbiAgc2V0U29ydChjb25mOiBBcnJheTxhbnk+LCBkb0VtaXQgPSB0cnVlKTogTG9jYWxEYXRhU291cmNlIHtcbiAgICBpZiAoY29uZiAhPT0gbnVsbCkge1xuXG4gICAgICBjb25mLmZvckVhY2goKGZpZWxkQ29uZikgPT4ge1xuICAgICAgICBpZiAoIWZpZWxkQ29uZlsnZmllbGQnXSB8fCB0eXBlb2YgZmllbGRDb25mWydkaXJlY3Rpb24nXSA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1NvcnQgY29uZmlndXJhdGlvbiBvYmplY3QgaXMgbm90IHZhbGlkJyk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgICAgdGhpcy5zb3J0Q29uZiA9IGNvbmY7XG4gICAgfVxuXG4gICAgc3VwZXIuc2V0U29ydChjb25mLCBkb0VtaXQpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqXG4gICAqIEFycmF5IG9mIGNvbmYgb2JqZWN0c1xuICAgKiBbXG4gICAqICB7ZmllbGQ6IHN0cmluZywgc2VhcmNoOiBzdHJpbmcsIGZpbHRlcjogRnVuY3Rpb258bnVsbH0sXG4gICAqIF1cbiAgICogQHBhcmFtIGNvbmZcbiAgICogQHBhcmFtIGFuZE9wZXJhdG9yXG4gICAqIEBwYXJhbSBkb0VtaXRcbiAgICogQHJldHVybnMge0xvY2FsRGF0YVNvdXJjZX1cbiAgICovXG4gIHNldEZpbHRlcihjb25mOiBBcnJheTxhbnk+LCBhbmRPcGVyYXRvciA9IHRydWUsIGRvRW1pdCA9IHRydWUpOiBMb2NhbERhdGFTb3VyY2Uge1xuICAgIGlmIChjb25mICYmIGNvbmYubGVuZ3RoID4gMCkge1xuICAgICAgY29uZi5mb3JFYWNoKChmaWVsZENvbmYpID0+IHtcbiAgICAgICAgdGhpcy5hZGRGaWx0ZXIoZmllbGRDb25mLCBhbmRPcGVyYXRvciwgZmFsc2UpO1xuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZmlsdGVyQ29uZiA9IHtcbiAgICAgICAgZmlsdGVyczogW10sXG4gICAgICAgIGFuZE9wZXJhdG9yOiB0cnVlLFxuICAgICAgfTtcbiAgICB9XG4gICAgdGhpcy5maWx0ZXJDb25mLmFuZE9wZXJhdG9yID0gYW5kT3BlcmF0b3I7XG4gICAgdGhpcy5wYWdpbmdDb25mWydwYWdlJ10gPSAxO1xuXG4gICAgc3VwZXIuc2V0RmlsdGVyKGNvbmYsIGFuZE9wZXJhdG9yLCBkb0VtaXQpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgYWRkRmlsdGVyKGZpZWxkQ29uZjogYW55LCBhbmRPcGVyYXRvciA9IHRydWUsIGRvRW1pdDogYm9vbGVhbiA9IHRydWUpOiBMb2NhbERhdGFTb3VyY2Uge1xuICAgIGlmICghZmllbGRDb25mWydmaWVsZCddIHx8IHR5cGVvZiBmaWVsZENvbmZbJ3NlYXJjaCddID09PSAndW5kZWZpbmVkJykge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdGaWx0ZXIgY29uZmlndXJhdGlvbiBvYmplY3QgaXMgbm90IHZhbGlkJyk7XG4gICAgfVxuXG4gICAgbGV0IGZvdW5kID0gZmFsc2U7XG4gICAgdGhpcy5maWx0ZXJDb25mLmZpbHRlcnMuZm9yRWFjaCgoY3VycmVudEZpZWxkQ29uZjogYW55LCBpbmRleDogYW55KSA9PiB7XG4gICAgICBpZiAoY3VycmVudEZpZWxkQ29uZlsnZmllbGQnXSA9PT0gZmllbGRDb25mWydmaWVsZCddKSB7XG4gICAgICAgIHRoaXMuZmlsdGVyQ29uZi5maWx0ZXJzW2luZGV4XSA9IGZpZWxkQ29uZjtcbiAgICAgICAgZm91bmQgPSB0cnVlO1xuICAgICAgfVxuICAgIH0pO1xuICAgIGlmICghZm91bmQpIHtcbiAgICAgIHRoaXMuZmlsdGVyQ29uZi5maWx0ZXJzLnB1c2goZmllbGRDb25mKTtcbiAgICB9XG4gICAgdGhpcy5maWx0ZXJDb25mLmFuZE9wZXJhdG9yID0gYW5kT3BlcmF0b3I7XG4gICAgc3VwZXIuYWRkRmlsdGVyKGZpZWxkQ29uZiwgYW5kT3BlcmF0b3IsIGRvRW1pdCk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBzZXRQYWdpbmcocGFnZTogbnVtYmVyLCBwZXJQYWdlOiBudW1iZXIsIGRvRW1pdDogYm9vbGVhbiA9IHRydWUpOiBMb2NhbERhdGFTb3VyY2Uge1xuICAgIHRoaXMucGFnaW5nQ29uZlsncGFnZSddID0gcGFnZTtcbiAgICB0aGlzLnBhZ2luZ0NvbmZbJ3BlclBhZ2UnXSA9IHBlclBhZ2U7XG5cbiAgICBzdXBlci5zZXRQYWdpbmcocGFnZSwgcGVyUGFnZSwgZG9FbWl0KTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIHNldFBhZ2UocGFnZTogbnVtYmVyLCBkb0VtaXQ6IGJvb2xlYW4gPSB0cnVlKTogTG9jYWxEYXRhU291cmNlIHtcbiAgICB0aGlzLnBhZ2luZ0NvbmZbJ3BhZ2UnXSA9IHBhZ2U7XG4gICAgc3VwZXIuc2V0UGFnZShwYWdlLCBkb0VtaXQpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgZ2V0U29ydCgpOiBhbnkge1xuICAgIHJldHVybiB0aGlzLnNvcnRDb25mO1xuICB9XG5cbiAgZ2V0RmlsdGVyKCk6IGFueSB7XG4gICAgcmV0dXJuIHRoaXMuZmlsdGVyQ29uZjtcbiAgfVxuXG4gIGdldFBhZ2luZygpOiBhbnkge1xuICAgIHJldHVybiB0aGlzLnBhZ2luZ0NvbmY7XG4gIH1cblxuICBwcm90ZWN0ZWQgcHJlcGFyZURhdGEoZGF0YTogQXJyYXk8YW55Pik6IEFycmF5PGFueT4ge1xuICAgIGRhdGEgPSB0aGlzLmZpbHRlcihkYXRhKTtcbiAgICBkYXRhID0gdGhpcy5zb3J0KGRhdGEpO1xuICAgIHRoaXMuZmlsdGVyZWRBbmRTb3J0ZWQgPSBkYXRhLnNsaWNlKDApO1xuXG4gICAgcmV0dXJuIHRoaXMucGFnaW5hdGUoZGF0YSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgc29ydChkYXRhOiBBcnJheTxhbnk+KTogQXJyYXk8YW55PiB7XG4gICAgaWYgKHRoaXMuc29ydENvbmYpIHtcbiAgICAgIHRoaXMuc29ydENvbmYuZm9yRWFjaCgoZmllbGRDb25mKSA9PiB7XG4gICAgICAgIGRhdGEgPSBMb2NhbFNvcnRlclxuICAgICAgICAgIC5zb3J0KGRhdGEsIGZpZWxkQ29uZlsnZmllbGQnXSwgZmllbGRDb25mWydkaXJlY3Rpb24nXSwgZmllbGRDb25mWydjb21wYXJlJ10pO1xuICAgICAgfSk7XG4gICAgfVxuICAgIHJldHVybiBkYXRhO1xuICB9XG5cbiAgLy8gVE9ETzogcmVmYWN0b3I/XG4gIHByb3RlY3RlZCBmaWx0ZXIoZGF0YTogQXJyYXk8YW55Pik6IEFycmF5PGFueT4ge1xuICAgIGlmICh0aGlzLmZpbHRlckNvbmYuZmlsdGVycykge1xuICAgICAgaWYgKHRoaXMuZmlsdGVyQ29uZi5hbmRPcGVyYXRvcikge1xuICAgICAgICB0aGlzLmZpbHRlckNvbmYuZmlsdGVycy5mb3JFYWNoKChmaWVsZENvbmY6IGFueSkgPT4ge1xuICAgICAgICAgIGlmIChmaWVsZENvbmZbJ3NlYXJjaCddLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIGRhdGEgPSBMb2NhbEZpbHRlclxuICAgICAgICAgICAgICAuZmlsdGVyKGRhdGEsIGZpZWxkQ29uZlsnZmllbGQnXSwgZmllbGRDb25mWydzZWFyY2gnXSwgZmllbGRDb25mWydmaWx0ZXInXSk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGxldCBtZXJnZWREYXRhOiBhbnkgPSBbXTtcbiAgICAgICAgdGhpcy5maWx0ZXJDb25mLmZpbHRlcnMuZm9yRWFjaCgoZmllbGRDb25mOiBhbnkpID0+IHtcbiAgICAgICAgICBpZiAoZmllbGRDb25mWydzZWFyY2gnXS5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICBtZXJnZWREYXRhID0gbWVyZ2VkRGF0YS5jb25jYXQoTG9jYWxGaWx0ZXJcbiAgICAgICAgICAgICAgLmZpbHRlcihkYXRhLCBmaWVsZENvbmZbJ2ZpZWxkJ10sIGZpZWxkQ29uZlsnc2VhcmNoJ10sIGZpZWxkQ29uZlsnZmlsdGVyJ10pKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICAvLyByZW1vdmUgbm9uIHVuaXF1ZSBpdGVtc1xuICAgICAgICBkYXRhID0gbWVyZ2VkRGF0YS5maWx0ZXIoKGVsZW06IGFueSwgcG9zOiBhbnksIGFycjogYW55KSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGFyci5pbmRleE9mKGVsZW0pID09PSBwb3M7XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gZGF0YTtcbiAgfVxuXG4gIHByb3RlY3RlZCBwYWdpbmF0ZShkYXRhOiBBcnJheTxhbnk+KTogQXJyYXk8YW55PiB7XG4gICAgaWYgKHRoaXMucGFnaW5nQ29uZiAmJiB0aGlzLnBhZ2luZ0NvbmZbJ3BhZ2UnXSAmJiB0aGlzLnBhZ2luZ0NvbmZbJ3BlclBhZ2UnXSkge1xuICAgICAgZGF0YSA9IExvY2FsUGFnZXIucGFnaW5hdGUoZGF0YSwgdGhpcy5wYWdpbmdDb25mWydwYWdlJ10sIHRoaXMucGFnaW5nQ29uZlsncGVyUGFnZSddKTtcbiAgICB9XG4gICAgcmV0dXJuIGRhdGE7XG4gIH1cbn1cbiJdfQ==
228
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWwuZGF0YS1zb3VyY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZzItc21hcnQtdGFibGUvc3JjL2xpYi9saWIvZGF0YS1zb3VyY2UvbG9jYWwvbG9jYWwuZGF0YS1zb3VyY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM1QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE1BQU0sT0FBTyxlQUFnQixTQUFRLFVBQVU7SUFXN0MsWUFBWSxPQUFtQixFQUFFO1FBQy9CLEtBQUssRUFBRSxDQUFDO1FBVkEsU0FBSSxHQUFlLEVBQUUsQ0FBQztRQUN0QixzQkFBaUIsR0FBZSxFQUFFLENBQUM7UUFDbkMsYUFBUSxHQUFlLEVBQUUsQ0FBQztRQUMxQixlQUFVLEdBQVE7WUFDMUIsT0FBTyxFQUFFLEVBQUU7WUFDWCxXQUFXLEVBQUUsSUFBSTtTQUNsQixDQUFDO1FBQ1EsZUFBVSxHQUFRLEVBQUUsQ0FBQztRQUs3QixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztJQUNuQixDQUFDO0lBRUQsSUFBSSxDQUFDLElBQWdCO1FBQ25CLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBRWpCLE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMxQixDQUFDO0lBRUQsT0FBTyxDQUFDLE9BQVk7UUFDbEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUVqQixJQUFJLENBQUMsSUFBSSxDQUFDLE9B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QUFVLEdBQVEsRUFBRSxDQUFDO2dCQUN6QixJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxTQUFjLEVBQUUsRUFBRTtvQkFDakQsSUFBSSxTQUFTLENBQUMsUUFBUSxDQUFDLEVBQUUsTUFBTSxHQUFHLENBQUMsRUFBRTt3QkFDbkMsVUFBVSxHQUFHLFVBQVUsQ0FBQyxNQUFNLENBQUMsV0FBVzs2QkFDdkMsTUFBTSxDQUFDLElBQUksRUFBRSxTQUFTLENBQUMsT0FBTyxDQUFDLEVBQUUsU0FBUyxDQUFDLFFBQVEsQ0FBQyxFQUFFLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUM7cUJBQ2hGO2dCQUNILENBQUMsQ0FBQyxDQUFDO2dCQUNILDBCQUEwQjtnQkFDMUIsSUFBSSxHQUFHLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFTLEVBQUUsR0FBUSxFQUFFLEdBQVEsRUFBRSxFQUFFO29CQUN6RCxPQUFPLEdBQUcsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFDO2dCQUNuQyxDQUFDLENBQUMsQ0FBQzthQUNKO1NBQ0Y7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFUyxRQUFRLENBQUMsSUFBZ0I7UUFDakMsSUFBSSxJQUFJLENBQUMsVUFBVSxJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsRUFBRTtZQUM1RSxJQUFJLEdBQUcsVUFBVSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7U0FDdkY7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IExvY2FsU29ydGVyIH0gZnJvbSAnLi9sb2NhbC5zb3J0ZXInO1xuaW1wb3J0IHsgTG9jYWxGaWx0ZXIgfSBmcm9tICcuL2xvY2FsLmZpbHRlcic7XG5pbXBvcnQgeyBMb2NhbFBhZ2VyIH0gZnJvbSAnLi9sb2NhbC5wYWdlcic7XG5pbXBvcnQgeyBEYXRhU291cmNlIH0gZnJvbSAnLi4vZGF0YS1zb3VyY2UnO1xuaW1wb3J0IHsgZGVlcEV4dGVuZCB9IGZyb20gJy4uLy4uL2hlbHBlcnMnO1xuXG5leHBvcnQgY2xhc3MgTG9jYWxEYXRhU291cmNlIGV4dGVuZHMgRGF0YVNvdXJjZSB7XG5cbiAgcHJvdGVjdGVkIGRhdGE6IEFycmF5PGFueT4gPSBbXTtcbiAgcHJvdGVjdGVkIGZpbHRlcmVkQW5kU29ydGVkOiBBcnJheTxhbnk+ID0gW107XG4gIHByb3RlY3RlZCBzb3J0Q29uZjogQXJyYXk8YW55PiA9IFtdO1xuICBwcm90ZWN0ZWQgZmlsdGVyQ29uZjogYW55ID0ge1xuICAgIGZpbHRlcnM6IFtdLFxuICAgIGFuZE9wZXJhdG9yOiB0cnVlLFxuICB9O1xuICBwcm90ZWN0ZWQgcGFnaW5nQ29uZjogYW55ID0ge307XG5cbiAgY29uc3RydWN0b3IoZGF0YTogQXJyYXk8YW55PiA9IFtdKSB7XG4gICAgc3VwZXIoKTtcblxuICAgIHRoaXMuZGF0YSA9IGRhdGE7XG4gIH1cblxuICBsb2FkKGRhdGE6IEFycmF5PGFueT4pOiBQcm9taXNlPGFueT4ge1xuICAgIHRoaXMuZGF0YSA9IGRhdGE7XG5cbiAgICByZXR1cm4gc3VwZXIubG9hZChkYXRhKTtcbiAgfVxuXG4gIHByZXBlbmQoZWxlbWVudDogYW55KTogUHJvbWlzZTxhbnk+IHtcbiAgICB0aGlzLnJlc2V0KHRydWUpO1xuXG4gICAgdGhpcy5kYXRhLnVuc2hpZnQoZWxlbWVudCk7XG4gICAgcmV0dXJuIHN1cGVyLnByZXBlbmQoZWxlbWVudCk7XG4gIH1cblxuICBhcHBlbmQoZWxlbWVudDogYW55KTogUHJvbWlzZTxhbnk+IHtcbiAgICB0aGlzLnJlc2V0KHRydWUpO1xuXG4gICAgdGhpcy5kYXRhLnB1c2goZWxlbWVudCk7XG4gICAgcmV0dXJuIHN1cGVyLmFwcGVuZChlbGVtZW50KTtcbiAgfVxuXG4gIGFkZChlbGVtZW50OiBhbnkpOiBQcm9taXNlPGFueT4ge1xuICAgIHRoaXMuZGF0YS5wdXNoKGVsZW1lbnQpO1xuXG4gICAgcmV0dXJuIHN1cGVyLmFkZChlbGVtZW50KTtcbiAgfVxuXG4gIHJlbW92ZShlbGVtZW50OiBhbnkpOiBQcm9taXNlPGFueT4ge1xuICAgIHRoaXMuZGF0YSA9IHRoaXMuZGF0YS5maWx0ZXIoZWwgPT4gZWwgIT09IGVsZW1lbnQpO1xuXG4gICAgcmV0dXJuIHN1cGVyLnJlbW92ZShlbGVtZW50KTtcbiAgfVxuXG4gIHVwZGF0ZShlbGVtZW50OiBhbnksIHZhbHVlczogYW55KTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgdGhpcy5maW5kKGVsZW1lbnQpLnRoZW4oKGZvdW5kKSA9PiB7XG4gICAgICAgIGZvdW5kID0gZGVlcEV4dGVuZChmb3VuZCwgdmFsdWVzKTtcbiAgICAgICAgc3VwZXIudXBkYXRlKGZvdW5kLCB2YWx1ZXMpLnRoZW4ocmVzb2x2ZSkuY2F0Y2gocmVqZWN0KTtcbiAgICAgIH0pLmNhdGNoKHJlamVjdCk7XG4gICAgfSk7XG4gIH1cblxuICBmaW5kKGVsZW1lbnQ6IGFueSk6IFByb21pc2U8YW55PiB7XG4gICAgY29uc3QgZm91bmQgPSB0aGlzLmRhdGEuZmluZChlbCA9PiBlbCA9PT0gZWxlbWVudCk7XG4gICAgaWYgKGZvdW5kKSB7XG4gICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKGZvdW5kKTtcbiAgICB9XG5cbiAgICByZXR1cm4gUHJvbWlzZS5yZWplY3QobmV3IEVycm9yKCdFbGVtZW50IHdhcyBub3QgZm91bmQgaW4gdGhlIGRhdGFzZXQnKSk7XG4gIH1cblxuICBnZXRFbGVtZW50cygpOiBQcm9taXNlPGFueT4ge1xuICAgIGNvbnN0IGRhdGEgPSB0aGlzLmRhdGEuc2xpY2UoMCk7XG4gICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSh0aGlzLnByZXBhcmVEYXRhKGRhdGEpKTtcbiAgfVxuXG4gIGdldEZpbHRlcmVkQW5kU29ydGVkKCk6IFByb21pc2U8YW55PiB7XG4gICAgbGV0IGRhdGEgPSB0aGlzLmRhdGEuc2xpY2UoMCk7XG4gICAgdGhpcy5wcmVwYXJlRGF0YShkYXRhKTtcbiAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHRoaXMuZmlsdGVyZWRBbmRTb3J0ZWQpO1xuICB9XG5cbiAgZ2V0QWxsKCk6IFByb21pc2U8YW55PiB7XG4gICAgY29uc3QgZGF0YSA9IHRoaXMuZGF0YS5zbGljZSgwKTtcbiAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKGRhdGEpO1xuICB9XG5cbiAgcmVzZXQoc2lsZW50ID0gZmFsc2UpIHtcbiAgICBpZiAoc2lsZW50KSB7XG4gICAgICB0aGlzLmZpbHRlckNvbmYgPSB7XG4gICAgICAgIGZpbHRlcnM6IFtdLFxuICAgICAgICBhbmRPcGVyYXRvcjogdHJ1ZSxcbiAgICAgIH07XG4gICAgICB0aGlzLnNvcnRDb25mID0gW107XG4gICAgICB0aGlzLnBhZ2luZ0NvbmZbJ3BhZ2UnXSA9IDE7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc2V0RmlsdGVyKFtdLCB0cnVlLCBmYWxzZSk7XG4gICAgICB0aGlzLnNldFNvcnQoW10sIGZhbHNlKTtcbiAgICAgIHRoaXMuc2V0UGFnZSgxKTtcbiAgICB9XG4gIH1cblxuICBlbXB0eSgpOiBQcm9taXNlPGFueT4ge1xuICAgIHRoaXMuZGF0YSA9IFtdO1xuXG4gICAgcmV0dXJuIHN1cGVyLmVtcHR5KCk7XG4gIH1cblxuICBjb3VudCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmZpbHRlcmVkQW5kU29ydGVkLmxlbmd0aDtcbiAgfVxuXG4gIC8qKlxuICAgKlxuICAgKiBBcnJheSBvZiBjb25mIG9iamVjdHNcbiAgICogW1xuICAgKiAge2ZpZWxkOiBzdHJpbmcsIGRpcmVjdGlvbjogYXNjfGRlc2N8bnVsbCwgY29tcGFyZTogRnVuY3Rpb258bnVsbH0sXG4gICAqIF1cbiAgICogQHBhcmFtIGNvbmZcbiAgICogQHBhcmFtIGRvRW1pdFxuICAgKiBAcmV0dXJucyB7TG9jYWxEYXRhU291cmNlfVxuICAgKi9cbiAgc2V0U29ydChjb25mOiBBcnJheTxhbnk+LCBkb0VtaXQgPSB0cnVlKTogTG9jYWxEYXRhU291cmNlIHtcbiAgICBpZiAoY29uZiAhPT0gbnVsbCkge1xuXG4gICAgICBjb25mLmZvckVhY2goKGZpZWxkQ29uZikgPT4ge1xuICAgICAgICBpZiAoIWZpZWxkQ29uZlsnZmllbGQnXSB8fCB0eXBlb2YgZmllbGRDb25mWydkaXJlY3Rpb24nXSA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1NvcnQgY29uZmlndXJhdGlvbiBvYmplY3QgaXMgbm90IHZhbGlkJyk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgICAgdGhpcy5zb3J0Q29uZiA9IGNvbmY7XG4gICAgfVxuXG4gICAgc3VwZXIuc2V0U29ydChjb25mLCBkb0VtaXQpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqXG4gICAqIEFycmF5IG9mIGNvbmYgb2JqZWN0c1xuICAgKiBbXG4gICAqICB7ZmllbGQ6IHN0cmluZywgc2VhcmNoOiBzdHJpbmcsIGZpbHRlcjogRnVuY3Rpb258bnVsbH0sXG4gICAqIF1cbiAgICogQHBhcmFtIGNvbmZcbiAgICogQHBhcmFtIGFuZE9wZXJhdG9yXG4gICAqIEBwYXJhbSBkb0VtaXRcbiAgICogQHJldHVybnMge0xvY2FsRGF0YVNvdXJjZX1cbiAgICovXG4gIHNldEZpbHRlcihjb25mOiBBcnJheTxhbnk+LCBhbmRPcGVyYXRvciA9IHRydWUsIGRvRW1pdCA9IHRydWUpOiBMb2NhbERhdGFTb3VyY2Uge1xuICAgIGlmIChjb25mICYmIGNvbmYubGVuZ3RoID4gMCkge1xuICAgICAgY29uZi5mb3JFYWNoKChmaWVsZENvbmYpID0+IHtcbiAgICAgICAgdGhpcy5hZGRGaWx0ZXIoZmllbGRDb25mLCBhbmRPcGVyYXRvciwgZmFsc2UpO1xuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZmlsdGVyQ29uZiA9IHtcbiAgICAgICAgZmlsdGVyczogW10sXG4gICAgICAgIGFuZE9wZXJhdG9yOiB0cnVlLFxuICAgICAgfTtcbiAgICB9XG4gICAgdGhpcy5maWx0ZXJDb25mLmFuZE9wZXJhdG9yID0gYW5kT3BlcmF0b3I7XG4gICAgdGhpcy5wYWdpbmdDb25mWydwYWdlJ10gPSAxO1xuXG4gICAgc3VwZXIuc2V0RmlsdGVyKGNvbmYsIGFuZE9wZXJhdG9yLCBkb0VtaXQpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgYWRkRmlsdGVyKGZpZWxkQ29uZjogYW55LCBhbmRPcGVyYXRvciA9IHRydWUsIGRvRW1pdDogYm9vbGVhbiA9IHRydWUpOiBMb2NhbERhdGFTb3VyY2Uge1xuICAgIGlmICghZmllbGRDb25mWydmaWVsZCddIHx8IHR5cGVvZiBmaWVsZENvbmZbJ3NlYXJjaCddID09PSAndW5kZWZpbmVkJykge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdGaWx0ZXIgY29uZmlndXJhdGlvbiBvYmplY3QgaXMgbm90IHZhbGlkJyk7XG4gICAgfVxuXG4gICAgbGV0IGZvdW5kID0gZmFsc2U7XG4gICAgdGhpcy5maWx0ZXJDb25mLmZpbHRlcnMuZm9yRWFjaCgoY3VycmVudEZpZWxkQ29uZjogYW55LCBpbmRleDogYW55KSA9PiB7XG4gICAgICBpZiAoY3VycmVudEZpZWxkQ29uZlsnZmllbGQnXSA9PT0gZmllbGRDb25mWydmaWVsZCddKSB7XG4gICAgICAgIHRoaXMuZmlsdGVyQ29uZi5maWx0ZXJzW2luZGV4XSA9IGZpZWxkQ29uZjtcbiAgICAgICAgZm91bmQgPSB0cnVlO1xuICAgICAgfVxuICAgIH0pO1xuICAgIGlmICghZm91bmQpIHtcbiAgICAgIHRoaXMuZmlsdGVyQ29uZi5maWx0ZXJzLnB1c2goZmllbGRDb25mKTtcbiAgICB9XG4gICAgdGhpcy5maWx0ZXJDb25mLmFuZE9wZXJhdG9yID0gYW5kT3BlcmF0b3I7XG4gICAgc3VwZXIuYWRkRmlsdGVyKGZpZWxkQ29uZiwgYW5kT3BlcmF0b3IsIGRvRW1pdCk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBzZXRQYWdpbmcocGFnZTogbnVtYmVyLCBwZXJQYWdlOiBudW1iZXIsIGRvRW1pdDogYm9vbGVhbiA9IHRydWUpOiBMb2NhbERhdGFTb3VyY2Uge1xuICAgIHRoaXMucGFnaW5nQ29uZlsncGFnZSddID0gcGFnZTtcbiAgICB0aGlzLnBhZ2luZ0NvbmZbJ3BlclBhZ2UnXSA9IHBlclBhZ2U7XG5cbiAgICBzdXBlci5zZXRQYWdpbmcocGFnZSwgcGVyUGFnZSwgZG9FbWl0KTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIHNldFBhZ2UocGFnZTogbnVtYmVyLCBkb0VtaXQ6IGJvb2xlYW4gPSB0cnVlKTogTG9jYWxEYXRhU291cmNlIHtcbiAgICB0aGlzLnBhZ2luZ0NvbmZbJ3BhZ2UnXSA9IHBhZ2U7XG4gICAgc3VwZXIuc2V0UGFnZShwYWdlLCBkb0VtaXQpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgZ2V0U29ydCgpOiBhbnkge1xuICAgIHJldHVybiB0aGlzLnNvcnRDb25mO1xuICB9XG5cbiAgZ2V0RmlsdGVyKCk6IGFueSB7XG4gICAgcmV0dXJuIHRoaXMuZmlsdGVyQ29uZjtcbiAgfVxuXG4gIGdldFBhZ2luZygpOiBhbnkge1xuICAgIHJldHVybiB0aGlzLnBhZ2luZ0NvbmY7XG4gIH1cblxuICBwcm90ZWN0ZWQgcHJlcGFyZURhdGEoZGF0YTogQXJyYXk8YW55Pik6IEFycmF5PGFueT4ge1xuICAgIGRhdGEgPSB0aGlzLmZpbHRlcihkYXRhKTtcbiAgICBkYXRhID0gdGhpcy5zb3J0KGRhdGEpO1xuICAgIHRoaXMuZmlsdGVyZWRBbmRTb3J0ZWQgPSBkYXRhLnNsaWNlKDApO1xuXG4gICAgcmV0dXJuIHRoaXMucGFnaW5hdGUoZGF0YSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgc29ydChkYXRhOiBBcnJheTxhbnk+KTogQXJyYXk8YW55PiB7XG4gICAgaWYgKHRoaXMuc29ydENvbmYpIHtcbiAgICAgIHRoaXMuc29ydENvbmYuZm9yRWFjaCgoZmllbGRDb25mKSA9PiB7XG4gICAgICAgIGRhdGEgPSBMb2NhbFNvcnRlclxuICAgICAgICAgIC5zb3J0KGRhdGEsIGZpZWxkQ29uZlsnZmllbGQnXSwgZmllbGRDb25mWydkaXJlY3Rpb24nXSwgZmllbGRDb25mWydjb21wYXJlJ10pO1xuICAgICAgfSk7XG4gICAgfVxuICAgIHJldHVybiBkYXRhO1xuICB9XG5cbiAgLy8gVE9ETzogcmVmYWN0b3I/XG4gIHByb3RlY3RlZCBmaWx0ZXIoZGF0YTogQXJyYXk8YW55Pik6IEFycmF5PGFueT4ge1xuICAgIGlmICh0aGlzLmZpbHRlckNvbmYuZmlsdGVycykge1xuICAgICAgaWYgKHRoaXMuZmlsdGVyQ29uZi5hbmRPcGVyYXRvcikge1xuICAgICAgICB0aGlzLmZpbHRlckNvbmYuZmlsdGVycy5mb3JFYWNoKChmaWVsZENvbmY6IGFueSkgPT4ge1xuICAgICAgICAgIGlmIChmaWVsZENvbmZbJ3NlYXJjaCddPy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICBkYXRhID0gTG9jYWxGaWx0ZXJcbiAgICAgICAgICAgICAgLmZpbHRlcihkYXRhLCBmaWVsZENvbmZbJ2ZpZWxkJ10sIGZpZWxkQ29uZlsnc2VhcmNoJ10sIGZpZWxkQ29uZlsnZmlsdGVyJ10pO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBsZXQgbWVyZ2VkRGF0YTogYW55ID0gW107XG4gICAgICAgIHRoaXMuZmlsdGVyQ29uZi5maWx0ZXJzLmZvckVhY2goKGZpZWxkQ29uZjogYW55KSA9PiB7XG4gICAgICAgICAgaWYgKGZpZWxkQ29uZlsnc2VhcmNoJ10/Lmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIG1lcmdlZERhdGEgPSBtZXJnZWREYXRhLmNvbmNhdChMb2NhbEZpbHRlclxuICAgICAgICAgICAgICAuZmlsdGVyKGRhdGEsIGZpZWxkQ29uZlsnZmllbGQnXSwgZmllbGRDb25mWydzZWFyY2gnXSwgZmllbGRDb25mWydmaWx0ZXInXSkpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIC8vIHJlbW92ZSBub24gdW5pcXVlIGl0ZW1zXG4gICAgICAgIGRhdGEgPSBtZXJnZWREYXRhLmZpbHRlcigoZWxlbTogYW55LCBwb3M6IGFueSwgYXJyOiBhbnkpID0+IHtcbiAgICAgICAgICByZXR1cm4gYXJyLmluZGV4T2YoZWxlbSkgPT09IHBvcztcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBkYXRhO1xuICB9XG5cbiAgcHJvdGVjdGVkIHBhZ2luYXRlKGRhdGE6IEFycmF5PGFueT4pOiBBcnJheTxhbnk+IHtcbiAgICBpZiAodGhpcy5wYWdpbmdDb25mICYmIHRoaXMucGFnaW5nQ29uZlsncGFnZSddICYmIHRoaXMucGFnaW5nQ29uZlsncGVyUGFnZSddKSB7XG4gICAgICBkYXRhID0gTG9jYWxQYWdlci5wYWdpbmF0ZShkYXRhLCB0aGlzLnBhZ2luZ0NvbmZbJ3BhZ2UnXSwgdGhpcy5wYWdpbmdDb25mWydwZXJQYWdlJ10pO1xuICAgIH1cbiAgICByZXR1cm4gZGF0YTtcbiAgfVxufVxuIl19
@@ -3933,7 +3933,8 @@ class LocalDataSource extends DataSource {
3933
3933
  if (this.filterConf.filters) {
3934
3934
  if (this.filterConf.andOperator) {
3935
3935
  this.filterConf.filters.forEach((fieldConf) => {
3936
- if (fieldConf['search'].length > 0) {
3936
+ var _a;
3937
+ if (((_a = fieldConf['search']) === null || _a === void 0 ? void 0 : _a.length) > 0) {
3937
3938
  data = LocalFilter
3938
3939
  .filter(data, fieldConf['field'], fieldConf['search'], fieldConf['filter']);
3939
3940
  }
@@ -3942,7 +3943,8 @@ class LocalDataSource extends DataSource {
3942
3943
  else {
3943
3944
  let mergedData = [];
3944
3945
  this.filterConf.filters.forEach((fieldConf) => {
3945
- if (fieldConf['search'].length > 0) {
3946
+ var _a;
3947
+ if (((_a = fieldConf['search']) === null || _a === void 0 ? void 0 : _a.length) > 0) {
3946
3948
  mergedData = mergedData.concat(LocalFilter
3947
3949
  .filter(data, fieldConf['field'], fieldConf['search'], fieldConf['filter']));
3948
3950
  }