@firestitch/filter 13.0.3 → 13.0.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.
@@ -1,16 +1,13 @@
1
- import { ActivatedRoute, Router } from '@angular/router';
2
- import { Location } from '@angular/common';
1
+ import { ActivatedRoute } from '@angular/router';
3
2
  import { FsFilterItemsStore } from '../items-store.service';
4
3
  import * as i0 from "@angular/core";
5
4
  export declare class QueryParamsController {
6
- private _router;
7
5
  private _route;
8
- private _location;
9
6
  private _itemsStore;
10
7
  private _enabled;
11
8
  private _paramsCase;
12
9
  private _fetchedParams;
13
- constructor(_router: Router, _route: ActivatedRoute, _location: Location, _itemsStore: FsFilterItemsStore);
10
+ constructor(_route: ActivatedRoute, _itemsStore: FsFilterItemsStore);
14
11
  get enabled(): boolean;
15
12
  get fetchedParams(): Record<string, any>;
16
13
  init(enabled: boolean, paramsCase: 'snake' | 'camel'): void;
@@ -1,17 +1,13 @@
1
1
  import { Injectable } from '@angular/core';
2
- import { ActivatedRoute, Router } from '@angular/router';
3
- import { Location } from '@angular/common';
2
+ import { ActivatedRoute } from '@angular/router';
4
3
  import { restoreItems } from '../../helpers/restore-items';
5
4
  import { FsFilterItemsStore } from '../items-store.service';
6
5
  import * as i0 from "@angular/core";
7
6
  import * as i1 from "@angular/router";
8
- import * as i2 from "@angular/common";
9
- import * as i3 from "../items-store.service";
7
+ import * as i2 from "../items-store.service";
10
8
  export class QueryParamsController {
11
- constructor(_router, _route, _location, _itemsStore) {
12
- this._router = _router;
9
+ constructor(_route, _itemsStore) {
13
10
  this._route = _route;
14
- this._location = _location;
15
11
  this._itemsStore = _itemsStore;
16
12
  this._enabled = false;
17
13
  }
@@ -51,12 +47,12 @@ export class QueryParamsController {
51
47
  .forEach((name) => {
52
48
  url.searchParams.set(name, data[name]);
53
49
  });
54
- history.replaceState({}, null, url.search);
50
+ history.replaceState({}, null, url.pathname + url.search);
55
51
  }
56
52
  }
57
- QueryParamsController.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: QueryParamsController, deps: [{ token: i1.Router }, { token: i1.ActivatedRoute }, { token: i2.Location }, { token: i3.FsFilterItemsStore }], target: i0.ɵɵFactoryTarget.Injectable });
53
+ QueryParamsController.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: QueryParamsController, deps: [{ token: i1.ActivatedRoute }, { token: i2.FsFilterItemsStore }], target: i0.ɵɵFactoryTarget.Injectable });
58
54
  QueryParamsController.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: QueryParamsController });
