@fundamental-ngx/core 0.43.38 → 0.43.40

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.
@@ -28,8 +28,6 @@ export declare class BreadcrumbItemComponent implements AfterViewInit {
28
28
  /** @hidden */
29
29
  constructor(elementRef: ElementRef<HTMLElement>);
30
30
  /** @hidden */
31
- get _needsClickProxy(): boolean;
32
- /** @hidden */
33
31
  ngAfterViewInit(): void;
34
32
  /**
35
33
  * Sets breadcrumb item dom portal.
@@ -60,9 +60,8 @@ export declare class BreadcrumbComponent implements OnInit, AfterViewInit {
60
60
  /** @hidden */
61
61
  onResize(): void;
62
62
  /**
63
- * We catch interactions with item, Enter, Space, Mouse click and Touch click,
64
- * if original element had router link we are proxying click to that element
65
- * */
63
+ * Function that handles click, touch, enter and space events.
64
+ */
66
65
  itemClicked(breadcrumbItem: BreadcrumbItemComponent, $event: any): void;
67
66
  /** @hidden */
68
67
  ngAfterViewInit(): void;
@@ -20,10 +20,6 @@ export class BreadcrumbItemComponent {
20
20
  this._attached = false;
21
21
  }
22
22
  /** @hidden */
23
- get _needsClickProxy() {
24
- return !!this.breadcrumbLink?.elementRef.nativeElement.getAttribute('href') || !!this.breadcrumbLink.routerLink;
25
- }
26
- /** @hidden */
27
23
  ngAfterViewInit() {
28
24
  this._attach();
29
25
  }
@@ -88,4 +84,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
88
84
  type: ContentChild,
89
85
  args: [FD_LINK_COMPONENT]
90
86
  }] } });
91
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWRjcnVtYi1pdGVtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL2JyZWFkY3J1bWIvYnJlYWRjcnVtYi1pdGVtLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDaEQsT0FBTyxFQUVILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLFVBQVUsRUFDVixpQkFBaUIsRUFDcEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGlCQUFpQixFQUFFLGFBQWEsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzlFLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLFVBQVUsQ0FBQzs7QUFFeEQ7Ozs7Ozs7O0dBUUc7QUFnQkgsTUFBTSxPQUFPLHVCQUF1QjtJQW1CaEMsY0FBYztJQUNkLFlBQTRCLFVBQW1DO1FBQW5DLGVBQVUsR0FBVixVQUFVLENBQXlCO1FBSi9ELGNBQWM7UUFDTixjQUFTLEdBQUcsS0FBSyxDQUFDO0lBR3dDLENBQUM7SUFFbkUsY0FBYztJQUNkLElBQUksZ0JBQWdCO1FBQ2hCLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUUsVUFBVSxDQUFDLGFBQWEsQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsVUFBVSxDQUFDO0lBQ3BILENBQUM7SUFFRCxjQUFjO0lBQ2QsZUFBZTtRQUNYLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBRUQ7O09BRUc7SUFDSCxTQUFTO1FBQ0wsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDZCxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksU0FBUyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztTQUNoRDtJQUNMLENBQUM7SUFFRCxjQUFjO0lBQ2QsT0FBTztRQUNILElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFO1lBQ2pCLE9BQU87U0FDVjtRQUVELElBQUksSUFBSSxDQUFDLGlCQUFpQixFQUFFLFVBQVUsRUFBRTtZQUNwQyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsTUFBTSxFQUFFLENBQUM7U0FDcEM7UUFFRCxJQUFJLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxVQUFVLEVBQUU7WUFDdkMsSUFBSSxDQUFDLG9CQUFvQixFQUFFLE1BQU0sRUFBRSxDQUFDO1NBQ3ZDO1FBRUQsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7SUFDM0IsQ0FBQztJQUVELGNBQWM7SUFDZCxPQUFPO1FBQ0gsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFO1lBQ2hCLE9BQU87U0FDVjtRQUVELElBQUksSUFBSSxDQUFDLGNBQWMsSUFBSSxJQUFJLENBQUMsY0FBYyxDQUFDLFdBQVcsRUFBRTtZQUN4RCxJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxTQUFTLENBQWMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLENBQUM7U0FDdEc7UUFFRCxJQUFJLENBQUMsb0JBQW9CLEdBQUcsSUFBSSxTQUFTLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsaUJBQTRCLENBQUMsQ0FBQztRQUN0RyxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztJQUMxQixDQUFDOztvSEF0RVEsdUJBQXVCO3dHQUF2Qix1QkFBdUIsOEZBVHJCO1FBQ1A7WUFDSSxPQUFPLEVBQUUsNEJBQTRCO1lBQ3JDLFdBQVcsRUFBRSx1QkFBdUI7U0FDdkM7S0FDSixzRUFNYSxpQkFBaUIsZ0RBZnJCLDJCQUEyQjsyRkFhNUIsdUJBQXVCO2tCQWZuQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxvQkFBb0I7b0JBQzlCLFFBQVEsRUFBRSwyQkFBMkI7b0JBQ3JDLElBQUksRUFBRTt3QkFDRixLQUFLLEVBQUUscUJBQXFCO3FCQUMvQjtvQkFDRCxTQUFTLEVBQUU7d0JBQ1A7NEJBQ0ksT0FBTyxFQUFFLDRCQUE0Qjs0QkFDckMsV0FBVyx5QkFBeUI7eUJBQ3ZDO3FCQUNKO29CQUNELGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO29CQUNyQyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtpQkFDbEQ7aUdBSUcsY0FBYztzQkFEYixZQUFZO3VCQUFDLGlCQUFpQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERvbVBvcnRhbCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHtcbiAgICBBZnRlclZpZXdJbml0LFxuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENvbXBvbmVudCxcbiAgICBDb250ZW50Q2hpbGQsXG4gICAgRWxlbWVudFJlZixcbiAgICBWaWV3RW5jYXBzdWxhdGlvblxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZEX0xJTktfQ09NUE9ORU5ULCBMaW5rQ29tcG9uZW50IH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL2xpbmsnO1xuaW1wb3J0IHsgRkRfQlJFQURDUlVNQl9JVEVNX0NPTVBPTkVOVCB9IGZyb20gJy4vdG9rZW5zJztcblxuLyoqXG4gKiBCcmVhZGNydW1iIGl0ZW0gZGlyZWN0aXZlLiBNdXN0IGhhdmUgY2hpbGQgYnJlYWRjcnVtYiBsaW5rIGRpcmVjdGl2ZXMuXG4gKlxuICogYGBgaHRtbFxuICogPGZkLWJyZWFkY3J1bWItaXRlbT5cbiAqICAgICA8YSBmZC1saW5rIFtyb3V0ZXJMaW5rXT1cIicjJ1wiPkJyZWFkY3J1bWIgTGluazwvYT5cbiAqIDwvZmQtYnJlYWRjcnVtYi1pdGVtPlxuICogYGBgXG4gKi9cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZmQtYnJlYWRjcnVtYi1pdGVtJyxcbiAgICB0ZW1wbGF0ZTogJzxuZy1jb250ZW50PjwvbmctY29udGVudD4nLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgY2xhc3M6ICdmZC1icmVhZGNydW1iX19pdGVtJ1xuICAgIH0sXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IEZEX0JSRUFEQ1JVTUJfSVRFTV9DT01QT05FTlQsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogQnJlYWRjcnVtYkl0ZW1Db21wb25lbnRcbiAgICAgICAgfVxuICAgIF0sXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBCcmVhZGNydW1iSXRlbUNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQENvbnRlbnRDaGlsZChGRF9MSU5LX0NPTVBPTkVOVClcbiAgICBicmVhZGNydW1iTGluazogTGlua0NvbXBvbmVudDtcblxuICAgIC8qKiBJbiBjYXNlIHRoZXJlIGlzIG5vIGxpbmsgaW4gSXRlbSBhbmQgYnJlYWRjcnVtYiBpdGVtIGlzIG5vbi1pbnRlcmFjdGl2ZSwgd2UgbW92ZSB3aG9sZSBpdGVtIGNvbnRlbnQgdG8gbWVudSBpdGVtIHRpdGxlICovXG4gICAgYnJlYWRjcnVtYkl0ZW1Qb3J0YWw6IERvbVBvcnRhbDxFbGVtZW50PjtcblxuICAgIC8qKiBXaGVuIGJyZWFkY3J1bWIgaXRlbSBoYXMgbGluayBpbiBpdCwgd2UgYXJlIG1vdmluZyBsaW5rIGNvbnRlbnQgdG8gbWVudSBpdGVtIHRpdGxlICovXG4gICAgbGlua0NvbnRlbnRQb3J0YWw6IERvbVBvcnRhbDtcblxuICAgIC8qKlxuICAgICAqIEJyZWFkY3J1bWIgaXRlbSBkb20gcG9ydGFsLlxuICAgICAqL1xuICAgIHBvcnRhbDogRG9tUG9ydGFsO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9hdHRhY2hlZCA9IGZhbHNlO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBjb25zdHJ1Y3RvcihwdWJsaWMgcmVhZG9ubHkgZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4pIHt9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGdldCBfbmVlZHNDbGlja1Byb3h5KCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gISF0aGlzLmJyZWFkY3J1bWJMaW5rPy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuZ2V0QXR0cmlidXRlKCdocmVmJykgfHwgISF0aGlzLmJyZWFkY3J1bWJMaW5rLnJvdXRlckxpbms7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2F0dGFjaCgpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNldHMgYnJlYWRjcnVtYiBpdGVtIGRvbSBwb3J0YWwuXG4gICAgICovXG4gICAgc2V0UG9ydGFsKCk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMucG9ydGFsKSB7XG4gICAgICAgICAgICB0aGlzLnBvcnRhbCA9IG5ldyBEb21Qb3J0YWwodGhpcy5lbGVtZW50UmVmKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgX2RldGFjaCgpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLl9hdHRhY2hlZCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMubGlua0NvbnRlbnRQb3J0YWw/LmlzQXR0YWNoZWQpIHtcbiAgICAgICAgICAgIHRoaXMubGlua0NvbnRlbnRQb3J0YWw/LmRldGFjaCgpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuYnJlYWRjcnVtYkl0ZW1Qb3J0YWw/LmlzQXR0YWNoZWQpIHtcbiAgICAgICAgICAgIHRoaXMuYnJlYWRjcnVtYkl0ZW1Qb3J0YWw/LmRldGFjaCgpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5fYXR0YWNoZWQgPSBmYWxzZTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9hdHRhY2goKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLl9hdHRhY2hlZCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuYnJlYWRjcnVtYkxpbmsgJiYgdGhpcy5icmVhZGNydW1iTGluay5jb250ZW50U3Bhbikge1xuICAgICAgICAgICAgdGhpcy5saW5rQ29udGVudFBvcnRhbCA9IG5ldyBEb21Qb3J0YWw8SFRNTEVsZW1lbnQ+KHRoaXMuYnJlYWRjcnVtYkxpbmsuY29udGVudFNwYW4ubmF0aXZlRWxlbWVudCk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmJyZWFkY3J1bWJJdGVtUG9ydGFsID0gbmV3IERvbVBvcnRhbCh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5maXJzdEVsZW1lbnRDaGlsZCBhcyBFbGVtZW50KTtcbiAgICAgICAgdGhpcy5fYXR0YWNoZWQgPSB0cnVlO1xuICAgIH1cbn1cbiJdfQ==
87
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWRjcnVtYi1pdGVtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL2JyZWFkY3J1bWIvYnJlYWRjcnVtYi1pdGVtLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDaEQsT0FBTyxFQUVILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLFVBQVUsRUFDVixpQkFBaUIsRUFDcEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGlCQUFpQixFQUFFLGFBQWEsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzlFLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLFVBQVUsQ0FBQzs7QUFFeEQ7Ozs7Ozs7O0dBUUc7QUFnQkgsTUFBTSxPQUFPLHVCQUF1QjtJQW1CaEMsY0FBYztJQUNkLFlBQTRCLFVBQW1DO1FBQW5DLGVBQVUsR0FBVixVQUFVLENBQXlCO1FBSi9ELGNBQWM7UUFDTixjQUFTLEdBQUcsS0FBSyxDQUFDO0lBR3dDLENBQUM7SUFFbkUsY0FBYztJQUNkLGVBQWU7UUFDWCxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDbkIsQ0FBQztJQUVEOztPQUVHO0lBQ0gsU0FBUztRQUNMLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ2QsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLFNBQVMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7U0FDaEQ7SUFDTCxDQUFDO0lBRUQsY0FBYztJQUNkLE9BQU87UUFDSCxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUNqQixPQUFPO1NBQ1Y7UUFFRCxJQUFJLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxVQUFVLEVBQUU7WUFDcEMsSUFBSSxDQUFDLGlCQUFpQixFQUFFLE1BQU0sRUFBRSxDQUFDO1NBQ3BDO1FBRUQsSUFBSSxJQUFJLENBQUMsb0JBQW9CLEVBQUUsVUFBVSxFQUFFO1lBQ3ZDLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxNQUFNLEVBQUUsQ0FBQztTQUN2QztRQUVELElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO0lBQzNCLENBQUM7SUFFRCxjQUFjO0lBQ2QsT0FBTztRQUNILElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUNoQixPQUFPO1NBQ1Y7UUFFRCxJQUFJLElBQUksQ0FBQyxjQUFjLElBQUksSUFBSSxDQUFDLGNBQWMsQ0FBQyxXQUFXLEVBQUU7WUFDeEQsSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUksU0FBUyxDQUFjLElBQUksQ0FBQyxjQUFjLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1NBQ3RHO1FBRUQsSUFBSSxDQUFDLG9CQUFvQixHQUFHLElBQUksU0FBUyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLGlCQUE0QixDQUFDLENBQUM7UUFDdEcsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7SUFDMUIsQ0FBQzs7b0hBakVRLHVCQUF1Qjt3R0FBdkIsdUJBQXVCLDhGQVRyQjtRQUNQO1lBQ0ksT0FBTyxFQUFFLDRCQUE0QjtZQUNyQyxXQUFXLEVBQUUsdUJBQXVCO1NBQ3ZDO0tBQ0osc0VBTWEsaUJBQWlCLGdEQWZyQiwyQkFBMkI7MkZBYTVCLHVCQUF1QjtrQkFmbkMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsb0JBQW9CO29CQUM5QixRQUFRLEVBQUUsMkJBQTJCO29CQUNyQyxJQUFJLEVBQUU7d0JBQ0YsS0FBSyxFQUFFLHFCQUFxQjtxQkFDL0I7b0JBQ0QsU0FBUyxFQUFFO3dCQUNQOzRCQUNJLE9BQU8sRUFBRSw0QkFBNEI7NEJBQ3JDLFdBQVcseUJBQXlCO3lCQUN2QztxQkFDSjtvQkFDRCxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTtvQkFDckMsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07aUJBQ2xEO2lHQUlHLGNBQWM7c0JBRGIsWUFBWTt1QkFBQyxpQkFBaUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEb21Qb3J0YWwgfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcbmltcG9ydCB7XG4gICAgQWZ0ZXJWaWV3SW5pdCxcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgQ29udGVudENoaWxkLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgVmlld0VuY2Fwc3VsYXRpb25cbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGRF9MSU5LX0NPTVBPTkVOVCwgTGlua0NvbXBvbmVudCB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9saW5rJztcbmltcG9ydCB7IEZEX0JSRUFEQ1JVTUJfSVRFTV9DT01QT05FTlQgfSBmcm9tICcuL3Rva2Vucyc7XG5cbi8qKlxuICogQnJlYWRjcnVtYiBpdGVtIGRpcmVjdGl2ZS4gTXVzdCBoYXZlIGNoaWxkIGJyZWFkY3J1bWIgbGluayBkaXJlY3RpdmVzLlxuICpcbiAqIGBgYGh0bWxcbiAqIDxmZC1icmVhZGNydW1iLWl0ZW0+XG4gKiAgICAgPGEgZmQtbGluayBbcm91dGVyTGlua109XCInIydcIj5CcmVhZGNydW1iIExpbms8L2E+XG4gKiA8L2ZkLWJyZWFkY3J1bWItaXRlbT5cbiAqIGBgYFxuICovXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2ZkLWJyZWFkY3J1bWItaXRlbScsXG4gICAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgICBob3N0OiB7XG4gICAgICAgIGNsYXNzOiAnZmQtYnJlYWRjcnVtYl9faXRlbSdcbiAgICB9LFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBGRF9CUkVBRENSVU1CX0lURU1fQ09NUE9ORU5ULFxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IEJyZWFkY3J1bWJJdGVtQ29tcG9uZW50XG4gICAgICAgIH1cbiAgICBdLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgQnJlYWRjcnVtYkl0ZW1Db21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBDb250ZW50Q2hpbGQoRkRfTElOS19DT01QT05FTlQpXG4gICAgYnJlYWRjcnVtYkxpbms6IExpbmtDb21wb25lbnQ7XG5cbiAgICAvKiogSW4gY2FzZSB0aGVyZSBpcyBubyBsaW5rIGluIEl0ZW0gYW5kIGJyZWFkY3J1bWIgaXRlbSBpcyBub24taW50ZXJhY3RpdmUsIHdlIG1vdmUgd2hvbGUgaXRlbSBjb250ZW50IHRvIG1lbnUgaXRlbSB0aXRsZSAqL1xuICAgIGJyZWFkY3J1bWJJdGVtUG9ydGFsOiBEb21Qb3J0YWw8RWxlbWVudD47XG5cbiAgICAvKiogV2hlbiBicmVhZGNydW1iIGl0ZW0gaGFzIGxpbmsgaW4gaXQsIHdlIGFyZSBtb3ZpbmcgbGluayBjb250ZW50IHRvIG1lbnUgaXRlbSB0aXRsZSAqL1xuICAgIGxpbmtDb250ZW50UG9ydGFsOiBEb21Qb3J0YWw7XG5cbiAgICAvKipcbiAgICAgKiBCcmVhZGNydW1iIGl0ZW0gZG9tIHBvcnRhbC5cbiAgICAgKi9cbiAgICBwb3J0YWw6IERvbVBvcnRhbDtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfYXR0YWNoZWQgPSBmYWxzZTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgY29uc3RydWN0b3IocHVibGljIHJlYWRvbmx5IGVsZW1lbnRSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+KSB7fVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2F0dGFjaCgpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNldHMgYnJlYWRjcnVtYiBpdGVtIGRvbSBwb3J0YWwuXG4gICAgICovXG4gICAgc2V0UG9ydGFsKCk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMucG9ydGFsKSB7XG4gICAgICAgICAgICB0aGlzLnBvcnRhbCA9IG5ldyBEb21Qb3J0YWwodGhpcy5lbGVtZW50UmVmKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgX2RldGFjaCgpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLl9hdHRhY2hlZCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMubGlua0NvbnRlbnRQb3J0YWw/LmlzQXR0YWNoZWQpIHtcbiAgICAgICAgICAgIHRoaXMubGlua0NvbnRlbnRQb3J0YWw/LmRldGFjaCgpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuYnJlYWRjcnVtYkl0ZW1Qb3J0YWw/LmlzQXR0YWNoZWQpIHtcbiAgICAgICAgICAgIHRoaXMuYnJlYWRjcnVtYkl0ZW1Qb3J0YWw/LmRldGFjaCgpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5fYXR0YWNoZWQgPSBmYWxzZTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9hdHRhY2goKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLl9hdHRhY2hlZCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuYnJlYWRjcnVtYkxpbmsgJiYgdGhpcy5icmVhZGNydW1iTGluay5jb250ZW50U3Bhbikge1xuICAgICAgICAgICAgdGhpcy5saW5rQ29udGVudFBvcnRhbCA9IG5ldyBEb21Qb3J0YWw8SFRNTEVsZW1lbnQ+KHRoaXMuYnJlYWRjcnVtYkxpbmsuY29udGVudFNwYW4ubmF0aXZlRWxlbWVudCk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmJyZWFkY3J1bWJJdGVtUG9ydGFsID0gbmV3IERvbVBvcnRhbCh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5maXJzdEVsZW1lbnRDaGlsZCBhcyBFbGVtZW50KTtcbiAgICAgICAgdGhpcy5fYXR0YWNoZWQgPSB0cnVlO1xuICAgIH1cbn1cbiJdfQ==
@@ -74,14 +74,11 @@ export class BreadcrumbComponent {
74
74
  this._overflowLayout.triggerRecalculation();
75
75
  }
