@eui/components 17.0.1-snapshot-1701096824737 → 17.0.1-snapshot-1701254423874
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/directives/eui-smooth-scroll.directive.d.ts +0 -1
- package/directives/eui-smooth-scroll.directive.d.ts.map +1 -1
- package/docs/components/EuiAppTopMessageComponent.html +24 -0
- package/docs/components/EuiBadgeComponent.html +1 -1
- package/docs/components/EuiButtonComponent.html +54 -372
- package/docs/components/EuiButtonGroupComponent.html +65 -829
- package/docs/components/EuiButtonsComponent.html +25 -1
- package/docs/components/EuiCardComponent.html +59 -574
- package/docs/components/EuiChipComponent.html +34 -124
- package/docs/components/EuiChipListComponent.html +24 -0
- package/docs/components/EuiDatepickerComponent.html +24 -0
- package/docs/components/EuiDialogComponent.html +37 -0
- package/docs/components/EuiDiscussionThreadComponent.html +100 -1
- package/docs/components/EuiDiscussionThreadItemComponent.html +100 -1
- package/docs/components/EuiDropdownComponent.html +24 -0
- package/docs/components/EuiFeedbackMessageComponent.html +24 -0
- package/docs/components/EuiFooterComponent.html +24 -0
- package/docs/components/EuiIconComponent.html +24 -0
- package/docs/components/EuiIconSvgComponent.html +25 -1
- package/docs/components/EuiLabelComponent.html +24 -0
- package/docs/components/EuiLanguageSelectorComponent.html +24 -0
- package/docs/components/EuiListComponent.html +24 -0
- package/docs/components/EuiListItemComponent.html +24 -0
- package/docs/components/EuiMessageBoxComponent.html +37 -0
- package/docs/components/EuiOverlayBodyComponent.html +24 -0
- package/docs/components/EuiOverlayComponent.html +24 -0
- package/docs/components/EuiOverlayFooterComponent.html +24 -0
- package/docs/components/EuiOverlayHeaderComponent.html +24 -0
- package/docs/components/EuiOverlayHeaderTitleComponent.html +24 -0
- package/docs/components/EuiPageColumnComponent.html +24 -0
- package/docs/components/EuiPageFooterComponent.html +24 -0
- package/docs/components/EuiPageTopContentComponent.html +24 -0
- package/docs/components/EuiPopoverComponent.html +37 -0
- package/docs/components/EuiProgressCircleComponent.html +24 -0
- package/docs/components/EuiSlideToggleComponent.html +24 -0
- package/docs/components/EuiTabComponent.html +37 -0
- package/docs/components/EuiTableComponent.html +24 -0
- package/docs/components/EuiTableFilterComponent.html +24 -0
- package/docs/components/EuiTextareaComponent.html +37 -0
- package/docs/components/EuiToolbarItemsComponent.html +24 -0
- package/docs/components/EuiTreeComponent.html +26 -2
- package/docs/components/EuiUserProfileComponent.html +44 -9
- package/docs/dependencies.html +2 -2
- package/docs/directives/BaseDirective.html +57 -0
- package/docs/directives/BaseStatesDirective.html +138 -0
- package/docs/directives/EuiButtonsActionsContentTagDirective.html +119 -7
- package/docs/directives/EuiButtonsLocalMenuContentTagDirective.html +119 -7
- package/docs/directives/EuiSmoothScrollToDirective.html +0 -13
- package/docs/js/menu-wc.js +18 -18
- package/docs/js/menu-wc_es5.js +1 -1
- package/docs/js/search/search_index.js +2 -2
- package/esm2022/directives/eui-smooth-scroll.directive.mjs +2 -3
- package/esm2022/eui-avatar/eui-avatar.component.mjs +2 -2
- package/esm2022/eui-badge/eui-badge.component.mjs +8 -3
- package/esm2022/eui-button/eui-button.component.mjs +23 -54
- package/esm2022/eui-button-group/eui-button-group.component.mjs +18 -31
- package/esm2022/eui-buttons/eui-buttons.component.mjs +19 -7
- package/esm2022/eui-card/eui-card.component.mjs +36 -87
- package/esm2022/eui-chip/eui-chip.component.mjs +23 -34
- package/esm2022/eui-dashboard-button/eui-dashboard-button.component.mjs +2 -2
- package/esm2022/eui-discussion-thread/eui-discussion-thread-item.component.mjs +9 -5
- package/esm2022/eui-discussion-thread/eui-discussion-thread.component.mjs +11 -5
- package/esm2022/eui-fieldset/eui-fieldset.component.mjs +2 -2
- package/esm2022/eui-icon/eui-icon-svg.component.mjs +3 -3
- package/esm2022/eui-icon/eui-icon.component.mjs +2 -2
- package/esm2022/eui-select/eui-select.component.mjs +2 -1
- package/esm2022/eui-tabs/eui-tab/eui-tab.component.mjs +2 -2
- package/esm2022/eui-tabs/eui-tabs.component.mjs +2 -2
- package/esm2022/eui-tree/eui-tree-helper.mjs +7 -4
- package/esm2022/eui-tree/eui-tree.component.mjs +119 -63
- package/esm2022/eui-tree/eui-tree.model.mjs +1 -1
- package/esm2022/layout/eui-notifications/eui-notifications.component.mjs +2 -2
- package/esm2022/layout/eui-notifications-v2/eui-notifications.component.mjs +2 -2
- package/esm2022/layout/eui-user-profile/user-profile.component.mjs +27 -38
- package/esm2022/shared/base/base-states.directive.mjs +22 -8
- package/esm2022/shared/base/base.directive.mjs +9 -8
- package/eui-badge/eui-badge.component.d.ts +1 -1
- package/eui-badge/eui-badge.component.d.ts.map +1 -1
- package/eui-button/eui-button.component.d.ts +13 -20
- package/eui-button/eui-button.component.d.ts.map +1 -1
- package/eui-button-group/eui-button-group.component.d.ts +6 -11
- package/eui-button-group/eui-button-group.component.d.ts.map +1 -1
- package/eui-buttons/eui-buttons.component.d.ts +2 -0
- package/eui-buttons/eui-buttons.component.d.ts.map +1 -1
- package/eui-card/eui-card.component.d.ts +16 -32
- package/eui-card/eui-card.component.d.ts.map +1 -1
- package/eui-chip/eui-chip.component.d.ts +7 -10
- package/eui-chip/eui-chip.component.d.ts.map +1 -1
- package/eui-discussion-thread/eui-discussion-thread-item.component.d.ts +1 -0
- package/eui-discussion-thread/eui-discussion-thread-item.component.d.ts.map +1 -1
- package/eui-discussion-thread/eui-discussion-thread.component.d.ts +1 -0
- package/eui-discussion-thread/eui-discussion-thread.component.d.ts.map +1 -1
- package/eui-icon/eui-icon-svg.component.d.ts +1 -1
- package/eui-icon/eui-icon-svg.component.d.ts.map +1 -1
- package/eui-select/eui-select.component.d.ts.map +1 -1
- package/eui-tree/eui-tree-helper.d.ts.map +1 -1
- package/eui-tree/eui-tree.component.d.ts +3 -1
- package/eui-tree/eui-tree.component.d.ts.map +1 -1
- package/eui-tree/eui-tree.model.d.ts +1 -0
- package/eui-tree/eui-tree.model.d.ts.map +1 -1
- package/fesm2022/eui-components-directives.mjs +1 -2
- package/fesm2022/eui-components-directives.mjs.map +1 -1
- package/fesm2022/eui-components-eui-avatar.mjs +2 -2
- package/fesm2022/eui-components-eui-avatar.mjs.map +1 -1
- package/fesm2022/eui-components-eui-badge.mjs +7 -2
- package/fesm2022/eui-components-eui-badge.mjs.map +1 -1
- package/fesm2022/eui-components-eui-button-group.mjs +17 -30
- package/fesm2022/eui-components-eui-button-group.mjs.map +1 -1
- package/fesm2022/eui-components-eui-button.mjs +22 -53
- package/fesm2022/eui-components-eui-button.mjs.map +1 -1
- package/fesm2022/eui-components-eui-buttons.mjs +18 -6
- package/fesm2022/eui-components-eui-buttons.mjs.map +1 -1
- package/fesm2022/eui-components-eui-card.mjs +35 -82
- package/fesm2022/eui-components-eui-card.mjs.map +1 -1
- package/fesm2022/eui-components-eui-chip.mjs +22 -33
- package/fesm2022/eui-components-eui-chip.mjs.map +1 -1
- package/fesm2022/eui-components-eui-dashboard-button.mjs +2 -2
- package/fesm2022/eui-components-eui-dashboard-button.mjs.map +1 -1
- package/fesm2022/eui-components-eui-discussion-thread.mjs +17 -7
- package/fesm2022/eui-components-eui-discussion-thread.mjs.map +1 -1
- package/fesm2022/eui-components-eui-fieldset.mjs +2 -2
- package/fesm2022/eui-components-eui-fieldset.mjs.map +1 -1
- package/fesm2022/eui-components-eui-icon.mjs +4 -4
- package/fesm2022/eui-components-eui-icon.mjs.map +1 -1
- package/fesm2022/eui-components-eui-select.mjs +1 -0
- package/fesm2022/eui-components-eui-select.mjs.map +1 -1
- package/fesm2022/eui-components-eui-tabs.mjs +4 -4
- package/fesm2022/eui-components-eui-tabs.mjs.map +1 -1
- package/fesm2022/eui-components-eui-tree.mjs +124 -65
- package/fesm2022/eui-components-eui-tree.mjs.map +1 -1
- package/fesm2022/eui-components-layout.mjs +98 -108
- package/fesm2022/eui-components-layout.mjs.map +1 -1
- package/fesm2022/eui-components-shared-base.mjs +28 -13
- package/fesm2022/eui-components-shared-base.mjs.map +1 -1
- package/layout/eui-user-profile/user-profile.component.d.ts +19 -11
- package/layout/eui-user-profile/user-profile.component.d.ts.map +1 -1
- package/package.json +7 -7
- package/shared/base/base-states.directive.d.ts +5 -1
- package/shared/base/base-states.directive.d.ts.map +1 -1
- package/shared/base/base.directive.d.ts +1 -0
- package/shared/base/base.directive.d.ts.map +1 -1
@@ -72,4 +72,4 @@ export class EuiTreePagination {
|
|
72
72
|
};
|
73
73
|
}
|
74
74
|
}
|
75
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXVpLXRyZWUubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9ldWktdHJlZS9ldWktdHJlZS5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFtR0EsK0RBQStEO0FBQy9ELE1BQU0sVUFBVSx5QkFBeUIsQ0FBQyxPQUE0QjtJQUNsRSxPQUFPLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtRQUN4QixJQUFJLElBQUksRUFBRSxTQUFTLEtBQUssU0FBUyxFQUFFO1lBQy9CLDRCQUE0QjtZQUM1QixJQUFJLENBQUMsU0FBUyxHQUFHLFdBQVcsQ0FBQztTQUNoQztRQUNELElBQUksSUFBSSxFQUFFLFVBQVUsRUFBRTtZQUNsQiw0QkFBNEI7WUFDNUIsSUFBSSxJQUFJLEVBQUUsTUFBTSxFQUFFLE1BQU0sR0FBRyxDQUFDLEVBQUU7Z0JBQzFCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxDQUFDLENBQUM7YUFDekU7aUJBQU07Z0JBQ0gsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxDQUFDLENBQUM7YUFDdkU7U0FDSjtRQUNELE9BQU87WUFDSCxJQUFJLEVBQUU7Z0JBQ0YsZ0JBQWdCLEVBQUU7b0JBQ2QsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLO29CQUNqQixTQUFTLEVBQUUsSUFBSSxDQUFDLFNBQVM7b0JBQ3pCLFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUztvQkFDM0UsWUFBWSxFQUFFLElBQUksQ0FBQyxZQUFZO29CQUMvQixHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUc7b0JBQ2IsV0FBVyxFQUFFLElBQUksQ0FBQyxXQUFXO29CQUM3QixpQkFBaUIsRUFBRSxJQUFJLENBQUMsV0FBVyxJQUFJLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxTQUFTO29CQUNsRyxNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU07b0JBQ25CLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUTtpQkFDMUI7YUFDSjtZQUNELFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyx5QkFBeUIsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVM7U0FDakYsQ0FBQztJQUNOLENBQUMsQ0FBQyxDQUFDO0FBQ1AsQ0FBQztBQUVELE1BQU0sT0FBTyxpQkFBaUI7SUFRMUIsWUFBWSxJQUFTLEVBQUUsU0FBaUIsRUFBRSxpQkFBeUIsRUFBRSxPQUFlO1FBQ2hGLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUNwQyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsaUJBQWlCLENBQUM7UUFDM0MsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQztRQUNuQyxJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQztRQUN2QixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDaEUsQ0FBQztJQUVNLFlBQVk7UUFDZixJQUFJLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFVBQVUsRUFBRTtZQUNsQyxJQUFJLENBQUMsU0FBUyxJQUFJLENBQUMsQ0FBQztTQUN2QjtRQUNELE9BQU8sSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQzlCLENBQUM7SUFFTSxZQUFZO1FBQ2YsSUFBSSxJQUFJLENBQUMsU0FBUyxHQUFHLENBQUMsRUFBRTtZQUNwQixJQUFJLENBQUMsU0FBUyxJQUFJLENBQUMsQ0FBQztTQUN2QjtRQUNELE9BQU8sSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQzlCLENBQUM7SUFFTSxtQkFBbUI7UUFDdEIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQzFCLENBQUM7SUFFTSxtQkFBbUIsQ0FBQyxTQUFpQjtRQUN4QyxJQUFJLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQztJQUMvQixDQUFDO0lBRU0sT0FBTztRQUNWLE9BQU8sSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQztJQUNyRSxDQUFDO0lBRU0sV0FBVztRQUNkLE1BQU0sVUFBVSxHQUFHLENBQUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDO1FBQ3ZELE1BQU0sUUFBUSxHQUFHLFVBQVUsR0FBRyxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQztRQUNwRSxNQUFNLFFBQVEsR0FBRyxlQUFlLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQUssQ0FBQyxVQUFVLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDeEUsT0FBTztZQUNILFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUztZQUN6QixJQUFJLEVBQUUsUUFBUTtTQUNqQixDQUFDO0lBQ04sQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVXhMaW5rTGVnYWN5IH0gZnJvbSAnQGV1aS9iYXNlJztcblxuZXhwb3J0IHR5cGUgVHJlZURhdGFNb2RlbCA9IEFycmF5PFRyZWVJdGVtTW9kZWw+O1xuXG5leHBvcnQgdHlwZSBUcmVlSXRlbU1vZGVsID0ge1xuICAgIG5vZGU6IFRyZWVOb2RlO1xuICAgIGNoaWxkcmVuPzogVHJlZURhdGFNb2RlbDtcbn07XG5cbmV4cG9ydCB0eXBlIFRyZWVOb2RlID0ge1xuICAgIC8vIG1ldGFkYXRhIGNhbiBiZSBibG9jayBjb250ZW50LCBvciBhbnlcbiAgICAvLyBUT0RPOiBmaW5kIHRoZSBjb3JyZWN0IHR5cGUgb3IgdHVybiBpbnRvIGEgZ2VuZXJpYywgaHR0cHM6Ly93d3cudHlwZXNjcmlwdGxhbmcub3JnL2RvY3MvaGFuZGJvb2svMi9nZW5lcmljcy5odG1sXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICB0cmVlQ29udGVudEJsb2NrOiBFdWlUcmVlQ29udGVudEJsb2NrTW9kZWwgfCBhbnk7XG59ICYgU2VsZWN0aW9uTW9kZWwgJlxuICAgIEV4cGFuZE1vZGVsO1xuXG5leHBvcnQgaW50ZXJmYWNlIEV1aVRyZWVDb250ZW50QmxvY2tNb2RlbCB7XG4gICAgaWQ/OiBzdHJpbmcgfCBudW1iZXI7XG4gICAgbGFiZWw6IHN0cmluZztcbiAgICB0b29sdGlwTGFiZWw6IHN0cmluZztcbiAgICB1cmw6IHN0cmluZztcbiAgICB1cmxFeHRlcm5hbDogc3RyaW5nO1xuICAgIHVybEV4dGVybmFsVGFyZ2V0OiBzdHJpbmc7XG4gICAgdHlwZUxhYmVsOiBzdHJpbmc7XG4gICAgdHlwZUNsYXNzOiBzdHJpbmc7XG4gICAgY2hpcHM/OiBBcnJheTx7IGxhYmVsOiBzdHJpbmc7IHR5cGVDbGFzcz86IHN0cmluZzsgaXNPdXRsaW5lPzogYm9vbGVhbiB9PjtcbiAgICBpY29uQ2xhc3M6IHN0cmluZztcbiAgICBpY29uVHlwZUNsYXNzOiBzdHJpbmc7XG4gICAgaWNvblN2Z05hbWU/OiBzdHJpbmc7XG4gICAgcmlnaHRDb250ZW50Pzoge1xuICAgICAgICBpY29uQ2xhc3M6IHN0cmluZztcbiAgICAgICAgaWNvblR5cGVDbGFzczogc3RyaW5nO1xuICAgICAgICBpY29uU3ZnTmFtZT86IHN0cmluZztcbiAgICAgICAgYmFkZ2VzPzogQXJyYXk8eyBsYWJlbDogc3RyaW5nOyB0eXBlQ2xhc3M6IHN0cmluZyB9PjtcbiAgICAgICAgY2hpcHM/OiBBcnJheTx7IGxhYmVsOiBzdHJpbmc7IHR5cGVDbGFzcz86IHN0cmluZzsgaXNPdXRsaW5lPzogYm9vbGVhbiB9PjtcbiAgICAgICAgLy8gVE9ETzogZmluZCB0aGUgY29ycmVjdCB0eXBlIG9yIHR1cm4gaW50byBhIGdlbmVyaWMsIGh0dHBzOi8vd3d3LnR5cGVzY3JpcHRsYW5nLm9yZy9kb2NzL2hhbmRib29rLzIvZ2VuZXJpY3MuaHRtbFxuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgICAgICBjb250ZXh0TWVudU1ldGFEYXRhPzogYW55O1xuICAgIH07XG4gICAgbWV0YURhdGE6IHN0cmluZztcblxuICAgIC8vIFRPRE86IGZpbmQgdGhlIGNvcnJlY3QgdHlwZSBvciB0dXJuIGludG8gYSBnZW5lcmljLCBodHRwczovL3d3dy50eXBlc2NyaXB0bGFuZy5vcmcvZG9jcy9oYW5kYm9vay8yL2dlbmVyaWNzLmh0bWxcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgIFtrZXk6IHN0cmluZ106IGFueTtcbn1cblxuZXhwb3J0IHR5cGUgU2VsZWN0aW9uTW9kZWwgPSB7XG4gICAgc2VsZWN0YWJsZT86IGJvb2xlYW47XG4gICAgaXNTZWxlY3RlZD86IGJvb2xlYW47XG4gICAgLy8gaWYgb25lIG9mIHN1YiBpcyBzZWxlY3RlZCwgaXQgYmVjb21lcyBpbnRlcm1lZGlhdGVcbiAgICBpc0luZGV0ZXJtaW5hdGU/OiBib29sZWFuO1xuICAgIHNlbGVjdENvbmZpZz86IFNlbGVjdENvbmZpZ01vZGVsO1xufTtcblxuZXhwb3J0IGludGVyZmFjZSBTZWxlY3RDb25maWdNb2RlbCBleHRlbmRzIE11bHRpU2VsZWN0aW9uTG9naWMsIFNpbmdsZVNlbGVjdGlvbkxvZ2ljIHtcbiAgICAvKlxuICAgIElmIEl0IGlzIHRydWU7XG4gICAgV2hlbiB1c2VyIHNlbGVjdCBwYXJlbnQsIGFsbCB0aGUgY2hpbGRyZW4gd2lsbCBiZSBzZWxlY3RlZFxuICAgIFdoZW4gc2VsZWN0aW9uIHN0YXRlIGlzIGNoYW5nZWQsIElmIGFsbCBjaGlsZHJlbiBpcyBzZWxlY3RlZCBwYXJlbnQgd2lsbCBiZSBzZWxlY3RlZCBhcyBsb25nIGFzIG5vQXV0b1NlbGVjdFBhcmVudCBpcyBub3QgdHJ1ZVxuICAgICovXG4gICAgcmVjdXJzaXZlPzogYm9vbGVhbjtcbiAgICAvKiB3aGVuIEl0IGlzIHRydWUsIElmIGFsbCBjaGlsZHJlbiBpcyBzZWxlY3RlZCwgcGFyZW50IHdpbGwgbm90IGJlIHNlbGVjdGVkLCB3aGlsZSByZWN1cnNpdmUgaXMgdHJ1ZSovXG4gICAgbm9BdXRvU2VsZWN0UGFyZW50PzogYm9vbGVhbjtcbiAgICBzaW5nbGVTZWxlY3Q/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE11bHRpU2VsZWN0aW9uTG9naWMge1xuICAgIC8qXG4gICAgSWYgSXQgaXMgdHJ1ZTtcbiAgICBXaGVuIHVzZXIgc2VsZWN0IHBhcmVudCwgYWxsIHRoZSBjaGlsZHJlbiB3aWxsIGJlIHNlbGVjdGVkXG4gICAgV2hlbiBzZWxlY3Rpb24gc3RhdGUgaXMgY2hhbmdlZCwgSWYgYWxsIGNoaWxkcmVuIGlzIHNlbGVjdGVkIHBhcmVudCB3aWxsIGJlIHNlbGVjdGVkIGFzIGxvbmcgYXMgbm9BdXRvU2VsZWN0UGFyZW50IGlzIG5vdCB0cnVlXG4gICAgKi9cbiAgICByZWN1cnNpdmU/OiBib29sZWFuO1xuICAgIC8qIHdoZW4gSXQgaXMgdHJ1ZSwgSWYgYWxsIGNoaWxkcmVuIGlzIHNlbGVjdGVkLCBwYXJlbnQgd2lsbCBub3QgYmUgc2VsZWN0ZWQsIHdoaWxlIHJlY3Vyc2l2ZSBpcyB0cnVlKi9cbiAgICBub0F1dG9TZWxlY3RQYXJlbnQ/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNpbmdsZVNlbGVjdGlvbkxvZ2ljIHtcbiAgICBzaW5nbGVTZWxlY3Q/OiBib29sZWFuO1xufVxuXG5leHBvcnQgdHlwZSBFeHBhbmRNb2RlbCA9IHtcbiAgICBpc0V4cGFuZGVkPzogYm9vbGVhbjtcbn07XG5cbmV4cG9ydCB0eXBlIEV1aVRyZWVTZWxlY3Rpb25DaGFuZ2VzID0geyBhZGRlZDogVHJlZURhdGFNb2RlbDsgcmVtb3ZlZDogVHJlZURhdGFNb2RlbDsgc2VsZWN0aW9uOiBUcmVlRGF0YU1vZGVsIH07XG5cbmV4cG9ydCB0eXBlIFRyZWVEYXRhUnVuVGltZU1vZGVsID0gQXJyYXk8VHJlZUl0ZW1SdW5UaW1lTW9kZWw+O1xuXG5leHBvcnQgdHlwZSBUcmVlSXRlbVJ1blRpbWVNb2RlbCA9IHsgaW5kZXg6IG51bWJlcjsgcGF0aDogc3RyaW5nOyBjaGlsZHJlbj86IEFycmF5PFRyZWVJdGVtUnVuVGltZU1vZGVsPjsgbGFzdD86IGJvb2xlYW4gfTtcblxuZXhwb3J0IHR5cGUgVHJlZUl0ZW1TZWxlY3Rpb25SZWN1cnNpdmVNb2RlbCA9IHtcbiAgICBzZWxlY3Rpb25SZWN1cnNpdmVTdGF0ZTogU2VsZWN0aW9uUmVjdXJzaXZlU3RhdGU7XG4gICAgY2hpbGRyZW4/OiBBcnJheTxUcmVlSXRlbVNlbGVjdGlvblJlY3Vyc2l2ZU1vZGVsPjtcbn07XG5cbmV4cG9ydCB0eXBlIFNlbGVjdGlvblJlY3Vyc2l2ZVN0YXRlID0gJ2luZGV0ZXJtaW5hdGUnIHwgJ2FsbFNlbGVjdGVkJyB8ICdhbGxOb3RTZWxlY3RlZCc7XG5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBwcmVmZXItYXJyb3cvcHJlZmVyLWFycm93LWZ1bmN0aW9uc1xuZXhwb3J0IGZ1bmN0aW9uIHV4VHJlZU5vZGVzTWV0YURhdGFNYXBwZXIob2xkVHJlZTogQXJyYXk8VXhMaW5rTGVnYWN5Pik6IFRyZWVEYXRhTW9kZWwge1xuICAgIHJldHVybiBvbGRUcmVlLm1hcCgoaXRlbSkgPT4ge1xuICAgICAgICBpZiAoaXRlbT8udHlwZUNsYXNzID09PSAnZGVmYXVsdCcpIHtcbiAgICAgICAgICAgIC8vIGRlZmF1bHQgdHlwZUNsYXNzIHdpbGwgYmVcbiAgICAgICAgICAgIGl0ZW0udHlwZUNsYXNzID0gJ3NlY29uZGFyeSc7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGl0ZW0/LmJhZGdlTGFiZWwpIHtcbiAgICAgICAgICAgIC8vIGRlZmF1bHQgdHlwZUNsYXNzIHdpbGwgYmVcbiAgICAgICAgICAgIGlmIChpdGVtPy5iYWRnZXM/Lmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgICAgICBpdGVtLmJhZGdlcy5wdXNoKHsgbGFiZWw6IGl0ZW0/LmJhZGdlTGFiZWwsIHR5cGVDbGFzczogJ3NlY29uZGFyeScgfSk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGl0ZW0uYmFkZ2VzID0gW3sgbGFiZWw6IGl0ZW0/LmJhZGdlTGFiZWwsIHR5cGVDbGFzczogJ3NlY29uZGFyeScgfV07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIG5vZGU6IHtcbiAgICAgICAgICAgICAgICB0cmVlQ29udGVudEJsb2NrOiB7XG4gICAgICAgICAgICAgICAgICAgIGxhYmVsOiBpdGVtLmxhYmVsLFxuICAgICAgICAgICAgICAgICAgICB0eXBlTGFiZWw6IGl0ZW0udHlwZUxhYmVsLFxuICAgICAgICAgICAgICAgICAgICB0eXBlQ2xhc3M6IGl0ZW0udHlwZUxhYmVsICYmICFpdGVtLnR5cGVDbGFzcyA/ICdzZWNvbmRhcnknIDogaXRlbS50eXBlQ2xhc3MsXG4gICAgICAgICAgICAgICAgICAgIHRvb2x0aXBMYWJlbDogaXRlbS50b29sdGlwTGFiZWwsXG4gICAgICAgICAgICAgICAgICAgIHVybDogaXRlbS51cmwsXG4gICAgICAgICAgICAgICAgICAgIHVybEV4dGVybmFsOiBpdGVtLnVybEV4dGVybmFsLFxuICAgICAgICAgICAgICAgICAgICB1cmxFeHRlcm5hbFRhcmdldDogaXRlbS51cmxFeHRlcm5hbCAmJiBpdGVtLnVybEV4dGVybmFsVGFyZ2V0ID8gaXRlbS51cmxFeHRlcm5hbFRhcmdldCA6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgICAgICAgICAgYmFkZ2VzOiBpdGVtLmJhZGdlcyxcbiAgICAgICAgICAgICAgICAgICAgbWV0YWRhdGE6IGl0ZW0ubWV0YWRhdGEsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBjaGlsZHJlbjogaXRlbS5jaGlsZHJlbiA/IHV4VHJlZU5vZGVzTWV0YURhdGFNYXBwZXIoaXRlbS5jaGlsZHJlbikgOiB1bmRlZmluZWQsXG4gICAgICAgIH07XG4gICAgfSk7XG59XG5cbmV4cG9ydCBjbGFzcyBFdWlUcmVlUGFnaW5hdGlvbjxUPiB7XG4gICAgcHJpdmF0ZSBkYXRhOiBUW107XG4gICAgcHJpdmF0ZSBzdGFydFBhZ2U6IG51bWJlcjtcbiAgICBwcml2YXRlIHRvdGFsSXRlbXM6IG51bWJlcjtcbiAgICBwcml2YXRlIHJlbmRlcmVkUGFnZUNvdW50OiBudW1iZXI7XG4gICAgcHJpdmF0ZSBwZXJQYWdlOiBudW1iZXI7XG4gICAgcHJpdmF0ZSB0b3RhbFBhZ2VzOiBudW1iZXI7XG5cbiAgICBjb25zdHJ1Y3RvcihkYXRhOiBUW10sIHN0YXJ0UGFnZTogbnVtYmVyLCByZW5kZXJlZFBhZ2VDb3VudDogbnVtYmVyLCBwZXJQYWdlOiBudW1iZXIpIHtcbiAgICAgICAgdGhpcy5kYXRhID0gZGF0YTtcbiAgICAgICAgdGhpcy5zZXRDdXJyZW50U3RhcnRQYWdlKHN0YXJ0UGFnZSk7XG4gICAgICAgIHRoaXMucmVuZGVyZWRQYWdlQ291bnQgPSByZW5kZXJlZFBhZ2VDb3VudDtcbiAgICAgICAgdGhpcy50b3RhbEl0ZW1zID0gdGhpcy5kYXRhLmxlbmd0aDtcbiAgICAgICAgdGhpcy5wZXJQYWdlID0gcGVyUGFnZTtcbiAgICAgICAgdGhpcy50b3RhbFBhZ2VzID0gTWF0aC5jZWlsKHRoaXMudG90YWxJdGVtcyAvIHRoaXMucGVyUGFnZSk7XG4gICAgfVxuXG4gICAgcHVibGljIHBhZ2luYXRlTmV4dCgpOiB7IHN0YXJ0UGFnZTogbnVtYmVyOyBkYXRhOiBUW10gfSB7XG4gICAgICAgIGlmICh0aGlzLnN0YXJ0UGFnZSA8IHRoaXMudG90YWxQYWdlcykge1xuICAgICAgICAgICAgdGhpcy5zdGFydFBhZ2UgKz0gMTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdGhpcy5nZXRWaWV3RGF0YSgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBwYWdpbmF0ZVByZXYoKTogeyBzdGFydFBhZ2U6IG51bWJlcjsgZGF0YTogVFtdIH0ge1xuICAgICAgICBpZiAodGhpcy5zdGFydFBhZ2UgPiAxKSB7XG4gICAgICAgICAgICB0aGlzLnN0YXJ0UGFnZSAtPSAxO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0aGlzLmdldFZpZXdEYXRhKCk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldEN1cnJlbnRTdGFydFBhZ2UoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc3RhcnRQYWdlO1xuICAgIH1cblxuICAgIHB1YmxpYyBzZXRDdXJyZW50U3RhcnRQYWdlKHN0YXJ0UGFnZTogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc3RhcnRQYWdlID0gc3RhcnRQYWdlO1xuICAgIH1cblxuICAgIHB1YmxpYyBpc0F0TWF4KCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy50b3RhbFBhZ2VzIDwgdGhpcy5zdGFydFBhZ2UgKyB0aGlzLnJlbmRlcmVkUGFnZUNvdW50O1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRWaWV3RGF0YSgpOiB7IHN0YXJ0UGFnZTogbnVtYmVyOyBkYXRhOiBUW10gfSB7XG4gICAgICAgIGNvbnN0IHN0YXJ0SW5kZXggPSAodGhpcy5zdGFydFBhZ2UgLSAxKSAqIHRoaXMucGVyUGFnZTtcbiAgICAgICAgY29uc3QgZW5kSW5kZXggPSBzdGFydEluZGV4ICsgdGhpcy5wZXJQYWdlICogdGhpcy5yZW5kZXJlZFBhZ2VDb3VudDtcbiAgICAgICAgY29uc3QgcGFnZURhdGEgPSBzdHJ1Y3R1cmVkQ2xvbmUodGhpcy5kYXRhKS5zbGljZShzdGFydEluZGV4LCBlbmRJbmRleCk7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBzdGFydFBhZ2U6IHRoaXMuc3RhcnRQYWdlLFxuICAgICAgICAgICAgZGF0YTogcGFnZURhdGEsXG4gICAgICAgIH07XG4gICAgfVxufVxuIl19
|
75
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXVpLXRyZWUubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9ldWktdHJlZS9ldWktdHJlZS5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFtR0EsK0RBQStEO0FBQy9ELE1BQU0sVUFBVSx5QkFBeUIsQ0FBQyxPQUE0QjtJQUNsRSxPQUFPLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtRQUN4QixJQUFJLElBQUksRUFBRSxTQUFTLEtBQUssU0FBUyxFQUFFO1lBQy9CLDRCQUE0QjtZQUM1QixJQUFJLENBQUMsU0FBUyxHQUFHLFdBQVcsQ0FBQztTQUNoQztRQUNELElBQUksSUFBSSxFQUFFLFVBQVUsRUFBRTtZQUNsQiw0QkFBNEI7WUFDNUIsSUFBSSxJQUFJLEVBQUUsTUFBTSxFQUFFLE1BQU0sR0FBRyxDQUFDLEVBQUU7Z0JBQzFCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxDQUFDLENBQUM7YUFDekU7aUJBQU07Z0JBQ0gsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxDQUFDLENBQUM7YUFDdkU7U0FDSjtRQUNELE9BQU87WUFDSCxJQUFJLEVBQUU7Z0JBQ0YsZ0JBQWdCLEVBQUU7b0JBQ2QsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLO29CQUNqQixTQUFTLEVBQUUsSUFBSSxDQUFDLFNBQVM7b0JBQ3pCLFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUztvQkFDM0UsWUFBWSxFQUFFLElBQUksQ0FBQyxZQUFZO29CQUMvQixHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUc7b0JBQ2IsV0FBVyxFQUFFLElBQUksQ0FBQyxXQUFXO29CQUM3QixpQkFBaUIsRUFBRSxJQUFJLENBQUMsV0FBVyxJQUFJLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxTQUFTO29CQUNsRyxNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU07b0JBQ25CLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUTtpQkFDMUI7YUFDSjtZQUNELFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyx5QkFBeUIsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVM7U0FDakYsQ0FBQztJQUNOLENBQUMsQ0FBQyxDQUFDO0FBQ1AsQ0FBQztBQUVELE1BQU0sT0FBTyxpQkFBaUI7SUFRMUIsWUFBWSxJQUFTLEVBQUUsU0FBaUIsRUFBRSxpQkFBeUIsRUFBRSxPQUFlO1FBQ2hGLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUNwQyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsaUJBQWlCLENBQUM7UUFDM0MsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQztRQUNuQyxJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQztRQUN2QixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDaEUsQ0FBQztJQUVNLFlBQVk7UUFDZixJQUFJLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFVBQVUsRUFBRTtZQUNsQyxJQUFJLENBQUMsU0FBUyxJQUFJLENBQUMsQ0FBQztTQUN2QjtRQUNELE9BQU8sSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQzlCLENBQUM7SUFFTSxZQUFZO1FBQ2YsSUFBSSxJQUFJLENBQUMsU0FBUyxHQUFHLENBQUMsRUFBRTtZQUNwQixJQUFJLENBQUMsU0FBUyxJQUFJLENBQUMsQ0FBQztTQUN2QjtRQUNELE9BQU8sSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQzlCLENBQUM7SUFFTSxtQkFBbUI7UUFDdEIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQzFCLENBQUM7SUFFTSxtQkFBbUIsQ0FBQyxTQUFpQjtRQUN4QyxJQUFJLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQztJQUMvQixDQUFDO0lBRU0sT0FBTztRQUNWLE9BQU8sSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQztJQUNyRSxDQUFDO0lBRU0sV0FBVztRQUNkLE1BQU0sVUFBVSxHQUFHLENBQUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDO1FBQ3ZELE1BQU0sUUFBUSxHQUFHLFVBQVUsR0FBRyxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQztRQUNwRSxNQUFNLFFBQVEsR0FBRyxlQUFlLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQUssQ0FBQyxVQUFVLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDeEUsT0FBTztZQUNILFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUztZQUN6QixJQUFJLEVBQUUsUUFBUTtTQUNqQixDQUFDO0lBQ04sQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVXhMaW5rTGVnYWN5IH0gZnJvbSAnQGV1aS9iYXNlJztcblxuZXhwb3J0IHR5cGUgVHJlZURhdGFNb2RlbCA9IEFycmF5PFRyZWVJdGVtTW9kZWw+O1xuXG5leHBvcnQgdHlwZSBUcmVlSXRlbU1vZGVsID0ge1xuICAgIG5vZGU6IFRyZWVOb2RlO1xuICAgIGNoaWxkcmVuPzogVHJlZURhdGFNb2RlbDtcbn07XG5cbmV4cG9ydCB0eXBlIFRyZWVOb2RlID0ge1xuICAgIC8vIG1ldGFkYXRhIGNhbiBiZSBibG9jayBjb250ZW50LCBvciBhbnlcbiAgICAvLyBUT0RPOiBmaW5kIHRoZSBjb3JyZWN0IHR5cGUgb3IgdHVybiBpbnRvIGEgZ2VuZXJpYywgaHR0cHM6Ly93d3cudHlwZXNjcmlwdGxhbmcub3JnL2RvY3MvaGFuZGJvb2svMi9nZW5lcmljcy5odG1sXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICB0cmVlQ29udGVudEJsb2NrOiBFdWlUcmVlQ29udGVudEJsb2NrTW9kZWwgfCBhbnk7XG59ICYgU2VsZWN0aW9uTW9kZWwgJlxuICAgIEV4cGFuZE1vZGVsO1xuXG5leHBvcnQgaW50ZXJmYWNlIEV1aVRyZWVDb250ZW50QmxvY2tNb2RlbCB7XG4gICAgaWQ/OiBzdHJpbmcgfCBudW1iZXI7XG4gICAgbGFiZWw6IHN0cmluZztcbiAgICB0b29sdGlwTGFiZWw6IHN0cmluZztcbiAgICB1cmw6IHN0cmluZztcbiAgICB1cmxFeHRlcm5hbDogc3RyaW5nO1xuICAgIHVybEV4dGVybmFsVGFyZ2V0OiBzdHJpbmc7XG4gICAgdHlwZUxhYmVsOiBzdHJpbmc7XG4gICAgdHlwZUNsYXNzOiBzdHJpbmc7XG4gICAgY2hpcHM/OiBBcnJheTx7IGxhYmVsOiBzdHJpbmc7IHR5cGVDbGFzcz86IHN0cmluZzsgaXNPdXRsaW5lPzogYm9vbGVhbiB9PjtcbiAgICBpY29uQ2xhc3M6IHN0cmluZztcbiAgICBpY29uVHlwZUNsYXNzOiBzdHJpbmc7XG4gICAgaWNvblN2Z05hbWU/OiBzdHJpbmc7XG4gICAgcmlnaHRDb250ZW50Pzoge1xuICAgICAgICBpY29uQ2xhc3M6IHN0cmluZztcbiAgICAgICAgaWNvblR5cGVDbGFzczogc3RyaW5nO1xuICAgICAgICBpY29uU3ZnTmFtZT86IHN0cmluZztcbiAgICAgICAgYmFkZ2VzPzogQXJyYXk8eyBsYWJlbDogc3RyaW5nOyB0eXBlQ2xhc3M6IHN0cmluZyB9PjtcbiAgICAgICAgY2hpcHM/OiBBcnJheTx7IGxhYmVsOiBzdHJpbmc7IHR5cGVDbGFzcz86IHN0cmluZzsgaXNPdXRsaW5lPzogYm9vbGVhbiB9PjtcbiAgICAgICAgLy8gVE9ETzogZmluZCB0aGUgY29ycmVjdCB0eXBlIG9yIHR1cm4gaW50byBhIGdlbmVyaWMsIGh0dHBzOi8vd3d3LnR5cGVzY3JpcHRsYW5nLm9yZy9kb2NzL2hhbmRib29rLzIvZ2VuZXJpY3MuaHRtbFxuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgICAgICBjb250ZXh0TWVudU1ldGFEYXRhPzogYW55O1xuICAgIH07XG4gICAgbWV0YURhdGE6IHN0cmluZztcblxuICAgIC8vIFRPRE86IGZpbmQgdGhlIGNvcnJlY3QgdHlwZSBvciB0dXJuIGludG8gYSBnZW5lcmljLCBodHRwczovL3d3dy50eXBlc2NyaXB0bGFuZy5vcmcvZG9jcy9oYW5kYm9vay8yL2dlbmVyaWNzLmh0bWxcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgIFtrZXk6IHN0cmluZ106IGFueTtcbn1cblxuZXhwb3J0IHR5cGUgU2VsZWN0aW9uTW9kZWwgPSB7XG4gICAgc2VsZWN0YWJsZT86IGJvb2xlYW47XG4gICAgaXNTZWxlY3RlZD86IGJvb2xlYW47XG4gICAgLy8gaWYgb25lIG9mIHN1YiBpcyBzZWxlY3RlZCwgaXQgYmVjb21lcyBpbnRlcm1lZGlhdGVcbiAgICBpc0luZGV0ZXJtaW5hdGU/OiBib29sZWFuO1xuICAgIHNlbGVjdENvbmZpZz86IFNlbGVjdENvbmZpZ01vZGVsO1xufTtcblxuZXhwb3J0IGludGVyZmFjZSBTZWxlY3RDb25maWdNb2RlbCBleHRlbmRzIE11bHRpU2VsZWN0aW9uTG9naWMsIFNpbmdsZVNlbGVjdGlvbkxvZ2ljIHtcbiAgICAvKlxuICAgIElmIEl0IGlzIHRydWU7XG4gICAgV2hlbiB1c2VyIHNlbGVjdCBwYXJlbnQsIGFsbCB0aGUgY2hpbGRyZW4gd2lsbCBiZSBzZWxlY3RlZFxuICAgIFdoZW4gc2VsZWN0aW9uIHN0YXRlIGlzIGNoYW5nZWQsIElmIGFsbCBjaGlsZHJlbiBpcyBzZWxlY3RlZCBwYXJlbnQgd2lsbCBiZSBzZWxlY3RlZCBhcyBsb25nIGFzIG5vQXV0b1NlbGVjdFBhcmVudCBpcyBub3QgdHJ1ZVxuICAgICovXG4gICAgcmVjdXJzaXZlPzogYm9vbGVhbjtcbiAgICAvKiB3aGVuIEl0IGlzIHRydWUsIElmIGFsbCBjaGlsZHJlbiBpcyBzZWxlY3RlZCwgcGFyZW50IHdpbGwgbm90IGJlIHNlbGVjdGVkLCB3aGlsZSByZWN1cnNpdmUgaXMgdHJ1ZSovXG4gICAgbm9BdXRvU2VsZWN0UGFyZW50PzogYm9vbGVhbjtcbiAgICBzaW5nbGVTZWxlY3Q/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE11bHRpU2VsZWN0aW9uTG9naWMge1xuICAgIC8qXG4gICAgSWYgSXQgaXMgdHJ1ZTtcbiAgICBXaGVuIHVzZXIgc2VsZWN0IHBhcmVudCwgYWxsIHRoZSBjaGlsZHJlbiB3aWxsIGJlIHNlbGVjdGVkXG4gICAgV2hlbiBzZWxlY3Rpb24gc3RhdGUgaXMgY2hhbmdlZCwgSWYgYWxsIGNoaWxkcmVuIGlzIHNlbGVjdGVkIHBhcmVudCB3aWxsIGJlIHNlbGVjdGVkIGFzIGxvbmcgYXMgbm9BdXRvU2VsZWN0UGFyZW50IGlzIG5vdCB0cnVlXG4gICAgKi9cbiAgICByZWN1cnNpdmU/OiBib29sZWFuO1xuICAgIC8qIHdoZW4gSXQgaXMgdHJ1ZSwgSWYgYWxsIGNoaWxkcmVuIGlzIHNlbGVjdGVkLCBwYXJlbnQgd2lsbCBub3QgYmUgc2VsZWN0ZWQsIHdoaWxlIHJlY3Vyc2l2ZSBpcyB0cnVlKi9cbiAgICBub0F1dG9TZWxlY3RQYXJlbnQ/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNpbmdsZVNlbGVjdGlvbkxvZ2ljIHtcbiAgICBzaW5nbGVTZWxlY3Q/OiBib29sZWFuO1xufVxuXG5leHBvcnQgdHlwZSBFeHBhbmRNb2RlbCA9IHtcbiAgICBpc0V4cGFuZGVkPzogYm9vbGVhbjtcbn07XG5cbmV4cG9ydCB0eXBlIEV1aVRyZWVTZWxlY3Rpb25DaGFuZ2VzID0geyBhZGRlZDogVHJlZURhdGFNb2RlbDsgcmVtb3ZlZDogVHJlZURhdGFNb2RlbDsgc2VsZWN0aW9uOiBUcmVlRGF0YU1vZGVsIH07XG5cbmV4cG9ydCB0eXBlIFRyZWVEYXRhUnVuVGltZU1vZGVsID0gQXJyYXk8VHJlZUl0ZW1SdW5UaW1lTW9kZWw+O1xuXG5leHBvcnQgdHlwZSBUcmVlSXRlbVJ1blRpbWVNb2RlbCA9IHsgaW5kZXg6IG51bWJlcjsgcGF0aDogc3RyaW5nOyBjaGlsZHJlbj86IEFycmF5PFRyZWVJdGVtUnVuVGltZU1vZGVsPjsgbGFzdD86IGJvb2xlYW4sIG1hdGNoZWQ/OiBib29sZWFuIH07XG5cbmV4cG9ydCB0eXBlIFRyZWVJdGVtU2VsZWN0aW9uUmVjdXJzaXZlTW9kZWwgPSB7XG4gICAgc2VsZWN0aW9uUmVjdXJzaXZlU3RhdGU6IFNlbGVjdGlvblJlY3Vyc2l2ZVN0YXRlO1xuICAgIGNoaWxkcmVuPzogQXJyYXk8VHJlZUl0ZW1TZWxlY3Rpb25SZWN1cnNpdmVNb2RlbD47XG59O1xuXG5leHBvcnQgdHlwZSBTZWxlY3Rpb25SZWN1cnNpdmVTdGF0ZSA9ICdpbmRldGVybWluYXRlJyB8ICdhbGxTZWxlY3RlZCcgfCAnYWxsTm90U2VsZWN0ZWQnO1xuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJlZmVyLWFycm93L3ByZWZlci1hcnJvdy1mdW5jdGlvbnNcbmV4cG9ydCBmdW5jdGlvbiB1eFRyZWVOb2Rlc01ldGFEYXRhTWFwcGVyKG9sZFRyZWU6IEFycmF5PFV4TGlua0xlZ2FjeT4pOiBUcmVlRGF0YU1vZGVsIHtcbiAgICByZXR1cm4gb2xkVHJlZS5tYXAoKGl0ZW0pID0+IHtcbiAgICAgICAgaWYgKGl0ZW0/LnR5cGVDbGFzcyA9PT0gJ2RlZmF1bHQnKSB7XG4gICAgICAgICAgICAvLyBkZWZhdWx0IHR5cGVDbGFzcyB3aWxsIGJlXG4gICAgICAgICAgICBpdGVtLnR5cGVDbGFzcyA9ICdzZWNvbmRhcnknO1xuICAgICAgICB9XG4gICAgICAgIGlmIChpdGVtPy5iYWRnZUxhYmVsKSB7XG4gICAgICAgICAgICAvLyBkZWZhdWx0IHR5cGVDbGFzcyB3aWxsIGJlXG4gICAgICAgICAgICBpZiAoaXRlbT8uYmFkZ2VzPy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICAgICAgaXRlbS5iYWRnZXMucHVzaCh7IGxhYmVsOiBpdGVtPy5iYWRnZUxhYmVsLCB0eXBlQ2xhc3M6ICdzZWNvbmRhcnknIH0pO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBpdGVtLmJhZGdlcyA9IFt7IGxhYmVsOiBpdGVtPy5iYWRnZUxhYmVsLCB0eXBlQ2xhc3M6ICdzZWNvbmRhcnknIH1dO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBub2RlOiB7XG4gICAgICAgICAgICAgICAgdHJlZUNvbnRlbnRCbG9jazoge1xuICAgICAgICAgICAgICAgICAgICBsYWJlbDogaXRlbS5sYWJlbCxcbiAgICAgICAgICAgICAgICAgICAgdHlwZUxhYmVsOiBpdGVtLnR5cGVMYWJlbCxcbiAgICAgICAgICAgICAgICAgICAgdHlwZUNsYXNzOiBpdGVtLnR5cGVMYWJlbCAmJiAhaXRlbS50eXBlQ2xhc3MgPyAnc2Vjb25kYXJ5JyA6IGl0ZW0udHlwZUNsYXNzLFxuICAgICAgICAgICAgICAgICAgICB0b29sdGlwTGFiZWw6IGl0ZW0udG9vbHRpcExhYmVsLFxuICAgICAgICAgICAgICAgICAgICB1cmw6IGl0ZW0udXJsLFxuICAgICAgICAgICAgICAgICAgICB1cmxFeHRlcm5hbDogaXRlbS51cmxFeHRlcm5hbCxcbiAgICAgICAgICAgICAgICAgICAgdXJsRXh0ZXJuYWxUYXJnZXQ6IGl0ZW0udXJsRXh0ZXJuYWwgJiYgaXRlbS51cmxFeHRlcm5hbFRhcmdldCA/IGl0ZW0udXJsRXh0ZXJuYWxUYXJnZXQgOiB1bmRlZmluZWQsXG4gICAgICAgICAgICAgICAgICAgIGJhZGdlczogaXRlbS5iYWRnZXMsXG4gICAgICAgICAgICAgICAgICAgIG1ldGFkYXRhOiBpdGVtLm1ldGFkYXRhLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgY2hpbGRyZW46IGl0ZW0uY2hpbGRyZW4gPyB1eFRyZWVOb2Rlc01ldGFEYXRhTWFwcGVyKGl0ZW0uY2hpbGRyZW4pIDogdW5kZWZpbmVkLFxuICAgICAgICB9O1xuICAgIH0pO1xufVxuXG5leHBvcnQgY2xhc3MgRXVpVHJlZVBhZ2luYXRpb248VD4ge1xuICAgIHByaXZhdGUgZGF0YTogVFtdO1xuICAgIHByaXZhdGUgc3RhcnRQYWdlOiBudW1iZXI7XG4gICAgcHJpdmF0ZSB0b3RhbEl0ZW1zOiBudW1iZXI7XG4gICAgcHJpdmF0ZSByZW5kZXJlZFBhZ2VDb3VudDogbnVtYmVyO1xuICAgIHByaXZhdGUgcGVyUGFnZTogbnVtYmVyO1xuICAgIHByaXZhdGUgdG90YWxQYWdlczogbnVtYmVyO1xuXG4gICAgY29uc3RydWN0b3IoZGF0YTogVFtdLCBzdGFydFBhZ2U6IG51bWJlciwgcmVuZGVyZWRQYWdlQ291bnQ6IG51bWJlciwgcGVyUGFnZTogbnVtYmVyKSB7XG4gICAgICAgIHRoaXMuZGF0YSA9IGRhdGE7XG4gICAgICAgIHRoaXMuc2V0Q3VycmVudFN0YXJ0UGFnZShzdGFydFBhZ2UpO1xuICAgICAgICB0aGlzLnJlbmRlcmVkUGFnZUNvdW50ID0gcmVuZGVyZWRQYWdlQ291bnQ7XG4gICAgICAgIHRoaXMudG90YWxJdGVtcyA9IHRoaXMuZGF0YS5sZW5ndGg7XG4gICAgICAgIHRoaXMucGVyUGFnZSA9IHBlclBhZ2U7XG4gICAgICAgIHRoaXMudG90YWxQYWdlcyA9IE1hdGguY2VpbCh0aGlzLnRvdGFsSXRlbXMgLyB0aGlzLnBlclBhZ2UpO1xuICAgIH1cblxuICAgIHB1YmxpYyBwYWdpbmF0ZU5leHQoKTogeyBzdGFydFBhZ2U6IG51bWJlcjsgZGF0YTogVFtdIH0ge1xuICAgICAgICBpZiAodGhpcy5zdGFydFBhZ2UgPCB0aGlzLnRvdGFsUGFnZXMpIHtcbiAgICAgICAgICAgIHRoaXMuc3RhcnRQYWdlICs9IDE7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0Vmlld0RhdGEoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgcGFnaW5hdGVQcmV2KCk6IHsgc3RhcnRQYWdlOiBudW1iZXI7IGRhdGE6IFRbXSB9IHtcbiAgICAgICAgaWYgKHRoaXMuc3RhcnRQYWdlID4gMSkge1xuICAgICAgICAgICAgdGhpcy5zdGFydFBhZ2UgLT0gMTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdGhpcy5nZXRWaWV3RGF0YSgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRDdXJyZW50U3RhcnRQYWdlKCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLnN0YXJ0UGFnZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc2V0Q3VycmVudFN0YXJ0UGFnZShzdGFydFBhZ2U6IG51bWJlcik6IHZvaWQge1xuICAgICAgICB0aGlzLnN0YXJ0UGFnZSA9IHN0YXJ0UGFnZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgaXNBdE1heCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudG90YWxQYWdlcyA8IHRoaXMuc3RhcnRQYWdlICsgdGhpcy5yZW5kZXJlZFBhZ2VDb3VudDtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0Vmlld0RhdGEoKTogeyBzdGFydFBhZ2U6IG51bWJlcjsgZGF0YTogVFtdIH0ge1xuICAgICAgICBjb25zdCBzdGFydEluZGV4ID0gKHRoaXMuc3RhcnRQYWdlIC0gMSkgKiB0aGlzLnBlclBhZ2U7XG4gICAgICAgIGNvbnN0IGVuZEluZGV4ID0gc3RhcnRJbmRleCArIHRoaXMucGVyUGFnZSAqIHRoaXMucmVuZGVyZWRQYWdlQ291bnQ7XG4gICAgICAgIGNvbnN0IHBhZ2VEYXRhID0gc3RydWN0dXJlZENsb25lKHRoaXMuZGF0YSkuc2xpY2Uoc3RhcnRJbmRleCwgZW5kSW5kZXgpO1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgc3RhcnRQYWdlOiB0aGlzLnN0YXJ0UGFnZSxcbiAgICAgICAgICAgIGRhdGE6IHBhZ2VEYXRhLFxuICAgICAgICB9O1xuICAgIH1cbn1cbiJdfQ==
|
@@ -182,11 +182,11 @@ export class EuiNotificationsComponent {
|
|
182
182
|
return unreadNotifications.length;
|
183
183
|
}
|
184
184
|
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: EuiNotificationsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
185
|
-
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.4", type: EuiNotificationsComponent, selector: "eui-notifications", inputs: { count: "count", items: "items", unreadLabel: "unreadLabel", totalLabel: "totalLabel", markAsReadLabel: "markAsReadLabel", markAsUnReadLabel: "markAsUnReadLabel", markAllAsReadLabel: "markAllAsReadLabel", settingsLabel: "settingsLabel", refreshLabel: "refreshLabel", viewAllNotificationsLabel: "viewAllNotificationsLabel", headerTitleLabel: "headerTitleLabel", noNotificationFoundLabel: "noNotificationFoundLabel", nbUnreadCount: "nbUnreadCount", dateFormat: "dateFormat", noNotificationFoundLink: "noNotificationFoundLink", isShowMarkAsRead: "isShowMarkAsRead", isShowViewAllAction: "isShowViewAllAction", isHidePanelOnViewAllAction: "isHidePanelOnViewAllAction", customUnreadCount: "customUnreadCount", isShowMarkAllAsReadButton: "isShowMarkAllAsReadButton", isShowSettingsButton: "isShowSettingsButton", isShowRefreshButton: "isShowRefreshButton" }, outputs: { refreshClick: "refreshClick", notificationsClick: "notificationsClick", viewAllClick: "viewAllClick", settingsClick: "settingsClick", markAllAsReadClick: "markAllAsReadClick", noNotificationFoundClick: "noNotificationFoundClick", itemClick: "itemClick", itemMarkAsReadClick: "itemMarkAsReadClick" }, host: { listeners: { "body:click": "onHide()" }, properties: { "class": "this.string" } }, usesOnChanges: true, ngImport: i0, template: "<eui-icon-svg-button\n class=\"eui-notifications__trigger\"\n iconSvgName=\"eui-notifications\"\n iconSvgSize=\"m\"\n iconSvgFillColor=\"white\"\n (click)=\"onClicked($event)\"\n (keydown.enter)=\"onClicked($event)\"\n (keydown.esc)=\"onHide()\"\n hasFocusBorder>\n <eui-badge *ngIf=\"count\" euiSizeS euiDanger>{{ count }}</eui-badge>\n</eui-icon-svg-button>\n\n<eui-overlay [isActive]=\"isOverlayActive\" class=\"eui-overlay-offset--width-30\">\n <eui-overlay-header>\n <div class=\"eui-notifications__header-title\">\n <div class=\"eui-notifications__header-title-label\">\n {{ headerTitleLabel ? headerTitleLabel : ('eui.MYNOTIFICATIONS' | translate) }}\n <span\n *ngIf=\"items\"\n class=\"eui-u-cursor-help eui-u-ml-s\"\n attr.aria-label=\"{{ unreadLabel ? unreadLabel : ('eui.NOTIFICATIONSUNREAD' | translate) }}\"\n title=\"{{ unreadLabel ? unreadLabel : ('eui.NOTIFICATIONSUNREAD' | translate) }}\">\n </span>\n <eui-badge euiSizeL *ngIf=\"count\">{{ count }}</eui-badge>\n <eui-badge euiSizeL *ngIf=\"!count\">{{ items.length }}</eui-badge>\n </div>\n </div>\n\n <div *ngIf=\"items\" class=\"eui-notifications__header-actions\">\n <button\n euiButton\n euiPrimary\n euiRounded\n euiIconButton\n euiBasicButton\n euiSizeS\n type=\"button\"\n *ngIf=\"isShowMarkAllAsReadButton\"\n [attr.aria-label]=\"markAllAsReadLabel ? markAllAsReadLabel : ('eui.NOTIFICATIONMARKALLASREAD' | translate)\"\n title=\"{{ markAllAsReadLabel ? markAllAsReadLabel : ('eui.NOTIFICATIONMARKALLASREAD' | translate) }}\"\n (click)=\"onMarkAllAsRead($event)\">\n <eui-icon-svg icon=\"eui-checkmark-done\" fillColor=\"primary-100\"></eui-icon-svg>\n </button>\n <button\n euiButton\n euiPrimary\n euiRounded\n euiIconButton\n euiBasicButton\n euiSizeS\n type=\"button\"\n *ngIf=\"isShowSettingsButton\"\n [attr.aria-label]=\"settingsLabel ? settingsLabel : ('eui.SETTINGS' | translate)\"\n title=\"{{ settingsLabel ? settingsLabel : ('eui.SETTINGS' | translate) }}\"\n (click)=\"onSettings($event)\">\n <eui-icon-svg icon=\"eui-settings\" fillColor=\"primary-100\"></eui-icon-svg>\n </button>\n <button\n euiButton\n euiPrimary\n euiRounded\n euiIconButton\n euiBasicButton\n euiSizeS\n type=\"button\"\n *ngIf=\"isShowRefreshButton\"\n [attr.aria-label]=\"refreshLabel ? refreshLabel : ('eui.REFRESH' | translate)\"\n title=\"{{ refreshLabel ? refreshLabel : ('eui.REFRESH' | translate) }}\"\n (click)=\"onRefresh($event)\">\n <eui-icon-svg icon=\"eui-refresh\" fillColor=\"primary-100\"></eui-icon-svg>\n </button>\n </div>\n </eui-overlay-header>\n\n <eui-overlay-body>\n <ul class=\"eui-notifications-items\" *ngIf=\"items\">\n <eui-notification-item\n *ngFor=\"let item of items; trackBy: trackByFn\"\n [item]=\"item\"\n [dateFormat]=\"dateFormat\"\n [markAsReadLabel]=\"markAsReadLabel\"\n [isShowMarkAsRead]=\"isShowMarkAsRead\"\n (itemClick)=\"onItemClick($event)\"\n (itemMarkAsRead)=\"onItemMarkAsRead($event)\">\n </eui-notification-item>\n </ul>\n </eui-overlay-body>\n\n <eui-overlay-footer>\n <ng-template [ngIf]=\"items?.length > 0\">\n <a (click)=\"onViewAllClick($event)\" class=\"eui-u-text-link\">\n <strong>{{ viewAllNotificationsLabel ? viewAllNotificationsLabel : ('eui.VIEWALLNOTIFICATIONS' | translate) }}</strong>\n </a>\n </ng-template>\n <ng-template [ngIf]=\"items?.length === 0\">\n <div class=\"ux-notification__item-content\" *ngIf=\"!noNotificationFoundLink\">\n {{ noNotificationFoundLabel ? noNotificationFoundLabel : ('eui.NONOTIFICATIONFOUND' | translate) }}\n </div>\n <div class=\"ux-notification__item-content\" *ngIf=\"noNotificationFoundLink\">\n <a (click)=\"onNoNotificationFoundClick()\" class=\"eui-u-text-link\">\n {{ noNotificationFoundLabel ? noNotificationFoundLabel : ('eui.NONOTIFICATIONFOUND' | translate) }}\n </a>\n </div>\n </ng-template>\n </eui-overlay-footer>\n</eui-overlay>\n", styles: [".eui-overlay-header{background-color:var(--eui-base-color-grey-10);border-bottom:1px solid var(--eui-base-color-grey-20)}.eui-notifications-items{margin:0;padding:0}.eui-notifications__trigger{margin-top:var(--eui-base-spacing-xs)}.eui-notifications__trigger .eui-icon-svg svg{transform:scale(1.1)}.eui-notifications__header{align-items:center;border-bottom:1px solid var(--eui-base-color-grey-10);color:var(--eui-base-color-font);cursor:default;display:flex;padding:var(--eui-base-spacing-xs) var(--eui-base-spacing-m)}.eui-notifications__header-title{display:flex}.eui-notifications__header-title-label{font:normal normal 400 1.125rem/1.5rem var(--eui-base-font-family);font-weight:700}.eui-notifications__header-title-subLabel{margin-top:var(--eui-base-spacing-xs);font:normal normal 400 1rem/1.25rem var(--eui-base-font-family)}.eui-notifications__header-actions{align-items:center;display:flex;margin-left:auto}.eui-notification-item{display:flex;flex-direction:column;overflow-y:auto;margin:0}.eui-notification-item-content{background-color:var(--eui-base-color-primary-5);border-bottom:1px solid var(--eui-base-color-grey-15);display:flex;flex-direction:column;min-height:var(--eui-base-spacing-4xl);padding:var(--eui-base-spacing-s) var(--eui-base-spacing-m);cursor:pointer}.eui-notification-item-content:hover{background-color:var(--eui-base-color-grey-5)!important}.eui-notification-item-content-top{align-items:center;display:flex;justify-content:space-between}.eui-notification-item-content-top__date{display:flex;align-items:center}.eui-notification-item-content-top__date-icon{position:relative}.eui-notification-item-content-top__date-icon--rotated{transform:rotate(20deg)}.eui-notification-item-content-top__date-icon-dot{position:absolute;top:0;right:0}.eui-notification-item-content-middle{margin:var(--eui-base-spacing-2xs) 0}.eui-notification-item-content-middle__sub-label{margin-top:var(--eui-base-spacing-2xs)}.eui-notification-item-content-bottom{display:flex;justify-content:flex-end}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.EuiOverlayHeaderComponent, selector: "eui-overlay-header" }, { kind: "component", type: i2.EuiOverlayBodyComponent, selector: "eui-overlay-body" }, { kind: "component", type: i2.EuiOverlayFooterComponent, selector: "eui-overlay-footer" }, { kind: "component", type: i2.EuiOverlayComponent, selector: "eui-overlay", inputs: ["isActive", "position", "width", "fixedWidth"], outputs: ["activeState"] }, { kind: "component", type: i3.EuiButtonComponent, selector: "button[euiButton], a[euiButton]", inputs: ["e2eAttr", "id", "euiBasicButton", "euiButtonCall", "euiBlockButton", "isLoading", "euiIconButton", "euiLineWrap"], outputs: ["buttonClick"] }, { kind: "component", type: i4.EuiBadgeComponent, selector: "div[euiBadge], span[euiBadge], eui-badge", inputs: ["e2eAttr", "aria-label"] }, { kind: "component", type: i5.EuiIconSvgComponent, selector: "eui-icon-svg, span[euiIconSvg], i[euiIconSvg]", inputs: ["icon", "size", "fillColor", "set", "ariaLabelledby", "role", "style", "iconUrl", "transform", "aria-label", "ariaHidden", "focusable", "isLoading"] }, { kind: "component", type: i5.EuiIconSvgButtonComponent, selector: "eui-icon-svg-button", inputs: ["iconSvgName", "iconSvgFillColor", "iconSvgSize", "ariaLabel", "hasFocusBorder", "hasNoPadding"], outputs: ["buttonClick"] }, { kind: "component", type: i6.EuiNotificationItemComponent, selector: "eui-notification-item", inputs: ["markAsReadLabel", "item", "dateFormat", "isShowMarkAsRead"], outputs: ["itemClick", "itemMarkAsRead"] }, { kind: "pipe", type: i7.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None }); }
|
185
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.4", type: EuiNotificationsComponent, selector: "eui-notifications", inputs: { count: "count", items: "items", unreadLabel: "unreadLabel", totalLabel: "totalLabel", markAsReadLabel: "markAsReadLabel", markAsUnReadLabel: "markAsUnReadLabel", markAllAsReadLabel: "markAllAsReadLabel", settingsLabel: "settingsLabel", refreshLabel: "refreshLabel", viewAllNotificationsLabel: "viewAllNotificationsLabel", headerTitleLabel: "headerTitleLabel", noNotificationFoundLabel: "noNotificationFoundLabel", nbUnreadCount: "nbUnreadCount", dateFormat: "dateFormat", noNotificationFoundLink: "noNotificationFoundLink", isShowMarkAsRead: "isShowMarkAsRead", isShowViewAllAction: "isShowViewAllAction", isHidePanelOnViewAllAction: "isHidePanelOnViewAllAction", customUnreadCount: "customUnreadCount", isShowMarkAllAsReadButton: "isShowMarkAllAsReadButton", isShowSettingsButton: "isShowSettingsButton", isShowRefreshButton: "isShowRefreshButton" }, outputs: { refreshClick: "refreshClick", notificationsClick: "notificationsClick", viewAllClick: "viewAllClick", settingsClick: "settingsClick", markAllAsReadClick: "markAllAsReadClick", noNotificationFoundClick: "noNotificationFoundClick", itemClick: "itemClick", itemMarkAsReadClick: "itemMarkAsReadClick" }, host: { listeners: { "body:click": "onHide()" }, properties: { "class": "this.string" } }, usesOnChanges: true, ngImport: i0, template: "<eui-icon-svg-button\n class=\"eui-notifications__trigger\"\n iconSvgName=\"eui-notifications\"\n iconSvgSize=\"m\"\n iconSvgFillColor=\"white\"\n (click)=\"onClicked($event)\"\n (keydown.enter)=\"onClicked($event)\"\n (keydown.esc)=\"onHide()\"\n hasFocusBorder>\n <eui-badge *ngIf=\"count\" euiSizeS euiDanger>{{ count }}</eui-badge>\n</eui-icon-svg-button>\n\n<eui-overlay [isActive]=\"isOverlayActive\" class=\"eui-overlay-offset--width-30\">\n <eui-overlay-header>\n <div class=\"eui-notifications__header-title\">\n <div class=\"eui-notifications__header-title-label\">\n {{ headerTitleLabel ? headerTitleLabel : ('eui.MYNOTIFICATIONS' | translate) }}\n <span\n *ngIf=\"items\"\n class=\"eui-u-cursor-help eui-u-ml-s\"\n attr.aria-label=\"{{ unreadLabel ? unreadLabel : ('eui.NOTIFICATIONSUNREAD' | translate) }}\"\n title=\"{{ unreadLabel ? unreadLabel : ('eui.NOTIFICATIONSUNREAD' | translate) }}\">\n </span>\n <eui-badge euiSizeL *ngIf=\"count\">{{ count }}</eui-badge>\n <eui-badge euiSizeL *ngIf=\"!count\">{{ items.length }}</eui-badge>\n </div>\n </div>\n\n <div *ngIf=\"items\" class=\"eui-notifications__header-actions\">\n <button\n euiButton\n euiPrimary\n euiRounded\n euiIconButton\n euiBasicButton\n euiSizeS\n type=\"button\"\n *ngIf=\"isShowMarkAllAsReadButton\"\n [attr.aria-label]=\"markAllAsReadLabel ? markAllAsReadLabel : ('eui.NOTIFICATIONMARKALLASREAD' | translate)\"\n title=\"{{ markAllAsReadLabel ? markAllAsReadLabel : ('eui.NOTIFICATIONMARKALLASREAD' | translate) }}\"\n (click)=\"onMarkAllAsRead($event)\">\n <eui-icon-svg icon=\"eui-checkmark-done\" fillColor=\"primary-100\"></eui-icon-svg>\n </button>\n <button\n euiButton\n euiPrimary\n euiRounded\n euiIconButton\n euiBasicButton\n euiSizeS\n type=\"button\"\n *ngIf=\"isShowSettingsButton\"\n [attr.aria-label]=\"settingsLabel ? settingsLabel : ('eui.SETTINGS' | translate)\"\n title=\"{{ settingsLabel ? settingsLabel : ('eui.SETTINGS' | translate) }}\"\n (click)=\"onSettings($event)\">\n <eui-icon-svg icon=\"eui-settings\" fillColor=\"primary-100\"></eui-icon-svg>\n </button>\n <button\n euiButton\n euiPrimary\n euiRounded\n euiIconButton\n euiBasicButton\n euiSizeS\n type=\"button\"\n *ngIf=\"isShowRefreshButton\"\n [attr.aria-label]=\"refreshLabel ? refreshLabel : ('eui.REFRESH' | translate)\"\n title=\"{{ refreshLabel ? refreshLabel : ('eui.REFRESH' | translate) }}\"\n (click)=\"onRefresh($event)\">\n <eui-icon-svg icon=\"eui-refresh\" fillColor=\"primary-100\"></eui-icon-svg>\n </button>\n </div>\n </eui-overlay-header>\n\n <eui-overlay-body>\n <ul class=\"eui-notifications-items\" *ngIf=\"items\">\n <eui-notification-item\n *ngFor=\"let item of items; trackBy: trackByFn\"\n [item]=\"item\"\n [dateFormat]=\"dateFormat\"\n [markAsReadLabel]=\"markAsReadLabel\"\n [isShowMarkAsRead]=\"isShowMarkAsRead\"\n (itemClick)=\"onItemClick($event)\"\n (itemMarkAsRead)=\"onItemMarkAsRead($event)\">\n </eui-notification-item>\n </ul>\n </eui-overlay-body>\n\n <eui-overlay-footer>\n <ng-template [ngIf]=\"items?.length > 0\">\n <a (click)=\"onViewAllClick($event)\" class=\"eui-u-text-link\">\n <strong>{{ viewAllNotificationsLabel ? viewAllNotificationsLabel : ('eui.VIEWALLNOTIFICATIONS' | translate) }}</strong>\n </a>\n </ng-template>\n <ng-template [ngIf]=\"items?.length === 0\">\n <div class=\"ux-notification__item-content\" *ngIf=\"!noNotificationFoundLink\">\n {{ noNotificationFoundLabel ? noNotificationFoundLabel : ('eui.NONOTIFICATIONFOUND' | translate) }}\n </div>\n <div class=\"ux-notification__item-content\" *ngIf=\"noNotificationFoundLink\">\n <a (click)=\"onNoNotificationFoundClick()\" class=\"eui-u-text-link\">\n {{ noNotificationFoundLabel ? noNotificationFoundLabel : ('eui.NONOTIFICATIONFOUND' | translate) }}\n </a>\n </div>\n </ng-template>\n </eui-overlay-footer>\n</eui-overlay>\n", styles: [".eui-overlay-header{background-color:var(--eui-base-color-grey-10);border-bottom:1px solid var(--eui-base-color-grey-20)}.eui-notifications-items{margin:0;padding:0}.eui-notifications__trigger .eui-icon-svg svg{transform:scale(1.1)}.eui-notifications__header{align-items:center;border-bottom:1px solid var(--eui-base-color-grey-10);color:var(--eui-base-color-font);cursor:default;display:flex;padding:var(--eui-base-spacing-xs) var(--eui-base-spacing-m)}.eui-notifications__header-title{display:flex}.eui-notifications__header-title-label{font:normal normal 400 1.125rem/1.5rem var(--eui-base-font-family);font-weight:700}.eui-notifications__header-title-subLabel{margin-top:var(--eui-base-spacing-xs);font:normal normal 400 1rem/1.25rem var(--eui-base-font-family)}.eui-notifications__header-actions{align-items:center;display:flex;margin-left:auto}.eui-notification-item{display:flex;flex-direction:column;overflow-y:auto;margin:0}.eui-notification-item-content{background-color:var(--eui-base-color-primary-5);border-bottom:1px solid var(--eui-base-color-grey-15);display:flex;flex-direction:column;min-height:var(--eui-base-spacing-4xl);padding:var(--eui-base-spacing-s) var(--eui-base-spacing-m);cursor:pointer}.eui-notification-item-content:hover{background-color:var(--eui-base-color-grey-5)!important}.eui-notification-item-content-top{align-items:center;display:flex;justify-content:space-between}.eui-notification-item-content-top__date{display:flex;align-items:center}.eui-notification-item-content-top__date-icon{position:relative}.eui-notification-item-content-top__date-icon--rotated{transform:rotate(20deg)}.eui-notification-item-content-top__date-icon-dot{position:absolute;top:0;right:0}.eui-notification-item-content-middle{margin:var(--eui-base-spacing-2xs) 0}.eui-notification-item-content-middle__sub-label{margin-top:var(--eui-base-spacing-2xs)}.eui-notification-item-content-bottom{display:flex;justify-content:flex-end}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.EuiOverlayHeaderComponent, selector: "eui-overlay-header" }, { kind: "component", type: i2.EuiOverlayBodyComponent, selector: "eui-overlay-body" }, { kind: "component", type: i2.EuiOverlayFooterComponent, selector: "eui-overlay-footer" }, { kind: "component", type: i2.EuiOverlayComponent, selector: "eui-overlay", inputs: ["isActive", "position", "width", "fixedWidth"], outputs: ["activeState"] }, { kind: "component", type: i3.EuiButtonComponent, selector: "button[euiButton], a[euiButton]", inputs: ["e2eAttr", "id", "euiBasicButton", "euiButtonCall", "euiBlockButton", "isLoading", "euiIconButton", "euiLineWrap"], outputs: ["buttonClick"] }, { kind: "component", type: i4.EuiBadgeComponent, selector: "div[euiBadge], span[euiBadge], eui-badge", inputs: ["e2eAttr", "aria-label"] }, { kind: "component", type: i5.EuiIconSvgComponent, selector: "eui-icon-svg, span[euiIconSvg], i[euiIconSvg]", inputs: ["icon", "size", "fillColor", "set", "ariaLabelledby", "role", "style", "iconUrl", "transform", "aria-label", "ariaHidden", "focusable", "isLoading"] }, { kind: "component", type: i5.EuiIconSvgButtonComponent, selector: "eui-icon-svg-button", inputs: ["iconSvgName", "iconSvgFillColor", "iconSvgSize", "ariaLabel", "hasFocusBorder", "hasNoPadding"], outputs: ["buttonClick"] }, { kind: "component", type: i6.EuiNotificationItemComponent, selector: "eui-notification-item", inputs: ["markAsReadLabel", "item", "dateFormat", "isShowMarkAsRead"], outputs: ["itemClick", "itemMarkAsRead"] }, { kind: "pipe", type: i7.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None }); }
|
186
186
|
}
|
187
187
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: EuiNotificationsComponent, decorators: [{
|
188
188
|
type: Component,
|
189
|
-
args: [{ selector: 'eui-notifications', changeDetection: ChangeDetectionStrategy.Default, encapsulation: ViewEncapsulation.None, template: "<eui-icon-svg-button\n class=\"eui-notifications__trigger\"\n iconSvgName=\"eui-notifications\"\n iconSvgSize=\"m\"\n iconSvgFillColor=\"white\"\n (click)=\"onClicked($event)\"\n (keydown.enter)=\"onClicked($event)\"\n (keydown.esc)=\"onHide()\"\n hasFocusBorder>\n <eui-badge *ngIf=\"count\" euiSizeS euiDanger>{{ count }}</eui-badge>\n</eui-icon-svg-button>\n\n<eui-overlay [isActive]=\"isOverlayActive\" class=\"eui-overlay-offset--width-30\">\n <eui-overlay-header>\n <div class=\"eui-notifications__header-title\">\n <div class=\"eui-notifications__header-title-label\">\n {{ headerTitleLabel ? headerTitleLabel : ('eui.MYNOTIFICATIONS' | translate) }}\n <span\n *ngIf=\"items\"\n class=\"eui-u-cursor-help eui-u-ml-s\"\n attr.aria-label=\"{{ unreadLabel ? unreadLabel : ('eui.NOTIFICATIONSUNREAD' | translate) }}\"\n title=\"{{ unreadLabel ? unreadLabel : ('eui.NOTIFICATIONSUNREAD' | translate) }}\">\n </span>\n <eui-badge euiSizeL *ngIf=\"count\">{{ count }}</eui-badge>\n <eui-badge euiSizeL *ngIf=\"!count\">{{ items.length }}</eui-badge>\n </div>\n </div>\n\n <div *ngIf=\"items\" class=\"eui-notifications__header-actions\">\n <button\n euiButton\n euiPrimary\n euiRounded\n euiIconButton\n euiBasicButton\n euiSizeS\n type=\"button\"\n *ngIf=\"isShowMarkAllAsReadButton\"\n [attr.aria-label]=\"markAllAsReadLabel ? markAllAsReadLabel : ('eui.NOTIFICATIONMARKALLASREAD' | translate)\"\n title=\"{{ markAllAsReadLabel ? markAllAsReadLabel : ('eui.NOTIFICATIONMARKALLASREAD' | translate) }}\"\n (click)=\"onMarkAllAsRead($event)\">\n <eui-icon-svg icon=\"eui-checkmark-done\" fillColor=\"primary-100\"></eui-icon-svg>\n </button>\n <button\n euiButton\n euiPrimary\n euiRounded\n euiIconButton\n euiBasicButton\n euiSizeS\n type=\"button\"\n *ngIf=\"isShowSettingsButton\"\n [attr.aria-label]=\"settingsLabel ? settingsLabel : ('eui.SETTINGS' | translate)\"\n title=\"{{ settingsLabel ? settingsLabel : ('eui.SETTINGS' | translate) }}\"\n (click)=\"onSettings($event)\">\n <eui-icon-svg icon=\"eui-settings\" fillColor=\"primary-100\"></eui-icon-svg>\n </button>\n <button\n euiButton\n euiPrimary\n euiRounded\n euiIconButton\n euiBasicButton\n euiSizeS\n type=\"button\"\n *ngIf=\"isShowRefreshButton\"\n [attr.aria-label]=\"refreshLabel ? refreshLabel : ('eui.REFRESH' | translate)\"\n title=\"{{ refreshLabel ? refreshLabel : ('eui.REFRESH' | translate) }}\"\n (click)=\"onRefresh($event)\">\n <eui-icon-svg icon=\"eui-refresh\" fillColor=\"primary-100\"></eui-icon-svg>\n </button>\n </div>\n </eui-overlay-header>\n\n <eui-overlay-body>\n <ul class=\"eui-notifications-items\" *ngIf=\"items\">\n <eui-notification-item\n *ngFor=\"let item of items; trackBy: trackByFn\"\n [item]=\"item\"\n [dateFormat]=\"dateFormat\"\n [markAsReadLabel]=\"markAsReadLabel\"\n [isShowMarkAsRead]=\"isShowMarkAsRead\"\n (itemClick)=\"onItemClick($event)\"\n (itemMarkAsRead)=\"onItemMarkAsRead($event)\">\n </eui-notification-item>\n </ul>\n </eui-overlay-body>\n\n <eui-overlay-footer>\n <ng-template [ngIf]=\"items?.length > 0\">\n <a (click)=\"onViewAllClick($event)\" class=\"eui-u-text-link\">\n <strong>{{ viewAllNotificationsLabel ? viewAllNotificationsLabel : ('eui.VIEWALLNOTIFICATIONS' | translate) }}</strong>\n </a>\n </ng-template>\n <ng-template [ngIf]=\"items?.length === 0\">\n <div class=\"ux-notification__item-content\" *ngIf=\"!noNotificationFoundLink\">\n {{ noNotificationFoundLabel ? noNotificationFoundLabel : ('eui.NONOTIFICATIONFOUND' | translate) }}\n </div>\n <div class=\"ux-notification__item-content\" *ngIf=\"noNotificationFoundLink\">\n <a (click)=\"onNoNotificationFoundClick()\" class=\"eui-u-text-link\">\n {{ noNotificationFoundLabel ? noNotificationFoundLabel : ('eui.NONOTIFICATIONFOUND' | translate) }}\n </a>\n </div>\n </ng-template>\n </eui-overlay-footer>\n</eui-overlay>\n", styles: [".eui-overlay-header{background-color:var(--eui-base-color-grey-10);border-bottom:1px solid var(--eui-base-color-grey-20)}.eui-notifications-items{margin:0;padding:0}.eui-notifications__trigger
|
189
|
+
args: [{ selector: 'eui-notifications', changeDetection: ChangeDetectionStrategy.Default, encapsulation: ViewEncapsulation.None, template: "<eui-icon-svg-button\n class=\"eui-notifications__trigger\"\n iconSvgName=\"eui-notifications\"\n iconSvgSize=\"m\"\n iconSvgFillColor=\"white\"\n (click)=\"onClicked($event)\"\n (keydown.enter)=\"onClicked($event)\"\n (keydown.esc)=\"onHide()\"\n hasFocusBorder>\n <eui-badge *ngIf=\"count\" euiSizeS euiDanger>{{ count }}</eui-badge>\n</eui-icon-svg-button>\n\n<eui-overlay [isActive]=\"isOverlayActive\" class=\"eui-overlay-offset--width-30\">\n <eui-overlay-header>\n <div class=\"eui-notifications__header-title\">\n <div class=\"eui-notifications__header-title-label\">\n {{ headerTitleLabel ? headerTitleLabel : ('eui.MYNOTIFICATIONS' | translate) }}\n <span\n *ngIf=\"items\"\n class=\"eui-u-cursor-help eui-u-ml-s\"\n attr.aria-label=\"{{ unreadLabel ? unreadLabel : ('eui.NOTIFICATIONSUNREAD' | translate) }}\"\n title=\"{{ unreadLabel ? unreadLabel : ('eui.NOTIFICATIONSUNREAD' | translate) }}\">\n </span>\n <eui-badge euiSizeL *ngIf=\"count\">{{ count }}</eui-badge>\n <eui-badge euiSizeL *ngIf=\"!count\">{{ items.length }}</eui-badge>\n </div>\n </div>\n\n <div *ngIf=\"items\" class=\"eui-notifications__header-actions\">\n <button\n euiButton\n euiPrimary\n euiRounded\n euiIconButton\n euiBasicButton\n euiSizeS\n type=\"button\"\n *ngIf=\"isShowMarkAllAsReadButton\"\n [attr.aria-label]=\"markAllAsReadLabel ? markAllAsReadLabel : ('eui.NOTIFICATIONMARKALLASREAD' | translate)\"\n title=\"{{ markAllAsReadLabel ? markAllAsReadLabel : ('eui.NOTIFICATIONMARKALLASREAD' | translate) }}\"\n (click)=\"onMarkAllAsRead($event)\">\n <eui-icon-svg icon=\"eui-checkmark-done\" fillColor=\"primary-100\"></eui-icon-svg>\n </button>\n <button\n euiButton\n euiPrimary\n euiRounded\n euiIconButton\n euiBasicButton\n euiSizeS\n type=\"button\"\n *ngIf=\"isShowSettingsButton\"\n [attr.aria-label]=\"settingsLabel ? settingsLabel : ('eui.SETTINGS' | translate)\"\n title=\"{{ settingsLabel ? settingsLabel : ('eui.SETTINGS' | translate) }}\"\n (click)=\"onSettings($event)\">\n <eui-icon-svg icon=\"eui-settings\" fillColor=\"primary-100\"></eui-icon-svg>\n </button>\n <button\n euiButton\n euiPrimary\n euiRounded\n euiIconButton\n euiBasicButton\n euiSizeS\n type=\"button\"\n *ngIf=\"isShowRefreshButton\"\n [attr.aria-label]=\"refreshLabel ? refreshLabel : ('eui.REFRESH' | translate)\"\n title=\"{{ refreshLabel ? refreshLabel : ('eui.REFRESH' | translate) }}\"\n (click)=\"onRefresh($event)\">\n <eui-icon-svg icon=\"eui-refresh\" fillColor=\"primary-100\"></eui-icon-svg>\n </button>\n </div>\n </eui-overlay-header>\n\n <eui-overlay-body>\n <ul class=\"eui-notifications-items\" *ngIf=\"items\">\n <eui-notification-item\n *ngFor=\"let item of items; trackBy: trackByFn\"\n [item]=\"item\"\n [dateFormat]=\"dateFormat\"\n [markAsReadLabel]=\"markAsReadLabel\"\n [isShowMarkAsRead]=\"isShowMarkAsRead\"\n (itemClick)=\"onItemClick($event)\"\n (itemMarkAsRead)=\"onItemMarkAsRead($event)\">\n </eui-notification-item>\n </ul>\n </eui-overlay-body>\n\n <eui-overlay-footer>\n <ng-template [ngIf]=\"items?.length > 0\">\n <a (click)=\"onViewAllClick($event)\" class=\"eui-u-text-link\">\n <strong>{{ viewAllNotificationsLabel ? viewAllNotificationsLabel : ('eui.VIEWALLNOTIFICATIONS' | translate) }}</strong>\n </a>\n </ng-template>\n <ng-template [ngIf]=\"items?.length === 0\">\n <div class=\"ux-notification__item-content\" *ngIf=\"!noNotificationFoundLink\">\n {{ noNotificationFoundLabel ? noNotificationFoundLabel : ('eui.NONOTIFICATIONFOUND' | translate) }}\n </div>\n <div class=\"ux-notification__item-content\" *ngIf=\"noNotificationFoundLink\">\n <a (click)=\"onNoNotificationFoundClick()\" class=\"eui-u-text-link\">\n {{ noNotificationFoundLabel ? noNotificationFoundLabel : ('eui.NONOTIFICATIONFOUND' | translate) }}\n </a>\n </div>\n </ng-template>\n </eui-overlay-footer>\n</eui-overlay>\n", styles: [".eui-overlay-header{background-color:var(--eui-base-color-grey-10);border-bottom:1px solid var(--eui-base-color-grey-20)}.eui-notifications-items{margin:0;padding:0}.eui-notifications__trigger .eui-icon-svg svg{transform:scale(1.1)}.eui-notifications__header{align-items:center;border-bottom:1px solid var(--eui-base-color-grey-10);color:var(--eui-base-color-font);cursor:default;display:flex;padding:var(--eui-base-spacing-xs) var(--eui-base-spacing-m)}.eui-notifications__header-title{display:flex}.eui-notifications__header-title-label{font:normal normal 400 1.125rem/1.5rem var(--eui-base-font-family);font-weight:700}.eui-notifications__header-title-subLabel{margin-top:var(--eui-base-spacing-xs);font:normal normal 400 1rem/1.25rem var(--eui-base-font-family)}.eui-notifications__header-actions{align-items:center;display:flex;margin-left:auto}.eui-notification-item{display:flex;flex-direction:column;overflow-y:auto;margin:0}.eui-notification-item-content{background-color:var(--eui-base-color-primary-5);border-bottom:1px solid var(--eui-base-color-grey-15);display:flex;flex-direction:column;min-height:var(--eui-base-spacing-4xl);padding:var(--eui-base-spacing-s) var(--eui-base-spacing-m);cursor:pointer}.eui-notification-item-content:hover{background-color:var(--eui-base-color-grey-5)!important}.eui-notification-item-content-top{align-items:center;display:flex;justify-content:space-between}.eui-notification-item-content-top__date{display:flex;align-items:center}.eui-notification-item-content-top__date-icon{position:relative}.eui-notification-item-content-top__date-icon--rotated{transform:rotate(20deg)}.eui-notification-item-content-top__date-icon-dot{position:absolute;top:0;right:0}.eui-notification-item-content-middle{margin:var(--eui-base-spacing-2xs) 0}.eui-notification-item-content-middle__sub-label{margin-top:var(--eui-base-spacing-2xs)}.eui-notification-item-content-bottom{display:flex;justify-content:flex-end}\n"] }]
|
190
190
|
}], propDecorators: { refreshClick: [{
|
191
191
|
type: Output
|
192
192
|
}], notificationsClick: [{
|
@@ -166,11 +166,11 @@ export class EuiNotificationsV2Component {
|
|
166
166
|
return unreadNotifications.length;
|
167
167
|
}
|
168
168
|
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: EuiNotificationsV2Component, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
169
|
-
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.4", type: EuiNotificationsV2Component, selector: "eui-notifications-v2", inputs: { count: "count", unreadCount: "unreadCount", unreadSinceLastCheckCount: "unreadSinceLastCheckCount", items: "items", unreadLabel: "unreadLabel", totalLabel: "totalLabel", markAsReadLabel: "markAsReadLabel", markAsUnReadLabel: "markAsUnReadLabel", markAllAsReadLabel: "markAllAsReadLabel", settingsLabel: "settingsLabel", refreshLabel: "refreshLabel", viewAllNotificationsLabel: "viewAllNotificationsLabel", headerTitleLabel: "headerTitleLabel", headerHideLabel: "headerHideLabel", headerUnreadSinceLastCheckCountLabel: "headerUnreadSinceLastCheckCountLabel", headerUnreadCountLabel: "headerUnreadCountLabel", noNotificationFoundLabel: "noNotificationFoundLabel", nbUnreadCount: "nbUnreadCount", dateFormat: "dateFormat", noNotificationFoundLink: "noNotificationFoundLink", isShowMarkAsRead: "isShowMarkAsRead", isShowViewAllAction: "isShowViewAllAction", isHidePanelOnViewAllAction: "isHidePanelOnViewAllAction", customUnreadCount: "customUnreadCount", isShowMarkAllAsReadButton: "isShowMarkAllAsReadButton", isShowSettingsButton: "isShowSettingsButton", isShowRefreshButton: "isShowRefreshButton" }, outputs: { refreshClick: "refreshClick", notificationsClick: "notificationsClick", viewAllClick: "viewAllClick", markAllAsReadClick: "markAllAsReadClick", noNotificationFoundClick: "noNotificationFoundClick", itemClick: "itemClick", itemMarkAsReadClick: "itemMarkAsReadClick" }, host: { properties: { "class": "this.string" } }, usesOnChanges: true, ngImport: i0, template: "<eui-icon-svg-button\n class=\"eui-notifications-v2__trigger\"\n iconSvgName=\"eui-notifications\"\n iconSvgSize=\"m\"\n iconSvgFillColor=\"white\"\n (click)=\"onClicked($event)\"\n (keydown.enter)=\"onClicked($event)\"\n (keydown.esc)=\"onHide()\"\n hasFocusBorder>\n <eui-badge *ngIf=\"count\" euiSizeS euiDanger>{{ count }}</eui-badge>\n <eui-badge *ngIf=\"unreadSinceLastCheckCount\" euiSizeS euiDanger>{{ unreadSinceLastCheckCount }}</eui-badge>\n</eui-icon-svg-button>\n\n<!-- <eui-icon-svg\n class=\"eui-notifications-v2__trigger\"\n role=\"button\"\n size=\"m\"\n icon=\"eui-notifications\"\n fillColor=\"grey-5\"\n (click)=\"onClicked($event)\"\n (keydown.enter)=\"onClicked($event)\"\n (keydown.esc)=\"onHide()\"\n tabindex=\"0\">\n <eui-badge *ngIf=\"count\" euiSizeS euiDanger>{{ count }}</eui-badge>\n <eui-badge *ngIf=\"unreadSinceLastCheckCount\" euiSizeS euiDanger>{{ unreadSinceLastCheckCount }}</eui-badge>\n</eui-icon-svg> -->\n\n<eui-overlay [isActive]=\"isOverlayActive\" class=\"eui-overlay-offset--width-30\">\n <eui-overlay-header>\n <div class=\"eui-notifications-v2__header\">\n <div class=\"eui-notifications-v2__header-title\">\n <div class=\"eui-notifications-v2__header-title-label\">\n {{ headerTitleLabel ? headerTitleLabel : ('eui.MYNOTIFICATIONS' | translate) }}\n </div>\n\n <div class=\"eui-notifications-v2__header-title-actions\">\n <span class=\"hide\">\n <a (click)=\"onHide()\" class=\"eui-u-text-link\" role=\"button\" tabIndex=\"0\">\n {{ headerHideLabel ? headerHideLabel : ('eui.HIDE' | translate) }}\n </a>\n <span class=\"ml-2 eui-u-font-xs eui-icon eui-icon-chevron-right\"></span>\n </span>\n </div>\n </div>\n\n <div class=\"eui-notifications-v2__header-subinfos-bar\">\n <strong>{{ unreadSinceLastCheckCount }}</strong>\n <span class=\"eui-u-ml-xs\">{{\n headerUnreadSinceLastCheckCountLabel ? headerUnreadSinceLastCheckCountLabel : ('eui.NEW-COUNT' | translate)\n }}</span>\n\n <span class=\"eui-u-ml-xs\">|</span>\n\n <span class=\"eui-u-ml-xs\">{{ unreadCount }}</span>\n <span class=\"eui-u-ml-xs\">{{ headerUnreadCountLabel ? headerUnreadCountLabel : ('eui.NEW-COUNT' | translate) }}</span>\n </div>\n\n <div class=\"eui-notifications-v2__header-subactions-bar\">\n <a *ngIf=\"items.length > 0\" (click)=\"onMarkAllAsRead($event)\" class=\"eui-u-text-link\" tabIndex=\"0\">\n {{ 'notif.MARK-ALL-READ' | translate }}\n </a>\n <a (click)=\"onRefresh($event)\" class=\"eui-u-text-link eui-u-ml-auto\" tabIndex=\"0\">\n <span class=\"eui-u-flex\">\n <span class=\"eui-icon eui-icon-refresh mr-1\"></span>\n {{ 'notif.SV-REFRESH' | translate }}\n </span>\n </a>\n </div>\n </div>\n </eui-overlay-header>\n\n <eui-overlay-body>\n <ul class=\"eui-notifications-items\" *ngIf=\"items\">\n <eui-notification-item-v2\n *ngFor=\"let item of items; trackBy: trackByFn\"\n [item]=\"item\"\n [dateFormat]=\"dateFormat\"\n [markAsReadLabel]=\"markAsReadLabel\"\n [isShowMarkAsRead]=\"isShowMarkAsRead\"\n (itemClick)=\"onItemClick($event)\"\n (itemMarkAsRead)=\"onItemMarkAsRead($event)\">\n </eui-notification-item-v2>\n </ul>\n </eui-overlay-body>\n\n <eui-overlay-footer>\n <ng-template [ngIf]=\"items?.length > 0\">\n <strong\n ><a (click)=\"onViewAllClick($event)\" class=\"eui-u-text-link\">{{\n viewAllNotificationsLabel ? viewAllNotificationsLabel : ('eui.VIEWALLNOTIFICATIONS' | translate)\n }}</a></strong\n >\n </ng-template>\n <ng-template [ngIf]=\"items?.length === 0\">\n <div class=\"ux-notification__item-content\" *ngIf=\"!noNotificationFoundLink\">\n {{ noNotificationFoundLabel ? noNotificationFoundLabel : ('eui.NONOTIFICATIONFOUND' | translate) }}\n </div>\n <div class=\"ux-notification__item-content\" *ngIf=\"noNotificationFoundLink\">\n <strong\n ><a (click)=\"onNoNotificationFoundClick()\" class=\"eui-u-text-link\">{{\n noNotificationFoundLabel ? noNotificationFoundLabel : ('eui.NONOTIFICATIONFOUND' | translate)\n }}</a></strong\n >\n </div>\n </ng-template>\n </eui-overlay-footer>\n</eui-overlay>\n", styles: [".eui-overlay-header{padding:0}.eui-overlay-footer{background-color:var(--eui-base-color-white)}.eui-notifications-items{margin:0;padding:0}.eui-notifications-v2__trigger{margin-top:var(--eui-base-spacing-xs)}.eui-notifications-v2__trigger .eui-icon-svg svg{transform:scale(1.1)}.eui-notifications-v2__header{border-bottom:1px solid var(--eui-base-color-grey-10);color:var(--eui-base-color-font);cursor:default;flex-direction:column;display:flex;width:100%}.eui-notifications-v2__header-title{display:flex;padding:var(--eui-base-spacing-xs) var(--eui-base-spacing-m)}.eui-notifications-v2__header-title-label{font:normal normal 400 1.125rem/1.5rem var(--eui-base-font-family);font-weight:700}.eui-notifications-v2__header-title-subLabel{margin-top:var(--eui-base-spacing-xs);font:normal normal 400 .875rem/1rem var(--eui-base-font-family)}.eui-notifications-v2__header-title-actions{align-items:center;display:flex;margin-left:auto}.eui-notifications-v2__header-subinfos-bar,.eui-notifications-v2__header-subactions-bar{display:flex;align-items:center;border-bottom:1px solid var(--eui-base-color-grey-10);padding:var(--eui-base-spacing-xs) var(--eui-base-spacing-m)}.eui-notification-item{display:flex;flex-direction:column;overflow-y:auto;margin:0}.eui-notification-item-content{background-color:var(--eui-base-color-info-10);border-bottom:1px solid var(--eui-base-color-grey-15);display:flex;flex-direction:column;min-height:var(--eui-base-spacing-4xl);padding:var(--eui-base-spacing-s) var(--eui-base-spacing-m);cursor:pointer}.eui-notification-item-content:hover{background-color:var(--eui-base-color-grey-5)!important}.eui-notification-item-content-top{align-items:center;display:flex;justify-content:space-between}.eui-notification-item-content-top__date{display:flex;align-items:center}.eui-notification-item-content-top__date-icon{position:relative}.eui-notification-item-content-top__date-icon--rotated{transform:rotate(20deg)}.eui-notification-item-content-top__date-icon-dot{position:absolute;top:0;right:0}.eui-notification-item-content-middle{display:flex;margin:var(--eui-base-spacing-2xs) 0}.eui-notification-item-content-middle__sub-label{margin-top:var(--eui-base-spacing-2xs)}.eui-notification-item-content-bottom{display:flex;justify-content:flex-end}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.EuiOverlayHeaderComponent, selector: "eui-overlay-header" }, { kind: "component", type: i2.EuiOverlayBodyComponent, selector: "eui-overlay-body" }, { kind: "component", type: i2.EuiOverlayFooterComponent, selector: "eui-overlay-footer" }, { kind: "component", type: i2.EuiOverlayComponent, selector: "eui-overlay", inputs: ["isActive", "position", "width", "fixedWidth"], outputs: ["activeState"] }, { kind: "component", type: i3.EuiBadgeComponent, selector: "div[euiBadge], span[euiBadge], eui-badge", inputs: ["e2eAttr", "aria-label"] }, { kind: "component", type: i4.EuiIconSvgButtonComponent, selector: "eui-icon-svg-button", inputs: ["iconSvgName", "iconSvgFillColor", "iconSvgSize", "ariaLabel", "hasFocusBorder", "hasNoPadding"], outputs: ["buttonClick"] }, { kind: "component", type: i5.EuiNotificationItemV2Component, selector: "eui-notification-item-v2", inputs: ["markAsReadLabel", "item", "dateFormat", "isShowMarkAsRead"], outputs: ["itemClick", "itemMarkAsRead"] }, { kind: "pipe", type: i6.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None }); }
|
169
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.4", type: EuiNotificationsV2Component, selector: "eui-notifications-v2", inputs: { count: "count", unreadCount: "unreadCount", unreadSinceLastCheckCount: "unreadSinceLastCheckCount", items: "items", unreadLabel: "unreadLabel", totalLabel: "totalLabel", markAsReadLabel: "markAsReadLabel", markAsUnReadLabel: "markAsUnReadLabel", markAllAsReadLabel: "markAllAsReadLabel", settingsLabel: "settingsLabel", refreshLabel: "refreshLabel", viewAllNotificationsLabel: "viewAllNotificationsLabel", headerTitleLabel: "headerTitleLabel", headerHideLabel: "headerHideLabel", headerUnreadSinceLastCheckCountLabel: "headerUnreadSinceLastCheckCountLabel", headerUnreadCountLabel: "headerUnreadCountLabel", noNotificationFoundLabel: "noNotificationFoundLabel", nbUnreadCount: "nbUnreadCount", dateFormat: "dateFormat", noNotificationFoundLink: "noNotificationFoundLink", isShowMarkAsRead: "isShowMarkAsRead", isShowViewAllAction: "isShowViewAllAction", isHidePanelOnViewAllAction: "isHidePanelOnViewAllAction", customUnreadCount: "customUnreadCount", isShowMarkAllAsReadButton: "isShowMarkAllAsReadButton", isShowSettingsButton: "isShowSettingsButton", isShowRefreshButton: "isShowRefreshButton" }, outputs: { refreshClick: "refreshClick", notificationsClick: "notificationsClick", viewAllClick: "viewAllClick", markAllAsReadClick: "markAllAsReadClick", noNotificationFoundClick: "noNotificationFoundClick", itemClick: "itemClick", itemMarkAsReadClick: "itemMarkAsReadClick" }, host: { properties: { "class": "this.string" } }, usesOnChanges: true, ngImport: i0, template: "<eui-icon-svg-button\n class=\"eui-notifications-v2__trigger\"\n iconSvgName=\"eui-notifications\"\n iconSvgSize=\"m\"\n iconSvgFillColor=\"white\"\n (click)=\"onClicked($event)\"\n (keydown.enter)=\"onClicked($event)\"\n (keydown.esc)=\"onHide()\"\n hasFocusBorder>\n <eui-badge *ngIf=\"count\" euiSizeS euiDanger>{{ count }}</eui-badge>\n <eui-badge *ngIf=\"unreadSinceLastCheckCount\" euiSizeS euiDanger>{{ unreadSinceLastCheckCount }}</eui-badge>\n</eui-icon-svg-button>\n\n<!-- <eui-icon-svg\n class=\"eui-notifications-v2__trigger\"\n role=\"button\"\n size=\"m\"\n icon=\"eui-notifications\"\n fillColor=\"grey-5\"\n (click)=\"onClicked($event)\"\n (keydown.enter)=\"onClicked($event)\"\n (keydown.esc)=\"onHide()\"\n tabindex=\"0\">\n <eui-badge *ngIf=\"count\" euiSizeS euiDanger>{{ count }}</eui-badge>\n <eui-badge *ngIf=\"unreadSinceLastCheckCount\" euiSizeS euiDanger>{{ unreadSinceLastCheckCount }}</eui-badge>\n</eui-icon-svg> -->\n\n<eui-overlay [isActive]=\"isOverlayActive\" class=\"eui-overlay-offset--width-30\">\n <eui-overlay-header>\n <div class=\"eui-notifications-v2__header\">\n <div class=\"eui-notifications-v2__header-title\">\n <div class=\"eui-notifications-v2__header-title-label\">\n {{ headerTitleLabel ? headerTitleLabel : ('eui.MYNOTIFICATIONS' | translate) }}\n </div>\n\n <div class=\"eui-notifications-v2__header-title-actions\">\n <span class=\"hide\">\n <a (click)=\"onHide()\" class=\"eui-u-text-link\" role=\"button\" tabIndex=\"0\">\n {{ headerHideLabel ? headerHideLabel : ('eui.HIDE' | translate) }}\n </a>\n <span class=\"ml-2 eui-u-font-xs eui-icon eui-icon-chevron-right\"></span>\n </span>\n </div>\n </div>\n\n <div class=\"eui-notifications-v2__header-subinfos-bar\">\n <strong>{{ unreadSinceLastCheckCount }}</strong>\n <span class=\"eui-u-ml-xs\">{{\n headerUnreadSinceLastCheckCountLabel ? headerUnreadSinceLastCheckCountLabel : ('eui.NEW-COUNT' | translate)\n }}</span>\n\n <span class=\"eui-u-ml-xs\">|</span>\n\n <span class=\"eui-u-ml-xs\">{{ unreadCount }}</span>\n <span class=\"eui-u-ml-xs\">{{ headerUnreadCountLabel ? headerUnreadCountLabel : ('eui.NEW-COUNT' | translate) }}</span>\n </div>\n\n <div class=\"eui-notifications-v2__header-subactions-bar\">\n <a *ngIf=\"items.length > 0\" (click)=\"onMarkAllAsRead($event)\" class=\"eui-u-text-link\" tabIndex=\"0\">\n {{ 'notif.MARK-ALL-READ' | translate }}\n </a>\n <a (click)=\"onRefresh($event)\" class=\"eui-u-text-link eui-u-ml-auto\" tabIndex=\"0\">\n <span class=\"eui-u-flex\">\n <span class=\"eui-icon eui-icon-refresh mr-1\"></span>\n {{ 'notif.SV-REFRESH' | translate }}\n </span>\n </a>\n </div>\n </div>\n </eui-overlay-header>\n\n <eui-overlay-body>\n <ul class=\"eui-notifications-items\" *ngIf=\"items\">\n <eui-notification-item-v2\n *ngFor=\"let item of items; trackBy: trackByFn\"\n [item]=\"item\"\n [dateFormat]=\"dateFormat\"\n [markAsReadLabel]=\"markAsReadLabel\"\n [isShowMarkAsRead]=\"isShowMarkAsRead\"\n (itemClick)=\"onItemClick($event)\"\n (itemMarkAsRead)=\"onItemMarkAsRead($event)\">\n </eui-notification-item-v2>\n </ul>\n </eui-overlay-body>\n\n <eui-overlay-footer>\n <ng-template [ngIf]=\"items?.length > 0\">\n <strong\n ><a (click)=\"onViewAllClick($event)\" class=\"eui-u-text-link\">{{\n viewAllNotificationsLabel ? viewAllNotificationsLabel : ('eui.VIEWALLNOTIFICATIONS' | translate)\n }}</a></strong\n >\n </ng-template>\n <ng-template [ngIf]=\"items?.length === 0\">\n <div class=\"ux-notification__item-content\" *ngIf=\"!noNotificationFoundLink\">\n {{ noNotificationFoundLabel ? noNotificationFoundLabel : ('eui.NONOTIFICATIONFOUND' | translate) }}\n </div>\n <div class=\"ux-notification__item-content\" *ngIf=\"noNotificationFoundLink\">\n <strong\n ><a (click)=\"onNoNotificationFoundClick()\" class=\"eui-u-text-link\">{{\n noNotificationFoundLabel ? noNotificationFoundLabel : ('eui.NONOTIFICATIONFOUND' | translate)\n }}</a></strong\n >\n </div>\n </ng-template>\n </eui-overlay-footer>\n</eui-overlay>\n", styles: [".eui-overlay-header{padding:0}.eui-overlay-footer{background-color:var(--eui-base-color-white)}.eui-notifications-items{margin:0;padding:0}.eui-notifications-v2__trigger .eui-icon-svg svg{transform:scale(1.1)}.eui-notifications-v2__header{border-bottom:1px solid var(--eui-base-color-grey-10);color:var(--eui-base-color-font);cursor:default;flex-direction:column;display:flex;width:100%}.eui-notifications-v2__header-title{display:flex;padding:var(--eui-base-spacing-xs) var(--eui-base-spacing-m)}.eui-notifications-v2__header-title-label{font:normal normal 400 1.125rem/1.5rem var(--eui-base-font-family);font-weight:700}.eui-notifications-v2__header-title-subLabel{margin-top:var(--eui-base-spacing-xs);font:normal normal 400 .875rem/1rem var(--eui-base-font-family)}.eui-notifications-v2__header-title-actions{align-items:center;display:flex;margin-left:auto}.eui-notifications-v2__header-subinfos-bar,.eui-notifications-v2__header-subactions-bar{display:flex;align-items:center;border-bottom:1px solid var(--eui-base-color-grey-10);padding:var(--eui-base-spacing-xs) var(--eui-base-spacing-m)}.eui-notification-item{display:flex;flex-direction:column;overflow-y:auto;margin:0}.eui-notification-item-content{background-color:var(--eui-base-color-info-10);border-bottom:1px solid var(--eui-base-color-grey-15);display:flex;flex-direction:column;min-height:var(--eui-base-spacing-4xl);padding:var(--eui-base-spacing-s) var(--eui-base-spacing-m);cursor:pointer}.eui-notification-item-content:hover{background-color:var(--eui-base-color-grey-5)!important}.eui-notification-item-content-top{align-items:center;display:flex;justify-content:space-between}.eui-notification-item-content-top__date{display:flex;align-items:center}.eui-notification-item-content-top__date-icon{position:relative}.eui-notification-item-content-top__date-icon--rotated{transform:rotate(20deg)}.eui-notification-item-content-top__date-icon-dot{position:absolute;top:0;right:0}.eui-notification-item-content-middle{display:flex;margin:var(--eui-base-spacing-2xs) 0}.eui-notification-item-content-middle__sub-label{margin-top:var(--eui-base-spacing-2xs)}.eui-notification-item-content-bottom{display:flex;justify-content:flex-end}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.EuiOverlayHeaderComponent, selector: "eui-overlay-header" }, { kind: "component", type: i2.EuiOverlayBodyComponent, selector: "eui-overlay-body" }, { kind: "component", type: i2.EuiOverlayFooterComponent, selector: "eui-overlay-footer" }, { kind: "component", type: i2.EuiOverlayComponent, selector: "eui-overlay", inputs: ["isActive", "position", "width", "fixedWidth"], outputs: ["activeState"] }, { kind: "component", type: i3.EuiBadgeComponent, selector: "div[euiBadge], span[euiBadge], eui-badge", inputs: ["e2eAttr", "aria-label"] }, { kind: "component", type: i4.EuiIconSvgButtonComponent, selector: "eui-icon-svg-button", inputs: ["iconSvgName", "iconSvgFillColor", "iconSvgSize", "ariaLabel", "hasFocusBorder", "hasNoPadding"], outputs: ["buttonClick"] }, { kind: "component", type: i5.EuiNotificationItemV2Component, selector: "eui-notification-item-v2", inputs: ["markAsReadLabel", "item", "dateFormat", "isShowMarkAsRead"], outputs: ["itemClick", "itemMarkAsRead"] }, { kind: "pipe", type: i6.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None }); }
|
170
170
|
}
|
171
171
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: EuiNotificationsV2Component, decorators: [{
|
172
172
|
type: Component,
|
173
|
-
args: [{ selector: 'eui-notifications-v2', changeDetection: ChangeDetectionStrategy.Default, encapsulation: ViewEncapsulation.None, template: "<eui-icon-svg-button\n class=\"eui-notifications-v2__trigger\"\n iconSvgName=\"eui-notifications\"\n iconSvgSize=\"m\"\n iconSvgFillColor=\"white\"\n (click)=\"onClicked($event)\"\n (keydown.enter)=\"onClicked($event)\"\n (keydown.esc)=\"onHide()\"\n hasFocusBorder>\n <eui-badge *ngIf=\"count\" euiSizeS euiDanger>{{ count }}</eui-badge>\n <eui-badge *ngIf=\"unreadSinceLastCheckCount\" euiSizeS euiDanger>{{ unreadSinceLastCheckCount }}</eui-badge>\n</eui-icon-svg-button>\n\n<!-- <eui-icon-svg\n class=\"eui-notifications-v2__trigger\"\n role=\"button\"\n size=\"m\"\n icon=\"eui-notifications\"\n fillColor=\"grey-5\"\n (click)=\"onClicked($event)\"\n (keydown.enter)=\"onClicked($event)\"\n (keydown.esc)=\"onHide()\"\n tabindex=\"0\">\n <eui-badge *ngIf=\"count\" euiSizeS euiDanger>{{ count }}</eui-badge>\n <eui-badge *ngIf=\"unreadSinceLastCheckCount\" euiSizeS euiDanger>{{ unreadSinceLastCheckCount }}</eui-badge>\n</eui-icon-svg> -->\n\n<eui-overlay [isActive]=\"isOverlayActive\" class=\"eui-overlay-offset--width-30\">\n <eui-overlay-header>\n <div class=\"eui-notifications-v2__header\">\n <div class=\"eui-notifications-v2__header-title\">\n <div class=\"eui-notifications-v2__header-title-label\">\n {{ headerTitleLabel ? headerTitleLabel : ('eui.MYNOTIFICATIONS' | translate) }}\n </div>\n\n <div class=\"eui-notifications-v2__header-title-actions\">\n <span class=\"hide\">\n <a (click)=\"onHide()\" class=\"eui-u-text-link\" role=\"button\" tabIndex=\"0\">\n {{ headerHideLabel ? headerHideLabel : ('eui.HIDE' | translate) }}\n </a>\n <span class=\"ml-2 eui-u-font-xs eui-icon eui-icon-chevron-right\"></span>\n </span>\n </div>\n </div>\n\n <div class=\"eui-notifications-v2__header-subinfos-bar\">\n <strong>{{ unreadSinceLastCheckCount }}</strong>\n <span class=\"eui-u-ml-xs\">{{\n headerUnreadSinceLastCheckCountLabel ? headerUnreadSinceLastCheckCountLabel : ('eui.NEW-COUNT' | translate)\n }}</span>\n\n <span class=\"eui-u-ml-xs\">|</span>\n\n <span class=\"eui-u-ml-xs\">{{ unreadCount }}</span>\n <span class=\"eui-u-ml-xs\">{{ headerUnreadCountLabel ? headerUnreadCountLabel : ('eui.NEW-COUNT' | translate) }}</span>\n </div>\n\n <div class=\"eui-notifications-v2__header-subactions-bar\">\n <a *ngIf=\"items.length > 0\" (click)=\"onMarkAllAsRead($event)\" class=\"eui-u-text-link\" tabIndex=\"0\">\n {{ 'notif.MARK-ALL-READ' | translate }}\n </a>\n <a (click)=\"onRefresh($event)\" class=\"eui-u-text-link eui-u-ml-auto\" tabIndex=\"0\">\n <span class=\"eui-u-flex\">\n <span class=\"eui-icon eui-icon-refresh mr-1\"></span>\n {{ 'notif.SV-REFRESH' | translate }}\n </span>\n </a>\n </div>\n </div>\n </eui-overlay-header>\n\n <eui-overlay-body>\n <ul class=\"eui-notifications-items\" *ngIf=\"items\">\n <eui-notification-item-v2\n *ngFor=\"let item of items; trackBy: trackByFn\"\n [item]=\"item\"\n [dateFormat]=\"dateFormat\"\n [markAsReadLabel]=\"markAsReadLabel\"\n [isShowMarkAsRead]=\"isShowMarkAsRead\"\n (itemClick)=\"onItemClick($event)\"\n (itemMarkAsRead)=\"onItemMarkAsRead($event)\">\n </eui-notification-item-v2>\n </ul>\n </eui-overlay-body>\n\n <eui-overlay-footer>\n <ng-template [ngIf]=\"items?.length > 0\">\n <strong\n ><a (click)=\"onViewAllClick($event)\" class=\"eui-u-text-link\">{{\n viewAllNotificationsLabel ? viewAllNotificationsLabel : ('eui.VIEWALLNOTIFICATIONS' | translate)\n }}</a></strong\n >\n </ng-template>\n <ng-template [ngIf]=\"items?.length === 0\">\n <div class=\"ux-notification__item-content\" *ngIf=\"!noNotificationFoundLink\">\n {{ noNotificationFoundLabel ? noNotificationFoundLabel : ('eui.NONOTIFICATIONFOUND' | translate) }}\n </div>\n <div class=\"ux-notification__item-content\" *ngIf=\"noNotificationFoundLink\">\n <strong\n ><a (click)=\"onNoNotificationFoundClick()\" class=\"eui-u-text-link\">{{\n noNotificationFoundLabel ? noNotificationFoundLabel : ('eui.NONOTIFICATIONFOUND' | translate)\n }}</a></strong\n >\n </div>\n </ng-template>\n </eui-overlay-footer>\n</eui-overlay>\n", styles: [".eui-overlay-header{padding:0}.eui-overlay-footer{background-color:var(--eui-base-color-white)}.eui-notifications-items{margin:0;padding:0}.eui-notifications-v2__trigger
|
173
|
+
args: [{ selector: 'eui-notifications-v2', changeDetection: ChangeDetectionStrategy.Default, encapsulation: ViewEncapsulation.None, template: "<eui-icon-svg-button\n class=\"eui-notifications-v2__trigger\"\n iconSvgName=\"eui-notifications\"\n iconSvgSize=\"m\"\n iconSvgFillColor=\"white\"\n (click)=\"onClicked($event)\"\n (keydown.enter)=\"onClicked($event)\"\n (keydown.esc)=\"onHide()\"\n hasFocusBorder>\n <eui-badge *ngIf=\"count\" euiSizeS euiDanger>{{ count }}</eui-badge>\n <eui-badge *ngIf=\"unreadSinceLastCheckCount\" euiSizeS euiDanger>{{ unreadSinceLastCheckCount }}</eui-badge>\n</eui-icon-svg-button>\n\n<!-- <eui-icon-svg\n class=\"eui-notifications-v2__trigger\"\n role=\"button\"\n size=\"m\"\n icon=\"eui-notifications\"\n fillColor=\"grey-5\"\n (click)=\"onClicked($event)\"\n (keydown.enter)=\"onClicked($event)\"\n (keydown.esc)=\"onHide()\"\n tabindex=\"0\">\n <eui-badge *ngIf=\"count\" euiSizeS euiDanger>{{ count }}</eui-badge>\n <eui-badge *ngIf=\"unreadSinceLastCheckCount\" euiSizeS euiDanger>{{ unreadSinceLastCheckCount }}</eui-badge>\n</eui-icon-svg> -->\n\n<eui-overlay [isActive]=\"isOverlayActive\" class=\"eui-overlay-offset--width-30\">\n <eui-overlay-header>\n <div class=\"eui-notifications-v2__header\">\n <div class=\"eui-notifications-v2__header-title\">\n <div class=\"eui-notifications-v2__header-title-label\">\n {{ headerTitleLabel ? headerTitleLabel : ('eui.MYNOTIFICATIONS' | translate) }}\n </div>\n\n <div class=\"eui-notifications-v2__header-title-actions\">\n <span class=\"hide\">\n <a (click)=\"onHide()\" class=\"eui-u-text-link\" role=\"button\" tabIndex=\"0\">\n {{ headerHideLabel ? headerHideLabel : ('eui.HIDE' | translate) }}\n </a>\n <span class=\"ml-2 eui-u-font-xs eui-icon eui-icon-chevron-right\"></span>\n </span>\n </div>\n </div>\n\n <div class=\"eui-notifications-v2__header-subinfos-bar\">\n <strong>{{ unreadSinceLastCheckCount }}</strong>\n <span class=\"eui-u-ml-xs\">{{\n headerUnreadSinceLastCheckCountLabel ? headerUnreadSinceLastCheckCountLabel : ('eui.NEW-COUNT' | translate)\n }}</span>\n\n <span class=\"eui-u-ml-xs\">|</span>\n\n <span class=\"eui-u-ml-xs\">{{ unreadCount }}</span>\n <span class=\"eui-u-ml-xs\">{{ headerUnreadCountLabel ? headerUnreadCountLabel : ('eui.NEW-COUNT' | translate) }}</span>\n </div>\n\n <div class=\"eui-notifications-v2__header-subactions-bar\">\n <a *ngIf=\"items.length > 0\" (click)=\"onMarkAllAsRead($event)\" class=\"eui-u-text-link\" tabIndex=\"0\">\n {{ 'notif.MARK-ALL-READ' | translate }}\n </a>\n <a (click)=\"onRefresh($event)\" class=\"eui-u-text-link eui-u-ml-auto\" tabIndex=\"0\">\n <span class=\"eui-u-flex\">\n <span class=\"eui-icon eui-icon-refresh mr-1\"></span>\n {{ 'notif.SV-REFRESH' | translate }}\n </span>\n </a>\n </div>\n </div>\n </eui-overlay-header>\n\n <eui-overlay-body>\n <ul class=\"eui-notifications-items\" *ngIf=\"items\">\n <eui-notification-item-v2\n *ngFor=\"let item of items; trackBy: trackByFn\"\n [item]=\"item\"\n [dateFormat]=\"dateFormat\"\n [markAsReadLabel]=\"markAsReadLabel\"\n [isShowMarkAsRead]=\"isShowMarkAsRead\"\n (itemClick)=\"onItemClick($event)\"\n (itemMarkAsRead)=\"onItemMarkAsRead($event)\">\n </eui-notification-item-v2>\n </ul>\n </eui-overlay-body>\n\n <eui-overlay-footer>\n <ng-template [ngIf]=\"items?.length > 0\">\n <strong\n ><a (click)=\"onViewAllClick($event)\" class=\"eui-u-text-link\">{{\n viewAllNotificationsLabel ? viewAllNotificationsLabel : ('eui.VIEWALLNOTIFICATIONS' | translate)\n }}</a></strong\n >\n </ng-template>\n <ng-template [ngIf]=\"items?.length === 0\">\n <div class=\"ux-notification__item-content\" *ngIf=\"!noNotificationFoundLink\">\n {{ noNotificationFoundLabel ? noNotificationFoundLabel : ('eui.NONOTIFICATIONFOUND' | translate) }}\n </div>\n <div class=\"ux-notification__item-content\" *ngIf=\"noNotificationFoundLink\">\n <strong\n ><a (click)=\"onNoNotificationFoundClick()\" class=\"eui-u-text-link\">{{\n noNotificationFoundLabel ? noNotificationFoundLabel : ('eui.NONOTIFICATIONFOUND' | translate)\n }}</a></strong\n >\n </div>\n </ng-template>\n </eui-overlay-footer>\n</eui-overlay>\n", styles: [".eui-overlay-header{padding:0}.eui-overlay-footer{background-color:var(--eui-base-color-white)}.eui-notifications-items{margin:0;padding:0}.eui-notifications-v2__trigger .eui-icon-svg svg{transform:scale(1.1)}.eui-notifications-v2__header{border-bottom:1px solid var(--eui-base-color-grey-10);color:var(--eui-base-color-font);cursor:default;flex-direction:column;display:flex;width:100%}.eui-notifications-v2__header-title{display:flex;padding:var(--eui-base-spacing-xs) var(--eui-base-spacing-m)}.eui-notifications-v2__header-title-label{font:normal normal 400 1.125rem/1.5rem var(--eui-base-font-family);font-weight:700}.eui-notifications-v2__header-title-subLabel{margin-top:var(--eui-base-spacing-xs);font:normal normal 400 .875rem/1rem var(--eui-base-font-family)}.eui-notifications-v2__header-title-actions{align-items:center;display:flex;margin-left:auto}.eui-notifications-v2__header-subinfos-bar,.eui-notifications-v2__header-subactions-bar{display:flex;align-items:center;border-bottom:1px solid var(--eui-base-color-grey-10);padding:var(--eui-base-spacing-xs) var(--eui-base-spacing-m)}.eui-notification-item{display:flex;flex-direction:column;overflow-y:auto;margin:0}.eui-notification-item-content{background-color:var(--eui-base-color-info-10);border-bottom:1px solid var(--eui-base-color-grey-15);display:flex;flex-direction:column;min-height:var(--eui-base-spacing-4xl);padding:var(--eui-base-spacing-s) var(--eui-base-spacing-m);cursor:pointer}.eui-notification-item-content:hover{background-color:var(--eui-base-color-grey-5)!important}.eui-notification-item-content-top{align-items:center;display:flex;justify-content:space-between}.eui-notification-item-content-top__date{display:flex;align-items:center}.eui-notification-item-content-top__date-icon{position:relative}.eui-notification-item-content-top__date-icon--rotated{transform:rotate(20deg)}.eui-notification-item-content-top__date-icon-dot{position:absolute;top:0;right:0}.eui-notification-item-content-middle{display:flex;margin:var(--eui-base-spacing-2xs) 0}.eui-notification-item-content-middle__sub-label{margin-top:var(--eui-base-spacing-2xs)}.eui-notification-item-content-bottom{display:flex;justify-content:flex-end}\n"] }]
|
174
174
|
}], propDecorators: { refreshClick: [{
|
175
175
|
type: Output
|
176
176
|
}], notificationsClick: [{
|
@@ -1,10 +1,9 @@
|
|
1
|
-
import {
|
2
|
-
import { Component, HostBinding, ChangeDetectionStrategy, ViewEncapsulation, Input, ViewChild, Host, Optional, Inject, forwardRef } from '@angular/core';
|
3
|
-
import { coerceBoolean } from '@eui/core';
|
1
|
+
import { Component, HostBinding, ChangeDetectionStrategy, ViewEncapsulation, Input, ViewChild, Host, Optional, Inject, forwardRef, ContentChildren, booleanAttribute } from '@angular/core';
|
4
2
|
import { takeUntil } from 'rxjs/operators';
|
5
3
|
import { Subject } from 'rxjs';
|
6
4
|
import { BaseStatesDirective } from '@eui/components/shared';
|
7
5
|
import { EuiToolbarItemComponent } from '../eui-toolbar';
|
6
|
+
import { EuiUserProfileMenuComponent } from './user-profile-menu/user-profile-menu.component';
|
8
7
|
import * as i0 from "@angular/core";
|
9
8
|
import * as i1 from "@eui/core";
|
10
9
|
import * as i2 from "@eui/components/shared";
|
@@ -23,7 +22,7 @@ export class EuiUserProfileComponent {
|
|
23
22
|
this.isOnline = true;
|
24
23
|
this.welcomeLabel = 'Welcome';
|
25
24
|
this.impersonateLabel = 'impersonating';
|
26
|
-
this.hasMenu =
|
25
|
+
this.hasMenu = false;
|
27
26
|
this.isShowUserInfos = true;
|
28
27
|
this.hasWelcomeLabel = true;
|
29
28
|
this.isShowAvatarInitials = false;
|
@@ -51,6 +50,7 @@ export class EuiUserProfileComponent {
|
|
51
50
|
this.baseStatesDirective.euiSizeS = true;
|
52
51
|
this.baseStatesDirective.euiInverted = true;
|
53
52
|
}
|
53
|
+
this.hasMenu = this.hasMenuContent.length !== 0;
|
54
54
|
}
|
55
55
|
ngOnDestroy() {
|
56
56
|
this.unsubscribeSubject$.next();
|
@@ -66,29 +66,8 @@ export class EuiUserProfileComponent {
|
|
66
66
|
].join(' ').trim();
|
67
67
|
}
|
68
68
|
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: EuiUserProfileComponent, deps: [{ token: forwardRef(() => EuiToolbarItemComponent), host: true, optional: true }, { token: i1.UserService }, { token: i2.BaseStatesDirective }], target: i0.ɵɵFactoryTarget.Component }); }
|
69
|
-
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
69
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "17.0.4", type: EuiUserProfileComponent, selector: "eui-user-profile", inputs: { welcomeLabel: "welcomeLabel", impersonateLabel: "impersonateLabel", avatarUrl: "avatarUrl", subInfos: "subInfos", hasMenu: ["hasMenu", "hasMenu", booleanAttribute], isShowUserInfos: ["isShowUserInfos", "isShowUserInfos", booleanAttribute], hasWelcomeLabel: ["hasWelcomeLabel", "hasWelcomeLabel", booleanAttribute], isShowAvatarInitials: ["isShowAvatarInitials", "isShowAvatarInitials", booleanAttribute], hasTabNavigation: ["hasTabNavigation", "hasTabNavigation", booleanAttribute], isReverse: ["isReverse", "isReverse", booleanAttribute], hasToggle: ["hasToggle", "hasToggle", booleanAttribute] }, host: { properties: { "class": "this.cssClasses" } }, queries: [{ propertyName: "hasMenuContent", predicate: i0.forwardRef(() => EuiUserProfileMenuComponent), descendants: true }], viewQueries: [{ propertyName: "dropdown", first: true, predicate: ["dropdown"], descendants: true }], hostDirectives: [{ directive: i2.BaseStatesDirective, inputs: ["euiSizeS", "euiSizeS", "euiInverted", "euiInverted"] }], ngImport: i0, template: "<ng-container *ngIf=\"hasMenu; else noMenuContent\">\n <eui-dropdown [hasTabNavigation]=\"hasTabNavigation\" width=\"340px\" #dropdown>\n <ng-container *ngTemplateOutlet=\"userProfileContent\"></ng-container>\n <eui-dropdown-content>\n <ng-content></ng-content>\n </eui-dropdown-content>\n </eui-dropdown>\n</ng-container>\n\n<ng-template #noMenuContent>\n <ng-container *ngTemplateOutlet=\"userProfileContent\"></ng-container>\n</ng-template>\n\n<ng-template #userProfileContent>\n <button [tabindex]=\"hasMenu ? '0' : '-1'\" class=\"eui-user-profile-content\">\n <div *ngIf=\"isShowUserInfos\"\n class=\"eui-user-profile__infos\"\n [class.eui-user-profile__infos--no-subinfos]=\"subInfos && !hasWelcomeLabel\">\n <ng-container *ngIf=\"userState?.impersonatingUser; else notImpersonated\">\n <div class=\"eui-user-profile__infos-welcome\">\n <span class=\"eui-u-mr-2xs\" *ngIf=\"hasWelcomeLabel\">{{ welcomeLabel }}</span>\n <strong>{{ userState?.impersonatingUser?.firstName }} {{ userState?.impersonatingUser?.lastName}}</strong>\n <span class=\"eui-u-ml-2xs\">{{ impersonateLabel }}</span>\n </div>\n <div class=\"eui-user-profile__infos-name\">\n {{ userState?.fullName }}\n </div>\n <div *ngIf=\"subInfos\" class=\"eui-user-profile__infos-subinfos\">\n {{ subInfos }}\n </div>\n </ng-container>\n\n <ng-template #notImpersonated>\n <div *ngIf=\"hasWelcomeLabel\" class=\"eui-user-profile__infos-welcome\">{{ welcomeLabel }}</div>\n <div class=\"eui-user-profile__infos-name\">{{ userState?.fullName }}</div>\n <div *ngIf=\"subInfos\" class=\"eui-user-profile__infos-subinfos\">\n {{ subInfos }}\n </div>\n </ng-template>\n </div>\n\n <eui-avatar [euiSizeS]=\"baseStatesDirective.euiSizeS\" euiInfo\n [hasShadow]=\"userState?.impersonatingUser\">\n <eui-avatar-text *ngIf=\"isShowAvatarInitials; else noAvatarInitials\">\n {{ avatarInitials }}\n </eui-avatar-text>\n <ng-template #noAvatarInitials>\n <eui-avatar-image *ngIf=\"!avatarUrl\"></eui-avatar-image>\n <eui-avatar-image *ngIf=\"avatarUrl\" [imageUrl]=\"avatarUrl\"></eui-avatar-image>\n </ng-template>\n <eui-avatar-badge position=\"bottom\" *ngIf=\"hasMenu || hasToggle\">\n <eui-badge euiSecondaryLight euiSizeXS>\n <eui-icon-svg icon=\"eui-chevron-down\" size=\"2xs\"></eui-icon-svg>\n </eui-badge>\n </eui-avatar-badge>\n </eui-avatar>\n </button>\n</ng-template>\n", styles: [".eui-user-profile{display:flex;position:relative}.eui-user-profile-content{align-items:center;background:none;border:none;cursor:pointer;display:flex}.eui-user-profile-content:focus:active:not([readonly]),.eui-user-profile-content:focus:focus:not([readonly]){outline:2px solid var(--eui-base-color-accessible-focus);outline-offset:-2px;transition:none}.eui-user-profile-content:focus [tabindex=\"0\"]:active:not([readonly]),.eui-user-profile-content:focus [tabindex=\"0\"]:focus:not([readonly]){outline:2px solid var(--eui-base-color-accessible-focus);outline-offset:-2px;transition:none}.eui-user-profile__infos{align-items:flex-end;display:flex;flex-direction:column;padding-right:var(--eui-base-spacing-s);font:normal normal 400 .875rem/1rem var(--eui-base-font-family)}.eui-user-profile__infos-container{justify-content:flex-end;align-items:center;display:flex;width:100%}.eui-user-profile__infos-welcome{text-align:right}.eui-user-profile__infos-name{color:var(--eui-base-color-primary-100);font:normal normal 400 .875rem/1rem var(--eui-base-font-family);font-weight:700}.eui-user-profile__infos-subinfos{color:var(--eui-base-color-grey-90)}.eui-user-profile__infos--no-subinfos{display:flex}@media screen and (max-width: 767px){.eui-app-shell-header-toolbar-items .eui-user-profile{display:flex}.eui-app .eui-app-toolbar .eui-user-profile__infos{display:none}}@media screen and (min-width: 768px){.eui-app-shell-header-toolbar-items .eui-user-profile{display:none}.is-header-shrink .eui-user-profile{display:flex}}@media screen and (min-width: 768px) and (max-width: 995px){.eui-app .eui-app-toolbar .eui-user-profile__infos{display:none}}.eui-user-profile--inverted .eui-user-profile__infos-name{color:var(--eui-base-color-white)}.eui-user-profile--inverted .eui-user-profile__infos-welcome,.eui-user-profile--inverted .eui-user-profile__infos-subinfos{color:var(--eui-base-color-grey-15)}.eui-user-profile--reverse .eui-user-profile-content{flex-direction:row-reverse}.eui-user-profile--reverse .eui-user-profile__infos{margin-left:var(--eui-base-spacing-m)}.eui-user-profile-menu{height:auto;min-width:340px;position:relative}.eui-user-profile-menu-item{align-items:center;border-bottom:1px solid var(--eui-base-color-grey-20);border-left:var(--eui-base-spacing-2xs) solid transparent;cursor:pointer;display:flex;padding:var(--eui-base-spacing-xs) var(--eui-base-spacing-s);border-left:4px solid transparent}.eui-user-profile-menu-item:last-child{border-bottom:0}.eui-user-profile-menu-item a{color:var(--eui-base-color-text);text-decoration:none}.eui-user-profile-menu-item .eui-icon{color:var(--eui-base-color-grey-75);font-size:var(--eui-base-icon-size-m);margin-right:var(--eui-base-spacing-m);padding:var(--eui-base-spacing-xs)}.eui-user-profile-menu-item:hover{background-color:var(--eui-base-color-grey-5);cursor:pointer}.eui-user-profile-menu-item:focus{border-left:4px solid var(--eui-base-color-accessible-focus);transition:outline .15s ease-in-out,border .15s ease-in-out}.eui-user-profile-menu-item.link{cursor:pointer}.eui-user-profile-menu-item-right-content{margin-left:auto}.eui-user-profile-card{width:100%}.eui-user-profile-card__main-wrapper{display:flex;flex-direction:row;padding:var(--eui-base-spacing-m) var(--eui-base-spacing-m) var(--eui-base-spacing-m) 0}.eui-user-profile-card__main-wrapper-right-content{display:flex;flex-direction:column;margin-left:auto}.eui-user-profile-card__avatar-wrapper{display:flex}.eui-user-profile-card__userInfos{display:flex;flex-direction:column;padding-left:var(--eui-base-spacing-s)}.eui-user-profile-card__userInfos-item{padding-bottom:var(--eui-base-spacing-xs)}.eui-user-profile-card__impersonateInfos{background-color:var(--eui-base-color-grey-10);padding:var(--eui-base-spacing-s)}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i4.EuiDropdownComponent, selector: "eui-dropdown", inputs: ["e2eAttr", "tabIndex", "width", "position", "isDropDownRightAligned", "isClosedOnClickInside", "isLabelUpdatedFromSelectedItem", "isExpandOnHover", "hasTabNavigation"] }, { kind: "directive", type: i4.EuiDropdownContentDirective, selector: "eui-dropdown-content" }, { kind: "component", type: i5.EuiIconSvgComponent, selector: "eui-icon-svg, span[euiIconSvg], i[euiIconSvg]", inputs: ["icon", "size", "fillColor", "set", "ariaLabelledby", "role", "style", "iconUrl", "transform", "aria-label", "ariaHidden", "focusable", "isLoading"] }, { kind: "component", type: i6.EuiAvatarComponent, selector: "div[euiAvatar], span[euiAvatar], eui-avatar", inputs: ["e2eAttr", "aria-label", "hasShadow", "isShapeSquare", "isFlat", "hasNoBackground"] }, { kind: "component", type: i6.EuiAvatarTextComponent, selector: "eui-avatar-text" }, { kind: "component", type: i6.EuiAvatarImageComponent, selector: "eui-avatar-image", inputs: ["imageUrl"] }, { kind: "component", type: i6.EuiAvatarBadgeComponent, selector: "eui-avatar-badge", inputs: ["position"] }, { kind: "component", type: i7.EuiBadgeComponent, selector: "div[euiBadge], span[euiBadge], eui-badge", inputs: ["e2eAttr", "aria-label"] }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None }); }
|
70
70
|
}
|
71
|
-
__decorate([
|
72
|
-
coerceBoolean
|
73
|
-
], EuiUserProfileComponent.prototype, "hasMenu", void 0);
|
74
|
-
__decorate([
|
75
|
-
coerceBoolean
|
76
|
-
], EuiUserProfileComponent.prototype, "isShowUserInfos", void 0);
|
77
|
-
__decorate([
|
78
|
-
coerceBoolean
|
79
|
-
], EuiUserProfileComponent.prototype, "hasWelcomeLabel", void 0);
|
80
|
-
__decorate([
|
81
|
-
coerceBoolean
|
82
|
-
], EuiUserProfileComponent.prototype, "isShowAvatarInitials", void 0);
|
83
|
-
__decorate([
|
84
|
-
coerceBoolean
|
85
|
-
], EuiUserProfileComponent.prototype, "hasTabNavigation", void 0);
|
86
|
-
__decorate([
|
87
|
-
coerceBoolean
|
88
|
-
], EuiUserProfileComponent.prototype, "isReverse", void 0);
|
89
|
-
__decorate([
|
90
|
-
coerceBoolean
|
91
|
-
], EuiUserProfileComponent.prototype, "hasToggle", void 0);
|
92
71
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: EuiUserProfileComponent, decorators: [{
|
93
72
|
type: Component,
|
94
73
|
args: [{ selector: 'eui-user-profile', changeDetection: ChangeDetectionStrategy.Default, encapsulation: ViewEncapsulation.None, hostDirectives: [
|
@@ -99,7 +78,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.4", ngImpor
|
|
99
78
|
'euiInverted',
|
100
79
|
],
|
101
80
|
},
|
102
|
-
], template: "<ng-container *ngIf=\"hasMenu; else noMenuContent\">\n <eui-dropdown [hasTabNavigation]=\"hasTabNavigation\" width=\"340px\" #dropdown>\n <ng-container *ngTemplateOutlet=\"userProfileContent\"></ng-container>\n <eui-dropdown-content>\n <ng-content></ng-content>\n </eui-dropdown-content>\n </eui-dropdown>\n</ng-container>\n\n<ng-template #noMenuContent>\n <ng-container *ngTemplateOutlet=\"userProfileContent\"></ng-container>\n</ng-template>\n\n<ng-template #userProfileContent>\n <button [tabindex]=\"hasMenu ? '0' : '-1'\" class=\"eui-user-profile-content\">\n <div *ngIf=\"isShowUserInfos\"\n class=\"eui-user-profile__infos\"\n [class.eui-user-profile__infos--no-subinfos]=\"subInfos && !hasWelcomeLabel\">\n <ng-container *ngIf=\"userState?.impersonatingUser; else notImpersonated\">\n <div class=\"eui-user-profile__infos-welcome\">\n <span class=\"eui-u-mr-2xs\" *ngIf=\"hasWelcomeLabel\">{{ welcomeLabel }}</span>\n <strong>{{ userState?.impersonatingUser?.firstName }} {{ userState?.impersonatingUser?.lastName}}</strong>\n <span class=\"eui-u-ml-2xs\">{{ impersonateLabel }}</span>\n </div>\n <div class=\"eui-user-profile__infos-name\">\n {{ userState?.fullName }}\n </div>\n <div *ngIf=\"subInfos\" class=\"eui-user-profile__infos-subinfos\">\n {{ subInfos }}\n </div>\n </ng-container>\n\n <ng-template #notImpersonated>\n <div *ngIf=\"hasWelcomeLabel\" class=\"eui-user-profile__infos-welcome\">{{ welcomeLabel }}</div>\n <div class=\"eui-user-profile__infos-name\">{{ userState?.fullName }}</div>\n <div *ngIf=\"subInfos\" class=\"eui-user-profile__infos-subinfos\">\n {{ subInfos }}\n </div>\n </ng-template>\n </div>\n\n <eui-avatar [euiSizeS]=\"baseStatesDirective.euiSizeS\" euiInfo\n [hasShadow]=\"userState?.impersonatingUser\">\n <eui-avatar-text *ngIf=\"isShowAvatarInitials; else noAvatarInitials\">\n {{ avatarInitials }}\n </eui-avatar-text>\n <ng-template #noAvatarInitials>\n <eui-avatar-image *ngIf=\"!avatarUrl\"></eui-avatar-image>\n <eui-avatar-image *ngIf=\"avatarUrl\" [imageUrl]=\"avatarUrl\"></eui-avatar-image>\n </ng-template>\n <eui-avatar-badge position=\"bottom\" *ngIf=\"hasToggle\">\n <eui-badge
|
81
|
+
], template: "<ng-container *ngIf=\"hasMenu; else noMenuContent\">\n <eui-dropdown [hasTabNavigation]=\"hasTabNavigation\" width=\"340px\" #dropdown>\n <ng-container *ngTemplateOutlet=\"userProfileContent\"></ng-container>\n <eui-dropdown-content>\n <ng-content></ng-content>\n </eui-dropdown-content>\n </eui-dropdown>\n</ng-container>\n\n<ng-template #noMenuContent>\n <ng-container *ngTemplateOutlet=\"userProfileContent\"></ng-container>\n</ng-template>\n\n<ng-template #userProfileContent>\n <button [tabindex]=\"hasMenu ? '0' : '-1'\" class=\"eui-user-profile-content\">\n <div *ngIf=\"isShowUserInfos\"\n class=\"eui-user-profile__infos\"\n [class.eui-user-profile__infos--no-subinfos]=\"subInfos && !hasWelcomeLabel\">\n <ng-container *ngIf=\"userState?.impersonatingUser; else notImpersonated\">\n <div class=\"eui-user-profile__infos-welcome\">\n <span class=\"eui-u-mr-2xs\" *ngIf=\"hasWelcomeLabel\">{{ welcomeLabel }}</span>\n <strong>{{ userState?.impersonatingUser?.firstName }} {{ userState?.impersonatingUser?.lastName}}</strong>\n <span class=\"eui-u-ml-2xs\">{{ impersonateLabel }}</span>\n </div>\n <div class=\"eui-user-profile__infos-name\">\n {{ userState?.fullName }}\n </div>\n <div *ngIf=\"subInfos\" class=\"eui-user-profile__infos-subinfos\">\n {{ subInfos }}\n </div>\n </ng-container>\n\n <ng-template #notImpersonated>\n <div *ngIf=\"hasWelcomeLabel\" class=\"eui-user-profile__infos-welcome\">{{ welcomeLabel }}</div>\n <div class=\"eui-user-profile__infos-name\">{{ userState?.fullName }}</div>\n <div *ngIf=\"subInfos\" class=\"eui-user-profile__infos-subinfos\">\n {{ subInfos }}\n </div>\n </ng-template>\n </div>\n\n <eui-avatar [euiSizeS]=\"baseStatesDirective.euiSizeS\" euiInfo\n [hasShadow]=\"userState?.impersonatingUser\">\n <eui-avatar-text *ngIf=\"isShowAvatarInitials; else noAvatarInitials\">\n {{ avatarInitials }}\n </eui-avatar-text>\n <ng-template #noAvatarInitials>\n <eui-avatar-image *ngIf=\"!avatarUrl\"></eui-avatar-image>\n <eui-avatar-image *ngIf=\"avatarUrl\" [imageUrl]=\"avatarUrl\"></eui-avatar-image>\n </ng-template>\n <eui-avatar-badge position=\"bottom\" *ngIf=\"hasMenu || hasToggle\">\n <eui-badge euiSecondaryLight euiSizeXS>\n <eui-icon-svg icon=\"eui-chevron-down\" size=\"2xs\"></eui-icon-svg>\n </eui-badge>\n </eui-avatar-badge>\n </eui-avatar>\n </button>\n</ng-template>\n", styles: [".eui-user-profile{display:flex;position:relative}.eui-user-profile-content{align-items:center;background:none;border:none;cursor:pointer;display:flex}.eui-user-profile-content:focus:active:not([readonly]),.eui-user-profile-content:focus:focus:not([readonly]){outline:2px solid var(--eui-base-color-accessible-focus);outline-offset:-2px;transition:none}.eui-user-profile-content:focus [tabindex=\"0\"]:active:not([readonly]),.eui-user-profile-content:focus [tabindex=\"0\"]:focus:not([readonly]){outline:2px solid var(--eui-base-color-accessible-focus);outline-offset:-2px;transition:none}.eui-user-profile__infos{align-items:flex-end;display:flex;flex-direction:column;padding-right:var(--eui-base-spacing-s);font:normal normal 400 .875rem/1rem var(--eui-base-font-family)}.eui-user-profile__infos-container{justify-content:flex-end;align-items:center;display:flex;width:100%}.eui-user-profile__infos-welcome{text-align:right}.eui-user-profile__infos-name{color:var(--eui-base-color-primary-100);font:normal normal 400 .875rem/1rem var(--eui-base-font-family);font-weight:700}.eui-user-profile__infos-subinfos{color:var(--eui-base-color-grey-90)}.eui-user-profile__infos--no-subinfos{display:flex}@media screen and (max-width: 767px){.eui-app-shell-header-toolbar-items .eui-user-profile{display:flex}.eui-app .eui-app-toolbar .eui-user-profile__infos{display:none}}@media screen and (min-width: 768px){.eui-app-shell-header-toolbar-items .eui-user-profile{display:none}.is-header-shrink .eui-user-profile{display:flex}}@media screen and (min-width: 768px) and (max-width: 995px){.eui-app .eui-app-toolbar .eui-user-profile__infos{display:none}}.eui-user-profile--inverted .eui-user-profile__infos-name{color:var(--eui-base-color-white)}.eui-user-profile--inverted .eui-user-profile__infos-welcome,.eui-user-profile--inverted .eui-user-profile__infos-subinfos{color:var(--eui-base-color-grey-15)}.eui-user-profile--reverse .eui-user-profile-content{flex-direction:row-reverse}.eui-user-profile--reverse .eui-user-profile__infos{margin-left:var(--eui-base-spacing-m)}.eui-user-profile-menu{height:auto;min-width:340px;position:relative}.eui-user-profile-menu-item{align-items:center;border-bottom:1px solid var(--eui-base-color-grey-20);border-left:var(--eui-base-spacing-2xs) solid transparent;cursor:pointer;display:flex;padding:var(--eui-base-spacing-xs) var(--eui-base-spacing-s);border-left:4px solid transparent}.eui-user-profile-menu-item:last-child{border-bottom:0}.eui-user-profile-menu-item a{color:var(--eui-base-color-text);text-decoration:none}.eui-user-profile-menu-item .eui-icon{color:var(--eui-base-color-grey-75);font-size:var(--eui-base-icon-size-m);margin-right:var(--eui-base-spacing-m);padding:var(--eui-base-spacing-xs)}.eui-user-profile-menu-item:hover{background-color:var(--eui-base-color-grey-5);cursor:pointer}.eui-user-profile-menu-item:focus{border-left:4px solid var(--eui-base-color-accessible-focus);transition:outline .15s ease-in-out,border .15s ease-in-out}.eui-user-profile-menu-item.link{cursor:pointer}.eui-user-profile-menu-item-right-content{margin-left:auto}.eui-user-profile-card{width:100%}.eui-user-profile-card__main-wrapper{display:flex;flex-direction:row;padding:var(--eui-base-spacing-m) var(--eui-base-spacing-m) var(--eui-base-spacing-m) 0}.eui-user-profile-card__main-wrapper-right-content{display:flex;flex-direction:column;margin-left:auto}.eui-user-profile-card__avatar-wrapper{display:flex}.eui-user-profile-card__userInfos{display:flex;flex-direction:column;padding-left:var(--eui-base-spacing-s)}.eui-user-profile-card__userInfos-item{padding-bottom:var(--eui-base-spacing-xs)}.eui-user-profile-card__impersonateInfos{background-color:var(--eui-base-color-grey-10);padding:var(--eui-base-spacing-s)}\n"] }]
|
103
82
|
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
104
83
|
type: Host
|
105
84
|
}, {
|
@@ -110,9 +89,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.4", ngImpor
|
|
110
89
|
}] }, { type: i1.UserService }, { type: i2.BaseStatesDirective }], propDecorators: { cssClasses: [{
|
111
90
|
type: HostBinding,
|
112
91
|
args: ['class']
|
113
|
-
}], dropdown: [{
|
114
|
-
type: ViewChild,
|
115
|
-
args: ['dropdown']
|
116
92
|
}], welcomeLabel: [{
|
117
93
|
type: Input
|
118
94
|
}], impersonateLabel: [{
|
@@ -122,18 +98,31 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.4", ngImpor
|
|
122
98
|
}], subInfos: [{
|
123
99
|
type: Input
|
124
100
|
}], hasMenu: [{
|
125
|
-
type: Input
|
101
|
+
type: Input,
|
102
|
+
args: [{ transform: booleanAttribute }]
|
126
103
|
}], isShowUserInfos: [{
|
127
|
-
type: Input
|
104
|
+
type: Input,
|
105
|
+
args: [{ transform: booleanAttribute }]
|
128
106
|
}], hasWelcomeLabel: [{
|
129
|
-
type: Input
|
107
|
+
type: Input,
|
108
|
+
args: [{ transform: booleanAttribute }]
|
130
109
|
}], isShowAvatarInitials: [{
|
131
|
-
type: Input
|
110
|
+
type: Input,
|
111
|
+
args: [{ transform: booleanAttribute }]
|
132
112
|
}], hasTabNavigation: [{
|
133
|
-
type: Input
|
113
|
+
type: Input,
|
114
|
+
args: [{ transform: booleanAttribute }]
|
134
115
|
}], isReverse: [{
|
135
|
-
type: Input
|
116
|
+
type: Input,
|
117
|
+
args: [{ transform: booleanAttribute }]
|
136
118
|
}], hasToggle: [{
|
137
|
-
type: Input
|
119
|
+
type: Input,
|
120
|
+
args: [{ transform: booleanAttribute }]
|
121
|
+
}], dropdown: [{
|
122
|
+
type: ViewChild,
|
123
|
+
args: ['dropdown']
|
124
|
+
}], hasMenuContent: [{
|
125
|
+
type: ContentChildren,
|
126
|
+
args: [forwardRef(() => EuiUserProfileMenuComponent), { descendants: true }]
|
138
127
|
}] } });
|
139
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1wcm9maWxlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xheW91dC9ldWktdXNlci1wcm9maWxlL3VzZXItcHJvZmlsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9sYXlvdXQvZXVpLXVzZXItcHJvZmlsZS91c2VyLXByb2ZpbGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLHVCQUF1QixFQUFFLGlCQUFpQixFQUFFLEtBQUssRUFBVSxTQUFTLEVBQWEsSUFBSSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFvQixNQUFNLGVBQWUsQ0FBQztBQUc5TCxPQUFPLEVBQTBCLGFBQWEsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNsRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFM0MsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM3RCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7O0FBa0J6RCxNQUFNLE9BQU8sdUJBQXVCO0lBQ2hDLElBQ1csVUFBVTtRQUNqQixPQUFPLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUNoQyxDQUFDO0lBc0NELFlBQzJFLGlCQUFpQixFQUNoRixXQUF3QixFQUN6QixtQkFBd0M7UUFEdkMsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDekIsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQXRDbkQsYUFBUSxHQUFHLElBQUksQ0FBQztRQU1QLGlCQUFZLEdBQUcsU0FBUyxDQUFDO1FBQ3pCLHFCQUFnQixHQUFHLGVBQWUsQ0FBQztRQU01QyxZQUFPLEdBQWlCLElBQUksQ0FBQztRQUc3QixvQkFBZSxHQUFpQixJQUFJLENBQUM7UUFHckMsb0JBQWUsR0FBaUIsSUFBSSxDQUFDO1FBR3JDLHlCQUFvQixHQUFpQixLQUFLLENBQUM7UUFHM0MscUJBQWdCLEdBQWlCLEtBQUssQ0FBQztRQUd2QyxjQUFTLEdBQWlCLEtBQUssQ0FBQztRQUdoQyxjQUFTLEdBQWlCLEtBQUssQ0FBQztRQUV4Qix3QkFBbUIsR0FBa0IsSUFBSSxPQUFPLEVBQUUsQ0FBQztRQU92RCxJQUFJLENBQUMsaUJBQWlCLEdBQUcsaUJBQTRDLENBQUM7SUFDMUUsQ0FBQztJQUVELFFBQVE7UUFDSixJQUFJLENBQUMsV0FBVzthQUNYLFFBQVEsRUFBRTthQUNWLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLENBQUM7YUFDekMsU0FBUyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDakIsSUFBSSxLQUFLLEVBQUU7Z0JBQ1AsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7Z0JBQ3ZCLE1BQU0sZ0JBQWdCLEdBQUcsS0FBSyxDQUFDLFNBQVMsRUFBRSxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDO2dCQUN4RSxNQUFNLGVBQWUsR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUM7Z0JBQ3RFLElBQUksQ0FBQyxjQUFjLEdBQUcsR0FBRyxnQkFBZ0IsR0FBRyxlQUFlLEVBQUUsQ0FBQzthQUNqRTtRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ1gsQ0FBQztJQUVELGtCQUFrQjtRQUNkLElBQUksSUFBSSxDQUFDLGlCQUFpQixFQUFFO1lBQ3hCLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO1lBQ3pDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO1NBQy9DO0lBQ0wsQ0FBQztJQUVELFdBQVc7UUFDUCxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDaEMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ3hDLENBQUM7SUFFRCxhQUFhO1FBQ1QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUNsQyxDQUFDO0lBRU8sYUFBYTtRQUNqQixPQUFPO1lBQ0gsSUFBSSxDQUFDLG1CQUFtQixDQUFDLGFBQWEsQ0FBQyxrQkFBa0IsQ0FBQztZQUMxRCxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQywyQkFBMkIsQ0FBQSxDQUFDLENBQUMsRUFBRTtTQUNuRCxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN2QixDQUFDO2lJQXJGUSx1QkFBdUIsa0JBMkNBLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQztxSEEzQ2hFLHVCQUF1QiwycUJDMUJwQyxxZ0dBMERBOztBRFpJO0lBREMsYUFBYTt3REFDZTtBQUc3QjtJQURDLGFBQWE7Z0VBQ3VCO0FBR3JDO0lBREMsYUFBYTtnRUFDdUI7QUFHckM7SUFEQyxhQUFhO3FFQUM2QjtBQUczQztJQURDLGFBQWE7aUVBQ3lCO0FBR3ZDO0lBREMsYUFBYTswREFDa0I7QUFHaEM7SUFEQyxhQUFhOzBEQUNrQjsyRkF0Q3ZCLHVCQUF1QjtrQkFoQm5DLFNBQVM7K0JBQ0ksa0JBQWtCLG1CQUdYLHVCQUF1QixDQUFDLE9BQU8saUJBQ2pDLGlCQUFpQixDQUFDLElBQUksa0JBQ3JCO3dCQUNaOzRCQUNJLFNBQVMsRUFBRSxtQkFBbUI7NEJBQzlCLE1BQU0sRUFBRTtnQ0FDSixVQUFVO2dDQUNWLGFBQWE7NkJBQ2hCO3lCQUNKO3FCQUNKOzswQkE2Q0ksSUFBSTs7MEJBQUksUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsdUJBQXVCLENBQUM7cUdBekM5RCxVQUFVO3NCQURwQixXQUFXO3VCQUFDLE9BQU87Z0JBVUcsUUFBUTtzQkFBOUIsU0FBUzt1QkFBQyxVQUFVO2dCQUVaLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFJTixPQUFPO3NCQUZOLEtBQUs7Z0JBS04sZUFBZTtzQkFGZCxLQUFLO2dCQUtOLGVBQWU7c0JBRmQsS0FBSztnQkFLTixvQkFBb0I7c0JBRm5CLEtBQUs7Z0JBS04sZ0JBQWdCO3NCQUZmLEtBQUs7Z0JBS04sU0FBUztzQkFGUixLQUFLO2dCQUtOLFNBQVM7c0JBRlIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSG9zdEJpbmRpbmcsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBWaWV3RW5jYXBzdWxhdGlvbiwgSW5wdXQsIE9uSW5pdCwgVmlld0NoaWxkLCBPbkRlc3Ryb3ksIEhvc3QsIE9wdGlvbmFsLCBJbmplY3QsIGZvcndhcmRSZWYsIEFmdGVyQ29udGVudEluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJvb2xlYW5JbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbic7XG5cbmltcG9ydCB7IFVzZXJTZXJ2aWNlLCBVc2VyU3RhdGUsIGNvZXJjZUJvb2xlYW4gfSBmcm9tICdAZXVpL2NvcmUnO1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgRXVpRHJvcGRvd25Db21wb25lbnQgfSBmcm9tICdAZXVpL2NvbXBvbmVudHMvZXVpLWRyb3Bkb3duJztcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEJhc2VTdGF0ZXNEaXJlY3RpdmUgfSBmcm9tICdAZXVpL2NvbXBvbmVudHMvc2hhcmVkJztcbmltcG9ydCB7IEV1aVRvb2xiYXJJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi4vZXVpLXRvb2xiYXInO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2V1aS11c2VyLXByb2ZpbGUnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi91c2VyLXByb2ZpbGUuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL19zdHlsZXMvX2luZGV4LnNjc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LkRlZmF1bHQsXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBob3N0RGlyZWN0aXZlczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBkaXJlY3RpdmU6IEJhc2VTdGF0ZXNEaXJlY3RpdmUsXG4gICAgICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgICAgICAnZXVpU2l6ZVMnLFxuICAgICAgICAgICAgICAgICdldWlJbnZlcnRlZCcsXG4gICAgICAgICAgICBdLFxuICAgICAgICB9LFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIEV1aVVzZXJQcm9maWxlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3ksIEFmdGVyQ29udGVudEluaXQge1xuICAgIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICAgIHB1YmxpYyBnZXQgY3NzQ2xhc3NlcygpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRDc3NDbGFzc2VzKCk7XG4gICAgfVxuXG4gICAgdXNlclN0YXRlOiBVc2VyU3RhdGU7XG4gICAgaXNPbmxpbmUgPSB0cnVlO1xuICAgIGF2YXRhckluaXRpYWxzOiBzdHJpbmc7XG4gICAgdG9vbGJhckl0ZW1QYXJlbnQ6IEV1aVRvb2xiYXJJdGVtQ29tcG9uZW50O1xuXG4gICAgQFZpZXdDaGlsZCgnZHJvcGRvd24nKSBkcm9wZG93bjogRXVpRHJvcGRvd25Db21wb25lbnQ7XG5cbiAgICBASW5wdXQoKSB3ZWxjb21lTGFiZWwgPSAnV2VsY29tZSc7XG4gICAgQElucHV0KCkgaW1wZXJzb25hdGVMYWJlbCA9ICdpbXBlcnNvbmF0aW5nJztcbiAgICBASW5wdXQoKSBhdmF0YXJVcmw6IHN0cmluZztcbiAgICBASW5wdXQoKSBzdWJJbmZvczogc3RyaW5nO1xuXG4gICAgQElucHV0KClcbiAgICBAY29lcmNlQm9vbGVhblxuICAgIGhhc01lbnU6IEJvb2xlYW5JbnB1dCA9IHRydWU7XG4gICAgQElucHV0KClcbiAgICBAY29lcmNlQm9vbGVhblxuICAgIGlzU2hvd1VzZXJJbmZvczogQm9vbGVhbklucHV0ID0gdHJ1ZTtcbiAgICBASW5wdXQoKVxuICAgIEBjb2VyY2VCb29sZWFuXG4gICAgaGFzV2VsY29tZUxhYmVsOiBCb29sZWFuSW5wdXQgPSB0cnVlO1xuICAgIEBJbnB1dCgpXG4gICAgQGNvZXJjZUJvb2xlYW5cbiAgICBpc1Nob3dBdmF0YXJJbml0aWFsczogQm9vbGVhbklucHV0ID0gZmFsc2U7XG4gICAgQElucHV0KClcbiAgICBAY29lcmNlQm9vbGVhblxuICAgIGhhc1RhYk5hdmlnYXRpb246IEJvb2xlYW5JbnB1dCA9IGZhbHNlO1xuICAgIEBJbnB1dCgpXG4gICAgQGNvZXJjZUJvb2xlYW5cbiAgICBpc1JldmVyc2U6IEJvb2xlYW5JbnB1dCA9IGZhbHNlO1xuICAgIEBJbnB1dCgpXG4gICAgQGNvZXJjZUJvb2xlYW5cbiAgICBoYXNUb2dnbGU6IEJvb2xlYW5JbnB1dCA9IGZhbHNlO1xuXG4gICAgcHJpdmF0ZSB1bnN1YnNjcmliZVN1YmplY3QkOiBTdWJqZWN0PHZvaWQ+ID0gbmV3IFN1YmplY3QoKTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASG9zdCgpIEBPcHRpb25hbCgpIEBJbmplY3QoZm9yd2FyZFJlZigoKSA9PiBFdWlUb29sYmFySXRlbUNvbXBvbmVudCkpIHRvb2xiYXJJdGVtUGFyZW50LFxuICAgICAgICBwcml2YXRlIHVzZXJTZXJ2aWNlOiBVc2VyU2VydmljZSxcbiAgICAgICAgcHVibGljIGJhc2VTdGF0ZXNEaXJlY3RpdmU6IEJhc2VTdGF0ZXNEaXJlY3RpdmUsXG4gICAgKSB7XG4gICAgICAgIHRoaXMudG9vbGJhckl0ZW1QYXJlbnQgPSB0b29sYmFySXRlbVBhcmVudCBhcyBFdWlUb29sYmFySXRlbUNvbXBvbmVudDtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy51c2VyU2VydmljZVxuICAgICAgICAgICAgLmdldFN0YXRlKClcbiAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLnVuc3Vic2NyaWJlU3ViamVjdCQpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoc3RhdGUpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoc3RhdGUpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy51c2VyU3RhdGUgPSBzdGF0ZTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgZmlyc3ROYW1lSW5pdGlhbCA9IHN0YXRlLmZpcnN0TmFtZT8uc3Vic3RyaW5nKDAsIDEpLnRvVXBwZXJDYXNlKCk7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGxhc3ROYW1lSW5pdGlhbCA9IHN0YXRlLmxhc3ROYW1lPy5zdWJzdHJpbmcoMCwgMSkudG9VcHBlckNhc2UoKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5hdmF0YXJJbml0aWFscyA9IGAke2ZpcnN0TmFtZUluaXRpYWx9JHtsYXN0TmFtZUluaXRpYWx9YDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBuZ0FmdGVyQ29udGVudEluaXQoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLnRvb2xiYXJJdGVtUGFyZW50KSB7XG4gICAgICAgICAgICB0aGlzLmJhc2VTdGF0ZXNEaXJlY3RpdmUuZXVpU2l6ZVMgPSB0cnVlO1xuICAgICAgICAgICAgdGhpcy5iYXNlU3RhdGVzRGlyZWN0aXZlLmV1aUludmVydGVkID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnVuc3Vic2NyaWJlU3ViamVjdCQubmV4dCgpO1xuICAgICAgICB0aGlzLnVuc3Vic2NyaWJlU3ViamVjdCQuY29tcGxldGUoKTtcbiAgICB9XG5cbiAgICBjbG9zZURyb3Bkb3duKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmRyb3Bkb3duLmNsb3NlRHJvcGRvd24oKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldENzc0NsYXNzZXMoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgIHRoaXMuYmFzZVN0YXRlc0RpcmVjdGl2ZS5nZXRDc3NDbGFzc2VzKCdldWktdXNlci1wcm9maWxlJyksXG4gICAgICAgICAgICB0aGlzLmlzUmV2ZXJzZSA/ICdldWktdXNlci1wcm9maWxlLS1yZXZlcnNlJzogJycsXG4gICAgICAgIF0uam9pbignICcpLnRyaW0oKTtcbiAgICB9XG59XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwiaGFzTWVudTsgZWxzZSBub01lbnVDb250ZW50XCI+XG4gICAgPGV1aS1kcm9wZG93biBbaGFzVGFiTmF2aWdhdGlvbl09XCJoYXNUYWJOYXZpZ2F0aW9uXCIgd2lkdGg9XCIzNDBweFwiICNkcm9wZG93bj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInVzZXJQcm9maWxlQ29udGVudFwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICA8ZXVpLWRyb3Bkb3duLWNvbnRlbnQ+XG4gICAgICAgICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgICAgIDwvZXVpLWRyb3Bkb3duLWNvbnRlbnQ+XG4gICAgPC9ldWktZHJvcGRvd24+XG48L25nLWNvbnRhaW5lcj5cblxuPG5nLXRlbXBsYXRlICNub01lbnVDb250ZW50PlxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJ1c2VyUHJvZmlsZUNvbnRlbnRcIj48L25nLWNvbnRhaW5lcj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjdXNlclByb2ZpbGVDb250ZW50PlxuICAgICAgICA8YnV0dG9uIFt0YWJpbmRleF09XCJoYXNNZW51ID8gJzAnIDogJy0xJ1wiIGNsYXNzPVwiZXVpLXVzZXItcHJvZmlsZS1jb250ZW50XCI+XG4gICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiaXNTaG93VXNlckluZm9zXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImV1aS11c2VyLXByb2ZpbGVfX2luZm9zXCJcbiAgICAgICAgICAgICAgICBbY2xhc3MuZXVpLXVzZXItcHJvZmlsZV9faW5mb3MtLW5vLXN1YmluZm9zXT1cInN1YkluZm9zICYmICFoYXNXZWxjb21lTGFiZWxcIj5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwidXNlclN0YXRlPy5pbXBlcnNvbmF0aW5nVXNlcjsgZWxzZSBub3RJbXBlcnNvbmF0ZWRcIj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImV1aS11c2VyLXByb2ZpbGVfX2luZm9zLXdlbGNvbWVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZXVpLXUtbXItMnhzXCIgKm5nSWY9XCJoYXNXZWxjb21lTGFiZWxcIj57eyB3ZWxjb21lTGFiZWwgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICA8c3Ryb25nPnt7IHVzZXJTdGF0ZT8uaW1wZXJzb25hdGluZ1VzZXI/LmZpcnN0TmFtZSB9fSB7eyB1c2VyU3RhdGU/LmltcGVyc29uYXRpbmdVc2VyPy5sYXN0TmFtZX19PC9zdHJvbmc+XG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImV1aS11LW1sLTJ4c1wiPnt7IGltcGVyc29uYXRlTGFiZWwgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZXVpLXVzZXItcHJvZmlsZV9faW5mb3MtbmFtZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAge3sgdXNlclN0YXRlPy5mdWxsTmFtZSB9fVxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cInN1YkluZm9zXCIgY2xhc3M9XCJldWktdXNlci1wcm9maWxlX19pbmZvcy1zdWJpbmZvc1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAge3sgc3ViSW5mb3MgfX1cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgI25vdEltcGVyc29uYXRlZD5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImhhc1dlbGNvbWVMYWJlbFwiIGNsYXNzPVwiZXVpLXVzZXItcHJvZmlsZV9faW5mb3Mtd2VsY29tZVwiPnt7IHdlbGNvbWVMYWJlbCB9fTwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZXVpLXVzZXItcHJvZmlsZV9faW5mb3MtbmFtZVwiPnt7IHVzZXJTdGF0ZT8uZnVsbE5hbWUgfX08L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cInN1YkluZm9zXCIgY2xhc3M9XCJldWktdXNlci1wcm9maWxlX19pbmZvcy1zdWJpbmZvc1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAge3sgc3ViSW5mb3MgfX1cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICA8ZXVpLWF2YXRhciBbZXVpU2l6ZVNdPVwiYmFzZVN0YXRlc0RpcmVjdGl2ZS5ldWlTaXplU1wiIGV1aUluZm9cbiAgICAgICAgICAgICAgICAgICAgICAgIFtoYXNTaGFkb3ddPVwidXNlclN0YXRlPy5pbXBlcnNvbmF0aW5nVXNlclwiPlxuICAgICAgICAgICAgICAgIDxldWktYXZhdGFyLXRleHQgKm5nSWY9XCJpc1Nob3dBdmF0YXJJbml0aWFsczsgZWxzZSBub0F2YXRhckluaXRpYWxzXCI+XG4gICAgICAgICAgICAgICAgICAgIHt7IGF2YXRhckluaXRpYWxzIH19XG4gICAgICAgICAgICAgICAgPC9ldWktYXZhdGFyLXRleHQ+XG4gICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNub0F2YXRhckluaXRpYWxzPlxuICAgICAgICAgICAgICAgICAgICA8ZXVpLWF2YXRhci1pbWFnZSAqbmdJZj1cIiFhdmF0YXJVcmxcIj48L2V1aS1hdmF0YXItaW1hZ2U+XG4gICAgICAgICAgICAgICAgICAgIDxldWktYXZhdGFyLWltYWdlICpuZ0lmPVwiYXZhdGFyVXJsXCIgW2ltYWdlVXJsXT1cImF2YXRhclVybFwiPjwvZXVpLWF2YXRhci1pbWFnZT5cbiAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgICAgIDxldWktYXZhdGFyLWJhZGdlIHBvc2l0aW9uPVwiYm90dG9tXCIgKm5nSWY9XCJoYXNUb2dnbGVcIj5cbiAgICAgICAgICAgICAgICAgICAgPGV1aS1iYWRnZSBldWlTZWNvbmRhcnk+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZXVpLWljb24tc3ZnIGljb249XCJldWktY2hldnJvbi1kb3duXCIgc2l6ZT1cInhzXCIgZmlsbENvbG9yPVwid2hpdGVcIj48L2V1aS1pY29uLXN2Zz5cbiAgICAgICAgICAgICAgICAgICAgPC9ldWktYmFkZ2U+XG4gICAgICAgICAgICAgICAgPC9ldWktYXZhdGFyLWJhZGdlPlxuICAgICAgICAgICAgPC9ldWktYXZhdGFyPlxuICAgICAgICA8L2J1dHRvbj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|
128
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1wcm9maWxlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xheW91dC9ldWktdXNlci1wcm9maWxlL3VzZXItcHJvZmlsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9sYXlvdXQvZXVpLXVzZXItcHJvZmlsZS91c2VyLXByb2ZpbGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsdUJBQXVCLEVBQUUsaUJBQWlCLEVBQUUsS0FBSyxFQUFVLFNBQVMsRUFBYSxJQUFJLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQTRELGVBQWUsRUFBYyxnQkFBZ0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVyUixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFM0MsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM3RCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxpREFBaUQsQ0FBQzs7Ozs7Ozs7O0FBa0I5RixNQUFNLE9BQU8sdUJBQXVCO0lBQ2hDLElBQ1csVUFBVTtRQUNqQixPQUFPLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUNoQyxDQUFDO0lBMEJELFlBQzJFLGlCQUFpQixFQUNoRixXQUF3QixFQUN6QixtQkFBd0M7UUFEdkMsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDekIsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQTFCbkQsYUFBUSxHQUFHLElBQUksQ0FBQztRQUlQLGlCQUFZLEdBQUcsU0FBUyxDQUFDO1FBQ3pCLHFCQUFnQixHQUFHLGVBQWUsQ0FBQztRQUlKLFlBQU8sR0FBRyxLQUFLLENBQUM7UUFDaEIsb0JBQWUsR0FBRyxJQUFJLENBQUM7UUFDdkIsb0JBQWUsR0FBRyxJQUFJLENBQUM7UUFDdkIseUJBQW9CLEdBQUcsS0FBSyxDQUFDO1FBQzdCLHFCQUFnQixHQUFHLEtBQUssQ0FBQztRQUN6QixjQUFTLEdBQUcsS0FBSyxDQUFDO1FBQ2xCLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFNbEQsd0JBQW1CLEdBQWtCLElBQUksT0FBTyxFQUFFLENBQUM7UUFPdkQsSUFBSSxDQUFDLGlCQUFpQixHQUFHLGlCQUE0QyxDQUFDO0lBQzFFLENBQUM7SUFFRCxRQUFRO1FBQ0osSUFBSSxDQUFDLFdBQVc7YUFDWCxRQUFRLEVBQUU7YUFDVixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO2FBQ3pDLFNBQVMsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ2pCLElBQUksS0FBSyxFQUFFO2dCQUNQLElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO2dCQUN2QixNQUFNLGdCQUFnQixHQUFHLEtBQUssQ0FBQyxTQUFTLEVBQUUsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztnQkFDeEUsTUFBTSxlQUFlLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBRSxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDO2dCQUN0RSxJQUFJLENBQUMsY0FBYyxHQUFHLEdBQUcsZ0JBQWdCLEdBQUcsZUFBZSxFQUFFLENBQUM7YUFDakU7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNYLENBQUM7SUFFRCxrQkFBa0I7UUFDZCxJQUFJLElBQUksQ0FBQyxpQkFBaUIsRUFBRTtZQUN4QixJQUFJLENBQUMsbUJBQW1CLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQztZQUN6QyxJQUFJLENBQUMsbUJBQW1CLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQztTQUMvQztRQUNELElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxDQUFDO0lBQ3BELENBQUM7SUFFRCxXQUFXO1FBQ1AsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2hDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUN4QyxDQUFDO0lBRUQsYUFBYTtRQUNULElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDbEMsQ0FBQztJQUVPLGFBQWE7UUFDakIsT0FBTztZQUNILElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxhQUFhLENBQUMsa0JBQWtCLENBQUM7WUFDMUQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsMkJBQTJCLENBQUEsQ0FBQyxDQUFDLEVBQUU7U0FDbkQsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDdkIsQ0FBQztpSUExRVEsdUJBQXVCLGtCQStCQSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsdUJBQXVCLENBQUM7cUhBL0JoRSx1QkFBdUIsNExBZ0JaLGdCQUFnQiwyREFDaEIsZ0JBQWdCLDJEQUNoQixnQkFBZ0IsMEVBQ2hCLGdCQUFnQiw4REFDaEIsZ0JBQWdCLHlDQUNoQixnQkFBZ0IseUNBQ2hCLGdCQUFnQixzSUFHRiwyQkFBMkIsZ1JDbERqRSw0Z0dBMERBOzsyRkRqQ2EsdUJBQXVCO2tCQWhCbkMsU0FBUzsrQkFDSSxrQkFBa0IsbUJBR1gsdUJBQXVCLENBQUMsT0FBTyxpQkFDakMsaUJBQWlCLENBQUMsSUFBSSxrQkFDckI7d0JBQ1o7NEJBQ0ksU0FBUyxFQUFFLG1CQUFtQjs0QkFDOUIsTUFBTSxFQUFFO2dDQUNKLFVBQVU7Z0NBQ1YsYUFBYTs2QkFDaEI7eUJBQ0o7cUJBQ0o7OzBCQWlDSSxJQUFJOzswQkFBSSxRQUFROzswQkFBSSxNQUFNOzJCQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQztxR0E3QjlELFVBQVU7c0JBRHBCLFdBQVc7dUJBQUMsT0FBTztnQkFVWCxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBRWtDLE9BQU87c0JBQTlDLEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUU7Z0JBQ0UsZUFBZTtzQkFBdEQsS0FBSzt1QkFBQyxFQUFFLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRTtnQkFDRSxlQUFlO3NCQUF0RCxLQUFLO3VCQUFDLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFO2dCQUNFLG9CQUFvQjtzQkFBM0QsS0FBSzt1QkFBQyxFQUFFLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRTtnQkFDRSxnQkFBZ0I7c0JBQXZELEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUU7Z0JBQ0UsU0FBUztzQkFBaEQsS0FBSzt1QkFBQyxFQUFFLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRTtnQkFDRSxTQUFTO3NCQUFoRCxLQUFLO3VCQUFDLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFO2dCQUVmLFFBQVE7c0JBQTlCLFNBQVM7dUJBQUMsVUFBVTtnQkFFckIsY0FBYztzQkFEYixlQUFlO3VCQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQywyQkFBMkIsQ0FBQyxFQUFFLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSG9zdEJpbmRpbmcsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBWaWV3RW5jYXBzdWxhdGlvbiwgSW5wdXQsIE9uSW5pdCwgVmlld0NoaWxkLCBPbkRlc3Ryb3ksIEhvc3QsIE9wdGlvbmFsLCBJbmplY3QsIGZvcndhcmRSZWYsIEFmdGVyQ29udGVudEluaXQsIENvbnRlbnRDaGlsZCwgUXVlcnlMaXN0LCBBZnRlclZpZXdJbml0LCBDb250ZW50Q2hpbGRyZW4sIEVsZW1lbnRSZWYsIGJvb2xlYW5BdHRyaWJ1dGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFVzZXJTZXJ2aWNlLCBVc2VyU3RhdGUgfSBmcm9tICdAZXVpL2NvcmUnO1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgRXVpRHJvcGRvd25Db21wb25lbnQgfSBmcm9tICdAZXVpL2NvbXBvbmVudHMvZXVpLWRyb3Bkb3duJztcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEJhc2VTdGF0ZXNEaXJlY3RpdmUgfSBmcm9tICdAZXVpL2NvbXBvbmVudHMvc2hhcmVkJztcbmltcG9ydCB7IEV1aVRvb2xiYXJJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi4vZXVpLXRvb2xiYXInO1xuaW1wb3J0IHsgRXVpVXNlclByb2ZpbGVNZW51Q29tcG9uZW50IH0gZnJvbSAnLi91c2VyLXByb2ZpbGUtbWVudS91c2VyLXByb2ZpbGUtbWVudS5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2V1aS11c2VyLXByb2ZpbGUnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi91c2VyLXByb2ZpbGUuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL19zdHlsZXMvX2luZGV4LnNjc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LkRlZmF1bHQsXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBob3N0RGlyZWN0aXZlczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBkaXJlY3RpdmU6IEJhc2VTdGF0ZXNEaXJlY3RpdmUsXG4gICAgICAgICAgICBpbnB1dHM6IFtcbiAgICAgICAgICAgICAgICAnZXVpU2l6ZVMnLFxuICAgICAgICAgICAgICAgICdldWlJbnZlcnRlZCcsXG4gICAgICAgICAgICBdLFxuICAgICAgICB9LFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIEV1aVVzZXJQcm9maWxlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3ksIEFmdGVyQ29udGVudEluaXQge1xuICAgIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICAgIHB1YmxpYyBnZXQgY3NzQ2xhc3NlcygpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRDc3NDbGFzc2VzKCk7XG4gICAgfVxuXG4gICAgdXNlclN0YXRlOiBVc2VyU3RhdGU7XG4gICAgaXNPbmxpbmUgPSB0cnVlO1xuICAgIGF2YXRhckluaXRpYWxzOiBzdHJpbmc7XG4gICAgdG9vbGJhckl0ZW1QYXJlbnQ6IEV1aVRvb2xiYXJJdGVtQ29tcG9uZW50O1xuXG4gICAgQElucHV0KCkgd2VsY29tZUxhYmVsID0gJ1dlbGNvbWUnO1xuICAgIEBJbnB1dCgpIGltcGVyc29uYXRlTGFiZWwgPSAnaW1wZXJzb25hdGluZyc7XG4gICAgQElucHV0KCkgYXZhdGFyVXJsOiBzdHJpbmc7XG4gICAgQElucHV0KCkgc3ViSW5mb3M6IHN0cmluZztcblxuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KSBoYXNNZW51ID0gZmFsc2U7XG4gICAgQElucHV0KHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pIGlzU2hvd1VzZXJJbmZvcyA9IHRydWU7XG4gICAgQElucHV0KHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pIGhhc1dlbGNvbWVMYWJlbCA9IHRydWU7XG4gICAgQElucHV0KHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pIGlzU2hvd0F2YXRhckluaXRpYWxzID0gZmFsc2U7XG4gICAgQElucHV0KHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pIGhhc1RhYk5hdmlnYXRpb24gPSBmYWxzZTtcbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSkgaXNSZXZlcnNlID0gZmFsc2U7XG4gICAgQElucHV0KHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pIGhhc1RvZ2dsZSA9IGZhbHNlO1xuXG4gICAgQFZpZXdDaGlsZCgnZHJvcGRvd24nKSBkcm9wZG93bjogRXVpRHJvcGRvd25Db21wb25lbnQ7XG4gICAgQENvbnRlbnRDaGlsZHJlbihmb3J3YXJkUmVmKCgpID0+IEV1aVVzZXJQcm9maWxlTWVudUNvbXBvbmVudCksIHsgZGVzY2VuZGFudHM6IHRydWUgfSlcbiAgICBoYXNNZW51Q29udGVudDogUXVlcnlMaXN0PEV1aVVzZXJQcm9maWxlTWVudUNvbXBvbmVudD47XG5cbiAgICBwcml2YXRlIHVuc3Vic2NyaWJlU3ViamVjdCQ6IFN1YmplY3Q8dm9pZD4gPSBuZXcgU3ViamVjdCgpO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBIb3N0KCkgQE9wdGlvbmFsKCkgQEluamVjdChmb3J3YXJkUmVmKCgpID0+IEV1aVRvb2xiYXJJdGVtQ29tcG9uZW50KSkgdG9vbGJhckl0ZW1QYXJlbnQsXG4gICAgICAgIHByaXZhdGUgdXNlclNlcnZpY2U6IFVzZXJTZXJ2aWNlLFxuICAgICAgICBwdWJsaWMgYmFzZVN0YXRlc0RpcmVjdGl2ZTogQmFzZVN0YXRlc0RpcmVjdGl2ZSxcbiAgICApIHtcbiAgICAgICAgdGhpcy50b29sYmFySXRlbVBhcmVudCA9IHRvb2xiYXJJdGVtUGFyZW50IGFzIEV1aVRvb2xiYXJJdGVtQ29tcG9uZW50O1xuICAgIH1cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnVzZXJTZXJ2aWNlXG4gICAgICAgICAgICAuZ2V0U3RhdGUoKVxuICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMudW5zdWJzY3JpYmVTdWJqZWN0JCkpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChzdGF0ZSkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChzdGF0ZSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnVzZXJTdGF0ZSA9IHN0YXRlO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBmaXJzdE5hbWVJbml0aWFsID0gc3RhdGUuZmlyc3ROYW1lPy5zdWJzdHJpbmcoMCwgMSkudG9VcHBlckNhc2UoKTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgbGFzdE5hbWVJbml0aWFsID0gc3RhdGUubGFzdE5hbWU/LnN1YnN0cmluZygwLCAxKS50b1VwcGVyQ2FzZSgpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmF2YXRhckluaXRpYWxzID0gYCR7Zmlyc3ROYW1lSW5pdGlhbH0ke2xhc3ROYW1lSW5pdGlhbH1gO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMudG9vbGJhckl0ZW1QYXJlbnQpIHtcbiAgICAgICAgICAgIHRoaXMuYmFzZVN0YXRlc0RpcmVjdGl2ZS5ldWlTaXplUyA9IHRydWU7XG4gICAgICAgICAgICB0aGlzLmJhc2VTdGF0ZXNEaXJlY3RpdmUuZXVpSW52ZXJ0ZWQgPSB0cnVlO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuaGFzTWVudSA9IHRoaXMuaGFzTWVudUNvbnRlbnQubGVuZ3RoICE9PSAwO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnVuc3Vic2NyaWJlU3ViamVjdCQubmV4dCgpO1xuICAgICAgICB0aGlzLnVuc3Vic2NyaWJlU3ViamVjdCQuY29tcGxldGUoKTtcbiAgICB9XG5cbiAgICBjbG9zZURyb3Bkb3duKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmRyb3Bkb3duLmNsb3NlRHJvcGRvd24oKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldENzc0NsYXNzZXMoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgIHRoaXMuYmFzZVN0YXRlc0RpcmVjdGl2ZS5nZXRDc3NDbGFzc2VzKCdldWktdXNlci1wcm9maWxlJyksXG4gICAgICAgICAgICB0aGlzLmlzUmV2ZXJzZSA/ICdldWktdXNlci1wcm9maWxlLS1yZXZlcnNlJzogJycsXG4gICAgICAgIF0uam9pbignICcpLnRyaW0oKTtcbiAgICB9XG59XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwiaGFzTWVudTsgZWxzZSBub01lbnVDb250ZW50XCI+XG4gICAgPGV1aS1kcm9wZG93biBbaGFzVGFiTmF2aWdhdGlvbl09XCJoYXNUYWJOYXZpZ2F0aW9uXCIgd2lkdGg9XCIzNDBweFwiICNkcm9wZG93bj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInVzZXJQcm9maWxlQ29udGVudFwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICA8ZXVpLWRyb3Bkb3duLWNvbnRlbnQ+XG4gICAgICAgICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgICAgIDwvZXVpLWRyb3Bkb3duLWNvbnRlbnQ+XG4gICAgPC9ldWktZHJvcGRvd24+XG48L25nLWNvbnRhaW5lcj5cblxuPG5nLXRlbXBsYXRlICNub01lbnVDb250ZW50PlxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJ1c2VyUHJvZmlsZUNvbnRlbnRcIj48L25nLWNvbnRhaW5lcj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjdXNlclByb2ZpbGVDb250ZW50PlxuICAgICAgICA8YnV0dG9uIFt0YWJpbmRleF09XCJoYXNNZW51ID8gJzAnIDogJy0xJ1wiIGNsYXNzPVwiZXVpLXVzZXItcHJvZmlsZS1jb250ZW50XCI+XG4gICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiaXNTaG93VXNlckluZm9zXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImV1aS11c2VyLXByb2ZpbGVfX2luZm9zXCJcbiAgICAgICAgICAgICAgICBbY2xhc3MuZXVpLXVzZXItcHJvZmlsZV9faW5mb3MtLW5vLXN1YmluZm9zXT1cInN1YkluZm9zICYmICFoYXNXZWxjb21lTGFiZWxcIj5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwidXNlclN0YXRlPy5pbXBlcnNvbmF0aW5nVXNlcjsgZWxzZSBub3RJbXBlcnNvbmF0ZWRcIj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImV1aS11c2VyLXByb2ZpbGVfX2luZm9zLXdlbGNvbWVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZXVpLXUtbXItMnhzXCIgKm5nSWY9XCJoYXNXZWxjb21lTGFiZWxcIj57eyB3ZWxjb21lTGFiZWwgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICA8c3Ryb25nPnt7IHVzZXJTdGF0ZT8uaW1wZXJzb25hdGluZ1VzZXI/LmZpcnN0TmFtZSB9fSB7eyB1c2VyU3RhdGU/LmltcGVyc29uYXRpbmdVc2VyPy5sYXN0TmFtZX19PC9zdHJvbmc+XG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImV1aS11LW1sLTJ4c1wiPnt7IGltcGVyc29uYXRlTGFiZWwgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZXVpLXVzZXItcHJvZmlsZV9faW5mb3MtbmFtZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAge3sgdXNlclN0YXRlPy5mdWxsTmFtZSB9fVxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cInN1YkluZm9zXCIgY2xhc3M9XCJldWktdXNlci1wcm9maWxlX19pbmZvcy1zdWJpbmZvc1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAge3sgc3ViSW5mb3MgfX1cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgI25vdEltcGVyc29uYXRlZD5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImhhc1dlbGNvbWVMYWJlbFwiIGNsYXNzPVwiZXVpLXVzZXItcHJvZmlsZV9faW5mb3Mtd2VsY29tZVwiPnt7IHdlbGNvbWVMYWJlbCB9fTwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZXVpLXVzZXItcHJvZmlsZV9faW5mb3MtbmFtZVwiPnt7IHVzZXJTdGF0ZT8uZnVsbE5hbWUgfX08L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cInN1YkluZm9zXCIgY2xhc3M9XCJldWktdXNlci1wcm9maWxlX19pbmZvcy1zdWJpbmZvc1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAge3sgc3ViSW5mb3MgfX1cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICA8ZXVpLWF2YXRhciBbZXVpU2l6ZVNdPVwiYmFzZVN0YXRlc0RpcmVjdGl2ZS5ldWlTaXplU1wiIGV1aUluZm9cbiAgICAgICAgICAgICAgICAgICAgICAgIFtoYXNTaGFkb3ddPVwidXNlclN0YXRlPy5pbXBlcnNvbmF0aW5nVXNlclwiPlxuICAgICAgICAgICAgICAgIDxldWktYXZhdGFyLXRleHQgKm5nSWY9XCJpc1Nob3dBdmF0YXJJbml0aWFsczsgZWxzZSBub0F2YXRhckluaXRpYWxzXCI+XG4gICAgICAgICAgICAgICAgICAgIHt7IGF2YXRhckluaXRpYWxzIH19XG4gICAgICAgICAgICAgICAgPC9ldWktYXZhdGFyLXRleHQ+XG4gICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNub0F2YXRhckluaXRpYWxzPlxuICAgICAgICAgICAgICAgICAgICA8ZXVpLWF2YXRhci1pbWFnZSAqbmdJZj1cIiFhdmF0YXJVcmxcIj48L2V1aS1hdmF0YXItaW1hZ2U+XG4gICAgICAgICAgICAgICAgICAgIDxldWktYXZhdGFyLWltYWdlICpuZ0lmPVwiYXZhdGFyVXJsXCIgW2ltYWdlVXJsXT1cImF2YXRhclVybFwiPjwvZXVpLWF2YXRhci1pbWFnZT5cbiAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgICAgIDxldWktYXZhdGFyLWJhZGdlIHBvc2l0aW9uPVwiYm90dG9tXCIgKm5nSWY9XCJoYXNNZW51IHx8IGhhc1RvZ2dsZVwiPlxuICAgICAgICAgICAgICAgICAgICA8ZXVpLWJhZGdlIGV1aVNlY29uZGFyeUxpZ2h0IGV1aVNpemVYUz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxldWktaWNvbi1zdmcgaWNvbj1cImV1aS1jaGV2cm9uLWRvd25cIiBzaXplPVwiMnhzXCI+PC9ldWktaWNvbi1zdmc+XG4gICAgICAgICAgICAgICAgICAgIDwvZXVpLWJhZGdlPlxuICAgICAgICAgICAgICAgIDwvZXVpLWF2YXRhci1iYWRnZT5cbiAgICAgICAgICAgIDwvZXVpLWF2YXRhcj5cbiAgICAgICAgPC9idXR0b24+XG48L25nLXRlbXBsYXRlPlxuIl19
|