@recursyve/nice-data-filter-kit 15.3.2 → 15.3.4

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.
@@ -22,14 +22,26 @@ export class NiceFilterApi {
22
22
  getFilterConfig(option = {}) {
23
23
  return this.http.get(this.url("filter/config"), option);
24
24
  }
25
- searchFilterValue(id, value) {
25
+ searchFilterValue(id, value, options) {
26
26
  if (value === undefined) {
27
27
  value = "";
28
28
  }
29
- return this.http.get(this.url(`filter/config/value?id=${id}&value=${value}`));
29
+ return this.http.get(this.url(`filter/config/value`), {
30
+ params: {
31
+ ...options?.params,
32
+ id,
33
+ value
34
+ }
35
+ });
30
36
  }
31
- searchFilterResourceValue(id, resourceId) {
32
- return this.http.get(this.url(`filter/config/id?id=${id}&resourceId=${resourceId}`));
37
+ searchFilterResourceValue(id, resourceId, options) {
38
+ return this.http.get(this.url(`filter/config/id`), {
39
+ params: {
40
+ ...options?.params,
41
+ id,
42
+ resourceId
43
+ }
44
+ });
33
45
  }
34
46
  url(...args) {
35
47
  const [route, queryParams] = this.transformUrlArgs(args);
@@ -53,6 +65,9 @@ export class NiceFilterApi {
53
65
  export const mixinNiceFilterApi = (model) => {
54
66
  return (base) => {
55
67
  return class extends base {
68
+ constructor(...args) {
69
+ super(...args);
70
+ }
56
71
  filter(queryModel, option = {}) {
57
72
  return this.post("filter", queryModel, option).pipe(map(x => model ? ({
58
73
  ...x,
@@ -71,29 +86,28 @@ export const mixinNiceFilterApi = (model) => {
71
86
  getFilterConfig(option = {}) {
72
87
  return this.get("filter/config", option);
73
88
  }
74
- searchFilterValue(id, value) {
89
+ searchFilterValue(id, value, options) {
75
90
  if (value === undefined) {
76
91
  value = "";
77
92
  }
78
93
  return this.get("filter/config/value", {
79
94
  params: {
95
+ ...options?.params,
80
96
  id,
81
97
  value
82
98
  }
83
99
  });
84
100
  }
85
- searchFilterResourceValue(id, resourceId) {
101
+ searchFilterResourceValue(id, resourceId, options) {
86
102
  return this.get("filter/config/id", {
87
103
  params: {
104
+ ...options?.params,
88
105
  id,
89
106
  resourceId
90
107
  }
91
108
  });
92
109
  }
93
- constructor(...args) {
94
- super(...args);
95
- }
96
110
  };
97
111
  };
98
112
  };
99
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLmFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25pY2UtZGF0YS1maWx0ZXIta2l0L3NyYy9saWIvYXBpL2ZpbHRlci5hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRXBELE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQU9yQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQTRCL0QsTUFBTSxPQUFPLGFBQWE7SUFDdEIsWUFBb0IsWUFBb0IsRUFBVSxJQUFZLEVBQVksSUFBZ0I7UUFBdEUsaUJBQVksR0FBWixZQUFZLENBQVE7UUFBVSxTQUFJLEdBQUosSUFBSSxDQUFRO1FBQVksU0FBSSxHQUFKLElBQUksQ0FBWTtJQUMxRixDQUFDO0lBRU0sTUFBTSxDQUFDLFVBQTRCLEVBQUUsU0FBMEIsRUFBRTtRQUNwRSxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUF1QixJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUN4RixDQUFDO0lBRU0sV0FBVyxDQUFDLFVBQTRCO1FBQzNDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQVMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxjQUFjLENBQUMsRUFBRSxVQUFVLENBQUMsQ0FBQztJQUN4RSxDQUFDO0lBRU0sWUFBWSxDQUFDLElBQVksRUFBRSxVQUE0QjtRQUMxRCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxJQUFJLEVBQUUsQ0FBQyxFQUFFLFVBQVUsRUFBRSxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBQzlGLENBQUM7SUFFTSxnQkFBZ0IsQ0FB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LCBIdHRwQ29udGV4dCwgSHR0cEhlYWRlcnMsIEh0dHBQYXJhbXMgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uL2h0dHBcIjtcbmltcG9ydCB7IFR5cGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgSHR0cE9wdGlvbnMsIE5pY2VIdHRwRXhjZXB0aW9uRmFjdG9yeSB9IGZyb20gXCJAcmVjdXJzeXZlL25pY2UtdWkta2l0LnYyXCI7XG5pbXBvcnQgeyBBYnN0cmFjdENvbnN0cnVjdG9yLCBDb25zdHJ1Y3RvciB9IGZyb20gXCJAcmVjdXJzeXZlL25pY2UtdWkta2l0LnYyL2xpYi90eXBlcy9jb25zdHJ1Y3RvclwiO1xuaW1wb3J0IHsgcGxhaW5Ub0luc3RhbmNlIH0gZnJvbSBcImNsYXNzLXRyYW5zZm9ybWVyXCI7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSBcInJ4anNcIjtcbmltcG9ydCB7IG1hcCB9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xuaW1wb3J0IHtcbiAgICBGaWx0ZXJDb25maWd1cmF0aW9uTW9kZWwsXG4gICAgRmlsdGVyUXVlcnlNb2RlbCxcbiAgICBGaWx0ZXJSZXN1bHRNb2RlbCxcbiAgICBTZWxlY3RGaWx0ZXJWYWx1ZVxufSBmcm9tIFwiLi4vbW9kZWxzL2ZpbHRlci5tb2RlbFwiO1xuaW1wb3J0IHsgUXVlcnlQYXJhbXNVdGlscyB9IGZyb20gXCIuLi91dGlscy9xdWVyeS1wYXJhbXMudXRpbHNcIjtcblxuZXhwb3J0IGludGVyZmFjZSBOaWNlSHR0cE9wdGlvbnMge1xuICAgIGhlYWRlcnM/OiBIdHRwSGVhZGVycyB8IHtcbiAgICAgICAgW2hlYWRlcjogc3RyaW5nXTogc3RyaW5nIHwgc3RyaW5nW107XG4gICAgfTtcbiAgICBjb250ZXh0PzogSHR0cENvbnRleHQ7XG4gICAgcGFyYW1zPzogSHR0cFBhcmFtcyB8IHtcbiAgICAgICAgW3BhcmFtOiBzdHJpbmddOiBzdHJpbmcgfCBudW1iZXIgfCBib29sZWFuIHwgUmVhZG9ubHlBcnJheTxzdHJpbmcgfCBudW1iZXIgfCBib29sZWFuPjtcbiAgICB9O1xuICAgIHJlcG9ydFByb2dyZXNzPzogYm9vbGVhbjtcbiAgICB3aXRoQ3JlZGVudGlhbHM/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFF1ZXJ5UGFyYW1zIHtcbiAgICBbcGFyYW06IHN0cmluZ106IGFueTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBOaWNlRmlsdGVyQXBpRGVmaW5pdGlvbiB7XG4gICAgZmlsdGVyKHF1ZXJ5TW9kZWw6IEZpbHRlclF1ZXJ5TW9kZWwsIG9wdGlvbj86IEh0dHBPcHRpb25zKTogT2JzZXJ2YWJsZTxGaWx0ZXJSZXN1bHRNb2RlbD47XG4gICAgZmlsdGVyQ291bnQocXVlcnlNb2RlbDogRmlsdGVyUXVlcnlNb2RlbCk6IE9ic2VydmFibGU8bnVtYmVyPjtcbiAgICBkb3dubG9hZERhdGEodHlwZTogc3RyaW5nLCBxdWVyeU1vZGVsOiBGaWx0ZXJRdWVyeU1vZGVsKTogT2JzZXJ2YWJsZTxCbG9iPjtcbiAgICBnZXRQcmludGFibGVIdG1sKHF1ZXJ5TW9kZWw6IEZpbHRlclF1ZXJ5TW9kZWwpOiBPYnNlcnZhYmxlPHN0cmluZz47XG4gICAgZ2V0RmlsdGVyQ29uZmlnKG9wdGlvbj86IEh0dHBPcHRpb25zKTogT2JzZXJ2YWJsZTxGaWx0ZXJDb25maWd1cmF0aW9uTW9kZWxbXT47XG4gICAgc2VhcmNoRmlsdGVyVmFsdWUoaWQ6IHN0cmluZywgdmFsdWU6IHN0cmluZyk6IE9ic2VydmFibGU8U2VsZWN0RmlsdGVyVmFsdWVbXT47XG4gICAgc2VhcmNoRmlsdGVyUmVzb3VyY2VWYWx1ZShpZDogc3RyaW5nLCByZXNvdXJjZUlkOiBudW1iZXIpOiBPYnNlcnZhYmxlPFNlbGVjdEZpbHRlclZhbHVlPjtcbn1cblxuZXhwb3J0IGNsYXNzIE5pY2VGaWx0ZXJBcGk8VD4gaW1wbGVtZW50cyBOaWNlRmlsdGVyQXBpRGVmaW5pdGlvbiB7XG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBmaWx0ZXJBcGlVcmw6IHN0cmluZywgcHJpdmF0ZSBwYXRoOiBzdHJpbmcsIHByb3RlY3RlZCBodHRwOiBIdHRwQ2xpZW50KSB7XG4gICAgfVxuXG4gICAgcHVibGljIGZpbHRlcihxdWVyeU1vZGVsOiBGaWx0ZXJRdWVyeU1vZGVsLCBvcHRpb246IE5pY2VIdHRwT3B0aW9ucyA9IHt9KTogT2JzZXJ2YWJsZTxGaWx0ZXJSZXN1bHRNb2RlbDxUPj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8RmlsdGVyUmVzdWx0TW9kZWw8VD4+KHRoaXMudXJsKFwiZmlsdGVyXCIpLCBxdWVyeU1vZGVsLCBvcHRpb24pO1xuICAgIH1cblxuICAgIHB1YmxpYyBmaWx0ZXJDb3VudChxdWVyeU1vZGVsOiBGaWx0ZXJRdWVyeU1vZGVsKTogT2JzZXJ2YWJsZTxudW1iZXI+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PG51bWJlcj4odGhpcy51cmwoXCJmaWx0ZXItY291bnRcIiksIHF1ZXJ5TW9kZWwpO1xuICAgIH1cblxuICAgIHB1YmxpYyBkb3dubG9hZERhdGEodHlwZTogc3RyaW5nLCBxdWVyeU1vZGVsOiBGaWx0ZXJRdWVyeU1vZGVsKTogT2JzZXJ2YWJsZTxCbG9iPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdCh0aGlzLnVybChgZG93bmxvYWQvJHt0eXBlfWApLCBxdWVyeU1vZGVsLCB7IHJlc3BvbnNlVHlwZTogXCJibG9iXCIgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldFByaW50YWJsZUh0bWwocXVlcnlNb2RlbDogRmlsdGVyUXVlcnlNb2RlbCk6IE9ic2VydmFibGU8c3RyaW5nPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdCh0aGlzLnVybChgZG93bmxvYWQvaHRtbGApLCBxdWVyeU1vZGVsLCB7IHJlc3BvbnNlVHlwZTogXCJ0ZXh0XCIgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldEZpbHRlckNvbmZpZyhvcHRpb246IE5pY2VIdHRwT3B0aW9ucyA9IHt9KTogT2JzZXJ2YWJsZTxGaWx0ZXJDb25maWd1cmF0aW9uTW9kZWxbXT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLmdldDxGaWx0ZXJDb25maWd1cmF0aW9uTW9kZWxbXT4odGhpcy51cmwoXCJmaWx0ZXIvY29uZmlnXCIpLCBvcHRpb24pO1xuICAgIH1cblxuICAgIHB1YmxpYyBzZWFyY2hGaWx0ZXJWYWx1ZShpZDogc3RyaW5nLCB2YWx1ZTogc3RyaW5nKTogT2JzZXJ2YWJsZTxTZWxlY3RGaWx0ZXJWYWx1ZVtdPiB7XG4gICAgICAgIGlmICh2YWx1ZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICB2YWx1ZSA9IFwiXCI7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdGhpcy5odHRwLmdldDxTZWxlY3RGaWx0ZXJWYWx1ZVtdPih0aGlzLnVybChgZmlsdGVyL2NvbmZpZy92YWx1ZT9pZD0ke2lkfSZ2YWx1ZT0ke3ZhbHVlfWApKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc2VhcmNoRmlsdGVyUmVzb3VyY2VWYWx1ZShpZDogc3RyaW5nLCByZXNvdXJjZUlkOiBudW1iZXIpOiBPYnNlcnZhYmxlPFNlbGVjdEZpbHRlclZhbHVlPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PFNlbGVjdEZpbHRlclZhbHVlPih0aGlzLnVybChgZmlsdGVyL2NvbmZpZy9pZD9pZD0ke2lkfSZyZXNvdXJjZUlkPSR7cmVzb3VyY2VJZH1gKSk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIHVybChyb3V0ZT86IHN0cmluZywgcXVlcnlQYXJhbXM/OiBvYmplY3QpOiBzdHJpbmc7XG4gICAgcHJvdGVjdGVkIHVybChxdWVyeVBhcmFtczogb2JqZWN0KTogc3RyaW5nO1xuICAgIHByb3RlY3RlZCB1cmwoLi4uYXJnczogW3N0cmluZyB8IG9iamVjdCwgb2JqZWN0P10pOiBzdHJpbmcge1xuICAgICAgICBjb25zdCBbcm91dGUsIHF1ZXJ5UGFyYW1zXSA9IHRoaXMudHJhbnNmb3JtVXJsQXJncyhhcmdzKTtcbiAgICAgICAgY29uc3QgcGFyYW1zID0gcXVlcnlQYXJhbXMgPyBgPyR7UXVlcnlQYXJhbXNVdGlscy5mcm9tT2JqZWN0KHF1ZXJ5UGFyYW1zKX1gIDogXCJcIjtcbiAgICAgICAgaWYgKHJvdXRlKSB7XG4gICAgICAgICAgICByZXR1cm4gYCR7dGhpcy5maWx0ZXJBcGlVcmx9LyR7dGhpcy5wYXRofS8ke3JvdXRlfSR7cGFyYW1zfWA7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gYCR7dGhpcy5maWx0ZXJBcGlVcmx9LyR7dGhpcy5wYXRofSR7cGFyYW1zfWA7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB0cmFuc2Zvcm1VcmxBcmdzKGFyZ3M6IFtzdHJpbmcgfCBvYmplY3QsIG9iamVjdD9dKTogW3JvdXRlOiBzdHJpbmcsIHF1ZXJ5UGFyYW1zPzogb2JqZWN0XSB7XG4gICAgICAgIGNvbnN0IFtyb3V0ZU9mUXVlcnlQYXJhbXMsIHF1ZXJ5XSA9IGFyZ3M7XG4gICAgICAgIGlmIChhcmdzLmxlbmd0aCA9PT0gMSkge1xuICAgICAgICAgICAgaWYgKHR5cGVvZiByb3V0ZU9mUXVlcnlQYXJhbXMgPT09IFwic3RyaW5nXCIpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gW3JvdXRlT2ZRdWVyeVBhcmFtc107XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybiBbXCJcIiwgcm91dGVPZlF1ZXJ5UGFyYW1zXTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBbKHJvdXRlT2ZRdWVyeVBhcmFtcyBhcyBzdHJpbmcpID8/IFwiXCIsIHF1ZXJ5XTtcbiAgICB9XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSGFzTmljZUZpbHRlckFwaURlZmluaXRpb24ge1xuICAgIGV4Y2VwdGlvbkZhY3Rvcnk6IE5pY2VIdHRwRXhjZXB0aW9uRmFjdG9yeTtcbiAgICBodHRwQ2xpZW50OiBIdHRwQ2xpZW50O1xuICAgIGFwaVVybDogc3RyaW5nO1xuICAgIHBhdGg6IHN0cmluZztcblxuICAgIHVybChyb3V0ZT86IHN0cmluZyk6IHN0cmluZztcbiAgICBkZWxldGU8VD4ocm91dGU/OiBzdHJpbmcsIG9wdGlvbnM/OiBIdHRwT3B0aW9ucyk6IE9ic2VydmFibGU8VD47XG4gICAgZ2V0PFQ+KHJvdXRlPzogc3RyaW5nLCBvcHRpb25zPzogSHR0cE9wdGlvbnMpOiBPYnNlcnZhYmxlPFQ+O1xuICAgIHBhdGNoPFQ+KHJvdXRlPzogc3RyaW5nLCBib2R5PzogYW55LCBvcHRpb25zPzogSHR0cE9wdGlvbnMpOiBPYnNlcnZhYmxlPFQ+O1xuICAgIHBvc3Q8VD4ocm91dGU/OiBzdHJpbmcsIGJvZHk/OiBhbnksIG9wdGlvbnM/OiBIdHRwT3B0aW9ucyk6IE9ic2VydmFibGU8VD47XG4gICAgcHV0PFQ+KHJvdXRlPzogc3RyaW5nLCBib2R5PzogYW55LCBvcHRpb25zPzogSHR0cE9wdGlvbnMpOiBPYnNlcnZhYmxlPFQ+O1xufVxuXG5leHBvcnQgdHlwZSBOaWNlRmlsdGVyQXBpRGVmaW5pdGlvbkN0b3IgPSBDb25zdHJ1Y3RvcjxOaWNlRmlsdGVyQXBpRGVmaW5pdGlvbj4gJiBBYnN0cmFjdENvbnN0cnVjdG9yPE5pY2VGaWx0ZXJBcGlEZWZpbml0aW9uPjtcblxuZXhwb3J0IGNvbnN0IG1peGluTmljZUZpbHRlckFwaSA9IDxUPihtb2RlbD86IFR5cGU8VD4pID0+IHtcbiAgICByZXR1cm4gPEMgZXh0ZW5kcyBDb25zdHJ1Y3RvcjxIYXNOaWNlRmlsdGVyQXBpRGVmaW5pdGlvbj4+KGJhc2U6IEMpOiBOaWNlRmlsdGVyQXBpRGVmaW5pdGlvbkN0b3IgJiBDID0+IHtcbiAgICAgICAgcmV0dXJuIGNsYXNzIGV4dGVuZHMgYmFzZSB7XG4gICAgICAgICAgICBwdWJsaWMgZmlsdGVyKHF1ZXJ5TW9kZWw6IEZpbHRlclF1ZXJ5TW9kZWwsIG9wdGlvbjogTmljZUh0dHBPcHRpb25zID0ge30pOiBPYnNlcnZhYmxlPEZpbHRlclJlc3VsdE1vZGVsPFQ+PiB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMucG9zdDxGaWx0ZXJSZXN1bHRNb2RlbD4oXCJmaWx0ZXJcIiwgcXVlcnlNb2RlbCwgb3B0aW9uKS5waXBlKFxuICAgICAgICAgICAgICAgICAgICBtYXAoeCA9PiBtb2RlbCA/ICh7XG4gICAgICAgICAgICAgICAgICAgICAgICAuLi54LFxuICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWVzOiBwbGFpblRvSW5zdGFuY2UobW9kZWwsIHgudmFsdWVzKVxuICAgICAgICAgICAgICAgICAgICB9KSA6IHgpXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcHVibGljIGZpbHRlckNvdW50KHF1ZXJ5TW9kZWw6IEZpbHRlclF1ZXJ5TW9kZWwpOiBPYnNlcnZhYmxlPG51bWJlcj4ge1xuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnBvc3Q8bnVtYmVyPihcImZpbHRlci1jb3VudFwiLCBxdWVyeU1vZGVsKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcHVibGljIGRvd25sb2FkRGF0YSh0eXBlOiBzdHJpbmcsIHF1ZXJ5TW9kZWw6IEZpbHRlclF1ZXJ5TW9kZWwpOiBPYnNlcnZhYmxlPEJsb2I+IHtcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5wb3N0KGBkb3dubG9hZC8ke3R5cGV9YCwgcXVlcnlNb2RlbCwgeyByZXNwb25zZVR5cGU6IFwiYmxvYlwiIH0gYXMgYW55KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcHVibGljIGdldFByaW50YWJsZUh0bWwocXVlcnlNb2RlbDogRmlsdGVyUXVlcnlNb2RlbCk6IE9ic2VydmFibGU8c3RyaW5nPiB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMucG9zdChgZG93bmxvYWQvaHRtbGAsIHF1ZXJ5TW9kZWwsIHsgcmVzcG9uc2VUeXBlOiBcInRleHRcIiB9IGFzIGFueSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHB1YmxpYyBnZXRGaWx0ZXJDb25maWcob3B0aW9uOiBOaWNlSHR0cE9wdGlvbnMgPSB7fSk6IE9ic2VydmFibGU8RmlsdGVyQ29uZmlndXJhdGlvbk1vZGVsW10+IHtcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5nZXQ8RmlsdGVyQ29uZmlndXJhdGlvbk1vZGVsW10+KFwiZmlsdGVyL2NvbmZpZ1wiLCBvcHRpb24pO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwdWJsaWMgc2VhcmNoRmlsdGVyVmFsdWUoaWQ6IHN0cmluZywgdmFsdWU6IHN0cmluZyk6IE9ic2VydmFibGU8U2VsZWN0RmlsdGVyVmFsdWVbXT4ge1xuICAgICAgICAgICAgICAgIGlmICh2YWx1ZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgICAgIHZhbHVlID0gXCJcIjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5nZXQ8U2VsZWN0RmlsdGVyVmFsdWVbXT4oXCJmaWx0ZXIvY29uZmlnL3ZhbHVlXCIsIHtcbiAgICAgICAgICAgICAgICAgICAgcGFyYW1zOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZCxcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcHVibGljIHNlYXJjaEZpbHRlclJlc291cmNlVmFsdWUoaWQ6IHN0cmluZywgcmVzb3VyY2VJZDogbnVtYmVyKTogT2JzZXJ2YWJsZTxTZWxlY3RGaWx0ZXJWYWx1ZT4ge1xuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmdldDxTZWxlY3RGaWx0ZXJWYWx1ZT4oXCJmaWx0ZXIvY29uZmlnL2lkXCIsIHtcbiAgICAgICAgICAgICAgICAgICAgcGFyYW1zOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZCxcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlc291cmNlSWRcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBjb25zdHJ1Y3RvciguLi5hcmdzOiBhbnlbXSkge1xuICAgICAgICAgICAgICAgIHN1cGVyKC4uLmFyZ3MpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuICAgIH07XG59O1xuIl19
113
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLmFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25pY2UtZGF0YS1maWx0ZXIta2l0L3NyYy9saWIvYXBpL2ZpbHRlci5hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRXBELE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVyQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQWtDL0QsTUFBTSxPQUFPLGFBQWE7SUFDdEIsWUFBb0IsWUFBb0IsRUFBVSxJQUFZLEVBQVksSUFBZ0I7UUFBdEUsaUJBQVksR0FBWixZQUFZLENBQVE7UUFBVSxTQUFJLEdBQUosSUFBSSxDQUFRO1FBQVksU0FBSSxHQUFKLElBQUksQ0FBWTtJQUMxRixDQUFDO0lBRU0sTUFBTSxDQUFDLFVBQTRCLEVBQUUsU0FBMEIsRUFBRTtRQUNwRSxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUF1QixJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUN4RixDQUFDO0lBRU0sV0FBVyxDQUFDLFVBQTRCO1FBQzNDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQVMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxjQUFjLENBQUMsRUFBRSxVQUFVLENBQUMsQ0FBQztJQUN4RSxDQUFDO0lBRU0sWUFBWSxDQUFDLElBQVksRUFBRSxVQUE0QjtRQUMxRCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxJQUFJLEVBQUUsQ0FBQyxFQUFFLFVBQVUsRUFBRSxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBQzlGLENBQUM7SUFFTSxnQkFBZ0IsQ0FB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RixPQUFPLElBQUksQ0FBQyxHQUFHLENBQW9CLGtCQUFrQixFQUFFO29CQUNuRCxNQUFNLEVBQUU7d0JBQ0osR0FBRyxPQUFPLEVBQUUsTUFBTTt3QkFDbEIsRUFBRTt3QkFDRixVQUFVO3FCQUNiO2lCQUNKLENBQUMsQ0FBQztZQUNQLENBQUM7U0FDSixDQUFDO0lBQ04sQ0FBQyxDQUFDO0FBQ04sQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCwgSHR0cENvbnRleHQsIEh0dHBIZWFkZXJzLCBIdHRwUGFyYW1zIH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vbi9odHRwXCI7XG5pbXBvcnQgeyBUeXBlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IEh0dHBPcHRpb25zLCBOaWNlSHR0cEV4Y2VwdGlvbkZhY3RvcnkgfSBmcm9tIFwiQHJlY3Vyc3l2ZS9uaWNlLXVpLWtpdC52MlwiO1xuaW1wb3J0IHsgQWJzdHJhY3RDb25zdHJ1Y3RvciwgQ29uc3RydWN0b3IgfSBmcm9tIFwiQHJlY3Vyc3l2ZS9uaWNlLXVpLWtpdC52Mi9saWIvdHlwZXMvY29uc3RydWN0b3JcIjtcbmltcG9ydCB7IHBsYWluVG9JbnN0YW5jZSB9IGZyb20gXCJjbGFzcy10cmFuc2Zvcm1lclwiO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gXCJyeGpzXCI7XG5pbXBvcnQgeyBtYXAgfSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcbmltcG9ydCB7IEZpbHRlckNvbmZpZ3VyYXRpb25Nb2RlbCwgRmlsdGVyUXVlcnlNb2RlbCwgRmlsdGVyUmVzdWx0TW9kZWwsIFNlbGVjdEZpbHRlclZhbHVlIH0gZnJvbSBcIi4uL21vZGVscy9maWx0ZXIubW9kZWxcIjtcbmltcG9ydCB7IFF1ZXJ5UGFyYW1zVXRpbHMgfSBmcm9tIFwiLi4vdXRpbHMvcXVlcnktcGFyYW1zLnV0aWxzXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgTmljZUh0dHBPcHRpb25zIHtcbiAgICBoZWFkZXJzPzogSHR0cEhlYWRlcnMgfCB7XG4gICAgICAgIFtoZWFkZXI6IHN0cmluZ106IHN0cmluZyB8IHN0cmluZ1tdO1xuICAgIH07XG4gICAgY29udGV4dD86IEh0dHBDb250ZXh0O1xuICAgIHBhcmFtcz86IEh0dHBQYXJhbXMgfCB7XG4gICAgICAgIFtwYXJhbTogc3RyaW5nXTogc3RyaW5nIHwgbnVtYmVyIHwgYm9vbGVhbiB8IFJlYWRvbmx5QXJyYXk8c3RyaW5nIHwgbnVtYmVyIHwgYm9vbGVhbj47XG4gICAgfTtcbiAgICByZXBvcnRQcm9ncmVzcz86IGJvb2xlYW47XG4gICAgd2l0aENyZWRlbnRpYWxzPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBRdWVyeVBhcmFtcyB7XG4gICAgW3BhcmFtOiBzdHJpbmddOiBhbnk7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTmljZUZpbHRlckFwaURlZmluaXRpb24ge1xuICAgIGZpbHRlcihxdWVyeU1vZGVsOiBGaWx0ZXJRdWVyeU1vZGVsLCBvcHRpb24/OiBIdHRwT3B0aW9ucyk6IE9ic2VydmFibGU8RmlsdGVyUmVzdWx0TW9kZWw+O1xuXG4gICAgZmlsdGVyQ291bnQocXVlcnlNb2RlbDogRmlsdGVyUXVlcnlNb2RlbCk6IE9ic2VydmFibGU8bnVtYmVyPjtcblxuICAgIGRvd25sb2FkRGF0YSh0eXBlOiBzdHJpbmcsIHF1ZXJ5TW9kZWw6IEZpbHRlclF1ZXJ5TW9kZWwpOiBPYnNlcnZhYmxlPEJsb2I+O1xuXG4gICAgZ2V0UHJpbnRhYmxlSHRtbChxdWVyeU1vZGVsOiBGaWx0ZXJRdWVyeU1vZGVsKTogT2JzZXJ2YWJsZTxzdHJpbmc+O1xuXG4gICAgZ2V0RmlsdGVyQ29uZmlnKG9wdGlvbj86IEh0dHBPcHRpb25zKTogT2JzZXJ2YWJsZTxGaWx0ZXJDb25maWd1cmF0aW9uTW9kZWxbXT47XG5cbiAgICBzZWFyY2hGaWx0ZXJWYWx1ZShpZDogc3RyaW5nLCB2YWx1ZTogc3RyaW5nLCBvcHRpb25zPzogSHR0cE9wdGlvbnMpOiBPYnNlcnZhYmxlPFNlbGVjdEZpbHRlclZhbHVlW10+O1xuXG4gICAgc2VhcmNoRmlsdGVyUmVzb3VyY2VWYWx1ZShpZDogc3RyaW5nLCByZXNvdXJjZUlkOiBudW1iZXIsIG9wdGlvbnM/OiBIdHRwT3B0aW9ucyk6IE9ic2VydmFibGU8U2VsZWN0RmlsdGVyVmFsdWU+O1xufVxuXG5leHBvcnQgY2xhc3MgTmljZUZpbHRlckFwaTxUPiBpbXBsZW1lbnRzIE5pY2VGaWx0ZXJBcGlEZWZpbml0aW9uIHtcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGZpbHRlckFwaVVybDogc3RyaW5nLCBwcml2YXRlIHBhdGg6IHN0cmluZywgcHJvdGVjdGVkIGh0dHA6IEh0dHBDbGllbnQpIHtcbiAgICB9XG5cbiAgICBwdWJsaWMgZmlsdGVyKHF1ZXJ5TW9kZWw6IEZpbHRlclF1ZXJ5TW9kZWwsIG9wdGlvbjogTmljZUh0dHBPcHRpb25zID0ge30pOiBPYnNlcnZhYmxlPEZpbHRlclJlc3VsdE1vZGVsPFQ+PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxGaWx0ZXJSZXN1bHRNb2RlbDxUPj4odGhpcy51cmwoXCJmaWx0ZXJcIiksIHF1ZXJ5TW9kZWwsIG9wdGlvbik7XG4gICAgfVxuXG4gICAgcHVibGljIGZpbHRlckNvdW50KHF1ZXJ5TW9kZWw6IEZpbHRlclF1ZXJ5TW9kZWwpOiBPYnNlcnZhYmxlPG51bWJlcj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8bnVtYmVyPih0aGlzLnVybChcImZpbHRlci1jb3VudFwiKSwgcXVlcnlNb2RlbCk7XG4gICAgfVxuXG4gICAgcHVibGljIGRvd25sb2FkRGF0YSh0eXBlOiBzdHJpbmcsIHF1ZXJ5TW9kZWw6IEZpbHRlclF1ZXJ5TW9kZWwpOiBPYnNlcnZhYmxlPEJsb2I+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHRoaXMudXJsKGBkb3dubG9hZC8ke3R5cGV9YCksIHF1ZXJ5TW9kZWwsIHsgcmVzcG9uc2VUeXBlOiBcImJsb2JcIiB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0UHJpbnRhYmxlSHRtbChxdWVyeU1vZGVsOiBGaWx0ZXJRdWVyeU1vZGVsKTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHRoaXMudXJsKGBkb3dubG9hZC9odG1sYCksIHF1ZXJ5TW9kZWwsIHsgcmVzcG9uc2VUeXBlOiBcInRleHRcIiB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0RmlsdGVyQ29uZmlnKG9wdGlvbjogTmljZUh0dHBPcHRpb25zID0ge30pOiBPYnNlcnZhYmxlPEZpbHRlckNvbmZpZ3VyYXRpb25Nb2RlbFtdPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PEZpbHRlckNvbmZpZ3VyYXRpb25Nb2RlbFtdPih0aGlzLnVybChcImZpbHRlci9jb25maWdcIiksIG9wdGlvbik7XG4gICAgfVxuXG4gICAgcHVibGljIHNlYXJjaEZpbHRlclZhbHVlKGlkOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcsIG9wdGlvbnM/OiBIdHRwT3B0aW9ucyk6IE9ic2VydmFibGU8U2VsZWN0RmlsdGVyVmFsdWVbXT4ge1xuICAgICAgICBpZiAodmFsdWUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgdmFsdWUgPSBcIlwiO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8U2VsZWN0RmlsdGVyVmFsdWVbXT4odGhpcy51cmwoYGZpbHRlci9jb25maWcvdmFsdWVgKSwge1xuICAgICAgICAgICAgcGFyYW1zOiB7XG4gICAgICAgICAgICAgICAgLi4ub3B0aW9ucz8ucGFyYW1zLFxuICAgICAgICAgICAgICAgIGlkLFxuICAgICAgICAgICAgICAgIHZhbHVlXG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBzZWFyY2hGaWx0ZXJSZXNvdXJjZVZhbHVlKGlkOiBzdHJpbmcsIHJlc291cmNlSWQ6IG51bWJlciwgb3B0aW9ucz86IEh0dHBPcHRpb25zKTogT2JzZXJ2YWJsZTxTZWxlY3RGaWx0ZXJWYWx1ZT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLmdldDxTZWxlY3RGaWx0ZXJWYWx1ZT4odGhpcy51cmwoYGZpbHRlci9jb25maWcvaWRgKSwge1xuICAgICAgICAgICAgcGFyYW1zOiB7XG4gICAgICAgICAgICAgICAgLi4ub3B0aW9ucz8ucGFyYW1zLFxuICAgICAgICAgICAgICAgIGlkLFxuICAgICAgICAgICAgICAgIHJlc291cmNlSWRcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIHVybChyb3V0ZT86IHN0cmluZywgcXVlcnlQYXJhbXM/OiBvYmplY3QpOiBzdHJpbmc7XG4gICAgcHJvdGVjdGVkIHVybChxdWVyeVBhcmFtczogb2JqZWN0KTogc3RyaW5nO1xuICAgIHByb3RlY3RlZCB1cmwoLi4uYXJnczogW3N0cmluZyB8IG9iamVjdCwgb2JqZWN0P10pOiBzdHJpbmcge1xuICAgICAgICBjb25zdCBbcm91dGUsIHF1ZXJ5UGFyYW1zXSA9IHRoaXMudHJhbnNmb3JtVXJsQXJncyhhcmdzKTtcbiAgICAgICAgY29uc3QgcGFyYW1zID0gcXVlcnlQYXJhbXMgPyBgPyR7UXVlcnlQYXJhbXNVdGlscy5mcm9tT2JqZWN0KHF1ZXJ5UGFyYW1zKX1gIDogXCJcIjtcbiAgICAgICAgaWYgKHJvdXRlKSB7XG4gICAgICAgICAgICByZXR1cm4gYCR7dGhpcy5maWx0ZXJBcGlVcmx9LyR7dGhpcy5wYXRofS8ke3JvdXRlfSR7cGFyYW1zfWA7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gYCR7dGhpcy5maWx0ZXJBcGlVcmx9LyR7dGhpcy5wYXRofSR7cGFyYW1zfWA7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB0cmFuc2Zvcm1VcmxBcmdzKGFyZ3M6IFtzdHJpbmcgfCBvYmplY3QsIG9iamVjdD9dKTogW3JvdXRlOiBzdHJpbmcsIHF1ZXJ5UGFyYW1zPzogb2JqZWN0XSB7XG4gICAgICAgIGNvbnN0IFtyb3V0ZU9mUXVlcnlQYXJhbXMsIHF1ZXJ5XSA9IGFyZ3M7XG4gICAgICAgIGlmIChhcmdzLmxlbmd0aCA9PT0gMSkge1xuICAgICAgICAgICAgaWYgKHR5cGVvZiByb3V0ZU9mUXVlcnlQYXJhbXMgPT09IFwic3RyaW5nXCIpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gW3JvdXRlT2ZRdWVyeVBhcmFtc107XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybiBbXCJcIiwgcm91dGVPZlF1ZXJ5UGFyYW1zXTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBbKHJvdXRlT2ZRdWVyeVBhcmFtcyBhcyBzdHJpbmcpID8/IFwiXCIsIHF1ZXJ5XTtcbiAgICB9XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSGFzTmljZUZpbHRlckFwaURlZmluaXRpb24ge1xuICAgIGV4Y2VwdGlvbkZhY3Rvcnk6IE5pY2VIdHRwRXhjZXB0aW9uRmFjdG9yeTtcbiAgICBodHRwQ2xpZW50OiBIdHRwQ2xpZW50O1xuICAgIGFwaVVybDogc3RyaW5nO1xuICAgIHBhdGg6IHN0cmluZztcblxuICAgIHVybChyb3V0ZT86IHN0cmluZyk6IHN0cmluZztcblxuICAgIGRlbGV0ZTxUPihyb3V0ZT86IHN0cmluZywgb3B0aW9ucz86IEh0dHBPcHRpb25zKTogT2JzZXJ2YWJsZTxUPjtcblxuICAgIGdldDxUPihyb3V0ZT86IHN0cmluZywgb3B0aW9ucz86IEh0dHBPcHRpb25zKTogT2JzZXJ2YWJsZTxUPjtcblxuICAgIHBhdGNoPFQ+KHJvdXRlPzogc3RyaW5nLCBib2R5PzogYW55LCBvcHRpb25zPzogSHR0cE9wdGlvbnMpOiBPYnNlcnZhYmxlPFQ+O1xuXG4gICAgcG9zdDxUPihyb3V0ZT86IHN0cmluZywgYm9keT86IGFueSwgb3B0aW9ucz86IEh0dHBPcHRpb25zKTogT2JzZXJ2YWJsZTxUPjtcblxuICAgIHB1dDxUPihyb3V0ZT86IHN0cmluZywgYm9keT86IGFueSwgb3B0aW9ucz86IEh0dHBPcHRpb25zKTogT2JzZXJ2YWJsZTxUPjtcbn1cblxuZXhwb3J0IHR5cGUgTmljZUZpbHRlckFwaURlZmluaXRpb25DdG9yID0gQ29uc3RydWN0b3I8TmljZUZpbHRlckFwaURlZmluaXRpb24+ICYgQWJzdHJhY3RDb25zdHJ1Y3RvcjxOaWNlRmlsdGVyQXBpRGVmaW5pdGlvbj47XG5cbmV4cG9ydCBjb25zdCBtaXhpbk5pY2VGaWx0ZXJBcGkgPSA8VD4obW9kZWw/OiBUeXBlPFQ+KSA9PiB7XG4gICAgcmV0dXJuIDxDIGV4dGVuZHMgQ29uc3RydWN0b3I8SGFzTmljZUZpbHRlckFwaURlZmluaXRpb24+PihiYXNlOiBDKTogTmljZUZpbHRlckFwaURlZmluaXRpb25DdG9yICYgQyA9PiB7XG4gICAgICAgIHJldHVybiBjbGFzcyBleHRlbmRzIGJhc2Uge1xuICAgICAgICAgICAgY29uc3RydWN0b3IoLi4uYXJnczogYW55W10pIHtcbiAgICAgICAgICAgICAgICBzdXBlciguLi5hcmdzKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcHVibGljIGZpbHRlcihxdWVyeU1vZGVsOiBGaWx0ZXJRdWVyeU1vZGVsLCBvcHRpb246IE5pY2VIdHRwT3B0aW9ucyA9IHt9KTogT2JzZXJ2YWJsZTxGaWx0ZXJSZXN1bHRNb2RlbDxUPj4ge1xuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnBvc3Q8RmlsdGVyUmVzdWx0TW9kZWw+KFwiZmlsdGVyXCIsIHF1ZXJ5TW9kZWwsIG9wdGlvbikucGlwZShcbiAgICAgICAgICAgICAgICAgICAgbWFwKHggPT4gbW9kZWwgPyAoe1xuICAgICAgICAgICAgICAgICAgICAgICAgLi4ueCxcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlczogcGxhaW5Ub0luc3RhbmNlKG1vZGVsLCB4LnZhbHVlcylcbiAgICAgICAgICAgICAgICAgICAgfSkgOiB4KVxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHB1YmxpYyBmaWx0ZXJDb3VudChxdWVyeU1vZGVsOiBGaWx0ZXJRdWVyeU1vZGVsKTogT2JzZXJ2YWJsZTxudW1iZXI+IHtcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5wb3N0PG51bWJlcj4oXCJmaWx0ZXItY291bnRcIiwgcXVlcnlNb2RlbCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHB1YmxpYyBkb3dubG9hZERhdGEodHlwZTogc3RyaW5nLCBxdWVyeU1vZGVsOiBGaWx0ZXJRdWVyeU1vZGVsKTogT2JzZXJ2YWJsZTxCbG9iPiB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMucG9zdChgZG93bmxvYWQvJHt0eXBlfWAsIHF1ZXJ5TW9kZWwsIHsgcmVzcG9uc2VUeXBlOiBcImJsb2JcIiB9IGFzIGFueSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHB1YmxpYyBnZXRQcmludGFibGVIdG1sKHF1ZXJ5TW9kZWw6IEZpbHRlclF1ZXJ5TW9kZWwpOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnBvc3QoYGRvd25sb2FkL2h0bWxgLCBxdWVyeU1vZGVsLCB7IHJlc3BvbnNlVHlwZTogXCJ0ZXh0XCIgfSBhcyBhbnkpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwdWJsaWMgZ2V0RmlsdGVyQ29uZmlnKG9wdGlvbjogTmljZUh0dHBPcHRpb25zID0ge30pOiBPYnNlcnZhYmxlPEZpbHRlckNvbmZpZ3VyYXRpb25Nb2RlbFtdPiB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuZ2V0PEZpbHRlckNvbmZpZ3VyYXRpb25Nb2RlbFtdPihcImZpbHRlci9jb25maWdcIiwgb3B0aW9uKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcHVibGljIHNlYXJjaEZpbHRlclZhbHVlKGlkOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcsIG9wdGlvbnM/OiBIdHRwT3B0aW9ucyk6IE9ic2VydmFibGU8U2VsZWN0RmlsdGVyVmFsdWVbXT4ge1xuICAgICAgICAgICAgICAgIGlmICh2YWx1ZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgICAgIHZhbHVlID0gXCJcIjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5nZXQ8U2VsZWN0RmlsdGVyVmFsdWVbXT4oXCJmaWx0ZXIvY29uZmlnL3ZhbHVlXCIsIHtcbiAgICAgICAgICAgICAgICAgICAgcGFyYW1zOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAuLi5vcHRpb25zPy5wYXJhbXMsXG4gICAgICAgICAgICAgICAgICAgICAgICBpZCxcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcHVibGljIHNlYXJjaEZpbHRlclJlc291cmNlVmFsdWUoaWQ6IHN0cmluZywgcmVzb3VyY2VJZDogbnVtYmVyLCBvcHRpb25zPzogSHR0cE9wdGlvbnMpOiBPYnNlcnZhYmxlPFNlbGVjdEZpbHRlclZhbHVlPiB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuZ2V0PFNlbGVjdEZpbHRlclZhbHVlPihcImZpbHRlci9jb25maWcvaWRcIiwge1xuICAgICAgICAgICAgICAgICAgICBwYXJhbXM6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC4uLm9wdGlvbnM/LnBhcmFtcyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGlkLFxuICAgICAgICAgICAgICAgICAgICAgICAgcmVzb3VyY2VJZFxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH07XG4gICAgfTtcbn07XG4iXX0=
@@ -18,11 +18,11 @@ export class NiceFilterService {
18
18
  getFilterConfig(option = {}) {
19
19
  return this.api?.getFilterConfig(option);
20
20
  }
21
- searchFilterValue(filterConfig, value) {
22
- return this.api?.searchFilterValue(filterConfig.id, value);
21
+ searchFilterValue(filterConfig, value, options) {
22
+ return this.api?.searchFilterValue(filterConfig.id, value, options);
23
23
  }
24
- searchFilterResourceValue(filterConfig, resourceId) {
25
- return this.api?.searchFilterResourceValue(filterConfig.id, resourceId);
24
+ searchFilterResourceValue(filterConfig, resourceId, options) {
25
+ return this.api?.searchFilterResourceValue(filterConfig.id, resourceId, options);
26
26
  }
27
27
  }
28
28
  NiceFilterService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NiceFilterService, deps: [{ token: NiceFilterApi }], target: i0.ɵɵFactoryTarget.Injectable });
@@ -33,4 +33,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
33
33
  type: Inject,
34
34
  args: [NiceFilterApi]
35
35
  }] }]; } });
36
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1maWx0ZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25pY2UtZGF0YS1maWx0ZXIta2l0L3NyYy9saWIvY29tcG9uZW50cy9iYXNlLWxpc3QvcHJvdmlkZXJzL2Jhc2UtZmlsdGVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFbkQsT0FBTyxFQUFFLGFBQWEsRUFBNEMsTUFBTSx5QkFBeUIsQ0FBQztBQUVsRyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7O0FBYTFELE1BQU0sT0FBTyxpQkFBaUI7SUFDMUIsWUFBNkMsR0FBNkI7UUFBN0IsUUFBRyxHQUFILEdBQUcsQ0FBMEI7SUFBRyxDQUFDO0lBRXZFLE1BQU0sQ0FBQyxNQUE2QixFQUFFLFNBQTBCLEVBQUU7UUFDckUsT0FBTyxJQUFJLENBQUMsR0FBRyxFQUFFLE1BQU0sQ0FBQyxXQUFXLENBQUMsbUJBQW1CLENBQUMsTUFBTSxDQUFDLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDN0UsQ0FBQztJQUVNLE9BQU8sQ0FBQyxJQUFZLEVBQUUsVUFBaUM7UUFDMUQsT0FBTyxJQUFJLENBQUMsR0FBRyxFQUFFLFlBQVksQ0FBQyxJQUFJLEVBQUUsV0FBVyxDQUFDLG1CQUFtQixDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7SUFDckYsQ0FBQztJQUVNLGdCQUFnQixDQUFDLFVBQWlDO1FBQ3JELE9BQU8sSUFBSSxDQUFDLEdBQUcsRUFBRSxnQkFBZ0IsQ0FBQyxXQUFXLENBQUMsbUJBQW1CLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztJQUNuRixDQUFDO0lBRU0sZUFBZSxDQUFDLFNBQTBCLEVBQUU7UUFDL0MsT0FBTyxJQUFJLENBQUMsR0FBRyxFQUFFLGVBQWUsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRU0saUJBQWlCLENBQUMsWUFBc0MsRUFBRSxLQUFhO1FBQzFFLE9BQU8sSUFBSSxDQUFDLEdBQUcsRUFBRSxpQkFBaUIsQ0FBQyxZQUFZLENBQUMsRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFFTSx5QkFBeUIsQ0FDNUIsWUFBc0MsRUFDdEMsVUFBa0I7UUFFbEIsT0FBTyxJQUFJLENBQUMsR0FBRyxFQUFFLHlCQUF5QixDQUFDLFlBQVksQ0FBQyxFQUFFLEVBQUUsVUFBVSxDQUFDLENBQUM7SUFDNUUsQ0FBQzs7OEdBNUJRLGlCQUFpQixrQkFDTixhQUFhO2tIQUR4QixpQkFBaUI7MkZBQWpCLGlCQUFpQjtrQkFEN0IsVUFBVTs7MEJBRU0sTUFBTTsyQkFBQyxhQUFhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tIFwicnhqc1wiO1xuaW1wb3J0IHsgTmljZUZpbHRlckFwaSwgTmljZUZpbHRlckFwaURlZmluaXRpb24sIE5pY2VIdHRwT3B0aW9ucyB9IGZyb20gXCIuLi8uLi8uLi9hcGkvZmlsdGVyLmFwaVwiO1xuaW1wb3J0IHsgRmlsdGVyQ29uZmlndXJhdGlvbk1vZGVsLCBGaWx0ZXJQYXJhbWV0ZXJzTW9kZWwsIEZpbHRlclJlc3VsdE1vZGVsLCBTZWxlY3RGaWx0ZXJWYWx1ZSB9IGZyb20gXCIuLi8uLi8uLi9tb2RlbHMvZmlsdGVyLm1vZGVsXCI7XG5pbXBvcnQgeyBGaWx0ZXJVdGlscyB9IGZyb20gXCIuLi8uLi8uLi91dGlscy9maWx0ZXIudXRpbHNcIjtcblxuZXhwb3J0IGludGVyZmFjZSBJTmljZUZpbHRlclNlcnZpY2U8VD4ge1xuICAgIGdldEZpbHRlckNvbmZpZyhvcHRpb246IE5pY2VIdHRwT3B0aW9ucyk6IE9ic2VydmFibGU8RmlsdGVyQ29uZmlndXJhdGlvbk1vZGVsW10+O1xuXG4gICAgZmlsdGVyKHBhcmFtczogRmlsdGVyUGFyYW1ldGVyc01vZGVsLCBvcHRpb246IE5pY2VIdHRwT3B0aW9ucyk6IE9ic2VydmFibGU8RmlsdGVyUmVzdWx0TW9kZWw8VD4+O1xuXG4gICAgZ2V0RmlsZSh0eXBlOiBzdHJpbmcsIHBhcmFtZXRlcnM6IEZpbHRlclBhcmFtZXRlcnNNb2RlbCk6IE9ic2VydmFibGU8QmxvYj47XG5cbiAgICBnZXRQcmludGFibGVIdG1sKHBhcmFtZXRlcnM6IEZpbHRlclBhcmFtZXRlcnNNb2RlbCk6IE9ic2VydmFibGU8c3RyaW5nPjtcbn1cblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIE5pY2VGaWx0ZXJTZXJ2aWNlPFQ+IGltcGxlbWVudHMgSU5pY2VGaWx0ZXJTZXJ2aWNlPFQ+IHtcbiAgICBjb25zdHJ1Y3RvcihASW5qZWN0KE5pY2VGaWx0ZXJBcGkpIHByb3RlY3RlZCBhcGk/OiBOaWNlRmlsdGVyQXBpRGVmaW5pdGlvbikge31cblxuICAgIHB1YmxpYyBmaWx0ZXIocGFyYW1zOiBGaWx0ZXJQYXJhbWV0ZXJzTW9kZWwsIG9wdGlvbjogTmljZUh0dHBPcHRpb25zID0ge30pOiBPYnNlcnZhYmxlPEZpbHRlclJlc3VsdE1vZGVsPFQ+PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaT8uZmlsdGVyKEZpbHRlclV0aWxzLnBhcmFtZXRlcnNUb1JlcXVlc3QocGFyYW1zKSwgb3B0aW9uKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0RmlsZSh0eXBlOiBzdHJpbmcsIHBhcmFtZXRlcnM6IEZpbHRlclBhcmFtZXRlcnNNb2RlbCk6IE9ic2VydmFibGU8QmxvYj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGk/LmRvd25sb2FkRGF0YSh0eXBlLCBGaWx0ZXJVdGlscy5wYXJhbWV0ZXJzVG9SZXF1ZXN0KHBhcmFtZXRlcnMpKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0UHJpbnRhYmxlSHRtbChwYXJhbWV0ZXJzOiBGaWx0ZXJQYXJhbWV0ZXJzTW9kZWwpOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGk/LmdldFByaW50YWJsZUh0bWwoRmlsdGVyVXRpbHMucGFyYW1ldGVyc1RvUmVxdWVzdChwYXJhbWV0ZXJzKSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldEZpbHRlckNvbmZpZyhvcHRpb246IE5pY2VIdHRwT3B0aW9ucyA9IHt9KTogT2JzZXJ2YWJsZTxGaWx0ZXJDb25maWd1cmF0aW9uTW9kZWxbXT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGk/LmdldEZpbHRlckNvbmZpZyhvcHRpb24pO1xuICAgIH1cblxuICAgIHB1YmxpYyBzZWFyY2hGaWx0ZXJWYWx1ZShmaWx0ZXJDb25maWc6IEZpbHRlckNvbmZpZ3VyYXRpb25Nb2RlbCwgdmFsdWU6IHN0cmluZyk6IE9ic2VydmFibGU8U2VsZWN0RmlsdGVyVmFsdWVbXT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGk/LnNlYXJjaEZpbHRlclZhbHVlKGZpbHRlckNvbmZpZy5pZCwgdmFsdWUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzZWFyY2hGaWx0ZXJSZXNvdXJjZVZhbHVlKFxuICAgICAgICBmaWx0ZXJDb25maWc6IEZpbHRlckNvbmZpZ3VyYXRpb25Nb2RlbCxcbiAgICAgICAgcmVzb3VyY2VJZDogbnVtYmVyXG4gICAgKTogT2JzZXJ2YWJsZTxTZWxlY3RGaWx0ZXJWYWx1ZT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGk/LnNlYXJjaEZpbHRlclJlc291cmNlVmFsdWUoZmlsdGVyQ29uZmlnLmlkLCByZXNvdXJjZUlkKTtcbiAgICB9XG59XG4iXX0=
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1maWx0ZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25pY2UtZGF0YS1maWx0ZXIta2l0L3NyYy9saWIvY29tcG9uZW50cy9iYXNlLWxpc3QvcHJvdmlkZXJzL2Jhc2UtZmlsdGVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFbkQsT0FBTyxFQUFFLGFBQWEsRUFBNEMsTUFBTSx5QkFBeUIsQ0FBQztBQUVsRyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7O0FBYzFELE1BQU0sT0FBTyxpQkFBaUI7SUFDMUIsWUFBNkMsR0FBNkI7UUFBN0IsUUFBRyxHQUFILEdBQUcsQ0FBMEI7SUFBRyxDQUFDO0lBRXZFLE1BQU0sQ0FBQyxNQUE2QixFQUFFLFNBQTBCLEVBQUU7UUFDckUsT0FBTyxJQUFJLENBQUMsR0FBRyxFQUFFLE1BQU0sQ0FBQyxXQUFXLENBQUMsbUJBQW1CLENBQUMsTUFBTSxDQUFDLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDN0UsQ0FBQztJQUVNLE9BQU8sQ0FBQyxJQUFZLEVBQUUsVUFBaUM7UUFDMUQsT0FBTyxJQUFJLENBQUMsR0FBRyxFQUFFLFlBQVksQ0FBQyxJQUFJLEVBQUUsV0FBVyxDQUFDLG1CQUFtQixDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7SUFDckYsQ0FBQztJQUVNLGdCQUFnQixDQUFDLFVBQWlDO1FBQ3JELE9BQU8sSUFBSSxDQUFDLEdBQUcsRUFBRSxnQkFBZ0IsQ0FBQyxXQUFXLENBQUMsbUJBQW1CLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztJQUNuRixDQUFDO0lBRU0sZUFBZSxDQUFDLFNBQTBCLEVBQUU7UUFDL0MsT0FBTyxJQUFJLENBQUMsR0FBRyxFQUFFLGVBQWUsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRU0saUJBQWlCLENBQ3BCLFlBQXNDLEVBQ3RDLEtBQWEsRUFDYixPQUFxQjtRQUVyQixPQUFPLElBQUksQ0FBQyxHQUFHLEVBQUUsaUJBQWlCLENBQUMsWUFBWSxDQUFDLEVBQUUsRUFBRSxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDeEUsQ0FBQztJQUVNLHlCQUF5QixDQUM1QixZQUFzQyxFQUN0QyxVQUFrQixFQUNsQixPQUFxQjtRQUVyQixPQUFPLElBQUksQ0FBQyxHQUFHLEVBQUUseUJBQXlCLENBQUMsWUFBWSxDQUFDLEVBQUUsRUFBRSxVQUFVLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDckYsQ0FBQzs7OEdBakNRLGlCQUFpQixrQkFDTixhQUFhO2tIQUR4QixpQkFBaUI7MkZBQWpCLGlCQUFpQjtrQkFEN0IsVUFBVTs7MEJBRU0sTUFBTTsyQkFBQyxhQUFhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tIFwicnhqc1wiO1xuaW1wb3J0IHsgTmljZUZpbHRlckFwaSwgTmljZUZpbHRlckFwaURlZmluaXRpb24sIE5pY2VIdHRwT3B0aW9ucyB9IGZyb20gXCIuLi8uLi8uLi9hcGkvZmlsdGVyLmFwaVwiO1xuaW1wb3J0IHsgRmlsdGVyQ29uZmlndXJhdGlvbk1vZGVsLCBGaWx0ZXJQYXJhbWV0ZXJzTW9kZWwsIEZpbHRlclJlc3VsdE1vZGVsLCBTZWxlY3RGaWx0ZXJWYWx1ZSB9IGZyb20gXCIuLi8uLi8uLi9tb2RlbHMvZmlsdGVyLm1vZGVsXCI7XG5pbXBvcnQgeyBGaWx0ZXJVdGlscyB9IGZyb20gXCIuLi8uLi8uLi91dGlscy9maWx0ZXIudXRpbHNcIjtcbmltcG9ydCB7IEh0dHBPcHRpb25zIH0gZnJvbSBcIkByZWN1cnN5dmUvbmljZS11aS1raXQudjJcIjtcblxuZXhwb3J0IGludGVyZmFjZSBJTmljZUZpbHRlclNlcnZpY2U8VD4ge1xuICAgIGdldEZpbHRlckNvbmZpZyhvcHRpb246IE5pY2VIdHRwT3B0aW9ucyk6IE9ic2VydmFibGU8RmlsdGVyQ29uZmlndXJhdGlvbk1vZGVsW10+O1xuXG4gICAgZmlsdGVyKHBhcmFtczogRmlsdGVyUGFyYW1ldGVyc01vZGVsLCBvcHRpb246IE5pY2VIdHRwT3B0aW9ucyk6IE9ic2VydmFibGU8RmlsdGVyUmVzdWx0TW9kZWw8VD4+O1xuXG4gICAgZ2V0RmlsZSh0eXBlOiBzdHJpbmcsIHBhcmFtZXRlcnM6IEZpbHRlclBhcmFtZXRlcnNNb2RlbCk6IE9ic2VydmFibGU8QmxvYj47XG5cbiAgICBnZXRQcmludGFibGVIdG1sKHBhcmFtZXRlcnM6IEZpbHRlclBhcmFtZXRlcnNNb2RlbCk6IE9ic2VydmFibGU8c3RyaW5nPjtcbn1cblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIE5pY2VGaWx0ZXJTZXJ2aWNlPFQ+IGltcGxlbWVudHMgSU5pY2VGaWx0ZXJTZXJ2aWNlPFQ+IHtcbiAgICBjb25zdHJ1Y3RvcihASW5qZWN0KE5pY2VGaWx0ZXJBcGkpIHByb3RlY3RlZCBhcGk/OiBOaWNlRmlsdGVyQXBpRGVmaW5pdGlvbikge31cblxuICAgIHB1YmxpYyBmaWx0ZXIocGFyYW1zOiBGaWx0ZXJQYXJhbWV0ZXJzTW9kZWwsIG9wdGlvbjogTmljZUh0dHBPcHRpb25zID0ge30pOiBPYnNlcnZhYmxlPEZpbHRlclJlc3VsdE1vZGVsPFQ+PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaT8uZmlsdGVyKEZpbHRlclV0aWxzLnBhcmFtZXRlcnNUb1JlcXVlc3QocGFyYW1zKSwgb3B0aW9uKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0RmlsZSh0eXBlOiBzdHJpbmcsIHBhcmFtZXRlcnM6IEZpbHRlclBhcmFtZXRlcnNNb2RlbCk6IE9ic2VydmFibGU8QmxvYj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGk/LmRvd25sb2FkRGF0YSh0eXBlLCBGaWx0ZXJVdGlscy5wYXJhbWV0ZXJzVG9SZXF1ZXN0KHBhcmFtZXRlcnMpKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0UHJpbnRhYmxlSHRtbChwYXJhbWV0ZXJzOiBGaWx0ZXJQYXJhbWV0ZXJzTW9kZWwpOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGk/LmdldFByaW50YWJsZUh0bWwoRmlsdGVyVXRpbHMucGFyYW1ldGVyc1RvUmVxdWVzdChwYXJhbWV0ZXJzKSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldEZpbHRlckNvbmZpZyhvcHRpb246IE5pY2VIdHRwT3B0aW9ucyA9IHt9KTogT2JzZXJ2YWJsZTxGaWx0ZXJDb25maWd1cmF0aW9uTW9kZWxbXT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGk/LmdldEZpbHRlckNvbmZpZyhvcHRpb24pO1xuICAgIH1cblxuICAgIHB1YmxpYyBzZWFyY2hGaWx0ZXJWYWx1ZShcbiAgICAgICAgZmlsdGVyQ29uZmlnOiBGaWx0ZXJDb25maWd1cmF0aW9uTW9kZWwsXG4gICAgICAgIHZhbHVlOiBzdHJpbmcsXG4gICAgICAgIG9wdGlvbnM/OiBIdHRwT3B0aW9uc1xuICAgICk6IE9ic2VydmFibGU8U2VsZWN0RmlsdGVyVmFsdWVbXT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5hcGk/LnNlYXJjaEZpbHRlclZhbHVlKGZpbHRlckNvbmZpZy5pZCwgdmFsdWUsIG9wdGlvbnMpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzZWFyY2hGaWx0ZXJSZXNvdXJjZVZhbHVlKFxuICAgICAgICBmaWx0ZXJDb25maWc6IEZpbHRlckNvbmZpZ3VyYXRpb25Nb2RlbCxcbiAgICAgICAgcmVzb3VyY2VJZDogbnVtYmVyLFxuICAgICAgICBvcHRpb25zPzogSHR0cE9wdGlvbnNcbiAgICApOiBPYnNlcnZhYmxlPFNlbGVjdEZpbHRlclZhbHVlPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwaT8uc2VhcmNoRmlsdGVyUmVzb3VyY2VWYWx1ZShmaWx0ZXJDb25maWcuaWQsIHJlc291cmNlSWQsIG9wdGlvbnMpO1xuICAgIH1cbn1cbiJdfQ==
@@ -11,10 +11,10 @@ export class AdvancedFiltersAsyncTypeaheadProvider extends NiceAsyncTypeaheadPro
11
11
  this.resource = "advancedFilter";
12
12
  }
13
13
  getById(id, options) {
14
- return lastValueFrom(this.filterService.searchFilterResourceValue(options.filterConfig, id));
14
+ return lastValueFrom(this.filterService.searchFilterResourceValue(options.filterConfig, id, { params: options?.queryParams }));
15
15
  }
16
16
  async search(searchQuery, page, options) {
17
- const res = await lastValueFrom(this.filterService.searchFilterValue(options.filterConfig, searchQuery));
17
+ const res = await lastValueFrom(this.filterService.searchFilterValue(options.filterConfig, searchQuery, { params: options?.queryParams }));
18
18
  return {
19
19
  items: res,
20
20
  nextPage: null
@@ -29,4 +29,4 @@ AdvancedFiltersAsyncTypeaheadProvider.ɵprov = i0.ɵɵngDeclareInjectable({ minV
29
29
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: AdvancedFiltersAsyncTypeaheadProvider, decorators: [{
30
30
  type: Injectable
31
31
  }], ctorParameters: function () { return [{ type: i1.NiceFilterService }]; } });
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXN5bmMtdHlwZWFoZWFkLnByb3ZpZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmljZS1kYXRhLWZpbHRlci1raXQvc3JjL2xpYi9jb21wb25lbnRzL25pY2UtZmlsdGVyLXZpZXcvY29tcG9uZW50cy9hZHZhbmNlZC1maWx0ZXJzL3Byb3ZpZGVycy9hc3luYy10eXBlYWhlYWQucHJvdmlkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsMEJBQTBCLEVBQWtDLE1BQU0sMkJBQTJCLENBQUM7QUFDdkcsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUVyQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxxREFBcUQsQ0FBQzs7O0FBT3hGLE1BQU0sT0FBTyxxQ0FBc0MsU0FBUSwwQkFBNkM7SUFHcEcsWUFBb0IsYUFBcUM7UUFDckQsS0FBSyxFQUFFLENBQUM7UUFEUSxrQkFBYSxHQUFiLGFBQWEsQ0FBd0I7UUFGbEQsYUFBUSxHQUFHLGdCQUFnQixDQUFDO0lBSW5DLENBQUM7SUFFTSxPQUFPLENBQUMsRUFBVSxFQUFFLE9BQTZDO1FBQ3BFLE9BQU8sYUFBYSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMseUJBQXlCLENBQUMsT0FBTyxDQUFDLFlBQVksRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ2pHLENBQUM7SUFFTSxLQUFLLENBQUMsTUFBTSxDQUNmLFdBQW1CLEVBQ25CLElBQVksRUFDWixPQUE2QztRQUU3QyxNQUFNLEdBQUcsR0FBRyxNQUFNLGFBQWEsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLGlCQUFpQixDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUUsV0FBVyxDQUFDLENBQUMsQ0FBQztRQUN6RyxPQUFPO1lBQ0gsS0FBSyxFQUFFLEdBQUc7WUFDVixRQUFRLEVBQUUsSUFBSTtTQUNqQixDQUFDO0lBQ04sQ0FBQztJQUVNLE1BQU0sQ0FBQyxJQUF1QjtRQUNqQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUM7SUFDckIsQ0FBQzs7a0lBekJRLHFDQUFxQztzSUFBckMscUNBQXFDOzJGQUFyQyxxQ0FBcUM7a0JBRGpELFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IE5pY2VBc3luY1R5cGVhaGVhZFByb3ZpZGVyLCBOaWNlQXN5bmNUeXBlYWhlYWRTZWFyY2hSZXN1bHQgfSBmcm9tIFwiQHJlY3Vyc3l2ZS9uaWNlLXVpLWtpdC52MlwiO1xuaW1wb3J0IHsgbGFzdFZhbHVlRnJvbSB9IGZyb20gXCJyeGpzXCI7XG5pbXBvcnQgeyBGaWx0ZXJDb25maWd1cmF0aW9uTW9kZWwsIFNlbGVjdEZpbHRlclZhbHVlIH0gZnJvbSBcIi4uLy4uLy4uLy4uLy4uL21vZGVscy9maWx0ZXIubW9kZWxcIjtcbmltcG9ydCB7IE5pY2VGaWx0ZXJTZXJ2aWNlIH0gZnJvbSBcIi4uLy4uLy4uLy4uL2Jhc2UtbGlzdC9wcm92aWRlcnMvYmFzZS1maWx0ZXIuc2VydmljZVwiO1xuXG5pbnRlcmZhY2UgQWR2YW5jZWRGaWx0ZXJzQXN5bmNUeXBlYWhlYWRPcHRpb25zIHtcbiAgICBmaWx0ZXJDb25maWc6IEZpbHRlckNvbmZpZ3VyYXRpb25Nb2RlbDtcbn1cblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEFkdmFuY2VkRmlsdGVyc0FzeW5jVHlwZWFoZWFkUHJvdmlkZXIgZXh0ZW5kcyBOaWNlQXN5bmNUeXBlYWhlYWRQcm92aWRlcjxTZWxlY3RGaWx0ZXJWYWx1ZT4ge1xuICAgIHB1YmxpYyByZXNvdXJjZSA9IFwiYWR2YW5jZWRGaWx0ZXJcIjtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgZmlsdGVyU2VydmljZTogTmljZUZpbHRlclNlcnZpY2U8YW55Pikge1xuICAgICAgICBzdXBlcigpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRCeUlkKGlkOiBudW1iZXIsIG9wdGlvbnM6IEFkdmFuY2VkRmlsdGVyc0FzeW5jVHlwZWFoZWFkT3B0aW9ucyk6IFByb21pc2U8U2VsZWN0RmlsdGVyVmFsdWU+IHtcbiAgICAgICAgcmV0dXJuIGxhc3RWYWx1ZUZyb20odGhpcy5maWx0ZXJTZXJ2aWNlLnNlYXJjaEZpbHRlclJlc291cmNlVmFsdWUob3B0aW9ucy5maWx0ZXJDb25maWcsIGlkKSk7XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIHNlYXJjaChcbiAgICAgICAgc2VhcmNoUXVlcnk6IHN0cmluZyxcbiAgICAgICAgcGFnZTogbnVtYmVyLFxuICAgICAgICBvcHRpb25zOiBBZHZhbmNlZEZpbHRlcnNBc3luY1R5cGVhaGVhZE9wdGlvbnNcbiAgICApOiBQcm9taXNlPE5pY2VBc3luY1R5cGVhaGVhZFNlYXJjaFJlc3VsdDxTZWxlY3RGaWx0ZXJWYWx1ZT4+IHtcbiAgICAgICAgY29uc3QgcmVzID0gYXdhaXQgbGFzdFZhbHVlRnJvbSh0aGlzLmZpbHRlclNlcnZpY2Uuc2VhcmNoRmlsdGVyVmFsdWUob3B0aW9ucy5maWx0ZXJDb25maWcsIHNlYXJjaFF1ZXJ5KSk7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBpdGVtczogcmVzLFxuICAgICAgICAgICAgbmV4dFBhZ2U6IG51bGxcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZm9ybWF0KGl0ZW06IFNlbGVjdEZpbHRlclZhbHVlKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIGl0ZW0ubmFtZTtcbiAgICB9XG59XG4iXX0=
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXN5bmMtdHlwZWFoZWFkLnByb3ZpZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmljZS1kYXRhLWZpbHRlci1raXQvc3JjL2xpYi9jb21wb25lbnRzL25pY2UtZmlsdGVyLXZpZXcvY29tcG9uZW50cy9hZHZhbmNlZC1maWx0ZXJzL3Byb3ZpZGVycy9hc3luYy10eXBlYWhlYWQucHJvdmlkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsMEJBQTBCLEVBQWtDLE1BQU0sMkJBQTJCLENBQUM7QUFDdkcsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUVyQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxxREFBcUQsQ0FBQzs7O0FBUXhGLE1BQU0sT0FBTyxxQ0FBc0MsU0FBUSwwQkFBNkM7SUFHcEcsWUFBb0IsYUFBcUM7UUFDckQsS0FBSyxFQUFFLENBQUM7UUFEUSxrQkFBYSxHQUFiLGFBQWEsQ0FBd0I7UUFGbEQsYUFBUSxHQUFHLGdCQUFnQixDQUFDO0lBSW5DLENBQUM7SUFFTSxPQUFPLENBQUMsRUFBVSxFQUFFLE9BQTZDO1FBQ3BFLE9BQU8sYUFBYSxDQUNoQixJQUFJLENBQUMsYUFBYSxDQUFDLHlCQUF5QixDQUN4QyxPQUFPLENBQUMsWUFBWSxFQUNwQixFQUFFLEVBQ0YsRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLFdBQVcsRUFBRSxDQUNuQyxDQUNKLENBQUM7SUFDTixDQUFDO0lBRU0sS0FBSyxDQUFDLE1BQU0sQ0FDZixXQUFtQixFQUNuQixJQUFZLEVBQ1osT0FBNkM7UUFFN0MsTUFBTSxHQUFHLEdBQUcsTUFBTSxhQUFhLENBQzNCLElBQUksQ0FBQyxhQUFhLENBQUMsaUJBQWlCLENBQ2hDLE9BQU8sQ0FBQyxZQUFZLEVBQ3BCLFdBQVcsRUFDWCxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsV0FBVyxFQUFFLENBQ25DLENBQ0osQ0FBQztRQUNGLE9BQU87WUFDSCxLQUFLLEVBQUUsR0FBRztZQUNWLFFBQVEsRUFBRSxJQUFJO1NBQ2pCLENBQUM7SUFDTixDQUFDO0lBRU0sTUFBTSxDQUFDLElBQXVCO1FBQ2pDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQztJQUNyQixDQUFDOztrSUFyQ1EscUNBQXFDO3NJQUFyQyxxQ0FBcUM7MkZBQXJDLHFDQUFxQztrQkFEakQsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgTmljZUFzeW5jVHlwZWFoZWFkUHJvdmlkZXIsIE5pY2VBc3luY1R5cGVhaGVhZFNlYXJjaFJlc3VsdCB9IGZyb20gXCJAcmVjdXJzeXZlL25pY2UtdWkta2l0LnYyXCI7XG5pbXBvcnQgeyBsYXN0VmFsdWVGcm9tIH0gZnJvbSBcInJ4anNcIjtcbmltcG9ydCB7IEZpbHRlckNvbmZpZ3VyYXRpb25Nb2RlbCwgU2VsZWN0RmlsdGVyVmFsdWUgfSBmcm9tIFwiLi4vLi4vLi4vLi4vLi4vbW9kZWxzL2ZpbHRlci5tb2RlbFwiO1xuaW1wb3J0IHsgTmljZUZpbHRlclNlcnZpY2UgfSBmcm9tIFwiLi4vLi4vLi4vLi4vYmFzZS1saXN0L3Byb3ZpZGVycy9iYXNlLWZpbHRlci5zZXJ2aWNlXCI7XG5cbmludGVyZmFjZSBBZHZhbmNlZEZpbHRlcnNBc3luY1R5cGVhaGVhZE9wdGlvbnMge1xuICAgIGZpbHRlckNvbmZpZzogRmlsdGVyQ29uZmlndXJhdGlvbk1vZGVsO1xuICAgIHF1ZXJ5UGFyYW1zPzogUmVjb3JkPHN0cmluZywgYW55Pjtcbn1cblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEFkdmFuY2VkRmlsdGVyc0FzeW5jVHlwZWFoZWFkUHJvdmlkZXIgZXh0ZW5kcyBOaWNlQXN5bmNUeXBlYWhlYWRQcm92aWRlcjxTZWxlY3RGaWx0ZXJWYWx1ZT4ge1xuICAgIHB1YmxpYyByZXNvdXJjZSA9IFwiYWR2YW5jZWRGaWx0ZXJcIjtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgZmlsdGVyU2VydmljZTogTmljZUZpbHRlclNlcnZpY2U8YW55Pikge1xuICAgICAgICBzdXBlcigpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRCeUlkKGlkOiBudW1iZXIsIG9wdGlvbnM6IEFkdmFuY2VkRmlsdGVyc0FzeW5jVHlwZWFoZWFkT3B0aW9ucyk6IFByb21pc2U8U2VsZWN0RmlsdGVyVmFsdWU+IHtcbiAgICAgICAgcmV0dXJuIGxhc3RWYWx1ZUZyb20oXG4gICAgICAgICAgICB0aGlzLmZpbHRlclNlcnZpY2Uuc2VhcmNoRmlsdGVyUmVzb3VyY2VWYWx1ZShcbiAgICAgICAgICAgICAgICBvcHRpb25zLmZpbHRlckNvbmZpZyxcbiAgICAgICAgICAgICAgICBpZCxcbiAgICAgICAgICAgICAgICB7IHBhcmFtczogb3B0aW9ucz8ucXVlcnlQYXJhbXMgfVxuICAgICAgICAgICAgKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBzZWFyY2goXG4gICAgICAgIHNlYXJjaFF1ZXJ5OiBzdHJpbmcsXG4gICAgICAgIHBhZ2U6IG51bWJlcixcbiAgICAgICAgb3B0aW9uczogQWR2YW5jZWRGaWx0ZXJzQXN5bmNUeXBlYWhlYWRPcHRpb25zXG4gICAgKTogUHJvbWlzZTxOaWNlQXN5bmNUeXBlYWhlYWRTZWFyY2hSZXN1bHQ8U2VsZWN0RmlsdGVyVmFsdWU+PiB7XG4gICAgICAgIGNvbnN0IHJlcyA9IGF3YWl0IGxhc3RWYWx1ZUZyb20oXG4gICAgICAgICAgICB0aGlzLmZpbHRlclNlcnZpY2Uuc2VhcmNoRmlsdGVyVmFsdWUoXG4gICAgICAgICAgICAgICAgb3B0aW9ucy5maWx0ZXJDb25maWcsXG4gICAgICAgICAgICAgICAgc2VhcmNoUXVlcnksXG4gICAgICAgICAgICAgICAgeyBwYXJhbXM6IG9wdGlvbnM/LnF1ZXJ5UGFyYW1zIH1cbiAgICAgICAgICAgIClcbiAgICAgICAgKTtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGl0ZW1zOiByZXMsXG4gICAgICAgICAgICBuZXh0UGFnZTogbnVsbFxuICAgICAgICB9O1xuICAgIH1cblxuICAgIHB1YmxpYyBmb3JtYXQoaXRlbTogU2VsZWN0RmlsdGVyVmFsdWUpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gaXRlbS5uYW1lO1xuICAgIH1cbn1cbiJdfQ==
@@ -1,15 +1,19 @@
1
1
  import { Component, forwardRef, Input, ViewEncapsulation } from "@angular/core";
2
2
  import { NG_VALUE_ACCESSOR } from "@angular/forms";
3
3
  import { FilterComponent } from "../filter.component";
4
+ import { NiceFilterViewQuery } from "../../../../../store/nice-filter-view.query";
4
5
  import * as i0 from "@angular/core";
5
- import * as i1 from "@angular/common";
6
- import * as i2 from "@angular/forms";
7
- import * as i3 from "@angular/material/form-field";
8
- import * as i4 from "@recursyve/nice-ui-kit.v2";
6
+ import * as i1 from "../../../../../store/nice-filter-view.query";
7
+ import * as i2 from "@angular/common";
8
+ import * as i3 from "@angular/forms";
9
+ import * as i4 from "@angular/material/form-field";
10
+ import * as i5 from "@recursyve/nice-ui-kit.v2";
9
11
  export class NiceAdvancedSelectFilterComponent extends FilterComponent {
10
- constructor() {
11
- super(...arguments);
12
+ constructor(filterViewQuery) {
13
+ super();
14
+ this.filterViewQuery = filterViewQuery;
12
15
  this.values = [];
16
+ this.queryParams$ = this.filterViewQuery.selectQueryParams();
13
17
  }
14
18
  async ngOnInit() {
15
19
  if (!this.filterConfig.lazyLoading) {
@@ -33,14 +37,14 @@ export class NiceAdvancedSelectFilterComponent extends FilterComponent {
33
37
  super.writeValue(value);
34
38
  }
35
39
  }
36
- NiceAdvancedSelectFilterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NiceAdvancedSelectFilterComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
40
+ NiceAdvancedSelectFilterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NiceAdvancedSelectFilterComponent, deps: [{ token: i1.NiceFilterViewQuery }], target: i0.ɵɵFactoryTarget.Component });
37
41
  NiceAdvancedSelectFilterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: NiceAdvancedSelectFilterComponent, selector: "nice-advanced-select-filter", inputs: { filterConfig: "filterConfig" }, providers: [
38
42
  {
39
43
  provide: NG_VALUE_ACCESSOR,
40
44
  useExisting: forwardRef(() => NiceAdvancedSelectFilterComponent),
41
45
  multi: true
42
46
  }
43
- ], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<mat-form-field appearance=\"outline\" class=\"flex-auto\">\n <nice-typeahead\n *ngIf=\"!filterConfig.lazyLoading\"\n [ngModel]=\"value\"\n (ngModelChange)=\"onValueChange($event)\"\n [items]=\"values\"\n bindValue=\"id\"\n bindLabel=\"name\"\n ></nice-typeahead>\n\n <nice-async-typeahead\n *ngIf=\"filterConfig.lazyLoading\"\n resource=\"advancedFilter\"\n [searchOptions]=\"{ filterConfig }\"\n [ngModel]=\"value\"\n (ngModelChange)=\"onValueChange($event)\"\n ></nice-async-typeahead>\n</mat-form-field>\n", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i4.NiceTypeaheadComponent, selector: "nice-typeahead", inputs: ["items", "labelFormatFn", "required", "disabled", "placeholder", "emptyPlaceholder", "allowNotFoundItems", "panelClass", "bindValue", "bindLabel", "typeahead", "page$", "loading", "loadingPage", "searchFn", "optionTemplate"], outputs: ["change"] }, { kind: "component", type: i4.NiceAsyncTypeaheadComponent, selector: "nice-async-typeahead", inputs: ["resource", "searchOptions", "autoReload", "preloadResource", "allowNotFoundItems", "panelClass", "bindValue", "bindLabel", "placeholder", "emptyPlaceholder", "optionTemplate", "filterFn", "labelFormatFn", "disabled", "value", "required"], outputs: ["entityRemoved", "selected"] }], encapsulation: i0.ViewEncapsulation.None });
47
+ ], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<mat-form-field appearance=\"outline\" class=\"flex-auto\">\n <nice-typeahead\n *ngIf=\"!filterConfig.lazyLoading\"\n [ngModel]=\"value\"\n (ngModelChange)=\"onValueChange($event)\"\n [items]=\"values\"\n bindValue=\"id\"\n bindLabel=\"name\"\n ></nice-typeahead>\n\n <nice-async-typeahead\n *ngIf=\"filterConfig.lazyLoading\"\n resource=\"advancedFilter\"\n [searchOptions]=\"{ filterConfig, queryParams: queryParams$ | async }\"\n [ngModel]=\"value\"\n (ngModelChange)=\"onValueChange($event)\"\n ></nice-async-typeahead>\n</mat-form-field>\n", dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i5.NiceTypeaheadComponent, selector: "nice-typeahead", inputs: ["items", "labelFormatFn", "required", "disabled", "placeholder", "emptyPlaceholder", "allowNotFoundItems", "panelClass", "bindValue", "bindLabel", "typeahead", "page$", "loading", "loadingPage", "searchFn", "optionTemplate"], outputs: ["change"] }, { kind: "component", type: i5.NiceAsyncTypeaheadComponent, selector: "nice-async-typeahead", inputs: ["resource", "searchOptions", "autoReload", "preloadResource", "allowNotFoundItems", "panelClass", "bindValue", "bindLabel", "placeholder", "emptyPlaceholder", "optionTemplate", "filterFn", "labelFormatFn", "disabled", "value", "required"], outputs: ["entityRemoved", "selected"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }], encapsulation: i0.ViewEncapsulation.None });
44
48
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NiceAdvancedSelectFilterComponent, decorators: [{
45
49
  type: Component,
46
50
  args: [{ selector: "nice-advanced-select-filter", encapsulation: ViewEncapsulation.None, providers: [
@@ -49,8 +53,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
49
53
  useExisting: forwardRef(() => NiceAdvancedSelectFilterComponent),
50
54
  multi: true
51
55
  }
52
- ], template: "<mat-form-field appearance=\"outline\" class=\"flex-auto\">\n <nice-typeahead\n *ngIf=\"!filterConfig.lazyLoading\"\n [ngModel]=\"value\"\n (ngModelChange)=\"onValueChange($event)\"\n [items]=\"values\"\n bindValue=\"id\"\n bindLabel=\"name\"\n ></nice-typeahead>\n\n <nice-async-typeahead\n *ngIf=\"filterConfig.lazyLoading\"\n resource=\"advancedFilter\"\n [searchOptions]=\"{ filterConfig }\"\n [ngModel]=\"value\"\n (ngModelChange)=\"onValueChange($event)\"\n ></nice-async-typeahead>\n</mat-form-field>\n" }]
53
- }], propDecorators: { filterConfig: [{
56
+ ], template: "<mat-form-field appearance=\"outline\" class=\"flex-auto\">\n <nice-typeahead\n *ngIf=\"!filterConfig.lazyLoading\"\n [ngModel]=\"value\"\n (ngModelChange)=\"onValueChange($event)\"\n [items]=\"values\"\n bindValue=\"id\"\n bindLabel=\"name\"\n ></nice-typeahead>\n\n <nice-async-typeahead\n *ngIf=\"filterConfig.lazyLoading\"\n resource=\"advancedFilter\"\n [searchOptions]=\"{ filterConfig, queryParams: queryParams$ | async }\"\n [ngModel]=\"value\"\n (ngModelChange)=\"onValueChange($event)\"\n ></nice-async-typeahead>\n</mat-form-field>\n" }]
57
+ }], ctorParameters: function () { return [{ type: i1.NiceFilterViewQuery }]; }, propDecorators: { filterConfig: [{
54
58
  type: Input
55
59
  }] } });
