@eui/components 17.0.0-rc.1 → 17.0.0-rc.2
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/docs/components/EuiAppComponent.html +1 -1
- package/docs/components/EuiAppHeaderComponent.html +1 -1
- package/docs/components/EuiFieldsetComponent.html +1 -1
- package/docs/components/EuiNotificationsComponent.html +1 -1
- package/docs/components/EuiNotificationsV2Component.html +1 -1
- package/docs/components/EuiOverlayHeaderComponent.html +52 -0
- package/docs/components/EuiOverlayHeaderTitleComponent.html +1 -1
- package/docs/components/EuiSidebarToggleComponent.html +29 -1
- package/docs/components/EuiSlideToggleComponent.html +49 -1
- package/docs/components/EuiTableFilterComponent.html +1 -1
- package/docs/dependencies.html +27 -41
- package/docs/js/menu-wc.js +3 -3
- package/docs/js/menu-wc_es5.js +1 -1
- package/docs/js/search/search_index.js +2 -2
- package/docs/modules/EuiOverlayModule.html +3 -0
- package/esm2022/directives/eui-clearable.directive.mjs +3 -3
- package/esm2022/directives/eui-has-permission.directive.mjs +7 -7
- package/esm2022/directives/eui-loading.directive.mjs +3 -3
- package/esm2022/directives/eui-maxlength.directive.mjs +7 -7
- package/esm2022/directives/eui-resizable/eui-resizable.component.mjs +3 -3
- package/esm2022/directives/eui-resizable/eui-resizable.directive.mjs +3 -3
- package/esm2022/directives/eui-resizable/eui-resizable.module.mjs +4 -4
- package/esm2022/directives/eui-scroll-handler.directive.mjs +10 -10
- package/esm2022/directives/eui-smooth-scroll.directive.mjs +10 -10
- package/esm2022/directives/eui-template.directive.mjs +7 -7
- package/esm2022/directives/eui-tooltip/container/eui-tooltip-container.component.mjs +3 -3
- package/esm2022/directives/eui-tooltip/eui-tooltip.directive.mjs +3 -3
- package/esm2022/directives/eui-tooltip/eui-tooltip.module.mjs +4 -4
- package/esm2022/eui-alert/eui-alert.component.mjs +11 -11
- package/esm2022/eui-all/eui-all.module.mjs +4 -4
- package/esm2022/eui-autocomplete/eui-autocomplete-option/eui-autocomplete-option.component.mjs +3 -3
- package/esm2022/eui-autocomplete/eui-autocomplete-option-group/eui-autocomplete-option-group.component.mjs +3 -3
- package/esm2022/eui-autocomplete/eui-autocomplete.component.mjs +3 -3
- package/esm2022/eui-autocomplete/eui-autocomplete.module.mjs +4 -4
- package/esm2022/eui-avatar/avatar-badge/avatar-badge.component.mjs +3 -3
- package/esm2022/eui-avatar/avatar-icon/avatar-icon.component.mjs +3 -3
- package/esm2022/eui-avatar/avatar-image/avatar-image.component.mjs +3 -3
- package/esm2022/eui-avatar/avatar-text/avatar-text.component.mjs +3 -3
- package/esm2022/eui-avatar/eui-avatar-list.component.mjs +3 -3
- package/esm2022/eui-avatar/eui-avatar.component.mjs +3 -3
- package/esm2022/eui-avatar/eui-avatar.module.mjs +4 -4
- package/esm2022/eui-badge/eui-badge.component.mjs +7 -7
- package/esm2022/eui-block-content/eui-block-content.component.mjs +3 -3
- package/esm2022/eui-block-content/eui-block-content.module.mjs +4 -4
- package/esm2022/eui-block-document/eui-block-document.component.mjs +3 -3
- package/esm2022/eui-block-document/eui-block-document.module.mjs +4 -4
- package/esm2022/eui-button/eui-button.component.mjs +8 -8
- package/esm2022/eui-button-group/eui-button-group.component.mjs +7 -7
- package/esm2022/eui-buttons/eui-buttons.component.mjs +13 -13
- package/esm2022/eui-card/components/eui-card-content/eui-card-content.component.mjs +3 -3
- package/esm2022/eui-card/components/eui-card-footer/eui-card-footer-action-buttons.component.mjs +3 -3
- package/esm2022/eui-card/components/eui-card-footer/eui-card-footer-action-icons.component.mjs +3 -3
- package/esm2022/eui-card/components/eui-card-footer/eui-card-footer-menu-content.component.mjs +3 -3
- package/esm2022/eui-card/components/eui-card-footer/eui-card-footer.component.mjs +3 -3
- package/esm2022/eui-card/components/eui-card-header/eui-card-header-left-content.component.mjs +3 -3
- package/esm2022/eui-card/components/eui-card-header/eui-card-header-right-content.component.mjs +3 -3
- package/esm2022/eui-card/components/eui-card-header/eui-card-header-subtitle.component.mjs +3 -3
- package/esm2022/eui-card/components/eui-card-header/eui-card-header-title.component.mjs +3 -3
- package/esm2022/eui-card/components/eui-card-header/eui-card-header.component.mjs +3 -3
- package/esm2022/eui-card/components/eui-card-header-body/eui-card-header-body.component.mjs +3 -3
- package/esm2022/eui-card/components/eui-card-media/eui-card-media.component.mjs +3 -3
- package/esm2022/eui-card/eui-card.component.mjs +3 -3
- package/esm2022/eui-card/eui-card.module.mjs +4 -4
- package/esm2022/eui-card/services/ui-state.service.mjs +3 -3
- package/esm2022/eui-chip/eui-chip.component.mjs +3 -3
- package/esm2022/eui-chip/eui-chip.module.mjs +4 -4
- package/esm2022/eui-chip-list/eui-chip-list.component.mjs +6 -6
- package/esm2022/eui-chip-list/eui-chip-list.module.mjs +4 -4
- package/esm2022/eui-chip-list/services/eui-chip-list-drag.service.mjs +3 -3
- package/esm2022/eui-dashboard-button/eui-dashboard-button.component.mjs +13 -13
- package/esm2022/eui-dashboard-card/eui-dashboard-card.component.mjs +7 -7
- package/esm2022/eui-date-range-selector/eui-date-range-selector.component.mjs +3 -3
- package/esm2022/eui-date-range-selector/eui-date-range-selector.module.mjs +4 -4
- package/esm2022/eui-datepicker/eui-datepicker.component.mjs +15 -15
- package/esm2022/eui-datepicker/eui-datepicker.module.mjs +4 -4
- package/esm2022/eui-dialog/container/eui-dialog-container.component.mjs +3 -3
- package/esm2022/eui-dialog/eui-dialog.component.mjs +9 -9
- package/esm2022/eui-dialog/eui-dialog.module.mjs +4 -4
- package/esm2022/eui-dialog/services/eui-dialog.service.mjs +7 -5
- package/esm2022/eui-dimmer/dimmer.component.mjs +3 -3
- package/esm2022/eui-dimmer/dimmer.module.mjs +4 -4
- package/esm2022/eui-disable-content/eui-disable-content.component.mjs +7 -7
- package/esm2022/eui-discussion-thread/eui-discussion-thread-item.component.mjs +3 -3
- package/esm2022/eui-discussion-thread/eui-discussion-thread.component.mjs +3 -3
- package/esm2022/eui-discussion-thread/eui-discussion-thread.module.mjs +4 -4
- package/esm2022/eui-dropdown/directives/eui-dropdown-content.directive.mjs +3 -3
- package/esm2022/eui-dropdown/dropdown-item/eui-dropdown-item.component.mjs +3 -3
- package/esm2022/eui-dropdown/eui-dropdown.component.mjs +3 -3
- package/esm2022/eui-dropdown/eui-dropdown.module.mjs +8 -8
- package/esm2022/eui-dropdown/eui-dropdown.service.mjs +3 -3
- package/esm2022/eui-feedback-message/eui-feedback-message.component.mjs +3 -3
- package/esm2022/eui-feedback-message/eui-feedback-message.module.mjs +4 -4
- package/esm2022/eui-fieldset/eui-fieldset.component.mjs +11 -17
- package/esm2022/eui-fieldset/eui-fieldset.module.mjs +4 -4
- package/esm2022/eui-file-upload/eui-file-upload.component.mjs +3 -3
- package/esm2022/eui-file-upload/eui-file-upload.module.mjs +4 -4
- package/esm2022/eui-file-upload/file-preview/file-preview.component.mjs +3 -3
- package/esm2022/eui-file-upload/pipes/filesize.pipe.mjs +3 -3
- package/esm2022/eui-file-upload/progress/eui-file-upload-progress.component.mjs +3 -3
- package/esm2022/eui-file-upload/utils/eui-file-upload.utils.mjs +3 -3
- package/esm2022/eui-growl/eui-growl.component.mjs +3 -3
- package/esm2022/eui-growl/eui-growl.module.mjs +4 -4
- package/esm2022/eui-icon/eui-icon-color.component.mjs +3 -3
- package/esm2022/eui-icon/eui-icon-svg-button/eui-icon-svg-button.component.mjs +3 -3
- package/esm2022/eui-icon/eui-icon-svg.component.mjs +3 -3
- package/esm2022/eui-icon/eui-icon.component.mjs +3 -3
- package/esm2022/eui-icon/eui-icon.module.mjs +4 -4
- package/esm2022/eui-icon-toggle/eui-icon-toggle.component.mjs +3 -3
- package/esm2022/eui-icon-toggle/eui-icon-toggle.module.mjs +4 -4
- package/esm2022/eui-input-checkbox/eui-input-checkbox.component.mjs +3 -3
- package/esm2022/eui-input-checkbox/eui-input-checkbox.module.mjs +4 -4
- package/esm2022/eui-input-group/eui-input-group.component.mjs +3 -3
- package/esm2022/eui-input-group/eui-input-group.module.mjs +4 -4
- package/esm2022/eui-input-number/eui-input-number.component.mjs +3 -3
- package/esm2022/eui-input-number/eui-input-number.module.mjs +4 -4
- package/esm2022/eui-input-number/eui-number-control.directive.mjs +3 -3
- package/esm2022/eui-input-radio/eui-input-radio.component.mjs +3 -3
- package/esm2022/eui-input-radio/eui-input-radio.module.mjs +4 -4
- package/esm2022/eui-input-text/eui-input-text.component.mjs +3 -3
- package/esm2022/eui-input-text/eui-input-text.module.mjs +4 -4
- package/esm2022/eui-label/eui-label.component.mjs +3 -3
- package/esm2022/eui-label/eui-label.module.mjs +4 -4
- package/esm2022/eui-list/eui-list-item/eui-list-item.component.mjs +3 -3
- package/esm2022/eui-list/eui-list.component.mjs +3 -3
- package/esm2022/eui-list/eui-list.module.mjs +4 -4
- package/esm2022/eui-list/services/eui-list.service.mjs +3 -3
- package/esm2022/eui-menu/eui-menu-item.component.mjs +3 -3
- package/esm2022/eui-menu/eui-menu.component.mjs +3 -3
- package/esm2022/eui-menu/eui-menu.module.mjs +4 -4
- package/esm2022/eui-message-box/eui-message-box.component.mjs +6 -6
- package/esm2022/eui-message-box/eui-message-box.module.mjs +4 -4
- package/esm2022/eui-message-box/services/eui-message-box.service.mjs +3 -3
- package/esm2022/eui-overlay/components/eui-overlay-body/eui-overlay-body.component.mjs +4 -4
- package/esm2022/eui-overlay/components/eui-overlay-footer/eui-overlay-footer.component.mjs +4 -4
- package/esm2022/eui-overlay/components/eui-overlay-header/eui-overlay-header-title/eui-overlay-header-title.component.mjs +6 -5
- package/esm2022/eui-overlay/components/eui-overlay-header/eui-overlay-header.component.mjs +15 -8
- package/esm2022/eui-overlay/eui-overlay.component.mjs +14 -13
- package/esm2022/eui-page/components/eui-page-breadcrumb/eui-page-breadcrumb.component.mjs +3 -3
- package/esm2022/eui-page/components/eui-page-column/eui-page-column.component.mjs +21 -21
- package/esm2022/eui-page/components/eui-page-columns/eui-page-columns.component.mjs +3 -3
- package/esm2022/eui-page/components/eui-page-content/eui-page-content.component.mjs +3 -3
- package/esm2022/eui-page/components/eui-page-footer/eui-page-footer.component.mjs +3 -3
- package/esm2022/eui-page/components/eui-page-header/eui-page-header.component.mjs +9 -9
- package/esm2022/eui-page/components/eui-page-hero-header/eui-page-hero-header.component.mjs +3 -3
- package/esm2022/eui-page/components/eui-page-top-content/eui-page-top-content.component.mjs +3 -3
- package/esm2022/eui-page/eui-page.component.mjs +3 -3
- package/esm2022/eui-page/eui-page.module.mjs +4 -4
- package/esm2022/eui-paginator/eui-paginator.component.mjs +3 -3
- package/esm2022/eui-paginator/eui-paginator.module.mjs +4 -4
- package/esm2022/eui-popover/directives/eui-popover-arrow-position.directive.mjs +3 -3
- package/esm2022/eui-popover/eui-popover.component.mjs +3 -3
- package/esm2022/eui-popover/eui-popover.module.mjs +4 -4
- package/esm2022/eui-progress-bar/eui-progress-bar.component.mjs +3 -3
- package/esm2022/eui-progress-bar/eui-progress-bar.module.mjs +4 -4
- package/esm2022/eui-progress-circle/eui-progress-circle.component.mjs +7 -7
- package/esm2022/eui-select/eui-select-control.directive.mjs +3 -3
- package/esm2022/eui-select/eui-select-multiple.directive.mjs +3 -3
- package/esm2022/eui-select/eui-select-mutli-option.directive.mjs +3 -3
- package/esm2022/eui-select/eui-select-option.directive.mjs +3 -3
- package/esm2022/eui-select/eui-select.component.mjs +3 -3
- package/esm2022/eui-select/eui-select.module.mjs +4 -4
- package/esm2022/eui-sidebar-menu/eui-sidebar-menu.component.mjs +3 -3
- package/esm2022/eui-sidebar-menu/eui-sidebar-menu.module.mjs +4 -4
- package/esm2022/eui-slide-toggle/eui-slide-toggle.component.mjs +11 -5
- package/esm2022/eui-slide-toggle/eui-slide-toggle.module.mjs +4 -4
- package/esm2022/eui-table/directives/eui-table-sticky-columns.directive.mjs +3 -3
- package/esm2022/eui-table/eui-table.component.mjs +3 -3
- package/esm2022/eui-table/eui-table.module.mjs +4 -4
- package/esm2022/eui-table/expandable-row/eui-table-expandable-row.component.mjs +3 -3
- package/esm2022/eui-table/filter/eui-table-filter.component.mjs +6 -6
- package/esm2022/eui-table/pipes/eui-table-highlight-filter.pipe.mjs +3 -3
- package/esm2022/eui-table/selectable-header/eui-table-selectable-header.component.mjs +3 -3
- package/esm2022/eui-table/selectable-row/eui-table-selectable-row.component.mjs +3 -3
- package/esm2022/eui-table/services/eui-table-selectable-row.service.mjs +3 -3
- package/esm2022/eui-table/services/eui-table-sort.service.mjs +3 -3
- package/esm2022/eui-table/sortable-col/eui-table-sortable-col.component.mjs +7 -4
- package/esm2022/eui-tabs/eui-tab/eui-tab.component.mjs +3 -3
- package/esm2022/eui-tabs/eui-tab-content/eui-tab-content.component.mjs +3 -3
- package/esm2022/eui-tabs/eui-tab-label/eui-tab-label.component.mjs +6 -6
- package/esm2022/eui-tabs/eui-tabs.component.mjs +6 -6
- package/esm2022/eui-tabs/eui-tabs.module.mjs +4 -4
- package/esm2022/eui-textarea/auto-resize.directive.mjs +3 -3
- package/esm2022/eui-textarea/eui-textarea.component.mjs +3 -3
- package/esm2022/eui-textarea/eui-textarea.module.mjs +4 -4
- package/esm2022/eui-timebar/eui-timebar.component.mjs +7 -7
- package/esm2022/eui-timeline/eui-timeline-item.component.mjs +4 -5
- package/esm2022/eui-timeline/eui-timeline.component.mjs +3 -3
- package/esm2022/eui-timeline/eui-timeline.module.mjs +4 -4
- package/esm2022/eui-timepicker/eui-timepicker.component.mjs +3 -3
- package/esm2022/eui-timepicker/eui-timepicker.module.mjs +4 -4
- package/esm2022/eui-tree/eui-dropdown-tree.directive.mjs +7 -7
- package/esm2022/eui-tree/eui-tree-form-control.directive.mjs +7 -7
- package/esm2022/eui-tree/eui-tree.component.mjs +7 -7
- package/esm2022/eui-tree-list/eui-tree-list-item.component.mjs +12 -12
- package/esm2022/eui-tree-list/eui-tree-list.component.mjs +3 -3
- package/esm2022/eui-tree-list/eui-tree-list.module.mjs +4 -4
- package/esm2022/eui-tree-list/item-content/item-content.component.mjs +3 -3
- package/esm2022/eui-tree-list/toolbar/toolbar.component.mjs +6 -6
- package/esm2022/eui-ux-tree/eui-ux-tree-node.component.mjs +3 -3
- package/esm2022/eui-ux-tree/eui-ux-tree-toolbar/eui-ux-tree-toolbar.component.mjs +6 -6
- package/esm2022/eui-ux-tree/eui-ux-tree.component.mjs +3 -3
- package/esm2022/eui-ux-tree/eui-ux-tree.module.mjs +4 -4
- package/esm2022/eui-wizard/eui-wizard-step.component.mjs +3 -3
- package/esm2022/eui-wizard/eui-wizard.component.mjs +3 -3
- package/esm2022/eui-wizard/eui-wizard.module.mjs +4 -4
- package/esm2022/eui-wizard/services/eui-wizard.service.mjs +3 -3
- package/esm2022/externals/charts/chart/chart.component.mjs +3 -3
- package/esm2022/externals/charts/eui-charts.module.mjs +4 -4
- package/esm2022/externals/eui-editor/counters/eui-editor-counters.component.mjs +3 -3
- package/esm2022/externals/eui-editor/directives/eui-editor-maxlength.directive.mjs +3 -3
- package/esm2022/externals/eui-editor/eui-editor.component.mjs +6 -6
- package/esm2022/externals/eui-editor/eui-editor.module.mjs +4 -4
- package/esm2022/externals/eui-editor/html-view/eui-editor-html-view.component.mjs +3 -3
- package/esm2022/externals/eui-editor/image-url-dialog/image-url-dialog.component.mjs +3 -3
- package/esm2022/externals/eui-editor/json-view/eui-editor-json-view.component.mjs +3 -3
- package/esm2022/externals/quill/quill-editor.component.mjs +3 -3
- package/esm2022/externals/quill/quill.module.mjs +4 -4
- package/esm2022/layout/eui-app/eui-app-breadcrumb/breadcrumb.component.mjs +3 -3
- package/esm2022/layout/eui-app/eui-app-breadcrumb/breadcrumb.module.mjs +4 -4
- package/esm2022/layout/eui-app/eui-app-footer/footer.component.mjs +3 -3
- package/esm2022/layout/eui-app/eui-app-footer/footer.module.mjs +4 -4
- package/esm2022/layout/eui-app/eui-app-header/header.component.mjs +5 -5
- package/esm2022/layout/eui-app/eui-app-header/header.module.mjs +4 -4
- package/esm2022/layout/eui-app/eui-app-sidebar/sidebar-body/sidebar-body.component.mjs +3 -3
- package/esm2022/layout/eui-app/eui-app-sidebar/sidebar-drawer/sidebar-drawer.component.mjs +3 -3
- package/esm2022/layout/eui-app/eui-app-sidebar/sidebar-footer/sidebar-footer.component.mjs +3 -3
- package/esm2022/layout/eui-app/eui-app-sidebar/sidebar-header/sidebar-header.component.mjs +3 -3
- package/esm2022/layout/eui-app/eui-app-sidebar/sidebar-header-user-profile/sidebar-header-user-profile.component.mjs +3 -3
- package/esm2022/layout/eui-app/eui-app-sidebar/sidebar-menu/sidebar-menu.component.mjs +3 -3
- package/esm2022/layout/eui-app/eui-app-sidebar/sidebar.component.mjs +3 -3
- package/esm2022/layout/eui-app/eui-app-sidebar/sidebar.module.mjs +4 -4
- package/esm2022/layout/eui-app/eui-app-toolbar/toolbar.component.mjs +8 -4
- package/esm2022/layout/eui-app/eui-app-toolbar/toolbar.module.mjs +4 -4
- package/esm2022/layout/eui-app/eui-app-top-message/top-message.component.mjs +3 -3
- package/esm2022/layout/eui-app/eui-app-top-message/top-message.module.mjs +4 -4
- package/esm2022/layout/eui-app/eui-app.component.mjs +8 -8
- package/esm2022/layout/eui-app/eui-app.module.mjs +4 -4
- package/esm2022/layout/eui-breadcrumb/breadcrumb.component.mjs +3 -3
- package/esm2022/layout/eui-breadcrumb/breadcrumb.module.mjs +4 -4
- package/esm2022/layout/eui-breadcrumb/breadcrumb.service.mjs +3 -3
- package/esm2022/layout/eui-breadcrumb/collapsed-breadcrumb/collapsed-breadcrumb.component.mjs +6 -6
- package/esm2022/layout/eui-breadcrumb/item/breadcrumb-item.component.mjs +3 -3
- package/esm2022/layout/eui-footer/footer.component.mjs +3 -3
- package/esm2022/layout/eui-footer/footer.module.mjs +4 -4
- package/esm2022/layout/eui-header/header-app/header-app.component.mjs +12 -12
- package/esm2022/layout/eui-header/header-app-name/header-app-name.component.mjs +3 -3
- package/esm2022/layout/eui-header/header-app-name-logo/header-app-name-logo.component.mjs +3 -3
- package/esm2022/layout/eui-header/header-app-subtitle/header-app-subtitle.component.mjs +3 -3
- package/esm2022/layout/eui-header/header-environment/header-environment.component.mjs +3 -3
- package/esm2022/layout/eui-header/header-logo/header-logo.component.mjs +3 -3
- package/esm2022/layout/eui-header/header-user-profile/header-user-profile.component.mjs +3 -3
- package/esm2022/layout/eui-header/header.component.mjs +4 -4
- package/esm2022/layout/eui-header/header.module.mjs +4 -4
- package/esm2022/layout/eui-language-selector/language-selector.component.mjs +3 -3
- package/esm2022/layout/eui-language-selector/language-selector.module.mjs +4 -4
- package/esm2022/layout/eui-language-selector/modal-selector/modal-selector.component.mjs +3 -3
- package/esm2022/layout/eui-layout.module.mjs +4 -4
- package/esm2022/layout/eui-notifications/eui-notification-item.component.mjs +3 -3
- package/esm2022/layout/eui-notifications/eui-notifications.component.mjs +5 -5
- package/esm2022/layout/eui-notifications/eui-notifications.module.mjs +4 -4
- package/esm2022/layout/eui-notifications-v2/eui-notification-item.component.mjs +3 -3
- package/esm2022/layout/eui-notifications-v2/eui-notifications.component.mjs +5 -5
- package/esm2022/layout/eui-notifications-v2/eui-notifications.module.mjs +4 -4
- package/esm2022/layout/eui-search/search.component.mjs +3 -3
- package/esm2022/layout/eui-search/search.module.mjs +4 -4
- package/esm2022/layout/eui-sidebar-toggle/sidebar-toggle.component.mjs +9 -6
- package/esm2022/layout/eui-sidebar-toggle/sidebar-toggle.module.mjs +4 -4
- package/esm2022/layout/eui-toolbar/toolbar-app/toolbar-app.component.mjs +3 -3
- package/esm2022/layout/eui-toolbar/toolbar-center/toolbar-center.component.mjs +3 -3
- package/esm2022/layout/eui-toolbar/toolbar-environment/toolbar-environment.component.mjs +3 -3
- package/esm2022/layout/eui-toolbar/toolbar-item/toolbar-item.component.mjs +3 -3
- package/esm2022/layout/eui-toolbar/toolbar-items/toolbar-items.component.mjs +3 -3
- package/esm2022/layout/eui-toolbar/toolbar-logo/toolbar-logo.component.mjs +3 -3
- package/esm2022/layout/eui-toolbar/toolbar-menu/toolbar-menu.component.mjs +3 -3
- package/esm2022/layout/eui-toolbar/toolbar.component.mjs +4 -4
- package/esm2022/layout/eui-toolbar/toolbar.module.mjs +4 -4
- package/esm2022/layout/eui-user-profile/user-profile-card/user-profile-card.component.mjs +3 -3
- package/esm2022/layout/eui-user-profile/user-profile-menu/user-profile-menu.component.mjs +3 -3
- package/esm2022/layout/eui-user-profile/user-profile-menu-item/user-profile-menu-item.component.mjs +3 -3
- package/esm2022/layout/eui-user-profile/user-profile.component.mjs +3 -3
- package/esm2022/layout/eui-user-profile/user-profile.module.mjs +4 -4
- package/esm2022/pipes/eui-is-empty.pipe.mjs +7 -7
- package/esm2022/pipes/eui-truncate.pipe.mjs +7 -7
- package/esm2022/shared/base/base-states.directive.mjs +3 -3
- package/esm2022/shared/base/base.directive.mjs +3 -3
- package/esm2022/shared/eui-common-header/common-header.component.mjs +7 -7
- package/esm2022/shared/eui-expand-content/eui-expand-content.component.mjs +7 -7
- package/esm2022/shared/input.directive.mjs +3 -3
- package/eui-dialog/services/eui-dialog.service.d.ts.map +1 -1
- package/eui-fieldset/eui-fieldset.component.d.ts.map +1 -1
- package/eui-overlay/components/eui-overlay-header/eui-overlay-header.component.d.ts +4 -1
- package/eui-overlay/components/eui-overlay-header/eui-overlay-header.component.d.ts.map +1 -1
- package/eui-overlay/eui-overlay.component.d.ts +2 -1
- package/eui-overlay/eui-overlay.component.d.ts.map +1 -1
- package/eui-slide-toggle/eui-slide-toggle.component.d.ts +3 -1
- package/eui-slide-toggle/eui-slide-toggle.component.d.ts.map +1 -1
- package/eui-table/filter/eui-table-filter.component.d.ts.map +1 -1
- package/eui-table/sortable-col/eui-table-sortable-col.component.d.ts.map +1 -1
- package/eui-timeline/eui-timeline-item.component.d.ts.map +1 -1
- package/fesm2022/eui-components-directives.mjs +67 -67
- package/fesm2022/eui-components-eui-alert.mjs +11 -11
- package/fesm2022/eui-components-eui-alert.mjs.map +1 -1
- package/fesm2022/eui-components-eui-all.mjs +4 -4
- package/fesm2022/eui-components-eui-autocomplete.mjs +13 -13
- package/fesm2022/eui-components-eui-avatar.mjs +22 -22
- package/fesm2022/eui-components-eui-badge.mjs +7 -7
- package/fesm2022/eui-components-eui-block-content.mjs +7 -7
- package/fesm2022/eui-components-eui-block-document.mjs +7 -7
- package/fesm2022/eui-components-eui-button-group.mjs +7 -7
- package/fesm2022/eui-components-eui-button.mjs +8 -8
- package/fesm2022/eui-components-eui-button.mjs.map +1 -1
- package/fesm2022/eui-components-eui-buttons.mjs +13 -13
- package/fesm2022/eui-components-eui-card.mjs +46 -46
- package/fesm2022/eui-components-eui-chip-list.mjs +13 -13
- package/fesm2022/eui-components-eui-chip.mjs +7 -7
- package/fesm2022/eui-components-eui-dashboard-button.mjs +13 -13
- package/fesm2022/eui-components-eui-dashboard-card.mjs +7 -7
- package/fesm2022/eui-components-eui-date-range-selector.mjs +7 -7
- package/fesm2022/eui-components-eui-datepicker.mjs +19 -19
- package/fesm2022/eui-components-eui-dialog.mjs +22 -20
- package/fesm2022/eui-components-eui-dialog.mjs.map +1 -1
- package/fesm2022/eui-components-eui-dimmer.mjs +7 -7
- package/fesm2022/eui-components-eui-disable-content.mjs +7 -7
- package/fesm2022/eui-components-eui-discussion-thread.mjs +10 -10
- package/fesm2022/eui-components-eui-dropdown.mjs +20 -20
- package/fesm2022/eui-components-eui-feedback-message.mjs +7 -7
- package/fesm2022/eui-components-eui-fieldset.mjs +14 -20
- package/fesm2022/eui-components-eui-fieldset.mjs.map +1 -1
- package/fesm2022/eui-components-eui-file-upload.mjs +19 -19
- package/fesm2022/eui-components-eui-growl.mjs +7 -7
- package/fesm2022/eui-components-eui-icon-toggle.mjs +7 -7
- package/fesm2022/eui-components-eui-icon.mjs +16 -16
- package/fesm2022/eui-components-eui-input-checkbox.mjs +7 -7
- package/fesm2022/eui-components-eui-input-group.mjs +7 -7
- package/fesm2022/eui-components-eui-input-number.mjs +10 -10
- package/fesm2022/eui-components-eui-input-radio.mjs +7 -7
- package/fesm2022/eui-components-eui-input-text.mjs +7 -7
- package/fesm2022/eui-components-eui-label.mjs +7 -7
- package/fesm2022/eui-components-eui-list.mjs +13 -13
- package/fesm2022/eui-components-eui-menu.mjs +10 -10
- package/fesm2022/eui-components-eui-message-box.mjs +13 -13
- package/fesm2022/eui-components-eui-overlay.mjs +62 -54
- package/fesm2022/eui-components-eui-overlay.mjs.map +1 -1
- package/fesm2022/eui-components-eui-page.mjs +55 -55
- package/fesm2022/eui-components-eui-paginator.mjs +7 -7
- package/fesm2022/eui-components-eui-popover.mjs +10 -10
- package/fesm2022/eui-components-eui-progress-bar.mjs +7 -7
- package/fesm2022/eui-components-eui-progress-circle.mjs +7 -7
- package/fesm2022/eui-components-eui-select.mjs +19 -19
- package/fesm2022/eui-components-eui-sidebar-menu.mjs +7 -7
- package/fesm2022/eui-components-eui-slide-toggle.mjs +14 -8
- package/fesm2022/eui-components-eui-slide-toggle.mjs.map +1 -1
- package/fesm2022/eui-components-eui-table.mjs +39 -36
- package/fesm2022/eui-components-eui-table.mjs.map +1 -1
- package/fesm2022/eui-components-eui-tabs.mjs +22 -22
- package/fesm2022/eui-components-eui-textarea.mjs +10 -10
- package/fesm2022/eui-components-eui-timebar.mjs +7 -7
- package/fesm2022/eui-components-eui-timeline.mjs +10 -10
- package/fesm2022/eui-components-eui-timeline.mjs.map +1 -1
- package/fesm2022/eui-components-eui-timepicker.mjs +7 -7
- package/fesm2022/eui-components-eui-tree-list.mjs +28 -28
- package/fesm2022/eui-components-eui-tree.mjs +21 -21
- package/fesm2022/eui-components-eui-ux-tree.mjs +16 -16
- package/fesm2022/eui-components-eui-wizard.mjs +13 -13
- package/fesm2022/eui-components-externals-charts.mjs +7 -7
- package/fesm2022/eui-components-externals-eui-editor.mjs +25 -25
- package/fesm2022/eui-components-externals-quill.mjs +7 -7
- package/fesm2022/eui-components-layout.mjs +239 -232
- package/fesm2022/eui-components-layout.mjs.map +1 -1
- package/fesm2022/eui-components-pipes.mjs +14 -14
- package/fesm2022/eui-components-shared-base.mjs +6 -6
- package/fesm2022/eui-components-shared.mjs +17 -17
- package/layout/eui-app/eui-app-toolbar/toolbar.component.d.ts.map +1 -1
- package/layout/eui-sidebar-toggle/sidebar-toggle.component.d.ts +2 -1
- package/layout/eui-sidebar-toggle/sidebar-toggle.component.d.ts.map +1 -1
- package/package.json +7 -7
@@ -32,10 +32,10 @@ export class EuiNotificationItemComponent {
|
|
32
32
|
this.itemMarkAsRead.emit(this.item);
|
33
33
|
consumeEvent(event);
|
34
34
|
}
|
35
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.
|
36
|
-
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.
|
35
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: EuiNotificationItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
36
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.2", type: EuiNotificationItemComponent, selector: "eui-notification-item", inputs: { markAsReadLabel: "markAsReadLabel", item: "item", dateFormat: "dateFormat", isShowMarkAsRead: "isShowMarkAsRead" }, outputs: { itemClick: "itemClick", itemMarkAsRead: "itemMarkAsRead" }, host: { properties: { "class": "this.string" } }, ngImport: i0, template: "<div\n class=\"eui-notification-item-content\"\n (click)=\"onItemClick()\"\n [ngClass]=\"{ 'eui-u-bg-color-white': item.metadata?.read || !item.metadata }\">\n <div class=\"eui-notification-item-content-top eui-u-font-s\">\n <div *ngIf=\"item.metadata?.date\" class=\"eui-notification-item-content-top__date\">\n <span class=\"eui-notification-item-content-top__date-icon eui-u-mr-s\">\n <!-- TODO v15 replace by eui-icon-svg -->\n <span\n class=\"eui-icon eui-icon-bell eui-u-font-m\"\n [ngClass]=\"{\n 'eui-u-color-info-lighter time__icon--rotated': !item.metadata?.read,\n 'eui-u-color-grey-20': item.metadata?.read\n }\"></span>\n <span\n *ngIf=\"item.metadata?.new\"\n class=\"eui-notification-item-content-top__date-dot eui-u-color-danger-light eui-u-font-s eui-icon eui-icon-circle\"></span>\n </span>\n <span class=\"eui-u-color-grey-dark\">{{ item.metadata?.date | date: dateFormat }}</span>\n </div>\n <div *ngIf=\"item.metadata?.important\" class=\"eui-u-font-bold eui-u-color-grey-dark\">\n <eui-icon-svg icon=\"eui-exclamation\" fillColor=\"danger\" class=\"eui-u-ml-xs\"></eui-icon-svg>\n </div>\n </div>\n <span class=\"eui-notification-item-content-middle eui-u-cursor-pointer\">\n <ng-template [ngIf]=\"item.metadata?.url\">\n <a href=\"{{ item.metadata.url }}\">\n <div\n class=\"eui-notification-item-content-middle__label\"\n [ngClass]=\"{ 'eui-u-font-bold': !item.metadata || (item.metadata && !item.metadata.read) }\">\n {{ item.label | translate | euiTruncate: 200 }}\n </div>\n <div\n *ngIf=\"item.subLabel\"\n class=\"eui-notification-item-content-middle__sub-label\"\n [innerHTML]=\"item.subLabel | translate | euiTruncate: 200\"></div>\n </a>\n </ng-template>\n\n <ng-template [ngIf]=\"item.metadata?.urlExternal\">\n <a\n href=\"{{ item.metadata.urlExternal }}\"\n [target]=\"!item.metadata.urlExternalTarget ? '_black' : item.metadata.urlExternalTarget\">\n <div\n class=\"eui-notification-item-content-middle__label\"\n [ngClass]=\"{ 'eui-u-font-bold': !item.metadata || (item.metadata && !item.metadata.read) }\">\n {{ item.label | translate | euiTruncate: 200 }}\n </div>\n <div\n *ngIf=\"item.subLabel\"\n class=\"eui-notification-item-content-middle__sub-label\"\n [innerHTML]=\"item.subLabel | translate | euiTruncate: 200\"></div>\n </a>\n </ng-template>\n\n <ng-template [ngIf]=\"!item.metadata?.url && !item.metadata?.urlExternal\">\n <div\n class=\"eui-notification-item-content-middle__label\"\n [ngClass]=\"{ 'eui-u-font-bold': !item.metadata || (item.metadata && !item.metadata.read) }\">\n {{ item.label | translate | euiTruncate: 200 }}\n </div>\n <div\n *ngIf=\"item.subLabel\"\n class=\"eui-notification-item-content-middle__sub-label\"\n [innerHTML]=\"item.subLabel | translate | euiTruncate: 200\"></div>\n </ng-template>\n </span>\n <div class=\"eui-notification-item-content-bottom\">\n <a *ngIf=\"isShowMarkAsRead && item.metadata && !item.metadata.read\" href=\"javascript:void(0)\" (click)=\"onItemMarkAsRead($event)\">\n {{ markAsReadLabel ? markAsReadLabel : ('eui.NOTIFICATIONMARKASREAD' | translate) }}\n </a>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.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: "pipe", type: i1.DatePipe, name: "date" }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }, { kind: "pipe", type: i4.EuiTruncatePipe, name: "euiTruncate" }] }); }
|
37
37
|
}
|
38
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.
|
38
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: EuiNotificationItemComponent, decorators: [{
|
39
39
|
type: Component,
|
40
40
|
args: [{ selector: 'eui-notification-item', template: "<div\n class=\"eui-notification-item-content\"\n (click)=\"onItemClick()\"\n [ngClass]=\"{ 'eui-u-bg-color-white': item.metadata?.read || !item.metadata }\">\n <div class=\"eui-notification-item-content-top eui-u-font-s\">\n <div *ngIf=\"item.metadata?.date\" class=\"eui-notification-item-content-top__date\">\n <span class=\"eui-notification-item-content-top__date-icon eui-u-mr-s\">\n <!-- TODO v15 replace by eui-icon-svg -->\n <span\n class=\"eui-icon eui-icon-bell eui-u-font-m\"\n [ngClass]=\"{\n 'eui-u-color-info-lighter time__icon--rotated': !item.metadata?.read,\n 'eui-u-color-grey-20': item.metadata?.read\n }\"></span>\n <span\n *ngIf=\"item.metadata?.new\"\n class=\"eui-notification-item-content-top__date-dot eui-u-color-danger-light eui-u-font-s eui-icon eui-icon-circle\"></span>\n </span>\n <span class=\"eui-u-color-grey-dark\">{{ item.metadata?.date | date: dateFormat }}</span>\n </div>\n <div *ngIf=\"item.metadata?.important\" class=\"eui-u-font-bold eui-u-color-grey-dark\">\n <eui-icon-svg icon=\"eui-exclamation\" fillColor=\"danger\" class=\"eui-u-ml-xs\"></eui-icon-svg>\n </div>\n </div>\n <span class=\"eui-notification-item-content-middle eui-u-cursor-pointer\">\n <ng-template [ngIf]=\"item.metadata?.url\">\n <a href=\"{{ item.metadata.url }}\">\n <div\n class=\"eui-notification-item-content-middle__label\"\n [ngClass]=\"{ 'eui-u-font-bold': !item.metadata || (item.metadata && !item.metadata.read) }\">\n {{ item.label | translate | euiTruncate: 200 }}\n </div>\n <div\n *ngIf=\"item.subLabel\"\n class=\"eui-notification-item-content-middle__sub-label\"\n [innerHTML]=\"item.subLabel | translate | euiTruncate: 200\"></div>\n </a>\n </ng-template>\n\n <ng-template [ngIf]=\"item.metadata?.urlExternal\">\n <a\n href=\"{{ item.metadata.urlExternal }}\"\n [target]=\"!item.metadata.urlExternalTarget ? '_black' : item.metadata.urlExternalTarget\">\n <div\n class=\"eui-notification-item-content-middle__label\"\n [ngClass]=\"{ 'eui-u-font-bold': !item.metadata || (item.metadata && !item.metadata.read) }\">\n {{ item.label | translate | euiTruncate: 200 }}\n </div>\n <div\n *ngIf=\"item.subLabel\"\n class=\"eui-notification-item-content-middle__sub-label\"\n [innerHTML]=\"item.subLabel | translate | euiTruncate: 200\"></div>\n </a>\n </ng-template>\n\n <ng-template [ngIf]=\"!item.metadata?.url && !item.metadata?.urlExternal\">\n <div\n class=\"eui-notification-item-content-middle__label\"\n [ngClass]=\"{ 'eui-u-font-bold': !item.metadata || (item.metadata && !item.metadata.read) }\">\n {{ item.label | translate | euiTruncate: 200 }}\n </div>\n <div\n *ngIf=\"item.subLabel\"\n class=\"eui-notification-item-content-middle__sub-label\"\n [innerHTML]=\"item.subLabel | translate | euiTruncate: 200\"></div>\n </ng-template>\n </span>\n <div class=\"eui-notification-item-content-bottom\">\n <a *ngIf=\"isShowMarkAsRead && item.metadata && !item.metadata.read\" href=\"javascript:void(0)\" (click)=\"onItemMarkAsRead($event)\">\n {{ markAsReadLabel ? markAsReadLabel : ('eui.NOTIFICATIONMARKASREAD' | translate) }}\n </a>\n </div>\n</div>\n" }]
|
41
41
|
}], propDecorators: { string: [{
|
@@ -181,12 +181,12 @@ export class EuiNotificationsComponent {
|
|
181
181
|
});
|
182
182
|
return unreadNotifications.length;
|
183
183
|
}
|
184
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.
|
185
|
-
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.1", 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 <strong\n ><a (click)=\"onViewAllClick($event)\">{{\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()\">{{\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{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__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: ["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 }); }
|
184
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: EuiNotificationsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
185
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.2", 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: ["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
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.
|
187
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", 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 <
|
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{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"] }]
|
190
190
|
}], propDecorators: { refreshClick: [{
|
191
191
|
type: Output
|
192
192
|
}], notificationsClick: [{
|
@@ -254,4 +254,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.1", ngImpor
|
|
254
254
|
type: HostListener,
|
255
255
|
args: ['body:click']
|
256
256
|
}] } });
|
257
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXVpLW5vdGlmaWNhdGlvbnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbGF5b3V0L2V1aS1ub3RpZmljYXRpb25zL2V1aS1ub3RpZmljYXRpb25zLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL2xheW91dC9ldWktbm90aWZpY2F0aW9ucy9ldWktbm90aWZpY2F0aW9ucy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osV0FBVyxFQUNYLFlBQVksRUFDWixLQUFLLEVBR0wsTUFBTSxFQUVOLGlCQUFpQixHQUNwQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxxQkFBcUIsRUFBZ0IsTUFBTSx1QkFBdUIsQ0FBQzs7Ozs7Ozs7O0FBUzVFLE1BQU0sT0FBTyx5QkFBeUI7SUFQdEM7UUFRSSxtSEFBbUg7UUFDbkgsOERBQThEO1FBQ3BELGlCQUFZLEdBQXNCLElBQUksWUFBWSxFQUFPLENBQUM7UUFDcEUsbUhBQW1IO1FBQ25ILDhEQUE4RDtRQUNwRCx1QkFBa0IsR0FBc0IsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUMxRSxtSEFBbUg7UUFDbkgsOERBQThEO1FBQ3BELGlCQUFZLEdBQXNCLElBQUksWUFBWSxFQUFPLENBQUM7UUFDcEUsbUhBQW1IO1FBQ25ILDhEQUE4RDtRQUNwRCxrQkFBYSxHQUFzQixJQUFJLFlBQVksRUFBTyxDQUFDO1FBQ3JFLG1IQUFtSDtRQUNuSCw4REFBOEQ7UUFDcEQsdUJBQWtCLEdBQXNCLElBQUksWUFBWSxFQUFPLENBQUM7UUFDMUUsbUhBQW1IO1FBQ25ILDhEQUE4RDtRQUNwRCw2QkFBd0IsR0FBc0IsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUNoRixtSEFBbUg7UUFDbkgsOERBQThEO1FB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Q0csVUFBVTtzQkFBbEIsS0FBSztnQkFFRix1QkFBdUI7c0JBRDFCLEtBQUs7Z0JBU0YsZ0JBQWdCO3NCQURuQixLQUFLO2dCQVNGLG1CQUFtQjtzQkFEdEIsS0FBSztnQkFTRiwwQkFBMEI7c0JBRDdCLEtBQUs7Z0JBU0YsaUJBQWlCO3NCQURwQixLQUFLO2dCQVNGLHlCQUF5QjtzQkFENUIsS0FBSztnQkFTRixvQkFBb0I7c0JBRHZCLEtBQUs7Z0JBU0YsbUJBQW1CO3NCQUR0QixLQUFLO2dCQVVOLE1BQU07c0JBREwsWUFBWTt1QkFBQyxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIEhvc3RMaXN0ZW5lcixcbiAgICBJbnB1dCxcbiAgICBPbkNoYW5nZXMsXG4gICAgT25Jbml0LFxuICAgIE91dHB1dCxcbiAgICBTaW1wbGVDaGFuZ2VzLFxuICAgIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGNvbnN1bWVFdmVudCB9IGZyb20gJ0BldWkvY29yZSc7XG5pbXBvcnQgeyBjb2VyY2VCb29sZWFuUHJvcGVydHksIEJvb2xlYW5JbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbic7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZXVpLW5vdGlmaWNhdGlvbnMnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9ldWktbm90aWZpY2F0aW9ucy5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vc3R5bGVzL19pbmRleC5zY3NzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5EZWZhdWx0LFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG59KVxuZXhwb3J0IGNsYXNzIEV1aU5vdGlmaWNhdGlvbnNDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcyB7XG4gICAgLy8gVE9ETzogZmluZCB0aGUgY29ycmVjdCB0eXBlIG9yIHR1cm4gaW50byBhIGdlbmVyaWMsIGh0dHBzOi8vd3d3LnR5cGVzY3JpcHRsYW5nLm9yZy9kb2NzL2hhbmRib29rLzIvZ2VuZXJpY3MuaHRtbFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgQE91dHB1dCgpIHJlZnJlc2hDbGljazogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcbiAgICAvLyBUT0RPOiBmaW5kIHRoZSBjb3JyZWN0IHR5cGUgb3IgdHVybiBpbnRvIGEgZ2VuZXJpYywgaHR0cHM6Ly93d3cudHlwZXNjcmlwdGxhbmcub3JnL2RvY3MvaGFuZGJvb2svMi9nZW5lcmljcy5odG1sXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICBAT3V0cHV0KCkgbm90aWZpY2F0aW9uc0NsaWNrOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICAgIC8vIFRPRE86IGZpbmQgdGhlIGNvcnJlY3QgdHlwZSBvciB0dXJuIGludG8gYSBnZW5lcmljLCBodHRwczovL3d3dy50eXBlc2NyaXB0bGFuZy5vcmcvZG9jcy9oYW5kYm9vay8yL2dlbmVyaWNzLmh0bWxcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgIEBPdXRwdXQoKSB2aWV3QWxsQ2xpY2s6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG4gICAgLy8gVE9ETzogZmluZCB0aGUgY29ycmVjdCB0eXBlIG9yIHR1cm4gaW50byBhIGdlbmVyaWMsIGh0dHBzOi8vd3d3LnR5cGVzY3JpcHRsYW5nLm9yZy9kb2NzL2hhbmRib29rLzIvZ2VuZXJpY3MuaHRtbFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgQE91dHB1dCgpIHNldHRpbmdzQ2xpY2s6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG4gICAgLy8gVE9ETzogZmluZCB0aGUgY29ycmVjdCB0eXBlIG9yIHR1cm4gaW50byBhIGdlbmVyaWMsIGh0dHBzOi8vd3d3LnR5cGVzY3JpcHRsYW5nLm9yZy9kb2NzL2hhbmRib29rLzIvZ2VuZXJpY3MuaHRtbFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgQE91dHB1dCgpIG1hcmtBbGxBc1JlYWRDbGljazogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcbiAgICAvLyBUT0RPOiBmaW5kIHRoZSBjb3JyZWN0IHR5cGUgb3IgdHVybiBpbnRvIGEgZ2VuZXJpYywgaHR0cHM6Ly93d3cudHlwZXNjcmlwdGxhbmcub3JnL2RvY3MvaGFuZGJvb2svMi9nZW5lcmljcy5odG1sXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICBAT3V0cHV0KCkgbm9Ob3RpZmljYXRpb25Gb3VuZENsaWNrOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICAgIC8vIFRPRE86IGZpbmQgdGhlIGNvcnJlY3QgdHlwZSBvciB0dXJuIGludG8gYSBnZW5lcmljLCBodHRwczovL3d3dy50eXBlc2NyaXB0bGFuZy5vcmcvZG9jcy9oYW5kYm9vay8yL2dlbmVyaWNzLmh0bWxcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgIEBPdXRwdXQoKSBpdGVtQ2xpY2s6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG4gICAgLy8gVE9ETzogZmluZCB0aGUgY29ycmVjdCB0eXBlIG9yIHR1cm4gaW50byBhIGdlbmVyaWMsIGh0dHBzOi8vd3d3LnR5cGVzY3JpcHRsYW5nLm9yZy9kb2NzL2hhbmRib29rLzIvZ2VuZXJpY3MuaHRtbFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgQE91dHB1dCgpIGl0ZW1NYXJrQXNSZWFkQ2xpY2s6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgICBpc092ZXJsYXlBY3RpdmUgPSBmYWxzZTtcbiAgICBjdXJyZW50RGF5Tm90aWZpY2F0aW9ucyA9IFtdO1xuICAgIG9sZGVzdE5vdGlmaWNhdGlvbnMgPSBbXTtcbiAgICB1bnJlYWROb3RpZmljYXRpb25zID0gW107XG4gICAgdG9kYXk6IERhdGUgPSBuZXcgRGF0ZSgpO1xuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcycpIHN0cmluZyA9ICdldWktbm90aWZpY2F0aW9ucyc7XG5cbiAgICBASW5wdXQoKSBjb3VudDogbnVtYmVyID0gbnVsbDtcbiAgICBASW5wdXQoKSBpdGVtcyA9IFtdO1xuICAgIEBJbnB1dCgpIHVucmVhZExhYmVsOiBzdHJpbmcgPSBudWxsO1xuICAgIEBJbnB1dCgpIHRvdGFsTGFiZWw6IHN0cmluZyA9IG51bGw7XG4gICAgQElucHV0KCkgbWFya0FzUmVhZExhYmVsOiBzdHJpbmcgPSBudWxsO1xuICAgIEBJbnB1dCgpIG1hcmtBc1VuUmVhZExhYmVsOiBzdHJpbmcgPSBudWxsO1xuICAgIEBJbnB1dCgpIG1hcmtBbGxBc1JlYWRMYWJlbDogc3RyaW5nID0gbnVsbDtcbiAgICBASW5wdXQoKSBzZXR0aW5nc0xhYmVsOiBzdHJpbmcgPSBudWxsO1xuICAgIEBJbnB1dCgpIHJlZnJlc2hMYWJlbDogc3RyaW5nID0gbnVsbDtcbiAgICBASW5wdXQoKSB2aWV3QWxsTm90aWZpY2F0aW9uc0xhYmVsOiBzdHJpbmcgPSBudWxsO1xuICAgIEBJbnB1dCgpIGhlYWRlclRpdGxlTGFiZWw6IHN0cmluZyA9IG51bGw7XG4gICAgQElucHV0KCkgbm9Ob3RpZmljYXRpb25Gb3VuZExhYmVsOiBzdHJpbmcgPSBudWxsO1xuICAgIEBJbnB1dCgpIG5iVW5yZWFkQ291bnQ6IG51bWJlciA9IG51bGw7XG4gICAgQElucHV0KCkgZGF0ZUZvcm1hdCA9ICdkZC9NTS9ZWVlZJztcbiAgICBASW5wdXQoKVxuICAgIGdldCBub05vdGlmaWNhdGlvbkZvdW5kTGluaygpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX25vTm90aWZpY2F0aW9uRm91bmRMaW5rO1xuICAgIH1cbiAgICBzZXQgbm9Ob3RpZmljYXRpb25Gb3VuZExpbmsodmFsdWU6IEJvb2xlYW5JbnB1dCkge1xuICAgICAgICB0aGlzLl9ub05vdGlmaWNhdGlvbkZvdW5kTGluayA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgfVxuICAgIHByaXZhdGUgX25vTm90aWZpY2F0aW9uRm91bmRMaW5rID0gZmFsc2U7XG4gICAgQElucHV0KClcbiAgICBnZXQgaXNTaG93TWFya0FzUmVhZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2lzU2hvd01hcmtBc1JlYWQ7XG4gICAgfVxuICAgIHNldCBpc1Nob3dNYXJrQXNSZWFkKHZhbHVlOiBCb29sZWFuSW5wdXQpIHtcbiAgICAgICAgdGhpcy5faXNTaG93TWFya0FzUmVhZCA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgfVxuICAgIHByaXZhdGUgX2lzU2hvd01hcmtBc1JlYWQgPSB0cnVlO1xuICAgIEBJbnB1dCgpXG4gICAgZ2V0IGlzU2hvd1ZpZXdBbGxBY3Rpb24oKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9pc1Nob3dWaWV3QWxsQWN0aW9uO1xuICAgIH1cbiAgICBzZXQgaXNTaG93Vmlld0FsbEFjdGlvbih2YWx1ZTogQm9vbGVhbklucHV0KSB7XG4gICAgICAgIHRoaXMuX2lzU2hvd1ZpZXdBbGxBY3Rpb24gPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIH1cbiAgICBwcml2YXRlIF9pc1Nob3dWaWV3QWxsQWN0aW9uID0gdHJ1ZTtcbiAgICBASW5wdXQoKVxuICAgIGdldCBpc0hpZGVQYW5lbE9uVmlld0FsbEFjdGlvbigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2lzSGlkZVBhbmVsT25WaWV3QWxsQWN0aW9uO1xuICAgIH1cbiAgICBzZXQgaXNIaWRlUGFuZWxPblZpZXdBbGxBY3Rpb24odmFsdWU6IEJvb2xlYW5JbnB1dCkge1xuICAgICAgICB0aGlzLl9pc0hpZGVQYW5lbE9uVmlld0FsbEFjdGlvbiA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgfVxuICAgIHByaXZhdGUgX2lzSGlkZVBhbmVsT25WaWV3QWxsQWN0aW9uID0gdHJ1ZTtcbiAgICBASW5wdXQoKVxuICAgIGdldCBjdXN0b21VbnJlYWRDb3VudCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2N1c3RvbVVucmVhZENvdW50O1xuICAgIH1cbiAgICBzZXQgY3VzdG9tVW5yZWFkQ291bnQodmFsdWU6IEJvb2xlYW5JbnB1dCkge1xuICAgICAgICB0aGlzLl9jdXN0b21VbnJlYWRDb3VudCA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgfVxuICAgIHByaXZhdGUgX2N1c3RvbVVucmVhZENvdW50ID0gZmFsc2U7XG4gICAgQElucHV0KClcbiAgICBnZXQgaXNTaG93TWFya0FsbEFzUmVhZEJ1dHRvbigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2lzU2hvd01hcmtBbGxBc1JlYWRCdXR0b247XG4gICAgfVxuICAgIHNldCBpc1Nob3dNYXJrQWxsQXNSZWFkQnV0dG9uKHZhbHVlOiBCb29sZWFuSW5wdXQpIHtcbiAgICAgICAgdGhpcy5faXNTaG93TWFya0FsbEFzUmVhZEJ1dHRvbiA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgfVxuICAgIHByaXZhdGUgX2lzU2hvd01hcmtBbGxBc1JlYWRCdXR0b24gPSB0cnVlO1xuICAgIEBJbnB1dCgpXG4gICAgZ2V0IGlzU2hvd1NldHRpbmdzQnV0dG9uKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5faXNTaG93U2V0dGluZ3NCdXR0b247XG4gICAgfVxuICAgIHNldCBpc1Nob3dTZXR0aW5nc0J1dHRvbih2YWx1ZTogQm9vbGVhbklucHV0KSB7XG4gICAgICAgIHRoaXMuX2lzU2hvd1NldHRpbmdzQnV0dG9uID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG4gICAgcHJpdmF0ZSBfaXNTaG93U2V0dGluZ3NCdXR0b24gPSB0cnVlO1xuICAgIEBJbnB1dCgpXG4gICAgZ2V0IGlzU2hvd1JlZnJlc2hCdXR0b24oKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9pc1Nob3dSZWZyZXNoQnV0dG9uO1xuICAgIH1cbiAgICBzZXQgaXNTaG93UmVmcmVzaEJ1dHRvbih2YWx1ZTogQm9vbGVhbklucHV0KSB7XG4gICAgICAgIHRoaXMuX2lzU2hvd1JlZnJlc2hCdXR0b24gPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIH1cbiAgICBwcml2YXRlIF9pc1Nob3dSZWZyZXNoQnV0dG9uID0gdHJ1ZTtcblxuICAgIEBIb3N0TGlzdGVuZXIoJ2JvZHk6Y2xpY2snKVxuICAgIG9uSGlkZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5pc092ZXJsYXlBY3RpdmUgPSBmYWxzZTtcbiAgICB9XG5cbiAgICAvLyBUT0RPOiBmaW5kIHRoZSBjb3JyZWN0IHR5cGUgb3IgdHVybiBpbnRvIGEgZ2VuZXJpYywgaHR0cHM6Ly93d3cudHlwZXNjcmlwdGxhbmcub3JnL2RvY3MvaGFuZGJvb2svMi9nZW5lcmljcy5odG1sXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICBvbkNsaWNrZWQoZXZlbnQ6IGFueSk6IHZvaWQge1xuICAgICAgICB0aGlzLm5vdGlmaWNhdGlvbnNDbGljay5lbWl0KCk7XG4gICAgICAgIGNvbnN1bWVFdmVudChldmVudCk7XG4gICAgICAgIHRoaXMuaXNPdmVybGF5QWN0aXZlID0gIXRoaXMuaXNPdmVybGF5QWN0aXZlO1xuICAgIH1cblxuICAgIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICAgICAgaWYgKGNoYW5nZXMuY3VzdG9tVW5yZWFkQ291bnQpIHtcbiAgICAgICAgICAgIGNvbnN0IGN1c3RvbVVucmVhZENvdW50ID0gY2hhbmdlcy5jdXN0b21VbnJlYWRDb3VudC5jdXJyZW50VmFsdWU7XG4gICAgICAgICAgICBpZiAoIWN1c3RvbVVucmVhZENvdW50KSB7XG4gICAgICAgICAgICAgICAgdGhpcy5uYlVucmVhZENvdW50ID0gdGhpcy5fZ2V0VW5yZWFkQ291bnQoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMuY3VzdG9tVW5yZWFkQ291bnQpIHtcbiAgICAgICAgICAgIHRoaXMubmJVbnJlYWRDb3VudCA9IHRoaXMuX2dldFVucmVhZENvdW50KCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvblJlZnJlc2goZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgICAgIHRoaXMucmVmcmVzaENsaWNrLmVtaXQoKTtcbiAgICAgICAgY29uc3VtZUV2ZW50KGV2ZW50KTtcbiAgICB9XG5cbiAgICAvLyBUT0RPOiBmaW5kIHRoZSBjb3JyZWN0IHR5cGUgb3IgdHVybiBpbnRvIGEgZ2VuZXJpYywgaHR0cHM6Ly93d3cudHlwZXNjcmlwdGxhbmcub3JnL2RvY3MvaGFuZGJvb2svMi9nZW5lcmljcy5odG1sXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICBvbkl0ZW1DbGljayhsaW5rOiBhbnkpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5pdGVtQ2xpY2suZW1pdChsaW5rKTtcbiAgICAgICAgY29uc3VtZUV2ZW50KGV2ZW50KTtcbiAgICB9XG5cbiAgICBvblZpZXdBbGxDbGljayhldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy52aWV3QWxsQ2xpY2suZW1pdCgpO1xuICAgICAgICBpZiAoIXRoaXMuaXNIaWRlUGFuZWxPblZpZXdBbGxBY3Rpb24pIHtcbiAgICAgICAgICAgIGNvbnN1bWVFdmVudChldmVudCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvbk5vTm90aWZpY2F0aW9uRm91bmRDbGljaygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5ub05vdGlmaWNhdGlvbkZvdW5kQ2xpY2suZW1pdCgpO1xuICAgIH1cblxuICAgIC8vIFRPRE86IGZpbmQgdGhlIGNvcnJlY3QgdHlwZSBvciB0dXJuIGludG8gYSBnZW5lcmljLCBodHRwczovL3d3dy50eXBlc2NyaXB0bGFuZy5vcmcvZG9jcy9oYW5kYm9vay8yL2dlbmVyaWNzLmh0bWxcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgIG9uSXRlbU1hcmtBc1JlYWQobGluazogYW55KTogdm9pZCB7XG4gICAgICAgIHRoaXMuaXRlbU1hcmtBc1JlYWRDbGljay5lbWl0KGxpbmspO1xuICAgIH1cblxuICAgIG9uTWFya0FsbEFzUmVhZChlKTogdm9pZCB7XG4gICAgICAgIHRoaXMubWFya0FsbEFzUmVhZENsaWNrLmVtaXQoZSk7XG4gICAgICAgIGNvbnN1bWVFdmVudChlKTtcbiAgICB9XG5cbiAgICBvblNldHRpbmdzKGUpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zZXR0aW5nc0NsaWNrLmVtaXQoZSk7XG4gICAgICAgIGNvbnN1bWVFdmVudChlKTtcbiAgICB9XG5cbiAgICAvLyBUT0RPOiBmaW5kIHRoZSBjb3JyZWN0IHR5cGUgb3IgdHVybiBpbnRvIGEgZ2VuZXJpYywgaHR0cHM6Ly93d3cudHlwZXNjcmlwdGxhbmcub3JnL2RvY3MvaGFuZGJvb2svMi9nZW5lcmljcy5odG1sXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICB0cmFja0J5Rm4oaW5kZXg6IG51bWJlciwgaXRlbTogYW55KTogdm9pZCB7XG4gICAgICAgIHJldHVybiBpdGVtLmlkO1xuICAgIH1cblxuICAgIHByaXZhdGUgX2dldFVucmVhZENvdW50KCk6IG51bWJlciB7XG4gICAgICAgIGNvbnN0IHVucmVhZE5vdGlmaWNhdGlvbnMgPSB0aGlzLml0ZW1zLmZpbHRlcigobGluaykgPT4ge1xuICAgICAgICAgICAgaWYgKGxpbmsubWV0YWRhdGEpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gbGluay5tZXRhZGF0YS5yZWFkID09PSBmYWxzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiB1bnJlYWROb3RpZmljYXRpb25zLmxlbmd0aDtcbiAgICB9XG59XG4iLCI8ZXVpLWljb24tc3ZnLWJ1dHRvblxuICAgIGNsYXNzPVwiZXVpLW5vdGlmaWNhdGlvbnNfX3RyaWdnZXJcIlxuICAgIGljb25TdmdOYW1lPVwiZXVpLW5vdGlmaWNhdGlvbnNcIlxuICAgIGljb25TdmdTaXplPVwibVwiXG4gICAgaWNvblN2Z0ZpbGxDb2xvcj1cIndoaXRlXCJcbiAgICAoY2xpY2spPVwib25DbGlja2VkKCRldmVudClcIlxuICAgIChrZXlkb3duLmVudGVyKT1cIm9uQ2xpY2tlZCgkZXZlbnQpXCJcbiAgICAoa2V5ZG93bi5lc2MpPVwib25IaWRlKClcIlxuICAgIGhhc0ZvY3VzQm9yZGVyPlxuICAgIDxldWktYmFkZ2UgKm5nSWY9XCJjb3VudFwiIGV1aVNpemVTIGV1aURhbmdlcj57eyBjb3VudCB9fTwvZXVpLWJhZGdlPlxuPC9ldWktaWNvbi1zdmctYnV0dG9uPlxuXG48ZXVpLW92ZXJsYXkgW2lzQWN0aXZlXT1cImlzT3ZlcmxheUFjdGl2ZVwiIGNsYXNzPVwiZXVpLW92ZXJsYXktb2Zmc2V0LS13aWR0aC0zMFwiPlxuICAgIDxldWktb3ZlcmxheS1oZWFkZXI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJldWktbm90aWZpY2F0aW9uc19faGVhZGVyLXRpdGxlXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZXVpLW5vdGlmaWNhdGlvbnNfX2hlYWRlci10aXRsZS1sYWJlbFwiPlxuICAgICAgICAgICAgICAgIHt7IGhlYWRlclRpdGxlTGFiZWwgPyBoZWFkZXJUaXRsZUxhYmVsIDogKCdldWkuTVlOT1RJRklDQVRJT05TJyB8IHRyYW5zbGF0ZSkgfX1cbiAgICAgICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIml0ZW1zXCJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJldWktdS1jdXJzb3ItaGVscCBldWktdS1tbC1zXCJcbiAgICAgICAgICAgICAgICAgICAgYXR0ci5hcmlhLWxhYmVsPVwie3sgdW5yZWFkTGFiZWwgPyB1bnJlYWRMYWJlbCA6ICgnZXVpLk5PVElGSUNBVElPTlNVTlJFQUQnIHwgdHJhbnNsYXRlKSB9fVwiXG4gICAgICAgICAgICAgICAgICAgIHRpdGxlPVwie3sgdW5yZWFkTGFiZWwgPyB1bnJlYWRMYWJlbCA6ICgnZXVpLk5PVElGSUNBVElPTlNVTlJFQUQnIHwgdHJhbnNsYXRlKSB9fVwiPlxuICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8ZXVpLWJhZGdlIGV1aVNpemVMICpuZ0lmPVwiY291bnRcIj57eyBjb3VudCB9fTwvZXVpLWJhZGdlPlxuICAgICAgICAgICAgICAgIDxldWktYmFkZ2UgZXVpU2l6ZUwgKm5nSWY9XCIhY291bnRcIj57eyBpdGVtcy5sZW5ndGggfX08L2V1aS1iYWRnZT5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8ZGl2ICpuZ0lmPVwiaXRlbXNcIiBjbGFzcz1cImV1aS1ub3RpZmljYXRpb25zX19oZWFkZXItYWN0aW9uc1wiPlxuICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgIGV1aUJ1dHRvblxuICAgICAgICAgICAgICAgIGV1aVByaW1hcnlcbiAgICAgICAgICAgICAgICBldWlSb3VuZGVkXG4gICAgICAgICAgICAgICAgZXVpSWNvbkJ1dHRvblxuICAgICAgICAgICAgICAgIGV1aUJhc2ljQnV0dG9uXG4gICAgICAgICAgICAgICAgZXVpU2l6ZVNcbiAgICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICAqbmdJZj1cImlzU2hvd01hcmtBbGxBc1JlYWRCdXR0b25cIlxuICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwibWFya0FsbEFzUmVhZExhYmVsID8gbWFya0FsbEFzUmVhZExhYmVsIDogKCdldWkuTk9USUZJQ0FUSU9OTUFSS0FMTEFTUkVBRCcgfCB0cmFuc2xhdGUpXCJcbiAgICAgICAgICAgICAgICB0aXRsZT1cInt7IG1hcmtBbGxBc1JlYWRMYWJlbCA/IG1hcmtBbGxBc1JlYWRMYWJlbCA6ICgnZXVpLk5PVElGSUNBVElPTk1BUktBTExBU1JFQUQnIHwgdHJhbnNsYXRlKSB9fVwiXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uTWFya0FsbEFzUmVhZCgkZXZlbnQpXCI+XG4gICAgICAgICAgICAgICAgPGV1aS1pY29uLXN2ZyBpY29uPVwiZXVpLWNoZWNrbWFyay1kb25lXCIgZmlsbENvbG9yPVwicHJpbWFyeS0xMDBcIj48L2V1aS1pY29uLXN2Zz5cbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgIGV1aUJ1dHRvblxuICAgICAgICAgICAgICAgIGV1aVByaW1hcnlcbiAgICAgICAgICAgICAgICBldWlSb3VuZGVkXG4gICAgICAgICAgICAgICAgZXVpSWNvbkJ1dHRvblxuICAgICAgICAgICAgICAgIGV1aUJhc2ljQnV0dG9uXG4gICAgICAgICAgICAgICAgZXVpU2l6ZVNcbiAgICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICAqbmdJZj1cImlzU2hvd1NldHRpbmdzQnV0dG9uXCJcbiAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cInNldHRpbmdzTGFiZWwgPyBzZXR0aW5nc0xhYmVsIDogKCdldWkuU0VUVElOR1MnIHwgdHJhbnNsYXRlKVwiXG4gICAgICAgICAgICAgICAgdGl0bGU9XCJ7eyBzZXR0aW5nc0xhYmVsID8gc2V0dGluZ3NMYWJlbCA6ICgnZXVpLlNFVFRJTkdTJyB8IHRyYW5zbGF0ZSkgfX1cIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJvblNldHRpbmdzKCRldmVudClcIj5cbiAgICAgICAgICAgICAgICA8ZXVpLWljb24tc3ZnIGljb249XCJldWktc2V0dGluZ3NcIiBmaWxsQ29sb3I9XCJwcmltYXJ5LTEwMFwiPjwvZXVpLWljb24tc3ZnPlxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgZXVpQnV0dG9uXG4gICAgICAgICAgICAgICAgZXVpUHJpbWFyeVxuICAgICAgICAgICAgICAgIGV1aVJvdW5kZWRcbiAgICAgICAgICAgICAgICBldWlJY29uQnV0dG9uXG4gICAgICAgICAgICAgICAgZXVpQmFzaWNCdXR0b25cbiAgICAgICAgICAgICAgICBldWlTaXplU1xuICAgICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgICpuZ0lmPVwiaXNTaG93UmVmcmVzaEJ1dHRvblwiXG4gICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJyZWZyZXNoTGFiZWwgPyByZWZyZXNoTGFiZWwgOiAoJ2V1aS5SRUZSRVNIJyB8IHRyYW5zbGF0ZSlcIlxuICAgICAgICAgICAgICAgIHRpdGxlPVwie3sgcmVmcmVzaExhYmVsID8gcmVmcmVzaExhYmVsIDogKCdldWkuUkVGUkVTSCcgfCB0cmFuc2xhdGUpIH19XCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwib25SZWZyZXNoKCRldmVudClcIj5cbiAgICAgICAgICAgICAgICA8ZXVpLWljb24tc3ZnIGljb249XCJldWktcmVmcmVzaFwiIGZpbGxDb2xvcj1cInByaW1hcnktMTAwXCI+PC9ldWktaWNvbi1zdmc+XG4gICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9ldWktb3ZlcmxheS1oZWFkZXI+XG5cbiAgICA8ZXVpLW92ZXJsYXktYm9keT5cbiAgICAgICAgPHVsIGNsYXNzPVwiZXVpLW5vdGlmaWNhdGlvbnMtaXRlbXNcIiAqbmdJZj1cIml0ZW1zXCI+XG4gICAgICAgICAgICA8ZXVpLW5vdGlmaWNhdGlvbi1pdGVtXG4gICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IGl0ZW0gb2YgaXRlbXM7IHRyYWNrQnk6IHRyYWNrQnlGblwiXG4gICAgICAgICAgICAgICAgW2l0ZW1dPVwiaXRlbVwiXG4gICAgICAgICAgICAgICAgW2RhdGVGb3JtYXRdPVwiZGF0ZUZvcm1hdFwiXG4gICAgICAgICAgICAgICAgW21hcmtBc1JlYWRMYWJlbF09XCJtYXJrQXNSZWFkTGFiZWxcIlxuICAgICAgICAgICAgICAgIFtpc1Nob3dNYXJrQXNSZWFkXT1cImlzU2hvd01hcmtBc1JlYWRcIlxuICAgICAgICAgICAgICAgIChpdGVtQ2xpY2spPVwib25JdGVtQ2xpY2soJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgKGl0ZW1NYXJrQXNSZWFkKT1cIm9uSXRlbU1hcmtBc1JlYWQoJGV2ZW50KVwiPlxuICAgICAgICAgICAgPC9ldWktbm90aWZpY2F0aW9uLWl0ZW0+XG4gICAgICAgIDwvdWw+XG4gICAgPC9ldWktb3ZlcmxheS1ib2R5PlxuXG4gICAgPGV1aS1vdmVybGF5LWZvb3Rlcj5cbiAgICAgICAgPG5nLXRlbXBsYXRlIFtuZ0lmXT1cIml0ZW1zPy5sZW5ndGggPiAwXCI+XG4gICAgICAgICAgICA8c3Ryb25nXG4gICAgICAgICAgICAgICAgPjxhIChjbGljayk9XCJvblZpZXdBbGxDbGljaygkZXZlbnQpXCI+e3tcbiAgICAgICAgICAgICAgICAgICAgdmlld0FsbE5vdGlmaWNhdGlvbnNMYWJlbCA/IHZpZXdBbGxOb3RpZmljYXRpb25zTGFiZWwgOiAoJ2V1aS5WSUVXQUxMTk9USUZJQ0FUSU9OUycgfCB0cmFuc2xhdGUpXG4gICAgICAgICAgICAgICAgfX08L2E+PC9zdHJvbmdcbiAgICAgICAgICAgID5cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPG5nLXRlbXBsYXRlIFtuZ0lmXT1cIml0ZW1zPy5sZW5ndGggPT09IDBcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ1eC1ub3RpZmljYXRpb25fX2l0ZW0tY29udGVudFwiICpuZ0lmPVwiIW5vTm90aWZpY2F0aW9uRm91bmRMaW5rXCI+XG4gICAgICAgICAgICAgICAge3sgbm9Ob3RpZmljYXRpb25Gb3VuZExhYmVsID8gbm9Ob3RpZmljYXRpb25Gb3VuZExhYmVsIDogKCdldWkuTk9OT1RJRklDQVRJT05GT1VORCcgfCB0cmFuc2xhdGUpIH19XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ1eC1ub3RpZmljYXRpb25fX2l0ZW0tY29udGVudFwiICpuZ0lmPVwibm9Ob3RpZmljYXRpb25Gb3VuZExpbmtcIj5cbiAgICAgICAgICAgICAgICA8c3Ryb25nXG4gICAgICAgICAgICAgICAgICAgID48YSAoY2xpY2spPVwib25Ob05vdGlmaWNhdGlvbkZvdW5kQ2xpY2soKVwiPnt7XG4gICAgICAgICAgICAgICAgICAgICAgICBub05vdGlmaWNhdGlvbkZvdW5kTGFiZWwgPyBub05vdGlmaWNhdGlvbkZvdW5kTGFiZWwgOiAoJ2V1aS5OT05PVElGSUNBVElPTkZPVU5EJyB8IHRyYW5zbGF0ZSlcbiAgICAgICAgICAgICAgICAgICAgfX08L2E+PC9zdHJvbmdcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L2V1aS1vdmVybGF5LWZvb3Rlcj5cbjwvZXVpLW92ZXJsYXk+XG4iXX0=
|
257
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXVpLW5vdGlmaWNhdGlvbnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbGF5b3V0L2V1aS1ub3RpZmljYXRpb25zL2V1aS1ub3RpZmljYXRpb25zLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL2xheW91dC9ldWktbm90aWZpY2F0aW9ucy9ldWktbm90aWZpY2F0aW9ucy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osV0FBVyxFQUNYLFlBQVksRUFDWixLQUFLLEVBR0wsTUFBTSxFQUVOLGlCQUFpQixHQUNwQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxxQkFBcUIsRUFBZ0IsTUFBTSx1QkFBdUIsQ0FBQzs7Ozs7Ozs7O0FBUzVFLE1BQU0sT0FBTyx5QkFBeUI7SUFQdEM7UUFRSSxtSEFBbUg7UUFDbkgsOERBQThEO1FBQ3BELGlCQUFZLEdBQXNCLElBQUksWUFBWSxFQUFPLENBQUM7UUFDcEUsbUhBQW1IO1FBQ25ILDhEQUE4RDtRQUNwRCx1QkFBa0IsR0FBc0IsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUMxRSxtSEFBbUg7UUFDbkgsOERBQThEO1FBQ3BELGlCQUFZLEdBQXNCLElBQUksWUFBWSxFQUFPLENBQUM7UUFDcEUsbUhBQW1IO1FBQ25ILDhEQUE4RDtRQUNwRCxrQkFBYSxHQUFzQixJQUFJLFlBQVksRUFBTyxDQUFDO1FBQ3JFLG1IQUFtSDtRQUNuSCw4REFBOEQ7UUFDcEQsdUJBQWtCLEdBQXNCLElBQUksWUFBWSxFQUFPLENBQUM7UUFDMUUsbUhBQW1IO1FBQ25ILDhEQUE4RDtRQUNwRCw2QkFBd0IsR0FBc0IsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUNoRixtSEFBbUg7UUFDbkgsOERBQThEO1FB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Q0csVUFBVTtzQkFBbEIsS0FBSztnQkFFRix1QkFBdUI7c0JBRDFCLEtBQUs7Z0JBU0YsZ0JBQWdCO3NCQURuQixLQUFLO2dCQVNGLG1CQUFtQjtzQkFEdEIsS0FBSztnQkFTRiwwQkFBMEI7c0JBRDdCLEtBQUs7Z0JBU0YsaUJBQWlCO3NCQURwQixLQUFLO2dCQVNGLHlCQUF5QjtzQkFENUIsS0FBSztnQkFTRixvQkFBb0I7c0JBRHZCLEtBQUs7Z0JBU0YsbUJBQW1CO3NCQUR0QixLQUFLO2dCQVVOLE1BQU07c0JBREwsWUFBWTt1QkFBQyxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIEhvc3RMaXN0ZW5lcixcbiAgICBJbnB1dCxcbiAgICBPbkNoYW5nZXMsXG4gICAgT25Jbml0LFxuICAgIE91dHB1dCxcbiAgICBTaW1wbGVDaGFuZ2VzLFxuICAgIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGNvbnN1bWVFdmVudCB9IGZyb20gJ0BldWkvY29yZSc7XG5pbXBvcnQgeyBjb2VyY2VCb29sZWFuUHJvcGVydHksIEJvb2xlYW5JbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbic7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZXVpLW5vdGlmaWNhdGlvbnMnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9ldWktbm90aWZpY2F0aW9ucy5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vc3R5bGVzL19pbmRleC5zY3NzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5EZWZhdWx0LFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG59KVxuZXhwb3J0IGNsYXNzIEV1aU5vdGlmaWNhdGlvbnNDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcyB7XG4gICAgLy8gVE9ETzogZmluZCB0aGUgY29ycmVjdCB0eXBlIG9yIHR1cm4gaW50byBhIGdlbmVyaWMsIGh0dHBzOi8vd3d3LnR5cGVzY3JpcHRsYW5nLm9yZy9kb2NzL2hhbmRib29rLzIvZ2VuZXJpY3MuaHRtbFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgQE91dHB1dCgpIHJlZnJlc2hDbGljazogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcbiAgICAvLyBUT0RPOiBmaW5kIHRoZSBjb3JyZWN0IHR5cGUgb3IgdHVybiBpbnRvIGEgZ2VuZXJpYywgaHR0cHM6Ly93d3cudHlwZXNjcmlwdGxhbmcub3JnL2RvY3MvaGFuZGJvb2svMi9nZW5lcmljcy5odG1sXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICBAT3V0cHV0KCkgbm90aWZpY2F0aW9uc0NsaWNrOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICAgIC8vIFRPRE86IGZpbmQgdGhlIGNvcnJlY3QgdHlwZSBvciB0dXJuIGludG8gYSBnZW5lcmljLCBodHRwczovL3d3dy50eXBlc2NyaXB0bGFuZy5vcmcvZG9jcy9oYW5kYm9vay8yL2dlbmVyaWNzLmh0bWxcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgIEBPdXRwdXQoKSB2aWV3QWxsQ2xpY2s6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG4gICAgLy8gVE9ETzogZmluZCB0aGUgY29ycmVjdCB0eXBlIG9yIHR1cm4gaW50byBhIGdlbmVyaWMsIGh0dHBzOi8vd3d3LnR5cGVzY3JpcHRsYW5nLm9yZy9kb2NzL2hhbmRib29rLzIvZ2VuZXJpY3MuaHRtbFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgQE91dHB1dCgpIHNldHRpbmdzQ2xpY2s6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG4gICAgLy8gVE9ETzogZmluZCB0aGUgY29ycmVjdCB0eXBlIG9yIHR1cm4gaW50byBhIGdlbmVyaWMsIGh0dHBzOi8vd3d3LnR5cGVzY3JpcHRsYW5nLm9yZy9kb2NzL2hhbmRib29rLzIvZ2VuZXJpY3MuaHRtbFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgQE91dHB1dCgpIG1hcmtBbGxBc1JlYWRDbGljazogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcbiAgICAvLyBUT0RPOiBmaW5kIHRoZSBjb3JyZWN0IHR5cGUgb3IgdHVybiBpbnRvIGEgZ2VuZXJpYywgaHR0cHM6Ly93d3cudHlwZXNjcmlwdGxhbmcub3JnL2RvY3MvaGFuZGJvb2svMi9nZW5lcmljcy5odG1sXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICBAT3V0cHV0KCkgbm9Ob3RpZmljYXRpb25Gb3VuZENsaWNrOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICAgIC8vIFRPRE86IGZpbmQgdGhlIGNvcnJlY3QgdHlwZSBvciB0dXJuIGludG8gYSBnZW5lcmljLCBodHRwczovL3d3dy50eXBlc2NyaXB0bGFuZy5vcmcvZG9jcy9oYW5kYm9vay8yL2dlbmVyaWNzLmh0bWxcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgIEBPdXRwdXQoKSBpdGVtQ2xpY2s6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG4gICAgLy8gVE9ETzogZmluZCB0aGUgY29ycmVjdCB0eXBlIG9yIHR1cm4gaW50byBhIGdlbmVyaWMsIGh0dHBzOi8vd3d3LnR5cGVzY3JpcHRsYW5nLm9yZy9kb2NzL2hhbmRib29rLzIvZ2VuZXJpY3MuaHRtbFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgQE91dHB1dCgpIGl0ZW1NYXJrQXNSZWFkQ2xpY2s6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgICBpc092ZXJsYXlBY3RpdmUgPSBmYWxzZTtcbiAgICBjdXJyZW50RGF5Tm90aWZpY2F0aW9ucyA9IFtdO1xuICAgIG9sZGVzdE5vdGlmaWNhdGlvbnMgPSBbXTtcbiAgICB1bnJlYWROb3RpZmljYXRpb25zID0gW107XG4gICAgdG9kYXk6IERhdGUgPSBuZXcgRGF0ZSgpO1xuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcycpIHN0cmluZyA9ICdldWktbm90aWZpY2F0aW9ucyc7XG5cbiAgICBASW5wdXQoKSBjb3VudDogbnVtYmVyID0gbnVsbDtcbiAgICBASW5wdXQoKSBpdGVtcyA9IFtdO1xuICAgIEBJbnB1dCgpIHVucmVhZExhYmVsOiBzdHJpbmcgPSBudWxsO1xuICAgIEBJbnB1dCgpIHRvdGFsTGFiZWw6IHN0cmluZyA9IG51bGw7XG4gICAgQElucHV0KCkgbWFya0FzUmVhZExhYmVsOiBzdHJpbmcgPSBudWxsO1xuICAgIEBJbnB1dCgpIG1hcmtBc1VuUmVhZExhYmVsOiBzdHJpbmcgPSBudWxsO1xuICAgIEBJbnB1dCgpIG1hcmtBbGxBc1JlYWRMYWJlbDogc3RyaW5nID0gbnVsbDtcbiAgICBASW5wdXQoKSBzZXR0aW5nc0xhYmVsOiBzdHJpbmcgPSBudWxsO1xuICAgIEBJbnB1dCgpIHJlZnJlc2hMYWJlbDogc3RyaW5nID0gbnVsbDtcbiAgICBASW5wdXQoKSB2aWV3QWxsTm90aWZpY2F0aW9uc0xhYmVsOiBzdHJpbmcgPSBudWxsO1xuICAgIEBJbnB1dCgpIGhlYWRlclRpdGxlTGFiZWw6IHN0cmluZyA9IG51bGw7XG4gICAgQElucHV0KCkgbm9Ob3RpZmljYXRpb25Gb3VuZExhYmVsOiBzdHJpbmcgPSBudWxsO1xuICAgIEBJbnB1dCgpIG5iVW5yZWFkQ291bnQ6IG51bWJlciA9IG51bGw7XG4gICAgQElucHV0KCkgZGF0ZUZvcm1hdCA9ICdkZC9NTS9ZWVlZJztcbiAgICBASW5wdXQoKVxuICAgIGdldCBub05vdGlmaWNhdGlvbkZvdW5kTGluaygpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX25vTm90aWZpY2F0aW9uRm91bmRMaW5rO1xuICAgIH1cbiAgICBzZXQgbm9Ob3RpZmljYXRpb25Gb3VuZExpbmsodmFsdWU6IEJvb2xlYW5JbnB1dCkge1xuICAgICAgICB0aGlzLl9ub05vdGlmaWNhdGlvbkZvdW5kTGluayA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgfVxuICAgIHByaXZhdGUgX25vTm90aWZpY2F0aW9uRm91bmRMaW5rID0gZmFsc2U7XG4gICAgQElucHV0KClcbiAgICBnZXQgaXNTaG93TWFya0FzUmVhZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2lzU2hvd01hcmtBc1JlYWQ7XG4gICAgfVxuICAgIHNldCBpc1Nob3dNYXJrQXNSZWFkKHZhbHVlOiBCb29sZWFuSW5wdXQpIHtcbiAgICAgICAgdGhpcy5faXNTaG93TWFya0FzUmVhZCA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgfVxuICAgIHByaXZhdGUgX2lzU2hvd01hcmtBc1JlYWQgPSB0cnVlO1xuICAgIEBJbnB1dCgpXG4gICAgZ2V0IGlzU2hvd1ZpZXdBbGxBY3Rpb24oKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9pc1Nob3dWaWV3QWxsQWN0aW9uO1xuICAgIH1cbiAgICBzZXQgaXNTaG93Vmlld0FsbEFjdGlvbih2YWx1ZTogQm9vbGVhbklucHV0KSB7XG4gICAgICAgIHRoaXMuX2lzU2hvd1ZpZXdBbGxBY3Rpb24gPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIH1cbiAgICBwcml2YXRlIF9pc1Nob3dWaWV3QWxsQWN0aW9uID0gdHJ1ZTtcbiAgICBASW5wdXQoKVxuICAgIGdldCBpc0hpZGVQYW5lbE9uVmlld0FsbEFjdGlvbigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2lzSGlkZVBhbmVsT25WaWV3QWxsQWN0aW9uO1xuICAgIH1cbiAgICBzZXQgaXNIaWRlUGFuZWxPblZpZXdBbGxBY3Rpb24odmFsdWU6IEJvb2xlYW5JbnB1dCkge1xuICAgICAgICB0aGlzLl9pc0hpZGVQYW5lbE9uVmlld0FsbEFjdGlvbiA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgfVxuICAgIHByaXZhdGUgX2lzSGlkZVBhbmVsT25WaWV3QWxsQWN0aW9uID0gdHJ1ZTtcbiAgICBASW5wdXQoKVxuICAgIGdldCBjdXN0b21VbnJlYWRDb3VudCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2N1c3RvbVVucmVhZENvdW50O1xuICAgIH1cbiAgICBzZXQgY3VzdG9tVW5yZWFkQ291bnQodmFsdWU6IEJvb2xlYW5JbnB1dCkge1xuICAgICAgICB0aGlzLl9jdXN0b21VbnJlYWRDb3VudCA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgfVxuICAgIHByaXZhdGUgX2N1c3RvbVVucmVhZENvdW50ID0gZmFsc2U7XG4gICAgQElucHV0KClcbiAgICBnZXQgaXNTaG93TWFya0FsbEFzUmVhZEJ1dHRvbigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2lzU2hvd01hcmtBbGxBc1JlYWRCdXR0b247XG4gICAgfVxuICAgIHNldCBpc1Nob3dNYXJrQWxsQXNSZWFkQnV0dG9uKHZhbHVlOiBCb29sZWFuSW5wdXQpIHtcbiAgICAgICAgdGhpcy5faXNTaG93TWFya0FsbEFzUmVhZEJ1dHRvbiA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgfVxuICAgIHByaXZhdGUgX2lzU2hvd01hcmtBbGxBc1JlYWRCdXR0b24gPSB0cnVlO1xuICAgIEBJbnB1dCgpXG4gICAgZ2V0IGlzU2hvd1NldHRpbmdzQnV0dG9uKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5faXNTaG93U2V0dGluZ3NCdXR0b247XG4gICAgfVxuICAgIHNldCBpc1Nob3dTZXR0aW5nc0J1dHRvbih2YWx1ZTogQm9vbGVhbklucHV0KSB7XG4gICAgICAgIHRoaXMuX2lzU2hvd1NldHRpbmdzQnV0dG9uID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG4gICAgcHJpdmF0ZSBfaXNTaG93U2V0dGluZ3NCdXR0b24gPSB0cnVlO1xuICAgIEBJbnB1dCgpXG4gICAgZ2V0IGlzU2hvd1JlZnJlc2hCdXR0b24oKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9pc1Nob3dSZWZyZXNoQnV0dG9uO1xuICAgIH1cbiAgICBzZXQgaXNTaG93UmVmcmVzaEJ1dHRvbih2YWx1ZTogQm9vbGVhbklucHV0KSB7XG4gICAgICAgIHRoaXMuX2lzU2hvd1JlZnJlc2hCdXR0b24gPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIH1cbiAgICBwcml2YXRlIF9pc1Nob3dSZWZyZXNoQnV0dG9uID0gdHJ1ZTtcblxuICAgIEBIb3N0TGlzdGVuZXIoJ2JvZHk6Y2xpY2snKVxuICAgIG9uSGlkZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5pc092ZXJsYXlBY3RpdmUgPSBmYWxzZTtcbiAgICB9XG5cbiAgICAvLyBUT0RPOiBmaW5kIHRoZSBjb3JyZWN0IHR5cGUgb3IgdHVybiBpbnRvIGEgZ2VuZXJpYywgaHR0cHM6Ly93d3cudHlwZXNjcmlwdGxhbmcub3JnL2RvY3MvaGFuZGJvb2svMi9nZW5lcmljcy5odG1sXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICBvbkNsaWNrZWQoZXZlbnQ6IGFueSk6IHZvaWQge1xuICAgICAgICB0aGlzLm5vdGlmaWNhdGlvbnNDbGljay5lbWl0KCk7XG4gICAgICAgIGNvbnN1bWVFdmVudChldmVudCk7XG4gICAgICAgIHRoaXMuaXNPdmVybGF5QWN0aXZlID0gIXRoaXMuaXNPdmVybGF5QWN0aXZlO1xuICAgIH1cblxuICAgIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICAgICAgaWYgKGNoYW5nZXMuY3VzdG9tVW5yZWFkQ291bnQpIHtcbiAgICAgICAgICAgIGNvbnN0IGN1c3RvbVVucmVhZENvdW50ID0gY2hhbmdlcy5jdXN0b21VbnJlYWRDb3VudC5jdXJyZW50VmFsdWU7XG4gICAgICAgICAgICBpZiAoIWN1c3RvbVVucmVhZENvdW50KSB7XG4gICAgICAgICAgICAgICAgdGhpcy5uYlVucmVhZENvdW50ID0gdGhpcy5fZ2V0VW5yZWFkQ291bnQoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMuY3VzdG9tVW5yZWFkQ291bnQpIHtcbiAgICAgICAgICAgIHRoaXMubmJVbnJlYWRDb3VudCA9IHRoaXMuX2dldFVucmVhZENvdW50KCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvblJlZnJlc2goZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgICAgIHRoaXMucmVmcmVzaENsaWNrLmVtaXQoKTtcbiAgICAgICAgY29uc3VtZUV2ZW50KGV2ZW50KTtcbiAgICB9XG5cbiAgICAvLyBUT0RPOiBmaW5kIHRoZSBjb3JyZWN0IHR5cGUgb3IgdHVybiBpbnRvIGEgZ2VuZXJpYywgaHR0cHM6Ly93d3cudHlwZXNjcmlwdGxhbmcub3JnL2RvY3MvaGFuZGJvb2svMi9nZW5lcmljcy5odG1sXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICBvbkl0ZW1DbGljayhsaW5rOiBhbnkpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5pdGVtQ2xpY2suZW1pdChsaW5rKTtcbiAgICAgICAgY29uc3VtZUV2ZW50KGV2ZW50KTtcbiAgICB9XG5cbiAgICBvblZpZXdBbGxDbGljayhldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy52aWV3QWxsQ2xpY2suZW1pdCgpO1xuICAgICAgICBpZiAoIXRoaXMuaXNIaWRlUGFuZWxPblZpZXdBbGxBY3Rpb24pIHtcbiAgICAgICAgICAgIGNvbnN1bWVFdmVudChldmVudCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvbk5vTm90aWZpY2F0aW9uRm91bmRDbGljaygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5ub05vdGlmaWNhdGlvbkZvdW5kQ2xpY2suZW1pdCgpO1xuICAgIH1cblxuICAgIC8vIFRPRE86IGZpbmQgdGhlIGNvcnJlY3QgdHlwZSBvciB0dXJuIGludG8gYSBnZW5lcmljLCBodHRwczovL3d3dy50eXBlc2NyaXB0bGFuZy5vcmcvZG9jcy9oYW5kYm9vay8yL2dlbmVyaWNzLmh0bWxcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgIG9uSXRlbU1hcmtBc1JlYWQobGluazogYW55KTogdm9pZCB7XG4gICAgICAgIHRoaXMuaXRlbU1hcmtBc1JlYWRDbGljay5lbWl0KGxpbmspO1xuICAgIH1cblxuICAgIG9uTWFya0FsbEFzUmVhZChlKTogdm9pZCB7XG4gICAgICAgIHRoaXMubWFya0FsbEFzUmVhZENsaWNrLmVtaXQoZSk7XG4gICAgICAgIGNvbnN1bWVFdmVudChlKTtcbiAgICB9XG5cbiAgICBvblNldHRpbmdzKGUpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zZXR0aW5nc0NsaWNrLmVtaXQoZSk7XG4gICAgICAgIGNvbnN1bWVFdmVudChlKTtcbiAgICB9XG5cbiAgICAvLyBUT0RPOiBmaW5kIHRoZSBjb3JyZWN0IHR5cGUgb3IgdHVybiBpbnRvIGEgZ2VuZXJpYywgaHR0cHM6Ly93d3cudHlwZXNjcmlwdGxhbmcub3JnL2RvY3MvaGFuZGJvb2svMi9nZW5lcmljcy5odG1sXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICB0cmFja0J5Rm4oaW5kZXg6IG51bWJlciwgaXRlbTogYW55KTogdm9pZCB7XG4gICAgICAgIHJldHVybiBpdGVtLmlkO1xuICAgIH1cblxuICAgIHByaXZhdGUgX2dldFVucmVhZENvdW50KCk6IG51bWJlciB7XG4gICAgICAgIGNvbnN0IHVucmVhZE5vdGlmaWNhdGlvbnMgPSB0aGlzLml0ZW1zLmZpbHRlcigobGluaykgPT4ge1xuICAgICAgICAgICAgaWYgKGxpbmsubWV0YWRhdGEpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gbGluay5tZXRhZGF0YS5yZWFkID09PSBmYWxzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiB1bnJlYWROb3RpZmljYXRpb25zLmxlbmd0aDtcbiAgICB9XG59XG4iLCI8ZXVpLWljb24tc3ZnLWJ1dHRvblxuICAgIGNsYXNzPVwiZXVpLW5vdGlmaWNhdGlvbnNfX3RyaWdnZXJcIlxuICAgIGljb25TdmdOYW1lPVwiZXVpLW5vdGlmaWNhdGlvbnNcIlxuICAgIGljb25TdmdTaXplPVwibVwiXG4gICAgaWNvblN2Z0ZpbGxDb2xvcj1cIndoaXRlXCJcbiAgICAoY2xpY2spPVwib25DbGlja2VkKCRldmVudClcIlxuICAgIChrZXlkb3duLmVudGVyKT1cIm9uQ2xpY2tlZCgkZXZlbnQpXCJcbiAgICAoa2V5ZG93bi5lc2MpPVwib25IaWRlKClcIlxuICAgIGhhc0ZvY3VzQm9yZGVyPlxuICAgIDxldWktYmFkZ2UgKm5nSWY9XCJjb3VudFwiIGV1aVNpemVTIGV1aURhbmdlcj57eyBjb3VudCB9fTwvZXVpLWJhZGdlPlxuPC9ldWktaWNvbi1zdmctYnV0dG9uPlxuXG48ZXVpLW92ZXJsYXkgW2lzQWN0aXZlXT1cImlzT3ZlcmxheUFjdGl2ZVwiIGNsYXNzPVwiZXVpLW92ZXJsYXktb2Zmc2V0LS13aWR0aC0zMFwiPlxuICAgIDxldWktb3ZlcmxheS1oZWFkZXI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJldWktbm90aWZpY2F0aW9uc19faGVhZGVyLXRpdGxlXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZXVpLW5vdGlmaWNhdGlvbnNfX2hlYWRlci10aXRsZS1sYWJlbFwiPlxuICAgICAgICAgICAgICAgIHt7IGhlYWRlclRpdGxlTGFiZWwgPyBoZWFkZXJUaXRsZUxhYmVsIDogKCdldWkuTVlOT1RJRklDQVRJT05TJyB8IHRyYW5zbGF0ZSkgfX1cbiAgICAgICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIml0ZW1zXCJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJldWktdS1jdXJzb3ItaGVscCBldWktdS1tbC1zXCJcbiAgICAgICAgICAgICAgICAgICAgYXR0ci5hcmlhLWxhYmVsPVwie3sgdW5yZWFkTGFiZWwgPyB1bnJlYWRMYWJlbCA6ICgnZXVpLk5PVElGSUNBVElPTlNVTlJFQUQnIHwgdHJhbnNsYXRlKSB9fVwiXG4gICAgICAgICAgICAgICAgICAgIHRpdGxlPVwie3sgdW5yZWFkTGFiZWwgPyB1bnJlYWRMYWJlbCA6ICgnZXVpLk5PVElGSUNBVElPTlNVTlJFQUQnIHwgdHJhbnNsYXRlKSB9fVwiPlxuICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8ZXVpLWJhZGdlIGV1aVNpemVMICpuZ0lmPVwiY291bnRcIj57eyBjb3VudCB9fTwvZXVpLWJhZGdlPlxuICAgICAgICAgICAgICAgIDxldWktYmFkZ2UgZXVpU2l6ZUwgKm5nSWY9XCIhY291bnRcIj57eyBpdGVtcy5sZW5ndGggfX08L2V1aS1iYWRnZT5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8ZGl2ICpuZ0lmPVwiaXRlbXNcIiBjbGFzcz1cImV1aS1ub3RpZmljYXRpb25zX19oZWFkZXItYWN0aW9uc1wiPlxuICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgIGV1aUJ1dHRvblxuICAgICAgICAgICAgICAgIGV1aVByaW1hcnlcbiAgICAgICAgICAgICAgICBldWlSb3VuZGVkXG4gICAgICAgICAgICAgICAgZXVpSWNvbkJ1dHRvblxuICAgICAgICAgICAgICAgIGV1aUJhc2ljQnV0dG9uXG4gICAgICAgICAgICAgICAgZXVpU2l6ZVNcbiAgICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICAqbmdJZj1cImlzU2hvd01hcmtBbGxBc1JlYWRCdXR0b25cIlxuICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwibWFya0FsbEFzUmVhZExhYmVsID8gbWFya0FsbEFzUmVhZExhYmVsIDogKCdldWkuTk9USUZJQ0FUSU9OTUFSS0FMTEFTUkVBRCcgfCB0cmFuc2xhdGUpXCJcbiAgICAgICAgICAgICAgICB0aXRsZT1cInt7IG1hcmtBbGxBc1JlYWRMYWJlbCA/IG1hcmtBbGxBc1JlYWRMYWJlbCA6ICgnZXVpLk5PVElGSUNBVElPTk1BUktBTExBU1JFQUQnIHwgdHJhbnNsYXRlKSB9fVwiXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uTWFya0FsbEFzUmVhZCgkZXZlbnQpXCI+XG4gICAgICAgICAgICAgICAgPGV1aS1pY29uLXN2ZyBpY29uPVwiZXVpLWNoZWNrbWFyay1kb25lXCIgZmlsbENvbG9yPVwicHJpbWFyeS0xMDBcIj48L2V1aS1pY29uLXN2Zz5cbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgIGV1aUJ1dHRvblxuICAgICAgICAgICAgICAgIGV1aVByaW1hcnlcbiAgICAgICAgICAgICAgICBldWlSb3VuZGVkXG4gICAgICAgICAgICAgICAgZXVpSWNvbkJ1dHRvblxuICAgICAgICAgICAgICAgIGV1aUJhc2ljQnV0dG9uXG4gICAgICAgICAgICAgICAgZXVpU2l6ZVNcbiAgICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICAqbmdJZj1cImlzU2hvd1NldHRpbmdzQnV0dG9uXCJcbiAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cInNldHRpbmdzTGFiZWwgPyBzZXR0aW5nc0xhYmVsIDogKCdldWkuU0VUVElOR1MnIHwgdHJhbnNsYXRlKVwiXG4gICAgICAgICAgICAgICAgdGl0bGU9XCJ7eyBzZXR0aW5nc0xhYmVsID8gc2V0dGluZ3NMYWJlbCA6ICgnZXVpLlNFVFRJTkdTJyB8IHRyYW5zbGF0ZSkgfX1cIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJvblNldHRpbmdzKCRldmVudClcIj5cbiAgICAgICAgICAgICAgICA8ZXVpLWljb24tc3ZnIGljb249XCJldWktc2V0dGluZ3NcIiBmaWxsQ29sb3I9XCJwcmltYXJ5LTEwMFwiPjwvZXVpLWljb24tc3ZnPlxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgZXVpQnV0dG9uXG4gICAgICAgICAgICAgICAgZXVpUHJpbWFyeVxuICAgICAgICAgICAgICAgIGV1aVJvdW5kZWRcbiAgICAgICAgICAgICAgICBldWlJY29uQnV0dG9uXG4gICAgICAgICAgICAgICAgZXVpQmFzaWNCdXR0b25cbiAgICAgICAgICAgICAgICBldWlTaXplU1xuICAgICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgICpuZ0lmPVwiaXNTaG93UmVmcmVzaEJ1dHRvblwiXG4gICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJyZWZyZXNoTGFiZWwgPyByZWZyZXNoTGFiZWwgOiAoJ2V1aS5SRUZSRVNIJyB8IHRyYW5zbGF0ZSlcIlxuICAgICAgICAgICAgICAgIHRpdGxlPVwie3sgcmVmcmVzaExhYmVsID8gcmVmcmVzaExhYmVsIDogKCdldWkuUkVGUkVTSCcgfCB0cmFuc2xhdGUpIH19XCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwib25SZWZyZXNoKCRldmVudClcIj5cbiAgICAgICAgICAgICAgICA8ZXVpLWljb24tc3ZnIGljb249XCJldWktcmVmcmVzaFwiIGZpbGxDb2xvcj1cInByaW1hcnktMTAwXCI+PC9ldWktaWNvbi1zdmc+XG4gICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9ldWktb3ZlcmxheS1oZWFkZXI+XG5cbiAgICA8ZXVpLW92ZXJsYXktYm9keT5cbiAgICAgICAgPHVsIGNsYXNzPVwiZXVpLW5vdGlmaWNhdGlvbnMtaXRlbXNcIiAqbmdJZj1cIml0ZW1zXCI+XG4gICAgICAgICAgICA8ZXVpLW5vdGlmaWNhdGlvbi1pdGVtXG4gICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IGl0ZW0gb2YgaXRlbXM7IHRyYWNrQnk6IHRyYWNrQnlGblwiXG4gICAgICAgICAgICAgICAgW2l0ZW1dPVwiaXRlbVwiXG4gICAgICAgICAgICAgICAgW2RhdGVGb3JtYXRdPVwiZGF0ZUZvcm1hdFwiXG4gICAgICAgICAgICAgICAgW21hcmtBc1JlYWRMYWJlbF09XCJtYXJrQXNSZWFkTGFiZWxcIlxuICAgICAgICAgICAgICAgIFtpc1Nob3dNYXJrQXNSZWFkXT1cImlzU2hvd01hcmtBc1JlYWRcIlxuICAgICAgICAgICAgICAgIChpdGVtQ2xpY2spPVwib25JdGVtQ2xpY2soJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgKGl0ZW1NYXJrQXNSZWFkKT1cIm9uSXRlbU1hcmtBc1JlYWQoJGV2ZW50KVwiPlxuICAgICAgICAgICAgPC9ldWktbm90aWZpY2F0aW9uLWl0ZW0+XG4gICAgICAgIDwvdWw+XG4gICAgPC9ldWktb3ZlcmxheS1ib2R5PlxuXG4gICAgPGV1aS1vdmVybGF5LWZvb3Rlcj5cbiAgICAgICAgPG5nLXRlbXBsYXRlIFtuZ0lmXT1cIml0ZW1zPy5sZW5ndGggPiAwXCI+XG4gICAgICAgICAgICA8YSAoY2xpY2spPVwib25WaWV3QWxsQ2xpY2soJGV2ZW50KVwiIGNsYXNzPVwiZXVpLXUtdGV4dC1saW5rXCI+XG4gICAgICAgICAgICAgICAgPHN0cm9uZz57eyB2aWV3QWxsTm90aWZpY2F0aW9uc0xhYmVsID8gdmlld0FsbE5vdGlmaWNhdGlvbnNMYWJlbCA6ICgnZXVpLlZJRVdBTExOT1RJRklDQVRJT05TJyB8IHRyYW5zbGF0ZSkgfX08L3N0cm9uZz5cbiAgICAgICAgICAgIDwvYT5cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPG5nLXRlbXBsYXRlIFtuZ0lmXT1cIml0ZW1zPy5sZW5ndGggPT09IDBcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ1eC1ub3RpZmljYXRpb25fX2l0ZW0tY29udGVudFwiICpuZ0lmPVwiIW5vTm90aWZpY2F0aW9uRm91bmRMaW5rXCI+XG4gICAgICAgICAgICAgICAge3sgbm9Ob3RpZmljYXRpb25Gb3VuZExhYmVsID8gbm9Ob3RpZmljYXRpb25Gb3VuZExhYmVsIDogKCdldWkuTk9OT1RJRklDQVRJT05GT1VORCcgfCB0cmFuc2xhdGUpIH19XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ1eC1ub3RpZmljYXRpb25fX2l0ZW0tY29udGVudFwiICpuZ0lmPVwibm9Ob3RpZmljYXRpb25Gb3VuZExpbmtcIj5cbiAgICAgICAgICAgICAgICA8YSAoY2xpY2spPVwib25Ob05vdGlmaWNhdGlvbkZvdW5kQ2xpY2soKVwiIGNsYXNzPVwiZXVpLXUtdGV4dC1saW5rXCI+XG4gICAgICAgICAgICAgICAgICAgIHt7IG5vTm90aWZpY2F0aW9uRm91bmRMYWJlbCA/IG5vTm90aWZpY2F0aW9uRm91bmRMYWJlbCA6ICgnZXVpLk5PTk9USUZJQ0FUSU9ORk9VTkQnIHwgdHJhbnNsYXRlKSB9fVxuICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwvZXVpLW92ZXJsYXktZm9vdGVyPlxuPC9ldWktb3ZlcmxheT5cbiJdfQ==
|
@@ -10,11 +10,11 @@ import { EuiNotificationsComponent } from './eui-notifications.component';
|
|
10
10
|
import { EuiTruncatePipeModule } from '@eui/components/pipes';
|
11
11
|
import * as i0 from "@angular/core";
|
12
12
|
export class EuiNotificationsModule {
|
13
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.
|
14
|
-
/** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.
|
15
|
-
/** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.
|
13
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: EuiNotificationsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
14
|
+
/** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.2", ngImport: i0, type: EuiNotificationsModule, declarations: [EuiNotificationsComponent, EuiNotificationItemComponent], imports: [CommonModule, TranslateModule, EuiOverlayModule, EuiButtonModule, EuiBadgeModule, EuiIconModule, EuiTruncatePipeModule], exports: [EuiNotificationsComponent, EuiNotificationItemComponent] }); }
|
15
|
+
/** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: EuiNotificationsModule, imports: [CommonModule, TranslateModule, EuiOverlayModule, EuiButtonModule, EuiBadgeModule, EuiIconModule, EuiTruncatePipeModule] }); }
|
16
16
|
}
|
17
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.
|
17
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: EuiNotificationsModule, decorators: [{
|
18
18
|
type: NgModule,
|
19
19
|
args: [{
|
20
20
|
imports: [CommonModule, TranslateModule, EuiOverlayModule, EuiButtonModule, EuiBadgeModule, EuiIconModule, EuiTruncatePipeModule],
|
@@ -32,10 +32,10 @@ export class EuiNotificationItemV2Component {
|
|
32
32
|
this.itemMarkAsRead.emit(this.item);
|
33
33
|
consumeEvent(event);
|
34
34
|
}
|
35
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.
|
36
|
-
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.
|
35
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: EuiNotificationItemV2Component, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
36
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.2", type: EuiNotificationItemV2Component, selector: "eui-notification-item-v2", inputs: { markAsReadLabel: "markAsReadLabel", item: "item", dateFormat: "dateFormat", isShowMarkAsRead: "isShowMarkAsRead" }, outputs: { itemClick: "itemClick", itemMarkAsRead: "itemMarkAsRead" }, host: { properties: { "class": "this.string" } }, ngImport: i0, template: "<div\n class=\"eui-notification-item-content\"\n (click)=\"onItemClick()\"\n [ngClass]=\"{ 'eui-u-bg-color-white': item.metadata?.read || !item.metadata }\">\n <div class=\"eui-notification-item-content-top eui-u-font-s\">\n <div *ngIf=\"item.metadata?.date\" class=\"eui-notification-item-content-top__date\">\n <span class=\"eui-notification-item-content-top__date-icon eui-u-mr-s\">\n <!-- TODO v15 replace by eui-icon-svg -->\n <span\n class=\"eui-icon eui-icon-bell eui-u-font-m\"\n [ngClass]=\"{\n 'eui-u-color-info-lighter time__icon--rotated': !item.metadata?.read,\n 'eui-u-color-grey-20': item.metadata?.read\n }\"></span>\n <span\n *ngIf=\"item.metadata?.new\"\n class=\"eui-notification-item-content-top__date-dot eui-u-color-danger-light eui-u-font-s eui-icon eui-icon-circle\"></span>\n </span>\n <span class=\"eui-u-color-grey-dark\">{{ item.metadata?.date | date: dateFormat }}</span>\n </div>\n <div *ngIf=\"item.metadata?.important\" class=\"eui-u-font-bold eui-u-color-grey-dark\">\n <eui-icon-svg icon=\"eui-exclamation\" fillColor=\"danger\" class=\"eui-u-ml-xs\"></eui-icon-svg>\n </div>\n </div>\n <span class=\"eui-notification-item-content-middle eui-u-cursor-pointer\">\n <ng-template [ngIf]=\"item.metadata?.url\">\n <a href=\"{{ item.metadata.url }}\" tabIndex=\"0\">\n <div\n class=\"eui-notification-item-content-middle__label\"\n [ngClass]=\"{ 'eui-u-font-bold': !item.metadata || (item.metadata && !item.metadata.read) }\">\n {{ item.label | translate | euiTruncate: 200 }}\n </div>\n <div\n *ngIf=\"item.subLabel\"\n class=\"eui-notification-item-content-middle__sub-label\"\n [innerHTML]=\"item.subLabel | translate | euiTruncate: 200\"></div>\n </a>\n </ng-template>\n\n <ng-template [ngIf]=\"item.metadata?.urlExternal\">\n <a\n href=\"{{ item.metadata.urlExternal }}\"\n [target]=\"!item.metadata.urlExternalTarget ? '_black' : item.metadata.urlExternalTarget\" tabIndex=\"0\">\n <div\n class=\"eui-notification-item-content-middle__label\"\n [ngClass]=\"{ 'eui-u-font-bold': !item.metadata || (item.metadata && !item.metadata.read) }\">\n {{ item.label | translate | euiTruncate: 200 }}\n </div>\n <div\n *ngIf=\"item.subLabel\"\n class=\"eui-notification-item-content-middle__sub-label\"\n [innerHTML]=\"item.subLabel | translate | euiTruncate: 200\"></div>\n </a>\n </ng-template>\n\n <ng-template [ngIf]=\"!item.metadata?.url && !item.metadata?.urlExternal\">\n <div\n class=\"eui-notification-item-content-middle__label\"\n [ngClass]=\"{ 'eui-u-font-bold': !item.metadata || (item.metadata && !item.metadata.read) }\">\n {{ item.label | translate | euiTruncate: 200 }}\n </div>\n <div\n *ngIf=\"item.subLabel\"\n class=\"eui-notification-item-content-middle__sub-label\"\n [innerHTML]=\"item.subLabel | translate | euiTruncate: 200\"></div>\n </ng-template>\n </span>\n <div class=\"eui-notification-item-content-bottom\">\n <a\n class=\"eui-u-text-link\"\n *ngIf=\"isShowMarkAsRead && item.metadata && !item.metadata.read\"\n href=\"javascript:void(0)\"\n (click)=\"onItemMarkAsRead($event)\" tabIndex=\"0\">\n {{ markAsReadLabel ? markAsReadLabel : ('eui.NOTIFICATIONMARKASREAD' | translate) }}\n </a>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.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: "pipe", type: i1.DatePipe, name: "date" }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }, { kind: "pipe", type: i4.EuiTruncatePipe, name: "euiTruncate" }] }); }
|
37
37
|
}
|
38
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.
|
38
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: EuiNotificationItemV2Component, decorators: [{
|
39
39
|
type: Component,
|
40
40
|
args: [{ selector: 'eui-notification-item-v2', template: "<div\n class=\"eui-notification-item-content\"\n (click)=\"onItemClick()\"\n [ngClass]=\"{ 'eui-u-bg-color-white': item.metadata?.read || !item.metadata }\">\n <div class=\"eui-notification-item-content-top eui-u-font-s\">\n <div *ngIf=\"item.metadata?.date\" class=\"eui-notification-item-content-top__date\">\n <span class=\"eui-notification-item-content-top__date-icon eui-u-mr-s\">\n <!-- TODO v15 replace by eui-icon-svg -->\n <span\n class=\"eui-icon eui-icon-bell eui-u-font-m\"\n [ngClass]=\"{\n 'eui-u-color-info-lighter time__icon--rotated': !item.metadata?.read,\n 'eui-u-color-grey-20': item.metadata?.read\n }\"></span>\n <span\n *ngIf=\"item.metadata?.new\"\n class=\"eui-notification-item-content-top__date-dot eui-u-color-danger-light eui-u-font-s eui-icon eui-icon-circle\"></span>\n </span>\n <span class=\"eui-u-color-grey-dark\">{{ item.metadata?.date | date: dateFormat }}</span>\n </div>\n <div *ngIf=\"item.metadata?.important\" class=\"eui-u-font-bold eui-u-color-grey-dark\">\n <eui-icon-svg icon=\"eui-exclamation\" fillColor=\"danger\" class=\"eui-u-ml-xs\"></eui-icon-svg>\n </div>\n </div>\n <span class=\"eui-notification-item-content-middle eui-u-cursor-pointer\">\n <ng-template [ngIf]=\"item.metadata?.url\">\n <a href=\"{{ item.metadata.url }}\" tabIndex=\"0\">\n <div\n class=\"eui-notification-item-content-middle__label\"\n [ngClass]=\"{ 'eui-u-font-bold': !item.metadata || (item.metadata && !item.metadata.read) }\">\n {{ item.label | translate | euiTruncate: 200 }}\n </div>\n <div\n *ngIf=\"item.subLabel\"\n class=\"eui-notification-item-content-middle__sub-label\"\n [innerHTML]=\"item.subLabel | translate | euiTruncate: 200\"></div>\n </a>\n </ng-template>\n\n <ng-template [ngIf]=\"item.metadata?.urlExternal\">\n <a\n href=\"{{ item.metadata.urlExternal }}\"\n [target]=\"!item.metadata.urlExternalTarget ? '_black' : item.metadata.urlExternalTarget\" tabIndex=\"0\">\n <div\n class=\"eui-notification-item-content-middle__label\"\n [ngClass]=\"{ 'eui-u-font-bold': !item.metadata || (item.metadata && !item.metadata.read) }\">\n {{ item.label | translate | euiTruncate: 200 }}\n </div>\n <div\n *ngIf=\"item.subLabel\"\n class=\"eui-notification-item-content-middle__sub-label\"\n [innerHTML]=\"item.subLabel | translate | euiTruncate: 200\"></div>\n </a>\n </ng-template>\n\n <ng-template [ngIf]=\"!item.metadata?.url && !item.metadata?.urlExternal\">\n <div\n class=\"eui-notification-item-content-middle__label\"\n [ngClass]=\"{ 'eui-u-font-bold': !item.metadata || (item.metadata && !item.metadata.read) }\">\n {{ item.label | translate | euiTruncate: 200 }}\n </div>\n <div\n *ngIf=\"item.subLabel\"\n class=\"eui-notification-item-content-middle__sub-label\"\n [innerHTML]=\"item.subLabel | translate | euiTruncate: 200\"></div>\n </ng-template>\n </span>\n <div class=\"eui-notification-item-content-bottom\">\n <a\n class=\"eui-u-text-link\"\n *ngIf=\"isShowMarkAsRead && item.metadata && !item.metadata.read\"\n href=\"javascript:void(0)\"\n (click)=\"onItemMarkAsRead($event)\" tabIndex=\"0\">\n {{ markAsReadLabel ? markAsReadLabel : ('eui.NOTIFICATIONMARKASREAD' | translate) }}\n </a>\n </div>\n</div>\n" }]
|
41
41
|
}], propDecorators: { string: [{
|
@@ -165,12 +165,12 @@ export class EuiNotificationsV2Component {
|
|
165
165
|
});
|
166
166
|
return unreadNotifications.length;
|
167
167
|
}
|
168
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.
|
169
|
-
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.1", 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\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=\"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{cursor:pointer;margin-top:var(--eui-base-spacing-xs);margin-left:var(--eui-base-spacing-s)}.eui-notifications-v2__trigger:focus{outline:2px solid var(--eui-base-color-accessible-focus)!important;outline-offset:5px;-moz-outline-radius:var(--eui-base-border-radius)!important;transition:outline .15s ease-in-out,border .15s ease-in-out}.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: ["aria-label"] }, { kind: "component", type: i4.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.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 }); }
|
168
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: EuiNotificationsV2Component, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
169
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.2", 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: ["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
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.
|
171
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", 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\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=\"unreadSinceLastCheckCount\" euiSizeS euiDanger>{{ unreadSinceLastCheckCount }}</eui-badge>\n</eui-icon-svg
|
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{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"] }]
|
174
174
|
}], propDecorators: { refreshClick: [{
|
175
175
|
type: Output
|
176
176
|
}], notificationsClick: [{
|
@@ -243,4 +243,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.1", ngImpor
|
|
243
243
|
}], isShowRefreshButton: [{
|
244
244
|
type: Input
|
245
245
|
}] } });
|
246
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXVpLW5vdGlmaWNhdGlvbnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbGF5b3V0L2V1aS1ub3RpZmljYXRpb25zLXYyL2V1aS1ub3RpZmljYXRpb25zLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL2xheW91dC9ldWktbm90aWZpY2F0aW9ucy12Mi9ldWktbm90aWZpY2F0aW9ucy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osV0FBVyxFQUNYLEtBQUssRUFHTCxNQUFNLEVBRU4saUJBQWlCLEdBQ3BCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxZQUFZLEVBQWdCLE1BQU0sV0FBVyxDQUFDO0FBQ3ZELE9BQU8sRUFBRSxxQkFBcUIsRUFBZ0IsTUFBTSx1QkFBdUIsQ0FBQzs7Ozs7Ozs7QUFTNUUsTUFBTSxPQUFPLDJCQUEyQjtJQVB4QztRQVFjLGlCQUFZLEdBQXdCLElBQUksWUFBWSxFQUFTLENBQUM7UUFDOUQsdUJBQWtCLEdBQTZDLElBQUksWUFBWSxFQUE4QixDQUFDO1FBQzlHLGlCQUFZLEdBQXdCLElBQUksWUFBWSxFQUFTLENBQUM7UUFDeEUsd0VBQXdFO1FBQzlELHVCQUFrQixHQUE2QixJQUFJLFlBQVksRUFBYyxDQUFDO1FBQzlFLDZCQUF3QixHQUF1QixJQUFJLFlBQVksRUFBUSxDQUFDO1FBQ3hFLGNBQVMsR0FBK0IsSUFBSSxZQUFZLEVBQWdCLENBQUM7UUFDekUsd0JBQW1CLEdBQStCLElBQUksWUFBWSxFQUFnQixDQUFDO1FBRTdGLG9CQUFlLEdBQUcsS0FBSyxDQUFDO1FBQ3hCLDRCQUF1QixHQUFHLEVBQUUsQ0FBQztRQUM3Qix3QkFBbUIsR0FBRyxFQUFFLENBQUM7UUFDekIsd0JBQW1CLEdBQUcsRUFBRSxDQUFDO1FBQ3pCLFVBQUssR0FBUyxJQUFJLElB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O3NCQUQ3QixLQUFLO2dCQVNGLGlCQUFpQjtzQkFEcEIsS0FBSztnQkFTRix5QkFBeUI7c0JBRDVCLEtBQUs7Z0JBU0Ysb0JBQW9CO3NCQUR2QixLQUFLO2dCQVNGLG1CQUFtQjtzQkFEdEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBIb3N0QmluZGluZyxcbiAgICBJbnB1dCxcbiAgICBPbkNoYW5nZXMsXG4gICAgT25Jbml0LFxuICAgIE91dHB1dCxcbiAgICBTaW1wbGVDaGFuZ2VzLFxuICAgIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGNvbnN1bWVFdmVudCwgVXhMaW5rTGVnYWN5IH0gZnJvbSAnQGV1aS9jb3JlJztcbmltcG9ydCB7IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSwgQm9vbGVhbklucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdldWktbm90aWZpY2F0aW9ucy12MicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2V1aS1ub3RpZmljYXRpb25zLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9zdHlsZXMvX2luZGV4LnNjc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LkRlZmF1bHQsXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbn0pXG5leHBvcnQgY2xhc3MgRXVpTm90aWZpY2F0aW9uc1YyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xuICAgIEBPdXRwdXQoKSByZWZyZXNoQ2xpY2s6IEV2ZW50RW1pdHRlcjxFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPEV2ZW50PigpO1xuICAgIEBPdXRwdXQoKSBub3RpZmljYXRpb25zQ2xpY2s6IEV2ZW50RW1pdHRlcjxLZXlib2FyZEV2ZW50IHwgTW91c2VFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPEtleWJvYXJkRXZlbnQgfCBNb3VzZUV2ZW50PigpO1xuICAgIEBPdXRwdXQoKSB2aWV3QWxsQ2xpY2s6IEV2ZW50RW1pdHRlcjxFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPEV2ZW50PigpO1xuICAgIC8vIEBPdXRwdXQoKSBzZXR0aW5nc0NsaWNrOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICAgIEBPdXRwdXQoKSBtYXJrQWxsQXNSZWFkQ2xpY2s6IEV2ZW50RW1pdHRlcjxNb3VzZUV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8TW91c2VFdmVudD4oKTtcbiAgICBAT3V0cHV0KCkgbm9Ob3RpZmljYXRpb25Gb3VuZENsaWNrOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG4gICAgQE91dHB1dCgpIGl0ZW1DbGljazogRXZlbnRFbWl0dGVyPFV4TGlua0xlZ2FjeT4gPSBuZXcgRXZlbnRFbWl0dGVyPFV4TGlua0xlZ2FjeT4oKTtcbiAgICBAT3V0cHV0KCkgaXRlbU1hcmtBc1JlYWRDbGljazogRXZlbnRFbWl0dGVyPFV4TGlua0xlZ2FjeT4gPSBuZXcgRXZlbnRFbWl0dGVyPFV4TGlua0xlZ2FjeT4oKTtcblxuICAgIGlzT3ZlcmxheUFjdGl2ZSA9IGZhbHNlO1xuICAgIGN1cnJlbnREYXlOb3RpZmljYXRpb25zID0gW107XG4gICAgb2xkZXN0Tm90aWZpY2F0aW9ucyA9IFtdO1xuICAgIHVucmVhZE5vdGlmaWNhdGlvbnMgPSBbXTtcbiAgICB0b2RheTogRGF0ZSA9IG5ldyBEYXRlKCk7XG5cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzJykgc3RyaW5nID0gJ2V1aS1ub3RpZmljYXRpb25zLXYyJztcblxuICAgIEBJbnB1dCgpIGNvdW50OiBudW1iZXIgPSBudWxsO1xuICAgIEBJbnB1dCgpIHVucmVhZENvdW50OiBudW1iZXIgPSBudWxsO1xuICAgIEBJbnB1dCgpIHVucmVhZFNpbmNlTGFzdENoZWNrQ291bnQ6IG51bWJlciA9IG51bGw7XG4gICAgQElucHV0KCkgaXRlbXMgPSBbXTtcbiAgICBASW5wdXQoKSB1bnJlYWRMYWJlbDogc3RyaW5nID0gbnVsbDtcbiAgICBASW5wdXQoKSB0b3RhbExhYmVsOiBzdHJpbmcgPSBudWxsO1xuICAgIEBJbnB1dCgpIG1hcmtBc1JlYWRMYWJlbDogc3RyaW5nID0gbnVsbDtcbiAgICBASW5wdXQoKSBtYXJrQXNVblJlYWRMYWJlbDogc3RyaW5nID0gbnVsbDtcbiAgICBASW5wdXQoKSBtYXJrQWxsQXNSZWFkTGFiZWw6IHN0cmluZyA9IG51bGw7XG4gICAgQElucHV0KCkgc2V0dGluZ3NMYWJlbDogc3RyaW5nID0gbnVsbDtcbiAgICBASW5wdXQoKSByZWZyZXNoTGFiZWw6IHN0cmluZyA9IG51bGw7XG4gICAgQElucHV0KCkgdmlld0FsbE5vdGlmaWNhdGlvbnNMYWJlbDogc3RyaW5nID0gbnVsbDtcbiAgICBASW5wdXQoKSBoZWFkZXJUaXRsZUxhYmVsOiBzdHJpbmcgPSBudWxsO1xuICAgIEBJbnB1dCgpIGhlYWRlckhpZGVMYWJlbDogc3RyaW5nID0gbnVsbDtcbiAgICBASW5wdXQoKSBoZWFkZXJVbnJlYWRTaW5jZUxhc3RDaGVja0NvdW50TGFiZWw6IHN0cmluZyA9IG51bGw7XG4gICAgQElucHV0KCkgaGVhZGVyVW5yZWFkQ291bnRMYWJlbDogc3RyaW5nID0gbnVsbDtcbiAgICBASW5wdXQoKSBub05vdGlmaWNhdGlvbkZvdW5kTGFiZWw6IHN0cmluZyA9IG51bGw7XG4gICAgQElucHV0KCkgbmJVbnJlYWRDb3VudDogbnVtYmVyID0gbnVsbDtcbiAgICBASW5wdXQoKSBkYXRlRm9ybWF0ID0gJ2RkL01NL1lZWVknO1xuICAgIEBJbnB1dCgpXG4gICAgZ2V0IG5vTm90aWZpY2F0aW9uRm91bmRMaW5rKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fbm9Ob3RpZmljYXRpb25Gb3VuZExpbms7XG4gICAgfVxuICAgIHNldCBub05vdGlmaWNhdGlvbkZvdW5kTGluayh2YWx1ZTogQm9vbGVhbklucHV0KSB7XG4gICAgICAgIHRoaXMuX25vTm90aWZpY2F0aW9uRm91bmRMaW5rID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG4gICAgcHJpdmF0ZSBfbm9Ob3RpZmljYXRpb25Gb3VuZExpbmsgPSBmYWxzZTtcbiAgICBASW5wdXQoKVxuICAgIGdldCBpc1Nob3dNYXJrQXNSZWFkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5faXNTaG93TWFya0FzUmVhZDtcbiAgICB9XG4gICAgc2V0IGlzU2hvd01hcmtBc1JlYWQodmFsdWU6IEJvb2xlYW5JbnB1dCkge1xuICAgICAgICB0aGlzLl9pc1Nob3dNYXJrQXNSZWFkID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG4gICAgcHJpdmF0ZSBfaXNTaG93TWFya0FzUmVhZCA9IHRydWU7XG4gICAgQElucHV0KClcbiAgICBnZXQgaXNTaG93Vmlld0FsbEFjdGlvbigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2lzU2hvd1ZpZXdBbGxBY3Rpb247XG4gICAgfVxuICAgIHNldCBpc1Nob3dWaWV3QWxsQWN0aW9uKHZhbHVlOiBCb29sZWFuSW5wdXQpIHtcbiAgICAgICAgdGhpcy5faXNTaG93Vmlld0FsbEFjdGlvbiA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgfVxuICAgIHByaXZhdGUgX2lzU2hvd1ZpZXdBbGxBY3Rpb24gPSB0cnVlO1xuICAgIEBJbnB1dCgpXG4gICAgZ2V0IGlzSGlkZVBhbmVsT25WaWV3QWxsQWN0aW9uKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5faXNIaWRlUGFuZWxPblZpZXdBbGxBY3Rpb247XG4gICAgfVxuICAgIHNldCBpc0hpZGVQYW5lbE9uVmlld0FsbEFjdGlvbih2YWx1ZTogQm9vbGVhbklucHV0KSB7XG4gICAgICAgIHRoaXMuX2lzSGlkZVBhbmVsT25WaWV3QWxsQWN0aW9uID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG4gICAgcHJpdmF0ZSBfaXNIaWRlUGFuZWxPblZpZXdBbGxBY3Rpb24gPSB0cnVlO1xuICAgIEBJbnB1dCgpXG4gICAgZ2V0IGN1c3RvbVVucmVhZENvdW50KCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fY3VzdG9tVW5yZWFkQ291bnQ7XG4gICAgfVxuICAgIHNldCBjdXN0b21VbnJlYWRDb3VudCh2YWx1ZTogQm9vbGVhbklucHV0KSB7XG4gICAgICAgIHRoaXMuX2N1c3RvbVVucmVhZENvdW50ID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG4gICAgcHJpdmF0ZSBfY3VzdG9tVW5yZWFkQ291bnQgPSBmYWxzZTtcbiAgICBASW5wdXQoKVxuICAgIGdldCBpc1Nob3dNYXJrQWxsQXNSZWFkQnV0dG9uKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5faXNTaG93TWFya0FsbEFzUmVhZEJ1dHRvbjtcbiAgICB9XG4gICAgc2V0IGlzU2hvd01hcmtBbGxBc1JlYWRCdXR0b24odmFsdWU6IEJvb2xlYW5JbnB1dCkge1xuICAgICAgICB0aGlzLl9pc1Nob3dNYXJrQWxsQXNSZWFkQnV0dG9uID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG4gICAgcHJpdmF0ZSBfaXNTaG93TWFya0FsbEFzUmVhZEJ1dHRvbiA9IHRydWU7XG4gICAgQElucHV0KClcbiAgICBnZXQgaXNTaG93U2V0dGluZ3NCdXR0b24oKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9pc1Nob3dTZXR0aW5nc0J1dHRvbjtcbiAgICB9XG4gICAgc2V0IGlzU2hvd1NldHRpbmdzQnV0dG9uKHZhbHVlOiBCb29sZWFuSW5wdXQpIHtcbiAgICAgICAgdGhpcy5faXNTaG93U2V0dGluZ3NCdXR0b24gPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIH1cbiAgICBwcml2YXRlIF9pc1Nob3dTZXR0aW5nc0J1dHRvbiA9IHRydWU7XG4gICAgQElucHV0KClcbiAgICBnZXQgaXNTaG93UmVmcmVzaEJ1dHRvbigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2lzU2hvd1JlZnJlc2hCdXR0b247XG4gICAgfVxuICAgIHNldCBpc1Nob3dSZWZyZXNoQnV0dG9uKHZhbHVlOiBCb29sZWFuSW5wdXQpIHtcbiAgICAgICAgdGhpcy5faXNTaG93UmVmcmVzaEJ1dHRvbiA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgfVxuICAgIHByaXZhdGUgX2lzU2hvd1JlZnJlc2hCdXR0b24gPSB0cnVlO1xuXG4gICAgb25IaWRlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmlzT3ZlcmxheUFjdGl2ZSA9IGZhbHNlO1xuICAgIH1cblxuICAgIC8vIFRPRE86IGZpbmQgdGhlIGNvcnJlY3QgdHlwZSBvciB0dXJuIGludG8gYSBnZW5lcmljLCBodHRwczovL3d3dy50eXBlc2NyaXB0bGFuZy5vcmcvZG9jcy9oYW5kYm9vay8yL2dlbmVyaWNzLmh0bWxcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgIG9uQ2xpY2tlZChldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5ub3RpZmljYXRpb25zQ2xpY2suZW1pdCgpO1xuICAgICAgICBjb25zdW1lRXZlbnQoZXZlbnQpO1xuICAgICAgICB0aGlzLmlzT3ZlcmxheUFjdGl2ZSA9ICF0aGlzLmlzT3ZlcmxheUFjdGl2ZTtcbiAgICB9XG5cbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgICAgIGlmIChjaGFuZ2VzLmN1c3RvbVVucmVhZENvdW50KSB7XG4gICAgICAgICAgICBjb25zdCBjdXN0b21VbnJlYWRDb3VudCA9IGNoYW5nZXMuY3VzdG9tVW5yZWFkQ291bnQuY3VycmVudFZhbHVlO1xuICAgICAgICAgICAgaWYgKCFjdXN0b21VbnJlYWRDb3VudCkge1xuICAgICAgICAgICAgICAgIHRoaXMubmJVbnJlYWRDb3VudCA9IHRoaXMuX2dldFVucmVhZENvdW50KCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLmN1c3RvbVVucmVhZENvdW50KSB7XG4gICAgICAgICAgICB0aGlzLm5iVW5yZWFkQ291bnQgPSB0aGlzLl9nZXRVbnJlYWRDb3VudCgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25SZWZyZXNoKGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgICAgICB0aGlzLnJlZnJlc2hDbGljay5lbWl0KCk7XG4gICAgICAgIGNvbnN1bWVFdmVudChldmVudCk7XG4gICAgfVxuXG4gICAgLy8gVE9ETzogZmluZCB0aGUgY29ycmVjdCB0eXBlIG9yIHR1cm4gaW50byBhIGdlbmVyaWMsIGh0dHBzOi8vd3d3LnR5cGVzY3JpcHRsYW5nLm9yZy9kb2NzL2hhbmRib29rLzIvZ2VuZXJpY3MuaHRtbFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgb25JdGVtQ2xpY2sobGluazogVXhMaW5rTGVnYWN5KTogdm9pZCB7XG4gICAgICAgIHRoaXMuaXRlbUNsaWNrLmVtaXQobGluayk7XG4gICAgICAgIGNvbnN1bWVFdmVudChldmVudCk7XG4gICAgfVxuXG4gICAgb25WaWV3QWxsQ2xpY2soZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgICAgIHRoaXMudmlld0FsbENsaWNrLmVtaXQoKTtcbiAgICAgICAgaWYgKCF0aGlzLmlzSGlkZVBhbmVsT25WaWV3QWxsQWN0aW9uKSB7XG4gICAgICAgICAgICBjb25zdW1lRXZlbnQoZXZlbnQpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25Ob05vdGlmaWNhdGlvbkZvdW5kQ2xpY2soKTogdm9pZCB7XG4gICAgICAgIHRoaXMubm9Ob3RpZmljYXRpb25Gb3VuZENsaWNrLmVtaXQoKTtcbiAgICB9XG5cbiAgICAvLyBUT0RPOiBmaW5kIHRoZSBjb3JyZWN0IHR5cGUgb3IgdHVybiBpbnRvIGEgZ2VuZXJpYywgaHR0cHM6Ly93d3cudHlwZXNjcmlwdGxhbmcub3JnL2RvY3MvaGFuZGJvb2svMi9nZW5lcmljcy5odG1sXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICBvbkl0ZW1NYXJrQXNSZWFkKGxpbms6IFV4TGlua0xlZ2FjeSk6IHZvaWQge1xuICAgICAgICB0aGlzLml0ZW1NYXJrQXNSZWFkQ2xpY2suZW1pdChsaW5rKTtcbiAgICB9XG5cbiAgICBvbk1hcmtBbGxBc1JlYWQoZTogTW91c2VFdmVudCk6IHZvaWQge1xuICAgICAgICB0aGlzLm1hcmtBbGxBc1JlYWRDbGljay5lbWl0KGUpO1xuICAgICAgICBjb25zdW1lRXZlbnQoZSk7XG4gICAgfVxuXG4gICAgLy8gVE9ETzogZmluZCB0aGUgY29ycmVjdCB0eXBlIG9yIHR1cm4gaW50byBhIGdlbmVyaWMsIGh0dHBzOi8vd3d3LnR5cGVzY3JpcHRsYW5nLm9yZy9kb2NzL2hhbmRib29rLzIvZ2VuZXJpY3MuaHRtbFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgdHJhY2tCeUZuKGluZGV4OiBudW1iZXIsIGl0ZW06IGFueSk6IHZvaWQge1xuICAgICAgICByZXR1cm4gaXRlbS5pZDtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9nZXRVbnJlYWRDb3VudCgpOiBudW1iZXIge1xuICAgICAgICBjb25zdCB1bnJlYWROb3RpZmljYXRpb25zID0gdGhpcy5pdGVtcy5maWx0ZXIoKGxpbmspID0+IHtcbiAgICAgICAgICAgIGlmIChsaW5rLm1ldGFkYXRhKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGxpbmsubWV0YWRhdGEucmVhZCA9PT0gZmFsc2U7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gdW5yZWFkTm90aWZpY2F0aW9ucy5sZW5ndGg7XG4gICAgfVxufVxuIiwiPGV1aS1pY29uLXN2Z1xuICAgIGNsYXNzPVwiZXVpLW5vdGlmaWNhdGlvbnMtdjJfX3RyaWdnZXJcIlxuICAgIHJvbGU9XCJidXR0b25cIlxuICAgIHNpemU9XCJtXCJcbiAgICBpY29uPVwiZXVpLW5vdGlmaWNhdGlvbnNcIlxuICAgIGZpbGxDb2xvcj1cImdyZXktNVwiXG4gICAgKGNsaWNrKT1cIm9uQ2xpY2tlZCgkZXZlbnQpXCJcbiAgICAoa2V5ZG93bi5lbnRlcik9XCJvbkNsaWNrZWQoJGV2ZW50KVwiXG4gICAgKGtleWRvd24uZXNjKT1cIm9uSGlkZSgpXCJcbiAgICB0YWJpbmRleD1cIjBcIj5cbiAgICA8ZXVpLWJhZGdlICpuZ0lmPVwidW5yZWFkU2luY2VMYXN0Q2hlY2tDb3VudFwiIGV1aVNpemVTIGV1aURhbmdlcj57eyB1bnJlYWRTaW5jZUxhc3RDaGVja0NvdW50IH19PC9ldWktYmFkZ2U+XG48L2V1aS1pY29uLXN2Zz5cblxuPGV1aS1vdmVybGF5IFtpc0FjdGl2ZV09XCJpc092ZXJsYXlBY3RpdmVcIiBjbGFzcz1cImV1aS1vdmVybGF5LW9mZnNldC0td2lkdGgtMzBcIj5cbiAgICA8ZXVpLW92ZXJsYXktaGVhZGVyPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZXVpLW5vdGlmaWNhdGlvbnMtdjJfX2hlYWRlclwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImV1aS1ub3RpZmljYXRpb25zLXYyX19oZWFkZXItdGl0bGVcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZXVpLW5vdGlmaWNhdGlvbnMtdjJfX2hlYWRlci10aXRsZS1sYWJlbFwiPlxuICAgICAgICAgICAgICAgICAgICB7eyBoZWFkZXJUaXRsZUxhYmVsID8gaGVhZGVyVGl0bGVMYWJlbCA6ICgnZXVpLk1ZTk9USUZJQ0FUSU9OUycgfCB0cmFuc2xhdGUpIH19XG4gICAgICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZXVpLW5vdGlmaWNhdGlvbnMtdjJfX2hlYWRlci10aXRsZS1hY3Rpb25zXCI+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiaGlkZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGEgKGNsaWNrKT1cIm9uSGlkZSgpXCIgY2xhc3M9XCJldWktdS10ZXh0LWxpbmtcIiByb2xlPVwiYnV0dG9uXCIgdGFiSW5kZXg9XCIwXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgaGVhZGVySGlkZUxhYmVsID8gaGVhZGVySGlkZUxhYmVsIDogKCdldWkuSElERScgfCB0cmFuc2xhdGUpIH19XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1sLTIgZXVpLXUtZm9udC14cyBldWktaWNvbiBldWktaWNvbi1jaGV2cm9uLXJpZ2h0XCI+PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImV1aS1ub3RpZmljYXRpb25zLXYyX19oZWFkZXItc3ViaW5mb3MtYmFyXCI+XG4gICAgICAgICAgICAgICAgPHN0cm9uZz57eyB1bnJlYWRTaW5jZUxhc3RDaGVja0NvdW50IH19PC9zdHJvbmc+XG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJldWktdS1tbC14c1wiPnt7XG4gICAgICAgICAgICAgICAgICAgIGhlYWRlclVucmVhZFNpbmNlTGFzdENoZWNrQ291bnRMYWJlbCA/IGhlYWRlclVucmVhZFNpbmNlTGFzdENoZWNrQ291bnRMYWJlbCA6ICgnZXVpLk5FVy1DT1VOVCcgfCB0cmFuc2xhdGUpXG4gICAgICAgICAgICAgICAgfX08L3NwYW4+XG5cbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImV1aS11LW1sLXhzXCI+fDwvc3Bhbj5cblxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZXVpLXUtbWwteHNcIj57eyB1bnJlYWRDb3VudCB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImV1aS11LW1sLXhzXCI+e3sgaGVhZGVyVW5yZWFkQ291bnRMYWJlbCA/IGhlYWRlclVucmVhZENvdW50TGFiZWwgOiAoJ2V1aS5ORVctQ09VTlQnIHwgdHJhbnNsYXRlKSB9fTwvc3Bhbj5cbiAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZXVpLW5vdGlmaWNhdGlvbnMtdjJfX2hlYWRlci1zdWJhY3Rpb25zLWJhclwiPlxuICAgICAgICAgICAgICAgIDxhICpuZ0lmPVwiaXRlbXMubGVuZ3RoID4gMFwiIChjbGljayk9XCJvbk1hcmtBbGxBc1JlYWQoJGV2ZW50KVwiIGNsYXNzPVwiZXVpLXUtdGV4dC1saW5rXCIgdGFiSW5kZXg9XCIwXCI+XG4gICAgICAgICAgICAgICAgICAgIHt7ICdub3RpZi5NQVJLLUFMTC1SRUFEJyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgICA8YSAoY2xpY2spPVwib25SZWZyZXNoKCRldmVudClcIiBjbGFzcz1cImV1aS11LXRleHQtbGluayBldWktdS1tbC1hdXRvXCIgdGFiSW5kZXg9XCIwXCI+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZXVpLXUtZmxleFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJldWktaWNvbiBldWktaWNvbi1yZWZyZXNoIG1yLTFcIj48L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICB7eyAnbm90aWYuU1YtUkVGUkVTSCcgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2V1aS1vdmVybGF5LWhlYWRlcj5cblxuICAgIDxldWktb3ZlcmxheS1ib2R5PlxuICAgICAgICA8dWwgY2xhc3M9XCJldWktbm90aWZpY2F0aW9ucy1pdGVtc1wiICpuZ0lmPVwiaXRlbXNcIj5cbiAgICAgICAgICAgIDxldWktbm90aWZpY2F0aW9uLWl0ZW0tdjJcbiAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgaXRlbSBvZiBpdGVtczsgdHJhY2tCeTogdHJhY2tCeUZuXCJcbiAgICAgICAgICAgICAgICBbaXRlbV09XCJpdGVtXCJcbiAgICAgICAgICAgICAgICBbZGF0ZUZvcm1hdF09XCJkYXRlRm9ybWF0XCJcbiAgICAgICAgICAgICAgICBbbWFya0FzUmVhZExhYmVsXT1cIm1hcmtBc1JlYWRMYWJlbFwiXG4gICAgICAgICAgICAgICAgW2lzU2hvd01hcmtBc1JlYWRdPVwiaXNTaG93TWFya0FzUmVhZFwiXG4gICAgICAgICAgICAgICAgKGl0ZW1DbGljayk9XCJvbkl0ZW1DbGljaygkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAoaXRlbU1hcmtBc1JlYWQpPVwib25JdGVtTWFya0FzUmVhZCgkZXZlbnQpXCI+XG4gICAgICAgICAgICA8L2V1aS1ub3RpZmljYXRpb24taXRlbS12Mj5cbiAgICAgICAgPC91bD5cbiAgICA8L2V1aS1vdmVybGF5LWJvZHk+XG5cbiAgICA8ZXVpLW92ZXJsYXktZm9vdGVyPlxuICAgICAgICA8bmctdGVtcGxhdGUgW25nSWZdPVwiaXRlbXM/Lmxlbmd0aCA+IDBcIj5cbiAgICAgICAgICAgIDxzdHJvbmdcbiAgICAgICAgICAgICAgICA+PGEgKGNsaWNrKT1cIm9uVmlld0FsbENsaWNrKCRldmVudClcIiBjbGFzcz1cImV1aS11LXRleHQtbGlua1wiPnt7XG4gICAgICAgICAgICAgICAgICAgIHZpZXdBbGxOb3RpZmljYXRpb25zTGFiZWwgPyB2aWV3QWxsTm90aWZpY2F0aW9uc0xhYmVsIDogKCdldWkuVklFV0FMTE5PVElGSUNBVElPTlMnIHwgdHJhbnNsYXRlKVxuICAgICAgICAgICAgICAgIH19PC9hPjwvc3Ryb25nXG4gICAgICAgICAgICA+XG4gICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIDxuZy10ZW1wbGF0ZSBbbmdJZl09XCJpdGVtcz8ubGVuZ3RoID09PSAwXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidXgtbm90aWZpY2F0aW9uX19pdGVtLWNvbnRlbnRcIiAqbmdJZj1cIiFub05vdGlmaWNhdGlvbkZvdW5kTGlua1wiPlxuICAgICAgICAgICAgICAgIHt7IG5vTm90aWZpY2F0aW9uRm91bmRMYWJlbCA/IG5vTm90aWZpY2F0aW9uRm91bmRMYWJlbCA6ICgnZXVpLk5PTk9USUZJQ0FUSU9ORk9VTkQnIHwgdHJhbnNsYXRlKSB9fVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidXgtbm90aWZpY2F0aW9uX19pdGVtLWNvbnRlbnRcIiAqbmdJZj1cIm5vTm90aWZpY2F0aW9uRm91bmRMaW5rXCI+XG4gICAgICAgICAgICAgICAgPHN0cm9uZ1xuICAgICAgICAgICAgICAgICAgICA+PGEgKGNsaWNrKT1cIm9uTm9Ob3RpZmljYXRpb25Gb3VuZENsaWNrKClcIiBjbGFzcz1cImV1aS11LXRleHQtbGlua1wiPnt7XG4gICAgICAgICAgICAgICAgICAgICAgICBub05vdGlmaWNhdGlvbkZvdW5kTGFiZWwgPyBub05vdGlmaWNhdGlvbkZvdW5kTGFiZWwgOiAoJ2V1aS5OT05PVElGSUNBVElPTkZPVU5EJyB8IHRyYW5zbGF0ZSlcbiAgICAgICAgICAgICAgICAgICAgfX08L2E+PC9zdHJvbmdcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L2V1aS1vdmVybGF5LWZvb3Rlcj5cbjwvZXVpLW92ZXJsYXk+XG4iXX0=
|
246
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXVpLW5vdGlmaWNhdGlvbnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbGF5b3V0L2V1aS1ub3RpZmljYXRpb25zLXYyL2V1aS1ub3RpZmljYXRpb25zLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL2xheW91dC9ldWktbm90aWZpY2F0aW9ucy12Mi9ldWktbm90aWZpY2F0aW9ucy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osV0FBVyxFQUNYLEtBQUssRUFHTCxNQUFNLEVBRU4saUJBQWlCLEdBQ3BCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxZQUFZLEVBQWdCLE1BQU0sV0FBVyxDQUFDO0FBQ3ZELE9BQU8sRUFBRSxxQkFBcUIsRUFBZ0IsTUFBTSx1QkFBdUIsQ0FBQzs7Ozs7Ozs7QUFTNUUsTUFBTSxPQUFPLDJCQUEyQjtJQVB4QztRQVFjLGlCQUFZLEdBQXdCLElBQUksWUFBWSxFQUFTLENBQUM7UUFDOUQsdUJBQWtCLEdBQTZDLElBQUksWUFBWSxFQUE4QixDQUFDO1FBQzlHLGlCQUFZLEdBQXdCLElBQUksWUFBWSxFQUFTLENBQUM7UUFDeEUsd0VBQXdFO1FBQzlELHVCQUFrQixHQUE2QixJQUFJLFlBQVksRUFBYyxDQUFDO1FBQzlFLDZCQUF3QixHQUF1QixJQUFJLFlBQVksRUFBUSxDQUFDO1FBQ3hFLGNBQVMsR0FBK0IsSUFBSSxZQUFZLEVBQWdCLENBQUM7UUFDekUsd0JBQW1CLEdBQStCLElBQUksWUFBWSxFQUFnQixDQUFDO1FBRTdGLG9CQUFlLEdBQUcsS0FBSyxDQUFDO1FBQ3hCLDRCQUF1QixHQUFHLEVBQUUsQ0FBQztRQUM3Qix3QkFBbUIsR0FBRyxFQUFFLENBQUM7UUFDekIsd0JBQW1CLEdBQUcsRUFBRSxDQUFDO1FBQ3pCLFVBQUssR0FBUyxJQUFJLElB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O3NCQUQ3QixLQUFLO2dCQVNGLGlCQUFpQjtzQkFEcEIsS0FBSztnQkFTRix5QkFBeUI7c0JBRDVCLEtBQUs7Z0JBU0Ysb0JBQW9CO3NCQUR2QixLQUFLO2dCQVNGLG1CQUFtQjtzQkFEdEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBIb3N0QmluZGluZyxcbiAgICBJbnB1dCxcbiAgICBPbkNoYW5nZXMsXG4gICAgT25Jbml0LFxuICAgIE91dHB1dCxcbiAgICBTaW1wbGVDaGFuZ2VzLFxuICAgIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGNvbnN1bWVFdmVudCwgVXhMaW5rTGVnYWN5IH0gZnJvbSAnQGV1aS9jb3JlJztcbmltcG9ydCB7IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSwgQm9vbGVhbklucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdldWktbm90aWZpY2F0aW9ucy12MicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2V1aS1ub3RpZmljYXRpb25zLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9zdHlsZXMvX2luZGV4LnNjc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LkRlZmF1bHQsXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbn0pXG5leHBvcnQgY2xhc3MgRXVpTm90aWZpY2F0aW9uc1YyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xuICAgIEBPdXRwdXQoKSByZWZyZXNoQ2xpY2s6IEV2ZW50RW1pdHRlcjxFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPEV2ZW50PigpO1xuICAgIEBPdXRwdXQoKSBub3RpZmljYXRpb25zQ2xpY2s6IEV2ZW50RW1pdHRlcjxLZXlib2FyZEV2ZW50IHwgTW91c2VFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPEtleWJvYXJkRXZlbnQgfCBNb3VzZUV2ZW50PigpO1xuICAgIEBPdXRwdXQoKSB2aWV3QWxsQ2xpY2s6IEV2ZW50RW1pdHRlcjxFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPEV2ZW50PigpO1xuICAgIC8vIEBPdXRwdXQoKSBzZXR0aW5nc0NsaWNrOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICAgIEBPdXRwdXQoKSBtYXJrQWxsQXNSZWFkQ2xpY2s6IEV2ZW50RW1pdHRlcjxNb3VzZUV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8TW91c2VFdmVudD4oKTtcbiAgICBAT3V0cHV0KCkgbm9Ob3RpZmljYXRpb25Gb3VuZENsaWNrOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG4gICAgQE91dHB1dCgpIGl0ZW1DbGljazogRXZlbnRFbWl0dGVyPFV4TGlua0xlZ2FjeT4gPSBuZXcgRXZlbnRFbWl0dGVyPFV4TGlua0xlZ2FjeT4oKTtcbiAgICBAT3V0cHV0KCkgaXRlbU1hcmtBc1JlYWRDbGljazogRXZlbnRFbWl0dGVyPFV4TGlua0xlZ2FjeT4gPSBuZXcgRXZlbnRFbWl0dGVyPFV4TGlua0xlZ2FjeT4oKTtcblxuICAgIGlzT3ZlcmxheUFjdGl2ZSA9IGZhbHNlO1xuICAgIGN1cnJlbnREYXlOb3RpZmljYXRpb25zID0gW107XG4gICAgb2xkZXN0Tm90aWZpY2F0aW9ucyA9IFtdO1xuICAgIHVucmVhZE5vdGlmaWNhdGlvbnMgPSBbXTtcbiAgICB0b2RheTogRGF0ZSA9IG5ldyBEYXRlKCk7XG5cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzJykgc3RyaW5nID0gJ2V1aS1ub3RpZmljYXRpb25zLXYyJztcblxuICAgIEBJbnB1dCgpIGNvdW50OiBudW1iZXIgPSBudWxsO1xuICAgIEBJbnB1dCgpIHVucmVhZENvdW50OiBudW1iZXIgPSBudWxsO1xuICAgIEBJbnB1dCgpIHVucmVhZFNpbmNlTGFzdENoZWNrQ291bnQ6IG51bWJlciA9IG51bGw7XG4gICAgQElucHV0KCkgaXRlbXMgPSBbXTtcbiAgICBASW5wdXQoKSB1bnJlYWRMYWJlbDogc3RyaW5nID0gbnVsbDtcbiAgICBASW5wdXQoKSB0b3RhbExhYmVsOiBzdHJpbmcgPSBudWxsO1xuICAgIEBJbnB1dCgpIG1hcmtBc1JlYWRMYWJlbDogc3RyaW5nID0gbnVsbDtcbiAgICBASW5wdXQoKSBtYXJrQXNVblJlYWRMYWJlbDogc3RyaW5nID0gbnVsbDtcbiAgICBASW5wdXQoKSBtYXJrQWxsQXNSZWFkTGFiZWw6IHN0cmluZyA9IG51bGw7XG4gICAgQElucHV0KCkgc2V0dGluZ3NMYWJlbDogc3RyaW5nID0gbnVsbDtcbiAgICBASW5wdXQoKSByZWZyZXNoTGFiZWw6IHN0cmluZyA9IG51bGw7XG4gICAgQElucHV0KCkgdmlld0FsbE5vdGlmaWNhdGlvbnNMYWJlbDogc3RyaW5nID0gbnVsbDtcbiAgICBASW5wdXQoKSBoZWFkZXJUaXRsZUxhYmVsOiBzdHJpbmcgPSBudWxsO1xuICAgIEBJbnB1dCgpIGhlYWRlckhpZGVMYWJlbDogc3RyaW5nID0gbnVsbDtcbiAgICBASW5wdXQoKSBoZWFkZXJVbnJlYWRTaW5jZUxhc3RDaGVja0NvdW50TGFiZWw6IHN0cmluZyA9IG51bGw7XG4gICAgQElucHV0KCkgaGVhZGVyVW5yZWFkQ291bnRMYWJlbDogc3RyaW5nID0gbnVsbDtcbiAgICBASW5wdXQoKSBub05vdGlmaWNhdGlvbkZvdW5kTGFiZWw6IHN0cmluZyA9IG51bGw7XG4gICAgQElucHV0KCkgbmJVbnJlYWRDb3VudDogbnVtYmVyID0gbnVsbDtcbiAgICBASW5wdXQoKSBkYXRlRm9ybWF0ID0gJ2RkL01NL1lZWVknO1xuICAgIEBJbnB1dCgpXG4gICAgZ2V0IG5vTm90aWZpY2F0aW9uRm91bmRMaW5rKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fbm9Ob3RpZmljYXRpb25Gb3VuZExpbms7XG4gICAgfVxuICAgIHNldCBub05vdGlmaWNhdGlvbkZvdW5kTGluayh2YWx1ZTogQm9vbGVhbklucHV0KSB7XG4gICAgICAgIHRoaXMuX25vTm90aWZpY2F0aW9uRm91bmRMaW5rID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG4gICAgcHJpdmF0ZSBfbm9Ob3RpZmljYXRpb25Gb3VuZExpbmsgPSBmYWxzZTtcbiAgICBASW5wdXQoKVxuICAgIGdldCBpc1Nob3dNYXJrQXNSZWFkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5faXNTaG93TWFya0FzUmVhZDtcbiAgICB9XG4gICAgc2V0IGlzU2hvd01hcmtBc1JlYWQodmFsdWU6IEJvb2xlYW5JbnB1dCkge1xuICAgICAgICB0aGlzLl9pc1Nob3dNYXJrQXNSZWFkID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG4gICAgcHJpdmF0ZSBfaXNTaG93TWFya0FzUmVhZCA9IHRydWU7XG4gICAgQElucHV0KClcbiAgICBnZXQgaXNTaG93Vmlld0FsbEFjdGlvbigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2lzU2hvd1ZpZXdBbGxBY3Rpb247XG4gICAgfVxuICAgIHNldCBpc1Nob3dWaWV3QWxsQWN0aW9uKHZhbHVlOiBCb29sZWFuSW5wdXQpIHtcbiAgICAgICAgdGhpcy5faXNTaG93Vmlld0FsbEFjdGlvbiA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgfVxuICAgIHByaXZhdGUgX2lzU2hvd1ZpZXdBbGxBY3Rpb24gPSB0cnVlO1xuICAgIEBJbnB1dCgpXG4gICAgZ2V0IGlzSGlkZVBhbmVsT25WaWV3QWxsQWN0aW9uKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5faXNIaWRlUGFuZWxPblZpZXdBbGxBY3Rpb247XG4gICAgfVxuICAgIHNldCBpc0hpZGVQYW5lbE9uVmlld0FsbEFjdGlvbih2YWx1ZTogQm9vbGVhbklucHV0KSB7XG4gICAgICAgIHRoaXMuX2lzSGlkZVBhbmVsT25WaWV3QWxsQWN0aW9uID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG4gICAgcHJpdmF0ZSBfaXNIaWRlUGFuZWxPblZpZXdBbGxBY3Rpb24gPSB0cnVlO1xuICAgIEBJbnB1dCgpXG4gICAgZ2V0IGN1c3RvbVVucmVhZENvdW50KCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fY3VzdG9tVW5yZWFkQ291bnQ7XG4gICAgfVxuICAgIHNldCBjdXN0b21VbnJlYWRDb3VudCh2YWx1ZTogQm9vbGVhbklucHV0KSB7XG4gICAgICAgIHRoaXMuX2N1c3RvbVVucmVhZENvdW50ID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG4gICAgcHJpdmF0ZSBfY3VzdG9tVW5yZWFkQ291bnQgPSBmYWxzZTtcbiAgICBASW5wdXQoKVxuICAgIGdldCBpc1Nob3dNYXJrQWxsQXNSZWFkQnV0dG9uKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5faXNTaG93TWFya0FsbEFzUmVhZEJ1dHRvbjtcbiAgICB9XG4gICAgc2V0IGlzU2hvd01hcmtBbGxBc1JlYWRCdXR0b24odmFsdWU6IEJvb2xlYW5JbnB1dCkge1xuICAgICAgICB0aGlzLl9pc1Nob3dNYXJrQWxsQXNSZWFkQnV0dG9uID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG4gICAgcHJpdmF0ZSBfaXNTaG93TWFya0FsbEFzUmVhZEJ1dHRvbiA9IHRydWU7XG4gICAgQElucHV0KClcbiAgICBnZXQgaXNTaG93U2V0dGluZ3NCdXR0b24oKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9pc1Nob3dTZXR0aW5nc0J1dHRvbjtcbiAgICB9XG4gICAgc2V0IGlzU2hvd1NldHRpbmdzQnV0dG9uKHZhbHVlOiBCb29sZWFuSW5wdXQpIHtcbiAgICAgICAgdGhpcy5faXNTaG93U2V0dGluZ3NCdXR0b24gPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIH1cbiAgICBwcml2YXRlIF9pc1Nob3dTZXR0aW5nc0J1dHRvbiA9IHRydWU7XG4gICAgQElucHV0KClcbiAgICBnZXQgaXNTaG93UmVmcmVzaEJ1dHRvbigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2lzU2hvd1JlZnJlc2hCdXR0b247XG4gICAgfVxuICAgIHNldCBpc1Nob3dSZWZyZXNoQnV0dG9uKHZhbHVlOiBCb29sZWFuSW5wdXQpIHtcbiAgICAgICAgdGhpcy5faXNTaG93UmVmcmVzaEJ1dHRvbiA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgfVxuICAgIHByaXZhdGUgX2lzU2hvd1JlZnJlc2hCdXR0b24gPSB0cnVlO1xuXG4gICAgb25IaWRlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmlzT3ZlcmxheUFjdGl2ZSA9IGZhbHNlO1xuICAgIH1cblxuICAgIC8vIFRPRE86IGZpbmQgdGhlIGNvcnJlY3QgdHlwZSBvciB0dXJuIGludG8gYSBnZW5lcmljLCBodHRwczovL3d3dy50eXBlc2NyaXB0bGFuZy5vcmcvZG9jcy9oYW5kYm9vay8yL2dlbmVyaWNzLmh0bWxcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgIG9uQ2xpY2tlZChldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5ub3RpZmljYXRpb25zQ2xpY2suZW1pdCgpO1xuICAgICAgICBjb25zdW1lRXZlbnQoZXZlbnQpO1xuICAgICAgICB0aGlzLmlzT3ZlcmxheUFjdGl2ZSA9ICF0aGlzLmlzT3ZlcmxheUFjdGl2ZTtcbiAgICB9XG5cbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgICAgIGlmIChjaGFuZ2VzLmN1c3RvbVVucmVhZENvdW50KSB7XG4gICAgICAgICAgICBjb25zdCBjdXN0b21VbnJlYWRDb3VudCA9IGNoYW5nZXMuY3VzdG9tVW5yZWFkQ291bnQuY3VycmVudFZhbHVlO1xuICAgICAgICAgICAgaWYgKCFjdXN0b21VbnJlYWRDb3VudCkge1xuICAgICAgICAgICAgICAgIHRoaXMubmJVbnJlYWRDb3VudCA9IHRoaXMuX2dldFVucmVhZENvdW50KCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLmN1c3RvbVVucmVhZENvdW50KSB7XG4gICAgICAgICAgICB0aGlzLm5iVW5yZWFkQ291bnQgPSB0aGlzLl9nZXRVbnJlYWRDb3VudCgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25SZWZyZXNoKGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgICAgICB0aGlzLnJlZnJlc2hDbGljay5lbWl0KCk7XG4gICAgICAgIGNvbnN1bWVFdmVudChldmVudCk7XG4gICAgfVxuXG4gICAgLy8gVE9ETzogZmluZCB0aGUgY29ycmVjdCB0eXBlIG9yIHR1cm4gaW50byBhIGdlbmVyaWMsIGh0dHBzOi8vd3d3LnR5cGVzY3JpcHRsYW5nLm9yZy9kb2NzL2hhbmRib29rLzIvZ2VuZXJpY3MuaHRtbFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgb25JdGVtQ2xpY2sobGluazogVXhMaW5rTGVnYWN5KTogdm9pZCB7XG4gICAgICAgIHRoaXMuaXRlbUNsaWNrLmVtaXQobGluayk7XG4gICAgICAgIGNvbnN1bWVFdmVudChldmVudCk7XG4gICAgfVxuXG4gICAgb25WaWV3QWxsQ2xpY2soZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgICAgIHRoaXMudmlld0FsbENsaWNrLmVtaXQoKTtcbiAgICAgICAgaWYgKCF0aGlzLmlzSGlkZVBhbmVsT25WaWV3QWxsQWN0aW9uKSB7XG4gICAgICAgICAgICBjb25zdW1lRXZlbnQoZXZlbnQpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25Ob05vdGlmaWNhdGlvbkZvdW5kQ2xpY2soKTogdm9pZCB7XG4gICAgICAgIHRoaXMubm9Ob3RpZmljYXRpb25Gb3VuZENsaWNrLmVtaXQoKTtcbiAgICB9XG5cbiAgICAvLyBUT0RPOiBmaW5kIHRoZSBjb3JyZWN0IHR5cGUgb3IgdHVybiBpbnRvIGEgZ2VuZXJpYywgaHR0cHM6Ly93d3cudHlwZXNjcmlwdGxhbmcub3JnL2RvY3MvaGFuZGJvb2svMi9nZW5lcmljcy5odG1sXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICBvbkl0ZW1NYXJrQXNSZWFkKGxpbms6IFV4TGlua0xlZ2FjeSk6IHZvaWQge1xuICAgICAgICB0aGlzLml0ZW1NYXJrQXNSZWFkQ2xpY2suZW1pdChsaW5rKTtcbiAgICB9XG5cbiAgICBvbk1hcmtBbGxBc1JlYWQoZTogTW91c2VFdmVudCk6IHZvaWQge1xuICAgICAgICB0aGlzLm1hcmtBbGxBc1JlYWRDbGljay5lbWl0KGUpO1xuICAgICAgICBjb25zdW1lRXZlbnQoZSk7XG4gICAgfVxuXG4gICAgLy8gVE9ETzogZmluZCB0aGUgY29ycmVjdCB0eXBlIG9yIHR1cm4gaW50byBhIGdlbmVyaWMsIGh0dHBzOi8vd3d3LnR5cGVzY3JpcHRsYW5nLm9yZy9kb2NzL2hhbmRib29rLzIvZ2VuZXJpY3MuaHRtbFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgdHJhY2tCeUZuKGluZGV4OiBudW1iZXIsIGl0ZW06IGFueSk6IHZvaWQge1xuICAgICAgICByZXR1cm4gaXRlbS5pZDtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9nZXRVbnJlYWRDb3VudCgpOiBudW1iZXIge1xuICAgICAgICBjb25zdCB1bnJlYWROb3RpZmljYXRpb25zID0gdGhpcy5pdGVtcy5maWx0ZXIoKGxpbmspID0+IHtcbiAgICAgICAgICAgIGlmIChsaW5rLm1ldGFkYXRhKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGxpbmsubWV0YWRhdGEucmVhZCA9PT0gZmFsc2U7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gdW5yZWFkTm90aWZpY2F0aW9ucy5sZW5ndGg7XG4gICAgfVxufVxuIiwiPGV1aS1pY29uLXN2Zy1idXR0b25cbiAgICBjbGFzcz1cImV1aS1ub3RpZmljYXRpb25zLXYyX190cmlnZ2VyXCJcbiAgICBpY29uU3ZnTmFtZT1cImV1aS1ub3RpZmljYXRpb25zXCJcbiAgICBpY29uU3ZnU2l6ZT1cIm1cIlxuICAgIGljb25TdmdGaWxsQ29sb3I9XCJ3aGl0ZVwiXG4gICAgKGNsaWNrKT1cIm9uQ2xpY2tlZCgkZXZlbnQpXCJcbiAgICAoa2V5ZG93bi5lbnRlcik9XCJvbkNsaWNrZWQoJGV2ZW50KVwiXG4gICAgKGtleWRvd24uZXNjKT1cIm9uSGlkZSgpXCJcbiAgICBoYXNGb2N1c0JvcmRlcj5cbiAgICA8ZXVpLWJhZGdlICpuZ0lmPVwiY291bnRcIiBldWlTaXplUyBldWlEYW5nZXI+e3sgY291bnQgfX08L2V1aS1iYWRnZT5cbiAgICA8ZXVpLWJhZGdlICpuZ0lmPVwidW5yZWFkU2luY2VMYXN0Q2hlY2tDb3VudFwiIGV1aVNpemVTIGV1aURhbmdlcj57eyB1bnJlYWRTaW5jZUxhc3RDaGVja0NvdW50IH19PC9ldWktYmFkZ2U+XG48L2V1aS1pY29uLXN2Zy1idXR0b24+XG5cbjwhLS0gPGV1aS1pY29uLXN2Z1xuICAgIGNsYXNzPVwiZXVpLW5vdGlmaWNhdGlvbnMtdjJfX3RyaWdnZXJcIlxuICAgIHJvbGU9XCJidXR0b25cIlxuICAgIHNpemU9XCJtXCJcbiAgICBpY29uPVwiZXVpLW5vdGlmaWNhdGlvbnNcIlxuICAgIGZpbGxDb2xvcj1cImdyZXktNVwiXG4gICAgKGNsaWNrKT1cIm9uQ2xpY2tlZCgkZXZlbnQpXCJcbiAgICAoa2V5ZG93bi5lbnRlcik9XCJvbkNsaWNrZWQoJGV2ZW50KVwiXG4gICAgKGtleWRvd24uZXNjKT1cIm9uSGlkZSgpXCJcbiAgICB0YWJpbmRleD1cIjBcIj5cbiAgICA8ZXVpLWJhZGdlICpuZ0lmPVwiY291bnRcIiBldWlTaXplUyBldWlEYW5nZXI+e3sgY291bnQgfX08L2V1aS1iYWRnZT5cbiAgICA8ZXVpLWJhZGdlICpuZ0lmPVwidW5yZWFkU2luY2VMYXN0Q2hlY2tDb3VudFwiIGV1aVNpemVTIGV1aURhbmdlcj57eyB1bnJlYWRTaW5jZUxhc3RDaGVja0NvdW50IH19PC9ldWktYmFkZ2U+XG48L2V1aS1pY29uLXN2Zz4gLS0+XG5cbjxldWktb3ZlcmxheSBbaXNBY3RpdmVdPVwiaXNPdmVybGF5QWN0aXZlXCIgY2xhc3M9XCJldWktb3ZlcmxheS1vZmZzZXQtLXdpZHRoLTMwXCI+XG4gICAgPGV1aS1vdmVybGF5LWhlYWRlcj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImV1aS1ub3RpZmljYXRpb25zLXYyX19oZWFkZXJcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJldWktbm90aWZpY2F0aW9ucy12Ml9faGVhZGVyLXRpdGxlXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImV1aS1ub3RpZmljYXRpb25zLXYyX19oZWFkZXItdGl0bGUtbGFiZWxcIj5cbiAgICAgICAgICAgICAgICAgICAge3sgaGVhZGVyVGl0bGVMYWJlbCA/IGhlYWRlclRpdGxlTGFiZWwgOiAoJ2V1aS5NWU5PVElGSUNBVElPTlMnIHwgdHJhbnNsYXRlKSB9fVxuICAgICAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImV1aS1ub3RpZmljYXRpb25zLXYyX19oZWFkZXItdGl0bGUtYWN0aW9uc1wiPlxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImhpZGVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxhIChjbGljayk9XCJvbkhpZGUoKVwiIGNsYXNzPVwiZXVpLXUtdGV4dC1saW5rXCIgcm9sZT1cImJ1dHRvblwiIHRhYkluZGV4PVwiMFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IGhlYWRlckhpZGVMYWJlbCA/IGhlYWRlckhpZGVMYWJlbCA6ICgnZXVpLkhJREUnIHwgdHJhbnNsYXRlKSB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtbC0yIGV1aS11LWZvbnQteHMgZXVpLWljb24gZXVpLWljb24tY2hldnJvbi1yaWdodFwiPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJldWktbm90aWZpY2F0aW9ucy12Ml9faGVhZGVyLXN1YmluZm9zLWJhclwiPlxuICAgICAgICAgICAgICAgIDxzdHJvbmc+e3sgdW5yZWFkU2luY2VMYXN0Q2hlY2tDb3VudCB9fTwvc3Ryb25nPlxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZXVpLXUtbWwteHNcIj57e1xuICAgICAgICAgICAgICAgICAgICBoZWFkZXJVbnJlYWRTaW5jZUxhc3RDaGVja0NvdW50TGFiZWwgPyBoZWFkZXJVbnJlYWRTaW5jZUxhc3RDaGVja0NvdW50TGFiZWwgOiAoJ2V1aS5ORVctQ09VTlQnIHwgdHJhbnNsYXRlKVxuICAgICAgICAgICAgICAgIH19PC9zcGFuPlxuXG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJldWktdS1tbC14c1wiPnw8L3NwYW4+XG5cbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImV1aS11LW1sLXhzXCI+e3sgdW5yZWFkQ291bnQgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJldWktdS1tbC14c1wiPnt7IGhlYWRlclVucmVhZENvdW50TGFiZWwgPyBoZWFkZXJVbnJlYWRDb3VudExhYmVsIDogKCdldWkuTkVXLUNPVU5UJyB8IHRyYW5zbGF0ZSkgfX08L3NwYW4+XG4gICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImV1aS1ub3RpZmljYXRpb25zLXYyX19oZWFkZXItc3ViYWN0aW9ucy1iYXJcIj5cbiAgICAgICAgICAgICAgICA8YSAqbmdJZj1cIml0ZW1zLmxlbmd0aCA+IDBcIiAoY2xpY2spPVwib25NYXJrQWxsQXNSZWFkKCRldmVudClcIiBjbGFzcz1cImV1aS11LXRleHQtbGlua1wiIHRhYkluZGV4PVwiMFwiPlxuICAgICAgICAgICAgICAgICAgICB7eyAnbm90aWYuTUFSSy1BTEwtUkVBRCcgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgICAgPGEgKGNsaWNrKT1cIm9uUmVmcmVzaCgkZXZlbnQpXCIgY2xhc3M9XCJldWktdS10ZXh0LWxpbmsgZXVpLXUtbWwtYXV0b1wiIHRhYkluZGV4PVwiMFwiPlxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImV1aS11LWZsZXhcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZXVpLWljb24gZXVpLWljb24tcmVmcmVzaCBtci0xXCI+PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAge3sgJ25vdGlmLlNWLVJFRlJFU0gnIHwgdHJhbnNsYXRlIH19XG4gICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9ldWktb3ZlcmxheS1oZWFkZXI+XG5cbiAgICA8ZXVpLW92ZXJsYXktYm9keT5cbiAgICAgICAgPHVsIGNsYXNzPVwiZXVpLW5vdGlmaWNhdGlvbnMtaXRlbXNcIiAqbmdJZj1cIml0ZW1zXCI+XG4gICAgICAgICAgICA8ZXVpLW5vdGlmaWNhdGlvbi1pdGVtLXYyXG4gICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IGl0ZW0gb2YgaXRlbXM7IHRyYWNrQnk6IHRyYWNrQnlGblwiXG4gICAgICAgICAgICAgICAgW2l0ZW1dPVwiaXRlbVwiXG4gICAgICAgICAgICAgICAgW2RhdGVGb3JtYXRdPVwiZGF0ZUZvcm1hdFwiXG4gICAgICAgICAgICAgICAgW21hcmtBc1JlYWRMYWJlbF09XCJtYXJrQXNSZWFkTGFiZWxcIlxuICAgICAgICAgICAgICAgIFtpc1Nob3dNYXJrQXNSZWFkXT1cImlzU2hvd01hcmtBc1JlYWRcIlxuICAgICAgICAgICAgICAgIChpdGVtQ2xpY2spPVwib25JdGVtQ2xpY2soJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgKGl0ZW1NYXJrQXNSZWFkKT1cIm9uSXRlbU1hcmtBc1JlYWQoJGV2ZW50KVwiPlxuICAgICAgICAgICAgPC9ldWktbm90aWZpY2F0aW9uLWl0ZW0tdjI+XG4gICAgICAgIDwvdWw+XG4gICAgPC9ldWktb3ZlcmxheS1ib2R5PlxuXG4gICAgPGV1aS1vdmVybGF5LWZvb3Rlcj5cbiAgICAgICAgPG5nLXRlbXBsYXRlIFtuZ0lmXT1cIml0ZW1zPy5sZW5ndGggPiAwXCI+XG4gICAgICAgICAgICA8c3Ryb25nXG4gICAgICAgICAgICAgICAgPjxhIChjbGljayk9XCJvblZpZXdBbGxDbGljaygkZXZlbnQpXCIgY2xhc3M9XCJldWktdS10ZXh0LWxpbmtcIj57e1xuICAgICAgICAgICAgICAgICAgICB2aWV3QWxsTm90aWZpY2F0aW9uc0xhYmVsID8gdmlld0FsbE5vdGlmaWNhdGlvbnNMYWJlbCA6ICgnZXVpLlZJRVdBTExOT1RJRklDQVRJT05TJyB8IHRyYW5zbGF0ZSlcbiAgICAgICAgICAgICAgICB9fTwvYT48L3N0cm9uZ1xuICAgICAgICAgICAgPlxuICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICA8bmctdGVtcGxhdGUgW25nSWZdPVwiaXRlbXM/Lmxlbmd0aCA9PT0gMFwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInV4LW5vdGlmaWNhdGlvbl9faXRlbS1jb250ZW50XCIgKm5nSWY9XCIhbm9Ob3RpZmljYXRpb25Gb3VuZExpbmtcIj5cbiAgICAgICAgICAgICAgICB7eyBub05vdGlmaWNhdGlvbkZvdW5kTGFiZWwgPyBub05vdGlmaWNhdGlvbkZvdW5kTGFiZWwgOiAoJ2V1aS5OT05PVElGSUNBVElPTkZPVU5EJyB8IHRyYW5zbGF0ZSkgfX1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInV4LW5vdGlmaWNhdGlvbl9faXRlbS1jb250ZW50XCIgKm5nSWY9XCJub05vdGlmaWNhdGlvbkZvdW5kTGlua1wiPlxuICAgICAgICAgICAgICAgIDxzdHJvbmdcbiAgICAgICAgICAgICAgICAgICAgPjxhIChjbGljayk9XCJvbk5vTm90aWZpY2F0aW9uRm91bmRDbGljaygpXCIgY2xhc3M9XCJldWktdS10ZXh0LWxpbmtcIj57e1xuICAgICAgICAgICAgICAgICAgICAgICAgbm9Ob3RpZmljYXRpb25Gb3VuZExhYmVsID8gbm9Ob3RpZmljYXRpb25Gb3VuZExhYmVsIDogKCdldWkuTk9OT1RJRklDQVRJT05GT1VORCcgfCB0cmFuc2xhdGUpXG4gICAgICAgICAgICAgICAgICAgIH19PC9hPjwvc3Ryb25nXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPC9ldWktb3ZlcmxheS1mb290ZXI+XG48L2V1aS1vdmVybGF5PlxuIl19
|