76
76
  /**
77
- * We catch interactions with item, Enter, Space, Mouse click and Touch click,
78
- * if original element had router link we are proxying click to that element
79
- * */
77
+ * Function that handles click, touch, enter and space events.
78
+ */
80
79
  itemClicked(breadcrumbItem, $event) {
81
- if (breadcrumbItem._needsClickProxy) {
82
- $event.preventDefault();
83
- breadcrumbItem.breadcrumbLink.elementRef.nativeElement.click();
84
- }
80
+ $event.preventDefault();
81
+ breadcrumbItem.breadcrumbLink.elementRef.nativeElement.click();
85
82
  }
86
83
  /** @hidden */
87
84
  ngAfterViewInit() {
@@ -124,7 +121,7 @@ BreadcrumbComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", ve
124
121
  provide: FD_BREADCRUMB_COMPONENT,
125
122
  useExisting: BreadcrumbComponent
126
123
  }
127
- ], queries: [{ propertyName: "_contentItems", predicate: FD_BREADCRUMB_ITEM_COMPONENT }], viewQueries: [{ propertyName: "_menuComponent", first: true, predicate: MenuComponent, descendants: true }, { propertyName: "_overflowLayout", first: true, predicate: OverflowLayoutComponent, descendants: true }], ngImport: i0, template: "<fd-overflow-layout\n [reverseHiddenItems]=\"!reverse\"\n showMorePosition=\"left\"\n [enableKeyboardNavigation]=\"false\"\n (visibleItemsCount)=\"_onVisibleItemsCountChange($event)\"\n (hiddenItemsCount)=\"_onHiddenItemsCountChange($event)\"\n>\n <ng-container *ngFor=\"let breadcrumb of _items\">\n <div\n *fdOverflowItemRef=\"breadcrumb; let hidden\"\n fdOverflowLayoutItem\n (hiddenChange)=\"_onHiddenChange($event, breadcrumb)\"\n >\n <ng-template [cdkPortalOutlet]=\"breadcrumb.portal\"></ng-template>\n </div>\n </ng-container>\n <ng-container *fdOverflowExpand=\"let breadcrumbs; items: _items\">\n <fd-menu #menu [closeOnEscapeKey]=\"true\" [focusAutoCapture]=\"true\" [placement]=\"_placement$ | async\">\n <ng-container *ngFor=\"let breadcrumbItem of breadcrumbs\">\n <li\n fd-menu-item\n [disabled]=\"\n breadcrumbItem.item.breadcrumbLink ? breadcrumbItem.item.breadcrumbLink.disabled : false\n \"\n >\n <a\n fd-menu-interactive\n (click)=\"itemClicked(breadcrumbItem.item, $event)\"\n (keydown.enter)=\"itemClicked(breadcrumbItem.item, $event)\"\n (keydown.space)=\"itemClicked(breadcrumbItem.item, $event)\"\n >\n <ng-container *ngIf=\"breadcrumbItem?.item.breadcrumbLink; else portalContent\">\n <ng-container *ngIf=\"breadcrumbItem.item.breadcrumbLink._prefixIconName\">\n <fd-menu-addon\n position=\"before\"\n [glyph]=\"breadcrumbItem.item.breadcrumbLink._prefixIconName\"\n ></fd-menu-addon>\n </ng-container>\n <span fd-menu-title>\n <ng-container [cdkPortalOutlet]=\"breadcrumbItem.item.linkContentPortal\"></ng-container>\n </span>\n <ng-container *ngIf=\"breadcrumbItem.item.breadcrumbLink._postfixIconName\">\n <fd-menu-addon\n [glyph]=\"breadcrumbItem.item.breadcrumbLink._postfixIconName\"\n ></fd-menu-addon>\n </ng-container>\n </ng-container>\n <ng-template #portalContent>\n <span fd-menu-title>\n <ng-container\n [cdkPortalOutlet]=\"breadcrumbItem.item.breadcrumbItemPortal\"\n ></ng-container>\n </span>\n </ng-template>\n </a>\n </li>\n </ng-container>\n </fd-menu>\n <span class=\"fd-breadcrumb__item\" *ngIf=\"breadcrumbs.length > 0\" [fdMenuTrigger]=\"menu\">\n <a\n fd-link\n [attr.aria-label]=\"'coreBreadcrumb.overflowTitleMore' | fdTranslate\"\n aria-haspopup=\"listbox\"\n tabindex=\"0\"\n class=\"fd-breadcrumb__collapsed\"\n (keydown.enter)=\"_keyDownHandle($event)\"\n (keydown.space)=\"_keyDownHandle($event)\"\n >\n <fd-icon\n glyph=\"overflow\"\n [title]=\"'coreBreadcrumb.overflowTitleMore' | fdTranslate\"\n [ariaLabel]=\"'coreBreadcrumb.overflowTitleMore' | fdTranslate\"\n ></fd-icon>\n <fd-icon glyph=\"slim-arrow-down\"></fd-icon>\n </a>\n </span>\n </ng-container>\n</fd-overflow-layout>\n\n<ng-content></ng-content>\n", styles: ["/*!\n * Fundamental Library Styles v0.28.3\n * Copyright (c) 2023 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n *//*!\n.fd-breadcrumb\n .fd-breadcrumb__item\n .fd-breadcrump__link\n*/.fd-breadcrumb{-webkit-box-sizing:border-box;-ms-flex-wrap:wrap;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;flex-wrap:wrap;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);list-style:none;margin:0;padding:0}.fd-breadcrumb:after,.fd-breadcrumb:before{box-sizing:inherit;font-size:inherit}.fd-breadcrumb__item{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;padding:0}.fd-breadcrumb__item:after,.fd-breadcrumb__item:before{box-sizing:inherit;font-size:inherit}.fd-breadcrumb__item:after{color:var(--sapContent_LabelColor);content:\"/\";margin-left:.25rem;margin-right:.25rem}.fd-breadcrumb__item:last-child:after{content:none}.fd-breadcrumb__item .fd-breadcrumb__popover-body{border:none;border-top-left-radius:.125rem;border-top-right-radius:.125rem}.fd-breadcrumb{display:flex;white-space:nowrap}.fd-breadcrumb .fd-breadcrumb__collapsed{cursor:pointer}.fd-breadcrumb .fd-overflow-layout{justify-content:start}.fd-breadcrumb .fd-breadcrumb__item:last-child:after{content:\"/\"}.fd-breadcrumb .fd-overflow-layout__item--last .fd-breadcrumb__item:after{content:none}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.IconComponent, selector: "fd-icon", inputs: ["glyph", "font", "class", "ariaLabel"] }, { kind: "component", type: i4.MenuComponent, selector: "fd-menu", inputs: ["mobile", "disabled", "focusTrapped", "focusAutoCapture", "tabbableScrollbar", "openOnHoverTime", "mobileConfig", "ariaLabel", "ariaLabelledby", "id"], outputs: ["activePath"] }, { kind: "component", type: i4.MenuItemComponent, selector: "li[fd-menu-item]", inputs: ["disabled", "itemId", "submenu", "parentSubmenu"], outputs: ["onSelect"], exportAs: ["fd-menu-item"] }, { kind: "directive", type: i4.MenuInteractiveDirective, selector: "[fd-menu-interactive]" }, { kind: "directive", type: i4.MenuTitleDirective, selector: "[fd-menu-title]" }, { kind: "component", type: i4.MenuAddonDirective, selector: "fd-menu-addon", inputs: ["position", "glyph", "submenuIndicator", "ariaHidden"] }, { kind: "directive", type: i4.MenuTriggerDirective, selector: "[fdMenuTrigger]", inputs: ["fdMenuTrigger"] }, { kind: "component", type: i5.LinkComponent, selector: "[fdLink], [fd-link], [fd-breadcrumb-link]", inputs: ["class", "emphasized", "disabled", "inverted", "subtle", "undecorated"] }, { kind: "directive", type: i6.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }, { kind: "component", type: i7.OverflowLayoutComponent, selector: "fd-overflow-layout", inputs: ["maxVisibleItems", "navigationTrigger", "showMorePosition", "reverseHiddenItems", "enableKeyboardNavigation", "moreItemsButtonText"], outputs: ["visibleItemsCount", "hiddenItemsCount"] }, { kind: "directive", type: i7.OverflowItemRefDirective, selector: "[fdOverflowItemRef]", inputs: ["fdOverflowItemRef"] }, { kind: "directive", type: i7.OverflowExpandDirective, selector: "[fdOverflowExpand]", inputs: ["fdOverflowExpandItems"] }, { kind: "directive", type: i7.OverflowLayoutItemDirective, selector: "[fdOverflowLayoutItem]", inputs: ["forceVisibility"], outputs: ["hiddenChange"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i8.FdTranslatePipe, name: "fdTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
124
+ ], queries: [{ propertyName: "_contentItems", predicate: FD_BREADCRUMB_ITEM_COMPONENT }], viewQueries: [{ propertyName: "_menuComponent", first: true, predicate: MenuComponent, descendants: true }, { propertyName: "_overflowLayout", first: true, predicate: OverflowLayoutComponent, descendants: true }], ngImport: i0, template: "<fd-overflow-layout\n [reverseHiddenItems]=\"!reverse\"\n showMorePosition=\"left\"\n [enableKeyboardNavigation]=\"false\"\n (visibleItemsCount)=\"_onVisibleItemsCountChange($event)\"\n (hiddenItemsCount)=\"_onHiddenItemsCountChange($event)\"\n>\n <ng-container *ngFor=\"let breadcrumb of _items\">\n <div\n *fdOverflowItemRef=\"breadcrumb; let hidden\"\n fdOverflowLayoutItem\n (hiddenChange)=\"_onHiddenChange($event, breadcrumb)\"\n >\n <ng-template [cdkPortalOutlet]=\"breadcrumb.portal\"></ng-template>\n </div>\n </ng-container>\n <ng-container *fdOverflowExpand=\"let breadcrumbs; items: _items\">\n <fd-menu #menu [closeOnEscapeKey]=\"true\" [focusAutoCapture]=\"true\" [placement]=\"_placement$ | async\">\n <ng-container *ngFor=\"let breadcrumbItem of breadcrumbs\">\n <li\n fd-menu-item\n [disabled]=\"\n breadcrumbItem.item.breadcrumbLink ? breadcrumbItem.item.breadcrumbLink.disabled : false\n \"\n >\n <a fd-menu-interactive (click)=\"itemClicked(breadcrumbItem.item, $event)\">\n <ng-container *ngIf=\"breadcrumbItem?.item.breadcrumbLink; else portalContent\">\n <ng-container *ngIf=\"breadcrumbItem.item.breadcrumbLink._prefixIconName\">\n <fd-menu-addon\n position=\"before\"\n [glyph]=\"breadcrumbItem.item.breadcrumbLink._prefixIconName\"\n ></fd-menu-addon>\n </ng-container>\n <span fd-menu-title>\n <ng-container [cdkPortalOutlet]=\"breadcrumbItem.item.linkContentPortal\"></ng-container>\n </span>\n <ng-container *ngIf=\"breadcrumbItem.item.breadcrumbLink._postfixIconName\">\n <fd-menu-addon\n [glyph]=\"breadcrumbItem.item.breadcrumbLink._postfixIconName\"\n ></fd-menu-addon>\n </ng-container>\n </ng-container>\n <ng-template #portalContent>\n <span fd-menu-title>\n <ng-container\n [cdkPortalOutlet]=\"breadcrumbItem.item.breadcrumbItemPortal\"\n ></ng-container>\n </span>\n </ng-template>\n </a>\n </li>\n </ng-container>\n </fd-menu>\n <span class=\"fd-breadcrumb__item\" *ngIf=\"breadcrumbs.length > 0\" [fdMenuTrigger]=\"menu\">\n <a\n fd-link\n [attr.aria-label]=\"'coreBreadcrumb.overflowTitleMore' | fdTranslate\"\n aria-haspopup=\"listbox\"\n tabindex=\"0\"\n class=\"fd-breadcrumb__collapsed\"\n (keydown.enter)=\"_keyDownHandle($event)\"\n (keydown.space)=\"_keyDownHandle($event)\"\n >\n <fd-icon\n glyph=\"overflow\"\n [title]=\"'coreBreadcrumb.overflowTitleMore' | fdTranslate\"\n [ariaLabel]=\"'coreBreadcrumb.overflowTitleMore' | fdTranslate\"\n ></fd-icon>\n <fd-icon glyph=\"slim-arrow-down\"></fd-icon>\n </a>\n </span>\n </ng-container>\n</fd-overflow-layout>\n\n<ng-content></ng-content>\n", styles: ["/*!\n * Fundamental Library Styles v0.28.3\n * Copyright (c) 2023 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n *//*!\n.fd-breadcrumb\n .fd-breadcrumb__item\n .fd-breadcrump__link\n*/.fd-breadcrumb{-webkit-box-sizing:border-box;-ms-flex-wrap:wrap;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;flex-wrap:wrap;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);list-style:none;margin:0;padding:0}.fd-breadcrumb:after,.fd-breadcrumb:before{box-sizing:inherit;font-size:inherit}.fd-breadcrumb__item{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;padding:0}.fd-breadcrumb__item:after,.fd-breadcrumb__item:before{box-sizing:inherit;font-size:inherit}.fd-breadcrumb__item:after{color:var(--sapContent_LabelColor);content:\"/\";margin-left:.25rem;margin-right:.25rem}.fd-breadcrumb__item:last-child:after{content:none}.fd-breadcrumb__item .fd-breadcrumb__popover-body{border:none;border-top-left-radius:.125rem;border-top-right-radius:.125rem}.fd-breadcrumb{display:flex;white-space:nowrap}.fd-breadcrumb .fd-breadcrumb__collapsed{cursor:pointer}.fd-breadcrumb .fd-overflow-layout{justify-content:start}.fd-breadcrumb .fd-breadcrumb__item:last-child:after{content:\"/\"}.fd-breadcrumb .fd-overflow-layout__item--last .fd-breadcrumb__item:after{content:none}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.IconComponent, selector: "fd-icon", inputs: ["glyph", "font", "class", "ariaLabel"] }, { kind: "component", type: i4.MenuComponent, selector: "fd-menu", inputs: ["mobile", "disabled", "focusTrapped", "focusAutoCapture", "tabbableScrollbar", "openOnHoverTime", "mobileConfig", "ariaLabel", "ariaLabelledby", "id"], outputs: ["activePath"] }, { kind: "component", type: i4.MenuItemComponent, selector: "li[fd-menu-item]", inputs: ["disabled", "itemId", "submenu", "parentSubmenu"], outputs: ["onSelect"], exportAs: ["fd-menu-item"] }, { kind: "directive", type: i4.MenuInteractiveDirective, selector: "[fd-menu-interactive]" }, { kind: "directive", type: i4.MenuTitleDirective, selector: "[fd-menu-title]" }, { kind: "component", type: i4.MenuAddonDirective, selector: "fd-menu-addon", inputs: ["position", "glyph", "submenuIndicator", "ariaHidden"] }, { kind: "directive", type: i4.MenuTriggerDirective, selector: "[fdMenuTrigger]", inputs: ["fdMenuTrigger"] }, { kind: "component", type: i5.LinkComponent, selector: "[fdLink], [fd-link], [fd-breadcrumb-link]", inputs: ["class", "emphasized", "disabled", "inverted", "subtle", "undecorated"] }, { kind: "directive", type: i6.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }, { kind: "component", type: i7.OverflowLayoutComponent, selector: "fd-overflow-layout", inputs: ["maxVisibleItems", "navigationTrigger", "showMorePosition", "reverseHiddenItems", "enableKeyboardNavigation", "moreItemsButtonText"], outputs: ["visibleItemsCount", "hiddenItemsCount"] }, { kind: "directive", type: i7.OverflowItemRefDirective, selector: "[fdOverflowItemRef]", inputs: ["fdOverflowItemRef"] }, { kind: "directive", type: i7.OverflowExpandDirective, selector: "[fdOverflowExpand]", inputs: ["fdOverflowExpandItems"] }, { kind: "directive", type: i7.OverflowLayoutItemDirective, selector: "[fdOverflowLayoutItem]", inputs: ["forceVisibility"], outputs: ["hiddenChange"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i8.FdTranslatePipe, name: "fdTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
128
125
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BreadcrumbComponent, decorators: [{
129
126
  type: Component,
130
127
  args: [{ selector: 'fd-breadcrumb', host: {
@@ -136,7 +133,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
136
133
  provide: FD_BREADCRUMB_COMPONENT,
137
134
  useExisting: BreadcrumbComponent
138
135
  }
139
- ], template: "<fd-overflow-layout\n [reverseHiddenItems]=\"!reverse\"\n showMorePosition=\"left\"\n [enableKeyboardNavigation]=\"false\"\n (visibleItemsCount)=\"_onVisibleItemsCountChange($event)\"\n (hiddenItemsCount)=\"_onHiddenItemsCountChange($event)\"\n>\n <ng-container *ngFor=\"let breadcrumb of _items\">\n <div\n *fdOverflowItemRef=\"breadcrumb; let hidden\"\n fdOverflowLayoutItem\n (hiddenChange)=\"_onHiddenChange($event, breadcrumb)\"\n >\n <ng-template [cdkPortalOutlet]=\"breadcrumb.portal\"></ng-template>\n </div>\n </ng-container>\n <ng-container *fdOverflowExpand=\"let breadcrumbs; items: _items\">\n <fd-menu #menu [closeOnEscapeKey]=\"true\" [focusAutoCapture]=\"true\" [placement]=\"_placement$ | async\">\n <ng-container *ngFor=\"let breadcrumbItem of breadcrumbs\">\n <li\n fd-menu-item\n [disabled]=\"\n breadcrumbItem.item.breadcrumbLink ? breadcrumbItem.item.breadcrumbLink.disabled : false\n \"\n >\n <a\n fd-menu-interactive\n (click)=\"itemClicked(breadcrumbItem.item, $event)\"\n (keydown.enter)=\"itemClicked(breadcrumbItem.item, $event)\"\n (keydown.space)=\"itemClicked(breadcrumbItem.item, $event)\"\n >\n <ng-container *ngIf=\"breadcrumbItem?.item.breadcrumbLink; else portalContent\">\n <ng-container *ngIf=\"breadcrumbItem.item.breadcrumbLink._prefixIconName\">\n <fd-menu-addon\n position=\"before\"\n [glyph]=\"breadcrumbItem.item.breadcrumbLink._prefixIconName\"\n ></fd-menu-addon>\n </ng-container>\n <span fd-menu-title>\n <ng-container [cdkPortalOutlet]=\"breadcrumbItem.item.linkContentPortal\"></ng-container>\n </span>\n <ng-container *ngIf=\"breadcrumbItem.item.breadcrumbLink._postfixIconName\">\n <fd-menu-addon\n [glyph]=\"breadcrumbItem.item.breadcrumbLink._postfixIconName\"\n ></fd-menu-addon>\n </ng-container>\n </ng-container>\n <ng-template #portalContent>\n <span fd-menu-title>\n <ng-container\n [cdkPortalOutlet]=\"breadcrumbItem.item.breadcrumbItemPortal\"\n ></ng-container>\n </span>\n </ng-template>\n </a>\n </li>\n </ng-container>\n </fd-menu>\n <span class=\"fd-breadcrumb__item\" *ngIf=\"breadcrumbs.length > 0\" [fdMenuTrigger]=\"menu\">\n <a\n fd-link\n [attr.aria-label]=\"'coreBreadcrumb.overflowTitleMore' | fdTranslate\"\n aria-haspopup=\"listbox\"\n tabindex=\"0\"\n class=\"fd-breadcrumb__collapsed\"\n (keydown.enter)=\"_keyDownHandle($event)\"\n (keydown.space)=\"_keyDownHandle($event)\"\n >\n <fd-icon\n glyph=\"overflow\"\n [title]=\"'coreBreadcrumb.overflowTitleMore' | fdTranslate\"\n [ariaLabel]=\"'coreBreadcrumb.overflowTitleMore' | fdTranslate\"\n ></fd-icon>\n <fd-icon glyph=\"slim-arrow-down\"></fd-icon>\n </a>\n </span>\n </ng-container>\n</fd-overflow-layout>\n\n<ng-content></ng-content>\n", styles: ["/*!\n * Fundamental Library Styles v0.28.3\n * Copyright (c) 2023 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n *//*!\n.fd-breadcrumb\n .fd-breadcrumb__item\n .fd-breadcrump__link\n*/.fd-breadcrumb{-webkit-box-sizing:border-box;-ms-flex-wrap:wrap;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;flex-wrap:wrap;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);list-style:none;margin:0;padding:0}.fd-breadcrumb:after,.fd-breadcrumb:before{box-sizing:inherit;font-size:inherit}.fd-breadcrumb__item{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;padding:0}.fd-breadcrumb__item:after,.fd-breadcrumb__item:before{box-sizing:inherit;font-size:inherit}.fd-breadcrumb__item:after{color:var(--sapContent_LabelColor);content:\"/\";margin-left:.25rem;margin-right:.25rem}.fd-breadcrumb__item:last-child:after{content:none}.fd-breadcrumb__item .fd-breadcrumb__popover-body{border:none;border-top-left-radius:.125rem;border-top-right-radius:.125rem}.fd-breadcrumb{display:flex;white-space:nowrap}.fd-breadcrumb .fd-breadcrumb__collapsed{cursor:pointer}.fd-breadcrumb .fd-overflow-layout{justify-content:start}.fd-breadcrumb .fd-breadcrumb__item:last-child:after{content:\"/\"}.fd-breadcrumb .fd-overflow-layout__item--last .fd-breadcrumb__item:after{content:none}\n"] }]
136
+ ], template: "<fd-overflow-layout\n [reverseHiddenItems]=\"!reverse\"\n showMorePosition=\"left\"\n [enableKeyboardNavigation]=\"false\"\n (visibleItemsCount)=\"_onVisibleItemsCountChange($event)\"\n (hiddenItemsCount)=\"_onHiddenItemsCountChange($event)\"\n>\n <ng-container *ngFor=\"let breadcrumb of _items\">\n <div\n *fdOverflowItemRef=\"breadcrumb; let hidden\"\n fdOverflowLayoutItem\n (hiddenChange)=\"_onHiddenChange($event, breadcrumb)\"\n >\n <ng-template [cdkPortalOutlet]=\"breadcrumb.portal\"></ng-template>\n </div>\n </ng-container>\n <ng-container *fdOverflowExpand=\"let breadcrumbs; items: _items\">\n <fd-menu #menu [closeOnEscapeKey]=\"true\" [focusAutoCapture]=\"true\" [placement]=\"_placement$ | async\">\n <ng-container *ngFor=\"let breadcrumbItem of breadcrumbs\">\n <li\n fd-menu-item\n [disabled]=\"\n breadcrumbItem.item.breadcrumbLink ? breadcrumbItem.item.breadcrumbLink.disabled : false\n \"\n >\n <a fd-menu-interactive (click)=\"itemClicked(breadcrumbItem.item, $event)\">\n <ng-container *ngIf=\"breadcrumbItem?.item.breadcrumbLink; else portalContent\">\n <ng-container *ngIf=\"breadcrumbItem.item.breadcrumbLink._prefixIconName\">\n <fd-menu-addon\n position=\"before\"\n [glyph]=\"breadcrumbItem.item.breadcrumbLink._prefixIconName\"\n ></fd-menu-addon>\n </ng-container>\n <span fd-menu-title>\n <ng-container [cdkPortalOutlet]=\"breadcrumbItem.item.linkContentPortal\"></ng-container>\n </span>\n <ng-container *ngIf=\"breadcrumbItem.item.breadcrumbLink._postfixIconName\">\n <fd-menu-addon\n [glyph]=\"breadcrumbItem.item.breadcrumbLink._postfixIconName\"\n ></fd-menu-addon>\n </ng-container>\n </ng-container>\n <ng-template #portalContent>\n <span fd-menu-title>\n <ng-container\n [cdkPortalOutlet]=\"breadcrumbItem.item.breadcrumbItemPortal\"\n ></ng-container>\n </span>\n </ng-template>\n </a>\n </li>\n </ng-container>\n </fd-menu>\n <span class=\"fd-breadcrumb__item\" *ngIf=\"breadcrumbs.length > 0\" [fdMenuTrigger]=\"menu\">\n <a\n fd-link\n [attr.aria-label]=\"'coreBreadcrumb.overflowTitleMore' | fdTranslate\"\n aria-haspopup=\"listbox\"\n tabindex=\"0\"\n class=\"fd-breadcrumb__collapsed\"\n (keydown.enter)=\"_keyDownHandle($event)\"\n (keydown.space)=\"_keyDownHandle($event)\"\n >\n <fd-icon\n glyph=\"overflow\"\n [title]=\"'coreBreadcrumb.overflowTitleMore' | fdTranslate\"\n [ariaLabel]=\"'coreBreadcrumb.overflowTitleMore' | fdTranslate\"\n ></fd-icon>\n <fd-icon glyph=\"slim-arrow-down\"></fd-icon>\n </a>\n </span>\n </ng-container>\n</fd-overflow-layout>\n\n<ng-content></ng-content>\n", styles: ["/*!\n * Fundamental Library Styles v0.28.3\n * Copyright (c) 2023 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n *//*!\n.fd-breadcrumb\n .fd-breadcrumb__item\n .fd-breadcrump__link\n*/.fd-breadcrumb{-webkit-box-sizing:border-box;-ms-flex-wrap:wrap;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;flex-wrap:wrap;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);list-style:none;margin:0;padding:0}.fd-breadcrumb:after,.fd-breadcrumb:before{box-sizing:inherit;font-size:inherit}.fd-breadcrumb__item{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;padding:0}.fd-breadcrumb__item:after,.fd-breadcrumb__item:before{box-sizing:inherit;font-size:inherit}.fd-breadcrumb__item:after{color:var(--sapContent_LabelColor);content:\"/\";margin-left:.25rem;margin-right:.25rem}.fd-breadcrumb__item:last-child:after{content:none}.fd-breadcrumb__item .fd-breadcrumb__popover-body{border:none;border-top-left-radius:.125rem;border-top-right-radius:.125rem}.fd-breadcrumb{display:flex;white-space:nowrap}.fd-breadcrumb .fd-breadcrumb__collapsed{cursor:pointer}.fd-breadcrumb .fd-overflow-layout{justify-content:start}.fd-breadcrumb .fd-breadcrumb__item:last-child:after{content:\"/\"}.fd-breadcrumb .fd-overflow-layout__item--last .fd-breadcrumb__item:after{content:none}\n"] }]
140
137
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.DestroyedService }, { type: i1.RtlService, decorators: [{
141
138
  type: Optional
142
139
  }] }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { containerElement: [{
@@ -159,4 +156,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
159
156
  type: ViewChild,
160
157
  args: [OverflowLayoutComponent]
161
158
  }] } });
