@fundamental-ngx/core 0.34.3-rc.41 → 0.34.3-rc.44
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/action-bar/package.json +1 -1
- package/action-sheet/package.json +1 -1
- package/alert/package.json +1 -1
- package/avatar/package.json +1 -1
- package/avatar-group/package.json +1 -1
- package/bar/package.json +1 -1
- package/breadcrumb/package.json +1 -1
- package/busy-indicator/package.json +1 -1
- package/button/package.json +1 -1
- package/calendar/package.json +1 -1
- package/card/package.json +1 -1
- package/carousel/package.json +1 -1
- package/checkbox/package.json +1 -1
- package/combobox/package.json +1 -1
- package/date-picker/package.json +1 -1
- package/datetime/package.json +1 -1
- package/datetime-picker/package.json +1 -1
- package/dialog/package.json +1 -1
- package/dynamic-page/package.json +1 -1
- package/dynamic-side-content/package.json +1 -1
- package/esm2020/nested-list/nested-content/nested-list-content.directive.mjs +12 -2
- package/esm2020/nested-list/nested-item/nested-item.directive.mjs +59 -12
- package/esm2020/nested-list/nested-link/nested-link.directive.mjs +16 -5
- package/esm2020/nested-list/nested-list/nested-list.directive.mjs +71 -6
- package/esm2020/nested-list/nested-list-directives.mjs +23 -6
- package/esm2020/nested-list/nested-list-keyboard.service.mjs +9 -5
- package/esm2020/nested-list/nested-list-popover/nested-list-popover.component.mjs +1 -1
- package/esm2020/nested-list/prepared-nested-list/prepared-nested-list.component.mjs +1 -1
- package/esm2020/radio/radio-button/radio-button.component.mjs +3 -3
- package/facets/package.json +1 -1
- package/feed-input/package.json +1 -1
- package/feed-list-item/package.json +1 -1
- package/fesm2015/fundamental-ngx-core-nested-list.mjs +185 -29
- package/fesm2015/fundamental-ngx-core-nested-list.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-radio.mjs +2 -2
- package/fesm2015/fundamental-ngx-core-radio.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-nested-list.mjs +181 -28
- package/fesm2020/fundamental-ngx-core-nested-list.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-radio.mjs +2 -2
- package/fesm2020/fundamental-ngx-core-radio.mjs.map +1 -1
- package/file-uploader/package.json +1 -1
- package/fixed-card-layout/package.json +1 -1
- package/flexible-column-layout/package.json +1 -1
- package/form/package.json +1 -1
- package/formatted-text/package.json +1 -1
- package/grid-list/package.json +1 -1
- package/icon/package.json +1 -1
- package/illustrated-message/package.json +1 -1
- package/infinite-scroll/package.json +1 -1
- package/info-label/package.json +1 -1
- package/inline-help/package.json +1 -1
- package/input-group/package.json +1 -1
- package/layout-grid/package.json +1 -1
- package/layout-panel/package.json +1 -1
- package/link/package.json +1 -1
- package/list/package.json +1 -1
- package/menu/package.json +1 -1
- package/message-box/package.json +1 -1
- package/message-strip/package.json +1 -1
- package/message-toast/package.json +1 -1
- package/micro-process-flow/package.json +1 -1
- package/mobile-mode/package.json +1 -1
- package/multi-input/package.json +1 -1
- package/nested-list/esm2020/nested-content/nested-list-content.directive.mjs +12 -2
- package/nested-list/esm2020/nested-item/nested-item.directive.mjs +59 -12
- package/nested-list/esm2020/nested-link/nested-link.directive.mjs +16 -5
- package/nested-list/esm2020/nested-list/nested-list.directive.mjs +71 -6
- package/nested-list/esm2020/nested-list-directives.mjs +23 -6
- package/nested-list/esm2020/nested-list-keyboard.service.mjs +9 -5
- package/nested-list/esm2020/nested-list-popover/nested-list-popover.component.mjs +1 -1
- package/nested-list/esm2020/prepared-nested-list/prepared-nested-list.component.mjs +1 -1
- package/nested-list/fesm2015/fundamental-ngx-core-nested-list.mjs +185 -29
- package/nested-list/fesm2015/fundamental-ngx-core-nested-list.mjs.map +1 -1
- package/nested-list/fesm2020/fundamental-ngx-core-nested-list.mjs +181 -28
- package/nested-list/fesm2020/fundamental-ngx-core-nested-list.mjs.map +1 -1
- package/nested-list/nested-content/nested-list-content.directive.d.ts +4 -0
- package/nested-list/nested-item/nested-item.directive.d.ts +20 -3
- package/nested-list/nested-link/nested-link.directive.d.ts +9 -4
- package/nested-list/nested-list/nested-list.directive.d.ts +22 -2
- package/nested-list/nested-list-directives.d.ts +8 -1
- package/nested-list/package.json +1 -1
- package/notification/package.json +1 -1
- package/object-identifier/package.json +1 -1
- package/object-marker/package.json +1 -1
- package/object-number/package.json +1 -1
- package/object-status/package.json +1 -1
- package/package.json +1 -1
- package/pagination/package.json +1 -1
- package/panel/package.json +1 -1
- package/popover/package.json +1 -1
- package/product-switch/package.json +1 -1
- package/progress-indicator/package.json +1 -1
- package/quick-view/package.json +1 -1
- package/radio/esm2020/radio-button/radio-button.component.mjs +3 -3
- package/radio/fesm2015/fundamental-ngx-core-radio.mjs +2 -2
- package/radio/fesm2015/fundamental-ngx-core-radio.mjs.map +1 -1
- package/radio/fesm2020/fundamental-ngx-core-radio.mjs +2 -2
- package/radio/fesm2020/fundamental-ngx-core-radio.mjs.map +1 -1
- package/radio/package.json +1 -1
- package/rating-indicator/package.json +1 -1
- package/resizable-card-layout/package.json +1 -1
- package/scroll-spy/package.json +1 -1
- package/scrollbar/package.json +1 -1
- package/segmented-button/package.json +1 -1
- package/select/package.json +1 -1
- package/shared/package.json +1 -1
- package/shellbar/package.json +1 -1
- package/side-navigation/package.json +1 -1
- package/slider/package.json +1 -1
- package/split-button/package.json +1 -1
- package/splitter/package.json +1 -1
- package/status-indicator/package.json +1 -1
- package/step-input/package.json +1 -1
- package/switch/package.json +1 -1
- package/table/package.json +1 -1
- package/tabs/package.json +1 -1
- package/text/package.json +1 -1
- package/tile/package.json +1 -1
- package/time/package.json +1 -1
- package/time-picker/package.json +1 -1
- package/timeline/package.json +1 -1
- package/title/package.json +1 -1
- package/token/package.json +1 -1
- package/toolbar/package.json +1 -1
- package/tree/package.json +1 -1
- package/upload-collection/package.json +1 -1
- package/utils/package.json +1 -1
- package/vertical-navigation/package.json +1 -1
- package/wizard/package.json +1 -1
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import { ChangeDetectorRef, ContentChildren, Directive, ElementRef, forwardRef, HostBinding, Input, Optional, QueryList } from '@angular/core';
|
|
1
|
+
import { ChangeDetectorRef, ContentChild, ContentChildren, Directive, ElementRef, forwardRef, HostBinding, Input, Optional, QueryList } from '@angular/core';
|
|
2
|
+
import { Subscription } from 'rxjs';
|
|
3
|
+
import { ContentDensityService } from '@fundamental-ngx/core/utils';
|
|
2
4
|
import { NestedListStateService } from '../nested-list-state.service';
|
|
3
5
|
import { NestedItemDirective } from '../nested-item/nested-item.directive';
|
|
4
6
|
import { NestedItemService } from '../nested-item/nested-item.service';
|
|
5
7
|
import { NestedListKeyboardService } from '../nested-list-keyboard.service';
|
|
6
|
-
import {
|
|
7
|
-
import { ContentDensityService } from '@fundamental-ngx/core/utils';
|
|
8
|
+
import { NestedListHeaderDirective } from '../nested-list-directives';
|
|
8
9
|
import * as i0 from "@angular/core";
|
|
9
10
|
import * as i1 from "../nested-item/nested-item.service";
|
|
10
11
|
import * as i2 from "../nested-list-state.service";
|
|
@@ -21,12 +22,26 @@ export class NestedListDirective {
|
|
|
21
22
|
this._contentDensityService = _contentDensityService;
|
|
22
23
|
/** In case the user wants to no use icons for items in this list */
|
|
23
24
|
this.textOnly = false;
|
|
25
|
+
/** Aria defines role description for the Nested List Tree. */
|
|
26
|
+
this.ariaRoledescriptionTree = 'Navigation List Tree';
|
|
27
|
+
/** Aria defines role description for the Nested List MenuBar. */
|
|
28
|
+
this.ariaRoledescriptionMenuBar = 'Navigation List Menu Bar';
|
|
29
|
+
/** Aria defines aria label for the selected item when the list with disabled selection. */
|
|
30
|
+
this.ariaLabelSelected = 'Selected';
|
|
24
31
|
/** @hidden */
|
|
25
32
|
this.fdNestedListItemClass = true;
|
|
26
33
|
/** @hidden */
|
|
27
34
|
this.hidden = false;
|
|
28
35
|
/** @hidden */
|
|
29
36
|
this._subscriptions = new Subscription();
|
|
37
|
+
/** @hidden */
|
|
38
|
+
this._role = 'tree';
|
|
39
|
+
/** @hidden */
|
|
40
|
+
this._ariaRoledescription = this.ariaRoledescriptionTree;
|
|
41
|
+
/** @hidden */
|
|
42
|
+
this._ariaHaspopup = null;
|
|
43
|
+
/** @hidden */
|
|
44
|
+
this._tabindex = '-1';
|
|
30
45
|
if (this._nestedItemService) {
|
|
31
46
|
this._nestedItemService.list = this;
|
|
32
47
|
}
|
|
@@ -50,7 +65,12 @@ export class NestedListDirective {
|
|
|
50
65
|
if (this._nestedListStateService.condensed) {
|
|
51
66
|
nestedLevel = Math.min(...[nestedLevel, 2]);
|
|
52
67
|
}
|
|
53
|
-
this.
|
|
68
|
+
this._setAccessibilityProperties(nestedLevel);
|
|
69
|
+
this.nestedItems.changes.subscribe(() => {
|
|
70
|
+
this._nestedListKeyboardService.refresh$.next();
|
|
71
|
+
this._setAriaAttributes(nestedLevel);
|
|
72
|
+
});
|
|
73
|
+
this._setAriaAttributes(nestedLevel);
|
|
54
74
|
this._handleNestedLevel(nestedLevel);
|
|
55
75
|
}
|
|
56
76
|
/** @hidden */
|
|
@@ -78,9 +98,33 @@ export class NestedListDirective {
|
|
|
78
98
|
const filteredParentElements = parentElements.filter((_element) => _element.hasAttribute('fd-nested-list'));
|
|
79
99
|
return filteredParentElements.length;
|
|
80
100
|
}
|
|
101
|
+
/** @hidden */
|
|
102
|
+
_setAriaAttributes(level) {
|
|
103
|
+
this.nestedItems.forEach((item, i) => {
|
|
104
|
+
item._ariaLevel = level;
|
|
105
|
+
item.linkItem.ariaDescribedby = this._nestedListHeader && this._nestedListHeader.id;
|
|
106
|
+
item.linkItem._ariaLabel = `
|
|
107
|
+
Tree Item ${item.linkItem.getTitle()} ${i + 1} of ${this.nestedItems.length}
|
|
108
|
+
${!this._nestedListStateService.selectable && item.linkItem.selected ? this.ariaLabelSelected : ''}`;
|
|
109
|
+
});
|
|
110
|
+
this._changeDetectionRef.detectChanges();
|
|
111
|
+
}
|
|
112
|
+
/** @hidden */
|
|
113
|
+
_setAccessibilityProperties(level) {
|
|
114
|
+
if (this._nestedListStateService.condensed && level === 1) {
|
|
115
|
+
this._ariaRoledescription = this.ariaRoledescriptionMenuBar;
|
|
116
|
+
}
|
|
117
|
+
if (level > 1 || (this._nestedItemService?.popover && !this._nestedListStateService.condensed)) {
|
|
118
|
+
this._role = 'group';
|
|
119
|
+
this._ariaRoledescription = null;
|
|
120
|
+
}
|
|
121
|
+
if (this._nestedItemService?.popover) {
|
|
122
|
+
this._ariaHaspopup = 'tree';
|
|
123
|
+
}
|
|
124
|
+
}
|
|
81
125
|
}
|
|
82
126
|
NestedListDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: NestedListDirective, deps: [{ token: i1.NestedItemService, optional: true }, { token: i2.NestedListStateService }, { token: i3.NestedListKeyboardService }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i4.ContentDensityService, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
|
|
83
|
-
NestedListDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.4", type: NestedListDirective, selector: "[fdNestedList], [fd-nested-list]", inputs: { textOnly: "textOnly", compact: "compact" }, host: { properties: { "class.fd-nested-list--text-only": "this.textOnly", "class.fd-nested-list--compact": "this.compact", "class.fd-nested-list": "this.fdNestedListItemClass", "attr.aria-hidden": "this.hidden" } }, queries: [{ propertyName: "nestedItems", predicate: i0.forwardRef(function () { return NestedItemDirective; }) }], ngImport: i0 });
|
|
127
|
+
NestedListDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.4", type: NestedListDirective, selector: "[fdNestedList], [fd-nested-list]", inputs: { textOnly: "textOnly", compact: "compact", ariaRoledescriptionTree: "ariaRoledescriptionTree", ariaRoledescriptionMenuBar: "ariaRoledescriptionMenuBar", ariaLabelSelected: "ariaLabelSelected" }, host: { properties: { "class.fd-nested-list--text-only": "this.textOnly", "class.fd-nested-list--compact": "this.compact", "class.fd-nested-list": "this.fdNestedListItemClass", "attr.aria-hidden": "this.hidden", "attr.role": "this._role", "attr.aria-roledescription": "this._ariaRoledescription", "attr.aria-haspopup": "this._ariaHaspopup", "attr.tabindex": "this._tabindex" } }, queries: [{ propertyName: "_nestedListHeader", first: true, predicate: NestedListHeaderDirective, descendants: true }, { propertyName: "nestedItems", predicate: i0.forwardRef(function () { return NestedItemDirective; }) }], ngImport: i0 });
|
|
84
128
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: NestedListDirective, decorators: [{
|
|
85
129
|
type: Directive,
|
|
86
130
|
args: [{
|
|
@@ -100,6 +144,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImpor
|
|
|
100
144
|
}, {
|
|
101
145
|
type: HostBinding,
|
|
102
146
|
args: ['class.fd-nested-list--compact']
|
|
147
|
+
}], ariaRoledescriptionTree: [{
|
|
148
|
+
type: Input
|
|
149
|
+
}], ariaRoledescriptionMenuBar: [{
|
|
150
|
+
type: Input
|
|
151
|
+
}], ariaLabelSelected: [{
|
|
152
|
+
type: Input
|
|
103
153
|
}], fdNestedListItemClass: [{
|
|
104
154
|
type: HostBinding,
|
|
105
155
|
args: ['class.fd-nested-list']
|
|
@@ -109,5 +159,20 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImpor
|
|
|
109
159
|
}], nestedItems: [{
|
|
110
160
|
type: ContentChildren,
|
|
111
161
|
args: [forwardRef(() => NestedItemDirective)]
|
|
162
|
+
}], _nestedListHeader: [{
|
|
163
|
+
type: ContentChild,
|
|
164
|
+
args: [NestedListHeaderDirective]
|
|
165
|
+
}], _role: [{
|
|
166
|
+
type: HostBinding,
|
|
167
|
+
args: ['attr.role']
|
|
168
|
+
}], _ariaRoledescription: [{
|
|
169
|
+
type: HostBinding,
|
|
170
|
+
args: ['attr.aria-roledescription']
|
|
171
|
+
}], _ariaHaspopup: [{
|
|
172
|
+
type: HostBinding,
|
|
173
|
+
args: ['attr.aria-haspopup']
|
|
174
|
+
}], _tabindex: [{
|
|
175
|
+
type: HostBinding,
|
|
176
|
+
args: ['attr.tabindex']
|
|
112
177
|
}] } });
|
|
113
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmVzdGVkLWxpc3QuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3NyYy9saWIvbmVzdGVkLWxpc3QvbmVzdGVkLWxpc3QvbmVzdGVkLWxpc3QuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFSCxpQkFBaUIsRUFDakIsZUFBZSxFQUNmLFNBQVMsRUFDVCxVQUFVLEVBQ1YsVUFBVSxFQUNWLFdBQVcsRUFDWCxLQUFLLEVBR0wsUUFBUSxFQUNSLFNBQVMsRUFDWixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUN0RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUMzRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUN2RSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUU1RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDOzs7Ozs7QUFNcEUsTUFBTSxPQUFPLG1CQUFtQjtJQThCNUIsY0FBYztJQUNkLFlBQ3dCLGtCQUFxQyxFQUNqRCx1QkFBK0MsRUFDL0MsMEJBQXFELEVBQ3JELFdBQXVCLEVBQ3ZCLG1CQUFzQyxFQUMxQixzQkFBNkM7UUFMN0MsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFtQjtRQUNqRCw0QkFBdUIsR0FBdkIsdUJBQXVCLENBQXdCO1FBQy9DLCtCQUEwQixHQUExQiwwQkFBMEIsQ0FBMkI7UUFDckQsZ0JBQVcsR0FBWCxXQUFXLENBQVk7UUFDdkIsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFtQjtRQUMxQiwyQkFBc0IsR0FBdEIsc0JBQXNCLENBQXVCO1FBcENyRSxvRUFBb0U7UUFH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QVc7dUJBQUMsc0JBQXNCO2dCQUtuQyxNQUFNO3NCQURMLFdBQVc7dUJBQUMsa0JBQWtCO2dCQVMvQixXQUFXO3NCQURWLGVBQWU7dUJBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLG1CQUFtQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBBZnRlckNvbnRlbnRJbml0LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbnRlbnRDaGlsZHJlbixcbiAgICBEaXJlY3RpdmUsXG4gICAgRWxlbWVudFJlZixcbiAgICBmb3J3YXJkUmVmLFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIElucHV0LFxuICAgIE9uRGVzdHJveSxcbiAgICBPbkluaXQsXG4gICAgT3B0aW9uYWwsXG4gICAgUXVlcnlMaXN0XG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmVzdGVkTGlzdFN0YXRlU2VydmljZSB9IGZyb20gJy4uL25lc3RlZC1saXN0LXN0YXRlLnNlcnZpY2UnO1xuaW1wb3J0IHsgTmVzdGVkSXRlbURpcmVjdGl2ZSB9IGZyb20gJy4uL25lc3RlZC1pdGVtL25lc3RlZC1pdGVtLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBOZXN0ZWRJdGVtU2VydmljZSB9IGZyb20gJy4uL25lc3RlZC1pdGVtL25lc3RlZC1pdGVtLnNlcnZpY2UnO1xuaW1wb3J0IHsgTmVzdGVkTGlzdEtleWJvYXJkU2VydmljZSB9IGZyb20gJy4uL25lc3RlZC1saXN0LWtleWJvYXJkLnNlcnZpY2UnO1xuaW1wb3J0IHsgTmVzdGVkTGlzdEludGVyZmFjZSB9IGZyb20gJy4vbmVzdGVkLWxpc3QuaW50ZXJmYWNlJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQ29udGVudERlbnNpdHlTZXJ2aWNlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL3V0aWxzJztcbmltcG9ydCB7IE51bGxhYmxlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL3NoYXJlZCc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW2ZkTmVzdGVkTGlzdF0sIFtmZC1uZXN0ZWQtbGlzdF0nXG59KVxuZXhwb3J0IGNsYXNzIE5lc3RlZExpc3REaXJlY3RpdmUgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0LCBOZXN0ZWRMaXN0SW50ZXJmYWNlLCBPbkluaXQsIE9uRGVzdHJveSB7XG4gICAgLyoqIEluIGNhc2UgdGhlIHVzZXIgd2FudHMgdG8gbm8gdXNlIGljb25zIGZvciBpdGVtcyBpbiB0aGlzIGxpc3QgKi9cbiAgICBASW5wdXQoKVxuICAgIEBIb3N0QmluZGluZygnY2xhc3MuZmQtbmVzdGVkLWxpc3QtLXRleHQtb25seScpXG4gICAgdGV4dE9ubHkgPSBmYWxzZTtcblxuICAgIC8qKiBJbiBjYXNlIHRoZSB1c2VyIHdhbnRzIHB1dCBjb21wYWN0IG1vZGUgaW4gdGhpcyBsaXN0ICovXG4gICAgQElucHV0KClcbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmZkLW5lc3RlZC1saXN0LS1jb21wYWN0JylcbiAgICBjb21wYWN0OiBOdWxsYWJsZTxib29sZWFuPjtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5mZC1uZXN0ZWQtbGlzdCcpXG4gICAgZmROZXN0ZWRMaXN0SXRlbUNsYXNzID0gdHJ1ZTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQEhvc3RCaW5kaW5nKCdhdHRyLmFyaWEtaGlkZGVuJylcbiAgICBoaWRkZW4gPSBmYWxzZTtcblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKiBUaGlzIHZhcmlhYmxlIGlzIG1vc3RseSB0byBrZWVwIHRyYWNrIG9mIHRoaXMgbGlzdCdzIGNoaWxkcmVuLiBUaGVyZSBpcyBub3QgdXNhZ2Ugb2YgaXQgaW5zaWRlIHRoaXMgZGlyZWN0aXZlLFxuICAgICAqIGJ1dCBpdCdzIHVzZWQgYnkgc2VydmljZXMgYW5kIE5lc3RlZEl0ZW1EaXJlY3RpdmUgYnkgaXRzZWxmLFxuICAgICAqL1xuICAgIEBDb250ZW50Q2hpbGRyZW4oZm9yd2FyZFJlZigoKSA9PiBOZXN0ZWRJdGVtRGlyZWN0aXZlKSlcbiAgICBuZXN0ZWRJdGVtczogUXVlcnlMaXN0PE5lc3RlZEl0ZW1EaXJlY3RpdmU+O1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9zdWJzY3JpcHRpb25zID0gbmV3IFN1YnNjcmlwdGlvbigpO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQE9wdGlvbmFsKCkgcHJpdmF0ZSBfbmVzdGVkSXRlbVNlcnZpY2U6IE5lc3RlZEl0ZW1TZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIF9uZXN0ZWRMaXN0U3RhdGVTZXJ2aWNlOiBOZXN0ZWRMaXN0U3RhdGVTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIF9uZXN0ZWRMaXN0S2V5Ym9hcmRTZXJ2aWNlOiBOZXN0ZWRMaXN0S2V5Ym9hcmRTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIF9lbGVtZW50UmVmOiBFbGVtZW50UmVmLFxuICAgICAgICBwcml2YXRlIF9jaGFuZ2VEZXRlY3Rpb25SZWY6IENoYW5nZURldGVjdG9yUmVmLFxuICAgICAgICBAT3B0aW9uYWwoKSBwcml2YXRlIF9jb250ZW50RGVuc2l0eVNlcnZpY2U6IENvbnRlbnREZW5zaXR5U2VydmljZVxuICAgICkge1xuICAgICAgICBpZiAodGhpcy5fbmVzdGVkSXRlbVNlcnZpY2UpIHtcbiAgICAgICAgICAgIHRoaXMuX25lc3RlZEl0ZW1TZXJ2aWNlLmxpc3QgPSB0aGlzO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuY29tcGFjdCA9PT0gdW5kZWZpbmVkICYmIHRoaXMuX2NvbnRlbnREZW5zaXR5U2VydmljZSkge1xuICAgICAgICAgICAgdGhpcy5fc3Vic2NyaXB0aW9ucy5hZGQoXG4gICAgICAgICAgICAgICAgdGhpcy5fY29udGVudERlbnNpdHlTZXJ2aWNlLl9pc0NvbXBhY3REZW5zaXR5LnN1YnNjcmliZSgoaXNDb21wYWN0KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY29tcGFjdCA9IGlzQ29tcGFjdDtcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3N1YnNjcmlwdGlvbnMudW5zdWJzY3JpYmUoKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgbGV0IG5lc3RlZExldmVsOiBudW1iZXIgPSB0aGlzLl9nZXROZXN0ZWRMZXZlbCgpO1xuICAgICAgICAvKiogSWYgdGhlcmUgaXMgY29uZGVuc2VkIG1vZGUsIG1heGltdW0gMm5kIGxldmVsIGNsYXNzIG9mIG5lc3QgY2FuIGJlIGFkZGVkICovXG4gICAgICAgIGlmICh0aGlzLl9uZXN0ZWRMaXN0U3RhdGVTZXJ2aWNlLmNvbmRlbnNlZCkge1xuICAgICAgICAgICAgbmVzdGVkTGV2ZWwgPSBNYXRoLm1pbiguLi5bbmVzdGVkTGV2ZWwsIDJdKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLm5lc3RlZEl0ZW1zLmNoYW5nZXMuc3Vic2NyaWJlKCgpID0+IHRoaXMuX25lc3RlZExpc3RLZXlib2FyZFNlcnZpY2UucmVmcmVzaCQubmV4dCgpKTtcbiAgICAgICAgdGhpcy5faGFuZGxlTmVzdGVkTGV2ZWwobmVzdGVkTGV2ZWwpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgZGV0ZWN0Q2hhbmdlcygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0aW9uUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfaGFuZGxlTmVzdGVkTGV2ZWwobGV2ZWw6IG51bWJlcik6IHZvaWQge1xuICAgICAgICAvKiogQWRkaW5nIGNsYXNzIHdpdGggdGhlIG5lc3RlZCBsZXZlbCAqL1xuICAgICAgICB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuY2xhc3NMaXN0LmFkZCgnbGV2ZWwtJyArIGxldmVsKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICogTWV0aG9kLCB0aGF0IGNoZWNrcyBob3cgZGVlcCBpcyB0aGUgbGlzdCBlbGVtZW50XG4gICAgICovXG4gICAgcHJpdmF0ZSBfZ2V0TmVzdGVkTGV2ZWwoKTogbnVtYmVyIHtcbiAgICAgICAgbGV0IGVsZW1lbnQgPSB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XG4gICAgICAgIGNvbnN0IHBhcmVudEVsZW1lbnRzOiBFbGVtZW50W10gPSBbXTtcblxuICAgICAgICAvKiogTWV0aG9kIHRoYXQgZ2F0aGVycyBhbGwgb2YgdGhlIHBhcmVudE5vZGUgZWxlbWVudHMgb2YgY3VycmVudCBOZXN0ZWRMaXN0RGlyZWN0aXZlIGVsZW1lbnQgKi9cbiAgICAgICAgd2hpbGUgKGVsZW1lbnQucGFyZW50Tm9kZSkge1xuICAgICAgICAgICAgcGFyZW50RWxlbWVudHMudW5zaGlmdChlbGVtZW50KTtcbiAgICAgICAgICAgIGVsZW1lbnQgPSBlbGVtZW50LnBhcmVudE5vZGU7XG4gICAgICAgIH1cblxuICAgICAgICAvKiogRmlsdGVyIG9ubHkgZWxlbWVudHMsIHRoYXQgaGFzIGBmZC1uZXN0ZWQtbGlzdGAgZGlyZWN0aXZlIGF0dHJpYnV0ZSAqL1xuICAgICAgICBjb25zdCBmaWx0ZXJlZFBhcmVudEVsZW1lbnRzID0gcGFyZW50RWxlbWVudHMuZmlsdGVyKChfZWxlbWVudCkgPT4gX2VsZW1lbnQuaGFzQXR0cmlidXRlKCdmZC1uZXN0ZWQtbGlzdCcpKTtcbiAgICAgICAgcmV0dXJuIGZpbHRlcmVkUGFyZW50RWxlbWVudHMubGVuZ3RoO1xuICAgIH1cbn1cbiJdfQ==
|
|
178
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmVzdGVkLWxpc3QuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3NyYy9saWIvbmVzdGVkLWxpc3QvbmVzdGVkLWxpc3QvbmVzdGVkLWxpc3QuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFSCxpQkFBaUIsRUFDakIsWUFBWSxFQUNaLGVBQWUsRUFDZixTQUFTLEVBQ1QsVUFBVSxFQUNWLFVBQVUsRUFDVixXQUFXLEVBQ1gsS0FBSyxFQUdMLFFBQVEsRUFDUixTQUFTLEVBQ1osTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUVwQyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUVwRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUN0RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUMzRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUN2RSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUU1RSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7Ozs7O0FBTXRFLE1BQU0sT0FBTyxtQkFBbUI7SUE4RDVCLGNBQWM7SUFDZCxZQUN3QixrQkFBcUMsRUFDakQsdUJBQStDLEVBQy9DLDBCQUFxRCxFQUNyRCxXQUF1QixFQUN2QixtQkFBc0MsRUFDMUIsc0JBQTZDO1FBTDdDLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBbUI7UUFDakQsNEJBQXVCLEdBQXZCLHVCQUF1QixDQUF3QjtRQUMvQywrQkFBMEIsR0FBMUIsMEJBQTBCLENBQTJCO1FBQ3JELGdCQUFXLEdBQVgsV0FBVyxDQUFZO1FBQ3ZCLHdCQUFtQixHQUFuQixtQkFBbUIs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QUFhO3NCQURwQixXQUFXO3VCQUFDLG9CQUFvQjtnQkFLekIsU0FBUztzQkFEaEIsV0FBVzt1QkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBBZnRlckNvbnRlbnRJbml0LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbnRlbnRDaGlsZCxcbiAgICBDb250ZW50Q2hpbGRyZW4sXG4gICAgRGlyZWN0aXZlLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgZm9yd2FyZFJlZixcbiAgICBIb3N0QmluZGluZyxcbiAgICBJbnB1dCxcbiAgICBPbkRlc3Ryb3ksXG4gICAgT25Jbml0LFxuICAgIE9wdGlvbmFsLFxuICAgIFF1ZXJ5TGlzdFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBDb250ZW50RGVuc2l0eVNlcnZpY2UgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvdXRpbHMnO1xuXG5pbXBvcnQgeyBOZXN0ZWRMaXN0U3RhdGVTZXJ2aWNlIH0gZnJvbSAnLi4vbmVzdGVkLWxpc3Qtc3RhdGUuc2VydmljZSc7XG5pbXBvcnQgeyBOZXN0ZWRJdGVtRGlyZWN0aXZlIH0gZnJvbSAnLi4vbmVzdGVkLWl0ZW0vbmVzdGVkLWl0ZW0uZGlyZWN0aXZlJztcbmltcG9ydCB7IE5lc3RlZEl0ZW1TZXJ2aWNlIH0gZnJvbSAnLi4vbmVzdGVkLWl0ZW0vbmVzdGVkLWl0ZW0uc2VydmljZSc7XG5pbXBvcnQgeyBOZXN0ZWRMaXN0S2V5Ym9hcmRTZXJ2aWNlIH0gZnJvbSAnLi4vbmVzdGVkLWxpc3Qta2V5Ym9hcmQuc2VydmljZSc7XG5pbXBvcnQgeyBOZXN0ZWRMaXN0SW50ZXJmYWNlIH0gZnJvbSAnLi9uZXN0ZWQtbGlzdC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgTmVzdGVkTGlzdEhlYWRlckRpcmVjdGl2ZSB9IGZyb20gJy4uL25lc3RlZC1saXN0LWRpcmVjdGl2ZXMnO1xuaW1wb3J0IHsgTnVsbGFibGUgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvc2hhcmVkJztcblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbZmROZXN0ZWRMaXN0XSwgW2ZkLW5lc3RlZC1saXN0XSdcbn0pXG5leHBvcnQgY2xhc3MgTmVzdGVkTGlzdERpcmVjdGl2ZSBpbXBsZW1lbnRzIEFmdGVyQ29udGVudEluaXQsIE5lc3RlZExpc3RJbnRlcmZhY2UsIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgICAvKiogSW4gY2FzZSB0aGUgdXNlciB3YW50cyB0byBubyB1c2UgaWNvbnMgZm9yIGl0ZW1zIGluIHRoaXMgbGlzdCAqL1xuICAgIEBJbnB1dCgpXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5mZC1uZXN0ZWQtbGlzdC0tdGV4dC1vbmx5JylcbiAgICB0ZXh0T25seSA9IGZhbHNlO1xuXG4gICAgLyoqIEluIGNhc2UgdGhlIHVzZXIgd2FudHMgcHV0IGNvbXBhY3QgbW9kZSBpbiB0aGlzIGxpc3QgKi9cbiAgICBASW5wdXQoKVxuICAgIEBIb3N0QmluZGluZygnY2xhc3MuZmQtbmVzdGVkLWxpc3QtLWNvbXBhY3QnKVxuICAgIGNvbXBhY3Q6IE51bGxhYmxlPGJvb2xlYW4+O1xuXG4gICAgLyoqIEFyaWEgZGVmaW5lcyByb2xlIGRlc2NyaXB0aW9uIGZvciB0aGUgTmVzdGVkIExpc3QgVHJlZS4gKi9cbiAgICBASW5wdXQoKVxuICAgIGFyaWFSb2xlZGVzY3JpcHRpb25UcmVlID0gJ05hdmlnYXRpb24gTGlzdCBUcmVlJztcblxuICAgIC8qKiBBcmlhIGRlZmluZXMgcm9sZSBkZXNjcmlwdGlvbiBmb3IgdGhlIE5lc3RlZCBMaXN0IE1lbnVCYXIuICovXG4gICAgQElucHV0KClcbiAgICBhcmlhUm9sZWRlc2NyaXB0aW9uTWVudUJhciA9ICdOYXZpZ2F0aW9uIExpc3QgTWVudSBCYXInO1xuXG4gICAgLyoqIEFyaWEgZGVmaW5lcyBhcmlhIGxhYmVsIGZvciB0aGUgc2VsZWN0ZWQgaXRlbSB3aGVuIHRoZSBsaXN0IHdpdGggZGlzYWJsZWQgc2VsZWN0aW9uLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgYXJpYUxhYmVsU2VsZWN0ZWQgPSAnU2VsZWN0ZWQnO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmZkLW5lc3RlZC1saXN0JylcbiAgICBmZE5lc3RlZExpc3RJdGVtQ2xhc3MgPSB0cnVlO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIuYXJpYS1oaWRkZW4nKVxuICAgIGhpZGRlbiA9IGZhbHNlO1xuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIFRoaXMgdmFyaWFibGUgaXMgbW9zdGx5IHRvIGtlZXAgdHJhY2sgb2YgdGhpcyBsaXN0J3MgY2hpbGRyZW4uIFRoZXJlIGlzIG5vdCB1c2FnZSBvZiBpdCBpbnNpZGUgdGhpcyBkaXJlY3RpdmUsXG4gICAgICogYnV0IGl0J3MgdXNlZCBieSBzZXJ2aWNlcyBhbmQgTmVzdGVkSXRlbURpcmVjdGl2ZSBieSBpdHNlbGYsXG4gICAgICovXG4gICAgQENvbnRlbnRDaGlsZHJlbihmb3J3YXJkUmVmKCgpID0+IE5lc3RlZEl0ZW1EaXJlY3RpdmUpKVxuICAgIG5lc3RlZEl0ZW1zOiBRdWVyeUxpc3Q8TmVzdGVkSXRlbURpcmVjdGl2ZT47XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBDb250ZW50Q2hpbGQoTmVzdGVkTGlzdEhlYWRlckRpcmVjdGl2ZSlcbiAgICBwcml2YXRlIF9uZXN0ZWRMaXN0SGVhZGVyOiBOZXN0ZWRMaXN0SGVhZGVyRGlyZWN0aXZlO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9zdWJzY3JpcHRpb25zID0gbmV3IFN1YnNjcmlwdGlvbigpO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIucm9sZScpXG4gICAgcHJpdmF0ZSBfcm9sZSA9ICd0cmVlJztcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQEhvc3RCaW5kaW5nKCdhdHRyLmFyaWEtcm9sZWRlc2NyaXB0aW9uJylcbiAgICBwcml2YXRlIF9hcmlhUm9sZWRlc2NyaXB0aW9uOiBOdWxsYWJsZTxzdHJpbmc+ID0gdGhpcy5hcmlhUm9sZWRlc2NyaXB0aW9uVHJlZTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQEhvc3RCaW5kaW5nKCdhdHRyLmFyaWEtaGFzcG9wdXAnKVxuICAgIHByaXZhdGUgX2FyaWFIYXNwb3B1cDogTnVsbGFibGU8c3RyaW5nPiA9IG51bGw7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBIb3N0QmluZGluZygnYXR0ci50YWJpbmRleCcpXG4gICAgcHJpdmF0ZSBfdGFiaW5kZXggPSAnLTEnO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQE9wdGlvbmFsKCkgcHJpdmF0ZSBfbmVzdGVkSXRlbVNlcnZpY2U6IE5lc3RlZEl0ZW1TZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIF9uZXN0ZWRMaXN0U3RhdGVTZXJ2aWNlOiBOZXN0ZWRMaXN0U3RhdGVTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIF9uZXN0ZWRMaXN0S2V5Ym9hcmRTZXJ2aWNlOiBOZXN0ZWRMaXN0S2V5Ym9hcmRTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIF9lbGVtZW50UmVmOiBFbGVtZW50UmVmLFxuICAgICAgICBwcml2YXRlIF9jaGFuZ2VEZXRlY3Rpb25SZWY6IENoYW5nZURldGVjdG9yUmVmLFxuICAgICAgICBAT3B0aW9uYWwoKSBwcml2YXRlIF9jb250ZW50RGVuc2l0eVNlcnZpY2U6IENvbnRlbnREZW5zaXR5U2VydmljZVxuICAgICkge1xuICAgICAgICBpZiAodGhpcy5fbmVzdGVkSXRlbVNlcnZpY2UpIHtcbiAgICAgICAgICAgIHRoaXMuX25lc3RlZEl0ZW1TZXJ2aWNlLmxpc3QgPSB0aGlzO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuY29tcGFjdCA9PT0gdW5kZWZpbmVkICYmIHRoaXMuX2NvbnRlbnREZW5zaXR5U2VydmljZSkge1xuICAgICAgICAgICAgdGhpcy5fc3Vic2NyaXB0aW9ucy5hZGQoXG4gICAgICAgICAgICAgICAgdGhpcy5fY29udGVudERlbnNpdHlTZXJ2aWNlLl9pc0NvbXBhY3REZW5zaXR5LnN1YnNjcmliZSgoaXNDb21wYWN0KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY29tcGFjdCA9IGlzQ29tcGFjdDtcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3N1YnNjcmlwdGlvbnMudW5zdWJzY3JpYmUoKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgbGV0IG5lc3RlZExldmVsOiBudW1iZXIgPSB0aGlzLl9nZXROZXN0ZWRMZXZlbCgpO1xuICAgICAgICAvKiogSWYgdGhlcmUgaXMgY29uZGVuc2VkIG1vZGUsIG1heGltdW0gMm5kIGxldmVsIGNsYXNzIG9mIG5lc3QgY2FuIGJlIGFkZGVkICovXG4gICAgICAgIGlmICh0aGlzLl9uZXN0ZWRMaXN0U3RhdGVTZXJ2aWNlLmNvbmRlbnNlZCkge1xuICAgICAgICAgICAgbmVzdGVkTGV2ZWwgPSBNYXRoLm1pbiguLi5bbmVzdGVkTGV2ZWwsIDJdKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuX3NldEFjY2Vzc2liaWxpdHlQcm9wZXJ0aWVzKG5lc3RlZExldmVsKTtcblxuICAgICAgICB0aGlzLm5lc3RlZEl0ZW1zLmNoYW5nZXMuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuX25lc3RlZExpc3RLZXlib2FyZFNlcnZpY2UucmVmcmVzaCQubmV4dCgpO1xuICAgICAgICAgICAgdGhpcy5fc2V0QXJpYUF0dHJpYnV0ZXMobmVzdGVkTGV2ZWwpO1xuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLl9zZXRBcmlhQXR0cmlidXRlcyhuZXN0ZWRMZXZlbCk7XG4gICAgICAgIHRoaXMuX2hhbmRsZU5lc3RlZExldmVsKG5lc3RlZExldmVsKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGRldGVjdENoYW5nZXMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2NoYW5nZURldGVjdGlvblJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2hhbmRsZU5lc3RlZExldmVsKGxldmVsOiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgLyoqIEFkZGluZyBjbGFzcyB3aXRoIHRoZSBuZXN0ZWQgbGV2ZWwgKi9cbiAgICAgICAgdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmNsYXNzTGlzdC5hZGQoJ2xldmVsLScgKyBsZXZlbCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIE1ldGhvZCwgdGhhdCBjaGVja3MgaG93IGRlZXAgaXMgdGhlIGxpc3QgZWxlbWVudFxuICAgICAqL1xuICAgIHByaXZhdGUgX2dldE5lc3RlZExldmVsKCk6IG51bWJlciB7XG4gICAgICAgIGxldCBlbGVtZW50ID0gdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xuICAgICAgICBjb25zdCBwYXJlbnRFbGVtZW50czogRWxlbWVudFtdID0gW107XG5cbiAgICAgICAgLyoqIE1ldGhvZCB0aGF0IGdhdGhlcnMgYWxsIG9mIHRoZSBwYXJlbnROb2RlIGVsZW1lbnRzIG9mIGN1cnJlbnQgTmVzdGVkTGlzdERpcmVjdGl2ZSBlbGVtZW50ICovXG4gICAgICAgIHdoaWxlIChlbGVtZW50LnBhcmVudE5vZGUpIHtcbiAgICAgICAgICAgIHBhcmVudEVsZW1lbnRzLnVuc2hpZnQoZWxlbWVudCk7XG4gICAgICAgICAgICBlbGVtZW50ID0gZWxlbWVudC5wYXJlbnROb2RlO1xuICAgICAgICB9XG5cbiAgICAgICAgLyoqIEZpbHRlciBvbmx5IGVsZW1lbnRzLCB0aGF0IGhhcyBgZmQtbmVzdGVkLWxpc3RgIGRpcmVjdGl2ZSBhdHRyaWJ1dGUgKi9cbiAgICAgICAgY29uc3QgZmlsdGVyZWRQYXJlbnRFbGVtZW50cyA9IHBhcmVudEVsZW1lbnRzLmZpbHRlcigoX2VsZW1lbnQpID0+IF9lbGVtZW50Lmhhc0F0dHJpYnV0ZSgnZmQtbmVzdGVkLWxpc3QnKSk7XG4gICAgICAgIHJldHVybiBmaWx0ZXJlZFBhcmVudEVsZW1lbnRzLmxlbmd0aDtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX3NldEFyaWFBdHRyaWJ1dGVzKGxldmVsOiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5uZXN0ZWRJdGVtcy5mb3JFYWNoKChpdGVtLCBpKSA9PiB7XG4gICAgICAgICAgICBpdGVtLl9hcmlhTGV2ZWwgPSBsZXZlbDtcbiAgICAgICAgICAgIGl0ZW0ubGlua0l0ZW0uYXJpYURlc2NyaWJlZGJ5ID0gdGhpcy5fbmVzdGVkTGlzdEhlYWRlciAmJiB0aGlzLl9uZXN0ZWRMaXN0SGVhZGVyLmlkO1xuICAgICAgICAgICAgaXRlbS5saW5rSXRlbS5fYXJpYUxhYmVsID0gYFxuICAgICAgICAgICAgICAgICBUcmVlIEl0ZW0gJHtpdGVtLmxpbmtJdGVtLmdldFRpdGxlKCl9ICR7aSArIDF9IG9mICR7dGhpcy5uZXN0ZWRJdGVtcy5sZW5ndGh9XG4gICAgICAgICAgICAgICAgICR7IXRoaXMuX25lc3RlZExpc3RTdGF0ZVNlcnZpY2Uuc2VsZWN0YWJsZSAmJiBpdGVtLmxpbmtJdGVtLnNlbGVjdGVkID8gdGhpcy5hcmlhTGFiZWxTZWxlY3RlZCA6ICcnfWA7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuX2NoYW5nZURldGVjdGlvblJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9zZXRBY2Nlc3NpYmlsaXR5UHJvcGVydGllcyhsZXZlbDogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLl9uZXN0ZWRMaXN0U3RhdGVTZXJ2aWNlLmNvbmRlbnNlZCAmJiBsZXZlbCA9PT0gMSkge1xuICAgICAgICAgICAgdGhpcy5fYXJpYVJvbGVkZXNjcmlwdGlvbiA9IHRoaXMuYXJpYVJvbGVkZXNjcmlwdGlvbk1lbnVCYXI7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAobGV2ZWwgPiAxIHx8ICh0aGlzLl9uZXN0ZWRJdGVtU2VydmljZT8ucG9wb3ZlciAmJiAhdGhpcy5fbmVzdGVkTGlzdFN0YXRlU2VydmljZS5jb25kZW5zZWQpKSB7XG4gICAgICAgICAgICB0aGlzLl9yb2xlID0gJ2dyb3VwJztcbiAgICAgICAgICAgIHRoaXMuX2FyaWFSb2xlZGVzY3JpcHRpb24gPSBudWxsO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuX25lc3RlZEl0ZW1TZXJ2aWNlPy5wb3BvdmVyKSB7XG4gICAgICAgICAgICB0aGlzLl9hcmlhSGFzcG9wdXAgPSAndHJlZSc7XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=
|
|
@@ -10,20 +10,32 @@ import * as i1 from "./nested-item/nested-item.service";
|
|
|
10
10
|
import * as i2 from "@fundamental-ngx/core/utils";
|
|
11
11
|
import * as i3 from "@fundamental-ngx/core/icon";
|
|
12
12
|
import * as i4 from "@angular/common";
|
|
13
|
+
let uniqueId = 0;
|
|
13
14
|
export class NestedListHeaderDirective {
|
|
14
|
-
constructor() {
|
|
15
|
+
constructor(_elementRef) {
|
|
16
|
+
this._elementRef = _elementRef;
|
|
17
|
+
this.id = `fd-nested-list-group-header-${++uniqueId}`;
|
|
15
18
|
/** @hidden */
|
|
16
19
|
this.fdNestedListHeaderClass = true;
|
|
17
20
|
}
|
|
21
|
+
/** Get the header title */
|
|
22
|
+
get title() {
|
|
23
|
+
return this._elementRef.nativeElement.textContent;
|
|
24
|
+
}
|
|
18
25
|
}
|
|
19
|
-
NestedListHeaderDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: NestedListHeaderDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
20
|
-
NestedListHeaderDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.4", type: NestedListHeaderDirective, selector: "[fdNestedDirectivesHeader], [fd-nested-list-header]", host: { properties: { "class.fd-nested-list__group-header": "this.fdNestedListHeaderClass" } }, ngImport: i0 });
|
|
26
|
+
NestedListHeaderDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: NestedListHeaderDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
27
|
+
NestedListHeaderDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.4", type: NestedListHeaderDirective, selector: "[fdNestedDirectivesHeader], [fd-nested-list-header]", inputs: { id: "id" }, host: { properties: { "attr.id": "this.id", "class.fd-nested-list__group-header": "this.fdNestedListHeaderClass" } }, ngImport: i0 });
|
|
21
28
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: NestedListHeaderDirective, decorators: [{
|
|
22
29
|
type: Directive,
|
|
23
30
|
args: [{
|
|
24
31
|
selector: '[fdNestedDirectivesHeader], [fd-nested-list-header]'
|
|
25
32
|
}]
|
|
26
|
-
}], propDecorators: {
|
|
33
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { id: [{
|
|
34
|
+
type: Input
|
|
35
|
+
}, {
|
|
36
|
+
type: HostBinding,
|
|
37
|
+
args: ['attr.id']
|
|
38
|
+
}], fdNestedListHeaderClass: [{
|
|
27
39
|
type: HostBinding,
|
|
28
40
|
args: ['class.fd-nested-list__group-header']
|
|
29
41
|
}] } });
|
|
@@ -120,6 +132,8 @@ export class NestedListExpandIconComponent {
|
|
|
120
132
|
* Attribute controlled by the parent `NestedItemDirective`
|
|
121
133
|
*/
|
|
122
134
|
this.expanded = false;
|
|
135
|
+
/** @hidden */
|
|
136
|
+
this.ariaHidden = true;
|
|
123
137
|
this._listenOnTextDirection();
|
|
124
138
|
}
|
|
125
139
|
/** Mouse event handler */
|
|
@@ -145,7 +159,7 @@ export class NestedListExpandIconComponent {
|
|
|
145
159
|
}
|
|
146
160
|
}
|
|
147
161
|
NestedListExpandIconComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: NestedListExpandIconComponent, deps: [{ token: i1.NestedItemService }, { token: i0.ChangeDetectorRef }, { token: i2.RtlService, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
148
|
-
NestedListExpandIconComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.4", type: NestedListExpandIconComponent, selector: "[fdNestedListExpandIcon], [fd-nested-list-expand-icon]", host: { attributes: { "aria-haspopup": "true", "tabindex": "-1" }, listeners: { "click": "onClick($event)", "focus": "onFocus()" }, properties: { "class.fd-nested-list__button": "this.fdNestedListTitleClass", "class.fd-button": "this.fdButtonClass", "class.is-expanded": "this.expanded", "attr.aria-expanded": "this.expanded" } }, ngImport: i0, template: `
|
|
162
|
+
NestedListExpandIconComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.4", type: NestedListExpandIconComponent, selector: "[fdNestedListExpandIcon], [fd-nested-list-expand-icon]", host: { attributes: { "aria-haspopup": "true", "tabindex": "-1" }, listeners: { "click": "onClick($event)", "focus": "onFocus()" }, properties: { "class.fd-nested-list__button": "this.fdNestedListTitleClass", "class.fd-button": "this.fdButtonClass", "class.is-expanded": "this.expanded", "attr.aria-expanded": "this.expanded", "attr.aria-hidden": "this.ariaHidden" } }, ngImport: i0, template: `
|
|
149
163
|
<ng-content></ng-content>
|
|
150
164
|
<fd-icon [glyph]="expanded ? 'navigation-down-arrow' : (sideArrowIcon$ | async)"></fd-icon>
|
|
151
165
|
`, isInline: true, components: [{ type: i3.IconComponent, selector: "fd-icon", inputs: ["glyph", "font", "class", "ariaLabel"] }], pipes: { "async": i4.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
@@ -179,6 +193,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImpor
|
|
|
179
193
|
}, {
|
|
180
194
|
type: HostBinding,
|
|
181
195
|
args: ['attr.aria-expanded']
|
|
196
|
+
}], ariaHidden: [{
|
|
197
|
+
type: HostBinding,
|
|
198
|
+
args: ['attr.aria-hidden']
|
|
182
199
|
}], onClick: [{
|
|
183
200
|
type: HostListener,
|
|
184
201
|
args: ['click', ['$event']]
|
|
@@ -186,4 +203,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImpor
|
|
|
186
203
|
type: HostListener,
|
|
187
204
|
args: ['focus']
|
|
188
205
|
}] } });
|
|
189
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmVzdGVkLWxpc3QtZGlyZWN0aXZlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL25lc3RlZC1saXN0L25lc3RlZC1saXN0LWRpcmVjdGl2ZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxTQUFTLEVBQ1QsVUFBVSxFQUNWLFdBQVcsRUFDWCxZQUFZLEVBQ1osS0FBSyxFQUdMLFFBQVEsRUFDUixpQkFBaUIsRUFDcEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDdEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBRTVELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDckMsT0FBTyxFQUFjLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7Ozs7O0FBS3RDLE1BQU0sT0FBTyx5QkFBeUI7SUFIdEM7UUFJSSxjQUFjO1FBRWQsNEJBQXVCLEdBQUcsSUFBSSxDQUFDO0tBQ2xDOztzSEFKWSx5QkFBeUI7MEdBQXpCLHlCQUF5QjsyRkFBekIseUJBQXlCO2tCQUhyQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxxREFBcUQ7aUJBQ2xFOzhCQUlHLHVCQUF1QjtzQkFEdEIsV0FBVzt1QkFBQyxvQ0FBb0M7O0FBT3JELE1BQU0sT0FBTyx1QkFBdUI7SUFvQmhDLGNBQWM7SUFDZCxZQUFvQixXQUF1QjtRQUF2QixnQkFBVyxHQUFYLFdBQVcsQ0FBWTtRQXBCM0MsOERBQThEO1FBRTlELFVBQUssR0FBRyxFQUFFLENBQUM7UUFRWCxxQkFBcUI7UUFHckIsU0FBSSxHQUFHLGNBQWMsQ0FBQztRQUV0QixjQUFj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LENBQUMsV0FBVztZQUNsQyxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLHVCQUF1QixDQUFDLENBQUMsQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDLENBQUM7WUFDekcsQ0FBQyxDQUFDLEVBQUUsQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7OzBIQXJEUSw2QkFBNkI7OEdBQTdCLDZCQUE2Qix5YUFYNUI7OztLQUdUOzJGQVFRLDZCQUE2QjtrQkFkekMsU0FBUzttQkFBQztvQkFDUCw4REFBOEQ7b0JBQzlELFFBQVEsRUFBRSx3REFBd0Q7b0JBQ2xFLFFBQVEsRUFBRTs7O0tBR1Q7b0JBQ0QsSUFBSSxFQUFFO3dCQUNGLGVBQWUsRUFBRSxNQUFNO3dCQUN2QixRQUFRLEVBQUUsSUFBSTtxQkFDakI7b0JBQ0QsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07b0JBQy9DLGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO2lCQUN4Qzs7MEJBd0JRLFFBQVE7NENBcEJiLHNCQUFzQjtzQkFEckIsV0FBVzt1QkFBQyw4QkFBOEI7Z0JBSzNDLGFBQWE7c0JBRFosV0FBVzt1QkFBQyxpQkFBaUI7Z0JBUzlCLFFBQVE7c0JBRlAsV0FBVzt1QkFBQyxtQkFBbUI7O3NCQUMvQixXQUFXO3VCQUFDLG9CQUFvQjtnQkFnQmpDLE9BQU87c0JBRE4sWUFBWTt1QkFBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBU2pDLE9BQU87c0JBRE4sWUFBWTt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgRGlyZWN0aXZlLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgSG9zdExpc3RlbmVyLFxuICAgIElucHV0LFxuICAgIE9uQ2hhbmdlcyxcbiAgICBPbkluaXQsXG4gICAgT3B0aW9uYWwsXG4gICAgVmlld0VuY2Fwc3VsYXRpb25cbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOZXN0ZWRJdGVtU2VydmljZSB9IGZyb20gJy4vbmVzdGVkLWl0ZW0vbmVzdGVkLWl0ZW0uc2VydmljZSc7XG5pbXBvcnQgeyBhcHBseUNzc0NsYXNzIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL3V0aWxzJztcbmltcG9ydCB7IENzc0NsYXNzQnVpbGRlciB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS91dGlscyc7XG5pbXBvcnQgeyBSdGxTZXJ2aWNlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL3V0aWxzJztcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW2ZkTmVzdGVkRGlyZWN0aXZlc0hlYWRlcl0sIFtmZC1uZXN0ZWQtbGlzdC1oZWFkZXJdJ1xufSlcbmV4cG9ydCBjbGFzcyBOZXN0ZWRMaXN0SGVhZGVyRGlyZWN0aXZlIHtcbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBIb3N0QmluZGluZygnY2xhc3MuZmQtbmVzdGVkLWxpc3RfX2dyb3VwLWhlYWRlcicpXG4gICAgZmROZXN0ZWRMaXN0SGVhZGVyQ2xhc3MgPSB0cnVlO1xufVxuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1tmZE5lc3RlZERpcmVjdGl2ZXNJY29uXSwgW2ZkLW5lc3RlZC1saXN0LWljb25dJ1xufSlcbmV4cG9ydCBjbGFzcyBOZXN0ZWRMaXN0SWNvbkRpcmVjdGl2ZSBpbXBsZW1lbnRzIENzc0NsYXNzQnVpbGRlciwgT25DaGFuZ2VzLCBPbkluaXQge1xuICAgIC8qKiBUaGUgcHJvcGVydHkgYWxsb3dzIHVzZXIgdG8gcGFzcyBhZGRpdGlvbmFsIGNzcyBjbGFzc2VzICovXG4gICAgQElucHV0KClcbiAgICBjbGFzcyA9ICcnO1xuXG4gICAgLyoqXG4gICAgICogVGhlIGljb24gbmFtZSB0byBkaXNwbGF5LiBTZWUgdGhlIGljb24gcGFnZSBmb3IgdGhlIGxpc3Qgb2YgaWNvbnNcbiAgICAgKiBoZXJlOiBodHRwczovL3NhcC5naXRodWIuaW8vZnVuZGFtZW50YWwtbmd4L2ljb25cbiAgICAgKi9cbiAgICBASW5wdXQoKSBnbHlwaDogc3RyaW5nO1xuXG4gICAgLyoqIFJvbGUgYXR0cmlidXRlICovXG4gICAgQElucHV0KClcbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIucm9sZScpXG4gICAgcm9sZSA9ICdwcmVzZW50YXRpb24nO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmZkLW5lc3RlZC1saXN0X19pY29uJylcbiAgICBmZE5lc3RlZExpc3RJY29uQ2xhc3MgPSB0cnVlO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9lbGVtZW50UmVmOiBFbGVtZW50UmVmKSB7fVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBuZ09uQ2hhbmdlcygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5idWlsZENvbXBvbmVudENzc0NsYXNzKCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5idWlsZENvbXBvbmVudENzc0NsYXNzKCk7XG4gICAgfVxuXG4gICAgQGFwcGx5Q3NzQ2xhc3NcbiAgICAvKiogQ3NzQ2xhc3NCdWlsZGVyIGludGVyZmFjZSBpbXBsZW1lbnRhdGlvbiAqL1xuICAgIGJ1aWxkQ29tcG9uZW50Q3NzQ2xhc3MoKTogc3RyaW5nW10ge1xuICAgICAgICByZXR1cm4gWydmZC1uZXN0ZWQtbGlzdF9faWNvbicsIHRoaXMuZ2x5cGggPyBgc2FwLWljb24tLSR7dGhpcy5nbHlwaH1gIDogJycsIHRoaXMuY2xhc3NdO1xuICAgIH1cblxuICAgIC8qKiBIYXNFbGVtZW50UmVmIGludGVyZmFjZSBpbXBsZW1lbnRhdGlvbiAqL1xuICAgIGVsZW1lbnRSZWYoKTogRWxlbWVudFJlZjxhbnk+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2VsZW1lbnRSZWY7XG4gICAgfVxufVxuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1tmZE5lc3RlZERpcmVjdGl2ZXNUaXRsZV0sIFtmZC1uZXN0ZWQtbGlzdC10aXRsZV0nXG59KVxuZXhwb3J0IGNsYXNzIE5lc3RlZExpc3RUaXRsZURpcmVjdGl2ZSB7XG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmZkLW5lc3RlZC1saXN0X190aXRsZScpXG4gICAgZmROZXN0ZWRMaXN0VGl0bGVDbGFzcyA9IHRydWU7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgZWxlbWVudFJlZjogRWxlbWVudFJlZikge31cblxuICAgIC8qKiBSZXR1cm5zIGVsZW1lbnQncyBJbm5lclRleHQgKi9cbiAgICBnZXRJbm5lclRleHQoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZiAmJiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5pbm5lclRleHQ7XG4gICAgfVxufVxuXG5AQ29tcG9uZW50KHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2NvbXBvbmVudC1zZWxlY3RvclxuICAgIHNlbGVjdG9yOiAnW2ZkTmVzdGVkTGlzdEV4cGFuZEljb25dLCBbZmQtbmVzdGVkLWxpc3QtZXhwYW5kLWljb25dJyxcbiAgICB0ZW1wbGF0ZTogYFxuICAgICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgICAgIDxmZC1pY29uIFtnbHlwaF09XCJleHBhbmRlZCA/ICduYXZpZ2F0aW9uLWRvd24tYXJyb3cnIDogKHNpZGVBcnJvd0ljb24kIHwgYXN5bmMpXCI+PC9mZC1pY29uPlxuICAgIGAsXG4gICAgaG9zdDoge1xuICAgICAgICAnYXJpYS1oYXNwb3B1cCc6ICd0cnVlJyxcbiAgICAgICAgdGFiaW5kZXg6ICctMSdcbiAgICB9LFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcbn0pXG5leHBvcnQgY2xhc3MgTmVzdGVkTGlzdEV4cGFuZEljb25Db21wb25lbnQge1xuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5mZC1uZXN0ZWQtbGlzdF9fYnV0dG9uJylcbiAgICBmZE5lc3RlZExpc3RUaXRsZUNsYXNzID0gdHJ1ZTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5mZC1idXR0b24nKVxuICAgIGZkQnV0dG9uQ2xhc3MgPSB0cnVlO1xuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIEF0dHJpYnV0ZSBjb250cm9sbGVkIGJ5IHRoZSBwYXJlbnQgYE5lc3RlZEl0ZW1EaXJlY3RpdmVgXG4gICAgICovXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5pcy1leHBhbmRlZCcpXG4gICAgQEhvc3RCaW5kaW5nKCdhdHRyLmFyaWEtZXhwYW5kZWQnKVxuICAgIGV4cGFuZGVkID0gZmFsc2U7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHNpZGVBcnJvd0ljb24kOiBPYnNlcnZhYmxlPHN0cmluZz47XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBfaXRlbVNlcnZpY2U6IE5lc3RlZEl0ZW1TZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIF9jaGFuZ2VEZXRSZWY6IENoYW5nZURldGVjdG9yUmVmLFxuICAgICAgICBAT3B0aW9uYWwoKSBwcml2YXRlIF9ydGxTZXJ2aWNlOiBSdGxTZXJ2aWNlXG4gICAgKSB7XG4gICAgICAgIHRoaXMuX2xpc3Rlbk9uVGV4dERpcmVjdGlvbigpO1xuICAgIH1cblxuICAgIC8qKiBNb3VzZSBldmVudCBoYW5kbGVyICovXG4gICAgQEhvc3RMaXN0ZW5lcignY2xpY2snLCBbJyRldmVudCddKVxuICAgIG9uQ2xpY2soZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5leHBhbmRlZCA9ICF0aGlzLmV4cGFuZGVkO1xuICAgICAgICB0aGlzLl9pdGVtU2VydmljZS50b2dnbGUubmV4dCh0aGlzLmV4cGFuZGVkKTtcbiAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgfVxuXG4gICAgLyoqIEhhbmRsZXIgZm9yIGZvY3VzIGV2ZW50cyAqL1xuICAgIEBIb3N0TGlzdGVuZXIoJ2ZvY3VzJylcbiAgICBvbkZvY3VzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9pdGVtU2VydmljZS5mb2N1cy5uZXh0KCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBjaGFuZ2VFeHBhbmRlZFN0YXRlKGV4cGFuZGVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZXhwYW5kZWQgPSBleHBhbmRlZDtcbiAgICAgICAgdGhpcy5fY2hhbmdlRGV0UmVmLmRldGVjdENoYW5nZXMoKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiBTZXRzIGV4cGFuZCBhcnJvdyBkZXBlbmRpbmcgb24gdGV4dCBkaXJlY3Rpb24gKi9cbiAgICBwcml2YXRlIF9saXN0ZW5PblRleHREaXJlY3Rpb24oKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc2lkZUFycm93SWNvbiQgPSB0aGlzLl9ydGxTZXJ2aWNlXG4gICAgICAgICAgICA/IHRoaXMuX3J0bFNlcnZpY2UucnRsLnBpcGUobWFwKChpc1J0bCkgPT4gKGlzUnRsID8gJ25hdmlnYXRpb24tbGVmdC1hcnJvdycgOiAnbmF2aWdhdGlvbi1yaWdodC1hcnJvdycpKSlcbiAgICAgICAgICAgIDogb2YoJ25hdmlnYXRpb24tcmlnaHQtYXJyb3cnKTtcbiAgICB9XG59XG4iXX0=
|
|
206
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmVzdGVkLWxpc3QtZGlyZWN0aXZlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL25lc3RlZC1saXN0L25lc3RlZC1saXN0LWRpcmVjdGl2ZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxTQUFTLEVBQ1QsVUFBVSxFQUNWLFdBQVcsRUFDWCxZQUFZLEVBQ1osS0FBSyxFQUdMLFFBQVEsRUFDUixpQkFBaUIsRUFDcEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDdEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBRTVELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDckMsT0FBTyxFQUFjLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7Ozs7O0FBRXRDLElBQUksUUFBUSxHQUFHLENBQUMsQ0FBQztBQUtqQixNQUFNLE9BQU8seUJBQXlCO0lBU2xDLFlBQW9CLFdBQXVCO1FBQXZCLGdCQUFXLEdBQVgsV0FBVyxDQUFZO1FBTjNDLE9BQUUsR0FBa0IsK0JBQStCLEVBQUUsUUFBUSxFQUFFLENBQUM7UUFFaEUsY0FBYztRQUVkLDRCQUF1QixHQUFHLElBQUksQ0FBQztJQUVlLENBQUM7SUFFL0MsMkJBQTJCO0lBQzNCLElBQUksS0FBSztRQUNMLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUFDO0lBQ3RELENBQUM7O3NIQWRRLHlCQUF5QjswR0FBekIseUJBQXlCOzJGQUF6Qix5QkFBeUI7a0JBSHJDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLHFEQUFxRDtpQkFD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Vzt1QkFBQyxtQkFBbUI7O3NCQUMvQixXQUFXO3VCQUFDLG9CQUFvQjtnQkFLakMsVUFBVTtzQkFEVCxXQUFXO3VCQUFDLGtCQUFrQjtnQkFnQi9CLE9BQU87c0JBRE4sWUFBWTt1QkFBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBU2pDLE9BQU87c0JBRE4sWUFBWTt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgRGlyZWN0aXZlLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgSG9zdExpc3RlbmVyLFxuICAgIElucHV0LFxuICAgIE9uQ2hhbmdlcyxcbiAgICBPbkluaXQsXG4gICAgT3B0aW9uYWwsXG4gICAgVmlld0VuY2Fwc3VsYXRpb25cbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOZXN0ZWRJdGVtU2VydmljZSB9IGZyb20gJy4vbmVzdGVkLWl0ZW0vbmVzdGVkLWl0ZW0uc2VydmljZSc7XG5pbXBvcnQgeyBhcHBseUNzc0NsYXNzIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL3V0aWxzJztcbmltcG9ydCB7IENzc0NsYXNzQnVpbGRlciB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS91dGlscyc7XG5pbXBvcnQgeyBSdGxTZXJ2aWNlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL3V0aWxzJztcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XG5cbmxldCB1bmlxdWVJZCA9IDA7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW2ZkTmVzdGVkRGlyZWN0aXZlc0hlYWRlcl0sIFtmZC1uZXN0ZWQtbGlzdC1oZWFkZXJdJ1xufSlcbmV4cG9ydCBjbGFzcyBOZXN0ZWRMaXN0SGVhZGVyRGlyZWN0aXZlIHtcbiAgICBASW5wdXQoKVxuICAgIEBIb3N0QmluZGluZygnYXR0ci5pZCcpXG4gICAgaWQ6IHN0cmluZyB8IG51bGwgPSBgZmQtbmVzdGVkLWxpc3QtZ3JvdXAtaGVhZGVyLSR7Kyt1bmlxdWVJZH1gO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmZkLW5lc3RlZC1saXN0X19ncm91cC1oZWFkZXInKVxuICAgIGZkTmVzdGVkTGlzdEhlYWRlckNsYXNzID0gdHJ1ZTtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgX2VsZW1lbnRSZWY6IEVsZW1lbnRSZWYpIHt9XG5cbiAgICAvKiogR2V0IHRoZSBoZWFkZXIgdGl0bGUgKi9cbiAgICBnZXQgdGl0bGUoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudC50ZXh0Q29udGVudDtcbiAgICB9XG59XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW2ZkTmVzdGVkRGlyZWN0aXZlc0ljb25dLCBbZmQtbmVzdGVkLWxpc3QtaWNvbl0nXG59KVxuZXhwb3J0IGNsYXNzIE5lc3RlZExpc3RJY29uRGlyZWN0aXZlIGltcGxlbWVudHMgQ3NzQ2xhc3NCdWlsZGVyLCBPbkNoYW5nZXMsIE9uSW5pdCB7XG4gICAgLyoqIFRoZSBwcm9wZXJ0eSBhbGxvd3MgdXNlciB0byBwYXNzIGFkZGl0aW9uYWwgY3NzIGNsYXNzZXMgKi9cbiAgICBASW5wdXQoKVxuICAgIGNsYXNzID0gJyc7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgaWNvbiBuYW1lIHRvIGRpc3BsYXkuIFNlZSB0aGUgaWNvbiBwYWdlIGZvciB0aGUgbGlzdCBvZiBpY29uc1xuICAgICAqIGhlcmU6IGh0dHBzOi8vc2FwLmdpdGh1Yi5pby9mdW5kYW1lbnRhbC1uZ3gvaWNvblxuICAgICAqL1xuICAgIEBJbnB1dCgpIGdseXBoOiBzdHJpbmc7XG5cbiAgICAvKiogUm9sZSBhdHRyaWJ1dGUgKi9cbiAgICBASW5wdXQoKVxuICAgIEBIb3N0QmluZGluZygnYXR0ci5yb2xlJylcbiAgICByb2xlID0gJ3ByZXNlbnRhdGlvbic7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBIb3N0QmluZGluZygnY2xhc3MuZmQtbmVzdGVkLWxpc3RfX2ljb24nKVxuICAgIGZkTmVzdGVkTGlzdEljb25DbGFzcyA9IHRydWU7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgX2VsZW1lbnRSZWY6IEVsZW1lbnRSZWYpIHt9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIG5nT25DaGFuZ2VzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmJ1aWxkQ29tcG9uZW50Q3NzQ2xhc3MoKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmJ1aWxkQ29tcG9uZW50Q3NzQ2xhc3MoKTtcbiAgICB9XG5cbiAgICBAYXBwbHlDc3NDbGFzc1xuICAgIC8qKiBDc3NDbGFzc0J1aWxkZXIgaW50ZXJmYWNlIGltcGxlbWVudGF0aW9uICovXG4gICAgYnVpbGRDb21wb25lbnRDc3NDbGFzcygpOiBzdHJpbmdbXSB7XG4gICAgICAgIHJldHVybiBbJ2ZkLW5lc3RlZC1saXN0X19pY29uJywgdGhpcy5nbHlwaCA/IGBzYXAtaWNvbi0tJHt0aGlzLmdseXBofWAgOiAnJywgdGhpcy5jbGFzc107XG4gICAgfVxuXG4gICAgLyoqIEhhc0VsZW1lbnRSZWYgaW50ZXJmYWNlIGltcGxlbWVudGF0aW9uICovXG4gICAgZWxlbWVudFJlZigpOiBFbGVtZW50UmVmPGFueT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fZWxlbWVudFJlZjtcbiAgICB9XG59XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW2ZkTmVzdGVkRGlyZWN0aXZlc1RpdGxlXSwgW2ZkLW5lc3RlZC1saXN0LXRpdGxlXSdcbn0pXG5leHBvcnQgY2xhc3MgTmVzdGVkTGlzdFRpdGxlRGlyZWN0aXZlIHtcbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBIb3N0QmluZGluZygnY2xhc3MuZmQtbmVzdGVkLWxpc3RfX3RpdGxlJylcbiAgICBmZE5lc3RlZExpc3RUaXRsZUNsYXNzID0gdHJ1ZTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBlbGVtZW50UmVmOiBFbGVtZW50UmVmKSB7fVxuXG4gICAgLyoqIFJldHVybnMgZWxlbWVudCdzIElubmVyVGV4dCAqL1xuICAgIGdldElubmVyVGV4dCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmICYmIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmlubmVyVGV4dDtcbiAgICB9XG59XG5cbkBDb21wb25lbnQoe1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvY29tcG9uZW50LXNlbGVjdG9yXG4gICAgc2VsZWN0b3I6ICdbZmROZXN0ZWRMaXN0RXhwYW5kSWNvbl0sIFtmZC1uZXN0ZWQtbGlzdC1leHBhbmQtaWNvbl0nLFxuICAgIHRlbXBsYXRlOiBgXG4gICAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICAgICAgPGZkLWljb24gW2dseXBoXT1cImV4cGFuZGVkID8gJ25hdmlnYXRpb24tZG93bi1hcnJvdycgOiAoc2lkZUFycm93SWNvbiQgfCBhc3luYylcIj48L2ZkLWljb24+XG4gICAgYCxcbiAgICBob3N0OiB7XG4gICAgICAgICdhcmlhLWhhc3BvcHVwJzogJ3RydWUnLFxuICAgICAgICB0YWJpbmRleDogJy0xJ1xuICAgIH0sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxufSlcbmV4cG9ydCBjbGFzcyBOZXN0ZWRMaXN0RXhwYW5kSWNvbkNvbXBvbmVudCB7XG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmZkLW5lc3RlZC1saXN0X19idXR0b24nKVxuICAgIGZkTmVzdGVkTGlzdFRpdGxlQ2xhc3MgPSB0cnVlO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmZkLWJ1dHRvbicpXG4gICAgZmRCdXR0b25DbGFzcyA9IHRydWU7XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICogQXR0cmlidXRlIGNvbnRyb2xsZWQgYnkgdGhlIHBhcmVudCBgTmVzdGVkSXRlbURpcmVjdGl2ZWBcbiAgICAgKi9cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmlzLWV4cGFuZGVkJylcbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIuYXJpYS1leHBhbmRlZCcpXG4gICAgZXhwYW5kZWQgPSBmYWxzZTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQEhvc3RCaW5kaW5nKCdhdHRyLmFyaWEtaGlkZGVuJylcbiAgICBhcmlhSGlkZGVuID0gdHJ1ZTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgc2lkZUFycm93SWNvbiQ6IE9ic2VydmFibGU8c3RyaW5nPjtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIF9pdGVtU2VydmljZTogTmVzdGVkSXRlbVNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgX2NoYW5nZURldFJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgIEBPcHRpb25hbCgpIHByaXZhdGUgX3J0bFNlcnZpY2U6IFJ0bFNlcnZpY2VcbiAgICApIHtcbiAgICAgICAgdGhpcy5fbGlzdGVuT25UZXh0RGlyZWN0aW9uKCk7XG4gICAgfVxuXG4gICAgLyoqIE1vdXNlIGV2ZW50IGhhbmRsZXIgKi9cbiAgICBASG9zdExpc3RlbmVyKCdjbGljaycsIFsnJGV2ZW50J10pXG4gICAgb25DbGljayhldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xuICAgICAgICB0aGlzLmV4cGFuZGVkID0gIXRoaXMuZXhwYW5kZWQ7XG4gICAgICAgIHRoaXMuX2l0ZW1TZXJ2aWNlLnRvZ2dsZS5uZXh0KHRoaXMuZXhwYW5kZWQpO1xuICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB9XG5cbiAgICAvKiogSGFuZGxlciBmb3IgZm9jdXMgZXZlbnRzICovXG4gICAgQEhvc3RMaXN0ZW5lcignZm9jdXMnKVxuICAgIG9uRm9jdXMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2l0ZW1TZXJ2aWNlLmZvY3VzLm5leHQoKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGNoYW5nZUV4cGFuZGVkU3RhdGUoZXhwYW5kZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5leHBhbmRlZCA9IGV4cGFuZGVkO1xuICAgICAgICB0aGlzLl9jaGFuZ2VEZXRSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuIFNldHMgZXhwYW5kIGFycm93IGRlcGVuZGluZyBvbiB0ZXh0IGRpcmVjdGlvbiAqL1xuICAgIHByaXZhdGUgX2xpc3Rlbk9uVGV4dERpcmVjdGlvbigpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zaWRlQXJyb3dJY29uJCA9IHRoaXMuX3J0bFNlcnZpY2VcbiAgICAgICAgICAgID8gdGhpcy5fcnRsU2VydmljZS5ydGwucGlwZShtYXAoKGlzUnRsKSA9PiAoaXNSdGwgPyAnbmF2aWdhdGlvbi1sZWZ0LWFycm93JyA6ICduYXZpZ2F0aW9uLXJpZ2h0LWFycm93JykpKVxuICAgICAgICAgICAgOiBvZignbmF2aWdhdGlvbi1yaWdodC1hcnJvdycpO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -3,7 +3,7 @@ import { MenuKeyboardService } from '@fundamental-ngx/core/menu';
|
|
|
3
3
|
import { Inject, Injectable } from '@angular/core';
|
|
4
4
|
import { takeUntil } from 'rxjs/operators';
|
|
5
5
|
import { KeyUtil } from '@fundamental-ngx/core/utils';
|
|
6
|
-
import { LEFT_ARROW, RIGHT_ARROW } from '@angular/cdk/keycodes';
|
|
6
|
+
import { ENTER, LEFT_ARROW, RIGHT_ARROW, SPACE } from '@angular/cdk/keycodes';
|
|
7
7
|
import * as i0 from "@angular/core";
|
|
8
8
|
import * as i1 from "@fundamental-ngx/core/menu";
|
|
9
9
|
/**
|
|
@@ -67,15 +67,19 @@ export class NestedListKeyboardService {
|
|
|
67
67
|
}
|
|
68
68
|
keyboardEvent.preventDefault();
|
|
69
69
|
}
|
|
70
|
-
|
|
70
|
+
if (KeyUtil.isKeyCode(keyboardEvent, LEFT_ARROW)) {
|
|
71
71
|
if (item.expanded && item.hasChildren) {
|
|
72
72
|
item.triggerClose();
|
|
73
73
|
}
|
|
74
74
|
keyboardEvent.preventDefault();
|
|
75
75
|
}
|
|
76
|
-
|
|
77
|
-
|
|
76
|
+
if (KeyUtil.isKeyCode(keyboardEvent, [ENTER, SPACE])) {
|
|
77
|
+
if (item.hasChildren) {
|
|
78
|
+
items[index].click();
|
|
79
|
+
}
|
|
80
|
+
keyboardEvent.preventDefault();
|
|
78
81
|
}
|
|
82
|
+
this.keyboardService.keyDownHandler(keyboardEvent, index, items);
|
|
79
83
|
}
|
|
80
84
|
}
|
|
81
85
|
NestedListKeyboardService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: NestedListKeyboardService, deps: [{ token: MenuKeyboardService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
@@ -86,4 +90,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImpor
|
|
|
86
90
|
type: Inject,
|
|
87
91
|
args: [MenuKeyboardService]
|
|
88
92
|
}] }]; } });
|
|
89
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
93
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmVzdGVkLWxpc3Qta2V5Ym9hcmQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL25lc3RlZC1saXN0L25lc3RlZC1saXN0LWtleWJvYXJkLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHM0MsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3RELE9BQU8sRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7O0FBRTlFOzs7R0FHRztBQUVILE1BQU0sT0FBTyx5QkFBeUI7SUFPbEMsWUFBaUQsZUFBb0M7UUFBcEMsb0JBQWUsR0FBZixlQUFlLENBQXFCO1FBTnJGOzs7V0FHRztRQUNNLGFBQVEsR0FBa0IsSUFBSSxPQUFPLEVBQVEsQ0FBQztJQUVpQyxDQUFDO0lBRXpGOzs7T0FHRztJQUNILFlBQVksQ0FBQyxLQUE0QjtRQUNyQyxNQUFNLEtBQUssR0FBMEIsRUFBRSxDQUFDO1FBRXhDLGlDQUFpQztRQUNqQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNwRSxpRUFBaUU7UUFDakUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsRUFBRTtZQUMxQixJQUFJLENBQUMsaUJBQWlCO2lCQUNqQixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztpQkFDOUIsU0FBUyxDQUFDLENBQUMsYUFBNEIsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxhQUFhLEVBQUUsS0FBSyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDdkcsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsaUZBQWlGO0lBQ3pFLFNBQVMsQ0FBQyxJQUF5QjtRQUN2QyxNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUNqRSxPQUFPLGFBQWEsQ0FBQyxNQUFNLENBQ3ZCLENBQUMsV0FBa0MsRUFBRSxRQUE2QixFQUFFLEVBQUUsQ0FBQztZQUNuRSxHQUFHLFdBQVc7WUFDZCxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDO1NBQzlCLEVBQ0QsQ0FBQyxJQUFJLENBQUMsQ0FDVCxDQUFDO0lBQ04sQ0FBQztJQUVELDBHQUEwRztJQUNsRyxnQkFBZ0IsQ0FBQyxJQUF5QjtRQUM5QyxNQUFNLE1BQU0sR0FBMEIsRUFBRSxDQUFDO1FBQ3pDLElBQUksSUFBSSxJQUFJLElBQUksQ0FBQyxXQUFXLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQ3pELElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7Z0JBQzlCLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7WUFDekMsQ0FBQyxDQUFDLENBQUM7U0FDTjtRQUVELE9BQU8sTUFBTSxDQUFDO0lBQ2xCLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSyxjQUFjLENBQUMsYUFBNEIsRUFBRSxLQUFhLEVBQUUsS0FBNEI7UUFDNUYsTUFBTSxJQUFJLEdBQXdCLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUUvQyxJQUFJLE9BQU8sQ0FBQyxTQUFTLENBQUMsYUFBYSxFQUFFLFdBQVcsQ0FBQyxFQUFFO1lBQy9DLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUU7Z0JBQ3BDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQzthQUN0QjtZQUNELGFBQWEsQ0FBQyxjQUFjLEVBQUUsQ0FBQztTQUNsQztRQUVELElBQUksT0FBTyxDQUFDLFNBQVMsQ0FBQyxhQUFhLEVBQUUsVUFBVSxDQUFDLEVBQUU7WUFDOUMsSUFBSSxJQUFJLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUU7Z0JBQ25DLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQzthQUN2QjtZQUNELGFBQWEsQ0FBQyxjQUFjLEVBQUUsQ0FBQztTQUNsQztRQUVELElBQUksT0FBTyxDQUFDLFNBQVMsQ0FBQyxhQUFhLEVBQUUsQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUMsRUFBRTtZQUNsRCxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUU7Z0JBQ2xCLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQzthQUN4QjtZQUNELGFBQWEsQ0FBQyxjQUFjLEVBQUUsQ0FBQztTQUNsQztRQUVELElBQUksQ0FBQyxlQUFlLENBQUMsY0FBYyxDQUFDLGFBQWEsRUFBRSxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDckUsQ0FBQzs7c0hBbEZRLHlCQUF5QixrQkFPZCxtQkFBbUI7MEhBUDlCLHlCQUF5QjsyRkFBekIseUJBQXlCO2tCQURyQyxVQUFVOzswQkFRTSxNQUFNOzJCQUFDLG1CQUFtQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IE1lbnVLZXlib2FyZFNlcnZpY2UgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvbWVudSc7XG5pbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IE5lc3RlZEl0ZW1JbnRlcmZhY2UgfSBmcm9tICcuL25lc3RlZC1pdGVtL25lc3RlZC1pdGVtLmludGVyZmFjZSc7XG5pbXBvcnQgeyBOZXN0ZWRMaXN0SW50ZXJmYWNlIH0gZnJvbSAnLi9uZXN0ZWQtbGlzdC9uZXN0ZWQtbGlzdC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgS2V5VXRpbCB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS91dGlscyc7XG5pbXBvcnQgeyBFTlRFUiwgTEVGVF9BUlJPVywgUklHSFRfQVJST1csIFNQQUNFIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2tleWNvZGVzJztcblxuLyoqXG4gKiBOZXN0ZWQgbGlzdCBrZXlib2FyZCBzZXJ2aWNlLCB3aGljaCB1c2VzIE1lbnVLZXlib2FyZFNlcnZpY2UsIHRvIGRlYWwgd2l0aCBBcnJvd1VwLCBBcnJvd0Rvd24sIFNwYWNlLCBFbnRlci5cbiAqIEFsc28gaGFzIG93biBoYW5kbGluZyBvZiBBcnJvd0xlZnQgYW5kIEFycm93UmlnaHQsIHRvIG9wZW4vY2xvc2UgdGhlIG1lbnUgaWYgaXQgaGFzIGFueSBjaGlsZHJlbi5cbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIE5lc3RlZExpc3RLZXlib2FyZFNlcnZpY2Uge1xuICAgIC8qKlxuICAgICAqIEV2ZW50LCB0aGF0IGlzIHRocm93biBhbHdheXMsIHdoZW4gdGhlIG9wZW4vY2xvc2UgaSBiZWluZyBjYWxsZWQgb24gaXRlbSBjb21wb25lbnRzLlxuICAgICAqIEFsc28gdHJpZ2dlcnMgY2hhbmdpbmcgb2YgZWxlbWVudHMsIHRvIHJlbW92ZSBjbG9zZWQvaGlkZGVuIGVsZW1lbnRzXG4gICAgICovXG4gICAgcmVhZG9ubHkgcmVmcmVzaCQ6IFN1YmplY3Q8dm9pZD4gPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gICAgY29uc3RydWN0b3IoQEluamVjdChNZW51S2V5Ym9hcmRTZXJ2aWNlKSBwcml2YXRlIGtleWJvYXJkU2VydmljZTogTWVudUtleWJvYXJkU2VydmljZSkge31cblxuICAgIC8qKlxuICAgICAqIEZ1bmN0aW9uIGNhbGxlZCBhZnRlciByZWZyZXNoJCBldmVudCBpcyB0cmlnZ2VyZWQuXG4gICAgICogUmVmcmVzaCB0aGUgbGlzdCBvZiBOZXN0ZWRJdGVtcywgdGhhdCB0aGUga2V5Ym9hcmQgc3VwcG9ydCBzaG91bGQgYmUgcHJvdmlkZWQgZm9yXG4gICAgICovXG4gICAgcmVmcmVzaEl0ZW1zKGxpc3RzOiBOZXN0ZWRMaXN0SW50ZXJmYWNlW10pOiB2b2lkIHtcbiAgICAgICAgY29uc3QgaXRlbXM6IE5lc3RlZEl0ZW1JbnRlcmZhY2VbXSA9IFtdO1xuXG4gICAgICAgIC8qKiBHYXRoZXJpbmcgYWxsIG9mIHRoZSBpdGVtcyAqL1xuICAgICAgICBsaXN0cy5mb3JFYWNoKChsaXN0KSA9PiBpdGVtcy5wdXNoKC4uLnRoaXMuX2dldEFsbExpc3RJdGVtcyhsaXN0KSkpO1xuICAgICAgICAvKiogUHV0dGluZyB0aGUga2V5Ym9hcmQgc3VwcG9ydCBmdW5jdGlvbiB0byBlYWNoIG9mIHRoZSBpdGVtcyAqL1xuICAgICAgICBpdGVtcy5mb3JFYWNoKChpdGVtLCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgaXRlbS5rZXlib2FyZFRyaWdnZXJlZFxuICAgICAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLnJlZnJlc2gkKSlcbiAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKChrZXlib2FyZEV2ZW50OiBLZXlib2FyZEV2ZW50KSA9PiB0aGlzLl9oYW5kbGVLZXlEb3duKGtleWJvYXJkRXZlbnQsIGluZGV4LCBpdGVtcykpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKiogUmVjdXJzaXZlIGZ1bmN0aW9uIHRvIGdldCBhbGwgb2YgdGhlIE5lc3RlZEl0ZW0gZWxlbWVudHMgaW4gY29ycmVjdCBvcmRlci4gKi9cbiAgICBwcml2YXRlIF9nZXRJdGVtcyhpdGVtOiBOZXN0ZWRJdGVtSW50ZXJmYWNlKTogTmVzdGVkSXRlbUludGVyZmFjZVtdIHtcbiAgICAgICAgY29uc3QgY2hpbGRyZW5JdGVtcyA9IGl0ZW0uZXhwYW5kZWQgPyBpdGVtLmFsbENoaWxkcmVuSXRlbXMgOiBbXTtcbiAgICAgICAgcmV0dXJuIGNoaWxkcmVuSXRlbXMucmVkdWNlKFxuICAgICAgICAgICAgKGFjdHVhbEFycmF5OiBOZXN0ZWRJdGVtSW50ZXJmYWNlW10sIG5leHRJdGVtOiBOZXN0ZWRJdGVtSW50ZXJmYWNlKSA9PiBbXG4gICAgICAgICAgICAgICAgLi4uYWN0dWFsQXJyYXksXG4gICAgICAgICAgICAgICAgLi4udGhpcy5fZ2V0SXRlbXMobmV4dEl0ZW0pXG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgW2l0ZW1dXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqIE1ldGhvZCB0aGF0IGNhbGxzIHRoZSByZWN1cnNpdmUgZnVuY3Rpb24sIGdldEl0ZW1zKCkgYW5kIGdhdGhlcnMgYWxsIG9mIHRoZSBpdGVtcyBpbiB0aGUgTmVzdGVkTGlzdCAqL1xuICAgIHByaXZhdGUgX2dldEFsbExpc3RJdGVtcyhsaXN0OiBOZXN0ZWRMaXN0SW50ZXJmYWNlKTogTmVzdGVkSXRlbUludGVyZmFjZVtdIHtcbiAgICAgICAgY29uc3QgX2l0ZW1zOiBOZXN0ZWRJdGVtSW50ZXJmYWNlW10gPSBbXTtcbiAgICAgICAgaWYgKGxpc3QgJiYgbGlzdC5uZXN0ZWRJdGVtcyAmJiBsaXN0Lm5lc3RlZEl0ZW1zLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIGxpc3QubmVzdGVkSXRlbXMuZm9yRWFjaCgoaXRlbSkgPT4ge1xuICAgICAgICAgICAgICAgIF9pdGVtcy5wdXNoKC4uLnRoaXMuX2dldEl0ZW1zKGl0ZW0pKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIF9pdGVtcztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBLZXlib2FyZCBoYW5kbGUgZnVuY3Rpb24uIFVzZXMga2V5Ym9hcmQgc3VwcG9ydCBzZXJ2aWNlIGZyb20gTWVudUNvbXBvbmVudCwgdG8gZGVhbCB3aXRoIEFycm93VXAsIEFycm93RG93biwgU3BhY2UsIEVudGVyLlxuICAgICAqIEZvciBBcnJvd1JpZ2h0LCBpZiBpdGVtIGlzIG5vdCBleHBhbmRlZCBhbmQgaGFzIGNoaWxkcmVuIChsaXN0IG9yIHBvcHVwKSwgdGhlIG9wZW4gZnVuY3Rpb24gaXMgdHJpZ2dlcmVkLlxuICAgICAqIE90aGVyd2lzZSBpdCBmb2xsb3dzIEFycm93RG93biBmdW5jdGlvbmFsaXR5LlxuICAgICAqIEZvciBBcnJvd0xlZnQsIGlmIGl0ZW0gaXMgZXhwYW5kZWQgYW5kIGhhcyBjaGlsZHJlbiAobGlzdCBvciBwb3B1cCksIHRoZSBjbG9zZSBmdW5jdGlvbiBpcyB0cmlnZ2VyZWQuXG4gICAgICogT3RoZXJ3aXNlIGl0IGZvbGxvd3MgQXJyb3dVcCBmdW5jdGlvbmFsaXR5XG4gICAgICovXG4gICAgcHJpdmF0ZSBfaGFuZGxlS2V5RG93bihrZXlib2FyZEV2ZW50OiBLZXlib2FyZEV2ZW50LCBpbmRleDogbnVtYmVyLCBpdGVtczogTmVzdGVkSXRlbUludGVyZmFjZVtdKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGl0ZW06IE5lc3RlZEl0ZW1JbnRlcmZhY2UgPSBpdGVtc1tpbmRleF07XG5cbiAgICAgICAgaWYgKEtleVV0aWwuaXNLZXlDb2RlKGtleWJvYXJkRXZlbnQsIFJJR0hUX0FSUk9XKSkge1xuICAgICAgICAgICAgaWYgKCFpdGVtLmV4cGFuZGVkICYmIGl0ZW0uaGFzQ2hpbGRyZW4pIHtcbiAgICAgICAgICAgICAgICBpdGVtLnRyaWdnZXJPcGVuKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBrZXlib2FyZEV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoS2V5VXRpbC5pc0tleUNvZGUoa2V5Ym9hcmRFdmVudCwgTEVGVF9BUlJPVykpIHtcbiAgICAgICAgICAgIGlmIChpdGVtLmV4cGFuZGVkICYmIGl0ZW0uaGFzQ2hpbGRyZW4pIHtcbiAgICAgICAgICAgICAgICBpdGVtLnRyaWdnZXJDbG9zZSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAga2V5Ym9hcmRFdmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKEtleVV0aWwuaXNLZXlDb2RlKGtleWJvYXJkRXZlbnQsIFtFTlRFUiwgU1BBQ0VdKSkge1xuICAgICAgICAgICAgaWYgKGl0ZW0uaGFzQ2hpbGRyZW4pIHtcbiAgICAgICAgICAgICAgICBpdGVtc1tpbmRleF0uY2xpY2soKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGtleWJvYXJkRXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMua2V5Ym9hcmRTZXJ2aWNlLmtleURvd25IYW5kbGVyKGtleWJvYXJkRXZlbnQsIGluZGV4LCBpdGVtcyk7XG4gICAgfVxufVxuIl19
|
|
@@ -81,7 +81,7 @@ export class NestedListPopoverComponent {
|
|
|
81
81
|
}
|
|
82
82
|
}
|
|
83
83
|
NestedListPopoverComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: NestedListPopoverComponent, deps: [{ token: i1.NestedListKeyboardService }, { token: i2.NestedItemService, optional: true }, { token: i3.RtlService, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
84
|
-
NestedListPopoverComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.4", type: NestedListPopoverComponent, selector: "fd-nested-list-popover", inputs: { title: "title" }, host: { properties: { "class.fd-nested-list__popover": "this.popoverClass" } }, queries: [{ propertyName: "linkDirective", first: true, predicate: NestedLinkDirective, descendants: true }, { propertyName: "contentDirective", first: true, predicate: NestedListContentDirective, descendants: true }], viewQueries: [{ propertyName: "popoverComponent", first: true, predicate: PopoverComponent, descendants: true }], ngImport: i0, template: "<fd-popover\n [placement]=\"placement$ | async\"\n [triggers]=\"['click']\"\n [noArrow]=\"false\"\n [isOpen]=\"open\"\n (isOpenChange)=\"handleOpenChange($event)\"\n>\n <fd-popover-control>\n <ng-content select=\"[fd-nested-list-link]\"></ng-content>\n <ng-content select=\"[fd-nested-list-content]\"></ng-content>\n </fd-popover-control>\n <fd-popover-body class=\"fd-nested-list--text-only\">\n <a fd-nested-list-link class=\"fd-nested-list__popover-header\">\n <span fd-nested-list-title>{{ title }}</span>\n </a>\n <ng-content select=\"[fd-nested-list]\"></ng-content>\n <ng-content select=\"fd-prepared-nested-list\"></ng-content>\n </fd-popover-body>\n</fd-popover>\n", styles: [".fd-side-nav--condensed .fd-popover-container-custom .fd-nested-list__title{display:inline-flex}.fd-side-nav--condensed .fd-nested-list__popover-header{box-shadow:0 0 .25rem #00000026,inset 0 -.0625rem #d9d9d9}.fd-side-nav--condensed .fd-popover-custom{display:block}[dir=rtl] .fd-side-nav--condensed .fd-popover-container-custom .fd-nested-list__link,.fd-side-nav--condensed[dir=rtl] .fd-popover-container-custom .fd-nested-list__link{padding-left:1rem}\n"], components: [{ type: i4.PopoverComponent, selector: "fd-popover", inputs: ["title", "trigger", "fixedPosition", "id", "mobile", "mobileConfig"] }, { type: i4.PopoverControlComponent, selector: "fd-popover-control" }, { type: i4.PopoverBodyComponent, selector: "fd-popover-body" }], directives: [{ type: i5.NestedLinkDirective, selector: "[fdNestedLink], [fd-nested-list-link]", inputs: ["onClickCallback", "selected"], outputs: ["selectedChange"] }, { type: i6.NestedListTitleDirective, selector: "[fdNestedDirectivesTitle], [fd-nested-list-title]" }], pipes: { "async": i7.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
84
|
+
NestedListPopoverComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.4", type: NestedListPopoverComponent, selector: "fd-nested-list-popover", inputs: { title: "title" }, host: { properties: { "class.fd-nested-list__popover": "this.popoverClass" } }, queries: [{ propertyName: "linkDirective", first: true, predicate: NestedLinkDirective, descendants: true }, { propertyName: "contentDirective", first: true, predicate: NestedListContentDirective, descendants: true }], viewQueries: [{ propertyName: "popoverComponent", first: true, predicate: PopoverComponent, descendants: true }], ngImport: i0, template: "<fd-popover\n [placement]=\"placement$ | async\"\n [triggers]=\"['click']\"\n [noArrow]=\"false\"\n [isOpen]=\"open\"\n (isOpenChange)=\"handleOpenChange($event)\"\n>\n <fd-popover-control>\n <ng-content select=\"[fd-nested-list-link]\"></ng-content>\n <ng-content select=\"[fd-nested-list-content]\"></ng-content>\n </fd-popover-control>\n <fd-popover-body class=\"fd-nested-list--text-only\">\n <a fd-nested-list-link class=\"fd-nested-list__popover-header\">\n <span fd-nested-list-title>{{ title }}</span>\n </a>\n <ng-content select=\"[fd-nested-list]\"></ng-content>\n <ng-content select=\"fd-prepared-nested-list\"></ng-content>\n </fd-popover-body>\n</fd-popover>\n", styles: [".fd-side-nav--condensed .fd-popover-container-custom .fd-nested-list__title{display:inline-flex}.fd-side-nav--condensed .fd-nested-list__popover-header{box-shadow:0 0 .25rem #00000026,inset 0 -.0625rem #d9d9d9}.fd-side-nav--condensed .fd-popover-custom{display:block}[dir=rtl] .fd-side-nav--condensed .fd-popover-container-custom .fd-nested-list__link,.fd-side-nav--condensed[dir=rtl] .fd-popover-container-custom .fd-nested-list__link{padding-left:1rem}\n"], components: [{ type: i4.PopoverComponent, selector: "fd-popover", inputs: ["title", "trigger", "fixedPosition", "id", "mobile", "mobileConfig"] }, { type: i4.PopoverControlComponent, selector: "fd-popover-control" }, { type: i4.PopoverBodyComponent, selector: "fd-popover-body" }], directives: [{ type: i5.NestedLinkDirective, selector: "[fdNestedLink], [fd-nested-list-link]", inputs: ["onClickCallback", "selected", "ariaDescribedby"], outputs: ["selectedChange"] }, { type: i6.NestedListTitleDirective, selector: "[fdNestedDirectivesTitle], [fd-nested-list-title]" }], pipes: { "async": i7.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
85
85
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: NestedListPopoverComponent, decorators: [{
|
|
86
86
|
type: Component,
|
|
87
87
|
args: [{ selector: 'fd-nested-list-popover', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<fd-popover\n [placement]=\"placement$ | async\"\n [triggers]=\"['click']\"\n [noArrow]=\"false\"\n [isOpen]=\"open\"\n (isOpenChange)=\"handleOpenChange($event)\"\n>\n <fd-popover-control>\n <ng-content select=\"[fd-nested-list-link]\"></ng-content>\n <ng-content select=\"[fd-nested-list-content]\"></ng-content>\n </fd-popover-control>\n <fd-popover-body class=\"fd-nested-list--text-only\">\n <a fd-nested-list-link class=\"fd-nested-list__popover-header\">\n <span fd-nested-list-title>{{ title }}</span>\n </a>\n <ng-content select=\"[fd-nested-list]\"></ng-content>\n <ng-content select=\"fd-prepared-nested-list\"></ng-content>\n </fd-popover-body>\n</fd-popover>\n", styles: [".fd-side-nav--condensed .fd-popover-container-custom .fd-nested-list__title{display:inline-flex}.fd-side-nav--condensed .fd-nested-list__popover-header{box-shadow:0 0 .25rem #00000026,inset 0 -.0625rem #d9d9d9}.fd-side-nav--condensed .fd-popover-custom{display:block}[dir=rtl] .fd-side-nav--condensed .fd-popover-container-custom .fd-nested-list__link,.fd-side-nav--condensed[dir=rtl] .fd-popover-container-custom .fd-nested-list__link{padding-left:1rem}\n"] }]
|
|
@@ -36,7 +36,7 @@ export class PreparedNestedListComponent {
|
|
|
36
36
|
}
|
|
37
37
|
}
|
|
38
38
|
PreparedNestedListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: PreparedNestedListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
39
|
-
PreparedNestedListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.4", type: PreparedNestedListComponent, selector: "fd-prepared-nested-list", inputs: { first: "first", condensed: "condensed", list: "list" }, viewQueries: [{ propertyName: "_nestedListDirective", first: true, predicate: i0.forwardRef(function () { return NestedListDirective; }), descendants: true }], ngImport: i0, template: "<ul fd-nested-list [textOnly]=\"!!list?.textOnly\">\n <ng-container *ngFor=\"let item of list?.items\">\n <li *ngIf=\"item.headerTitle\" fd-nested-list-header>\n {{ item.headerTitle }}\n </li>\n <li\n *ngIf=\"!item.headerTitle\"\n fd-nested-list-item\n [expanded]=\"!!item.expanded\"\n (expandedChange)=\"_expandedChange($event, item)\"\n >\n <fd-nested-list-popover *ngIf=\"condensed && first && item.list\" [title]=\"item.link?.title || ''\">\n <div fd-nested-list-content [selected]=\"!!item.link?.selected\">\n <ng-container [ngTemplateOutlet]=\"link\" [ngTemplateOutletContext]=\"{ item: item }\"></ng-container>\n <button fd-nested-list-expand-icon></button>\n </div>\n <fd-prepared-nested-list [first]=\"false\" *ngIf=\"item.list\" [list]=\"item.list\"></fd-prepared-nested-list>\n </fd-nested-list-popover>\n\n <ng-container *ngIf=\"!item.list\">\n <ng-container [ngTemplateOutlet]=\"link\" [ngTemplateOutletContext]=\"{ item: item }\"></ng-container>\n </ng-container>\n\n <ng-container *ngIf=\"(!condensed || !first) && item.list\">\n <div fd-nested-list-content>\n <ng-container [ngTemplateOutlet]=\"link\" [ngTemplateOutletContext]=\"{ item: item }\"></ng-container>\n <button fd-nested-list-expand-icon></button>\n </div>\n <fd-prepared-nested-list [first]=\"false\" *ngIf=\"item.list\" [list]=\"item.list\"></fd-prepared-nested-list>\n </ng-container>\n\n <ng-template let-item=\"item\" #link>\n <a\n fd-nested-list-link\n *ngIf=\"item.link\"\n [onClickCallback]=\"item.link.callback\"\n [(selected)]=\"!item.list && item.link.selected\"\n [attr.href]=\"item.link.href ? item.link.href : null\"\n [routerLink]=\"item.link.routerLink ? item.link.routerLink : []\"\n >\n <span fd-nested-list-icon *ngIf=\"item.link.icon\" [glyph]=\"item.link.icon\"></span>\n <span fd-nested-list-title>{{ item.link.title }}</span>\n </a>\n </ng-template>\n </li>\n </ng-container>\n</ul>\n", styles: [""], components: [{ type: i1.NestedListPopoverComponent, selector: "fd-nested-list-popover", inputs: ["title"] }, { type: i2.NestedListExpandIconComponent, selector: "[fdNestedListExpandIcon], [fd-nested-list-expand-icon]" }, { type: PreparedNestedListComponent, selector: "fd-prepared-nested-list", inputs: ["first", "condensed", "list"] }], directives: [{ type: i3.NestedListDirective, selector: "[fdNestedList], [fd-nested-list]", inputs: ["textOnly", "compact"] }, { type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NestedListHeaderDirective, selector: "[fdNestedDirectivesHeader], [fd-nested-list-header]" }, { type: i5.NestedItemDirective, selector: "[fdNestedItem], [fd-nested-list-item]", inputs: ["expanded"], outputs: ["expandedChange", "keyboardTriggered"] }, { type: i6.NestedListContentDirective, selector: "[fdNestedListContent], [fd-nested-list-content]", inputs: ["selected"], outputs: ["selectedChange", "keyboardTriggered", "clicked"] }, { type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i7.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo", "routerLink"] }, { type: i8.NestedLinkDirective, selector: "[fdNestedLink], [fd-nested-list-link]", inputs: ["onClickCallback", "selected"], outputs: ["selectedChange"] }, { type: i2.NestedListIconDirective, selector: "[fdNestedDirectivesIcon], [fd-nested-list-icon]", inputs: ["class", "glyph", "role"] }, { type: i2.NestedListTitleDirective, selector: "[fdNestedDirectivesTitle], [fd-nested-list-title]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
39
|
+
PreparedNestedListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.4", type: PreparedNestedListComponent, selector: "fd-prepared-nested-list", inputs: { first: "first", condensed: "condensed", list: "list" }, viewQueries: [{ propertyName: "_nestedListDirective", first: true, predicate: i0.forwardRef(function () { return NestedListDirective; }), descendants: true }], ngImport: i0, template: "<ul fd-nested-list [textOnly]=\"!!list?.textOnly\">\n <ng-container *ngFor=\"let item of list?.items\">\n <li *ngIf=\"item.headerTitle\" fd-nested-list-header>\n {{ item.headerTitle }}\n </li>\n <li\n *ngIf=\"!item.headerTitle\"\n fd-nested-list-item\n [expanded]=\"!!item.expanded\"\n (expandedChange)=\"_expandedChange($event, item)\"\n >\n <fd-nested-list-popover *ngIf=\"condensed && first && item.list\" [title]=\"item.link?.title || ''\">\n <div fd-nested-list-content [selected]=\"!!item.link?.selected\">\n <ng-container [ngTemplateOutlet]=\"link\" [ngTemplateOutletContext]=\"{ item: item }\"></ng-container>\n <button fd-nested-list-expand-icon></button>\n </div>\n <fd-prepared-nested-list [first]=\"false\" *ngIf=\"item.list\" [list]=\"item.list\"></fd-prepared-nested-list>\n </fd-nested-list-popover>\n\n <ng-container *ngIf=\"!item.list\">\n <ng-container [ngTemplateOutlet]=\"link\" [ngTemplateOutletContext]=\"{ item: item }\"></ng-container>\n </ng-container>\n\n <ng-container *ngIf=\"(!condensed || !first) && item.list\">\n <div fd-nested-list-content>\n <ng-container [ngTemplateOutlet]=\"link\" [ngTemplateOutletContext]=\"{ item: item }\"></ng-container>\n <button fd-nested-list-expand-icon></button>\n </div>\n <fd-prepared-nested-list [first]=\"false\" *ngIf=\"item.list\" [list]=\"item.list\"></fd-prepared-nested-list>\n </ng-container>\n\n <ng-template let-item=\"item\" #link>\n <a\n fd-nested-list-link\n *ngIf=\"item.link\"\n [onClickCallback]=\"item.link.callback\"\n [(selected)]=\"!item.list && item.link.selected\"\n [attr.href]=\"item.link.href ? item.link.href : null\"\n [routerLink]=\"item.link.routerLink ? item.link.routerLink : []\"\n >\n <span fd-nested-list-icon *ngIf=\"item.link.icon\" [glyph]=\"item.link.icon\"></span>\n <span fd-nested-list-title>{{ item.link.title }}</span>\n </a>\n </ng-template>\n </li>\n </ng-container>\n</ul>\n", styles: [""], components: [{ type: i1.NestedListPopoverComponent, selector: "fd-nested-list-popover", inputs: ["title"] }, { type: i2.NestedListExpandIconComponent, selector: "[fdNestedListExpandIcon], [fd-nested-list-expand-icon]" }, { type: PreparedNestedListComponent, selector: "fd-prepared-nested-list", inputs: ["first", "condensed", "list"] }], directives: [{ type: i3.NestedListDirective, selector: "[fdNestedList], [fd-nested-list]", inputs: ["textOnly", "compact", "ariaRoledescriptionTree", "ariaRoledescriptionMenuBar", "ariaLabelSelected"] }, { type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NestedListHeaderDirective, selector: "[fdNestedDirectivesHeader], [fd-nested-list-header]", inputs: ["id"] }, { type: i5.NestedItemDirective, selector: "[fdNestedItem], [fd-nested-list-item]", inputs: ["expanded"], outputs: ["expandedChange", "keyboardTriggered"] }, { type: i6.NestedListContentDirective, selector: "[fdNestedListContent], [fd-nested-list-content]", inputs: ["selected"], outputs: ["selectedChange", "keyboardTriggered", "clicked"] }, { type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i7.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo", "routerLink"] }, { type: i8.NestedLinkDirective, selector: "[fdNestedLink], [fd-nested-list-link]", inputs: ["onClickCallback", "selected", "ariaDescribedby"], outputs: ["selectedChange"] }, { type: i2.NestedListIconDirective, selector: "[fdNestedDirectivesIcon], [fd-nested-list-icon]", inputs: ["class", "glyph", "role"] }, { type: i2.NestedListTitleDirective, selector: "[fdNestedDirectivesTitle], [fd-nested-list-title]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
40
40
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: PreparedNestedListComponent, decorators: [{
|
|
41
41
|
type: Component,
|
|
42
42
|
args: [{ selector: 'fd-prepared-nested-list', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ul fd-nested-list [textOnly]=\"!!list?.textOnly\">\n <ng-container *ngFor=\"let item of list?.items\">\n <li *ngIf=\"item.headerTitle\" fd-nested-list-header>\n {{ item.headerTitle }}\n </li>\n <li\n *ngIf=\"!item.headerTitle\"\n fd-nested-list-item\n [expanded]=\"!!item.expanded\"\n (expandedChange)=\"_expandedChange($event, item)\"\n >\n <fd-nested-list-popover *ngIf=\"condensed && first && item.list\" [title]=\"item.link?.title || ''\">\n <div fd-nested-list-content [selected]=\"!!item.link?.selected\">\n <ng-container [ngTemplateOutlet]=\"link\" [ngTemplateOutletContext]=\"{ item: item }\"></ng-container>\n <button fd-nested-list-expand-icon></button>\n </div>\n <fd-prepared-nested-list [first]=\"false\" *ngIf=\"item.list\" [list]=\"item.list\"></fd-prepared-nested-list>\n </fd-nested-list-popover>\n\n <ng-container *ngIf=\"!item.list\">\n <ng-container [ngTemplateOutlet]=\"link\" [ngTemplateOutletContext]=\"{ item: item }\"></ng-container>\n </ng-container>\n\n <ng-container *ngIf=\"(!condensed || !first) && item.list\">\n <div fd-nested-list-content>\n <ng-container [ngTemplateOutlet]=\"link\" [ngTemplateOutletContext]=\"{ item: item }\"></ng-container>\n <button fd-nested-list-expand-icon></button>\n </div>\n <fd-prepared-nested-list [first]=\"false\" *ngIf=\"item.list\" [list]=\"item.list\"></fd-prepared-nested-list>\n </ng-container>\n\n <ng-template let-item=\"item\" #link>\n <a\n fd-nested-list-link\n *ngIf=\"item.link\"\n [onClickCallback]=\"item.link.callback\"\n [(selected)]=\"!item.list && item.link.selected\"\n [attr.href]=\"item.link.href ? item.link.href : null\"\n [routerLink]=\"item.link.routerLink ? item.link.routerLink : []\"\n >\n <span fd-nested-list-icon *ngIf=\"item.link.icon\" [glyph]=\"item.link.icon\"></span>\n <span fd-nested-list-title>{{ item.link.title }}</span>\n </a>\n </ng-template>\n </li>\n </ng-container>\n</ul>\n", styles: [""] }]
|