56
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LWZpbHRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uaWNlLWRhdGEtZmlsdGVyLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvbmljZS1maWx0ZXItdmlldy9jb21wb25lbnRzL2FkdmFuY2VkLWZpbHRlcnMvcnVsZS9jb21wb25lbnRzL3NlbGVjdC9zZWxlY3QtZmlsdGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25pY2UtZGF0YS1maWx0ZXIta2l0L3NyYy9saWIvY29tcG9uZW50cy9uaWNlLWZpbHRlci12aWV3L2NvbXBvbmVudHMvYWR2YW5jZWQtZmlsdGVycy9ydWxlL2NvbXBvbmVudHMvc2VsZWN0L3NlbGVjdC1maWx0ZXIudGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQW9DLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xILE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRW5ELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7Ozs7O0FBY3RELE1BQU0sT0FBTyxpQ0FBa0MsU0FBUSxlQUF3QjtJQVovRTs7UUFnQlcsV0FBTSxHQUF3QixFQUFFLENBQUM7S0F5QjNDO0lBdkJVLEtBQUssQ0FBQyxRQUFRO1FBQ2pCLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsRUFBRTtZQUNoQyxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBNkIsQ0FBQztTQUNqRTtJQUNMLENBQUM7SUFFTSxXQUFXLENBQUMsT0FBc0I7UUFDckMsSUFBSSxjQUFjLElBQUksT0FBTyxFQUFFO1lBQzNCLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsRUFBRTtnQkFDaEMsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQTZCLENBQUM7YUFDakU7aUJBQU07Z0JBQ0gsSUFBSSxDQUFDLE1BQU0sR0FBRyxFQUFFLENBQUM7YUFDcEI7U0FDSjtJQUNMLENBQUM7SUFFTSxhQUFhLENBQUMsS0FBYztRQUMvQixLQUFLLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFFTSxVQUFVLENBQUMsS0FBYztRQUM1QixLQUFLLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzVCLENBQUM7OzhIQTVCUSxpQ0FBaUM7a0hBQWpDLGlDQUFpQyxnR0FSL0I7UUFDUDtZQUNJLE9BQU8sRUFBRSxpQkFBaUI7WUFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxpQ0FBaUMsQ0FBQztZQUNoRSxLQUFLLEVBQUUsSUFBSTtTQUNkO0tBQ0osc0VDZkwsd2xCQWtCQTsyRkREYSxpQ0FBaUM7a0JBWjdDLFNBQVM7K0JBQ0ksNkJBQTZCLGlCQUV4QixpQkFBaUIsQ0FBQyxJQUFJLGFBQzFCO3dCQUNQOzRCQUNJLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLGtDQUFrQyxDQUFDOzRCQUNoRSxLQUFLLEVBQUUsSUFBSTt5QkFDZDtxQkFDSjs4QkFJTSxZQUFZO3NCQURsQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBmb3J3YXJkUmVmLCBJbnB1dCwgT25DaGFuZ2VzLCBPbkluaXQsIFNpbXBsZUNoYW5nZXMsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XG5pbXBvcnQgeyBGaWx0ZXJDb25maWd1cmF0aW9uTW9kZWwsIFNlbGVjdEZpbHRlclZhbHVlIH0gZnJvbSBcIi4uLy4uLy4uLy4uLy4uLy4uLy4uL21vZGVscy9maWx0ZXIubW9kZWxcIjtcbmltcG9ydCB7IEZpbHRlckNvbXBvbmVudCB9IGZyb20gXCIuLi9maWx0ZXIuY29tcG9uZW50XCI7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiBcIm5pY2UtYWR2YW5jZWQtc2VsZWN0LWZpbHRlclwiLFxuICAgIHRlbXBsYXRlVXJsOiBcInNlbGVjdC1maWx0ZXIudGVtcGxhdGUuaHRtbFwiLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gTmljZUFkdmFuY2VkU2VsZWN0RmlsdGVyQ29tcG9uZW50KSxcbiAgICAgICAgICAgIG11bHRpOiB0cnVlXG4gICAgICAgIH1cbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIE5pY2VBZHZhbmNlZFNlbGVjdEZpbHRlckNvbXBvbmVudCBleHRlbmRzIEZpbHRlckNvbXBvbmVudDx1bmtub3duPiBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBmaWx0ZXJDb25maWc6IEZpbHRlckNvbmZpZ3VyYXRpb25Nb2RlbDtcblxuICAgIHB1YmxpYyB2YWx1ZXM6IFNlbGVjdEZpbHRlclZhbHVlW10gPSBbXTtcblxuICAgIHB1YmxpYyBhc3luYyBuZ09uSW5pdCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgaWYgKCF0aGlzLmZpbHRlckNvbmZpZy5sYXp5TG9hZGluZykge1xuICAgICAgICAgICAgdGhpcy52YWx1ZXMgPSB0aGlzLmZpbHRlckNvbmZpZy52YWx1ZXMgYXMgU2VsZWN0RmlsdGVyVmFsdWVbXTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgICAgIGlmIChcImZpbHRlckNvbmZpZ1wiIGluIGNoYW5nZXMpIHtcbiAgICAgICAgICAgIGlmICghdGhpcy5maWx0ZXJDb25maWcubGF6eUxvYWRpbmcpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnZhbHVlcyA9IHRoaXMuZmlsdGVyQ29uZmlnLnZhbHVlcyBhcyBTZWxlY3RGaWx0ZXJWYWx1ZVtdO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLnZhbHVlcyA9IFtdO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIG9uVmFsdWVDaGFuZ2UodmFsdWU6IHVua25vd24pOiB2b2lkIHtcbiAgICAgICAgc3VwZXIub25WYWx1ZUNoYW5nZSh2YWx1ZSk7XG4gICAgfVxuXG4gICAgcHVibGljIHdyaXRlVmFsdWUodmFsdWU6IHVua25vd24pOiB2b2lkIHtcbiAgICAgICAgc3VwZXIud3JpdGVWYWx1ZSh2YWx1ZSk7XG4gICAgfVxufVxuIiwiPG1hdC1mb3JtLWZpZWxkIGFwcGVhcmFuY2U9XCJvdXRsaW5lXCIgY2xhc3M9XCJmbGV4LWF1dG9cIj5cbiAgICA8bmljZS10eXBlYWhlYWRcbiAgICAgICAgKm5nSWY9XCIhZmlsdGVyQ29uZmlnLmxhenlMb2FkaW5nXCJcbiAgICAgICAgW25nTW9kZWxdPVwidmFsdWVcIlxuICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJvblZhbHVlQ2hhbmdlKCRldmVudClcIlxuICAgICAgICBbaXRlbXNdPVwidmFsdWVzXCJcbiAgICAgICAgYmluZFZhbHVlPVwiaWRcIlxuICAgICAgICBiaW5kTGFiZWw9XCJuYW1lXCJcbiAgICA+PC9uaWNlLXR5cGVhaGVhZD5cblxuICAgIDxuaWNlLWFzeW5jLXR5cGVhaGVhZFxuICAgICAgICAqbmdJZj1cImZpbHRlckNvbmZpZy5sYXp5TG9hZGluZ1wiXG4gICAgICAgIHJlc291cmNlPVwiYWR2YW5jZWRGaWx0ZXJcIlxuICAgICAgICBbc2VhcmNoT3B0aW9uc109XCJ7IGZpbHRlckNvbmZpZyB9XCJcbiAgICAgICAgW25nTW9kZWxdPVwidmFsdWVcIlxuICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJvblZhbHVlQ2hhbmdlKCRldmVudClcIlxuICAgID48L25pY2UtYXN5bmMtdHlwZWFoZWFkPlxuPC9tYXQtZm9ybS1maWVsZD5cbiJdfQ==
60
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LWZpbHRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uaWNlLWRhdGEtZmlsdGVyLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvbmljZS1maWx0ZXItdmlldy9jb21wb25lbnRzL2FkdmFuY2VkLWZpbHRlcnMvcnVsZS9jb21wb25lbnRzL3NlbGVjdC9zZWxlY3QtZmlsdGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25pY2UtZGF0YS1maWx0ZXIta2l0L3NyYy9saWIvY29tcG9uZW50cy9uaWNlLWZpbHRlci12aWV3L2NvbXBvbmVudHMvYWR2YW5jZWQtZmlsdGVycy9ydWxlL2NvbXBvbmVudHMvc2VsZWN0L3NlbGVjdC1maWx0ZXIudGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQW9DLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xILE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRW5ELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQzs7Ozs7OztBQWNsRixNQUFNLE9BQU8saUNBQWtDLFNBQVEsZUFBd0I7SUFRM0UsWUFBb0IsZUFBb0M7UUFDcEQsS0FBSyxFQUFFLENBQUM7UUFEUSxvQkFBZSxHQUFmLGVBQWUsQ0FBcUI7UUFKakQsV0FBTSxHQUF3QixFQUFFLENBQUM7UUFFOUIsaUJBQVksR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLGlCQUFpQixFQUFFLENBQUM7SUFJbEUsQ0FBQztJQUVNLEtBQUssQ0FBQyxRQUFRO1FBQ2pCLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsRUFBRTtZQUNoQyxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBNkIsQ0FBQztTQUNqRTtJQUNMLENBQUM7SUFFTSxXQUFXLENBQUMsT0FBc0I7UUFDckMsSUFBSSxjQUFjLElBQUksT0FBTyxFQUFFO1lBQzNCLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsRUFBRTtnQkFDaEMsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQTZCLENBQUM7YUFDakU7aUJBQU07Z0JBQ0gsSUFBSSxDQUFDLE1BQU0sR0FBRyxFQUFFLENBQUM7YUFDcEI7U0FDSjtJQUNMLENBQUM7SUFFTSxhQUFhLENBQUMsS0FBYztRQUMvQixLQUFLLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFFTSxVQUFVLENBQUMsS0FBYztRQUM1QixLQUFLLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzVCLENBQUM7OzhIQWxDUSxpQ0FBaUM7a0hBQWpDLGlDQUFpQyxnR0FSL0I7UUFDUDtZQUNJLE9BQU8sRUFBRSxpQkFBaUI7WUFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxpQ0FBaUMsQ0FBQztZQUNoRSxLQUFLLEVBQUUsSUFBSTtTQUNkO0tBQ0osc0VDaEJMLDJuQkFrQkE7MkZEQWEsaUNBQWlDO2tCQVo3QyxTQUFTOytCQUNJLDZCQUE2QixpQkFFeEIsaUJBQWlCLENBQUMsSUFBSSxhQUMxQjt3QkFDUDs0QkFDSSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxrQ0FBa0MsQ0FBQzs0QkFDaEUsS0FBSyxFQUFFLElBQUk7eUJBQ2Q7cUJBQ0o7MEdBSU0sWUFBWTtzQkFEbEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgZm9yd2FyZFJlZiwgSW5wdXQsIE9uQ2hhbmdlcywgT25Jbml0LCBTaW1wbGVDaGFuZ2VzLCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xuaW1wb3J0IHsgRmlsdGVyQ29uZmlndXJhdGlvbk1vZGVsLCBTZWxlY3RGaWx0ZXJWYWx1ZSB9IGZyb20gXCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9tb2RlbHMvZmlsdGVyLm1vZGVsXCI7XG5pbXBvcnQgeyBGaWx0ZXJDb21wb25lbnQgfSBmcm9tIFwiLi4vZmlsdGVyLmNvbXBvbmVudFwiO1xuaW1wb3J0IHsgTmljZUZpbHRlclZpZXdRdWVyeSB9IGZyb20gXCIuLi8uLi8uLi8uLi8uLi9zdG9yZS9uaWNlLWZpbHRlci12aWV3LnF1ZXJ5XCI7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiBcIm5pY2UtYWR2YW5jZWQtc2VsZWN0LWZpbHRlclwiLFxuICAgIHRlbXBsYXRlVXJsOiBcInNlbGVjdC1maWx0ZXIudGVtcGxhdGUuaHRtbFwiLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gTmljZUFkdmFuY2VkU2VsZWN0RmlsdGVyQ29tcG9uZW50KSxcbiAgICAgICAgICAgIG11bHRpOiB0cnVlXG4gICAgICAgIH1cbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIE5pY2VBZHZhbmNlZFNlbGVjdEZpbHRlckNvbXBvbmVudCBleHRlbmRzIEZpbHRlckNvbXBvbmVudDx1bmtub3duPiBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBmaWx0ZXJDb25maWc6IEZpbHRlckNvbmZpZ3VyYXRpb25Nb2RlbDtcblxuICAgIHB1YmxpYyB2YWx1ZXM6IFNlbGVjdEZpbHRlclZhbHVlW10gPSBbXTtcblxuICAgIHByb3RlY3RlZCBxdWVyeVBhcmFtcyQgPSB0aGlzLmZpbHRlclZpZXdRdWVyeS5zZWxlY3RRdWVyeVBhcmFtcygpO1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBmaWx0ZXJWaWV3UXVlcnk6IE5pY2VGaWx0ZXJWaWV3UXVlcnkpIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgbmdPbkluaXQoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIGlmICghdGhpcy5maWx0ZXJDb25maWcubGF6eUxvYWRpbmcpIHtcbiAgICAgICAgICAgIHRoaXMudmFsdWVzID0gdGhpcy5maWx0ZXJDb25maWcudmFsdWVzIGFzIFNlbGVjdEZpbHRlclZhbHVlW107XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgICAgICBpZiAoXCJmaWx0ZXJDb25maWdcIiBpbiBjaGFuZ2VzKSB7XG4gICAgICAgICAgICBpZiAoIXRoaXMuZmlsdGVyQ29uZmlnLmxhenlMb2FkaW5nKSB7XG4gICAgICAgICAgICAgICAgdGhpcy52YWx1ZXMgPSB0aGlzLmZpbHRlckNvbmZpZy52YWx1ZXMgYXMgU2VsZWN0RmlsdGVyVmFsdWVbXTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy52YWx1ZXMgPSBbXTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBvblZhbHVlQ2hhbmdlKHZhbHVlOiB1bmtub3duKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLm9uVmFsdWVDaGFuZ2UodmFsdWUpO1xuICAgIH1cblxuICAgIHB1YmxpYyB3cml0ZVZhbHVlKHZhbHVlOiB1bmtub3duKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLndyaXRlVmFsdWUodmFsdWUpO1xuICAgIH1cbn1cbiIsIjxtYXQtZm9ybS1maWVsZCBhcHBlYXJhbmNlPVwib3V0bGluZVwiIGNsYXNzPVwiZmxleC1hdXRvXCI+XG4gICAgPG5pY2UtdHlwZWFoZWFkXG4gICAgICAgICpuZ0lmPVwiIWZpbHRlckNvbmZpZy5sYXp5TG9hZGluZ1wiXG4gICAgICAgIFtuZ01vZGVsXT1cInZhbHVlXCJcbiAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwib25WYWx1ZUNoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgW2l0ZW1zXT1cInZhbHVlc1wiXG4gICAgICAgIGJpbmRWYWx1ZT1cImlkXCJcbiAgICAgICAgYmluZExhYmVsPVwibmFtZVwiXG4gICAgPjwvbmljZS10eXBlYWhlYWQ+XG5cbiAgICA8bmljZS1hc3luYy10eXBlYWhlYWRcbiAgICAgICAgKm5nSWY9XCJmaWx0ZXJDb25maWcubGF6eUxvYWRpbmdcIlxuICAgICAgICByZXNvdXJjZT1cImFkdmFuY2VkRmlsdGVyXCJcbiAgICAgICAgW3NlYXJjaE9wdGlvbnNdPVwieyBmaWx0ZXJDb25maWcsIHF1ZXJ5UGFyYW1zOiBxdWVyeVBhcmFtcyQgfCBhc3luYyB9XCJcbiAgICAgICAgW25nTW9kZWxdPVwidmFsdWVcIlxuICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJvblZhbHVlQ2hhbmdlKCRldmVudClcIlxuICAgID48L25pY2UtYXN5bmMtdHlwZWFoZWFkPlxuPC9tYXQtZm9ybS1maWVsZD5cbiJdfQ==
@@ -23,6 +23,9 @@ export class NiceFilterViewQuery extends QueryEntity {
23
23
  selectFilterResult() {
24
24
  return this.select("filterResult");
25
25
  }
26
+ selectQueryParams() {
27
+ return this.select("queryParams");
28
+ }
26
29
  getParameters() {
27
30
  return this.store.getParameters(this.store.getValue().filterParameters);
28
31
  }
@@ -35,4 +38,4 @@ NiceFilterViewQuery.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0",
35
38
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: NiceFilterViewQuery, decorators: [{
36
39
  type: Injectable
37
40
  }], ctorParameters: function () { return [{ type: i1.NiceFilterViewStore }]; } });
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmljZS1maWx0ZXItdmlldy5xdWVyeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25pY2UtZGF0YS1maWx0ZXIta2l0L3NyYy9saWIvY29tcG9uZW50cy9uaWNlLWZpbHRlci12aWV3L3N0b3JlL25pY2UtZmlsdGVyLXZpZXcucXVlcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFHOUMsT0FBTyxFQUF1QixtQkFBbUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDOzs7QUFHcEYsTUFBTSxPQUFPLG1CQUFvQixTQUFRLFdBQWdDO0lBQ3JFLFlBQXNCLEtBQTBCO1FBQzVDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztRQURLLFVBQUssR0FBTCxLQUFLLENBQXFCO0lBRWhELENBQUM7SUFFTSxjQUFjLENBQUksSUFBWTtRQUNqQyxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBRU0seUJBQXlCO1FBQzVCLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0lBQzlDLENBQUM7SUFFTSxrQkFBa0I7UUFDckIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFTSxzQkFBc0I7UUFDekIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLGtCQUFrQixDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUVNLGtCQUFrQjtRQUNyQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVNLGFBQWE7UUFDaEIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDLGdCQUFnQixDQUFDLENBQUM7SUFDNUUsQ0FBQztJQUVNLFdBQVcsQ0FBSSxJQUFZO1FBQzlCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDeEMsQ0FBQzs7Z0hBL0JRLG1CQUFtQjtvSEFBbkIsbUJBQW1COzJGQUFuQixtQkFBbUI7a0JBRC9CLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IFF1ZXJ5RW50aXR5IH0gZnJvbSBcIkBkYXRvcmFtYS9ha2l0YVwiO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gXCJyeGpzXCI7XG5pbXBvcnQgeyBGaWx0ZXJDb25maWd1cmF0aW9uTW9kZWwsIEZpbHRlclBhcmFtZXRlcnNNb2RlbCwgRmlsdGVyUmVzdWx0TW9kZWwgfSBmcm9tIFwiLi4vLi4vLi4vbW9kZWxzL2ZpbHRlci5tb2RlbFwiO1xuaW1wb3J0IHsgTmljZUZpbHRlclZpZXdTdGF0ZSwgTmljZUZpbHRlclZpZXdTdG9yZSB9IGZyb20gXCIuL25pY2UtZmlsdGVyLXZpZXcuc3RvcmVcIjtcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIE5pY2VGaWx0ZXJWaWV3UXVlcnkgZXh0ZW5kcyBRdWVyeUVudGl0eTxOaWNlRmlsdGVyVmlld1N0YXRlPiB7XG4gICAgY29uc3RydWN0b3IocHJvdGVjdGVkIHN0b3JlOiBOaWNlRmlsdGVyVmlld1N0b3JlKSB7XG4gICAgICAgIHN1cGVyKHN0b3JlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc2VsZWN0U3ViU3RhdGU8VD4obmFtZTogc3RyaW5nKTogT2JzZXJ2YWJsZTxUPiB7XG4gICAgICAgIHJldHVybiB0aGlzLnNlbGVjdCgoc3RhdGUpID0+IHN0YXRlLnN1YlN0YXRlc1tuYW1lXSk7XG4gICAgfVxuXG4gICAgcHVibGljIHNlbGVjdEZpbHRlckNvbmZpZ0xvYWRpbmcoKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgICAgIHJldHVybiB0aGlzLnNlbGVjdChcImZpbHRlckNvbmZpZ0xvYWRpbmdcIik7XG4gICAgfVxuXG4gICAgcHVibGljIHNlbGVjdEZpbHRlckNvbmZpZygpOiBPYnNlcnZhYmxlPEZpbHRlckNvbmZpZ3VyYXRpb25Nb2RlbFtdPiB7XG4gICAgICAgIHJldHVybiB0aGlzLnNlbGVjdChcImZpbHRlckNvbmZpZ1wiKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc2VsZWN0RmlsdGVyUGFyYW1ldGVycygpOiBPYnNlcnZhYmxlPEZpbHRlclBhcmFtZXRlcnNNb2RlbD4ge1xuICAgICAgICByZXR1cm4gdGhpcy5zZWxlY3QoXCJmaWx0ZXJQYXJhbWV0ZXJzXCIpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzZWxlY3RGaWx0ZXJSZXN1bHQoKTogT2JzZXJ2YWJsZTxGaWx0ZXJSZXN1bHRNb2RlbCB8IG51bGw+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2VsZWN0KFwiZmlsdGVyUmVzdWx0XCIpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRQYXJhbWV0ZXJzKCk6IEZpbHRlclBhcmFtZXRlcnNNb2RlbCB7XG4gICAgICAgIHJldHVybiB0aGlzLnN0b3JlLmdldFBhcmFtZXRlcnModGhpcy5zdG9yZS5nZXRWYWx1ZSgpLmZpbHRlclBhcmFtZXRlcnMpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRTdWJTdGF0ZTxUPihuYW1lOiBzdHJpbmcpOiBUIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc3RvcmUuZ2V0U3ViU3RhdGUobmFtZSk7XG4gICAgfVxufVxuIl19
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmljZS1maWx0ZXItdmlldy5xdWVyeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25pY2UtZGF0YS1maWx0ZXIta2l0L3NyYy9saWIvY29tcG9uZW50cy9uaWNlLWZpbHRlci12aWV3L3N0b3JlL25pY2UtZmlsdGVyLXZpZXcucXVlcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFHOUMsT0FBTyxFQUF1QixtQkFBbUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDOzs7QUFJcEYsTUFBTSxPQUFPLG1CQUFvQixTQUFRLFdBQWdDO0lBQ3JFLFlBQXNCLEtBQTBCO1FBQzVDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztRQURLLFVBQUssR0FBTCxLQUFLLENBQXFCO0lBRWhELENBQUM7SUFFTSxjQUFjLENBQUksSUFBWTtRQUNqQyxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBRU0seUJBQXlCO1FBQzVCLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0lBQzlDLENBQUM7SUFFTSxrQkFBa0I7UUFDckIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFTSxzQkFBc0I7UUFDekIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLGtCQUFrQixDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUVNLGtCQUFrQjtRQUNyQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVNLGlCQUFpQjtRQUNwQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDdEMsQ0FBQztJQUVNLGFBQWE7UUFDaEIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDLGdCQUFnQixDQUFDLENBQUM7SUFDNUUsQ0FBQztJQUVNLFdBQVcsQ0FBSSxJQUFZO1FBQzlCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDeEMsQ0FBQzs7Z0hBbkNRLG1CQUFtQjtvSEFBbkIsbUJBQW1COzJGQUFuQixtQkFBbUI7a0JBRC9CLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IFF1ZXJ5RW50aXR5IH0gZnJvbSBcIkBkYXRvcmFtYS9ha2l0YVwiO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gXCJyeGpzXCI7XG5pbXBvcnQgeyBGaWx0ZXJDb25maWd1cmF0aW9uTW9kZWwsIEZpbHRlclBhcmFtZXRlcnNNb2RlbCwgRmlsdGVyUmVzdWx0TW9kZWwgfSBmcm9tIFwiLi4vLi4vLi4vbW9kZWxzL2ZpbHRlci5tb2RlbFwiO1xuaW1wb3J0IHsgTmljZUZpbHRlclZpZXdTdGF0ZSwgTmljZUZpbHRlclZpZXdTdG9yZSB9IGZyb20gXCIuL25pY2UtZmlsdGVyLXZpZXcuc3RvcmVcIjtcbmltcG9ydCB7IFF1ZXJ5UGFyYW1zIH0gZnJvbSBcIi4uLy4uLy4uL2FwaS9maWx0ZXIuYXBpXCI7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBOaWNlRmlsdGVyVmlld1F1ZXJ5IGV4dGVuZHMgUXVlcnlFbnRpdHk8TmljZUZpbHRlclZpZXdTdGF0ZT4ge1xuICAgIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBzdG9yZTogTmljZUZpbHRlclZpZXdTdG9yZSkge1xuICAgICAgICBzdXBlcihzdG9yZSk7XG4gICAgfVxuXG4gICAgcHVibGljIHNlbGVjdFN1YlN0YXRlPFQ+KG5hbWU6IHN0cmluZyk6IE9ic2VydmFibGU8VD4ge1xuICAgICAgICByZXR1cm4gdGhpcy5zZWxlY3QoKHN0YXRlKSA9PiBzdGF0ZS5zdWJTdGF0ZXNbbmFtZV0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBzZWxlY3RGaWx0ZXJDb25maWdMb2FkaW5nKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5zZWxlY3QoXCJmaWx0ZXJDb25maWdMb2FkaW5nXCIpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzZWxlY3RGaWx0ZXJDb25maWcoKTogT2JzZXJ2YWJsZTxGaWx0ZXJDb25maWd1cmF0aW9uTW9kZWxbXT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5zZWxlY3QoXCJmaWx0ZXJDb25maWdcIik7XG4gICAgfVxuXG4gICAgcHVibGljIHNlbGVjdEZpbHRlclBhcmFtZXRlcnMoKTogT2JzZXJ2YWJsZTxGaWx0ZXJQYXJhbWV0ZXJzTW9kZWw+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2VsZWN0KFwiZmlsdGVyUGFyYW1ldGVyc1wiKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc2VsZWN0RmlsdGVyUmVzdWx0KCk6IE9ic2VydmFibGU8RmlsdGVyUmVzdWx0TW9kZWwgfCBudWxsPiB7XG4gICAgICAgIHJldHVybiB0aGlzLnNlbGVjdChcImZpbHRlclJlc3VsdFwiKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc2VsZWN0UXVlcnlQYXJhbXMoKTogT2JzZXJ2YWJsZTxRdWVyeVBhcmFtcz4ge1xuICAgICAgICByZXR1cm4gdGhpcy5zZWxlY3QoXCJxdWVyeVBhcmFtc1wiKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0UGFyYW1ldGVycygpOiBGaWx0ZXJQYXJhbWV0ZXJzTW9kZWwge1xuICAgICAgICByZXR1cm4gdGhpcy5zdG9yZS5nZXRQYXJhbWV0ZXJzKHRoaXMuc3RvcmUuZ2V0VmFsdWUoKS5maWx0ZXJQYXJhbWV0ZXJzKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0U3ViU3RhdGU8VD4obmFtZTogc3RyaW5nKTogVCB7XG4gICAgICAgIHJldHVybiB0aGlzLnN0b3JlLmdldFN1YlN0YXRlKG5hbWUpO1xuICAgIH1cbn1cbiJdfQ==
@@ -230,7 +230,7 @@ export class NiceFilterViewService {
230
230
  removeRule(id) {
231
231
  const { filterParameters } = this.store.getValue();
232
232
  const currentQuery = filterParameters.rules?.[0];
233
- const oldRule = currentQuery.rules.find((r) => r.id === id);
233
+ const oldRule = currentQuery?.rules?.find((r) => r.id === id);
234
234
  if (!oldRule) {
235
235
  return;
236
236
  }
@@ -286,4 +286,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
286
286
  type: Inject,
287
287
  args: [NiceFilterService]
288
288
  }] }]; }, propDecorators: { resetResult: [] } });