162
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWRjcnVtYi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvc3JjL2xpYi9icmVhZGNydW1iL2JyZWFkY3J1bWIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3NyYy9saWIvYnJlYWRjcnVtYi9icmVhZGNydW1iLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFSCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxlQUFlLEVBQ2YsVUFBVSxFQUNWLFlBQVksRUFDWixLQUFLLEVBQ0wsU0FBUyxFQUVULFFBQVEsRUFDUixNQUFNLEVBQ04sU0FBUyxFQUNULFNBQVMsRUFDVCxpQkFBaUIsRUFDcEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDaEYsT0FBTyxFQUFFLGdCQUFnQixFQUFjLE1BQU0sNEJBQTRCLENBQUM7QUFDMUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDbEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRzNELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSw0QkFBNEIsRUFBRSxNQUFNLFVBQVUsQ0FBQzs7Ozs7Ozs7OztBQUVqRjs7Ozs7Ozs7OztHQVVHO0FBbUJILE1BQU0sT0FBTyxtQkFBbUI7SUFDNUI7Ozs7OztPQU1HO0lBQ0gsSUFDSSxnQkFBZ0IsQ0FBQyxDQUFjO1FBQy9CLElBQUksU0FBUyxFQUFFLEVBQUU7WUFDYixPQUFPLENBQUMsSUFBSSxDQUNSLDBIQUEwSCxDQUM3SCxDQUFDO1NBQ0w7SUFDTCxDQUFDO0lBMkNELGNBQWM7SUFDZCxZQUNXLFVBQW1DLEVBQ2xDLFdBQTZCLEVBQ2pCLFdBQThCLEVBQzFDLElBQXVCO1FBSHhCLGVBQVUs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O1lBQ2hDLFdBQVcsRUFBRSxtQkFBbUI7U0FDbkM7S0FDSix3REF3Q2dCLDRCQUE0Qiw2RUFJbEMsYUFBYSxrRkFJYix1QkFBdUIsZ0RDcEd0QywyNUhBZ0ZBOzJGRDFCYSxtQkFBbUI7a0JBbEIvQixTQUFTOytCQUNJLGVBQWUsUUFDbkI7d0JBQ0YsS0FBSyxFQUFFLGVBQWU7d0JBQ3RCLElBQUksRUFBRSxNQUFNO3FCQUNmLGlCQUdjLGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU0sYUFDcEM7d0JBQ1AsZ0JBQWdCO3dCQUNoQjs0QkFDSSxPQUFPLEVBQUUsdUJBQXVCOzRCQUNoQyxXQUFXLHFCQUFxQjt5QkFDbkM7cUJBQ0o7OzBCQWdFSSxRQUFROzRFQXJEVCxnQkFBZ0I7c0JBRG5CLEtBQUs7Z0JBV04sT0FBTztzQkFETixLQUFLO2dCQUtOLFFBQVE7c0JBRFAsS0FBSztnQkFPTixpQkFBaUI7c0JBRGhCLE1BQU07Z0JBT1AsZ0JBQWdCO3NCQURmLE1BQU07Z0JBS1UsYUFBYTtzQkFEN0IsZUFBZTt1QkFBQyw0QkFBNEI7Z0JBSzVCLGNBQWM7c0JBRDlCLFNBQVM7dUJBQUMsYUFBYTtnQkFLUCxlQUFlO3NCQUQvQixTQUFTO3VCQUFDLHVCQUF1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQWZ0ZXJWaWV3SW5pdCxcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgQ29udGVudENoaWxkcmVuLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIElucHV0LFxuICAgIGlzRGV2TW9kZSxcbiAgICBPbkluaXQsXG4gICAgT3B0aW9uYWwsXG4gICAgT3V0cHV0LFxuICAgIFF1ZXJ5TGlzdCxcbiAgICBWaWV3Q2hpbGQsXG4gICAgVmlld0VuY2Fwc3VsYXRpb25cbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPdmVyZmxvd0xheW91dENvbXBvbmVudCB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9vdmVyZmxvdy1sYXlvdXQnO1xuaW1wb3J0IHsgRGVzdHJveWVkU2VydmljZSwgUnRsU2VydmljZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY2RrL3V0aWxzJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBNZW51Q29tcG9uZW50IH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL21lbnUnO1xuaW1wb3J0IHsgUGxhY2VtZW50IH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL3NoYXJlZCc7XG5pbXBvcnQgeyBCcmVhZGNydW1iSXRlbUNvbXBvbmVudCB9IGZyb20gJy4vYnJlYWRjcnVtYi1pdGVtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGRF9CUkVBRENSVU1CX0NPTVBPTkVOVCwgRkRfQlJFQURDUlVNQl9JVEVNX0NPTVBPTkVOVCB9IGZyb20gJy4vdG9rZW5zJztcblxuLyoqXG4gKiBCcmVhZGNydW1iIHBhcmVudCB3cmFwcGVyIGRpcmVjdGl2ZS4gTXVzdCBoYXZlIGJyZWFkY3J1bWIgaXRlbSBjaGlsZCBkaXJlY3RpdmVzLlxuICpcbiAqIGBgYGh0bWxcbiAqIDxmZC1icmVhZGNydW1iPlxuICogICAgIDxmZC1icmVhZGNydW1iLWl0ZW0+XG4gKiAgICAgICAgIDxhIGZkLWxpbmsgW3JvdXRlckxpbmtdPVwiJyMnXCI+QnJlYWRjcnVtYiBMaW5rPC9hPlxuICogICAgIDwvZmQtYnJlYWRjcnVtYi1pdGVtPlxuICogPC9mZC1icmVhZGNydW1iPlxuICogYGBgXG4gKi9cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZmQtYnJlYWRjcnVtYicsXG4gICAgaG9zdDoge1xuICAgICAgICBjbGFzczogJ2ZkLWJyZWFkY3J1bWInLFxuICAgICAgICByb2xlOiAndHJlZSdcbiAgICB9LFxuICAgIHRlbXBsYXRlVXJsOiAnLi9icmVhZGNydW1iLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9icmVhZGNydW1iLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgRGVzdHJveWVkU2VydmljZSxcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogRkRfQlJFQURDUlVNQl9DT01QT05FTlQsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogQnJlYWRjcnVtYkNvbXBvbmVudFxuICAgICAgICB9XG4gICAgXVxufSlcbmV4cG9ydCBjbGFzcyBCcmVhZGNydW1iQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0IHtcbiAgICAvKipcbiAgICAgKiBAZGVwcmVjYXRlZFxuICAgICAqIEJyZWFkY3J1bWJzIGNvbXBvbmVudCBub3cgdXNlcyBtb3JlIGFkdmFuY2VkIGNhbGN1bGF0aW9uIG1lY2hhbmlzbSB3aXRob3V0IHRoZSBuZWVkIG9mIHNwZWNpZnlpbmcgdGhlIGNvbnRhaW5lciBlbGVtZW50LlxuICAgICAqXG4gICAgICogVGhlIGVsZW1lbnQgdG8gYWN0IGFzIHRoZSBicmVhZGNydW1iIGNvbnRhaW5lci4gV2hlbiBwcm92aWRlZCwgdGhlIGJyZWFkY3J1bWIncyByZXNwb25zaXZlIGNvbGxhcHNpbmcgYmVoYXZpb3JcbiAgICAgKiBwZXJmb3JtcyBiZXR0ZXIuIFdoZW4gbm90IHByb3ZpZGVkLCB0aGUgaW1tZWRpYXRlIHBhcmVudCBlbGVtZW50J3Mgd2lkdGggd2lsbCBiZSB1c2VkLlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2V0IGNvbnRhaW5lckVsZW1lbnQoXzogSFRNTEVsZW1lbnQpIHtcbiAgICAgICAgaWYgKGlzRGV2TW9kZSgpKSB7XG4gICAgICAgICAgICBjb25zb2xlLndhcm4oXG4gICAgICAgICAgICAgICAgJ0JyZWFkY3J1bWJzIGNvbXBvbmVudCBub3cgdXNlcyBtb3JlIGFkdmFuY2VkIGNhbGN1bGF0aW9uIG1lY2hhbmlzbSB3aXRob3V0IHRoZSBuZWVkIG9mIHNwZWNpZnlpbmcgdGhlIGNvbnRhaW5lciBlbGVtZW50LidcbiAgICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogV2hldGhlciB0byBhcHBlbmQgaXRlbXMgdG8gdGhlIG92ZXJmbG93IGRyb3Bkb3duIGluIHJldmVyc2Ugb3JkZXIuIERlZmF1bHQgaXMgdHJ1ZS4gKi9cbiAgICBASW5wdXQoKVxuICAgIHJldmVyc2UgPSBmYWxzZTtcblxuICAgIC8qKiBUYWJpbmRleCBvZiB0aGUgYnJlYWRjcnVtYi4gKi9cbiAgICBASW5wdXQoKVxuICAgIHRhYkluZGV4ID0gJzAnO1xuXG4gICAgLyoqXG4gICAgICogRXZlbnQgZW1pdHRlZCB3aGVuIHZpc2libGUgaXRlbXMgY291bnQgaXMgY2hhbmdlZC5cbiAgICAgKi9cbiAgICBAT3V0cHV0KClcbiAgICB2aXNpYmxlSXRlbXNDb3VudCA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xuXG4gICAgLyoqXG4gICAgICogRXZlbnQgZW1pdHRlZCB3aGVuIGhpZGRlbiBpdGVtcyBjb3VudCBpcyBjaGFuZ2VkLlxuICAgICAqL1xuICAgIEBPdXRwdXQoKVxuICAgIGhpZGRlbkl0ZW1zQ291bnQgPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQENvbnRlbnRDaGlsZHJlbihGRF9CUkVBRENSVU1CX0lURU1fQ09NUE9ORU5UKVxuICAgIHByaXZhdGUgcmVhZG9ubHkgX2NvbnRlbnRJdGVtczogUXVlcnlMaXN0PEJyZWFkY3J1bWJJdGVtQ29tcG9uZW50PjtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQFZpZXdDaGlsZChNZW51Q29tcG9uZW50KVxuICAgIHByaXZhdGUgcmVhZG9ubHkgX21lbnVDb21wb25lbnQ6IE1lbnVDb21wb25lbnQ7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBWaWV3Q2hpbGQoT3ZlcmZsb3dMYXlvdXRDb21wb25lbnQpXG4gICAgcHJpdmF0ZSByZWFkb25seSBfb3ZlcmZsb3dMYXlvdXQ6IE92ZXJmbG93TGF5b3V0Q29tcG9uZW50O1xuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIEFycmF5IG9mIGJyZWFkY3J1bWIgaXRlbXMuXG4gICAgICovXG4gICAgX2l0ZW1zOiBCcmVhZGNydW1iSXRlbUNvbXBvbmVudFtdID0gW107XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9wbGFjZW1lbnQkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxQbGFjZW1lbnQ+KCdib3R0b20tc3RhcnQnKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHB1YmxpYyBlbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICAgICAgcHJpdmF0ZSBfb25EZXN0cm95JDogRGVzdHJveWVkU2VydmljZSxcbiAgICAgICAgQE9wdGlvbmFsKCkgcHJpdmF0ZSBfcnRsU2VydmljZTogUnRsU2VydmljZSB8IG51bGwsXG4gICAgICAgIHByaXZhdGUgX2NkcjogQ2hhbmdlRGV0ZWN0b3JSZWZcbiAgICApIHt9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9ydGxTZXJ2aWNlPy5ydGxcbiAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKHZhbHVlKSA9PiB0aGlzLl9wbGFjZW1lbnQkLm5leHQodmFsdWUgPyAnYm90dG9tLWVuZCcgOiAnYm90dG9tLXN0YXJ0JykpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgb25SZXNpemUoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX292ZXJmbG93TGF5b3V0LnRyaWdnZXJSZWNhbGN1bGF0aW9uKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogV2UgY2F0Y2ggaW50ZXJhY3Rpb25zIHdpdGggaXRlbSwgRW50ZXIsIFNwYWNlLCBNb3VzZSBjbGljayBhbmQgVG91Y2ggY2xpY2ssXG4gICAgICogaWYgb3JpZ2luYWwgZWxlbWVudCBoYWQgcm91dGVyIGxpbmsgd2UgYXJlIHByb3h5aW5nIGNsaWNrIHRvIHRoYXQgZWxlbWVudFxuICAgICAqICovXG4gICAgaXRlbUNsaWNrZWQoYnJlYWRjcnVtYkl0ZW06IEJyZWFkY3J1bWJJdGVtQ29tcG9uZW50LCAkZXZlbnQ6IGFueSk6IHZvaWQge1xuICAgICAgICBpZiAoYnJlYWRjcnVtYkl0ZW0uX25lZWRzQ2xpY2tQcm94eSkge1xuICAgICAgICAgICAgJGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICBicmVhZGNydW1iSXRlbS5icmVhZGNydW1iTGluay5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuY2xpY2soKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9zZXRJdGVtcygpO1xuXG4gICAgICAgIHRoaXMuX2NvbnRlbnRJdGVtcy5jaGFuZ2VzLnN1YnNjcmliZSgoKSA9PiB0aGlzLl9zZXRJdGVtcygpKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9rZXlEb3duSGFuZGxlKGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9tZW51Q29tcG9uZW50LnRvZ2dsZSgpO1xuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgX29uSGlkZGVuQ2hhbmdlKGlzSGlkZGVuOiBib29sZWFuLCBicmVhZGNydW1iOiBCcmVhZGNydW1iSXRlbUNvbXBvbmVudCk6IHZvaWQge1xuICAgICAgICBpZiAoIWlzSGlkZGVuKSB7XG4gICAgICAgICAgICBicmVhZGNydW1iLl9kZXRhY2goKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGJyZWFkY3J1bWIuX2F0dGFjaCgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBfb25WaXNpYmxlSXRlbXNDb3VudENoYW5nZSh2aXNpYmxlSXRlbXNDb3VudDogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIHRoaXMudmlzaWJsZUl0ZW1zQ291bnQuZW1pdCh2aXNpYmxlSXRlbXNDb3VudCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBfb25IaWRkZW5JdGVtc0NvdW50Q2hhbmdlKGhpZGRlbkl0ZW1zQ291bnQ6IG51bWJlcik6IHZvaWQge1xuICAgICAgICB0aGlzLmhpZGRlbkl0ZW1zQ291bnQuZW1pdChoaWRkZW5JdGVtc0NvdW50KTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX3NldEl0ZW1zKCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9jb250ZW50SXRlbXMuZm9yRWFjaCgoaXRlbSkgPT4gaXRlbS5zZXRQb3J0YWwoKSk7XG4gICAgICAgIHRoaXMuX2l0ZW1zID0gdGhpcy5fY29udGVudEl0ZW1zLnRvQXJyYXkoKTtcbiAgICAgICAgdGhpcy5fY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgICB9XG59XG4iLCI8ZmQtb3ZlcmZsb3ctbGF5b3V0XG4gICAgW3JldmVyc2VIaWRkZW5JdGVtc109XCIhcmV2ZXJzZVwiXG4gICAgc2hvd01vcmVQb3NpdGlvbj1cImxlZnRcIlxuICAgIFtlbmFibGVLZXlib2FyZE5hdmlnYXRpb25dPVwiZmFsc2VcIlxuICAgICh2aXNpYmxlSXRlbXNDb3VudCk9XCJfb25WaXNpYmxlSXRlbXNDb3VudENoYW5nZSgkZXZlbnQpXCJcbiAgICAoaGlkZGVuSXRlbXNDb3VudCk9XCJfb25IaWRkZW5JdGVtc0NvdW50Q2hhbmdlKCRldmVudClcIlxuPlxuICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGJyZWFkY3J1bWIgb2YgX2l0ZW1zXCI+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICAgICpmZE92ZXJmbG93SXRlbVJlZj1cImJyZWFkY3J1bWI7IGxldCBoaWRkZW5cIlxuICAgICAgICAgICAgZmRPdmVyZmxvd0xheW91dEl0ZW1cbiAgICAgICAgICAgIChoaWRkZW5DaGFuZ2UpPVwiX29uSGlkZGVuQ2hhbmdlKCRldmVudCwgYnJlYWRjcnVtYilcIlxuICAgICAgICA+XG4gICAgICAgICAgICA8bmctdGVtcGxhdGUgW2Nka1BvcnRhbE91dGxldF09XCJicmVhZGNydW1iLnBvcnRhbFwiPjwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy1jb250YWluZXIgKmZkT3ZlcmZsb3dFeHBhbmQ9XCJsZXQgYnJlYWRjcnVtYnM7IGl0ZW1zOiBfaXRlbXNcIj5cbiAgICAgICAgPGZkLW1lbnUgI21lbnUgW2Nsb3NlT25Fc2NhcGVLZXldPVwidHJ1ZVwiIFtmb2N1c0F1dG9DYXB0dXJlXT1cInRydWVcIiBbcGxhY2VtZW50XT1cIl9wbGFjZW1lbnQkIHwgYXN5bmNcIj5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGJyZWFkY3J1bWJJdGVtIG9mIGJyZWFkY3J1bWJzXCI+XG4gICAgICAgICAgICAgICAgPGxpXG4gICAgICAgICAgICAgICAgICAgIGZkLW1lbnUtaXRlbVxuICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBicmVhZGNydW1iSXRlbS5pdGVtLmJyZWFkY3J1bWJMaW5rID8gYnJlYWRjcnVtYkl0ZW0uaXRlbS5icmVhZGNydW1iTGluay5kaXNhYmxlZCA6IGZhbHNlXG4gICAgICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgICAgICAgICAgZmQtbWVudS1pbnRlcmFjdGl2ZVxuICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIml0ZW1DbGlja2VkKGJyZWFkY3J1bWJJdGVtLml0ZW0sICRldmVudClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgKGtleWRvd24uZW50ZXIpPVwiaXRlbUNsaWNrZWQoYnJlYWRjcnVtYkl0ZW0uaXRlbSwgJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAoa2V5ZG93bi5zcGFjZSk9XCJpdGVtQ2xpY2tlZChicmVhZGNydW1iSXRlbS5pdGVtLCAkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImJyZWFkY3J1bWJJdGVtPy5pdGVtLmJyZWFkY3J1bWJMaW5rOyBlbHNlIHBvcnRhbENvbnRlbnRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiYnJlYWRjcnVtYkl0ZW0uaXRlbS5icmVhZGNydW1iTGluay5fcHJlZml4SWNvbk5hbWVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZkLW1lbnUtYWRkb25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uPVwiYmVmb3JlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtnbHlwaF09XCJicmVhZGNydW1iSXRlbS5pdGVtLmJyZWFkY3J1bWJMaW5rLl9wcmVmaXhJY29uTmFtZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID48L2ZkLW1lbnUtYWRkb24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gZmQtbWVudS10aXRsZT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBbY2RrUG9ydGFsT3V0bGV0XT1cImJyZWFkY3J1bWJJdGVtLml0ZW0ubGlua0NvbnRlbnRQb3J0YWxcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImJyZWFkY3J1bWJJdGVtLml0ZW0uYnJlYWRjcnVtYkxpbmsuX3Bvc3RmaXhJY29uTmFtZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmQtbWVudS1hZGRvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2dseXBoXT1cImJyZWFkY3J1bWJJdGVtLml0ZW0uYnJlYWRjcnVtYkxpbmsuX3Bvc3RmaXhJY29uTmFtZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID48L2ZkLW1lbnUtYWRkb24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjcG9ydGFsQ29udGVudD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBmZC1tZW51LXRpdGxlPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2RrUG9ydGFsT3V0bGV0XT1cImJyZWFkY3J1bWJJdGVtLml0ZW0uYnJlYWRjcnVtYkl0ZW1Qb3J0YWxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9mZC1tZW51PlxuICAgICAgICA8c3BhbiBjbGFzcz1cImZkLWJyZWFkY3J1bWJfX2l0ZW1cIiAqbmdJZj1cImJyZWFkY3J1bWJzLmxlbmd0aCA+IDBcIiBbZmRNZW51VHJpZ2dlcl09XCJtZW51XCI+XG4gICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgIGZkLWxpbmtcbiAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cIidjb3JlQnJlYWRjcnVtYi5vdmVyZmxvd1RpdGxlTW9yZScgfCBmZFRyYW5zbGF0ZVwiXG4gICAgICAgICAgICAgICAgYXJpYS1oYXNwb3B1cD1cImxpc3Rib3hcIlxuICAgICAgICAgICAgICAgIHRhYmluZGV4PVwiMFwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJmZC1icmVhZGNydW1iX19jb2xsYXBzZWRcIlxuICAgICAgICAgICAgICAgIChrZXlkb3duLmVudGVyKT1cIl9rZXlEb3duSGFuZGxlKCRldmVudClcIlxuICAgICAgICAgICAgICAgIChrZXlkb3duLnNwYWNlKT1cIl9rZXlEb3duSGFuZGxlKCRldmVudClcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxmZC1pY29uXG4gICAgICAgICAgICAgICAgICAgIGdseXBoPVwib3ZlcmZsb3dcIlxuICAgICAgICAgICAgICAgICAgICBbdGl0bGVdPVwiJ2NvcmVCcmVhZGNydW1iLm92ZXJmbG93VGl0bGVNb3JlJyB8IGZkVHJhbnNsYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgW2FyaWFMYWJlbF09XCInY29yZUJyZWFkY3J1bWIub3ZlcmZsb3dUaXRsZU1vcmUnIHwgZmRUcmFuc2xhdGVcIlxuICAgICAgICAgICAgICAgID48L2ZkLWljb24+XG4gICAgICAgICAgICAgICAgPGZkLWljb24gZ2x5cGg9XCJzbGltLWFycm93LWRvd25cIj48L2ZkLWljb24+XG4gICAgICAgICAgICA8L2E+XG4gICAgICAgIDwvc3Bhbj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbjwvZmQtb3ZlcmZsb3ctbGF5b3V0PlxuXG48bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4iXX0=
159
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWRjcnVtYi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvc3JjL2xpYi9icmVhZGNydW1iL2JyZWFkY3J1bWIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3NyYy9saWIvYnJlYWRjcnVtYi9icmVhZGNydW1iLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFSCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxlQUFlLEVBQ2YsVUFBVSxFQUNWLFlBQVksRUFDWixLQUFLLEVBQ0wsU0FBUyxFQUVULFFBQVEsRUFDUixNQUFNLEVBQ04sU0FBUyxFQUNULFNBQVMsRUFDVCxpQkFBaUIsRUFDcEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDaEYsT0FBTyxFQUFFLGdCQUFnQixFQUFjLE1BQU0sNEJBQTRCLENBQUM7QUFDMUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDbEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRzNELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSw0QkFBNEIsRUFBRSxNQUFNLFVBQVUsQ0FBQzs7Ozs7Ozs7OztBQUVqRjs7Ozs7Ozs7OztHQVVHO0FBbUJILE1BQU0sT0FBTyxtQkFBbUI7SUFDNUI7Ozs7OztPQU1HO0lBQ0gsSUFDSSxnQkFBZ0IsQ0FBQyxDQUFjO1FBQy9CLElBQUksU0FBUyxFQUFFLEVBQUU7WUFDYixPQUFPLENBQUMsSUFBSSxDQUNSLDBIQUEwSCxDQUM3SCxDQUFDO1NBQ0w7SUFDTCxDQUFDO0lBMkNELGNBQWM7SUFDZCxZQUNXLFVBQW1DLEVBQ2xDLFdBQTZCLEVBQ2pCLFdBQThCLEVBQzFDLElBQXVCO1FBSHhCLGVBQVUs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Q2dCLDRCQUE0Qiw2RUFJbEMsYUFBYSxrRkFJYix1QkFBdUIsZ0RDcEd0Qyx1cUhBMkVBOzJGRHJCYSxtQkFBbUI7a0JBbEIvQixTQUFTOytCQUNJLGVBQWUsUUFDbkI7d0JBQ0YsS0FBSyxFQUFFLGVBQWU7d0JBQ3RCLElBQUksRUFBRSxNQUFNO3FCQUNmLGlCQUdjLGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU0sYUFDcEM7d0JBQ1AsZ0JBQWdCO3dCQUNoQjs0QkFDSSxPQUFPLEVBQUUsdUJBQXVCOzRCQUNoQyxXQUFXLHFCQUFxQjt5QkFDbkM7cUJBQ0o7OzBCQWdFSSxRQUFROzRFQXJEVCxnQkFBZ0I7c0JBRG5CLEtBQUs7Z0JBV04sT0FBTztzQkFETixLQUFLO2dCQUtOLFFBQVE7c0JBRFAsS0FBSztnQkFPTixpQkFBaUI7c0JBRGhCLE1BQU07Z0JBT1AsZ0JBQWdCO3NCQURmLE1BQU07Z0JBS1UsYUFBYTtzQkFEN0IsZUFBZTt1QkFBQyw0QkFBNEI7Z0JBSzVCLGNBQWM7c0JBRDlCLFNBQVM7dUJBQUMsYUFBYTtnQkFLUCxlQUFlO3NCQUQvQixTQUFTO3VCQUFDLHVCQUF1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQWZ0ZXJWaWV3SW5pdCxcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgQ29udGVudENoaWxkcmVuLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIElucHV0LFxuICAgIGlzRGV2TW9kZSxcbiAgICBPbkluaXQsXG4gICAgT3B0aW9uYWwsXG4gICAgT3V0cHV0LFxuICAgIFF1ZXJ5TGlzdCxcbiAgICBWaWV3Q2hpbGQsXG4gICAgVmlld0VuY2Fwc3VsYXRpb25cbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPdmVyZmxvd0xheW91dENvbXBvbmVudCB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9vdmVyZmxvdy1sYXlvdXQnO1xuaW1wb3J0IHsgRGVzdHJveWVkU2VydmljZSwgUnRsU2VydmljZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY2RrL3V0aWxzJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBNZW51Q29tcG9uZW50IH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL21lbnUnO1xuaW1wb3J0IHsgUGxhY2VtZW50IH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL3NoYXJlZCc7XG5pbXBvcnQgeyBCcmVhZGNydW1iSXRlbUNvbXBvbmVudCB9IGZyb20gJy4vYnJlYWRjcnVtYi1pdGVtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGRF9CUkVBRENSVU1CX0NPTVBPTkVOVCwgRkRfQlJFQURDUlVNQl9JVEVNX0NPTVBPTkVOVCB9IGZyb20gJy4vdG9rZW5zJztcblxuLyoqXG4gKiBCcmVhZGNydW1iIHBhcmVudCB3cmFwcGVyIGRpcmVjdGl2ZS4gTXVzdCBoYXZlIGJyZWFkY3J1bWIgaXRlbSBjaGlsZCBkaXJlY3RpdmVzLlxuICpcbiAqIGBgYGh0bWxcbiAqIDxmZC1icmVhZGNydW1iPlxuICogICAgIDxmZC1icmVhZGNydW1iLWl0ZW0+XG4gKiAgICAgICAgIDxhIGZkLWxpbmsgW3JvdXRlckxpbmtdPVwiJyMnXCI+QnJlYWRjcnVtYiBMaW5rPC9hPlxuICogICAgIDwvZmQtYnJlYWRjcnVtYi1pdGVtPlxuICogPC9mZC1icmVhZGNydW1iPlxuICogYGBgXG4gKi9cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZmQtYnJlYWRjcnVtYicsXG4gICAgaG9zdDoge1xuICAgICAgICBjbGFzczogJ2ZkLWJyZWFkY3J1bWInLFxuICAgICAgICByb2xlOiAndHJlZSdcbiAgICB9LFxuICAgIHRlbXBsYXRlVXJsOiAnLi9icmVhZGNydW1iLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9icmVhZGNydW1iLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgRGVzdHJveWVkU2VydmljZSxcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogRkRfQlJFQURDUlVNQl9DT01QT05FTlQsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogQnJlYWRjcnVtYkNvbXBvbmVudFxuICAgICAgICB9XG4gICAgXVxufSlcbmV4cG9ydCBjbGFzcyBCcmVhZGNydW1iQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0IHtcbiAgICAvKipcbiAgICAgKiBAZGVwcmVjYXRlZFxuICAgICAqIEJyZWFkY3J1bWJzIGNvbXBvbmVudCBub3cgdXNlcyBtb3JlIGFkdmFuY2VkIGNhbGN1bGF0aW9uIG1lY2hhbmlzbSB3aXRob3V0IHRoZSBuZWVkIG9mIHNwZWNpZnlpbmcgdGhlIGNvbnRhaW5lciBlbGVtZW50LlxuICAgICAqXG4gICAgICogVGhlIGVsZW1lbnQgdG8gYWN0IGFzIHRoZSBicmVhZGNydW1iIGNvbnRhaW5lci4gV2hlbiBwcm92aWRlZCwgdGhlIGJyZWFkY3J1bWIncyByZXNwb25zaXZlIGNvbGxhcHNpbmcgYmVoYXZpb3JcbiAgICAgKiBwZXJmb3JtcyBiZXR0ZXIuIFdoZW4gbm90IHByb3ZpZGVkLCB0aGUgaW1tZWRpYXRlIHBhcmVudCBlbGVtZW50J3Mgd2lkdGggd2lsbCBiZSB1c2VkLlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2V0IGNvbnRhaW5lckVsZW1lbnQoXzogSFRNTEVsZW1lbnQpIHtcbiAgICAgICAgaWYgKGlzRGV2TW9kZSgpKSB7XG4gICAgICAgICAgICBjb25zb2xlLndhcm4oXG4gICAgICAgICAgICAgICAgJ0JyZWFkY3J1bWJzIGNvbXBvbmVudCBub3cgdXNlcyBtb3JlIGFkdmFuY2VkIGNhbGN1bGF0aW9uIG1lY2hhbmlzbSB3aXRob3V0IHRoZSBuZWVkIG9mIHNwZWNpZnlpbmcgdGhlIGNvbnRhaW5lciBlbGVtZW50LidcbiAgICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogV2hldGhlciB0byBhcHBlbmQgaXRlbXMgdG8gdGhlIG92ZXJmbG93IGRyb3Bkb3duIGluIHJldmVyc2Ugb3JkZXIuIERlZmF1bHQgaXMgdHJ1ZS4gKi9cbiAgICBASW5wdXQoKVxuICAgIHJldmVyc2UgPSBmYWxzZTtcblxuICAgIC8qKiBUYWJpbmRleCBvZiB0aGUgYnJlYWRjcnVtYi4gKi9cbiAgICBASW5wdXQoKVxuICAgIHRhYkluZGV4ID0gJzAnO1xuXG4gICAgLyoqXG4gICAgICogRXZlbnQgZW1pdHRlZCB3aGVuIHZpc2libGUgaXRlbXMgY291bnQgaXMgY2hhbmdlZC5cbiAgICAgKi9cbiAgICBAT3V0cHV0KClcbiAgICB2aXNpYmxlSXRlbXNDb3VudCA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xuXG4gICAgLyoqXG4gICAgICogRXZlbnQgZW1pdHRlZCB3aGVuIGhpZGRlbiBpdGVtcyBjb3VudCBpcyBjaGFuZ2VkLlxuICAgICAqL1xuICAgIEBPdXRwdXQoKVxuICAgIGhpZGRlbkl0ZW1zQ291bnQgPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQENvbnRlbnRDaGlsZHJlbihGRF9CUkVBRENSVU1CX0lURU1fQ09NUE9ORU5UKVxuICAgIHByaXZhdGUgcmVhZG9ubHkgX2NvbnRlbnRJdGVtczogUXVlcnlMaXN0PEJyZWFkY3J1bWJJdGVtQ29tcG9uZW50PjtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQFZpZXdDaGlsZChNZW51Q29tcG9uZW50KVxuICAgIHByaXZhdGUgcmVhZG9ubHkgX21lbnVDb21wb25lbnQ6IE1lbnVDb21wb25lbnQ7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBWaWV3Q2hpbGQoT3ZlcmZsb3dMYXlvdXRDb21wb25lbnQpXG4gICAgcHJpdmF0ZSByZWFkb25seSBfb3ZlcmZsb3dMYXlvdXQ6IE92ZXJmbG93TGF5b3V0Q29tcG9uZW50O1xuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIEFycmF5IG9mIGJyZWFkY3J1bWIgaXRlbXMuXG4gICAgICovXG4gICAgX2l0ZW1zOiBCcmVhZGNydW1iSXRlbUNvbXBvbmVudFtdID0gW107XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9wbGFjZW1lbnQkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxQbGFjZW1lbnQ+KCdib3R0b20tc3RhcnQnKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHB1YmxpYyBlbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICAgICAgcHJpdmF0ZSBfb25EZXN0cm95JDogRGVzdHJveWVkU2VydmljZSxcbiAgICAgICAgQE9wdGlvbmFsKCkgcHJpdmF0ZSBfcnRsU2VydmljZTogUnRsU2VydmljZSB8IG51bGwsXG4gICAgICAgIHByaXZhdGUgX2NkcjogQ2hhbmdlRGV0ZWN0b3JSZWZcbiAgICApIHt9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9ydGxTZXJ2aWNlPy5ydGxcbiAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKHZhbHVlKSA9PiB0aGlzLl9wbGFjZW1lbnQkLm5leHQodmFsdWUgPyAnYm90dG9tLWVuZCcgOiAnYm90dG9tLXN0YXJ0JykpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgb25SZXNpemUoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX292ZXJmbG93TGF5b3V0LnRyaWdnZXJSZWNhbGN1bGF0aW9uKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogRnVuY3Rpb24gdGhhdCBoYW5kbGVzIGNsaWNrLCB0b3VjaCwgZW50ZXIgYW5kIHNwYWNlIGV2ZW50cy5cbiAgICAgKi9cbiAgICBpdGVtQ2xpY2tlZChicmVhZGNydW1iSXRlbTogQnJlYWRjcnVtYkl0ZW1Db21wb25lbnQsICRldmVudDogYW55KTogdm9pZCB7XG4gICAgICAgICRldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBicmVhZGNydW1iSXRlbS5icmVhZGNydW1iTGluay5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuY2xpY2soKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fc2V0SXRlbXMoKTtcblxuICAgICAgICB0aGlzLl9jb250ZW50SXRlbXMuY2hhbmdlcy5zdWJzY3JpYmUoKCkgPT4gdGhpcy5fc2V0SXRlbXMoKSk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBfa2V5RG93bkhhbmRsZShldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fbWVudUNvbXBvbmVudC50b2dnbGUoKTtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9vbkhpZGRlbkNoYW5nZShpc0hpZGRlbjogYm9vbGVhbiwgYnJlYWRjcnVtYjogQnJlYWRjcnVtYkl0ZW1Db21wb25lbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKCFpc0hpZGRlbikge1xuICAgICAgICAgICAgYnJlYWRjcnVtYi5fZGV0YWNoKCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBicmVhZGNydW1iLl9hdHRhY2goKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgX29uVmlzaWJsZUl0ZW1zQ291bnRDaGFuZ2UodmlzaWJsZUl0ZW1zQ291bnQ6IG51bWJlcik6IHZvaWQge1xuICAgICAgICB0aGlzLnZpc2libGVJdGVtc0NvdW50LmVtaXQodmlzaWJsZUl0ZW1zQ291bnQpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgX29uSGlkZGVuSXRlbXNDb3VudENoYW5nZShoaWRkZW5JdGVtc0NvdW50OiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5oaWRkZW5JdGVtc0NvdW50LmVtaXQoaGlkZGVuSXRlbXNDb3VudCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9zZXRJdGVtcygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fY29udGVudEl0ZW1zLmZvckVhY2goKGl0ZW0pID0+IGl0ZW0uc2V0UG9ydGFsKCkpO1xuICAgICAgICB0aGlzLl9pdGVtcyA9IHRoaXMuX2NvbnRlbnRJdGVtcy50b0FycmF5KCk7XG4gICAgICAgIHRoaXMuX2Nkci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxufVxuIiwiPGZkLW92ZXJmbG93LWxheW91dFxuICAgIFtyZXZlcnNlSGlkZGVuSXRlbXNdPVwiIXJldmVyc2VcIlxuICAgIHNob3dNb3JlUG9zaXRpb249XCJsZWZ0XCJcbiAgICBbZW5hYmxlS2V5Ym9hcmROYXZpZ2F0aW9uXT1cImZhbHNlXCJcbiAgICAodmlzaWJsZUl0ZW1zQ291bnQpPVwiX29uVmlzaWJsZUl0ZW1zQ291bnRDaGFuZ2UoJGV2ZW50KVwiXG4gICAgKGhpZGRlbkl0ZW1zQ291bnQpPVwiX29uSGlkZGVuSXRlbXNDb3VudENoYW5nZSgkZXZlbnQpXCJcbj5cbiAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBicmVhZGNydW1iIG9mIF9pdGVtc1wiPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgICAqZmRPdmVyZmxvd0l0ZW1SZWY9XCJicmVhZGNydW1iOyBsZXQgaGlkZGVuXCJcbiAgICAgICAgICAgIGZkT3ZlcmZsb3dMYXlvdXRJdGVtXG4gICAgICAgICAgICAoaGlkZGVuQ2hhbmdlKT1cIl9vbkhpZGRlbkNoYW5nZSgkZXZlbnQsIGJyZWFkY3J1bWIpXCJcbiAgICAgICAgPlxuICAgICAgICAgICAgPG5nLXRlbXBsYXRlIFtjZGtQb3J0YWxPdXRsZXRdPVwiYnJlYWRjcnVtYi5wb3J0YWxcIj48L25nLXRlbXBsYXRlPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8bmctY29udGFpbmVyICpmZE92ZXJmbG93RXhwYW5kPVwibGV0IGJyZWFkY3J1bWJzOyBpdGVtczogX2l0ZW1zXCI+XG4gICAgICAgIDxmZC1tZW51ICNtZW51IFtjbG9zZU9uRXNjYXBlS2V5XT1cInRydWVcIiBbZm9jdXNBdXRvQ2FwdHVyZV09XCJ0cnVlXCIgW3BsYWNlbWVudF09XCJfcGxhY2VtZW50JCB8IGFzeW5jXCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBicmVhZGNydW1iSXRlbSBvZiBicmVhZGNydW1ic1wiPlxuICAgICAgICAgICAgICAgIDxsaVxuICAgICAgICAgICAgICAgICAgICBmZC1tZW51LWl0ZW1cbiAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWRjcnVtYkl0ZW0uaXRlbS5icmVhZGNydW1iTGluayA/IGJyZWFkY3J1bWJJdGVtLml0ZW0uYnJlYWRjcnVtYkxpbmsuZGlzYWJsZWQgOiBmYWxzZVxuICAgICAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPGEgZmQtbWVudS1pbnRlcmFjdGl2ZSAoY2xpY2spPVwiaXRlbUNsaWNrZWQoYnJlYWRjcnVtYkl0ZW0uaXRlbSwgJGV2ZW50KVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImJyZWFkY3J1bWJJdGVtPy5pdGVtLmJyZWFkY3J1bWJMaW5rOyBlbHNlIHBvcnRhbENvbnRlbnRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiYnJlYWRjcnVtYkl0ZW0uaXRlbS5icmVhZGNydW1iTGluay5fcHJlZml4SWNvbk5hbWVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZkLW1lbnUtYWRkb25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uPVwiYmVmb3JlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtnbHlwaF09XCJicmVhZGNydW1iSXRlbS5pdGVtLmJyZWFkY3J1bWJMaW5rLl9wcmVmaXhJY29uTmFtZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID48L2ZkLW1lbnUtYWRkb24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gZmQtbWVudS10aXRsZT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBbY2RrUG9ydGFsT3V0bGV0XT1cImJyZWFkY3J1bWJJdGVtLml0ZW0ubGlua0NvbnRlbnRQb3J0YWxcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImJyZWFkY3J1bWJJdGVtLml0ZW0uYnJlYWRjcnVtYkxpbmsuX3Bvc3RmaXhJY29uTmFtZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmQtbWVudS1hZGRvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2dseXBoXT1cImJyZWFkY3J1bWJJdGVtLml0ZW0uYnJlYWRjcnVtYkxpbmsuX3Bvc3RmaXhJY29uTmFtZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID48L2ZkLW1lbnUtYWRkb24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjcG9ydGFsQ29udGVudD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBmZC1tZW51LXRpdGxlPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2RrUG9ydGFsT3V0bGV0XT1cImJyZWFkY3J1bWJJdGVtLml0ZW0uYnJlYWRjcnVtYkl0ZW1Qb3J0YWxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9mZC1tZW51PlxuICAgICAgICA8c3BhbiBjbGFzcz1cImZkLWJyZWFkY3J1bWJfX2l0ZW1cIiAqbmdJZj1cImJyZWFkY3J1bWJzLmxlbmd0aCA+IDBcIiBbZmRNZW51VHJpZ2dlcl09XCJtZW51XCI+XG4gICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgIGZkLWxpbmtcbiAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cIidjb3JlQnJlYWRjcnVtYi5vdmVyZmxvd1RpdGxlTW9yZScgfCBmZFRyYW5zbGF0ZVwiXG4gICAgICAgICAgICAgICAgYXJpYS1oYXNwb3B1cD1cImxpc3Rib3hcIlxuICAgICAgICAgICAgICAgIHRhYmluZGV4PVwiMFwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJmZC1icmVhZGNydW1iX19jb2xsYXBzZWRcIlxuICAgICAgICAgICAgICAgIChrZXlkb3duLmVudGVyKT1cIl9rZXlEb3duSGFuZGxlKCRldmVudClcIlxuICAgICAgICAgICAgICAgIChrZXlkb3duLnNwYWNlKT1cIl9rZXlEb3duSGFuZGxlKCRldmVudClcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxmZC1pY29uXG4gICAgICAgICAgICAgICAgICAgIGdseXBoPVwib3ZlcmZsb3dcIlxuICAgICAgICAgICAgICAgICAgICBbdGl0bGVdPVwiJ2NvcmVCcmVhZGNydW1iLm92ZXJmbG93VGl0bGVNb3JlJyB8IGZkVHJhbnNsYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgW2FyaWFMYWJlbF09XCInY29yZUJyZWFkY3J1bWIub3ZlcmZsb3dUaXRsZU1vcmUnIHwgZmRUcmFuc2xhdGVcIlxuICAgICAgICAgICAgICAgID48L2ZkLWljb24+XG4gICAgICAgICAgICAgICAgPGZkLWljb24gZ2x5cGg9XCJzbGltLWFycm93LWRvd25cIj48L2ZkLWljb24+XG4gICAgICAgICAgICA8L2E+XG4gICAgICAgIDwvc3Bhbj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbjwvZmQtb3ZlcmZsb3ctbGF5b3V0PlxuXG48bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4iXX0=