59
55
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: QueryParamsController, decorators: [{
60
56
  type: Injectable
61
- }], ctorParameters: function () { return [{ type: i1.Router }, { type: i1.ActivatedRoute }, { type: i2.Location }, { type: i3.FsFilterItemsStore }]; } });
62
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktcGFyYW1zLWNvbnRyb2xsZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvc2VydmljZXMvZXh0ZXJuYWwtcGFyYW1zL3F1ZXJ5LXBhcmFtcy1jb250cm9sbGVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRXpELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7Ozs7O0FBSTVELE1BQU0sT0FBTyxxQkFBcUI7SUFNaEMsWUFDVSxPQUFlLEVBQ2YsTUFBc0IsRUFDdEIsU0FBbUIsRUFDbkIsV0FBK0I7UUFIL0IsWUFBTyxHQUFQLE9BQU8sQ0FBUTtRQUNmLFdBQU0sR0FBTixNQUFNLENBQWdCO1FBQ3RCLGNBQVMsR0FBVCxTQUFTLENBQVU7UUFDbkIsZ0JBQVcsR0FBWCxXQUFXLENBQW9CO1FBUmpDLGFBQVEsR0FBRyxLQUFLLENBQUM7SUFTdEIsQ0FBQztJQUVKLElBQVcsT0FBTztRQUNoQixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDdkIsQ0FBQztJQUVELElBQVcsYUFBYTtRQUN0QixPQUFPLElBQUksQ0FBQyxjQUFjLENBQUM7SUFDN0IsQ0FBQztJQUVNLElBQUksQ0FBQyxPQUFnQixFQUFFLFVBQTZCO1FBQ3pELElBQUksQ0FBQyxRQUFRLEdBQUcsT0FBTyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxXQUFXLEdBQUcsVUFBVSxDQUFDO1FBRTlCLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNoQixJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztTQUM3QjtJQUNILENBQUM7SUFFTSx1QkFBdUIsQ0FBQyxNQUFNO1FBQ25DLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNqQixJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1NBQzVCO0lBQ0gsQ0FBQztJQUVEOztPQUVHO0lBQ0ksb0JBQW9CO1FBQ3pCLE1BQU0sS0FBSyxHQUFHO1lBQ1osR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUs7WUFDekIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxVQUFVO1lBQzNCLElBQUksQ0FBQyxXQUFXLENBQUMsaUJBQWlCO1NBQ25DLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFM0IsSUFBSSxDQUFDLGNBQWMsR0FBRyxZQUFZLENBQ2hDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLFdBQVcsRUFDaEMsS0FBSyxFQUNMLElBQUksQ0FBQyxXQUFXLENBQ2pCLENBQUM7SUFDSixDQUFDO0lBRU8sYUFBYSxDQUFDLElBQUk7UUFDeEIsTUFBTSxHQUFHLEdBQUcsSUFBSSxHQUFHLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUUxQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQzthQUNkLE1BQU0sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLFNBQVMsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssSUFBSSxDQUFDO2FBQ2pFLE9BQU8sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO1lBQ2hCLEdBQUcsQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLElBQUksRUFBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUN4QyxDQUFDLENBQUMsQ0FBQztRQUVMLE9BQU8sQ0FBQyxZQUFZLENBQUMsRUFBRSxFQUFFLElBQUksRUFBRSxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDN0MsQ0FBQzs7a0hBL0RVLHFCQUFxQjtzSEFBckIscUJBQXFCOzJGQUFyQixxQkFBcUI7a0JBRGpDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcblxuaW1wb3J0IHsgTG9jYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgcmVzdG9yZUl0ZW1zIH0gZnJvbSAnLi4vLi4vaGVscGVycy9yZXN0b3JlLWl0ZW1zJztcbmltcG9ydCB7IEZzRmlsdGVySXRlbXNTdG9yZSB9IGZyb20gJy4uL2l0ZW1zLXN0b3JlLnNlcnZpY2UnO1xuXG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBRdWVyeVBhcmFtc0NvbnRyb2xsZXIge1xuXG4gIHByaXZhdGUgX2VuYWJsZWQgPSBmYWxzZTtcbiAgcHJpdmF0ZSBfcGFyYW1zQ2FzZTogJ3NuYWtlJyB8ICdjYW1lbCc7XG4gIHByaXZhdGUgX2ZldGNoZWRQYXJhbXM6IFJlY29yZDxzdHJpbmcsIGFueT47XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBfcm91dGVyOiBSb3V0ZXIsXG4gICAgcHJpdmF0ZSBfcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICAgIHByaXZhdGUgX2xvY2F0aW9uOiBMb2NhdGlvbixcbiAgICBwcml2YXRlIF9pdGVtc1N0b3JlOiBGc0ZpbHRlckl0ZW1zU3RvcmVcbiAgKSB7fVxuXG4gIHB1YmxpYyBnZXQgZW5hYmxlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fZW5hYmxlZDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZmV0Y2hlZFBhcmFtcygpIHtcbiAgICByZXR1cm4gdGhpcy5fZmV0Y2hlZFBhcmFtcztcbiAgfVxuXG4gIHB1YmxpYyBpbml0KGVuYWJsZWQ6IGJvb2xlYW4sIHBhcmFtc0Nhc2U6ICdzbmFrZScgfCAnY2FtZWwnKSB7XG4gICAgdGhpcy5fZW5hYmxlZCA9IGVuYWJsZWQ7XG4gICAgdGhpcy5fcGFyYW1zQ2FzZSA9IHBhcmFtc0Nhc2U7XG5cbiAgICBpZiAodGhpcy5lbmFibGVkKSB7XG4gICAgICB0aGlzLmZldGNoRnJvbVF1ZXJ5UGFyYW1zKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIHdyaXRlU3RhdGVUb1F1ZXJ5UGFyYW1zKHBhcmFtcykge1xuICAgIGlmICh0aGlzLl9lbmFibGVkKSB7IFxuICAgICAgdGhpcy5fcmVwbGFjZVN0YXRlKHBhcmFtcyk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFBhcnNlIHF1ZXJ5IGFuZCB1cGRhdGUgZmlsdGVyIHZhbHVlc1xuICAgKi9cbiAgcHVibGljIGZldGNoRnJvbVF1ZXJ5UGFyYW1zKCkge1xuICAgIGNvbnN0IGl0ZW1zID0gW1xuICAgICAgLi4udGhpcy5faXRlbXNTdG9yZS5pdGVtcyxcbiAgICAgIHRoaXMuX2l0ZW1zU3RvcmUuc29ydEJ5SXRlbSxcbiAgICAgIHRoaXMuX2l0ZW1zU3RvcmUuc29ydERpcmVjdGlvbkl0ZW0sXG4gICAgXS5maWx0ZXIoKGl0ZW0pID0+ICEhaXRlbSk7XG5cbiAgICB0aGlzLl9mZXRjaGVkUGFyYW1zID0gcmVzdG9yZUl0ZW1zKFxuICAgICAgdGhpcy5fcm91dGUuc25hcHNob3QucXVlcnlQYXJhbXMsXG4gICAgICBpdGVtcyxcbiAgICAgIHRoaXMuX3BhcmFtc0Nhc2VcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBfcmVwbGFjZVN0YXRlKGRhdGEpIHtcbiAgICBjb25zdCB1cmwgPSBuZXcgVVJMKHdpbmRvdy5sb2NhdGlvbi5ocmVmKTtcblxuICAgIE9iamVjdC5rZXlzKGRhdGEpXG4gICAgICAuZmlsdGVyKChuYW1lKSA9PiBkYXRhW25hbWVdICE9PSB1bmRlZmluZWQgJiYgZGF0YVtuYW1lXSAhPT0gbnVsbClcbiAgICAgIC5mb3JFYWNoKChuYW1lKSA9PiB7XG4gICAgICAgIHVybC5zZWFyY2hQYXJhbXMuc2V0KG5hbWUsZGF0YVtuYW1lXSk7XG4gICAgICB9KTtcblxuICAgIGhpc3RvcnkucmVwbGFjZVN0YXRlKHt9LCBudWxsLCB1cmwuc2VhcmNoKTtcbiAgfVxufVxuIl19
57
+ }], ctorParameters: function () { return [{ type: i1.ActivatedRoute }, { type: i2.FsFilterItemsStore }]; } });
58
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktcGFyYW1zLWNvbnRyb2xsZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvc2VydmljZXMvZXh0ZXJuYWwtcGFyYW1zL3F1ZXJ5LXBhcmFtcy1jb250cm9sbGVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFakQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzNELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDOzs7O0FBSTVELE1BQU0sT0FBTyxxQkFBcUI7SUFNaEMsWUFDVSxNQUFzQixFQUN0QixXQUErQjtRQUQvQixXQUFNLEdBQU4sTUFBTSxDQUFnQjtRQUN0QixnQkFBVyxHQUFYLFdBQVcsQ0FBb0I7UUFOakMsYUFBUSxHQUFHLEtBQUssQ0FBQztJQU90QixDQUFDO0lBRUosSUFBVyxPQUFPO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDO0lBRUQsSUFBVyxhQUFhO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQztJQUM3QixDQUFDO0lBRU0sSUFBSSxDQUFDLE9BQWdCLEVBQUUsVUFBNkI7UUFDekQsSUFBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUM7UUFDeEIsSUFBSSxDQUFDLFdBQVcsR0FBRyxVQUFVLENBQUM7UUFFOUIsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ2hCLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO1NBQzdCO0lBQ0gsQ0FBQztJQUVNLHVCQUF1QixDQUFDLE1BQU07UUFDbkMsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2pCLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUM7U0FDNUI7SUFDSCxDQUFDO0lBRUQ7O09BRUc7SUFDSSxvQkFBb0I7UUFDekIsTUFBTSxLQUFLLEdBQUc7WUFDWixHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSztZQUN6QixJQUFJLENBQUMsV0FBVyxDQUFDLFVBQVU7WUFDM0IsSUFBSSxDQUFDLFdBQVcsQ0FBQyxpQkFBaUI7U0FDbkMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUUzQixJQUFJLENBQUMsY0FBYyxHQUFHLFlBQVksQ0FDaEMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsV0FBVyxFQUNoQyxLQUFLLEVBQ0wsSUFBSSxDQUFDLFdBQVcsQ0FDakIsQ0FBQztJQUNKLENBQUM7SUFFTyxhQUFhLENBQUMsSUFBSTtRQUN4QixNQUFNLEdBQUcsR0FBRyxJQUFJLEdBQUcsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRTFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO2FBQ2QsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssU0FBUyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxJQUFJLENBQUM7YUFDakUsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7WUFDaEIsR0FBRyxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ3hDLENBQUMsQ0FBQyxDQUFDO1FBRUwsT0FBTyxDQUFDLFlBQVksQ0FBQyxFQUFFLEVBQUUsSUFBSSxFQUFFLEdBQUcsQ0FBQyxRQUFRLEdBQUcsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzVELENBQUM7O2tIQTdEVSxxQkFBcUI7c0hBQXJCLHFCQUFxQjsyRkFBckIscUJBQXFCO2tCQURqQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG5pbXBvcnQgeyByZXN0b3JlSXRlbXMgfSBmcm9tICcuLi8uLi9oZWxwZXJzL3Jlc3RvcmUtaXRlbXMnO1xuaW1wb3J0IHsgRnNGaWx0ZXJJdGVtc1N0b3JlIH0gZnJvbSAnLi4vaXRlbXMtc3RvcmUuc2VydmljZSc7XG5cblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFF1ZXJ5UGFyYW1zQ29udHJvbGxlciB7XG5cbiAgcHJpdmF0ZSBfZW5hYmxlZCA9IGZhbHNlO1xuICBwcml2YXRlIF9wYXJhbXNDYXNlOiAnc25ha2UnIHwgJ2NhbWVsJztcbiAgcHJpdmF0ZSBfZmV0Y2hlZFBhcmFtczogUmVjb3JkPHN0cmluZywgYW55PjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIF9yb3V0ZTogQWN0aXZhdGVkUm91dGUsXG4gICAgcHJpdmF0ZSBfaXRlbXNTdG9yZTogRnNGaWx0ZXJJdGVtc1N0b3JlXG4gICkge31cblxuICBwdWJsaWMgZ2V0IGVuYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2VuYWJsZWQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGZldGNoZWRQYXJhbXMoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2ZldGNoZWRQYXJhbXM7XG4gIH1cblxuICBwdWJsaWMgaW5pdChlbmFibGVkOiBib29sZWFuLCBwYXJhbXNDYXNlOiAnc25ha2UnIHwgJ2NhbWVsJykge1xuICAgIHRoaXMuX2VuYWJsZWQgPSBlbmFibGVkO1xuICAgIHRoaXMuX3BhcmFtc0Nhc2UgPSBwYXJhbXNDYXNlO1xuXG4gICAgaWYgKHRoaXMuZW5hYmxlZCkge1xuICAgICAgdGhpcy5mZXRjaEZyb21RdWVyeVBhcmFtcygpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyB3cml0ZVN0YXRlVG9RdWVyeVBhcmFtcyhwYXJhbXMpIHtcbiAgICBpZiAodGhpcy5fZW5hYmxlZCkgeyBcbiAgICAgIHRoaXMuX3JlcGxhY2VTdGF0ZShwYXJhbXMpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBQYXJzZSBxdWVyeSBhbmQgdXBkYXRlIGZpbHRlciB2YWx1ZXNcbiAgICovXG4gIHB1YmxpYyBmZXRjaEZyb21RdWVyeVBhcmFtcygpIHtcbiAgICBjb25zdCBpdGVtcyA9IFtcbiAgICAgIC4uLnRoaXMuX2l0ZW1zU3RvcmUuaXRlbXMsXG4gICAgICB0aGlzLl9pdGVtc1N0b3JlLnNvcnRCeUl0ZW0sXG4gICAgICB0aGlzLl9pdGVtc1N0b3JlLnNvcnREaXJlY3Rpb25JdGVtLFxuICAgIF0uZmlsdGVyKChpdGVtKSA9PiAhIWl0ZW0pO1xuXG4gICAgdGhpcy5fZmV0Y2hlZFBhcmFtcyA9IHJlc3RvcmVJdGVtcyhcbiAgICAgIHRoaXMuX3JvdXRlLnNuYXBzaG90LnF1ZXJ5UGFyYW1zLFxuICAgICAgaXRlbXMsXG4gICAgICB0aGlzLl9wYXJhbXNDYXNlXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgX3JlcGxhY2VTdGF0ZShkYXRhKSB7XG4gICAgY29uc3QgdXJsID0gbmV3IFVSTCh3aW5kb3cubG9jYXRpb24uaHJlZik7XG5cbiAgICBPYmplY3Qua2V5cyhkYXRhKVxuICAgICAgLmZpbHRlcigobmFtZSkgPT4gZGF0YVtuYW1lXSAhPT0gdW5kZWZpbmVkICYmIGRhdGFbbmFtZV0gIT09IG51bGwpXG4gICAgICAuZm9yRWFjaCgobmFtZSkgPT4ge1xuICAgICAgICB1cmwuc2VhcmNoUGFyYW1zLnNldChuYW1lLGRhdGFbbmFtZV0pO1xuICAgICAgfSk7XG5cbiAgICBoaXN0b3J5LnJlcGxhY2VTdGF0ZSh7fSwgbnVsbCwgdXJsLnBhdGhuYW1lICsgdXJsLnNlYXJjaCk7XG4gIH1cbn1cbiJdfQ==