@fundamental-ngx/platform 0.48.5-rc.1 → 0.48.5-rc.3
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.
- package/esm2022/icon-tab-bar/components/closable-icon-tab-bar.class.mjs +29 -2
- package/esm2022/icon-tab-bar/components/icon-tab-bar-base.class.mjs +9 -2
- package/esm2022/icon-tab-bar/components/icon-tab-bar-filter-type/icon-tab-bar-filter-type.component.mjs +3 -3
- package/esm2022/icon-tab-bar/components/icon-tab-bar-icon-type/icon-tab-bar-icon-type.component.mjs +3 -3
- package/esm2022/icon-tab-bar/components/icon-tab-bar-process-type/icon-tab-bar-process-type.component.mjs +3 -3
- package/esm2022/icon-tab-bar/components/icon-tab-bar-text-type/icon-tab-bar-text-type.component.mjs +13 -10
- package/esm2022/icon-tab-bar/components/popovers/icon-tab-bar-popover/icon-tab-bar-popover.component.mjs +3 -3
- package/esm2022/icon-tab-bar/components/popovers/icon-tab-bar-popover-base.class.mjs +38 -30
- package/esm2022/icon-tab-bar/components/popovers/text-type-popover/text-type-popover.component.mjs +4 -4
- package/esm2022/icon-tab-bar/icon-tab-bar.component.mjs +2 -1
- package/fesm2022/fundamental-ngx-platform-icon-tab-bar.mjs +95 -51
- package/fesm2022/fundamental-ngx-platform-icon-tab-bar.mjs.map +1 -1
- package/fundamental-ngx-platform-v0.48.5-rc.3.tgz +0 -0
- package/icon-tab-bar/components/closable-icon-tab-bar.class.d.ts +6 -1
- package/icon-tab-bar/components/icon-tab-bar-base.class.d.ts +2 -2
- package/icon-tab-bar/components/icon-tab-bar-text-type/icon-tab-bar-text-type.component.d.ts +3 -2
- package/icon-tab-bar/components/popovers/icon-tab-bar-popover-base.class.d.ts +8 -6
- package/package.json +4 -4
- package/fundamental-ngx-platform-v0.48.5-rc.1.tgz +0 -0
|
@@ -1,4 +1,6 @@
|
|
|
1
|
+
import { BACKSPACE, DELETE } from '@angular/cdk/keycodes';
|
|
1
2
|
import { Directive, EventEmitter, Output } from '@angular/core';
|
|
3
|
+
import { KeyUtil } from '@fundamental-ngx/cdk/utils';
|
|
2
4
|
import { UNIQUE_KEY_SEPARATOR } from '../constants';
|
|
3
5
|
import { IconTabBarBase } from './icon-tab-bar-base.class';
|
|
4
6
|
import * as i0 from "@angular/core";
|
|
@@ -11,7 +13,8 @@ export class ClosableIconTabBar extends IconTabBarBase {
|
|
|
11
13
|
this.closeTab = new EventEmitter();
|
|
12
14
|
}
|
|
13
15
|
/** @hidden */
|
|
14
|
-
_closeTab(itemIndex) {
|
|
16
|
+
_closeTab(itemIndex, checkPopover = false) {
|
|
17
|
+
const popoverPresent = !!this._tabBarPopover;
|
|
15
18
|
const tab = this._getTabInfoFromMainList(itemIndex);
|
|
16
19
|
if (!tab?.parent) {
|
|
17
20
|
return;
|
|
@@ -20,6 +23,30 @@ export class ClosableIconTabBar extends IconTabBarBase {
|
|
|
20
23
|
this.tabs = this._updateTabs(this.tabs);
|
|
21
24
|
this._triggerRecalculationVisibleItems();
|
|
22
25
|
this.closeTab.emit(tab.tab);
|
|
26
|
+
if (!checkPopover) {
|
|
27
|
+
return;
|
|
28
|
+
}
|
|
29
|
+
// Delay to ensure popover is recalculated.
|
|
30
|
+
setTimeout(() => {
|
|
31
|
+
// Popover has been removed, shift focus to the last item of the tab bar.
|
|
32
|
+
if (popoverPresent && !this._tabBarPopover) {
|
|
33
|
+
this._focusItem(this._lastVisibleTabIndex);
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
/** @hidden */
|
|
38
|
+
_keyDownHandler(event, tab, currentIndex, popover) {
|
|
39
|
+
if (tab?.closable && KeyUtil.isKeyCode(event, [BACKSPACE, DELETE])) {
|
|
40
|
+
event.preventDefault();
|
|
41
|
+
this._closeTab(tab.uId);
|
|
42
|
+
// Need to detect changes to trigger query list refresh.
|
|
43
|
+
this._cd.detectChanges();
|
|
44
|
+
// If last tab was closed, focus new last item, otherwhise set focus to the item that took place of removed one.
|
|
45
|
+
const newFocusIndex = this.tabs.length - 1 < currentIndex ? this.tabs.length - 1 : currentIndex;
|
|
46
|
+
this._focusItem(newFocusIndex);
|
|
47
|
+
return;
|
|
48
|
+
}
|
|
49
|
+
super._keyDownHandler(event, tab, currentIndex, popover);
|
|
23
50
|
}
|
|
24
51
|
/**
|
|
25
52
|
* @hidden
|
|
@@ -74,4 +101,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImpor
|
|
|
74
101
|
}], propDecorators: { closeTab: [{
|
|
75
102
|
type: Output
|
|
76
103
|
}] } });
|
|
77
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xvc2FibGUtaWNvbi10YWItYmFyLmNsYXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS9pY29uLXRhYi1iYXIvY29tcG9uZW50cy9jbG9zYWJsZS1pY29uLXRhYi1iYXIuY2xhc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2hFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUVwRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7O0FBRzNELE1BQU0sT0FBZ0Isa0JBQW1CLFNBQVEsY0FBYztJQUQvRDs7UUFFSTs7V0FFRztRQUVILGFBQVEsR0FBRyxJQUFJLFlBQVksRUFBa0IsQ0FBQztLQXFFakQ7SUFuRUcsY0FBYztJQUNkLFNBQVMsQ0FBQyxTQUFpQjtRQUN2QixNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsdUJBQXVCLENBQUMsU0FBUyxDQUFDLENBQUM7UUFFcEQsSUFBSSxDQUFDLEdBQUcsRUFBRSxNQUFNLEVBQUU7WUFDZCxPQUFPO1NBQ1Y7UUFFRCxHQUFHLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FDYixHQUFHLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsS0FBSyxTQUFTLENBQUMsRUFDdEQsQ0FBQyxDQUNKLENBQUM7UUFFRixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRXhDLElBQUksQ0FBQyxpQ0FBaUMsRUFBRSxDQUFDO1FBQ3pDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDTyxXQUFXLENBQUMsR0FBcUIsRUFBRSxTQUFrQixFQUFFLFlBQVksR0FBRyxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUU7UUFDeEYsT0FBTyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxFQUFFO1lBQzNCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1lBQ25CLElBQUksQ0FBQyxHQUFHLEdBQUcsU0FBUyxDQUFDLENBQUMsQ0FBQyxHQUFHLFNBQVMsR0FBRyxvQkFBb0IsR0FBRyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxLQUFLLEVBQUUsQ0FBQztZQUNsRixJQUFJLENBQUMsU0FBUyxHQUFHLFlBQVksQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUN0QyxJQUFJLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQztZQUMzQixJQUFJLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUU7Z0JBQzFCLElBQUksQ0FBQyxVQUFVLEdBQUcsQ0FBQywwQkFBMEIsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUM7YUFDOUQ7WUFDRCxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFO2dCQUM5QixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsR0FBRyxFQUFFLFlBQVksQ0FBQyxDQUFDO2FBQzNFO1lBQ0QsT0FBTyxFQUFFLEdBQUcsSUFBSSxFQUFFLENBQUM7UUFDdkIsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ08sdUJBQXVCLENBQzdCLEdBQVcsRUFDWCxNQUFhLElBQUksQ0FBQyxJQUFJO1FBRXRCLElBQUksTUFBcUUsQ0FBQztRQUMxRSxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsR0FBRyxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUNqQyxNQUFNLElBQUksR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDcEIsSUFBSSxJQUFJLENBQUMsR0FBRyxLQUFLLEdBQUcsRUFBRTtnQkFDbEIsTUFBTSxHQUFHLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLENBQUM7Z0JBQ3BDLE1BQU07YUFDVDtpQkFBTSxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFO2dCQUNyQyxNQUFNLEdBQUcsSUFBSSxDQUFDLHVCQUF1QixDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7Z0JBQzFELElBQUksTUFBTSxFQUFFO29CQUNSLE1BQU07aUJBQ1Q7YUFDSjtTQUNKO1FBQ0QsT0FBTyxNQUFNLENBQUM7SUFDbEIsQ0FBQzs4R0F6RWlCLGtCQUFrQjtrR0FBbEIsa0JBQWtCOzsyRkFBbEIsa0JBQWtCO2tCQUR2QyxTQUFTOzhCQU1OLFFBQVE7c0JBRFAsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRXZlbnRFbWl0dGVyLCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFVOSVFVRV9LRVlfU0VQQVJBVE9SIH0gZnJvbSAnLi4vY29uc3RhbnRzJztcbmltcG9ydCB7IEljb25UYWJCYXJJdGVtIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9pY29uLXRhYi1iYXItaXRlbS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgSWNvblRhYkJhckJhc2UgfSBmcm9tICcuL2ljb24tdGFiLWJhci1iYXNlLmNsYXNzJztcblxuQERpcmVjdGl2ZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQ2xvc2FibGVJY29uVGFiQmFyIGV4dGVuZHMgSWNvblRhYkJhckJhc2Uge1xuICAgIC8qKlxuICAgICAqIEV2ZW50IGVtaXRzIHdoZW4gdXNlciBjbGlja3Mgb24geCBidXR0b24gaW4gdGFiLlxuICAgICAqL1xuICAgIEBPdXRwdXQoKVxuICAgIGNsb3NlVGFiID0gbmV3IEV2ZW50RW1pdHRlcjxJY29uVGFiQmFySXRlbT4oKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgX2Nsb3NlVGFiKGl0ZW1JbmRleDogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHRhYiA9IHRoaXMuX2dldFRhYkluZm9Gcm9tTWFpbkxpc3QoaXRlbUluZGV4KTtcblxuICAgICAgICBpZiAoIXRhYj8ucGFyZW50KSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0YWIucGFyZW50LnNwbGljZShcbiAgICAgICAgICAgIHRhYi5wYXJlbnQuZmluZEluZGV4KChpdGVtKSA9PiBpdGVtLnVJZCA9PT0gaXRlbUluZGV4KSxcbiAgICAgICAgICAgIDFcbiAgICAgICAgKTtcblxuICAgICAgICB0aGlzLnRhYnMgPSB0aGlzLl91cGRhdGVUYWJzKHRoaXMudGFicyk7XG5cbiAgICAgICAgdGhpcy5fdHJpZ2dlclJlY2FsY3VsYXRpb25WaXNpYmxlSXRlbXMoKTtcbiAgICAgICAgdGhpcy5jbG9zZVRhYi5lbWl0KHRhYi50YWIpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKiBAcGFyYW0gYXJyXG4gICAgICogQHBhcmFtIHBhcmVudFVpZFxuICAgICAqIEBkZXNjcmlwdGlvbiBVcGRhdGUgaW5kZXhlcywgdUlkcywgc3R5bGVzLlxuICAgICAqL1xuICAgIHByb3RlY3RlZCBfdXBkYXRlVGFicyhhcnI6IEljb25UYWJCYXJJdGVtW10sIHBhcmVudFVpZD86IHN0cmluZywgZmxhdEluZGV4UmVmID0geyB2YWx1ZTogMCB9KTogSWNvblRhYkJhckl0ZW1bXSB7XG4gICAgICAgIHJldHVybiBhcnIubWFwKChpdGVtLCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgaXRlbS5pbmRleCA9IGluZGV4O1xuICAgICAgICAgICAgaXRlbS51SWQgPSBwYXJlbnRVaWQgPyBgJHtwYXJlbnRVaWR9JHtVTklRVUVfS0VZX1NFUEFSQVRPUn0ke2luZGV4fWAgOiBgJHtpbmRleH1gO1xuICAgICAgICAgICAgaXRlbS5mbGF0SW5kZXggPSBmbGF0SW5kZXhSZWYudmFsdWUrKztcbiAgICAgICAgICAgIGl0ZW0ucGFyZW50VUlkID0gcGFyZW50VWlkO1xuICAgICAgICAgICAgaWYgKCFwYXJlbnRVaWQgJiYgaXRlbS5jb2xvcikge1xuICAgICAgICAgICAgICAgIGl0ZW0uY3NzQ2xhc3NlcyA9IFtgZmQtaWNvbi10YWItYmFyX19pdGVtLS0ke2l0ZW0uY29sb3J9YF07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShpdGVtLnN1Ykl0ZW1zKSkge1xuICAgICAgICAgICAgICAgIGl0ZW0uc3ViSXRlbXMgPSB0aGlzLl91cGRhdGVUYWJzKGl0ZW0uc3ViSXRlbXMsIGl0ZW0udUlkLCBmbGF0SW5kZXhSZWYpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIHsgLi4uaXRlbSB9O1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICogQHBhcmFtIHVpZFxuICAgICAqIEBwYXJhbSBhcnJcbiAgICAgKiBAcmV0dXJucyB7cGFyZW50LCB0YWJ9XG4gICAgICogQGRlc2NyaXB0aW9uIEdldCB0YWIgcmVmZXJlbmNlIGluc2lkZSBtYWluIHRhYiBhcnJheSBhbmQgIHJlZmVyZW5jZSB0byBwYXJlbnQgYXJyYXkuXG4gICAgICovXG4gICAgcHJvdGVjdGVkIF9nZXRUYWJJbmZvRnJvbU1haW5MaXN0KFxuICAgICAgICB1aWQ6IHN0cmluZyxcbiAgICAgICAgYXJyOiBhbnlbXSA9IHRoaXMudGFic1xuICAgICk6IHsgcGFyZW50OiBJY29uVGFiQmFySXRlbVtdOyB0YWI6IEljb25UYWJCYXJJdGVtIH0gfCB1bmRlZmluZWQge1xuICAgICAgICBsZXQgcmVzdWx0OiB7IHBhcmVudDogSWNvblRhYkJhckl0ZW1bXTsgdGFiOiBJY29uVGFiQmFySXRlbSB9IHwgdW5kZWZpbmVkO1xuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGFyci5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgY29uc3QgaXRlbSA9IGFycltpXTtcbiAgICAgICAgICAgIGlmIChpdGVtLnVJZCA9PT0gdWlkKSB7XG4gICAgICAgICAgICAgICAgcmVzdWx0ID0geyBwYXJlbnQ6IGFyciwgdGFiOiBpdGVtIH07XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkoaXRlbS5zdWJJdGVtcykpIHtcbiAgICAgICAgICAgICAgICByZXN1bHQgPSB0aGlzLl9nZXRUYWJJbmZvRnJvbU1haW5MaXN0KHVpZCwgaXRlbS5zdWJJdGVtcyk7XG4gICAgICAgICAgICAgICAgaWYgKHJlc3VsdCkge1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9XG59XG4iXX0=
|
|
104
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xvc2FibGUtaWNvbi10YWItYmFyLmNsYXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS9pY29uLXRhYi1iYXIvY29tcG9uZW50cy9jbG9zYWJsZS1pY29uLXRhYi1iYXIuY2xhc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDaEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUVwRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7O0FBSzNELE1BQU0sT0FBZ0Isa0JBQW1CLFNBQVEsY0FBYztJQUQvRDs7UUFHSTs7V0FFRztRQUVILGFBQVEsR0FBRyxJQUFJLFlBQVksRUFBa0IsQ0FBQztLQXVHakQ7SUFyR0csY0FBYztJQUNkLFNBQVMsQ0FBQyxTQUFpQixFQUFFLFlBQVksR0FBRyxLQUFLO1FBQzdDLE1BQU0sY0FBYyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDO1FBQzdDLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUVwRCxJQUFJLENBQUMsR0FBRyxFQUFFLE1BQU0sRUFBRTtZQUNkLE9BQU87U0FDVjtRQUVELEdBQUcsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUNiLEdBQUcsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxLQUFLLFNBQVMsQ0FBQyxFQUN0RCxDQUFDLENBQ0osQ0FBQztRQUVGLElBQUksQ0FBQyxJ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SUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxHQUFHLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQ2pDLE1BQU0sSUFBSSxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNwQixJQUFJLElBQUksQ0FBQyxHQUFHLEtBQUssR0FBRyxFQUFFO2dCQUNsQixNQUFNLEdBQUcsRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsQ0FBQztnQkFDcEMsTUFBTTthQUNUO2lCQUFNLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUU7Z0JBQ3JDLE1BQU0sR0FBRyxJQUFJLENBQUMsdUJBQXVCLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDMUQsSUFBSSxNQUFNLEVBQUU7b0JBQ1IsTUFBTTtpQkFDVDthQUNKO1NBQ0o7UUFDRCxPQUFPLE1BQU0sQ0FBQztJQUNsQixDQUFDOzhHQTVHaUIsa0JBQWtCO2tHQUFsQixrQkFBa0I7OzJGQUFsQixrQkFBa0I7a0JBRHZDLFNBQVM7OEJBT04sUUFBUTtzQkFEUCxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQkFDS1NQQUNFLCBERUxFVEUgfSBmcm9tICdAYW5ndWxhci9jZGsva2V5Y29kZXMnO1xuaW1wb3J0IHsgRGlyZWN0aXZlLCBFdmVudEVtaXR0ZXIsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgS2V5VXRpbCB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY2RrL3V0aWxzJztcbmltcG9ydCB7IFVOSVFVRV9LRVlfU0VQQVJBVE9SIH0gZnJvbSAnLi4vY29uc3RhbnRzJztcbmltcG9ydCB7IEljb25UYWJCYXJJdGVtIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9pY29uLXRhYi1iYXItaXRlbS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgSWNvblRhYkJhckJhc2UgfSBmcm9tICcuL2ljb24tdGFiLWJhci1iYXNlLmNsYXNzJztcbmltcG9ydCB7IEljb25UYWJCYXJQb3BvdmVyQmFzZSB9IGZyb20gJy4vcG9wb3ZlcnMvaWNvbi10YWItYmFyLXBvcG92ZXItYmFzZS5jbGFzcyc7XG5pbXBvcnQgeyBUZXh0VHlwZVBvcG92ZXJDb21wb25lbnQgfSBmcm9tICcuL3BvcG92ZXJzL3RleHQtdHlwZS1wb3BvdmVyL3RleHQtdHlwZS1wb3BvdmVyLmNvbXBvbmVudCc7XG5cbkBEaXJlY3RpdmUoKVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIENsb3NhYmxlSWNvblRhYkJhciBleHRlbmRzIEljb25UYWJCYXJCYXNlIHtcbiAgICBhYnN0cmFjdCBfdGFiQmFyUG9wb3ZlcjogSWNvblRhYkJhclBvcG92ZXJCYXNlO1xuICAgIC8qKlxuICAgICAqIEV2ZW50IGVtaXRzIHdoZW4gdXNlciBjbGlja3Mgb24geCBidXR0b24gaW4gdGFiLlxuICAgICAqL1xuICAgIEBPdXRwdXQoKVxuICAgIGNsb3NlVGFiID0gbmV3IEV2ZW50RW1pdHRlcjxJY29uVGFiQmFySXRlbT4oKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgX2Nsb3NlVGFiKGl0ZW1JbmRleDogc3RyaW5nLCBjaGVja1BvcG92ZXIgPSBmYWxzZSk6IHZvaWQge1xuICAgICAgICBjb25zdCBwb3BvdmVyUHJlc2VudCA9ICEhdGhpcy5fdGFiQmFyUG9wb3ZlcjtcbiAgICAgICAgY29uc3QgdGFiID0gdGhpcy5fZ2V0VGFiSW5mb0Zyb21NYWluTGlzdChpdGVtSW5kZXgpO1xuXG4gICAgICAgIGlmICghdGFiPy5wYXJlbnQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRhYi5wYXJlbnQuc3BsaWNlKFxuICAgICAgICAgICAgdGFiLnBhcmVudC5maW5kSW5kZXgoKGl0ZW0pID0+IGl0ZW0udUlkID09PSBpdGVtSW5kZXgpLFxuICAgICAgICAgICAgMVxuICAgICAgICApO1xuXG4gICAgICAgIHRoaXMudGFicyA9IHRoaXMuX3VwZGF0ZVRhYnModGhpcy50YWJzKTtcblxuICAgICAgICB0aGlzLl90cmlnZ2VyUmVjYWxjdWxhdGlvblZpc2libGVJdGVtcygpO1xuICAgICAgICB0aGlzLmNsb3NlVGFiLmVtaXQodGFiLnRhYik7XG5cbiAgICAgICAgaWYgKCFjaGVja1BvcG92ZXIpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICAvLyBEZWxheSB0byBlbnN1cmUgcG9wb3ZlciBpcyByZWNhbGN1bGF0ZWQuXG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgLy8gUG9wb3ZlciBoYXMgYmVlbiByZW1vdmVkLCBzaGlmdCBmb2N1cyB0byB0aGUgbGFzdCBpdGVtIG9mIHRoZSB0YWIgYmFyLlxuICAgICAgICAgICAgaWYgKHBvcG92ZXJQcmVzZW50ICYmICF0aGlzLl90YWJCYXJQb3BvdmVyKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fZm9jdXNJdGVtKHRoaXMuX2xhc3RWaXNpYmxlVGFiSW5kZXgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9rZXlEb3duSGFuZGxlcihcbiAgICAgICAgZXZlbnQ6IEtleWJvYXJkRXZlbnQsXG4gICAgICAgIHRhYjogSWNvblRhYkJhckl0ZW0gfCB1bmRlZmluZWQsXG4gICAgICAgIGN1cnJlbnRJbmRleDogbnVtYmVyLFxuICAgICAgICBwb3BvdmVyPzogVGV4dFR5cGVQb3BvdmVyQ29tcG9uZW50XG4gICAgKTogdm9pZCB7XG4gICAgICAgIGlmICh0YWI/LmNsb3NhYmxlICYmIEtleVV0aWwuaXNLZXlDb2RlKGV2ZW50LCBbQkFDS1NQQUNFLCBERUxFVEVdKSkge1xuICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgIHRoaXMuX2Nsb3NlVGFiKHRhYi51SWQpO1xuICAgICAgICAgICAgLy8gTmVlZCB0byBkZXRlY3QgY2hhbmdlcyB0byB0cmlnZ2VyIHF1ZXJ5IGxpc3QgcmVmcmVzaC5cbiAgICAgICAgICAgIHRoaXMuX2NkLmRldGVjdENoYW5nZXMoKTtcblxuICAgICAgICAgICAgLy8gSWYgbGFzdCB0YWIgd2FzIGNsb3NlZCwgZm9jdXMgbmV3IGxhc3QgaXRlbSwgb3RoZXJ3aGlzZSBzZXQgZm9jdXMgdG8gdGhlIGl0ZW0gdGhhdCB0b29rIHBsYWNlIG9mIHJlbW92ZWQgb25lLlxuICAgICAgICAgICAgY29uc3QgbmV3Rm9jdXNJbmRleCA9IHRoaXMudGFicy5sZW5ndGggLSAxIDwgY3VycmVudEluZGV4ID8gdGhpcy50YWJzLmxlbmd0aCAtIDEgOiBjdXJyZW50SW5kZXg7XG5cbiAgICAgICAgICAgIHRoaXMuX2ZvY3VzSXRlbShuZXdGb2N1c0luZGV4KTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBzdXBlci5fa2V5RG93bkhhbmRsZXIoZXZlbnQsIHRhYiwgY3VycmVudEluZGV4LCBwb3BvdmVyKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICogQHBhcmFtIGFyclxuICAgICAqIEBwYXJhbSBwYXJlbnRVaWRcbiAgICAgKiBAZGVzY3JpcHRpb24gVXBkYXRlIGluZGV4ZXMsIHVJZHMsIHN0eWxlcy5cbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgX3VwZGF0ZVRhYnMoYXJyOiBJY29uVGFiQmFySXRlbVtdLCBwYXJlbnRVaWQ/OiBzdHJpbmcsIGZsYXRJbmRleFJlZiA9IHsgdmFsdWU6IDAgfSk6IEljb25UYWJCYXJJdGVtW10ge1xuICAgICAgICByZXR1cm4gYXJyLm1hcCgoaXRlbSwgaW5kZXgpID0+IHtcbiAgICAgICAgICAgIGl0ZW0uaW5kZXggPSBpbmRleDtcbiAgICAgICAgICAgIGl0ZW0udUlkID0gcGFyZW50VWlkID8gYCR7cGFyZW50VWlkfSR7VU5JUVVFX0tFWV9TRVBBUkFUT1J9JHtpbmRleH1gIDogYCR7aW5kZXh9YDtcbiAgICAgICAgICAgIGl0ZW0uZmxhdEluZGV4ID0gZmxhdEluZGV4UmVmLnZhbHVlKys7XG4gICAgICAgICAgICBpdGVtLnBhcmVudFVJZCA9IHBhcmVudFVpZDtcbiAgICAgICAgICAgIGlmICghcGFyZW50VWlkICYmIGl0ZW0uY29sb3IpIHtcbiAgICAgICAgICAgICAgICBpdGVtLmNzc0NsYXNzZXMgPSBbYGZkLWljb24tdGFiLWJhcl9faXRlbS0tJHtpdGVtLmNvbG9yfWBdO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoaXRlbS5zdWJJdGVtcykpIHtcbiAgICAgICAgICAgICAgICBpdGVtLnN1Ykl0ZW1zID0gdGhpcy5fdXBkYXRlVGFicyhpdGVtLnN1Ykl0ZW1zLCBpdGVtLnVJZCwgZmxhdEluZGV4UmVmKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiB7IC4uLml0ZW0gfTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIEBwYXJhbSB1aWRcbiAgICAgKiBAcGFyYW0gYXJyXG4gICAgICogQHJldHVybnMge3BhcmVudCwgdGFifVxuICAgICAqIEBkZXNjcmlwdGlvbiBHZXQgdGFiIHJlZmVyZW5jZSBpbnNpZGUgbWFpbiB0YWIgYXJyYXkgYW5kICByZWZlcmVuY2UgdG8gcGFyZW50IGFycmF5LlxuICAgICAqL1xuICAgIHByb3RlY3RlZCBfZ2V0VGFiSW5mb0Zyb21NYWluTGlzdChcbiAgICAgICAgdWlkOiBzdHJpbmcsXG4gICAgICAgIGFycjogYW55W10gPSB0aGlzLnRhYnNcbiAgICApOiB7IHBhcmVudDogSWNvblRhYkJhckl0ZW1bXTsgdGFiOiBJY29uVGFiQmFySXRlbSB9IHwgdW5kZWZpbmVkIHtcbiAgICAgICAgbGV0IHJlc3VsdDogeyBwYXJlbnQ6IEljb25UYWJCYXJJdGVtW107IHRhYjogSWNvblRhYkJhckl0ZW0gfSB8IHVuZGVmaW5lZDtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBhcnIubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGNvbnN0IGl0ZW0gPSBhcnJbaV07XG4gICAgICAgICAgICBpZiAoaXRlbS51SWQgPT09IHVpZCkge1xuICAgICAgICAgICAgICAgIHJlc3VsdCA9IHsgcGFyZW50OiBhcnIsIHRhYjogaXRlbSB9O1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfSBlbHNlIGlmIChBcnJheS5pc0FycmF5KGl0ZW0uc3ViSXRlbXMpKSB7XG4gICAgICAgICAgICAgICAgcmVzdWx0ID0gdGhpcy5fZ2V0VGFiSW5mb0Zyb21NYWluTGlzdCh1aWQsIGl0ZW0uc3ViSXRlbXMpO1xuICAgICAgICAgICAgICAgIGlmIChyZXN1bHQpIHtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfVxufVxuIl19
|
|
@@ -54,6 +54,12 @@ export class IconTabBarBase {
|
|
|
54
54
|
if (changes.isRtl && !changes.isRtl.firstChange) {
|
|
55
55
|
this._triggerRecalculationVisibleItems();
|
|
56
56
|
}
|
|
57
|
+
if (changes.selectedUid && !changes.selectedUid.firstChange) {
|
|
58
|
+
const isExtraTab = this._extraTabs$().find((tab) => tab.uId === this.selectedUid);
|
|
59
|
+
if (isExtraTab) {
|
|
60
|
+
this._selectExtraItem(isExtraTab);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
57
63
|
}
|
|
58
64
|
/** @hidden */
|
|
59
65
|
ngOnInit() {
|
|
@@ -123,7 +129,8 @@ export class IconTabBarBase {
|
|
|
123
129
|
this._tabBarPopover._openPopover(focusLast);
|
|
124
130
|
}
|
|
125
131
|
else {
|
|
126
|
-
this._getTabUIElementFocusable(this._tabUIElements.get(tabIndex))
|
|
132
|
+
const itemToFocus = this._getTabUIElementFocusable(this._tabUIElements.get(tabIndex));
|
|
133
|
+
itemToFocus?.focus();
|
|
127
134
|
}
|
|
128
135
|
}
|
|
129
136
|
/**
|
|
@@ -267,4 +274,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImpor
|
|
|
267
274
|
type: ViewChild,
|
|
268
275
|
args: ['tablist', { read: ElementRef }]
|
|
269
276
|
}] } });
|
|
270
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi10YWItYmFyLWJhc2UuY2xhc3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL2ljb24tdGFiLWJhci9jb21wb25lbnRzL2ljb24tdGFiLWJhci1iYXNlLmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFSCxpQkFBaUIsRUFDakIsVUFBVSxFQUNWLFNBQVMsRUFDVCxVQUFVLEVBQ1YsWUFBWSxFQUNaLE1BQU0sRUFDTixLQUFLLEVBQ0wsU0FBUyxFQUNULE1BQU0sRUFJTixNQUFNLEVBRU4sTUFBTSxFQUVOLFNBQVMsRUFDWixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFdEMsT0FBTyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDcEcsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDaEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzVFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNyRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3RDLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7QUFRMUQsTUFBTSxPQUFnQixjQUFjO0lBRHBDO1FBVUk7O1dBRUc7UUFFSCxTQUFJLEdBQXFCLEVBQUUsQ0FBQztRQStCNUI7O1dBRUc7UUFFSCxhQUFRLEdBQWlDLElBQUksWUFBWSxFQUFrQixDQUFDO1FBRTVFLGlEQUFpRDtRQUVqRCxzQkFBaUIsR0FBRyxJQUFJLFlBQVksRUFBc0IsQ0FBQztRQVkzRCxjQUFjO1FBQ2QsZ0JBQVcsR0FBRyxNQUFN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QUFNO2FBQ1Q7aUJBQU0sSUFBSSxHQUFHLENBQUMsUUFBUSxFQUFFO2dCQUNyQixTQUFTLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDaEQsSUFBSSxTQUFTLEVBQUU7b0JBQ1gsTUFBTTtpQkFDVDthQUNKO1NBQ0o7UUFFRCxPQUFPLFNBQVMsQ0FBQztJQUNyQixDQUFDOzhHQW5UaUIsY0FBYztrR0FBZCxjQUFjLGtTQXlEckIscUJBQXFCLHNIQUlGLFVBQVU7OzJGQTdEdEIsY0FBYztrQkFEbkMsU0FBUzs4QkFjTixJQUFJO3NCQURILEtBQUs7Z0JBT04sS0FBSztzQkFESixLQUFLO2dCQVFOLGlCQUFpQjtzQkFEaEIsS0FBSztnQkFPRixXQUFXO3NCQURkLEtBQUs7Z0JBV04sV0FBVztzQkFEVixLQUFLO2dCQU9OLFFBQVE7c0JBRFAsTUFBTTtnQkFLUCxpQkFBaUI7c0JBRGhCLE1BQU07Z0JBT1AsaUJBQWlCO3NCQURoQixTQUFTO3VCQUFDLHFCQUFxQjtnQkFLaEMsYUFBYTtzQkFEWixTQUFTO3VCQUFDLFNBQVMsRUFBRSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIEFmdGVyVmlld0luaXQsXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgRGVzdHJveVJlZixcbiAgICBEaXJlY3RpdmUsXG4gICAgRWxlbWVudFJlZixcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgaW5qZWN0LFxuICAgIElucHV0LFxuICAgIGlzRGV2TW9kZSxcbiAgICBOZ1pvbmUsXG4gICAgT25DaGFuZ2VzLFxuICAgIE9uRGVzdHJveSxcbiAgICBPbkluaXQsXG4gICAgT3V0cHV0LFxuICAgIFF1ZXJ5TGlzdCxcbiAgICBzaWduYWwsXG4gICAgU2ltcGxlQ2hhbmdlcyxcbiAgICBWaWV3Q2hpbGRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB0YWtlIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBET1dOX0FSUk9XLCBFTlRFUiwgTEVGVF9BUlJPVywgUklHSFRfQVJST1csIFNQQUNFLCBVUF9BUlJPVyB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9rZXljb2Rlcyc7XG5pbXBvcnQgeyB0YWtlVW50aWxEZXN0cm95ZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBLZXlVdGlsLCBPdmVyZmxvd0xpc3REaXJlY3RpdmUgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2Nkay91dGlscyc7XG5pbXBvcnQgeyBGRF9EWU5BTUlDX1BBR0UgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvZHluYW1pYy1wYWdlJztcbmltcG9ydCB7IGNsb25lRGVlcCB9IGZyb20gJ2xvZGFzaC1lcyc7XG5pbXBvcnQgeyBJQ09OX1RBQl9ISURERU5fQ0xBU1NfTkFNRSB9IGZyb20gJy4uL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBJY29uVGFiQmFySXRlbSB9IGZyb20gJy4uL2ludGVyZmFjZXMvaWNvbi10YWItYmFyLWl0ZW0uaW50ZXJmYWNlJztcbmltcG9ydCB7IFRhYkNvbG9yQXNzb2NpYXRpb25zIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy90YWItY29sb3ItYXNzb2NpYXRpb25zLmludGVyZmFjZSc7XG5pbXBvcnQgeyBUYWJEZXN0aW55TW9kZSB9IGZyb20gJy4uL3R5cGVzJztcbmltcG9ydCB7IEljb25UYWJCYXJQb3BvdmVyQmFzZSB9IGZyb20gJy4vcG9wb3ZlcnMvaWNvbi10YWItYmFyLXBvcG92ZXItYmFzZS5jbGFzcyc7XG5pbXBvcnQgeyBUZXh0VHlwZVBvcG92ZXJDb21wb25lbnQgfSBmcm9tICcuL3BvcG92ZXJzL3RleHQtdHlwZS1wb3BvdmVyL3RleHQtdHlwZS1wb3BvdmVyLmNvbXBvbmVudCc7XG5cbkBEaXJlY3RpdmUoKVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEljb25UYWJCYXJCYXNlIGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMsIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIExpc3Qgb2YgdGFiIGVsZW1lbnRzLCB0aGF0IGNhbiByZWNlaXZlIGZvY3VzLlxuICAgICAqIFRoZXJlJ3MgYSBzZXBhcmF0ZSBtYXBwaW5nIGZ1bmN0aW9uIHRvIGdldCBhY3R1YWwgaHRtbCBlbGVtZW50OiBgX2dldFRhYlVJRWxlbWVudEZvY3VzYWJsZWBcbiAgICAgKi9cbiAgICBhYnN0cmFjdCBfdGFiVUlFbGVtZW50czogUXVlcnlMaXN0PHVua25vd24+O1xuICAgIC8qKiBAaGlkZGVuICovXG4gICAgYWJzdHJhY3QgX3RhYkJhclBvcG92ZXI6IEljb25UYWJCYXJQb3BvdmVyQmFzZTtcbiAgICAvKipcbiAgICAgKiBAZGVzY3JpcHRpb24gQSB0YWIgYmFyIGNvbmZpZ3VyYXRpb24gdGhhdCBzdG9yZXMgdGhlIHN0YXRlIG9mIGVhY2ggdGFiLiBCYXNlZCBvbiB0aGlzIGNvbmZpZ3VyYXRpb24sIGEgdGFiIGJhciBpcyByZXByZXNlbnRpbmcuXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICB0YWJzOiBJY29uVGFiQmFySXRlbVtdID0gW107XG5cbiAgICAvKipcbiAgICAgKiBAZGVzY3JpcHRpb24gRmxhZyByZXByZXNlbnRpbmcgcnRsIG1vZGVcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIGlzUnRsOiBib29sZWFuO1xuXG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uIEFzc29jaWF0aW9ucyBmb3IgY29sb3JzIG9mIHRoZSB0YWJzLlxuICAgICAqIElmIGFueSBvZiB0aGUgY29sb3IgYXNzb2NpYXRpb25zIHByb3ZpZGVkLCB0aGV5J2xsIGJlIHJlYWQgYnkgc2NyZWVucmVhZGVyIGluc3RlYWQgb2YgdGhlIGFjdHVhbCBjb2xvclxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgY29sb3JBc3NvY2lhdGlvbnM6IFRhYkNvbG9yQXNzb2NpYXRpb25zO1xuXG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uIGRlbnNpdHlNb2RlIHNldHRlciB0cmlnZ2VycyB0YWJzIHRvIHJlLWNhbGN1bGF0aW9uIG92ZXJmbG93ZWQgdGFic1xuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2V0IGRlbnNpdHlNb2RlKHZhbHVlOiBUYWJEZXN0aW55TW9kZSkge1xuICAgICAgICAvLyBTa2lwIGZpcnN0IHZhbHVlICYmIHZhbHVlIGRvZXNuJ3QgZXF1YWwgdG8gcHJldmlvdXMgb25lXG4gICAgICAgIGlmICh0aGlzLl9kZW5zaXR5TW9kZSAmJiB2YWx1ZSAhPT0gdGhpcy5fZGVuc2l0eU1vZGUpIHtcbiAgICAgICAgICAgIHRoaXMuX3RyaWdnZXJSZWNhbGN1bGF0aW9uVmlzaWJsZUl0ZW1zKCk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5fZGVuc2l0eU1vZGUgPSB2YWx1ZTtcbiAgICB9XG5cbiAgICAvKiogQ3VycmVudGx5IHNlbGVjdGVkIHRhYiBVbmlxdWUgSUQuICovXG4gICAgQElucHV0KClcbiAgICBzZWxlY3RlZFVpZDogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uIEVtaXRzIHdoZW4gc29tZSB0YWIgaXMgc2VsZWN0ZWQuXG4gICAgICovXG4gICAgQE91dHB1dCgpXG4gICAgc2VsZWN0ZWQ6IEV2ZW50RW1pdHRlcjxJY29uVGFiQmFySXRlbT4gPSBuZXcgRXZlbnRFbWl0dGVyPEljb25UYWJCYXJJdGVtPigpO1xuXG4gICAgLyoqIEVtaXRzIHdoZW4gc2VsZWN0ZWQgdGFiIFVuaXF1ZSBJRCBjaGFuZ2VzLiAqL1xuICAgIEBPdXRwdXQoKVxuICAgIHNlbGVjdGVkVWlkQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmcgfCB1bmRlZmluZWQ+KCk7XG5cbiAgICAvKipcbiAgICAgKiBAZGVzY3JpcHRpb24gUmVmZXJlbmNlIHRvIE92ZXJmbG93TGlzdERpcmVjdGl2ZVxuICAgICAqL1xuICAgIEBWaWV3Q2hpbGQoT3ZlcmZsb3dMaXN0RGlyZWN0aXZlKVxuICAgIG92ZXJmbG93RGlyZWN0aXZlOiBPdmVyZmxvd0xpc3REaXJlY3RpdmU7XG5cbiAgICAvKiogSGVhZGVyIGVsZW1lbnQgcmVmZXJlbmNlLiAqL1xuICAgIEBWaWV3Q2hpbGQoJ3RhYmxpc3QnLCB7IHJlYWQ6IEVsZW1lbnRSZWYgfSlcbiAgICBoZWFkZXJFbGVtZW50OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgX2V4dHJhVGFicyQgPSBzaWduYWw8SWNvblRhYkJhckl0ZW1bXT4oW10pO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBfbGFzdFZpc2libGVUYWJJbmRleDogbnVtYmVyO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBfZXh0cmFJdGVtcyQgPSBzaWduYWwoZmFsc2UpO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICByZWFkb25seSBfaW5EeW5hbWljUGFnZSA9ICEhaW5qZWN0KEZEX0RZTkFNSUNfUEFHRSwgeyBvcHRpb25hbDogdHJ1ZSB9KTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IF9jZCA9IGluamVjdChDaGFuZ2VEZXRlY3RvclJlZik7XG5cbiAgICAvKiogQEhpZGRlbiAqL1xuICAgIHByb3RlY3RlZCByZWFkb25seSBfbmdab25lID0gaW5qZWN0KE5nWm9uZSk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2RlbnNpdHlNb2RlOiBUYWJEZXN0aW55TW9kZTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfZGVzdHJveVJlZiA9IGluamVjdChEZXN0cm95UmVmKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfZGVzdHJveWVkID0gZmFsc2U7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICAgICAgaWYgKGNoYW5nZXMudGFicyAmJiAhY2hhbmdlcy50YWJzLmZpcnN0Q2hhbmdlKSB7XG4gICAgICAgICAgICB0aGlzLl9pbml0VGFicygpO1xuICAgICAgICAgICAgdGhpcy5fdHJpZ2dlclJlY2FsY3VsYXRpb25WaXNpYmxlSXRlbXMoKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBpZiAoY2hhbmdlcy5pc1J0bCAmJiAhY2hhbmdlcy5pc1J0bC5maXJzdENoYW5nZSkge1xuICAgICAgICAgICAgdGhpcy5fdHJpZ2dlclJlY2FsY3VsYXRpb25WaXNpYmxlSXRlbXMoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2luaXRUYWJzKCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3RyaWdnZXJSZWNhbGN1bGF0aW9uVmlzaWJsZUl0ZW1zKCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fZGVzdHJveWVkID0gdHJ1ZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICogQHBhcmFtIHNlbGVjdGVkSXRlbVxuICAgICAqIEBwYXJhbSBldmVudFxuICAgICAqL1xuICAgIF9zZWxlY3RJdGVtKHNlbGVjdGVkSXRlbTogSWNvblRhYkJhckl0ZW0sIGV2ZW50PzogRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgZXZlbnQ/LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICB0aGlzLnNlbGVjdGVkVWlkID0gc2VsZWN0ZWRJdGVtLnVJZDtcbiAgICAgICAgdGhpcy5zZWxlY3RlZFVpZENoYW5nZS5lbWl0KHRoaXMuc2VsZWN0ZWRVaWQpO1xuICAgICAgICBzZWxlY3RlZEl0ZW0uYmFkZ2UgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5zZWxlY3RlZC5lbWl0KHNlbGVjdGVkSXRlbSk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBfa2V5RG93bkhhbmRsZXIoXG4gICAgICAgIGV2ZW50OiBLZXlib2FyZEV2ZW50LFxuICAgICAgICB0YWI6IEljb25UYWJCYXJJdGVtIHwgdW5kZWZpbmVkLFxuICAgICAgICBjdXJyZW50SW5kZXg6IG51bWJlcixcbiAgICAgICAgcG9wb3Zlcj86IFRleHRUeXBlUG9wb3ZlckNvbXBvbmVudFxuICAgICk6IHZvaWQge1xuICAgICAgICBpZiAodGFiICYmIEtleVV0aWwuaXNLZXlDb2RlKGV2ZW50LCBbU1BBQ0UsIEVOVEVSXSkpIHtcbiAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICB0aGlzLl9zZWxlY3RJdGVtKHRhYik7XG4gICAgICAgIH0gZWxzZSBpZiAoS2V5VXRpbC5pc0tleUNvZGUoZXZlbnQsIFtSSUdIVF9BUlJPVywgRE9XTl9BUlJPV10pKSB7XG4gICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgaWYgKEtleVV0aWwuaXNLZXlDb2RlKGV2ZW50LCBET1dOX0FSUk9XKSAmJiB0YWI/LnN1Ykl0ZW1zPy5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICBwb3BvdmVyPy5fb3BlblBvcG92ZXIoKTtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLmlzUnRsID8gdGhpcy5fZm9jdXNQcmV2aW91c0l0ZW0oY3VycmVudEluZGV4KSA6IHRoaXMuX2ZvY3VzTmV4dEl0ZW0oY3VycmVudEluZGV4KTtcbiAgICAgICAgfSBlbHNlIGlmIChLZXlVdGlsLmlzS2V5Q29kZShldmVudCwgW0xFRlRfQVJST1csIFVQX0FSUk9XXSkpIHtcbiAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICB0aGlzLmlzUnRsID8gdGhpcy5fZm9jdXNOZXh0SXRlbShjdXJyZW50SW5kZXgpIDogdGhpcy5fZm9jdXNQcmV2aW91c0l0ZW0oY3VycmVudEluZGV4KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuIGZvY3VzZXMgbmV4dCB0YWIgKi9cbiAgICBfZm9jdXNOZXh0SXRlbShjdXJyZW50SW5kZXg6IG51bWJlcik6IHZvaWQge1xuICAgICAgICBjb25zdCBuZXh0SW5kZXggPSBjdXJyZW50SW5kZXggPT09IHRoaXMudGFicy5sZW5ndGggLSAxID8gMCA6IGN1cnJlbnRJbmRleCArIDE7XG4gICAgICAgIHRoaXMuX2ZvY3VzSXRlbShuZXh0SW5kZXgpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuIGZvY3VzZXMgcHJldmlvdXMgdGFiICovXG4gICAgX2ZvY3VzUHJldmlvdXNJdGVtKGN1cnJlbnRJbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIGlmIChjdXJyZW50SW5kZXggPT09IDApIHtcbiAgICAgICAgICAgIC8vIGlmIGN1cnJlbnQgZm9jdXNlZCBlbGVtZW50IGlzIGZpcnN0LCBmb2N1cyB0aGUgbGFzdCBvbmUuIElmIHRhYnMgYXJlIG92ZXJmbG93ZWQsIGZvY3VzIHRoZSBsYXN0IHRhYiBpbiB0aGUgcG9wb3ZlclxuICAgICAgICAgICAgdGhpcy5fZm9jdXNJdGVtKHRoaXMudGFicy5sZW5ndGggLSAxLCB0cnVlKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuX2ZvY3VzSXRlbShjdXJyZW50SW5kZXggLSAxKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKiBAcGFyYW0gdGFiSW5kZXggaW5kZXggb2YgdGhlIHRhYiB0byBhcHBseSBmb2N1c1xuICAgICAqIEBwYXJhbSBmb2N1c0xhc3Qgd2hldGhlciB0byBmb2N1cyBmaXJzdCBvciBsYXN0IGl0ZW0gaW4gdGhlIHBvcG92ZXJcbiAgICAgKi9cbiAgICBfZm9jdXNJdGVtKHRhYkluZGV4OiBudW1iZXIsIGZvY3VzTGFzdCA9IGZhbHNlKTogdm9pZCB7XG4gICAgICAgIGlmICh0YWJJbmRleCA+IHRoaXMuX2xhc3RWaXNpYmxlVGFiSW5kZXgpIHtcbiAgICAgICAgICAgIHRoaXMuX3RhYkJhclBvcG92ZXIuX29wZW5Qb3BvdmVyKGZvY3VzTGFzdCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLl9nZXRUYWJVSUVsZW1lbnRGb2N1c2FibGUodGhpcy5fdGFiVUlFbGVtZW50cy5nZXQodGFiSW5kZXgpKT8uZm9jdXMoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKiBAcGFyYW0gc2VsZWN0ZWRJdGVtXG4gICAgICogQGRlc2NyaXB0aW9uIHNlbGVjdCBleHRyYSBpdGVtIGluc2lkZSBwb3BvdmVyXG4gICAgICovXG4gICAgX3NlbGVjdEV4dHJhSXRlbShzZWxlY3RlZEl0ZW06IEljb25UYWJCYXJJdGVtKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHRhYnMgPSBbLi4udGhpcy50YWJzXTtcbiAgICAgICAgY29uc3QgZGVsZXRlZEl0ZW0gPSB0YWJzLnNwbGljZSh0aGlzLl9sYXN0VmlzaWJsZVRhYkluZGV4LCAxLCBzZWxlY3RlZEl0ZW0pWzBdIGFzIEljb25UYWJCYXJJdGVtO1xuICAgICAgICB0YWJzLnNwbGljZShzZWxlY3RlZEl0ZW0uaW5kZXgsIDEsIGRlbGV0ZWRJdGVtKTtcbiAgICAgICAgdGhpcy50YWJzID0gdGFicztcbiAgICAgICAgY29uc3QgZXh0cmFUYWJzID0gWy4uLnRoaXMuX2V4dHJhVGFicyQoKV07XG5cbiAgICAgICAgZGVsZXRlZEl0ZW0uaW5kZXggPSBzZWxlY3RlZEl0ZW0uaW5kZXg7XG4gICAgICAgIGRlbGV0ZWRJdGVtLnVJZCA9IGAke2RlbGV0ZWRJdGVtLmluZGV4fWA7XG4gICAgICAgIGNvbnN0IGl0ZW1Ub1BvcG92ZXIgPSBjbG9uZURlZXAoZGVsZXRlZEl0ZW0pO1xuICAgICAgICBkZWxldGVkSXRlbS5oaWRkZW4gPSB0cnVlO1xuICAgICAgICBkZWxldGVkSXRlbS5jc3NDbGFzc2VzLnB1c2goSUNPTl9UQUJfSElEREVOX0NMQVNTX05BTUUpO1xuXG4gICAgICAgIGxldCBpbmRleEluRXh0cmFJdGVtcztcbiAgICAgICAgdGhpcy5fZXh0cmFUYWJzJCgpLmZvckVhY2goKGl0ZW0sIGluZGV4KSA9PiB7XG4gICAgICAgICAgICBpZiAoaXRlbS5pbmRleCA9PT0gc2VsZWN0ZWRJdGVtLmluZGV4KSB7XG4gICAgICAgICAgICAgICAgaW5kZXhJbkV4dHJhSXRlbXMgPSBpbmRleDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgICAgc2VsZWN0ZWRJdGVtLmluZGV4ID0gdGhpcy5fbGFzdFZpc2libGVUYWJJbmRleDtcbiAgICAgICAgc2VsZWN0ZWRJdGVtLnVJZCA9IGAke3NlbGVjdGVkSXRlbS5pbmRleH1gO1xuICAgICAgICBzZWxlY3RlZEl0ZW0uaGlkZGVuID0gZmFsc2U7XG4gICAgICAgIGlmIChzZWxlY3RlZEl0ZW0uY29sb3IpIHtcbiAgICAgICAgICAgIHNlbGVjdGVkSXRlbS5jc3NDbGFzc2VzID0gW2BmZC1pY29uLXRhYi1iYXJfX2l0ZW0tLSR7c2VsZWN0ZWRJdGVtLmNvbG9yfWBdO1xuICAgICAgICB9XG4gICAgICAgIGV4dHJhVGFicy5zcGxpY2UoaW5kZXhJbkV4dHJhSXRlbXMsIDEsIGl0ZW1Ub1BvcG92ZXIpO1xuICAgICAgICB0aGlzLl9leHRyYVRhYnMkLnNldChleHRyYVRhYnMpO1xuXG4gICAgICAgIHRoaXMuX3NlbGVjdEl0ZW0oc2VsZWN0ZWRJdGVtKTtcbiAgICAgICAgdGhpcy5fdHJpZ2dlclJlY2FsY3VsYXRpb25WaXNpYmxlSXRlbXMoKTtcbiAgICAgICAgdGhpcy5fZm9jdXNJdGVtKHRoaXMuX2xhc3RWaXNpYmxlVGFiSW5kZXgpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKiBAcGFyYW0gZXh0cmFJdGVtc1xuICAgICAqIEBkZXNjcmlwdGlvbiByZWNhbGN1bGF0ZSBfbmV4dFN0ZXBzIGFuZCBfcHJldlN0ZXBzIGFycmF5IGlmIHdlIGhhdmUgZXh0cmEgaXRlbXNcbiAgICAgKi9cbiAgICBfcmVjYWxjdWxhdGVWaXNpYmxlSXRlbXMoZXh0cmFJdGVtczogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2V4dHJhSXRlbXMkLnNldChleHRyYUl0ZW1zID4gMCk7XG4gICAgICAgIHRoaXMuX2NkLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgY29uc3QgdGFicyA9IFsuLi50aGlzLnRhYnNdO1xuICAgICAgICBjb25zdCBleHRyYVRhYnM6IEljb25UYWJCYXJJdGVtW10gPSBbXTtcbiAgICAgICAgdGhpcy5fbGFzdFZpc2libGVUYWJJbmRleCA9IHRhYnMubGVuZ3RoIC0gMSAtIGV4dHJhSXRlbXM7XG4gICAgICAgIHRhYnMuZm9yRWFjaCgoaXRlbSkgPT4ge1xuICAgICAgICAgICAgaXRlbS5oaWRkZW4gPSBmYWxzZTtcbiAgICAgICAgICAgIGl0ZW0uY3NzQ2xhc3NlcyA9IGl0ZW0uY3NzQ2xhc3Nlcy5maWx0ZXIoKGNzc0NsYXNzKSA9PiBjc3NDbGFzcyAhPT0gSUNPTl9UQUJfSElEREVOX0NMQVNTX05BTUUpO1xuICAgICAgICB9KTtcblxuICAgICAgICBmb3IgKGxldCBpID0gdGhpcy5fbGFzdFZpc2libGVUYWJJbmRleCArIDE7IGkgPCB0YWJzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBjb25zdCB0YWIgPSB0YWJzW2ldO1xuICAgICAgICAgICAgZXh0cmFUYWJzLnB1c2goY2xvbmVEZWVwKHRhYikpO1xuICAgICAgICAgICAgdGFiLmhpZGRlbiA9IHRydWU7XG4gICAgICAgICAgICB0YWIuY3NzQ2xhc3Nlcy5wdXNoKElDT05fVEFCX0hJRERFTl9DTEFTU19OQU1FKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLl9leHRyYVRhYnMkLnNldChleHRyYVRhYnMpO1xuICAgICAgICB0aGlzLl9jZC5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIE1hcHBpbmcgZnVuY3Rpb24gdG8gcmVzb2x2ZSBVSSB0YWIgZWxlbWVudCB0byBpdCdzIGZvY3VzYWJsZSBwYXJ0L2Rlc2NlbmRhbnRcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgX2dldFRhYlVJRWxlbWVudEZvY3VzYWJsZSh0YWJVSUVsZW1lbnQ6IHVua25vd24pOiBIVE1MRWxlbWVudCB8IG51bGwge1xuICAgICAgICBpZiAodGFiVUlFbGVtZW50ICYmIHR5cGVvZiB0YWJVSUVsZW1lbnQgPT09ICdvYmplY3QnICYmICduYXRpdmVFbGVtZW50JyBpbiB0YWJVSUVsZW1lbnQpIHtcbiAgICAgICAgICAgIGlmICgoPEVsZW1lbnRSZWY+dGFiVUlFbGVtZW50KS5uYXRpdmVFbGVtZW50IGluc3RhbmNlb2YgSFRNTEVsZW1lbnQpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gKDxFbGVtZW50UmVmPEhUTUxFbGVtZW50Pj50YWJVSUVsZW1lbnQpLm5hdGl2ZUVsZW1lbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGlzRGV2TW9kZSgpKSB7XG4gICAgICAgICAgICBjb25zb2xlLndhcm4oJ0ZhaWxlZCB0byBnZXQgZm9jdXNhYmxlIHRhYiBlbGVtZW50Jyk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIEBkZXNjcmlwdGlvbiB0cmlnZ2VyIHJlY2FsY3VsYXRpb24gaXRlbXMsIG5lZWQgdG8gZG8gaXQgYXN5bmNocm9ub3VzbHkgYWZ0ZXIgZG9tIHdhcyByZXJlbmRlcmVkXG4gICAgICovXG4gICAgcHJvdGVjdGVkIF90cmlnZ2VyUmVjYWxjdWxhdGlvblZpc2libGVJdGVtcygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fbmdab25lLm9uTWljcm90YXNrRW1wdHkucGlwZSh0YWtlKDEpLCB0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5fZGVzdHJveVJlZikpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICBpZiAodGhpcy5vdmVyZmxvd0RpcmVjdGl2ZSAmJiAhdGhpcy5fZGVzdHJveWVkKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgZXh0cmEgPSB0aGlzLm92ZXJmbG93RGlyZWN0aXZlLmdldEFtb3VudE9mRXh0cmFJdGVtcygpO1xuICAgICAgICAgICAgICAgIHRoaXMuX3JlY2FsY3VsYXRlVmlzaWJsZUl0ZW1zKGV4dHJhKTtcbiAgICAgICAgICAgICAgICB0aGlzLl9jZC5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKiBAZGVzY3JpcHRpb24gaW5pdGlhbGl6ZSBzdGF0ZSBvZiB0YWJzXG4gICAgICovXG4gICAgcHJvdGVjdGVkIF9pbml0VGFicygpOiB2b2lkIHtcbiAgICAgICAgY29uc3Qgc2VsZWN0ZWRJdGVtID0gdGhpcy5fZmluZEFjdGl2ZVRhYklkKHRoaXMudGFicykgfHwgdGhpcy50YWJzWzBdO1xuICAgICAgICB0aGlzLnNlbGVjdGVkVWlkID0gc2VsZWN0ZWRJdGVtPy51SWQ7XG4gICAgICAgIHRoaXMuX2xhc3RWaXNpYmxlVGFiSW5kZXggPSB0aGlzLnRhYnMubGVuZ3RoIC0gMTtcbiAgICAgICAgaWYgKHNlbGVjdGVkSXRlbSkge1xuICAgICAgICAgICAgdGhpcy5zZWxlY3RlZFVpZENoYW5nZS5lbWl0KHRoaXMuc2VsZWN0ZWRVaWQpO1xuICAgICAgICAgICAgdGhpcy5zZWxlY3RlZC5lbWl0KHNlbGVjdGVkSXRlbSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIF9maW5kQWN0aXZlVGFiSWQodGFiczogSWNvblRhYkJhckl0ZW1bXSk6IEljb25UYWJCYXJJdGVtIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgbGV0IGFjdGl2ZVRhYjogSWNvblRhYkJhckl0ZW0gfCB1bmRlZmluZWQ7XG4gICAgICAgIGZvciAoY29uc3QgdGFiIG9mIHRhYnMpIHtcbiAgICAgICAgICAgIGlmICh0YWIuYWN0aXZlKSB7XG4gICAgICAgICAgICAgICAgYWN0aXZlVGFiID0gdGFiO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfSBlbHNlIGlmICh0YWIuc3ViSXRlbXMpIHtcbiAgICAgICAgICAgICAgICBhY3RpdmVUYWIgPSB0aGlzLl9maW5kQWN0aXZlVGFiSWQodGFiLnN1Ykl0ZW1zKTtcbiAgICAgICAgICAgICAgICBpZiAoYWN0aXZlVGFiKSB7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBhY3RpdmVUYWI7XG4gICAgfVxufVxuIl19
|
|
277
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi10YWItYmFyLWJhc2UuY2xhc3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL2ljb24tdGFiLWJhci9jb21wb25lbnRzL2ljb24tdGFiLWJhci1iYXNlLmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFSCxpQkFBaUIsRUFDakIsVUFBVSxFQUNWLFNBQVMsRUFDVCxVQUFVLEVBQ1YsWUFBWSxFQUNaLE1BQU0sRUFDTixLQUFLLEVBQ0wsU0FBUyxFQUNULE1BQU0sRUFJTixNQUFNLEVBRU4sTUFBTSxFQUVOLFNBQVMsRUFDWixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFdEMsT0FBTyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDcEcsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDaEUsT0FBTyxFQUFFLE9BQU8sRUFBWSxxQkFBcUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3RGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNyRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3RDLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7QUFRMUQsTUFBTSxPQUFnQixjQUFjO0lBRHBDO1FBVUk7O1dBRUc7UUFFSCxTQUFJLEdBQXFCLEVBQUUsQ0FBQztRQStCNUI7O1dBRUc7UUFFSCxhQUFRLEdBQWlDLElBQUksWUFBWSxFQUFrQixDQUFDO1FBRTVFLGlEQUFpRDtRQUVqRCxzQkFBaUIsR0FBRyxJQUFJLFlBQVksRUFBc0IsQ0FBQztRQVkzRCxjQUFjO1FBQ2QsZ0JBQVcsR0FBRyxNQUFN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O1FBQ2pELElBQUksWUFBWSxFQUFFO1lBQ2QsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7WUFDOUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7U0FDcEM7SUFDTCxDQUFDO0lBRU8sZ0JBQWdCLENBQUMsSUFBc0I7UUFDM0MsSUFBSSxTQUFxQyxDQUFDO1FBQzFDLEtBQUssTUFBTSxHQUFHLElBQUksSUFBSSxFQUFFO1lBQ3BCLElBQUksR0FBRyxDQUFDLE1BQU0sRUFBRTtnQkFDWixTQUFTLEdBQUcsR0FBRyxDQUFDO2dCQUNoQixNQUFNO2FBQ1Q7aUJBQU0sSUFBSSxHQUFHLENBQUMsUUFBUSxFQUFFO2dCQUNyQixTQUFTLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDaEQsSUFBSSxTQUFTLEVBQUU7b0JBQ1gsTUFBTTtpQkFDVDthQUNKO1NBQ0o7UUFFRCxPQUFPLFNBQVMsQ0FBQztJQUNyQixDQUFDOzhHQTNUaUIsY0FBYztrR0FBZCxjQUFjLGtTQXlEckIscUJBQXFCLHNIQUlGLFVBQVU7OzJGQTdEdEIsY0FBYztrQkFEbkMsU0FBUzs4QkFjTixJQUFJO3NCQURILEtBQUs7Z0JBT04sS0FBSztzQkFESixLQUFLO2dCQVFOLGlCQUFpQjtzQkFEaEIsS0FBSztnQkFPRixXQUFXO3NCQURkLEtBQUs7Z0JBV04sV0FBVztzQkFEVixLQUFLO2dCQU9OLFFBQVE7c0JBRFAsTUFBTTtnQkFLUCxpQkFBaUI7c0JBRGhCLE1BQU07Z0JBT1AsaUJBQWlCO3NCQURoQixTQUFTO3VCQUFDLHFCQUFxQjtnQkFLaEMsYUFBYTtzQkFEWixTQUFTO3VCQUFDLFNBQVMsRUFBRSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIEFmdGVyVmlld0luaXQsXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgRGVzdHJveVJlZixcbiAgICBEaXJlY3RpdmUsXG4gICAgRWxlbWVudFJlZixcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgaW5qZWN0LFxuICAgIElucHV0LFxuICAgIGlzRGV2TW9kZSxcbiAgICBOZ1pvbmUsXG4gICAgT25DaGFuZ2VzLFxuICAgIE9uRGVzdHJveSxcbiAgICBPbkluaXQsXG4gICAgT3V0cHV0LFxuICAgIFF1ZXJ5TGlzdCxcbiAgICBzaWduYWwsXG4gICAgU2ltcGxlQ2hhbmdlcyxcbiAgICBWaWV3Q2hpbGRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB0YWtlIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBET1dOX0FSUk9XLCBFTlRFUiwgTEVGVF9BUlJPVywgUklHSFRfQVJST1csIFNQQUNFLCBVUF9BUlJPVyB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9rZXljb2Rlcyc7XG5pbXBvcnQgeyB0YWtlVW50aWxEZXN0cm95ZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBLZXlVdGlsLCBOdWxsYWJsZSwgT3ZlcmZsb3dMaXN0RGlyZWN0aXZlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jZGsvdXRpbHMnO1xuaW1wb3J0IHsgRkRfRFlOQU1JQ19QQUdFIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL2R5bmFtaWMtcGFnZSc7XG5pbXBvcnQgeyBjbG9uZURlZXAgfSBmcm9tICdsb2Rhc2gtZXMnO1xuaW1wb3J0IHsgSUNPTl9UQUJfSElEREVOX0NMQVNTX05BTUUgfSBmcm9tICcuLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgSWNvblRhYkJhckl0ZW0gfSBmcm9tICcuLi9pbnRlcmZhY2VzL2ljb24tdGFiLWJhci1pdGVtLmludGVyZmFjZSc7XG5pbXBvcnQgeyBUYWJDb2xvckFzc29jaWF0aW9ucyB9IGZyb20gJy4uL2ludGVyZmFjZXMvdGFiLWNvbG9yLWFzc29jaWF0aW9ucy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgVGFiRGVzdGlueU1vZGUgfSBmcm9tICcuLi90eXBlcyc7XG5pbXBvcnQgeyBJY29uVGFiQmFyUG9wb3ZlckJhc2UgfSBmcm9tICcuL3BvcG92ZXJzL2ljb24tdGFiLWJhci1wb3BvdmVyLWJhc2UuY2xhc3MnO1xuaW1wb3J0IHsgVGV4dFR5cGVQb3BvdmVyQ29tcG9uZW50IH0gZnJvbSAnLi9wb3BvdmVycy90ZXh0LXR5cGUtcG9wb3Zlci90ZXh0LXR5cGUtcG9wb3Zlci5jb21wb25lbnQnO1xuXG5ARGlyZWN0aXZlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBJY29uVGFiQmFyQmFzZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzLCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKiBMaXN0IG9mIHRhYiBlbGVtZW50cywgdGhhdCBjYW4gcmVjZWl2ZSBmb2N1cy5cbiAgICAgKiBUaGVyZSdzIGEgc2VwYXJhdGUgbWFwcGluZyBmdW5jdGlvbiB0byBnZXQgYWN0dWFsIGh0bWwgZWxlbWVudDogYF9nZXRUYWJVSUVsZW1lbnRGb2N1c2FibGVgXG4gICAgICovXG4gICAgYWJzdHJhY3QgX3RhYlVJRWxlbWVudHM6IFF1ZXJ5TGlzdDx1bmtub3duPjtcbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGFic3RyYWN0IF90YWJCYXJQb3BvdmVyOiBJY29uVGFiQmFyUG9wb3ZlckJhc2U7XG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uIEEgdGFiIGJhciBjb25maWd1cmF0aW9uIHRoYXQgc3RvcmVzIHRoZSBzdGF0ZSBvZiBlYWNoIHRhYi4gQmFzZWQgb24gdGhpcyBjb25maWd1cmF0aW9uLCBhIHRhYiBiYXIgaXMgcmVwcmVzZW50aW5nLlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgdGFiczogSWNvblRhYkJhckl0ZW1bXSA9IFtdO1xuXG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uIEZsYWcgcmVwcmVzZW50aW5nIHJ0bCBtb2RlXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBpc1J0bDogYm9vbGVhbjtcblxuICAgIC8qKlxuICAgICAqIEBkZXNjcmlwdGlvbiBBc3NvY2lhdGlvbnMgZm9yIGNvbG9ycyBvZiB0aGUgdGFicy5cbiAgICAgKiBJZiBhbnkgb2YgdGhlIGNvbG9yIGFzc29jaWF0aW9ucyBwcm92aWRlZCwgdGhleSdsbCBiZSByZWFkIGJ5IHNjcmVlbnJlYWRlciBpbnN0ZWFkIG9mIHRoZSBhY3R1YWwgY29sb3JcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIGNvbG9yQXNzb2NpYXRpb25zOiBUYWJDb2xvckFzc29jaWF0aW9ucztcblxuICAgIC8qKlxuICAgICAqIEBkZXNjcmlwdGlvbiBkZW5zaXR5TW9kZSBzZXR0ZXIgdHJpZ2dlcnMgdGFicyB0byByZS1jYWxjdWxhdGlvbiBvdmVyZmxvd2VkIHRhYnNcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHNldCBkZW5zaXR5TW9kZSh2YWx1ZTogVGFiRGVzdGlueU1vZGUpIHtcbiAgICAgICAgLy8gU2tpcCBmaXJzdCB2YWx1ZSAmJiB2YWx1ZSBkb2Vzbid0IGVxdWFsIHRvIHByZXZpb3VzIG9uZVxuICAgICAgICBpZiAodGhpcy5fZGVuc2l0eU1vZGUgJiYgdmFsdWUgIT09IHRoaXMuX2RlbnNpdHlNb2RlKSB7XG4gICAgICAgICAgICB0aGlzLl90cmlnZ2VyUmVjYWxjdWxhdGlvblZpc2libGVJdGVtcygpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuX2RlbnNpdHlNb2RlID0gdmFsdWU7XG4gICAgfVxuXG4gICAgLyoqIEN1cnJlbnRseSBzZWxlY3RlZCB0YWIgVW5pcXVlIElELiAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2VsZWN0ZWRVaWQ6IHN0cmluZyB8IHVuZGVmaW5lZDtcblxuICAgIC8qKlxuICAgICAqIEBkZXNjcmlwdGlvbiBFbWl0cyB3aGVuIHNvbWUgdGFiIGlzIHNlbGVjdGVkLlxuICAgICAqL1xuICAgIEBPdXRwdXQoKVxuICAgIHNlbGVjdGVkOiBFdmVudEVtaXR0ZXI8SWNvblRhYkJhckl0ZW0+ID0gbmV3IEV2ZW50RW1pdHRlcjxJY29uVGFiQmFySXRlbT4oKTtcblxuICAgIC8qKiBFbWl0cyB3aGVuIHNlbGVjdGVkIHRhYiBVbmlxdWUgSUQgY2hhbmdlcy4gKi9cbiAgICBAT3V0cHV0KClcbiAgICBzZWxlY3RlZFVpZENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nIHwgdW5kZWZpbmVkPigpO1xuXG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uIFJlZmVyZW5jZSB0byBPdmVyZmxvd0xpc3REaXJlY3RpdmVcbiAgICAgKi9cbiAgICBAVmlld0NoaWxkKE92ZXJmbG93TGlzdERpcmVjdGl2ZSlcbiAgICBvdmVyZmxvd0RpcmVjdGl2ZTogT3ZlcmZsb3dMaXN0RGlyZWN0aXZlO1xuXG4gICAgLyoqIEhlYWRlciBlbGVtZW50IHJlZmVyZW5jZS4gKi9cbiAgICBAVmlld0NoaWxkKCd0YWJsaXN0JywgeyByZWFkOiBFbGVtZW50UmVmIH0pXG4gICAgaGVhZGVyRWxlbWVudDogRWxlbWVudFJlZjxIVE1MRWxlbWVudD47XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9leHRyYVRhYnMkID0gc2lnbmFsPEljb25UYWJCYXJJdGVtW10+KFtdKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgX2xhc3RWaXNpYmxlVGFiSW5kZXg6IG51bWJlcjtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgX2V4dHJhSXRlbXMkID0gc2lnbmFsKGZhbHNlKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcmVhZG9ubHkgX2luRHluYW1pY1BhZ2UgPSAhIWluamVjdChGRF9EWU5BTUlDX1BBR0UsIHsgb3B0aW9uYWw6IHRydWUgfSk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByb3RlY3RlZCByZWFkb25seSBfY2QgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xuXG4gICAgLyoqIEBIaWRkZW4gKi9cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgX25nWm9uZSA9IGluamVjdChOZ1pvbmUpO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9kZW5zaXR5TW9kZTogVGFiRGVzdGlueU1vZGU7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2Rlc3Ryb3lSZWYgPSBpbmplY3QoRGVzdHJveVJlZik7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2Rlc3Ryb3llZCA9IGZhbHNlO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgICAgIGlmIChjaGFuZ2VzLnRhYnMgJiYgIWNoYW5nZXMudGFicy5maXJzdENoYW5nZSkge1xuICAgICAgICAgICAgdGhpcy5faW5pdFRhYnMoKTtcbiAgICAgICAgICAgIHRoaXMuX3RyaWdnZXJSZWNhbGN1bGF0aW9uVmlzaWJsZUl0ZW1zKCk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGNoYW5nZXMuaXNSdGwgJiYgIWNoYW5nZXMuaXNSdGwuZmlyc3RDaGFuZ2UpIHtcbiAgICAgICAgICAgIHRoaXMuX3RyaWdnZXJSZWNhbGN1bGF0aW9uVmlzaWJsZUl0ZW1zKCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoY2hhbmdlcy5zZWxlY3RlZFVpZCAmJiAhY2hhbmdlcy5zZWxlY3RlZFVpZC5maXJzdENoYW5nZSkge1xuICAgICAgICAgICAgY29uc3QgaXNFeHRyYVRhYiA9IHRoaXMuX2V4dHJhVGFicyQoKS5maW5kKCh0YWIpID0+IHRhYi51SWQgPT09IHRoaXMuc2VsZWN0ZWRVaWQpO1xuICAgICAgICAgICAgaWYgKGlzRXh0cmFUYWIpIHtcbiAgICAgICAgICAgICAgICB0aGlzLl9zZWxlY3RFeHRyYUl0ZW0oaXNFeHRyYVRhYik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9pbml0VGFicygpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLl90cmlnZ2VyUmVjYWxjdWxhdGlvblZpc2libGVJdGVtcygpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2Rlc3Ryb3llZCA9IHRydWU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIEBwYXJhbSBzZWxlY3RlZEl0ZW1cbiAgICAgKiBAcGFyYW0gZXZlbnRcbiAgICAgKi9cbiAgICBfc2VsZWN0SXRlbShzZWxlY3RlZEl0ZW06IEljb25UYWJCYXJJdGVtLCBldmVudD86IEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGV2ZW50Py5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgdGhpcy5zZWxlY3RlZFVpZCA9IHNlbGVjdGVkSXRlbS51SWQ7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRVaWRDaGFuZ2UuZW1pdCh0aGlzLnNlbGVjdGVkVWlkKTtcbiAgICAgICAgc2VsZWN0ZWRJdGVtLmJhZGdlID0gZmFsc2U7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWQuZW1pdChzZWxlY3RlZEl0ZW0pO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgX2tleURvd25IYW5kbGVyKFxuICAgICAgICBldmVudDogS2V5Ym9hcmRFdmVudCxcbiAgICAgICAgdGFiOiBJY29uVGFiQmFySXRlbSB8IHVuZGVmaW5lZCxcbiAgICAgICAgY3VycmVudEluZGV4OiBudW1iZXIsXG4gICAgICAgIHBvcG92ZXI/OiBUZXh0VHlwZVBvcG92ZXJDb21wb25lbnRcbiAgICApOiB2b2lkIHtcbiAgICAgICAgaWYgKHRhYiAmJiBLZXlVdGlsLmlzS2V5Q29kZShldmVudCwgW1NQQUNFLCBFTlRFUl0pKSB7XG4gICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgdGhpcy5fc2VsZWN0SXRlbSh0YWIpO1xuICAgICAgICB9IGVsc2UgaWYgKEtleVV0aWwuaXNLZXlDb2RlKGV2ZW50LCBbUklHSFRfQVJST1csIERPV05fQVJST1ddKSkge1xuICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgIGlmIChLZXlVdGlsLmlzS2V5Q29kZShldmVudCwgRE9XTl9BUlJPVykgJiYgdGFiPy5zdWJJdGVtcz8ubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgcG9wb3Zlcj8uX29wZW5Qb3BvdmVyKCk7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy5pc1J0bCA/IHRoaXMuX2ZvY3VzUHJldmlvdXNJdGVtKGN1cnJlbnRJbmRleCkgOiB0aGlzLl9mb2N1c05leHRJdGVtKGN1cnJlbnRJbmRleCk7XG4gICAgICAgIH0gZWxzZSBpZiAoS2V5VXRpbC5pc0tleUNvZGUoZXZlbnQsIFtMRUZUX0FSUk9XLCBVUF9BUlJPV10pKSB7XG4gICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgdGhpcy5pc1J0bCA/IHRoaXMuX2ZvY3VzTmV4dEl0ZW0oY3VycmVudEluZGV4KSA6IHRoaXMuX2ZvY3VzUHJldmlvdXNJdGVtKGN1cnJlbnRJbmRleCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiBmb2N1c2VzIG5leHQgdGFiICovXG4gICAgX2ZvY3VzTmV4dEl0ZW0oY3VycmVudEluZGV4OiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgbmV4dEluZGV4ID0gY3VycmVudEluZGV4ID09PSB0aGlzLnRhYnMubGVuZ3RoIC0gMSA/IDAgOiBjdXJyZW50SW5kZXggKyAxO1xuICAgICAgICB0aGlzLl9mb2N1c0l0ZW0obmV4dEluZGV4KTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiBmb2N1c2VzIHByZXZpb3VzIHRhYiAqL1xuICAgIF9mb2N1c1ByZXZpb3VzSXRlbShjdXJyZW50SW5kZXg6IG51bWJlcik6IHZvaWQge1xuICAgICAgICBpZiAoY3VycmVudEluZGV4ID09PSAwKSB7XG4gICAgICAgICAgICAvLyBpZiBjdXJyZW50IGZvY3VzZWQgZWxlbWVudCBpcyBmaXJzdCwgZm9jdXMgdGhlIGxhc3Qgb25lLiBJZiB0YWJzIGFyZSBvdmVyZmxvd2VkLCBmb2N1cyB0aGUgbGFzdCB0YWIgaW4gdGhlIHBvcG92ZXJcbiAgICAgICAgICAgIHRoaXMuX2ZvY3VzSXRlbSh0aGlzLnRhYnMubGVuZ3RoIC0gMSwgdHJ1ZSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLl9mb2N1c0l0ZW0oY3VycmVudEluZGV4IC0gMSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICogQHBhcmFtIHRhYkluZGV4IGluZGV4IG9mIHRoZSB0YWIgdG8gYXBwbHkgZm9jdXNcbiAgICAgKiBAcGFyYW0gZm9jdXNMYXN0IHdoZXRoZXIgdG8gZm9jdXMgZmlyc3Qgb3IgbGFzdCBpdGVtIGluIHRoZSBwb3BvdmVyXG4gICAgICovXG4gICAgX2ZvY3VzSXRlbSh0YWJJbmRleDogbnVtYmVyLCBmb2N1c0xhc3QgPSBmYWxzZSk6IHZvaWQge1xuICAgICAgICBpZiAodGFiSW5kZXggPiB0aGlzLl9sYXN0VmlzaWJsZVRhYkluZGV4KSB7XG4gICAgICAgICAgICB0aGlzLl90YWJCYXJQb3BvdmVyLl9vcGVuUG9wb3Zlcihmb2N1c0xhc3QpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29uc3QgaXRlbVRvRm9jdXMgPSB0aGlzLl9nZXRUYWJVSUVsZW1lbnRGb2N1c2FibGUodGhpcy5fdGFiVUlFbGVtZW50cy5nZXQodGFiSW5kZXgpKTtcbiAgICAgICAgICAgIGl0ZW1Ub0ZvY3VzPy5mb2N1cygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIEBwYXJhbSBzZWxlY3RlZEl0ZW1cbiAgICAgKiBAZGVzY3JpcHRpb24gc2VsZWN0IGV4dHJhIGl0ZW0gaW5zaWRlIHBvcG92ZXJcbiAgICAgKi9cbiAgICBfc2VsZWN0RXh0cmFJdGVtKHNlbGVjdGVkSXRlbTogSWNvblRhYkJhckl0ZW0pOiB2b2lkIHtcbiAgICAgICAgY29uc3QgdGFicyA9IFsuLi50aGlzLnRhYnNdO1xuICAgICAgICBjb25zdCBkZWxldGVkSXRlbSA9IHRhYnMuc3BsaWNlKHRoaXMuX2xhc3RWaXNpYmxlVGFiSW5kZXgsIDEsIHNlbGVjdGVkSXRlbSlbMF0gYXMgSWNvblRhYkJhckl0ZW07XG4gICAgICAgIHRhYnMuc3BsaWNlKHNlbGVjdGVkSXRlbS5pbmRleCwgMSwgZGVsZXRlZEl0ZW0pO1xuICAgICAgICB0aGlzLnRhYnMgPSB0YWJzO1xuICAgICAgICBjb25zdCBleHRyYVRhYnMgPSBbLi4udGhpcy5fZXh0cmFUYWJzJCgpXTtcblxuICAgICAgICBkZWxldGVkSXRlbS5pbmRleCA9IHNlbGVjdGVkSXRlbS5pbmRleDtcbiAgICAgICAgZGVsZXRlZEl0ZW0udUlkID0gYCR7ZGVsZXRlZEl0ZW0uaW5kZXh9YDtcbiAgICAgICAgY29uc3QgaXRlbVRvUG9wb3ZlciA9IGNsb25lRGVlcChkZWxldGVkSXRlbSk7XG4gICAgICAgIGRlbGV0ZWRJdGVtLmhpZGRlbiA9IHRydWU7XG4gICAgICAgIGRlbGV0ZWRJdGVtLmNzc0NsYXNzZXMucHVzaChJQ09OX1RBQl9ISURERU5fQ0xBU1NfTkFNRSk7XG5cbiAgICAgICAgbGV0IGluZGV4SW5FeHRyYUl0ZW1zO1xuICAgICAgICB0aGlzLl9leHRyYVRhYnMkKCkuZm9yRWFjaCgoaXRlbSwgaW5kZXgpID0+IHtcbiAgICAgICAgICAgIGlmIChpdGVtLmluZGV4ID09PSBzZWxlY3RlZEl0ZW0uaW5kZXgpIHtcbiAgICAgICAgICAgICAgICBpbmRleEluRXh0cmFJdGVtcyA9IGluZGV4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcblxuICAgICAgICBzZWxlY3RlZEl0ZW0uaW5kZXggPSB0aGlzLl9sYXN0VmlzaWJsZVRhYkluZGV4O1xuICAgICAgICBzZWxlY3RlZEl0ZW0udUlkID0gYCR7c2VsZWN0ZWRJdGVtLmluZGV4fWA7XG4gICAgICAgIHNlbGVjdGVkSXRlbS5oaWRkZW4gPSBmYWxzZTtcbiAgICAgICAgaWYgKHNlbGVjdGVkSXRlbS5jb2xvcikge1xuICAgICAgICAgICAgc2VsZWN0ZWRJdGVtLmNzc0NsYXNzZXMgPSBbYGZkLWljb24tdGFiLWJhcl9faXRlbS0tJHtzZWxlY3RlZEl0ZW0uY29sb3J9YF07XG4gICAgICAgIH1cbiAgICAgICAgZXh0cmFUYWJzLnNwbGljZShpbmRleEluRXh0cmFJdGVtcywgMSwgaXRlbVRvUG9wb3Zlcik7XG4gICAgICAgIHRoaXMuX2V4dHJhVGFicyQuc2V0KGV4dHJhVGFicyk7XG5cbiAgICAgICAgdGhpcy5fc2VsZWN0SXRlbShzZWxlY3RlZEl0ZW0pO1xuICAgICAgICB0aGlzLl90cmlnZ2VyUmVjYWxjdWxhdGlvblZpc2libGVJdGVtcygpO1xuICAgICAgICB0aGlzLl9mb2N1c0l0ZW0odGhpcy5fbGFzdFZpc2libGVUYWJJbmRleCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIEBwYXJhbSBleHRyYUl0ZW1zXG4gICAgICogQGRlc2NyaXB0aW9uIHJlY2FsY3VsYXRlIF9uZXh0U3RlcHMgYW5kIF9wcmV2U3RlcHMgYXJyYXkgaWYgd2UgaGF2ZSBleHRyYSBpdGVtc1xuICAgICAqL1xuICAgIF9yZWNhbGN1bGF0ZVZpc2libGVJdGVtcyhleHRyYUl0ZW1zOiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fZXh0cmFJdGVtcyQuc2V0KGV4dHJhSXRlbXMgPiAwKTtcbiAgICAgICAgdGhpcy5fY2QuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICBjb25zdCB0YWJzID0gWy4uLnRoaXMudGFic107XG4gICAgICAgIGNvbnN0IGV4dHJhVGFiczogSWNvblRhYkJhckl0ZW1bXSA9IFtdO1xuICAgICAgICB0aGlzLl9sYXN0VmlzaWJsZVRhYkluZGV4ID0gdGFicy5sZW5ndGggLSAxIC0gZXh0cmFJdGVtcztcbiAgICAgICAgdGFicy5mb3JFYWNoKChpdGVtKSA9PiB7XG4gICAgICAgICAgICBpdGVtLmhpZGRlbiA9IGZhbHNlO1xuICAgICAgICAgICAgaXRlbS5jc3NDbGFzc2VzID0gaXRlbS5jc3NDbGFzc2VzLmZpbHRlcigoY3NzQ2xhc3MpID0+IGNzc0NsYXNzICE9PSBJQ09OX1RBQl9ISURERU5fQ0xBU1NfTkFNRSk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIGZvciAobGV0IGkgPSB0aGlzLl9sYXN0VmlzaWJsZVRhYkluZGV4ICsgMTsgaSA8IHRhYnMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGNvbnN0IHRhYiA9IHRhYnNbaV07XG4gICAgICAgICAgICBleHRyYVRhYnMucHVzaChjbG9uZURlZXAodGFiKSk7XG4gICAgICAgICAgICB0YWIuaGlkZGVuID0gdHJ1ZTtcbiAgICAgICAgICAgIHRhYi5jc3NDbGFzc2VzLnB1c2goSUNPTl9UQUJfSElEREVOX0NMQVNTX05BTUUpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuX2V4dHJhVGFicyQuc2V0KGV4dHJhVGFicyk7XG4gICAgICAgIHRoaXMuX2NkLmRldGVjdENoYW5nZXMoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICogTWFwcGluZyBmdW5jdGlvbiB0byByZXNvbHZlIFVJIHRhYiBlbGVtZW50IHRvIGl0J3MgZm9jdXNhYmxlIHBhcnQvZGVzY2VuZGFudFxuICAgICAqL1xuICAgIHByb3RlY3RlZCBfZ2V0VGFiVUlFbGVtZW50Rm9jdXNhYmxlKHRhYlVJRWxlbWVudDogdW5rbm93bik6IE51bGxhYmxlPEhUTUxFbGVtZW50PiB7XG4gICAgICAgIGlmICh0YWJVSUVsZW1lbnQgJiYgdHlwZW9mIHRhYlVJRWxlbWVudCA9PT0gJ29iamVjdCcgJiYgJ25hdGl2ZUVsZW1lbnQnIGluIHRhYlVJRWxlbWVudCkge1xuICAgICAgICAgICAgaWYgKCg8RWxlbWVudFJlZj50YWJVSUVsZW1lbnQpLm5hdGl2ZUVsZW1lbnQgaW5zdGFuY2VvZiBIVE1MRWxlbWVudCkge1xuICAgICAgICAgICAgICAgIHJldHVybiAoPEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+PnRhYlVJRWxlbWVudCkubmF0aXZlRWxlbWVudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpZiAoaXNEZXZNb2RlKCkpIHtcbiAgICAgICAgICAgIGNvbnNvbGUud2FybignRmFpbGVkIHRvIGdldCBmb2N1c2FibGUgdGFiIGVsZW1lbnQnKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICogQGRlc2NyaXB0aW9uIHRyaWdnZXIgcmVjYWxjdWxhdGlvbiBpdGVtcywgbmVlZCB0byBkbyBpdCBhc3luY2hyb25vdXNseSBhZnRlciBkb20gd2FzIHJlcmVuZGVyZWRcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgX3RyaWdnZXJSZWNhbGN1bGF0aW9uVmlzaWJsZUl0ZW1zKCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9uZ1pvbmUub25NaWNyb3Rhc2tFbXB0eS5waXBlKHRha2UoMSksIHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLl9kZXN0cm95UmVmKSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIGlmICh0aGlzLm92ZXJmbG93RGlyZWN0aXZlICYmICF0aGlzLl9kZXN0cm95ZWQpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBleHRyYSA9IHRoaXMub3ZlcmZsb3dEaXJlY3RpdmUuZ2V0QW1vdW50T2ZFeHRyYUl0ZW1zKCk7XG4gICAgICAgICAgICAgICAgdGhpcy5fcmVjYWxjdWxhdGVWaXNpYmxlSXRlbXMoZXh0cmEpO1xuICAgICAgICAgICAgICAgIHRoaXMuX2NkLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIEBkZXNjcmlwdGlvbiBpbml0aWFsaXplIHN0YXRlIG9mIHRhYnNcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgX2luaXRUYWJzKCk6IHZvaWQge1xuICAgICAgICBjb25zdCBzZWxlY3RlZEl0ZW0gPSB0aGlzLl9maW5kQWN0aXZlVGFiSWQodGhpcy50YWJzKSB8fCB0aGlzLnRhYnNbMF07XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRVaWQgPSBzZWxlY3RlZEl0ZW0/LnVJZDtcbiAgICAgICAgdGhpcy5fbGFzdFZpc2libGVUYWJJbmRleCA9IHRoaXMudGFicy5sZW5ndGggLSAxO1xuICAgICAgICBpZiAoc2VsZWN0ZWRJdGVtKSB7XG4gICAgICAgICAgICB0aGlzLnNlbGVjdGVkVWlkQ2hhbmdlLmVtaXQodGhpcy5zZWxlY3RlZFVpZCk7XG4gICAgICAgICAgICB0aGlzLnNlbGVjdGVkLmVtaXQoc2VsZWN0ZWRJdGVtKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgX2ZpbmRBY3RpdmVUYWJJZCh0YWJzOiBJY29uVGFiQmFySXRlbVtdKTogSWNvblRhYkJhckl0ZW0gfCB1bmRlZmluZWQge1xuICAgICAgICBsZXQgYWN0aXZlVGFiOiBJY29uVGFiQmFySXRlbSB8IHVuZGVmaW5lZDtcbiAgICAgICAgZm9yIChjb25zdCB0YWIgb2YgdGFicykge1xuICAgICAgICAgICAgaWYgKHRhYi5hY3RpdmUpIHtcbiAgICAgICAgICAgICAgICBhY3RpdmVUYWIgPSB0YWI7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKHRhYi5zdWJJdGVtcykge1xuICAgICAgICAgICAgICAgIGFjdGl2ZVRhYiA9IHRoaXMuX2ZpbmRBY3RpdmVUYWJJZCh0YWIuc3ViSXRlbXMpO1xuICAgICAgICAgICAgICAgIGlmIChhY3RpdmVUYWIpIHtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGFjdGl2ZVRhYjtcbiAgICB9XG59XG4iXX0=
|
|
@@ -29,7 +29,7 @@ export class IconTabBarFilterTypeComponent extends ClosableIconTabBar {
|
|
|
29
29
|
provide: IconTabBarBase,
|
|
30
30
|
useExisting: IconTabBarFilterTypeComponent
|
|
31
31
|
}
|
|
32
|
-
], viewQueries: [{ propertyName: "_tabBarPopover", first: true, predicate: IconTabBarPopoverComponent, descendants: true }, { propertyName: "_tabUIElements", predicate: ["tabItem"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ul\n class=\"fd-icon-tab-bar__header\"\n [class.fd-dynamic-page__tabs]=\"_inDynamicPage\"\n role=\"tablist\"\n fdkOverflowList\n [isRtl]=\"isRtl\"\n #tablist\n [overflowOffset]=\"100\"\n (overflowChanged)=\"_recalculateVisibleItems($event)\"\n>\n @if (showTotalTab) {\n <li class=\"fd-icon-tab-bar__item\" role=\"presentation\" fdkOverflowListItem>\n <a\n (click)=\"_totalTab && _selectItem(_totalTab)\"\n (keydown)=\"_keyDownHandler($event, _totalTab, 0)\"\n [attr.aria-selected]=\"_totalTab?.uId === selectedUid\"\n class=\"fd-icon-tab-bar__tab\"\n tabindex=\"0\"\n #tabItem\n role=\"tab\"\n >\n <div class=\"fd-icon-tab-bar__container fd-icon-tab-bar__container--filter\">\n @if (_totalTab?.counter) {\n <span class=\"fd-icon-tab-bar__filter-counter\">{{ _totalTab?.counter }}</span>\n }\n <span class=\"fd-icon-tab-bar__filter-label\">{{ _totalTab?.label | fdkAsyncOrSync }}</span>\n </div>\n </a>\n </li>\n }\n @for (item of tabs | slice: 1; track item.uId; let idx = $index) {\n <li\n [class]=\"item.cssClasses\"\n class=\"fd-icon-tab-bar__item\"\n role=\"presentation\"\n fdkOverflowListItem\n [attr.aria-hidden]=\"item.hidden\"\n >\n <a\n (click)=\"_selectItem(item)\"\n [attr.aria-selected]=\"item.uId === selectedUid\"\n class=\"fd-icon-tab-bar__tab\"\n #tabItem\n [attr.tabindex]=\"showTotalTab ? -1 : idx > 0 ? -1 : 0\"\n (keydown)=\"_keyDownHandler($event, item, idx + (showTotalTab ? 1 : 0))\"\n role=\"tab\"\n >\n <div class=\"fd-icon-tab-bar__container\">\n <span class=\"fd-icon-tab-bar__icon\">\n <fd-icon [glyph]=\"item.icon\"></fd-icon>\n </span>\n @if (item.counter) {\n <span class=\"fd-icon-tab-bar__counter\">{{ item.counter }}</span>\n }\n </div>\n <div class=\"fd-icon-tab-bar__label\">{{ item.label | fdkAsyncOrSync }}</div>\n @if (item.color | fdkAsyncOrSync; as itemColor) {\n <div class=\"screenreader-only\">\n {{ (colorAssociations && colorAssociations[itemColor]) || itemColor }}\n </div>\n }\n </a>\n @if (item.closable) {\n <div class=\"fd-icon-tab-bar__button-container\">\n <button\n fd-button\n class=\"fd-icon-tab-bar__button\"\n fdType=\"transparent\"\n (click)=\"_closeTab(item.uId)\"\n >\n <fd-icon glyph=\"decline\"></fd-icon>\n </button>\n </div>\n }\n </li>\n }\n @if (_extraItems$()) {\n <li role=\"presentation\" class=\"fd-icon-tab-bar__item fd-icon-tab-bar__item--overflow\">\n <fdp-icon-tab-bar-popover\n [isRtl]=\"isRtl\"\n [extraTabs]=\"_extraTabs$()\"\n [colorAssociations]=\"colorAssociations\"\n (selectedExtraItem)=\"_selectExtraItem($event)\"\n (focusFirstVisibleItem)=\"_focusItem(0)\"\n (focusLastVisibleItem)=\"_focusItem(_lastVisibleTabIndex)\"\n ></fdp-icon-tab-bar-popover>\n </li>\n }\n</ul>\n", dependencies: [{ kind: "directive", type: OverflowListDirective, selector: "[fdkOverflowList]", inputs: ["overflowOffset", "isRtl", "itemCssBlockValue"], outputs: ["overflowChanged"] }, { kind: "directive", type: OverflowListItemDirective, selector: "[fdkOverflowListItem]" }, { kind: "component", type: IconComponent, selector: "fd-icon", inputs: ["glyph", "font", "color", "background", "class", "ariaLabel", "ariaHidden"] }, { kind: "component", type: IconTabBarPopoverComponent, selector: "fdp-icon-tab-bar-popover", inputs: ["leftSide", "label", "showItemLabel"] }, { kind: "pipe", type: SlicePipe, name: "slice" }, { kind: "component", type: ButtonComponent, selector: "button[fd-button], a[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }, { kind: "pipe", type: AsyncOrSyncPipe, name: "fdkAsyncOrSync" }] }); }
|
|
32
|
+
], viewQueries: [{ propertyName: "_tabBarPopover", first: true, predicate: IconTabBarPopoverComponent, descendants: true }, { propertyName: "_tabUIElements", predicate: ["tabItem"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ul\n class=\"fd-icon-tab-bar__header\"\n [class.fd-dynamic-page__tabs]=\"_inDynamicPage\"\n role=\"tablist\"\n fdkOverflowList\n [isRtl]=\"isRtl\"\n #tablist\n [overflowOffset]=\"100\"\n (overflowChanged)=\"_recalculateVisibleItems($event)\"\n>\n @if (showTotalTab) {\n <li class=\"fd-icon-tab-bar__item\" role=\"presentation\" fdkOverflowListItem>\n <a\n (click)=\"_totalTab && _selectItem(_totalTab)\"\n (keydown)=\"_keyDownHandler($event, _totalTab, 0)\"\n [attr.aria-selected]=\"_totalTab?.uId === selectedUid\"\n class=\"fd-icon-tab-bar__tab\"\n tabindex=\"0\"\n #tabItem\n role=\"tab\"\n >\n <div class=\"fd-icon-tab-bar__container fd-icon-tab-bar__container--filter\">\n @if (_totalTab?.counter) {\n <span class=\"fd-icon-tab-bar__filter-counter\">{{ _totalTab?.counter }}</span>\n }\n <span class=\"fd-icon-tab-bar__filter-label\">{{ _totalTab?.label | fdkAsyncOrSync }}</span>\n </div>\n </a>\n </li>\n }\n @for (item of tabs | slice: 1; track item.uId; let idx = $index) {\n <li\n [class]=\"item.cssClasses\"\n class=\"fd-icon-tab-bar__item\"\n role=\"presentation\"\n fdkOverflowListItem\n [attr.aria-hidden]=\"item.hidden\"\n >\n <a\n (click)=\"_selectItem(item)\"\n [attr.aria-selected]=\"item.uId === selectedUid\"\n class=\"fd-icon-tab-bar__tab\"\n #tabItem\n [attr.tabindex]=\"showTotalTab ? -1 : idx > 0 ? -1 : 0\"\n (keydown)=\"_keyDownHandler($event, item, idx + (showTotalTab ? 1 : 0))\"\n role=\"tab\"\n >\n <div class=\"fd-icon-tab-bar__container\">\n <span class=\"fd-icon-tab-bar__icon\">\n <fd-icon [glyph]=\"item.icon\"></fd-icon>\n </span>\n @if (item.counter) {\n <span class=\"fd-icon-tab-bar__counter\">{{ item.counter }}</span>\n }\n </div>\n <div class=\"fd-icon-tab-bar__label\">{{ item.label | fdkAsyncOrSync }}</div>\n @if (item.color | fdkAsyncOrSync; as itemColor) {\n <div class=\"screenreader-only\">\n {{ (colorAssociations && colorAssociations[itemColor]) || itemColor }}\n </div>\n }\n </a>\n @if (item.closable) {\n <div class=\"fd-icon-tab-bar__button-container\">\n <button\n fd-button\n tabindex=\"-1\"\n class=\"fd-icon-tab-bar__button\"\n fdType=\"transparent\"\n (click)=\"_closeTab(item.uId)\"\n >\n <fd-icon glyph=\"decline\"></fd-icon>\n </button>\n </div>\n }\n </li>\n }\n @if (_extraItems$()) {\n <li role=\"presentation\" class=\"fd-icon-tab-bar__item fd-icon-tab-bar__item--overflow\">\n <fdp-icon-tab-bar-popover\n [isRtl]=\"isRtl\"\n [extraTabs]=\"_extraTabs$()\"\n [colorAssociations]=\"colorAssociations\"\n (selectedExtraItem)=\"_selectExtraItem($event)\"\n (focusFirstVisibleItem)=\"_focusItem(0)\"\n (focusLastVisibleItem)=\"_focusItem(_lastVisibleTabIndex)\"\n (closeTab)=\"_closeTab($event, true)\"\n ></fdp-icon-tab-bar-popover>\n </li>\n }\n</ul>\n", dependencies: [{ kind: "directive", type: OverflowListDirective, selector: "[fdkOverflowList]", inputs: ["overflowOffset", "isRtl", "itemCssBlockValue"], outputs: ["overflowChanged"] }, { kind: "directive", type: OverflowListItemDirective, selector: "[fdkOverflowListItem]" }, { kind: "component", type: IconComponent, selector: "fd-icon", inputs: ["glyph", "font", "color", "background", "class", "ariaLabel", "ariaHidden"] }, { kind: "component", type: IconTabBarPopoverComponent, selector: "fdp-icon-tab-bar-popover", inputs: ["leftSide", "label", "showItemLabel"] }, { kind: "pipe", type: SlicePipe, name: "slice" }, { kind: "component", type: ButtonComponent, selector: "button[fd-button], a[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }, { kind: "pipe", type: AsyncOrSyncPipe, name: "fdkAsyncOrSync" }] }); }
|
|
33
33
|
}
|
|
34
34
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: IconTabBarFilterTypeComponent, decorators: [{
|
|
35
35
|
type: Component,
|
|
@@ -46,7 +46,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImpor
|
|
|
46
46
|
SlicePipe,
|
|
47
47
|
ButtonComponent,
|
|
48
48
|
AsyncOrSyncPipe
|
|
49
|
-
], template: "<ul\n class=\"fd-icon-tab-bar__header\"\n [class.fd-dynamic-page__tabs]=\"_inDynamicPage\"\n role=\"tablist\"\n fdkOverflowList\n [isRtl]=\"isRtl\"\n #tablist\n [overflowOffset]=\"100\"\n (overflowChanged)=\"_recalculateVisibleItems($event)\"\n>\n @if (showTotalTab) {\n <li class=\"fd-icon-tab-bar__item\" role=\"presentation\" fdkOverflowListItem>\n <a\n (click)=\"_totalTab && _selectItem(_totalTab)\"\n (keydown)=\"_keyDownHandler($event, _totalTab, 0)\"\n [attr.aria-selected]=\"_totalTab?.uId === selectedUid\"\n class=\"fd-icon-tab-bar__tab\"\n tabindex=\"0\"\n #tabItem\n role=\"tab\"\n >\n <div class=\"fd-icon-tab-bar__container fd-icon-tab-bar__container--filter\">\n @if (_totalTab?.counter) {\n <span class=\"fd-icon-tab-bar__filter-counter\">{{ _totalTab?.counter }}</span>\n }\n <span class=\"fd-icon-tab-bar__filter-label\">{{ _totalTab?.label | fdkAsyncOrSync }}</span>\n </div>\n </a>\n </li>\n }\n @for (item of tabs | slice: 1; track item.uId; let idx = $index) {\n <li\n [class]=\"item.cssClasses\"\n class=\"fd-icon-tab-bar__item\"\n role=\"presentation\"\n fdkOverflowListItem\n [attr.aria-hidden]=\"item.hidden\"\n >\n <a\n (click)=\"_selectItem(item)\"\n [attr.aria-selected]=\"item.uId === selectedUid\"\n class=\"fd-icon-tab-bar__tab\"\n #tabItem\n [attr.tabindex]=\"showTotalTab ? -1 : idx > 0 ? -1 : 0\"\n (keydown)=\"_keyDownHandler($event, item, idx + (showTotalTab ? 1 : 0))\"\n role=\"tab\"\n >\n <div class=\"fd-icon-tab-bar__container\">\n <span class=\"fd-icon-tab-bar__icon\">\n <fd-icon [glyph]=\"item.icon\"></fd-icon>\n </span>\n @if (item.counter) {\n <span class=\"fd-icon-tab-bar__counter\">{{ item.counter }}</span>\n }\n </div>\n <div class=\"fd-icon-tab-bar__label\">{{ item.label | fdkAsyncOrSync }}</div>\n @if (item.color | fdkAsyncOrSync; as itemColor) {\n <div class=\"screenreader-only\">\n {{ (colorAssociations && colorAssociations[itemColor]) || itemColor }}\n </div>\n }\n </a>\n @if (item.closable) {\n <div class=\"fd-icon-tab-bar__button-container\">\n <button\n fd-button\n class=\"fd-icon-tab-bar__button\"\n fdType=\"transparent\"\n (click)=\"_closeTab(item.uId)\"\n >\n <fd-icon glyph=\"decline\"></fd-icon>\n </button>\n </div>\n }\n </li>\n }\n @if (_extraItems$()) {\n <li role=\"presentation\" class=\"fd-icon-tab-bar__item fd-icon-tab-bar__item--overflow\">\n <fdp-icon-tab-bar-popover\n [isRtl]=\"isRtl\"\n [extraTabs]=\"_extraTabs$()\"\n [colorAssociations]=\"colorAssociations\"\n (selectedExtraItem)=\"_selectExtraItem($event)\"\n (focusFirstVisibleItem)=\"_focusItem(0)\"\n (focusLastVisibleItem)=\"_focusItem(_lastVisibleTabIndex)\"\n ></fdp-icon-tab-bar-popover>\n </li>\n }\n</ul>\n" }]
|
|
49
|
+
], template: "<ul\n class=\"fd-icon-tab-bar__header\"\n [class.fd-dynamic-page__tabs]=\"_inDynamicPage\"\n role=\"tablist\"\n fdkOverflowList\n [isRtl]=\"isRtl\"\n #tablist\n [overflowOffset]=\"100\"\n (overflowChanged)=\"_recalculateVisibleItems($event)\"\n>\n @if (showTotalTab) {\n <li class=\"fd-icon-tab-bar__item\" role=\"presentation\" fdkOverflowListItem>\n <a\n (click)=\"_totalTab && _selectItem(_totalTab)\"\n (keydown)=\"_keyDownHandler($event, _totalTab, 0)\"\n [attr.aria-selected]=\"_totalTab?.uId === selectedUid\"\n class=\"fd-icon-tab-bar__tab\"\n tabindex=\"0\"\n #tabItem\n role=\"tab\"\n >\n <div class=\"fd-icon-tab-bar__container fd-icon-tab-bar__container--filter\">\n @if (_totalTab?.counter) {\n <span class=\"fd-icon-tab-bar__filter-counter\">{{ _totalTab?.counter }}</span>\n }\n <span class=\"fd-icon-tab-bar__filter-label\">{{ _totalTab?.label | fdkAsyncOrSync }}</span>\n </div>\n </a>\n </li>\n }\n @for (item of tabs | slice: 1; track item.uId; let idx = $index) {\n <li\n [class]=\"item.cssClasses\"\n class=\"fd-icon-tab-bar__item\"\n role=\"presentation\"\n fdkOverflowListItem\n [attr.aria-hidden]=\"item.hidden\"\n >\n <a\n (click)=\"_selectItem(item)\"\n [attr.aria-selected]=\"item.uId === selectedUid\"\n class=\"fd-icon-tab-bar__tab\"\n #tabItem\n [attr.tabindex]=\"showTotalTab ? -1 : idx > 0 ? -1 : 0\"\n (keydown)=\"_keyDownHandler($event, item, idx + (showTotalTab ? 1 : 0))\"\n role=\"tab\"\n >\n <div class=\"fd-icon-tab-bar__container\">\n <span class=\"fd-icon-tab-bar__icon\">\n <fd-icon [glyph]=\"item.icon\"></fd-icon>\n </span>\n @if (item.counter) {\n <span class=\"fd-icon-tab-bar__counter\">{{ item.counter }}</span>\n }\n </div>\n <div class=\"fd-icon-tab-bar__label\">{{ item.label | fdkAsyncOrSync }}</div>\n @if (item.color | fdkAsyncOrSync; as itemColor) {\n <div class=\"screenreader-only\">\n {{ (colorAssociations && colorAssociations[itemColor]) || itemColor }}\n </div>\n }\n </a>\n @if (item.closable) {\n <div class=\"fd-icon-tab-bar__button-container\">\n <button\n fd-button\n tabindex=\"-1\"\n class=\"fd-icon-tab-bar__button\"\n fdType=\"transparent\"\n (click)=\"_closeTab(item.uId)\"\n >\n <fd-icon glyph=\"decline\"></fd-icon>\n </button>\n </div>\n }\n </li>\n }\n @if (_extraItems$()) {\n <li role=\"presentation\" class=\"fd-icon-tab-bar__item fd-icon-tab-bar__item--overflow\">\n <fdp-icon-tab-bar-popover\n [isRtl]=\"isRtl\"\n [extraTabs]=\"_extraTabs$()\"\n [colorAssociations]=\"colorAssociations\"\n (selectedExtraItem)=\"_selectExtraItem($event)\"\n (focusFirstVisibleItem)=\"_focusItem(0)\"\n (focusLastVisibleItem)=\"_focusItem(_lastVisibleTabIndex)\"\n (closeTab)=\"_closeTab($event, true)\"\n ></fdp-icon-tab-bar-popover>\n </li>\n }\n</ul>\n" }]
|
|
50
50
|
}], propDecorators: { _tabUIElements: [{
|
|
51
51
|
type: ViewChildren,
|
|
52
52
|
args: ['tabItem']
|
|
@@ -56,4 +56,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImpor
|
|
|
56
56
|
}], showTotalTab: [{
|
|
57
57
|
type: Input
|
|
58
58
|
}] } });
|
|
59
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi10YWItYmFyLWZpbHRlci10eXBlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vaWNvbi10YWItYmFyL2NvbXBvbmVudHMvaWNvbi10YWItYmFyLWZpbHRlci10eXBlL2ljb24tdGFiLWJhci1maWx0ZXItdHlwZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL2ljb24tdGFiLWJhci9jb21wb25lbnRzL2ljb24tdGFiLWJhci1maWx0ZXItdHlwZS9pY29uLXRhYi1iYXItZmlsdGVyLXR5cGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzVDLE9BQU8sRUFBRSxTQUFTLEVBQWMsS0FBSyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pHLE9BQU8sRUFBRSxlQUFlLEVBQUUscUJBQXFCLEVBQUUseUJBQXlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMvRyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRTNELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxpRUFBaUUsQ0FBQzs7QUFzQjdHLE1BQU0sT0FBTyw2QkFBOEIsU0FBUSxrQkFBa0I7SUFwQnJFOztRQTJCSTs7V0FFRztRQUVILGlCQUFZLEdBQUcsSUFBSSxDQUFDO0tBYXZCO0lBUkc7OztPQUdHO0lBQ08sU0FBUztRQUNmLEtBQUssQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUNsQixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztJQUNsRSxDQUFDOzhHQXZCUSw2QkFBNkI7a0dBQTdCLDZCQUE2QixxSEFoQjNCO1lBQ1A7Z0JBQ0ksT0FBTyxFQUFFLGNBQWM7Z0JBQ3ZCLFdBQVcsRUFBRSw2QkFBNkI7YUFDN0M7U0FDSiwwRUFnQlUsMEJBQTBCLHNKQ25DekMsMnlIQTJGQSw0Q0R0RVEscUJBQXFCLHNKQUNyQix5QkFBeUIsa0VBQ3pCLGFBQWEsMElBQ2IsMEJBQTBCLGdIQUMxQixTQUFTLDhDQUNULGVBQWUsbUhBQ2YsZUFBZTs7MkZBR1YsNkJBQTZCO2tCQXBCekMsU0FBUzsrQkFDSSw4QkFBOEIsY0FFNUIsSUFBSSxhQUNMO3dCQUNQOzRCQUNJLE9BQU8sRUFBRSxjQUFjOzRCQUN2QixXQUFXLCtCQUErQjt5QkFDN0M7cUJBQ0osV0FDUTt3QkFDTCxxQkFBcUI7d0JBQ3JCLHlCQUF5Qjt3QkFDekIsYUFBYTt3QkFDYiwwQkFBMEI7d0JBQzFCLFNBQVM7d0JBQ1QsZUFBZTt3QkFDZixlQUFlO3FCQUNsQjs4QkFJd0IsY0FBYztzQkFBdEMsWUFBWTt1QkFBQyxTQUFTO2dCQUdnQixjQUFjO3NCQUFwRCxTQUFTO3VCQUFDLDBCQUEwQjtnQkFNckMsWUFBWTtzQkFEWCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2xpY2VQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCwgRWxlbWVudFJlZiwgSW5wdXQsIFF1ZXJ5TGlzdCwgVmlld0NoaWxkLCBWaWV3Q2hpbGRyZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFzeW5jT3JTeW5jUGlwZSwgT3ZlcmZsb3dMaXN0RGlyZWN0aXZlLCBPdmVyZmxvd0xpc3RJdGVtRGlyZWN0aXZlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jZGsvdXRpbHMnO1xuaW1wb3J0IHsgQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL2J1dHRvbic7XG5pbXBvcnQgeyBJY29uQ29tcG9uZW50IH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL2ljb24nO1xuaW1wb3J0IHsgSWNvblRhYkJhckl0ZW0gfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2ljb24tdGFiLWJhci1pdGVtLmludGVyZmFjZSc7XG5pbXBvcnQgeyBDbG9zYWJsZUljb25UYWJCYXIgfSBmcm9tICcuLi9jbG9zYWJsZS1pY29uLXRhYi1iYXIuY2xhc3MnO1xuaW1wb3J0IHsgSWNvblRhYkJhckJhc2UgfSBmcm9tICcuLi9pY29uLXRhYi1iYXItYmFzZS5jbGFzcyc7XG5pbXBvcnQgeyBJY29uVGFiQmFyUG9wb3ZlckNvbXBvbmVudCB9IGZyb20gJy4uL3BvcG92ZXJzL2ljb24tdGFiLWJhci1wb3BvdmVyL2ljb24tdGFiLWJhci1wb3BvdmVyLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZmRwLWljb24tdGFiLWJhci1maWx0ZXItdHlwZScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2ljb24tdGFiLWJhci1maWx0ZXItdHlwZS5jb21wb25lbnQuaHRtbCcsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogSWNvblRhYkJhckJhc2UsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogSWNvblRhYkJhckZpbHRlclR5cGVDb21wb25lbnRcbiAgICAgICAgfVxuICAgIF0sXG4gICAgaW1wb3J0czogW1xuICAgICAgICBPdmVyZmxvd0xpc3REaXJlY3RpdmUsXG4gICAgICAgIE92ZXJmbG93TGlzdEl0ZW1EaXJlY3RpdmUsXG4gICAgICAgIEljb25Db21wb25lbnQsXG4gICAgICAgIEljb25UYWJCYXJQb3BvdmVyQ29tcG9uZW50LFxuICAgICAgICBTbGljZVBpcGUsXG4gICAgICAgIEJ1dHRvbkNvbXBvbmVudCxcbiAgICAgICAgQXN5bmNPclN5bmNQaXBlXG4gICAgXVxufSlcbmV4cG9ydCBjbGFzcyBJY29uVGFiQmFyRmlsdGVyVHlwZUNvbXBvbmVudCBleHRlbmRzIENsb3NhYmxlSWNvblRhYkJhciB7XG4gICAgLyoqIEBoaWRkZW4gbGlzdCBvZiB0YWIgaHRtbCBlbGVtZW50cywgdGhhdCBjYW4gcmVjZWl2ZSBmb2N1cyAqL1xuICAgIEBWaWV3Q2hpbGRyZW4oJ3RhYkl0ZW0nKSBfdGFiVUlFbGVtZW50czogUXVlcnlMaXN0PEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+PjtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQFZpZXdDaGlsZChJY29uVGFiQmFyUG9wb3ZlckNvbXBvbmVudCkgX3RhYkJhclBvcG92ZXI6IEljb25UYWJCYXJQb3BvdmVyQ29tcG9uZW50O1xuXG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uIEJvb2xlYW4gZmxhZyBpbmRpY2F0aW5nIHRvIHNob3cgdG90YWwgdGFiXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBzaG93VG90YWxUYWIgPSB0cnVlO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBfdG90YWxUYWI/OiBJY29uVGFiQmFySXRlbTtcblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKiBAZGVzY3JpcHRpb24gaW5pdGlhbGl6ZSBzdGF0ZSBvZiB0YWJzXG4gICAgICovXG4gICAgcHJvdGVjdGVkIF9pbml0VGFicygpOiB2b2lkIHtcbiAgICAgICAgc3VwZXIuX2luaXRUYWJzKCk7XG4gICAgICAgIHRoaXMuX3RvdGFsVGFiID0gdGhpcy5zaG93VG90YWxUYWIgPyB0aGlzLnRhYnNbMF0gOiB1bmRlZmluZWQ7XG4gICAgfVxufVxuIiwiPHVsXG4gICAgY2xhc3M9XCJmZC1pY29uLXRhYi1iYXJfX2hlYWRlclwiXG4gICAgW2NsYXNzLmZkLWR5bmFtaWMtcGFnZV9fdGFic109XCJfaW5EeW5hbWljUGFnZVwiXG4gICAgcm9sZT1cInRhYmxpc3RcIlxuICAgIGZka092ZXJmbG93TGlzdFxuICAgIFtpc1J0bF09XCJpc1J0bFwiXG4gICAgI3RhYmxpc3RcbiAgICBbb3ZlcmZsb3dPZmZzZXRdPVwiMTAwXCJcbiAgICAob3ZlcmZsb3dDaGFuZ2VkKT1cIl9yZWNhbGN1bGF0ZVZpc2libGVJdGVtcygkZXZlbnQpXCJcbj5cbiAgICBAaWYgKHNob3dUb3RhbFRhYikge1xuICAgICAgICA8bGkgY2xhc3M9XCJmZC1pY29uLXRhYi1iYXJfX2l0ZW1cIiByb2xlPVwicHJlc2VudGF0aW9uXCIgZmRrT3ZlcmZsb3dMaXN0SXRlbT5cbiAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cIl90b3RhbFRhYiAmJiBfc2VsZWN0SXRlbShfdG90YWxUYWIpXCJcbiAgICAgICAgICAgICAgICAoa2V5ZG93bik9XCJfa2V5RG93bkhhbmRsZXIoJGV2ZW50LCBfdG90YWxUYWIsIDApXCJcbiAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLXNlbGVjdGVkXT1cIl90b3RhbFRhYj8udUlkID09PSBzZWxlY3RlZFVpZFwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJmZC1pY29uLXRhYi1iYXJfX3RhYlwiXG4gICAgICAgICAgICAgICAgdGFiaW5kZXg9XCIwXCJcbiAgICAgICAgICAgICAgICAjdGFiSXRlbVxuICAgICAgICAgICAgICAgIHJvbGU9XCJ0YWJcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmZC1pY29uLXRhYi1iYXJfX2NvbnRhaW5lciBmZC1pY29uLXRhYi1iYXJfX2NvbnRhaW5lci0tZmlsdGVyXCI+XG4gICAgICAgICAgICAgICAgICAgIEBpZiAoX3RvdGFsVGFiPy5jb3VudGVyKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImZkLWljb24tdGFiLWJhcl9fZmlsdGVyLWNvdW50ZXJcIj57eyBfdG90YWxUYWI/LmNvdW50ZXIgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJmZC1pY29uLXRhYi1iYXJfX2ZpbHRlci1sYWJlbFwiPnt7IF90b3RhbFRhYj8ubGFiZWwgfCBmZGtBc3luY09yU3luYyB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvYT5cbiAgICAgICAgPC9saT5cbiAgICB9XG4gICAgQGZvciAoaXRlbSBvZiB0YWJzIHwgc2xpY2U6IDE7IHRyYWNrIGl0ZW0udUlkOyBsZXQgaWR4ID0gJGluZGV4KSB7XG4gICAgICAgIDxsaVxuICAgICAgICAgICAgW2NsYXNzXT1cIml0ZW0uY3NzQ2xhc3Nlc1wiXG4gICAgICAgICAgICBjbGFzcz1cImZkLWljb24tdGFiLWJhcl9faXRlbVwiXG4gICAgICAgICAgICByb2xlPVwicHJlc2VudGF0aW9uXCJcbiAgICAgICAgICAgIGZka092ZXJmbG93TGlzdEl0ZW1cbiAgICAgICAgICAgIFthdHRyLmFyaWEtaGlkZGVuXT1cIml0ZW0uaGlkZGVuXCJcbiAgICAgICAgPlxuICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwiX3NlbGVjdEl0ZW0oaXRlbSlcIlxuICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtc2VsZWN0ZWRdPVwiaXRlbS51SWQgPT09IHNlbGVjdGVkVWlkXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImZkLWljb24tdGFiLWJhcl9fdGFiXCJcbiAgICAgICAgICAgICAgICAjdGFiSXRlbVxuICAgICAgICAgICAgICAgIFthdHRyLnRhYmluZGV4XT1cInNob3dUb3RhbFRhYiA/IC0xIDogaWR4ID4gMCA/IC0xIDogMFwiXG4gICAgICAgICAgICAgICAgKGtleWRvd24pPVwiX2tleURvd25IYW5kbGVyKCRldmVudCwgaXRlbSwgaWR4ICsgKHNob3dUb3RhbFRhYiA/IDEgOiAwKSlcIlxuICAgICAgICAgICAgICAgIHJvbGU9XCJ0YWJcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmZC1pY29uLXRhYi1iYXJfX2NvbnRhaW5lclwiPlxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImZkLWljb24tdGFiLWJhcl9faWNvblwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGZkLWljb24gW2dseXBoXT1cIml0ZW0uaWNvblwiPjwvZmQtaWNvbj5cbiAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICBAaWYgKGl0ZW0uY291bnRlcikge1xuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJmZC1pY29uLXRhYi1iYXJfX2NvdW50ZXJcIj57eyBpdGVtLmNvdW50ZXIgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmQtaWNvbi10YWItYmFyX19sYWJlbFwiPnt7IGl0ZW0ubGFiZWwgfCBmZGtBc3luY09yU3luYyB9fTwvZGl2PlxuICAgICAgICAgICAgICAgIEBpZiAoaXRlbS5jb2xvciB8IGZka0FzeW5jT3JTeW5jOyBhcyBpdGVtQ29sb3IpIHtcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNjcmVlbnJlYWRlci1vbmx5XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7eyAoY29sb3JBc3NvY2lhdGlvbnMgJiYgY29sb3JBc3NvY2lhdGlvbnNbaXRlbUNvbG9yXSkgfHwgaXRlbUNvbG9yIH19XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgIEBpZiAoaXRlbS5jbG9zYWJsZSkge1xuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmZC1pY29uLXRhYi1iYXJfX2J1dHRvbi1jb250YWluZXJcIj5cbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgZmQtYnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICB0YWJpbmRleD1cIi0xXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZmQtaWNvbi10YWItYmFyX19idXR0b25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgZmRUeXBlPVwidHJhbnNwYXJlbnRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIl9jbG9zZVRhYihpdGVtLnVJZClcIlxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZmQtaWNvbiBnbHlwaD1cImRlY2xpbmVcIj48L2ZkLWljb24+XG4gICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgfVxuICAgICAgICA8L2xpPlxuICAgIH1cbiAgICBAaWYgKF9leHRyYUl0ZW1zJCgpKSB7XG4gICAgICAgIDxsaSByb2xlPVwicHJlc2VudGF0aW9uXCIgY2xhc3M9XCJmZC1pY29uLXRhYi1iYXJfX2l0ZW0gZmQtaWNvbi10YWItYmFyX19pdGVtLS1vdmVyZmxvd1wiPlxuICAgICAgICAgICAgPGZkcC1pY29uLXRhYi1iYXItcG9wb3ZlclxuICAgICAgICAgICAgICAgIFtpc1J0bF09XCJpc1J0bFwiXG4gICAgICAgICAgICAgICAgW2V4dHJhVGFic109XCJfZXh0cmFUYWJzJCgpXCJcbiAgICAgICAgICAgICAgICBbY29sb3JBc3NvY2lhdGlvbnNdPVwiY29sb3JBc3NvY2lhdGlvbnNcIlxuICAgICAgICAgICAgICAgIChzZWxlY3RlZEV4dHJhSXRlbSk9XCJfc2VsZWN0RXh0cmFJdGVtKCRldmVudClcIlxuICAgICAgICAgICAgICAgIChmb2N1c0ZpcnN0VmlzaWJsZUl0ZW0pPVwiX2ZvY3VzSXRlbSgwKVwiXG4gICAgICAgICAgICAgICAgKGZvY3VzTGFzdFZpc2libGVJdGVtKT1cIl9mb2N1c0l0ZW0oX2xhc3RWaXNpYmxlVGFiSW5kZXgpXCJcbiAgICAgICAgICAgICAgICAoY2xvc2VUYWIpPVwiX2Nsb3NlVGFiKCRldmVudCwgdHJ1ZSlcIlxuICAgICAgICAgICAgPjwvZmRwLWljb24tdGFiLWJhci1wb3BvdmVyPlxuICAgICAgICA8L2xpPlxuICAgIH1cbjwvdWw+XG4iXX0=
|
package/esm2022/icon-tab-bar/components/icon-tab-bar-icon-type/icon-tab-bar-icon-type.component.mjs
CHANGED
|
@@ -19,7 +19,7 @@ export class IconTabBarIconTypeComponent extends ClosableIconTabBar {
|
|
|
19
19
|
provide: IconTabBarBase,
|
|
20
20
|
useExisting: IconTabBarIconTypeComponent
|
|
21
21
|
}
|
|
22
|
-
], viewQueries: [{ propertyName: "_tabBarPopover", first: true, predicate: IconTabBarPopoverComponent, descendants: true }, { propertyName: "_tabUIElements", predicate: ["tabItem"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ul\n class=\"fd-icon-tab-bar__header\"\n [class.fd-dynamic-page__tabs]=\"_inDynamicPage\"\n role=\"tablist\"\n fdkOverflowList\n [isRtl]=\"isRtl\"\n #tablist\n [overflowOffset]=\"100\"\n (overflowChanged)=\"_recalculateVisibleItems($event)\"\n>\n @for (item of tabs; track item.uId; let idx = $index) {\n <li\n [ngClass]=\"item.cssClasses\"\n [class.fd-icon-tab-bar__item--closable]=\"item.closable\"\n fdkOverflowListItem\n [attr.aria-hidden]=\"item.hidden\"\n class=\"fd-icon-tab-bar__item\"\n role=\"presentation\"\n >\n <a\n class=\"fd-icon-tab-bar__tab\"\n #tabItem\n role=\"tab\"\n [attr.tabindex]=\"idx === 0 ? 0 : -1\"\n [attr.aria-selected]=\"item.uId === selectedUid\"\n (click)=\"_selectItem(item)\"\n (keydown)=\"_keyDownHandler($event, item, idx)\"\n >\n <div class=\"fd-icon-tab-bar__container\">\n <span class=\"fd-icon-tab-bar__icon\">\n <fd-icon [glyph]=\"item.icon\" [font]=\"item.iconFont || _defaultFontFamily\"></fd-icon>\n </span>\n @if (item.counter && (!item.label || !showLabel)) {\n <span class=\"fd-icon-tab-bar__counter\">{{ item.counter }}</span>\n }\n </div>\n @if (showLabel && item.label) {\n <div class=\"fd-icon-tab-bar__details\">\n <span class=\"fd-icon-tab-bar__counter\">{{ item.counter }}</span>\n <span class=\"fd-icon-tab-bar__label\">{{ item.label }}</span>\n </div>\n }\n @if (item.color | fdkAsyncOrSync; as itemColor) {\n <div class=\"screenreader-only\">\n {{ (colorAssociations && colorAssociations[itemColor]) || itemColor }}\n </div>\n }\n </a>\n @if (item.closable) {\n <div class=\"fd-icon-tab-bar__button-container\">\n <button\n fd-button\n class=\"fd-icon-tab-bar__button\"\n fdType=\"transparent\"\n (click)=\"_closeTab(item.uId)\"\n >\n <fd-icon glyph=\"decline\"></fd-icon>\n </button>\n </div>\n }\n </li>\n }\n @if (_extraItems$()) {\n <li role=\"presentation\" class=\"fd-icon-tab-bar__item fd-icon-tab-bar__item--overflow\">\n <fdp-icon-tab-bar-popover\n [showItemLabel]=\"showLabel\"\n [isRtl]=\"isRtl\"\n [extraTabs]=\"_extraTabs$()\"\n [colorAssociations]=\"colorAssociations\"\n (selectedExtraItem)=\"_selectExtraItem($event)\"\n (focusFirstVisibleItem)=\"_focusItem(0)\"\n (focusLastVisibleItem)=\"_focusItem(_lastVisibleTabIndex)\"\n ></fdp-icon-tab-bar-popover>\n </li>\n }\n</ul>\n", dependencies: [{ kind: "directive", type: OverflowListDirective, selector: "[fdkOverflowList]", inputs: ["overflowOffset", "isRtl", "itemCssBlockValue"], outputs: ["overflowChanged"] }, { kind: "directive", type: OverflowListItemDirective, selector: "[fdkOverflowListItem]" }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: IconComponent, selector: "fd-icon", inputs: ["glyph", "font", "color", "background", "class", "ariaLabel", "ariaHidden"] }, { kind: "component", type: ButtonComponent, selector: "button[fd-button], a[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }, { kind: "component", type: IconTabBarPopoverComponent, selector: "fdp-icon-tab-bar-popover", inputs: ["leftSide", "label", "showItemLabel"] }, { kind: "pipe", type: AsyncOrSyncPipe, name: "fdkAsyncOrSync" }] }); }
|
|
22
|
+
], viewQueries: [{ propertyName: "_tabBarPopover", first: true, predicate: IconTabBarPopoverComponent, descendants: true }, { propertyName: "_tabUIElements", predicate: ["tabItem"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ul\n class=\"fd-icon-tab-bar__header\"\n [class.fd-dynamic-page__tabs]=\"_inDynamicPage\"\n role=\"tablist\"\n fdkOverflowList\n [isRtl]=\"isRtl\"\n #tablist\n [overflowOffset]=\"100\"\n (overflowChanged)=\"_recalculateVisibleItems($event)\"\n>\n @for (item of tabs; track item.uId; let idx = $index) {\n <li\n [ngClass]=\"item.cssClasses\"\n [class.fd-icon-tab-bar__item--closable]=\"item.closable\"\n fdkOverflowListItem\n [attr.aria-hidden]=\"item.hidden\"\n class=\"fd-icon-tab-bar__item\"\n role=\"presentation\"\n >\n <a\n class=\"fd-icon-tab-bar__tab\"\n #tabItem\n role=\"tab\"\n [attr.tabindex]=\"idx === 0 ? 0 : -1\"\n [attr.aria-selected]=\"item.uId === selectedUid\"\n (click)=\"_selectItem(item)\"\n (keydown)=\"_keyDownHandler($event, item, idx)\"\n >\n <div class=\"fd-icon-tab-bar__container\">\n <span class=\"fd-icon-tab-bar__icon\">\n <fd-icon [glyph]=\"item.icon\" [font]=\"item.iconFont || _defaultFontFamily\"></fd-icon>\n </span>\n @if (item.counter && (!item.label || !showLabel)) {\n <span class=\"fd-icon-tab-bar__counter\">{{ item.counter }}</span>\n }\n </div>\n @if (showLabel && item.label) {\n <div class=\"fd-icon-tab-bar__details\">\n <span class=\"fd-icon-tab-bar__counter\">{{ item.counter }}</span>\n <span class=\"fd-icon-tab-bar__label\">{{ item.label }}</span>\n </div>\n }\n @if (item.color | fdkAsyncOrSync; as itemColor) {\n <div class=\"screenreader-only\">\n {{ (colorAssociations && colorAssociations[itemColor]) || itemColor }}\n </div>\n }\n </a>\n @if (item.closable) {\n <div class=\"fd-icon-tab-bar__button-container\">\n <button\n fd-button\n tabindex=\"-1\"\n class=\"fd-icon-tab-bar__button\"\n fdType=\"transparent\"\n (click)=\"_closeTab(item.uId)\"\n >\n <fd-icon glyph=\"decline\"></fd-icon>\n </button>\n </div>\n }\n </li>\n }\n @if (_extraItems$()) {\n <li role=\"presentation\" class=\"fd-icon-tab-bar__item fd-icon-tab-bar__item--overflow\">\n <fdp-icon-tab-bar-popover\n [showItemLabel]=\"showLabel\"\n [isRtl]=\"isRtl\"\n [extraTabs]=\"_extraTabs$()\"\n [colorAssociations]=\"colorAssociations\"\n (selectedExtraItem)=\"_selectExtraItem($event)\"\n (focusFirstVisibleItem)=\"_focusItem(0)\"\n (focusLastVisibleItem)=\"_focusItem(_lastVisibleTabIndex)\"\n (closeTab)=\"_closeTab($event, true)\"\n ></fdp-icon-tab-bar-popover>\n </li>\n }\n</ul>\n", dependencies: [{ kind: "directive", type: OverflowListDirective, selector: "[fdkOverflowList]", inputs: ["overflowOffset", "isRtl", "itemCssBlockValue"], outputs: ["overflowChanged"] }, { kind: "directive", type: OverflowListItemDirective, selector: "[fdkOverflowListItem]" }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: IconComponent, selector: "fd-icon", inputs: ["glyph", "font", "color", "background", "class", "ariaLabel", "ariaHidden"] }, { kind: "component", type: ButtonComponent, selector: "button[fd-button], a[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }, { kind: "component", type: IconTabBarPopoverComponent, selector: "fdp-icon-tab-bar-popover", inputs: ["leftSide", "label", "showItemLabel"] }, { kind: "pipe", type: AsyncOrSyncPipe, name: "fdkAsyncOrSync" }] }); }
|
|
23
23
|
}
|
|
24
24
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: IconTabBarIconTypeComponent, decorators: [{
|
|
25
25
|
type: Component,
|
|
@@ -36,7 +36,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImpor
|
|
|
36
36
|
ButtonComponent,
|
|
37
37
|
IconTabBarPopoverComponent,
|
|
38
38
|
AsyncOrSyncPipe
|
|
39
|
-
], template: "<ul\n class=\"fd-icon-tab-bar__header\"\n [class.fd-dynamic-page__tabs]=\"_inDynamicPage\"\n role=\"tablist\"\n fdkOverflowList\n [isRtl]=\"isRtl\"\n #tablist\n [overflowOffset]=\"100\"\n (overflowChanged)=\"_recalculateVisibleItems($event)\"\n>\n @for (item of tabs; track item.uId; let idx = $index) {\n <li\n [ngClass]=\"item.cssClasses\"\n [class.fd-icon-tab-bar__item--closable]=\"item.closable\"\n fdkOverflowListItem\n [attr.aria-hidden]=\"item.hidden\"\n class=\"fd-icon-tab-bar__item\"\n role=\"presentation\"\n >\n <a\n class=\"fd-icon-tab-bar__tab\"\n #tabItem\n role=\"tab\"\n [attr.tabindex]=\"idx === 0 ? 0 : -1\"\n [attr.aria-selected]=\"item.uId === selectedUid\"\n (click)=\"_selectItem(item)\"\n (keydown)=\"_keyDownHandler($event, item, idx)\"\n >\n <div class=\"fd-icon-tab-bar__container\">\n <span class=\"fd-icon-tab-bar__icon\">\n <fd-icon [glyph]=\"item.icon\" [font]=\"item.iconFont || _defaultFontFamily\"></fd-icon>\n </span>\n @if (item.counter && (!item.label || !showLabel)) {\n <span class=\"fd-icon-tab-bar__counter\">{{ item.counter }}</span>\n }\n </div>\n @if (showLabel && item.label) {\n <div class=\"fd-icon-tab-bar__details\">\n <span class=\"fd-icon-tab-bar__counter\">{{ item.counter }}</span>\n <span class=\"fd-icon-tab-bar__label\">{{ item.label }}</span>\n </div>\n }\n @if (item.color | fdkAsyncOrSync; as itemColor) {\n <div class=\"screenreader-only\">\n {{ (colorAssociations && colorAssociations[itemColor]) || itemColor }}\n </div>\n }\n </a>\n @if (item.closable) {\n <div class=\"fd-icon-tab-bar__button-container\">\n <button\n fd-button\n class=\"fd-icon-tab-bar__button\"\n fdType=\"transparent\"\n (click)=\"_closeTab(item.uId)\"\n >\n <fd-icon glyph=\"decline\"></fd-icon>\n </button>\n </div>\n }\n </li>\n }\n @if (_extraItems$()) {\n <li role=\"presentation\" class=\"fd-icon-tab-bar__item fd-icon-tab-bar__item--overflow\">\n <fdp-icon-tab-bar-popover\n [showItemLabel]=\"showLabel\"\n [isRtl]=\"isRtl\"\n [extraTabs]=\"_extraTabs$()\"\n [colorAssociations]=\"colorAssociations\"\n (selectedExtraItem)=\"_selectExtraItem($event)\"\n (focusFirstVisibleItem)=\"_focusItem(0)\"\n (focusLastVisibleItem)=\"_focusItem(_lastVisibleTabIndex)\"\n ></fdp-icon-tab-bar-popover>\n </li>\n }\n</ul>\n" }]
|
|
39
|
+
], template: "<ul\n class=\"fd-icon-tab-bar__header\"\n [class.fd-dynamic-page__tabs]=\"_inDynamicPage\"\n role=\"tablist\"\n fdkOverflowList\n [isRtl]=\"isRtl\"\n #tablist\n [overflowOffset]=\"100\"\n (overflowChanged)=\"_recalculateVisibleItems($event)\"\n>\n @for (item of tabs; track item.uId; let idx = $index) {\n <li\n [ngClass]=\"item.cssClasses\"\n [class.fd-icon-tab-bar__item--closable]=\"item.closable\"\n fdkOverflowListItem\n [attr.aria-hidden]=\"item.hidden\"\n class=\"fd-icon-tab-bar__item\"\n role=\"presentation\"\n >\n <a\n class=\"fd-icon-tab-bar__tab\"\n #tabItem\n role=\"tab\"\n [attr.tabindex]=\"idx === 0 ? 0 : -1\"\n [attr.aria-selected]=\"item.uId === selectedUid\"\n (click)=\"_selectItem(item)\"\n (keydown)=\"_keyDownHandler($event, item, idx)\"\n >\n <div class=\"fd-icon-tab-bar__container\">\n <span class=\"fd-icon-tab-bar__icon\">\n <fd-icon [glyph]=\"item.icon\" [font]=\"item.iconFont || _defaultFontFamily\"></fd-icon>\n </span>\n @if (item.counter && (!item.label || !showLabel)) {\n <span class=\"fd-icon-tab-bar__counter\">{{ item.counter }}</span>\n }\n </div>\n @if (showLabel && item.label) {\n <div class=\"fd-icon-tab-bar__details\">\n <span class=\"fd-icon-tab-bar__counter\">{{ item.counter }}</span>\n <span class=\"fd-icon-tab-bar__label\">{{ item.label }}</span>\n </div>\n }\n @if (item.color | fdkAsyncOrSync; as itemColor) {\n <div class=\"screenreader-only\">\n {{ (colorAssociations && colorAssociations[itemColor]) || itemColor }}\n </div>\n }\n </a>\n @if (item.closable) {\n <div class=\"fd-icon-tab-bar__button-container\">\n <button\n fd-button\n tabindex=\"-1\"\n class=\"fd-icon-tab-bar__button\"\n fdType=\"transparent\"\n (click)=\"_closeTab(item.uId)\"\n >\n <fd-icon glyph=\"decline\"></fd-icon>\n </button>\n </div>\n }\n </li>\n }\n @if (_extraItems$()) {\n <li role=\"presentation\" class=\"fd-icon-tab-bar__item fd-icon-tab-bar__item--overflow\">\n <fdp-icon-tab-bar-popover\n [showItemLabel]=\"showLabel\"\n [isRtl]=\"isRtl\"\n [extraTabs]=\"_extraTabs$()\"\n [colorAssociations]=\"colorAssociations\"\n (selectedExtraItem)=\"_selectExtraItem($event)\"\n (focusFirstVisibleItem)=\"_focusItem(0)\"\n (focusLastVisibleItem)=\"_focusItem(_lastVisibleTabIndex)\"\n (closeTab)=\"_closeTab($event, true)\"\n ></fdp-icon-tab-bar-popover>\n </li>\n }\n</ul>\n" }]
|
|
40
40
|
}], propDecorators: { _tabUIElements: [{
|
|
41
41
|
type: ViewChildren,
|
|
42
42
|
args: ['tabItem']
|
|
@@ -46,4 +46,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImpor
|
|
|
46
46
|
}], showLabel: [{
|
|
47
47
|
type: Input
|
|
48
48
|
}] } });
|
|
49
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
49
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi10YWItYmFyLWljb24tdHlwZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL2ljb24tdGFiLWJhci9jb21wb25lbnRzL2ljb24tdGFiLWJhci1pY29uLXR5cGUvaWNvbi10YWItYmFyLWljb24tdHlwZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsYXRmb3JtL2ljb24tdGFiLWJhci9jb21wb25lbnRzL2ljb24tdGFiLWJhci1pY29uLXR5cGUvaWNvbi10YWItYmFyLWljb24tdHlwZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDMUMsT0FBTyxFQUFFLFNBQVMsRUFBYyxLQUFLLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakcsT0FBTyxFQUFFLGVBQWUsRUFBRSxxQkFBcUIsRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQy9HLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsYUFBYSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDeEYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDcEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzVELE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGlFQUFpRSxDQUFDOztBQXNCN0csTUFBTSxPQUFPLDJCQUE0QixTQUFRLGtCQUFrQjtJQXBCbkU7O1FBK0JJLGNBQWM7UUFDTCx1QkFBa0IsR0FBRywyQkFBMkIsQ0FBQztLQUM3RDs4R0FiWSwyQkFBMkI7a0dBQTNCLDJCQUEyQiw2R0FoQnpCO1lBQ1A7Z0JBQ0ksT0FBTyxFQUFFLGNBQWM7Z0JBQ3ZCLFdBQVcsRUFBRSwyQkFBMkI7YUFDM0M7U0FDSiwwRUFnQlUsMEJBQTBCLHNKQ2xDekMscXdHQThFQSw0Q0QxRFEscUJBQXFCLHNKQUNyQix5QkFBeUIsa0VBQ3pCLE9BQU8sb0ZBQ1AsYUFBYSwwSUFDYixlQUFlLHdIQUNmLDBCQUEwQixnSEFDMUIsZUFBZTs7MkZBR1YsMkJBQTJCO2tCQXBCdkMsU0FBUzsrQkFDSSw0QkFBNEIsY0FFMUIsSUFBSSxhQUNMO3dCQUNQOzRCQUNJLE9BQU8sRUFBRSxjQUFjOzRCQUN2QixXQUFXLDZCQUE2Qjt5QkFDM0M7cUJBQ0osV0FDUTt3QkFDTCxxQkFBcUI7d0JBQ3JCLHlCQUF5Qjt3QkFDekIsT0FBTzt3QkFDUCxhQUFhO3dCQUNiLGVBQWU7d0JBQ2YsMEJBQTBCO3dCQUMxQixlQUFlO3FCQUNsQjs4QkFJd0IsY0FBYztzQkFBdEMsWUFBWTt1QkFBQyxTQUFTO2dCQUdnQixjQUFjO3NCQUFwRCxTQUFTO3VCQUFDLDBCQUEwQjtnQkFJckMsU0FBUztzQkFEUixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdDbGFzcyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIEVsZW1lbnRSZWYsIElucHV0LCBRdWVyeUxpc3QsIFZpZXdDaGlsZCwgVmlld0NoaWxkcmVuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBc3luY09yU3luY1BpcGUsIE92ZXJmbG93TGlzdERpcmVjdGl2ZSwgT3ZlcmZsb3dMaXN0SXRlbURpcmVjdGl2ZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY2RrL3V0aWxzJztcbmltcG9ydCB7IEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9idXR0b24nO1xuaW1wb3J0IHsgRkRfREVGQVVMVF9JQ09OX0ZPTlRfRkFNSUxZLCBJY29uQ29tcG9uZW50IH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL2ljb24nO1xuaW1wb3J0IHsgQ2xvc2FibGVJY29uVGFiQmFyIH0gZnJvbSAnLi4vY2xvc2FibGUtaWNvbi10YWItYmFyLmNsYXNzJztcbmltcG9ydCB7IEljb25UYWJCYXJCYXNlIH0gZnJvbSAnLi4vaWNvbi10YWItYmFyLWJhc2UuY2xhc3MnO1xuaW1wb3J0IHsgSWNvblRhYkJhclBvcG92ZXJDb21wb25lbnQgfSBmcm9tICcuLi9wb3BvdmVycy9pY29uLXRhYi1iYXItcG9wb3Zlci9pY29uLXRhYi1iYXItcG9wb3Zlci5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2ZkcC1pY29uLXRhYi1iYXItaWNvbi10eXBlJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vaWNvbi10YWItYmFyLWljb24tdHlwZS5jb21wb25lbnQuaHRtbCcsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogSWNvblRhYkJhckJhc2UsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogSWNvblRhYkJhckljb25UeXBlQ29tcG9uZW50XG4gICAgICAgIH1cbiAgICBdLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgT3ZlcmZsb3dMaXN0RGlyZWN0aXZlLFxuICAgICAgICBPdmVyZmxvd0xpc3RJdGVtRGlyZWN0aXZlLFxuICAgICAgICBOZ0NsYXNzLFxuICAgICAgICBJY29uQ29tcG9uZW50LFxuICAgICAgICBCdXR0b25Db21wb25lbnQsXG4gICAgICAgIEljb25UYWJCYXJQb3BvdmVyQ29tcG9uZW50LFxuICAgICAgICBBc3luY09yU3luY1BpcGVcbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIEljb25UYWJCYXJJY29uVHlwZUNvbXBvbmVudCBleHRlbmRzIENsb3NhYmxlSWNvblRhYkJhciB7XG4gICAgLyoqIEBoaWRkZW4gbGlzdCBvZiB0YWIgaHRtbCBlbGVtZW50cywgdGhhdCBjYW4gcmVjZWl2ZSBmb2N1cyAqL1xuICAgIEBWaWV3Q2hpbGRyZW4oJ3RhYkl0ZW0nKSBfdGFiVUlFbGVtZW50czogUXVlcnlMaXN0PEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+PjtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQFZpZXdDaGlsZChJY29uVGFiQmFyUG9wb3ZlckNvbXBvbmVudCkgX3RhYkJhclBvcG92ZXI6IEljb25UYWJCYXJQb3BvdmVyQ29tcG9uZW50O1xuXG4gICAgLyoqIFdoZXRoZXIgdG8gZGlzcGxheSBsYWJlbHMgZm9yIHRhYiBpdGVtcyAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2hvd0xhYmVsOiBib29sZWFuO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICByZWFkb25seSBfZGVmYXVsdEZvbnRGYW1pbHkgPSBGRF9ERUZBVUxUX0lDT05fRk9OVF9GQU1JTFk7XG59XG4iLCI8dWxcbiAgICBjbGFzcz1cImZkLWljb24tdGFiLWJhcl9faGVhZGVyXCJcbiAgICBbY2xhc3MuZmQtZHluYW1pYy1wYWdlX190YWJzXT1cIl9pbkR5bmFtaWNQYWdlXCJcbiAgICByb2xlPVwidGFibGlzdFwiXG4gICAgZmRrT3ZlcmZsb3dMaXN0XG4gICAgW2lzUnRsXT1cImlzUnRsXCJcbiAgICAjdGFibGlzdFxuICAgIFtvdmVyZmxvd09mZnNldF09XCIxMDBcIlxuICAgIChvdmVyZmxvd0NoYW5nZWQpPVwiX3JlY2FsY3VsYXRlVmlzaWJsZUl0ZW1zKCRldmVudClcIlxuPlxuICAgIEBmb3IgKGl0ZW0gb2YgdGFiczsgdHJhY2sgaXRlbS51SWQ7IGxldCBpZHggPSAkaW5kZXgpIHtcbiAgICAgICAgPGxpXG4gICAgICAgICAgICBbbmdDbGFzc109XCJpdGVtLmNzc0NsYXNzZXNcIlxuICAgICAgICAgICAgW2NsYXNzLmZkLWljb24tdGFiLWJhcl9faXRlbS0tY2xvc2FibGVdPVwiaXRlbS5jbG9zYWJsZVwiXG4gICAgICAgICAgICBmZGtPdmVyZmxvd0xpc3RJdGVtXG4gICAgICAgICAgICBbYXR0ci5hcmlhLWhpZGRlbl09XCJpdGVtLmhpZGRlblwiXG4gICAgICAgICAgICBjbGFzcz1cImZkLWljb24tdGFiLWJhcl9faXRlbVwiXG4gICAgICAgICAgICByb2xlPVwicHJlc2VudGF0aW9uXCJcbiAgICAgICAgPlxuICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICBjbGFzcz1cImZkLWljb24tdGFiLWJhcl9fdGFiXCJcbiAgICAgICAgICAgICAgICAjdGFiSXRlbVxuICAgICAgICAgICAgICAgIHJvbGU9XCJ0YWJcIlxuICAgICAgICAgICAgICAgIFthdHRyLnRhYmluZGV4XT1cImlkeCA9PT0gMCA/IDAgOiAtMVwiXG4gICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1zZWxlY3RlZF09XCJpdGVtLnVJZCA9PT0gc2VsZWN0ZWRVaWRcIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJfc2VsZWN0SXRlbShpdGVtKVwiXG4gICAgICAgICAgICAgICAgKGtleWRvd24pPVwiX2tleURvd25IYW5kbGVyKCRldmVudCwgaXRlbSwgaWR4KVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZkLWljb24tdGFiLWJhcl9fY29udGFpbmVyXCI+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZmQtaWNvbi10YWItYmFyX19pY29uXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZmQtaWNvbiBbZ2x5cGhdPVwiaXRlbS5pY29uXCIgW2ZvbnRdPVwiaXRlbS5pY29uRm9udCB8fCBfZGVmYXVsdEZvbnRGYW1pbHlcIj48L2ZkLWljb24+XG4gICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgQGlmIChpdGVtLmNvdW50ZXIgJiYgKCFpdGVtLmxhYmVsIHx8ICFzaG93TGFiZWwpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImZkLWljb24tdGFiLWJhcl9fY291bnRlclwiPnt7IGl0ZW0uY291bnRlciB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIEBpZiAoc2hvd0xhYmVsICYmIGl0ZW0ubGFiZWwpIHtcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZkLWljb24tdGFiLWJhcl9fZGV0YWlsc1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJmZC1pY29uLXRhYi1iYXJfX2NvdW50ZXJcIj57eyBpdGVtLmNvdW50ZXIgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImZkLWljb24tdGFiLWJhcl9fbGFiZWxcIj57eyBpdGVtLmxhYmVsIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQGlmIChpdGVtLmNvbG9yIHwgZmRrQXN5bmNPclN5bmM7IGFzIGl0ZW1Db2xvcikge1xuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2NyZWVucmVhZGVyLW9ubHlcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIHt7IChjb2xvckFzc29jaWF0aW9ucyAmJiBjb2xvckFzc29jaWF0aW9uc1tpdGVtQ29sb3JdKSB8fCBpdGVtQ29sb3IgfX1cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgQGlmIChpdGVtLmNsb3NhYmxlKSB7XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZkLWljb24tdGFiLWJhcl9fYnV0dG9uLWNvbnRhaW5lclwiPlxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICBmZC1idXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgIHRhYmluZGV4PVwiLTFcIlxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmZC1pY29uLXRhYi1iYXJfX2J1dHRvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICBmZFR5cGU9XCJ0cmFuc3BhcmVudFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiX2Nsb3NlVGFiKGl0ZW0udUlkKVwiXG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxmZC1pY29uIGdseXBoPVwiZGVjbGluZVwiPjwvZmQtaWNvbj5cbiAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICB9XG4gICAgICAgIDwvbGk+XG4gICAgfVxuICAgIEBpZiAoX2V4dHJhSXRlbXMkKCkpIHtcbiAgICAgICAgPGxpIHJvbGU9XCJwcmVzZW50YXRpb25cIiBjbGFzcz1cImZkLWljb24tdGFiLWJhcl9faXRlbSBmZC1pY29uLXRhYi1iYXJfX2l0ZW0tLW92ZXJmbG93XCI+XG4gICAgICAgICAgICA8ZmRwLWljb24tdGFiLWJhci1wb3BvdmVyXG4gICAgICAgICAgICAgICAgW3Nob3dJdGVtTGFiZWxdPVwic2hvd0xhYmVsXCJcbiAgICAgICAgICAgICAgICBbaXNSdGxdPVwiaXNSdGxcIlxuICAgICAgICAgICAgICAgIFtleHRyYVRhYnNdPVwiX2V4dHJhVGFicyQoKVwiXG4gICAgICAgICAgICAgICAgW2NvbG9yQXNzb2NpYXRpb25zXT1cImNvbG9yQXNzb2NpYXRpb25zXCJcbiAgICAgICAgICAgICAgICAoc2VsZWN0ZWRFeHRyYUl0ZW0pPVwiX3NlbGVjdEV4dHJhSXRlbSgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAoZm9jdXNGaXJzdFZpc2libGVJdGVtKT1cIl9mb2N1c0l0ZW0oMClcIlxuICAgICAgICAgICAgICAgIChmb2N1c0xhc3RWaXNpYmxlSXRlbSk9XCJfZm9jdXNJdGVtKF9sYXN0VmlzaWJsZVRhYkluZGV4KVwiXG4gICAgICAgICAgICAgICAgKGNsb3NlVGFiKT1cIl9jbG9zZVRhYigkZXZlbnQsIHRydWUpXCJcbiAgICAgICAgICAgID48L2ZkcC1pY29uLXRhYi1iYXItcG9wb3Zlcj5cbiAgICAgICAgPC9saT5cbiAgICB9XG48L3VsPlxuIl19
|