289
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmljZS1maWx0ZXItdmlldy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmljZS1kYXRhLWZpbHRlci1raXQvc3JjL2xpYi9jb21wb25lbnRzL25pY2UtZmlsdGVyLXZpZXcvc3RvcmUvbmljZS1maWx0ZXItdmlldy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxXQUFXLEVBQUUsV0FBVyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFbEYsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFHdEMsT0FBTyxFQUFFLG1CQUFtQixFQUF5QyxNQUFNLDZCQUE2QixDQUFDO0FBQ3pHLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDOzs7QUFHL0QsTUFBTSxPQUFPLHFCQUFxQjtJQUM5QixZQUNZLEtBQTBCLEVBRWxCLGFBQXFCO1FBRjdCLFVBQUssR0FBTCxLQUFLLENBQXFCO1FBRWxCLGtCQUFhLEdBQWIsYUFBYSxDQUFRO0lBQ3RDLENBQUM7SUFFRyxLQUFLO1FBQ1IsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRU0sT0FBTztRQUNWLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDO1lBQ2QsUUFBUSxFQUFFLElBQUk7U0FDakIsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVNLGNBQWMsQ0FBSSxJQUFZLEVBQUUsS0FBUTtRQUMzQyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0s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MEI7UUFDekMsSUFBSSxDQUFDLGlCQUFpQixFQUFFO1lBQ3BCLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDO2dCQUNkLFlBQVksRUFBRSxJQUFJO2FBQ3JCLENBQUMsQ0FBQztZQUNILElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1NBQ3RCO2FBQU07WUFDSCxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQztnQkFDZCxXQUFXLEVBQUUsSUFBSTthQUNwQixDQUFDLENBQUM7U0FDTjtJQUNMLENBQUM7O2tIQXBUUSxxQkFBcUIscURBR2xCLGlCQUFpQjtzSEFIcEIscUJBQXFCO0FBd1M5QjtJQUFDLFdBQVcsRUFBRTs7Ozt3REFZYjsyRkFwVFEscUJBQXFCO2tCQURqQyxVQUFVOzswQkFJRixNQUFNOzJCQUFDLGlCQUFpQjs0Q0FzU3RCLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgYXJyYXlBZGQsIGFycmF5UmVtb3ZlLCBhcnJheVVwc2VydCwgdHJhbnNhY3Rpb24gfSBmcm9tIFwiQGRhdG9yYW1hL2FraXRhXCI7XG5pbXBvcnQgeyBBZGRFbnRpdGllc09wdGlvbnMgfSBmcm9tIFwiQGRhdG9yYW1hL2FraXRhL3NyYy9saWIvYWRkRW50aXRpZXNcIjtcbmltcG9ydCB7IEZpbGVVdGlscyB9IGZyb20gXCJAcmVjdXJzeXZlL25pY2UtdWkta2l0LnYyXCI7XG5pbXBvcnQgeyBmaXJzdFZhbHVlRnJvbSB9IGZyb20gXCJyeGpzXCI7XG5pbXBvcnQgeyBRdWVyeVBhcmFtcyB9IGZyb20gXCIuLi8uLi8uLi9hcGkvZmlsdGVyLmFwaVwiO1xuaW1wb3J0IHsgRmlsdGVyUGFyYW1ldGVyc01vZGVsIH0gZnJvbSBcIi4uLy4uLy4uL21vZGVscy9maWx0ZXIubW9kZWxcIjtcbmltcG9ydCB7IEZpbHRlck9wZXJhdG9yVHlwZXMsIFF1ZXJ5TW9kZWwsIFF1ZXJ5UnVsZU1vZGVsLCBSdWxlTW9kZWwgfSBmcm9tIFwiLi4vLi4vLi4vbW9kZWxzL3F1ZXJ5Lm1vZGVsXCI7XG5pbXBvcnQgeyBOaWNlRmlsdGVyU2VydmljZSB9IGZyb20gXCIuLi8uLi9iYXNlLWxpc3QvcHJvdmlkZXJzL2Jhc2UtZmlsdGVyLnNlcnZpY2VcIjtcbmltcG9ydCB7IE5pY2VGaWx0ZXJWaWV3U3RvcmUgfSBmcm9tIFwiLi9uaWNlLWZpbHRlci12aWV3LnN0b3JlXCI7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBOaWNlRmlsdGVyVmlld1NlcnZpY2U8RmlsdGVyIGV4dGVuZHMgTmljZUZpbHRlclNlcnZpY2U8YW55PiA9IE5pY2VGaWx0ZXJTZXJ2aWNlPGFueT4+IHtcbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBzdG9yZTogTmljZUZpbHRlclZpZXdTdG9yZSxcbiAgICAgICAgQEluamVjdChOaWNlRmlsdGVyU2VydmljZSlcbiAgICAgICAgcHVibGljIHJlYWRvbmx5IGZpbHRlclNlcnZpY2U6IEZpbHRlclxuICAgICkge31cblxuICAgIHB1YmxpYyByZXNldCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zdG9yZS5yZXNldCgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBkaXNhYmxlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnN0b3JlLnVwZGF0ZSh7XG4gICAgICAgICAgICBkaXNhYmxlZDogdHJ1ZVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgdXBkYXRlU3ViU3RhdGU8VD4obmFtZTogc3RyaW5nLCB2YWx1ZTogVCk6IHZvaWQge1xuICAgICAgICB0aGlzLnN0b3JlLnVwZGF0ZSgoc3RhdGUpID0+ICh7XG4gICAgICAgICAgICBzdWJTdGF0ZXM6IHtcbiAgICAgICAgICAgICAgICAuLi5zdGF0ZS5zdWJTdGF0ZXMsXG4gICAgICAgICAgICAgICAgW25hbWVdOiB2YWx1ZVxuICAgICAgICAgICAgfVxuICAgICAgICB9KSk7XG4gICAgfVxuXG4gICAgcHVibGljIGVuYWJsZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zdG9yZS51cGRhdGUoe1xuICAgICAgICAgICAgZGlzYWJsZWQ6IGZhbHNlXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBzZXRBdXRvTG9hZChhdXRvTG9hZDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLnN0b3JlLnVwZGF0ZSh7IGF1dG9Mb2FkIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBzZXRMb2FkaW5nKGxvYWRpbmc6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zdG9yZS5zZXRMb2FkaW5nKGxvYWRpbmcpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzZXRNb2RlKG1vZGU6IFwicGFnaW5hdGVkXCIgfCBcImFjY3VtdWxhdGVkXCIpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zdG9yZS51cGRhdGUoeyBtb2RlIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBsb2FkQ29uZmlnKGNvbmZpZ1F1ZXJ5UGFyYW1zOiBRdWVyeVBhcmFtcyA9IHt9KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIHRoaXMuc3RvcmUuc2V0RmlsdGVyQ29uZmlnTG9hZGluZyh0cnVlKTtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGNvbnN0IGZpbHRlckNvbmZpZyA9IGF3YWl0IGZpcnN0VmFsdWVGcm9tKHRoaXMuZmlsdGVyU2VydmljZS5nZXRGaWx0ZXJDb25maWcoeyBwYXJhbXM6IGNvbmZpZ1F1ZXJ5UGFyYW1zIH0pKTtcbiAgICAgICAgICAgIHRoaXMuc3RvcmUudXBkYXRlKHtcbiAgICAgICAgICAgICAgICBmaWx0ZXJDb25maWdcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICB0aGlzLnN0b3JlLnNldEVycm9yKGUpO1xuICAgICAgICB9IGZpbmFsbHkge1xuICAgICAgICAgICAgdGhpcy5zdG9yZS5zZXRGaWx0ZXJDb25maWdMb2FkaW5nKGZhbHNlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBmaWx0ZXIoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIGNvbnN0IHsgZmlsdGVyUGFyYW1ldGVycywgZGlzYWJsZWQsIHF1ZXJ5UGFyYW1zIH0gPSB0aGlzLnN0b3JlLmdldFZhbHVlKCk7XG4gICAgICAgIGlmIChkaXNhYmxlZCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIHRoaXMuc3RvcmUuc2V0TG9hZGluZyh0cnVlKTtcbiAgICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IGZpcnN0VmFsdWVGcm9tKFxuICAgICAgICAgICAgICAgIHRoaXMuZmlsdGVyU2VydmljZS5maWx0ZXIoXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc3RvcmUuZ2V0UGFyYW1ldGVycyhmaWx0ZXJQYXJhbWV0ZXJzKSxcbiAgICAgICAgICAgICAgICAgICAgeyBwYXJhbXM6IHF1ZXJ5UGFyYW1zIH0sXG4gICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICB0aGlzLnN0b3JlLnNldFJlc3VsdChyZXN1bHQpO1xuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICB0aGlzLnN0b3JlLnNldEVycm9yKGUpO1xuICAgICAgICB9IGZpbmFsbHkge1xuICAgICAgICAgICAgdGhpcy5zdG9yZS5zZXRMb2FkaW5nKGZhbHNlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBkb3dubG9hZERhdGEodHlwZTogc3RyaW5nLCBkb3dubG9hZEZpbGVOYW1lOiBzdHJpbmcsIGlkcz86IG51bWJlcltdKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIGNvbnN0IHsgZmlsdGVyUGFyYW1ldGVycywgZGlzYWJsZWQgfSA9IHRoaXMuc3RvcmUuZ2V0VmFsdWUoKTtcbiAgICAgICAgaWYgKGRpc2FibGVkKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBwYXJhbWV0ZXJzID0ge1xuICAgICAgICAgICAgLi4uZmlsdGVyUGFyYW1ldGVycyxcbiAgICAgICAgICAgIHJ1bGVzOiBmaWx0ZXJQYXJhbWV0ZXJzPy5ydWxlcyA/IFsuLi5maWx0ZXJQYXJhbWV0ZXJzLnJ1bGVzXSA6IFtdXG4gICAgICAgIH07XG5cbiAgICAgICAgaWYgKGlkcz8ubGVuZ3RoKSB7XG4gICAgICAgICAgICBwYXJhbWV0ZXJzLnJ1bGVzLnB1c2goe1xuICAgICAgICAgICAgICAgICAgICBjb25kaXRpb246IFwiYW5kXCIsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IFwiaWRcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGVyYXRpb246IEZpbHRlck9wZXJhdG9yVHlwZXMuSW4sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IGlkc1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICB0aGlzLnN0b3JlLnNldExvYWRpbmcodHJ1ZSk7XG4gICAgICAgICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBmaXJzdFZhbHVlRnJvbSh0aGlzLmZpbHRlclNlcnZpY2UuZ2V0RmlsZSh0eXBlLCB0aGlzLnN0b3JlLmdldFBhcmFtZXRlcnMocGFyYW1ldGVycykpKTtcbiAgICAgICAgICAgIEZpbGVVdGlscy5kb3dubG9hZEZpbGUoYCR7ZG93bmxvYWRGaWxlTmFtZX0uJHt0eXBlfWAsIHJlc3VsdCk7XG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgIHRoaXMuc3RvcmUuc2V0RXJyb3IoZSk7XG4gICAgICAgIH0gZmluYWxseSB7XG4gICAgICAgICAgICB0aGlzLnN0b3JlLnNldExvYWRpbmcoZmFsc2UpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIHByaW50RGF0YSgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgY29uc3QgeyBmaWx0ZXJQYXJhbWV0ZXJzLCBkaXNhYmxlZCB9ID0gdGhpcy5zdG9yZS5nZXRWYWx1ZSgpO1xuICAgICAgICBpZiAoZGlzYWJsZWQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICB0aGlzLnN0b3JlLnNldExvYWRpbmcodHJ1ZSk7XG4gICAgICAgICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBmaXJzdFZhbHVlRnJvbSh0aGlzLmZpbHRlclNlcnZpY2UuZ2V0UHJpbnRhYmxlSHRtbCh0aGlzLnN0b3JlLmdldFBhcmFtZXRlcnMoZmlsdGVyUGFyYW1ldGVycykpKTtcbiAgICAgICAgICAgIEZpbGVVdGlscy5vcGVuUHJpbnRhYmxlV2luZG93KHJlc3VsdCk7XG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgIHRoaXMuc3RvcmUuc2V0RXJyb3IoZSk7XG4gICAgICAgIH0gZmluYWxseSB7XG4gICAgICAgICAgICB0aGlzLnN0b3JlLnNldExvYWRpbmcoZmFsc2UpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGRlcHJlY2F0ZWQgcmVsb2FkIHNob3cgbm90IGJlIHBhc3NlZCwgYW5kIHRoZSBjYWxsZXIgc2hvdWxkIGluc3RlYWQgY2FsbCBgZmlsdGVyKClgIGFmdGVyIGNhbGxpbmcgdGhpcyBmdW5jdGlvbi5cbiAgICAgKi9cbiAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6dW5pZmllZC1zaWduYXR1cmVzXG4gICAgcHVibGljIHNldFBhcmFtZXRlcnMoZmlsdGVyUGFyYW1ldGVyczogRmlsdGVyUGFyYW1ldGVyc01vZGVsLCByZWxvYWQ6IGJvb2xlYW4pOiB2b2lkO1xuICAgIHB1YmxpYyBzZXRQYXJhbWV0ZXJzKGZpbHRlclBhcmFtZXRlcnM6IEZpbHRlclBhcmFtZXRlcnNNb2RlbCk6IHZvaWQ7XG4gICAgcHVibGljIHNldFBhcmFtZXRlcnMoZmlsdGVyUGFyYW1ldGVyczogRmlsdGVyUGFyYW1ldGVyc01vZGVsLCByZWxvYWQ/OiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc3RvcmUuc2V0UGFyYW1ldGVycyhmaWx0ZXJQYXJhbWV0ZXJzKTtcbiAgICAgICAgaWYgKHJlbG9hZCkge1xuICAgICAgICAgICAgdGhpcy5maWx0ZXIoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBwYXRjaFBhcmFtZXRlcnMoZmlsdGVyUGFyYW1ldGVyczogRmlsdGVyUGFyYW1ldGVyc01vZGVsKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc3RvcmUucGF0Y2hQYXJhbWV0ZXJzKGZpbHRlclBhcmFtZXRlcnMpO1xuICAgIH1cblxuICAgIHB1YmxpYyByZXNldFBhZ2luZygpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgeyBmaWx0ZXJQYXJhbWV0ZXJzIH0gPSB0aGlzLnN0b3JlLmdldFZhbHVlKCk7XG4gICAgICAgIHRoaXMuc2V0UGFyYW1ldGVycyh7XG4gICAgICAgICAgICAuLi5maWx0ZXJQYXJhbWV0ZXJzLFxuICAgICAgICAgICAgc3RhcnQ6IDBcbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5yZXNldFJlc3VsdCh0cnVlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc2V0UXVlcnlQYXJhbXMocXVlcnlQYXJhbXM6IFF1ZXJ5UGFyYW1zKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc3RvcmUudXBkYXRlKHsgcXVlcnlQYXJhbXMgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIHNldEJhc2VSdWxlcyhydWxlOiAoUXVlcnlSdWxlTW9kZWwgfCBRdWVyeU1vZGVsKVtdLCByZWxvYWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zdG9yZS51cGRhdGUoe1xuICAgICAgICAgICAgYmFzZVJ1bGVzOiBydWxlXG4gICAgICAgIH0pO1xuXG4gICAgICAgIGlmIChyZWxvYWQpIHtcbiAgICAgICAgICAgIHRoaXMuZmlsdGVyKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgYWRkQmFzZVJ1bGUocnVsZTogUXVlcnlSdWxlTW9kZWwsIHJlbG9hZDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLnN0b3JlLnVwZGF0ZSgoeyBiYXNlUnVsZXMgfSkgPT4gKHtcbiAgICAgICAgICAgIGJhc2VSdWxlczogYXJyYXlBZGQoYmFzZVJ1bGVzID8/IFtdLCBydWxlKVxuICAgICAgICB9KSk7XG5cbiAgICAgICAgaWYgKHJlbG9hZCkge1xuICAgICAgICAgICAgdGhpcy5maWx0ZXIoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyB1cHNlcnRCYXNlUnVsZXMocnVsZTogUXVlcnlSdWxlTW9kZWwsIHJlbG9hZDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLnN0b3JlLnVwZGF0ZSgoeyBiYXNlUnVsZXMgfSkgPT4gKHtcbiAgICAgICAgICAgIGJhc2VSdWxlczogYXJyYXlVcHNlcnQoYmFzZVJ1bGVzID8/IFtdLCBydWxlLmlkLCBydWxlKVxuICAgICAgICB9KSk7XG5cbiAgICAgICAgaWYgKHJlbG9hZCkge1xuICAgICAgICAgICAgdGhpcy5maWx0ZXIoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyByZW1vdmVCYXNlUnVsZXMoa2V5OiBzdHJpbmcsIHJlbG9hZDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLnN0b3JlLnVwZGF0ZSgoeyBiYXNlUnVsZXMgfSkgPT4gKHtcbiAgICAgICAgICAgIGJhc2VSdWxlczogYXJyYXlSZW1vdmUoYmFzZVJ1bGVzID8/IFtdLCBrZXkpXG4gICAgICAgIH0pKTtcblxuICAgICAgICBpZiAocmVsb2FkKSB7XG4gICAgICAgICAgICB0aGlzLmZpbHRlcigpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIHNldFJ1bGVzKHJ1bGVzOiBRdWVyeU1vZGVsIHwgUXVlcnlNb2RlbFtdKTogdm9pZCB7XG4gICAgICAgIGlmICghQXJyYXkuaXNBcnJheShydWxlcykpIHtcbiAgICAgICAgICAgIHJ1bGVzID0gW3J1bGVzXTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHsgZmlsdGVyUGFyYW1ldGVycyB9ID0gdGhpcy5zdG9yZS5nZXRWYWx1ZSgpO1xuICAgICAgICBjb25zdCBuZXdSdWxlczogRmlsdGVyUGFyYW1ldGVyc01vZGVsID0ge1xuICAgICAgICAgICAgb3JkZXI6IGZpbHRlclBhcmFtZXRlcnMub3JkZXIsXG4gICAgICAgICAgICBmYWxsYmFja09yZGVyOiBmaWx0ZXJQYXJhbWV0ZXJzLmZhbGxiYWNrT3JkZXIsXG4gICAgICAgICAgICBzdGFydDogMCxcbiAgICAgICAgICAgIGxlbmd0aDogZmlsdGVyUGFyYW1ldGVycy5sZW5ndGgsXG4gICAgICAgICAgICBkYXRhOiBmaWx0ZXJQYXJhbWV0ZXJzLmRhdGEsXG4gICAgICAgICAgICBydWxlc1xuICAgICAgICB9O1xuXG4gICAgICAgIHRoaXMuc2V0UGFyYW1ldGVycyhuZXdSdWxlcyk7XG4gICAgfVxuXG4gICAgcHVibGljIHVwc2VydFJ1bGUoaWQ6IHN0cmluZywgbmV3UnVsZTogUnVsZU1vZGVsKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHsgZmlsdGVyUGFyYW1ldGVycyB9ID0gdGhpcy5zdG9yZS5nZXRWYWx1ZSgpO1xuICAgICAgICBjb25zdCBjdXJyZW50UXVlcnkgPSBmaWx0ZXJQYXJhbWV0ZXJzLnJ1bGVzPy5bMF07XG4gICAgICAgIGNvbnN0IHJ1bGU6IFF1ZXJ5UnVsZU1vZGVsID0ge1xuICAgICAgICAgICAgaWQsXG4gICAgICAgICAgICAuLi5uZXdSdWxlXG4gICAgICAgIH07XG4gICAgICAgIGNvbnN0IHF1ZXJ5OiBRdWVyeU1vZGVsID0geyBydWxlczogW3J1bGVdLCBjb25kaXRpb246IFwiYW5kXCIgfTtcbiAgICAgICAgaWYgKCFjdXJyZW50UXVlcnkgfHwgY3VycmVudFF1ZXJ5LnJ1bGVzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgdGhpcy5zZXRSdWxlcyhxdWVyeSk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBvbGRSdWxlID0gY3VycmVudFF1ZXJ5LnJ1bGVzLmZpbmQoKHIpID0+IChyIGFzIFF1ZXJ5UnVsZU1vZGVsKS5pZCA9PT0gaWQpIGFzIFF1ZXJ5UnVsZU1vZGVsO1xuICAgICAgICBsZXQgbmV3UnVsZXMgPSBjdXJyZW50UXVlcnkucnVsZXM7XG4gICAgICAgIGlmIChvbGRSdWxlKSB7XG4gICAgICAgICAgICBpZiAobmV3UnVsZSkge1xuICAgICAgICAgICAgICAgIC8vIEFycmF5IHJlcGxhY2VcbiAgICAgICAgICAgICAgICBuZXdSdWxlcyA9IFtcbiAgICAgICAgICAgICAgICAgICAgLi4uY3VycmVudFF1ZXJ5LnJ1bGVzLnNsaWNlKDAsIGN1cnJlbnRRdWVyeS5ydWxlcy5pbmRleE9mKG9sZFJ1bGUpKSxcbiAgICAgICAgICAgICAgICAgICAgcnVsZSxcbiAgICAgICAgICAgICAgICAgICAgLi4uY3VycmVudFF1ZXJ5LnJ1bGVzLnNsaWNlKGN1cnJlbnRRdWVyeS5ydWxlcy5pbmRleE9mKG9sZFJ1bGUpICsgMSwgY3VycmVudFF1ZXJ5LnJ1bGVzLmxlbmd0aClcbiAgICAgICAgICAgICAgICBdO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBuZXdSdWxlcyA9IGN1cnJlbnRRdWVyeS5ydWxlcy5maWx0ZXIoKHIpID0+IChyIGFzIFF1ZXJ5UnVsZU1vZGVsKS5pZCAhPT0gaWQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgbmV3UnVsZXMgPSBbLi4ubmV3UnVsZXMsIHJ1bGVdO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuc2V0UnVsZXMoe1xuICAgICAgICAgICAgY29uZGl0aW9uOiBjdXJyZW50UXVlcnkuY29uZGl0aW9uLFxuICAgICAgICAgICAgcnVsZXM6IG5ld1J1bGVzXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyByZW1vdmVSdWxlKGlkOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgeyBmaWx0ZXJQYXJhbWV0ZXJzIH0gPSB0aGlzLnN0b3JlLmdldFZhbHVlKCk7XG4gICAgICAgIGNvbnN0IGN1cnJlbnRRdWVyeSA9IGZpbHRlclBhcmFtZXRlcnMucnVsZXM/LlswXTtcbiAgICAgICAgY29uc3Qgb2xkUnVsZSA9IGN1cnJlbnRRdWVyeS5ydWxlcy5maW5kKChyKSA9PiAociBhcyBRdWVyeVJ1bGVNb2RlbCkuaWQgPT09IGlkKSBhcyBRdWVyeVJ1bGVNb2RlbDtcbiAgICAgICAgaWYgKCFvbGRSdWxlKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBuZXdSdWxlcyA9IGN1cnJlbnRRdWVyeS5ydWxlcy5maWx0ZXIoKHIpID0+IChyIGFzIFF1ZXJ5UnVsZU1vZGVsKS5pZCAhPT0gaWQpO1xuICAgICAgICB0aGlzLnNldFJ1bGVzKHtcbiAgICAgICAgICAgIGNvbmRpdGlvbjogY3VycmVudFF1ZXJ5LmNvbmRpdGlvbixcbiAgICAgICAgICAgIHJ1bGVzOiBuZXdSdWxlc1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYWRkVmFsdWUodmFsdWU6IGFueSwgb3B0cz86IEFkZEVudGl0aWVzT3B0aW9ucyk6IHZvaWQge1xuICAgICAgICB0aGlzLnN0b3JlLmFkZFZhbHVlKHZhbHVlLCBvcHRzKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYWRkVmFsdWVzKHZhbHVlOiBhbnlbXSwgb3B0cz86IEFkZEVudGl0aWVzT3B0aW9ucyk6IHZvaWQge1xuICAgICAgICB0aGlzLnN0b3JlLmFkZFZhbHVlcyh2YWx1ZSwgb3B0cyk7XG4gICAgfVxuXG4gICAgcHVibGljIHVwc2VydFZhbHVlKHZhbHVlOiBhbnksIGtleT86IHN0cmluZyk6IHZvaWQge1xuICAgICAgICB0aGlzLnN0b3JlLnVwc2VydFZhbHVlKHZhbHVlLCBrZXkpO1xuICAgIH1cblxuICAgIHB1YmxpYyB1cHNlcnRWYWx1ZXModmFsdWVzOiBhbnlbXSwga2V5Pzogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc3RvcmUudXBzZXJ0VmFsdWVzKHZhbHVlcywga2V5KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgcmVtb3ZlVmFsdWUodmFsdWU6IGFueSwga2V5Pzogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc3RvcmUucmVtb3ZlVmFsdWUodmFsdWUsIGtleSk7XG4gICAgfVxuXG4gICAgcHVibGljIHJlbW92ZVZhbHVlcyh2YWx1ZXM6IGFueVtdLCBrZXk/OiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zdG9yZS5yZW1vdmVWYWx1ZXModmFsdWVzLCBrZXkpO1xuICAgIH1cblxuICAgIEB0cmFuc2FjdGlvbigpXG4gICAgcHVibGljIHJlc2V0UmVzdWx0KHdhaXRGb3JOZXh0RmlsdGVyOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIGlmICghd2FpdEZvck5leHRGaWx0ZXIpIHtcbiAgICAgICAgICAgIHRoaXMuc3RvcmUudXBkYXRlKHtcbiAgICAgICAgICAgICAgICBmaWx0ZXJSZXN1bHQ6IG51bGxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgdGhpcy5zdG9yZS5zZXQoW10pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5zdG9yZS51cGRhdGUoe1xuICAgICAgICAgICAgICAgIHJlc2V0UmVzdWx0OiB0cnVlXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
289
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmljZS1maWx0ZXItdmlldy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmljZS1kYXRhLWZpbHRlci1raXQvc3JjL2xpYi9jb21wb25lbnRzL25pY2UtZmlsdGVyLXZpZXcvc3RvcmUvbmljZS1maWx0ZXItdmlldy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxXQUFXLEVBQUUsV0FBVyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFbEYsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFHdEMsT0FBTyxFQUFFLG1CQUFtQixFQUF5QyxNQUFNLDZCQUE2QixDQUFDO0FBQ3pHLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDOzs7QUFHL0QsTUFBTSxPQUFPLHFCQUFxQjtJQUM5QixZQUNZLEtBQTBCLEVBRWxCLGFBQXFCO1FBRjdCLFVBQUssR0FBTCxLQUFLLENBQXFCO1FBRWxCLGtCQUFhLEdBQWIsYUFBYSxDQUFRO0lBQ3RDLENBQUM7SUFFRyxLQUFLO1FBQ1IsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRU0sT0FBTztRQUNWLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDO1lBQ2QsUUFBUSxFQUFFLElBQUk7U0FDakIsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVNLGNBQWMsQ0FBSSxJQUFZLEVBQUUsS0FBUTtRQUMzQyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0s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MEI7UUFDekMsSUFBSSxDQUFDLGlCQUFpQixFQUFFO1lBQ3BCLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDO2dCQUNkLFlBQVksRUFBRSxJQUFJO2FBQ3JCLENBQUMsQ0FBQztZQUNILElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1NBQ3RCO2FBQU07WUFDSCxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQztnQkFDZCxXQUFXLEVBQUUsSUFBSTthQUNwQixDQUFDLENBQUM7U0FDTjtJQUNMLENBQUM7O2tIQXBUUSxxQkFBcUIscURBR2xCLGlCQUFpQjtzSEFIcEIscUJBQXFCO0FBd1M5QjtJQUFDLFdBQVcsRUFBRTs7Ozt3REFZYjsyRkFwVFEscUJBQXFCO2tCQURqQyxVQUFVOzswQkFJRixNQUFNOzJCQUFDLGlCQUFpQjs0Q0FzU3RCLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgYXJyYXlBZGQsIGFycmF5UmVtb3ZlLCBhcnJheVVwc2VydCwgdHJhbnNhY3Rpb24gfSBmcm9tIFwiQGRhdG9yYW1hL2FraXRhXCI7XG5pbXBvcnQgeyBBZGRFbnRpdGllc09wdGlvbnMgfSBmcm9tIFwiQGRhdG9yYW1hL2FraXRhL3NyYy9saWIvYWRkRW50aXRpZXNcIjtcbmltcG9ydCB7IEZpbGVVdGlscyB9IGZyb20gXCJAcmVjdXJzeXZlL25pY2UtdWkta2l0LnYyXCI7XG5pbXBvcnQgeyBmaXJzdFZhbHVlRnJvbSB9IGZyb20gXCJyeGpzXCI7XG5pbXBvcnQgeyBRdWVyeVBhcmFtcyB9IGZyb20gXCIuLi8uLi8uLi9hcGkvZmlsdGVyLmFwaVwiO1xuaW1wb3J0IHsgRmlsdGVyUGFyYW1ldGVyc01vZGVsIH0gZnJvbSBcIi4uLy4uLy4uL21vZGVscy9maWx0ZXIubW9kZWxcIjtcbmltcG9ydCB7IEZpbHRlck9wZXJhdG9yVHlwZXMsIFF1ZXJ5TW9kZWwsIFF1ZXJ5UnVsZU1vZGVsLCBSdWxlTW9kZWwgfSBmcm9tIFwiLi4vLi4vLi4vbW9kZWxzL3F1ZXJ5Lm1vZGVsXCI7XG5pbXBvcnQgeyBOaWNlRmlsdGVyU2VydmljZSB9IGZyb20gXCIuLi8uLi9iYXNlLWxpc3QvcHJvdmlkZXJzL2Jhc2UtZmlsdGVyLnNlcnZpY2VcIjtcbmltcG9ydCB7IE5pY2VGaWx0ZXJWaWV3U3RvcmUgfSBmcm9tIFwiLi9uaWNlLWZpbHRlci12aWV3LnN0b3JlXCI7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBOaWNlRmlsdGVyVmlld1NlcnZpY2U8RmlsdGVyIGV4dGVuZHMgTmljZUZpbHRlclNlcnZpY2U8YW55PiA9IE5pY2VGaWx0ZXJTZXJ2aWNlPGFueT4+IHtcbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBzdG9yZTogTmljZUZpbHRlclZpZXdTdG9yZSxcbiAgICAgICAgQEluamVjdChOaWNlRmlsdGVyU2VydmljZSlcbiAgICAgICAgcHVibGljIHJlYWRvbmx5IGZpbHRlclNlcnZpY2U6IEZpbHRlclxuICAgICkge31cblxuICAgIHB1YmxpYyByZXNldCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zdG9yZS5yZXNldCgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBkaXNhYmxlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnN0b3JlLnVwZGF0ZSh7XG4gICAgICAgICAgICBkaXNhYmxlZDogdHJ1ZVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgdXBkYXRlU3ViU3RhdGU8VD4obmFtZTogc3RyaW5nLCB2YWx1ZTogVCk6IHZvaWQge1xuICAgICAgICB0aGlzLnN0b3JlLnVwZGF0ZSgoc3RhdGUpID0+ICh7XG4gICAgICAgICAgICBzdWJTdGF0ZXM6IHtcbiAgICAgICAgICAgICAgICAuLi5zdGF0ZS5zdWJTdGF0ZXMsXG4gICAgICAgICAgICAgICAgW25hbWVdOiB2YWx1ZVxuICAgICAgICAgICAgfVxuICAgICAgICB9KSk7XG4gICAgfVxuXG4gICAgcHVibGljIGVuYWJsZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zdG9yZS51cGRhdGUoe1xuICAgICAgICAgICAgZGlzYWJsZWQ6IGZhbHNlXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBzZXRBdXRvTG9hZChhdXRvTG9hZDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLnN0b3JlLnVwZGF0ZSh7IGF1dG9Mb2FkIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBzZXRMb2FkaW5nKGxvYWRpbmc6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zdG9yZS5zZXRMb2FkaW5nKGxvYWRpbmcpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzZXRNb2RlKG1vZGU6IFwicGFnaW5hdGVkXCIgfCBcImFjY3VtdWxhdGVkXCIpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zdG9yZS51cGRhdGUoeyBtb2RlIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBsb2FkQ29uZmlnKGNvbmZpZ1F1ZXJ5UGFyYW1zOiBRdWVyeVBhcmFtcyA9IHt9KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIHRoaXMuc3RvcmUuc2V0RmlsdGVyQ29uZmlnTG9hZGluZyh0cnVlKTtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGNvbnN0IGZpbHRlckNvbmZpZyA9IGF3YWl0IGZpcnN0VmFsdWVGcm9tKHRoaXMuZmlsdGVyU2VydmljZS5nZXRGaWx0ZXJDb25maWcoeyBwYXJhbXM6IGNvbmZpZ1F1ZXJ5UGFyYW1zIH0pKTtcbiAgICAgICAgICAgIHRoaXMuc3RvcmUudXBkYXRlKHtcbiAgICAgICAgICAgICAgICBmaWx0ZXJDb25maWdcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICB0aGlzLnN0b3JlLnNldEVycm9yKGUpO1xuICAgICAgICB9IGZpbmFsbHkge1xuICAgICAgICAgICAgdGhpcy5zdG9yZS5zZXRGaWx0ZXJDb25maWdMb2FkaW5nKGZhbHNlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBmaWx0ZXIoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIGNvbnN0IHsgZmlsdGVyUGFyYW1ldGVycywgZGlzYWJsZWQsIHF1ZXJ5UGFyYW1zIH0gPSB0aGlzLnN0b3JlLmdldFZhbHVlKCk7XG4gICAgICAgIGlmIChkaXNhYmxlZCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIHRoaXMuc3RvcmUuc2V0TG9hZGluZyh0cnVlKTtcbiAgICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IGZpcnN0VmFsdWVGcm9tKFxuICAgICAgICAgICAgICAgIHRoaXMuZmlsdGVyU2VydmljZS5maWx0ZXIoXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc3RvcmUuZ2V0UGFyYW1ldGVycyhmaWx0ZXJQYXJhbWV0ZXJzKSxcbiAgICAgICAgICAgICAgICAgICAgeyBwYXJhbXM6IHF1ZXJ5UGFyYW1zIH0sXG4gICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICB0aGlzLnN0b3JlLnNldFJlc3VsdChyZXN1bHQpO1xuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICB0aGlzLnN0b3JlLnNldEVycm9yKGUpO1xuICAgICAgICB9IGZpbmFsbHkge1xuICAgICAgICAgICAgdGhpcy5zdG9yZS5zZXRMb2FkaW5nKGZhbHNlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBkb3dubG9hZERhdGEodHlwZTogc3RyaW5nLCBkb3dubG9hZEZpbGVOYW1lOiBzdHJpbmcsIGlkcz86IG51bWJlcltdKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIGNvbnN0IHsgZmlsdGVyUGFyYW1ldGVycywgZGlzYWJsZWQgfSA9IHRoaXMuc3RvcmUuZ2V0VmFsdWUoKTtcbiAgICAgICAgaWYgKGRpc2FibGVkKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBwYXJhbWV0ZXJzID0ge1xuICAgICAgICAgICAgLi4uZmlsdGVyUGFyYW1ldGVycyxcbiAgICAgICAgICAgIHJ1bGVzOiBmaWx0ZXJQYXJhbWV0ZXJzPy5ydWxlcyA/IFsuLi5maWx0ZXJQYXJhbWV0ZXJzLnJ1bGVzXSA6IFtdXG4gICAgICAgIH07XG5cbiAgICAgICAgaWYgKGlkcz8ubGVuZ3RoKSB7XG4gICAgICAgICAgICBwYXJhbWV0ZXJzLnJ1bGVzLnB1c2goe1xuICAgICAgICAgICAgICAgICAgICBjb25kaXRpb246IFwiYW5kXCIsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IFwiaWRcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGVyYXRpb246IEZpbHRlck9wZXJhdG9yVHlwZXMuSW4sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IGlkc1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICB0aGlzLnN0b3JlLnNldExvYWRpbmcodHJ1ZSk7XG4gICAgICAgICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBmaXJzdFZhbHVlRnJvbSh0aGlzLmZpbHRlclNlcnZpY2UuZ2V0RmlsZSh0eXBlLCB0aGlzLnN0b3JlLmdldFBhcmFtZXRlcnMocGFyYW1ldGVycykpKTtcbiAgICAgICAgICAgIEZpbGVVdGlscy5kb3dubG9hZEZpbGUoYCR7ZG93bmxvYWRGaWxlTmFtZX0uJHt0eXBlfWAsIHJlc3VsdCk7XG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgIHRoaXMuc3RvcmUuc2V0RXJyb3IoZSk7XG4gICAgICAgIH0gZmluYWxseSB7XG4gICAgICAgICAgICB0aGlzLnN0b3JlLnNldExvYWRpbmcoZmFsc2UpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIHByaW50RGF0YSgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgY29uc3QgeyBmaWx0ZXJQYXJhbWV0ZXJzLCBkaXNhYmxlZCB9ID0gdGhpcy5zdG9yZS5nZXRWYWx1ZSgpO1xuICAgICAgICBpZiAoZGlzYWJsZWQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICB0aGlzLnN0b3JlLnNldExvYWRpbmcodHJ1ZSk7XG4gICAgICAgICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBmaXJzdFZhbHVlRnJvbSh0aGlzLmZpbHRlclNlcnZpY2UuZ2V0UHJpbnRhYmxlSHRtbCh0aGlzLnN0b3JlLmdldFBhcmFtZXRlcnMoZmlsdGVyUGFyYW1ldGVycykpKTtcbiAgICAgICAgICAgIEZpbGVVdGlscy5vcGVuUHJpbnRhYmxlV2luZG93KHJlc3VsdCk7XG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgIHRoaXMuc3RvcmUuc2V0RXJyb3IoZSk7XG4gICAgICAgIH0gZmluYWxseSB7XG4gICAgICAgICAgICB0aGlzLnN0b3JlLnNldExvYWRpbmcoZmFsc2UpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGRlcHJlY2F0ZWQgcmVsb2FkIHNob3cgbm90IGJlIHBhc3NlZCwgYW5kIHRoZSBjYWxsZXIgc2hvdWxkIGluc3RlYWQgY2FsbCBgZmlsdGVyKClgIGFmdGVyIGNhbGxpbmcgdGhpcyBmdW5jdGlvbi5cbiAgICAgKi9cbiAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6dW5pZmllZC1zaWduYXR1cmVzXG4gICAgcHVibGljIHNldFBhcmFtZXRlcnMoZmlsdGVyUGFyYW1ldGVyczogRmlsdGVyUGFyYW1ldGVyc01vZGVsLCByZWxvYWQ6IGJvb2xlYW4pOiB2b2lkO1xuICAgIHB1YmxpYyBzZXRQYXJhbWV0ZXJzKGZpbHRlclBhcmFtZXRlcnM6IEZpbHRlclBhcmFtZXRlcnNNb2RlbCk6IHZvaWQ7XG4gICAgcHVibGljIHNldFBhcmFtZXRlcnMoZmlsdGVyUGFyYW1ldGVyczogRmlsdGVyUGFyYW1ldGVyc01vZGVsLCByZWxvYWQ/OiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc3RvcmUuc2V0UGFyYW1ldGVycyhmaWx0ZXJQYXJhbWV0ZXJzKTtcbiAgICAgICAgaWYgKHJlbG9hZCkge1xuICAgICAgICAgICAgdGhpcy5maWx0ZXIoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBwYXRjaFBhcmFtZXRlcnMoZmlsdGVyUGFyYW1ldGVyczogRmlsdGVyUGFyYW1ldGVyc01vZGVsKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc3RvcmUucGF0Y2hQYXJhbWV0ZXJzKGZpbHRlclBhcmFtZXRlcnMpO1xuICAgIH1cblxuICAgIHB1YmxpYyByZXNldFBhZ2luZygpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgeyBmaWx0ZXJQYXJhbWV0ZXJzIH0gPSB0aGlzLnN0b3JlLmdldFZhbHVlKCk7XG4gICAgICAgIHRoaXMuc2V0UGFyYW1ldGVycyh7XG4gICAgICAgICAgICAuLi5maWx0ZXJQYXJhbWV0ZXJzLFxuICAgICAgICAgICAgc3RhcnQ6IDBcbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5yZXNldFJlc3VsdCh0cnVlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc2V0UXVlcnlQYXJhbXMocXVlcnlQYXJhbXM6IFF1ZXJ5UGFyYW1zKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc3RvcmUudXBkYXRlKHsgcXVlcnlQYXJhbXMgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIHNldEJhc2VSdWxlcyhydWxlOiAoUXVlcnlSdWxlTW9kZWwgfCBRdWVyeU1vZGVsKVtdLCByZWxvYWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zdG9yZS51cGRhdGUoe1xuICAgICAgICAgICAgYmFzZVJ1bGVzOiBydWxlXG4gICAgICAgIH0pO1xuXG4gICAgICAgIGlmIChyZWxvYWQpIHtcbiAgICAgICAgICAgIHRoaXMuZmlsdGVyKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgYWRkQmFzZVJ1bGUocnVsZTogUXVlcnlSdWxlTW9kZWwsIHJlbG9hZDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLnN0b3JlLnVwZGF0ZSgoeyBiYXNlUnVsZXMgfSkgPT4gKHtcbiAgICAgICAgICAgIGJhc2VSdWxlczogYXJyYXlBZGQoYmFzZVJ1bGVzID8/IFtdLCBydWxlKVxuICAgICAgICB9KSk7XG5cbiAgICAgICAgaWYgKHJlbG9hZCkge1xuICAgICAgICAgICAgdGhpcy5maWx0ZXIoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyB1cHNlcnRCYXNlUnVsZXMocnVsZTogUXVlcnlSdWxlTW9kZWwsIHJlbG9hZDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLnN0b3JlLnVwZGF0ZSgoeyBiYXNlUnVsZXMgfSkgPT4gKHtcbiAgICAgICAgICAgIGJhc2VSdWxlczogYXJyYXlVcHNlcnQoYmFzZVJ1bGVzID8/IFtdLCBydWxlLmlkLCBydWxlKVxuICAgICAgICB9KSk7XG5cbiAgICAgICAgaWYgKHJlbG9hZCkge1xuICAgICAgICAgICAgdGhpcy5maWx0ZXIoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyByZW1vdmVCYXNlUnVsZXMoa2V5OiBzdHJpbmcsIHJlbG9hZDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLnN0b3JlLnVwZGF0ZSgoeyBiYXNlUnVsZXMgfSkgPT4gKHtcbiAgICAgICAgICAgIGJhc2VSdWxlczogYXJyYXlSZW1vdmUoYmFzZVJ1bGVzID8/IFtdLCBrZXkpXG4gICAgICAgIH0pKTtcblxuICAgICAgICBpZiAocmVsb2FkKSB7XG4gICAgICAgICAgICB0aGlzLmZpbHRlcigpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIHNldFJ1bGVzKHJ1bGVzOiBRdWVyeU1vZGVsIHwgUXVlcnlNb2RlbFtdKTogdm9pZCB7XG4gICAgICAgIGlmICghQXJyYXkuaXNBcnJheShydWxlcykpIHtcbiAgICAgICAgICAgIHJ1bGVzID0gW3J1bGVzXTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHsgZmlsdGVyUGFyYW1ldGVycyB9ID0gdGhpcy5zdG9yZS5nZXRWYWx1ZSgpO1xuICAgICAgICBjb25zdCBuZXdSdWxlczogRmlsdGVyUGFyYW1ldGVyc01vZGVsID0ge1xuICAgICAgICAgICAgb3JkZXI6IGZpbHRlclBhcmFtZXRlcnMub3JkZXIsXG4gICAgICAgICAgICBmYWxsYmFja09yZGVyOiBmaWx0ZXJQYXJhbWV0ZXJzLmZhbGxiYWNrT3JkZXIsXG4gICAgICAgICAgICBzdGFydDogMCxcbiAgICAgICAgICAgIGxlbmd0aDogZmlsdGVyUGFyYW1ldGVycy5sZW5ndGgsXG4gICAgICAgICAgICBkYXRhOiBmaWx0ZXJQYXJhbWV0ZXJzLmRhdGEsXG4gICAgICAgICAgICBydWxlc1xuICAgICAgICB9O1xuXG4gICAgICAgIHRoaXMuc2V0UGFyYW1ldGVycyhuZXdSdWxlcyk7XG4gICAgfVxuXG4gICAgcHVibGljIHVwc2VydFJ1bGUoaWQ6IHN0cmluZywgbmV3UnVsZTogUnVsZU1vZGVsKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHsgZmlsdGVyUGFyYW1ldGVycyB9ID0gdGhpcy5zdG9yZS5nZXRWYWx1ZSgpO1xuICAgICAgICBjb25zdCBjdXJyZW50UXVlcnkgPSBmaWx0ZXJQYXJhbWV0ZXJzLnJ1bGVzPy5bMF07XG4gICAgICAgIGNvbnN0IHJ1bGU6IFF1ZXJ5UnVsZU1vZGVsID0ge1xuICAgICAgICAgICAgaWQsXG4gICAgICAgICAgICAuLi5uZXdSdWxlXG4gICAgICAgIH07XG4gICAgICAgIGNvbnN0IHF1ZXJ5OiBRdWVyeU1vZGVsID0geyBydWxlczogW3J1bGVdLCBjb25kaXRpb246IFwiYW5kXCIgfTtcbiAgICAgICAgaWYgKCFjdXJyZW50UXVlcnkgfHwgY3VycmVudFF1ZXJ5LnJ1bGVzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgdGhpcy5zZXRSdWxlcyhxdWVyeSk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBvbGRSdWxlID0gY3VycmVudFF1ZXJ5LnJ1bGVzLmZpbmQoKHIpID0+IChyIGFzIFF1ZXJ5UnVsZU1vZGVsKS5pZCA9PT0gaWQpIGFzIFF1ZXJ5UnVsZU1vZGVsO1xuICAgICAgICBsZXQgbmV3UnVsZXMgPSBjdXJyZW50UXVlcnkucnVsZXM7XG4gICAgICAgIGlmIChvbGRSdWxlKSB7XG4gICAgICAgICAgICBpZiAobmV3UnVsZSkge1xuICAgICAgICAgICAgICAgIC8vIEFycmF5IHJlcGxhY2VcbiAgICAgICAgICAgICAgICBuZXdSdWxlcyA9IFtcbiAgICAgICAgICAgICAgICAgICAgLi4uY3VycmVudFF1ZXJ5LnJ1bGVzLnNsaWNlKDAsIGN1cnJlbnRRdWVyeS5ydWxlcy5pbmRleE9mKG9sZFJ1bGUpKSxcbiAgICAgICAgICAgICAgICAgICAgcnVsZSxcbiAgICAgICAgICAgICAgICAgICAgLi4uY3VycmVudFF1ZXJ5LnJ1bGVzLnNsaWNlKGN1cnJlbnRRdWVyeS5ydWxlcy5pbmRleE9mKG9sZFJ1bGUpICsgMSwgY3VycmVudFF1ZXJ5LnJ1bGVzLmxlbmd0aClcbiAgICAgICAgICAgICAgICBdO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBuZXdSdWxlcyA9IGN1cnJlbnRRdWVyeS5ydWxlcy5maWx0ZXIoKHIpID0+IChyIGFzIFF1ZXJ5UnVsZU1vZGVsKS5pZCAhPT0gaWQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgbmV3UnVsZXMgPSBbLi4ubmV3UnVsZXMsIHJ1bGVdO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuc2V0UnVsZXMoe1xuICAgICAgICAgICAgY29uZGl0aW9uOiBjdXJyZW50UXVlcnkuY29uZGl0aW9uLFxuICAgICAgICAgICAgcnVsZXM6IG5ld1J1bGVzXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyByZW1vdmVSdWxlKGlkOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgeyBmaWx0ZXJQYXJhbWV0ZXJzIH0gPSB0aGlzLnN0b3JlLmdldFZhbHVlKCk7XG4gICAgICAgIGNvbnN0IGN1cnJlbnRRdWVyeSA9IGZpbHRlclBhcmFtZXRlcnMucnVsZXM/LlswXTtcbiAgICAgICAgY29uc3Qgb2xkUnVsZSA9IGN1cnJlbnRRdWVyeT8ucnVsZXM/LmZpbmQoKHIpID0+IChyIGFzIFF1ZXJ5UnVsZU1vZGVsKS5pZCA9PT0gaWQpIGFzIFF1ZXJ5UnVsZU1vZGVsO1xuICAgICAgICBpZiAoIW9sZFJ1bGUpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IG5ld1J1bGVzID0gY3VycmVudFF1ZXJ5LnJ1bGVzLmZpbHRlcigocikgPT4gKHIgYXMgUXVlcnlSdWxlTW9kZWwpLmlkICE9PSBpZCk7XG4gICAgICAgIHRoaXMuc2V0UnVsZXMoe1xuICAgICAgICAgICAgY29uZGl0aW9uOiBjdXJyZW50UXVlcnkuY29uZGl0aW9uLFxuICAgICAgICAgICAgcnVsZXM6IG5ld1J1bGVzXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBhZGRWYWx1ZSh2YWx1ZTogYW55LCBvcHRzPzogQWRkRW50aXRpZXNPcHRpb25zKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc3RvcmUuYWRkVmFsdWUodmFsdWUsIG9wdHMpO1xuICAgIH1cblxuICAgIHB1YmxpYyBhZGRWYWx1ZXModmFsdWU6IGFueVtdLCBvcHRzPzogQWRkRW50aXRpZXNPcHRpb25zKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc3RvcmUuYWRkVmFsdWVzKHZhbHVlLCBvcHRzKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgdXBzZXJ0VmFsdWUodmFsdWU6IGFueSwga2V5Pzogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc3RvcmUudXBzZXJ0VmFsdWUodmFsdWUsIGtleSk7XG4gICAgfVxuXG4gICAgcHVibGljIHVwc2VydFZhbHVlcyh2YWx1ZXM6IGFueVtdLCBrZXk/OiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zdG9yZS51cHNlcnRWYWx1ZXModmFsdWVzLCBrZXkpO1xuICAgIH1cblxuICAgIHB1YmxpYyByZW1vdmVWYWx1ZSh2YWx1ZTogYW55LCBrZXk/OiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zdG9yZS5yZW1vdmVWYWx1ZSh2YWx1ZSwga2V5KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgcmVtb3ZlVmFsdWVzKHZhbHVlczogYW55W10sIGtleT86IHN0cmluZyk6IHZvaWQge1xuICAgICAgICB0aGlzLnN0b3JlLnJlbW92ZVZhbHVlcyh2YWx1ZXMsIGtleSk7XG4gICAgfVxuXG4gICAgQHRyYW5zYWN0aW9uKClcbiAgICBwdWJsaWMgcmVzZXRSZXN1bHQod2FpdEZvck5leHRGaWx0ZXI6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgaWYgKCF3YWl0Rm9yTmV4dEZpbHRlcikge1xuICAgICAgICAgICAgdGhpcy5zdG9yZS51cGRhdGUoe1xuICAgICAgICAgICAgICAgIGZpbHRlclJlc3VsdDogbnVsbFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB0aGlzLnN0b3JlLnNldChbXSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLnN0b3JlLnVwZGF0ZSh7XG4gICAgICAgICAgICAgICAgcmVzZXRSZXN1bHQ6IHRydWVcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19