@clr/angular 13.17.0 → 13.18.1
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/accordion/accordion-panel.d.ts +3 -3
- package/accordion/stepper/providers/stepper.service.d.ts +2 -1
- package/accordion/stepper/stepper-panel.d.ts +2 -2
- package/button/button-group/button-group.d.ts +6 -10
- package/button/button-group/button.d.ts +11 -11
- package/button/button-loading/loading-button.d.ts +2 -2
- package/button/providers/button-group-focus-handler.service.d.ts +1 -1
- package/clarity.api.md +94 -94
- package/data/datagrid/built-in/filters/datagrid-numeric-filter-impl.d.ts +7 -12
- package/data/datagrid/built-in/filters/datagrid-numeric-filter.d.ts +13 -16
- package/data/datagrid/built-in/filters/datagrid-string-filter-impl.d.ts +7 -7
- package/data/datagrid/built-in/filters/datagrid-string-filter.d.ts +10 -10
- package/data/datagrid/datagrid-action-overflow.d.ts +5 -5
- package/data/datagrid/datagrid-cell.d.ts +2 -2
- package/data/datagrid/datagrid-column-separator.d.ts +6 -6
- package/data/datagrid/datagrid-column-toggle-button.d.ts +2 -2
- package/data/datagrid/datagrid-column-toggle.d.ts +6 -6
- package/data/datagrid/datagrid-column.d.ts +51 -54
- package/data/datagrid/datagrid-detail-header.d.ts +1 -1
- package/data/datagrid/datagrid-filter.d.ts +5 -5
- package/data/datagrid/datagrid-footer.d.ts +1 -1
- package/data/datagrid/datagrid-hideable-column.d.ts +3 -3
- package/data/datagrid/datagrid-if-detail.d.ts +3 -3
- package/data/datagrid/datagrid-if-expanded.service.d.ts +4 -4
- package/data/datagrid/datagrid-items.d.ts +1 -1
- package/data/datagrid/datagrid-pagination.d.ts +17 -17
- package/data/datagrid/datagrid-row-detail.d.ts +8 -8
- package/data/datagrid/datagrid-row.d.ts +53 -48
- package/data/datagrid/datagrid.d.ts +43 -47
- package/data/datagrid/interfaces/filter.interface.d.ts +2 -2
- package/data/datagrid/providers/column-resizer.service.d.ts +3 -3
- package/data/datagrid/providers/columns.service.d.ts +2 -2
- package/data/datagrid/providers/detail.service.d.ts +5 -5
- package/data/datagrid/providers/display-mode.service.d.ts +1 -1
- package/data/datagrid/providers/filters.d.ts +2 -2
- package/data/datagrid/providers/global-expandable-rows.d.ts +3 -3
- package/data/datagrid/providers/items.d.ts +25 -25
- package/data/datagrid/providers/page.d.ts +21 -21
- package/data/datagrid/providers/row-action-service.d.ts +2 -2
- package/data/datagrid/providers/selection.d.ts +42 -42
- package/data/datagrid/providers/sort.d.ts +6 -6
- package/data/datagrid/providers/state-debouncer.provider.d.ts +1 -1
- package/data/datagrid/providers/state.provider.d.ts +1 -1
- package/data/datagrid/providers/table-size.service.d.ts +1 -1
- package/data/datagrid/render/cell-renderer.d.ts +3 -3
- package/data/datagrid/render/header-renderer.d.ts +3 -3
- package/data/datagrid/render/main-renderer.d.ts +12 -12
- package/data/datagrid/render/noop-dom-adapter.d.ts +7 -7
- package/data/datagrid/render/render-organizer.d.ts +1 -1
- package/data/datagrid/render/row-renderer.d.ts +1 -1
- package/data/datagrid/utils/datagrid-filter-registrar.d.ts +2 -2
- package/data/datagrid/utils/key-navigation-grid.controller.d.ts +5 -5
- package/data/stack-view/stack-block.d.ts +16 -16
- package/data/stack-view/stack-view-custom-tags.d.ts +1 -1
- package/data/stack-view/stack-view.d.ts +2 -2
- package/data/tree-view/models/declarative-tree-node.model.d.ts +2 -2
- package/data/tree-view/models/recursive-tree-node.model.d.ts +5 -5
- package/data/tree-view/models/tree-node.model.d.ts +4 -4
- package/data/tree-view/recursive-children.d.ts +3 -3
- package/data/tree-view/recursive-for-of.d.ts +1 -1
- package/data/tree-view/tree-focus-manager.service.d.ts +8 -8
- package/data/tree-view/tree-node.d.ts +18 -18
- package/data/tree-view/tree.d.ts +2 -2
- package/emphasis/alert/alert.d.ts +11 -11
- package/emphasis/alert/alerts-pager.d.ts +6 -6
- package/emphasis/alert/alerts.d.ts +6 -6
- package/emphasis/alert/providers/icon-and-types.service.d.ts +1 -1
- package/emphasis/alert/providers/multi-alert.service.d.ts +2 -2
- package/esm2020/accordion/accordion-panel.mjs +3 -3
- package/esm2020/accordion/accordion.mjs +1 -1
- package/esm2020/accordion/providers/accordion.service.mjs +1 -1
- package/esm2020/accordion/stepper/providers/stepper.service.mjs +4 -4
- package/esm2020/accordion/stepper/stepper-panel.mjs +6 -6
- package/esm2020/accordion/stepper/stepper.mjs +1 -1
- package/esm2020/button/button-group/button-group.mjs +17 -18
- package/esm2020/button/button-group/button.mjs +14 -14
- package/esm2020/button/button-loading/loading-button.mjs +2 -2
- package/esm2020/button/providers/button-group-focus-handler.service.mjs +5 -5
- package/esm2020/button/providers/button-in-group.service.mjs +1 -1
- package/esm2020/data/datagrid/built-in/filters/datagrid-numeric-filter-impl.mjs +11 -16
- package/esm2020/data/datagrid/built-in/filters/datagrid-numeric-filter.mjs +59 -59
- package/esm2020/data/datagrid/built-in/filters/datagrid-string-filter-impl.mjs +10 -10
- package/esm2020/data/datagrid/built-in/filters/datagrid-string-filter.mjs +32 -32
- package/esm2020/data/datagrid/datagrid-action-overflow.mjs +19 -19
- package/esm2020/data/datagrid/datagrid-cell.mjs +4 -4
- package/esm2020/data/datagrid/datagrid-column-separator.mjs +6 -6
- package/esm2020/data/datagrid/datagrid-column-toggle-button.mjs +4 -4
- package/esm2020/data/datagrid/datagrid-column-toggle.mjs +4 -4
- package/esm2020/data/datagrid/datagrid-column.mjs +166 -168
- package/esm2020/data/datagrid/datagrid-detail-header.mjs +1 -1
- package/esm2020/data/datagrid/datagrid-filter.mjs +7 -7
- package/esm2020/data/datagrid/datagrid-footer.mjs +1 -1
- package/esm2020/data/datagrid/datagrid-hideable-column.mjs +5 -5
- package/esm2020/data/datagrid/datagrid-if-detail.mjs +9 -9
- package/esm2020/data/datagrid/datagrid-if-expanded.service.mjs +7 -7
- package/esm2020/data/datagrid/datagrid-items.mjs +1 -1
- package/esm2020/data/datagrid/datagrid-pagination.mjs +41 -41
- package/esm2020/data/datagrid/datagrid-row-detail.mjs +20 -18
- package/esm2020/data/datagrid/datagrid-row.mjs +124 -110
- package/esm2020/data/datagrid/datagrid.mjs +60 -57
- package/esm2020/data/datagrid/interfaces/filter.interface.mjs +1 -1
- package/esm2020/data/datagrid/providers/column-resizer.service.mjs +4 -4
- package/esm2020/data/datagrid/providers/columns.service.mjs +7 -7
- package/esm2020/data/datagrid/providers/detail.service.mjs +8 -8
- package/esm2020/data/datagrid/providers/display-mode.service.mjs +2 -2
- package/esm2020/data/datagrid/providers/filters.mjs +1 -1
- package/esm2020/data/datagrid/providers/global-expandable-rows.mjs +7 -7
- package/esm2020/data/datagrid/providers/items.mjs +41 -41
- package/esm2020/data/datagrid/providers/page.mjs +22 -22
- package/esm2020/data/datagrid/providers/row-action-service.mjs +7 -7
- package/esm2020/data/datagrid/providers/selection.mjs +68 -68
- package/esm2020/data/datagrid/providers/sort.mjs +4 -4
- package/esm2020/data/datagrid/providers/state-debouncer.provider.mjs +5 -5
- package/esm2020/data/datagrid/providers/state.provider.mjs +1 -1
- package/esm2020/data/datagrid/providers/table-size.service.mjs +1 -1
- package/esm2020/data/datagrid/render/cell-renderer.mjs +1 -1
- package/esm2020/data/datagrid/render/header-renderer.mjs +11 -11
- package/esm2020/data/datagrid/render/main-renderer.mjs +17 -17
- package/esm2020/data/datagrid/render/noop-dom-adapter.mjs +8 -15
- package/esm2020/data/datagrid/render/render-organizer.mjs +1 -1
- package/esm2020/data/datagrid/render/row-renderer.mjs +1 -1
- package/esm2020/data/datagrid/utils/datagrid-filter-registrar.mjs +4 -4
- package/esm2020/data/datagrid/utils/key-navigation-grid.controller.mjs +1 -1
- package/esm2020/data/stack-view/stack-block.mjs +41 -41
- package/esm2020/data/stack-view/stack-view-custom-tags.mjs +4 -4
- package/esm2020/data/stack-view/stack-view.mjs +3 -3
- package/esm2020/data/tree-view/models/declarative-tree-node.model.mjs +7 -7
- package/esm2020/data/tree-view/models/recursive-tree-node.model.mjs +14 -14
- package/esm2020/data/tree-view/models/tree-node.model.mjs +15 -15
- package/esm2020/data/tree-view/recursive-children.mjs +1 -1
- package/esm2020/data/tree-view/recursive-for-of.mjs +1 -1
- package/esm2020/data/tree-view/tree-features.service.mjs +1 -1
- package/esm2020/data/tree-view/tree-focus-manager.service.mjs +33 -33
- package/esm2020/data/tree-view/tree-node.mjs +43 -43
- package/esm2020/data/tree-view/tree.mjs +8 -8
- package/esm2020/emphasis/alert/alert.mjs +33 -34
- package/esm2020/emphasis/alert/alerts-pager.mjs +17 -17
- package/esm2020/emphasis/alert/alerts.mjs +17 -17
- package/esm2020/emphasis/alert/providers/icon-and-types.service.mjs +1 -1
- package/esm2020/emphasis/alert/providers/multi-alert.service.mjs +4 -4
- package/esm2020/forms/checkbox/checkbox-container.mjs +4 -4
- package/esm2020/forms/checkbox/checkbox-wrapper.mjs +1 -1
- package/esm2020/forms/combobox/combobox.mjs +108 -110
- package/esm2020/forms/combobox/model/pseudo-focus.model.mjs +1 -1
- package/esm2020/forms/combobox/option-items.directive.mjs +16 -16
- package/esm2020/forms/combobox/option-selected.directive.mjs +1 -1
- package/esm2020/forms/combobox/option.mjs +12 -12
- package/esm2020/forms/combobox/options.mjs +13 -13
- package/esm2020/forms/combobox/providers/combobox-focus-handler.service.mjs +42 -42
- package/esm2020/forms/combobox/providers/option-selection.service.mjs +6 -6
- package/esm2020/forms/common/abstract-container.mjs +5 -5
- package/esm2020/forms/common/form.mjs +8 -8
- package/esm2020/forms/common/if-control-state/abstract-if-state.mjs +2 -3
- package/esm2020/forms/common/if-control-state/if-control-state.service.mjs +4 -5
- package/esm2020/forms/common/label.mjs +8 -8
- package/esm2020/forms/common/providers/container-id.service.mjs +1 -1
- package/esm2020/forms/common/providers/control-id.service.mjs +1 -1
- package/esm2020/forms/common/providers/focus.service.mjs +1 -1
- package/esm2020/forms/common/providers/layout.service.mjs +6 -6
- package/esm2020/forms/common/providers/mark-control.service.mjs +1 -1
- package/esm2020/forms/common/providers/ng-control.service.mjs +4 -4
- package/esm2020/forms/common/wrapped-control.mjs +25 -25
- package/esm2020/forms/datalist/datalist-input.mjs +1 -1
- package/esm2020/forms/datalist/datalist.mjs +7 -7
- package/esm2020/forms/datalist/providers/datalist-id.service.mjs +1 -1
- package/esm2020/forms/datepicker/calendar.mjs +24 -24
- package/esm2020/forms/datepicker/date-container.mjs +15 -15
- package/esm2020/forms/datepicker/date-input.mjs +31 -31
- package/esm2020/forms/datepicker/day.mjs +4 -4
- package/esm2020/forms/datepicker/daypicker.mjs +13 -13
- package/esm2020/forms/datepicker/model/calendar-view.model.mjs +9 -9
- package/esm2020/forms/datepicker/model/calendar.model.mjs +12 -12
- package/esm2020/forms/datepicker/model/day.model.mjs +4 -4
- package/esm2020/forms/datepicker/model/year-range.model.mjs +17 -17
- package/esm2020/forms/datepicker/monthpicker.mjs +15 -15
- package/esm2020/forms/datepicker/providers/date-form-control.service.mjs +1 -1
- package/esm2020/forms/datepicker/providers/date-io.service.mjs +48 -48
- package/esm2020/forms/datepicker/providers/date-navigation.service.mjs +30 -33
- package/esm2020/forms/datepicker/providers/datepicker-enabled.service.mjs +1 -1
- package/esm2020/forms/datepicker/providers/locale-helper.service.mjs +1 -1
- package/esm2020/forms/datepicker/providers/view-manager.service.mjs +2 -2
- package/esm2020/forms/datepicker/yearpicker.mjs +37 -37
- package/esm2020/forms/password/password-container.mjs +4 -4
- package/esm2020/forms/radio/radio-container.mjs +4 -4
- package/esm2020/forms/radio/radio-wrapper.mjs +1 -1
- package/esm2020/forms/range/range-container.mjs +4 -4
- package/esm2020/forms/select/select-container.mjs +1 -1
- package/esm2020/layout/nav/header.mjs +10 -4
- package/esm2020/layout/nav/nav-level.mjs +37 -37
- package/esm2020/layout/nav/providers/responsive-navigation.service.mjs +1 -1
- package/esm2020/layout/tabs/providers/tabs.service.mjs +5 -5
- package/esm2020/layout/tabs/tab-content.mjs +11 -11
- package/esm2020/layout/tabs/tab-link.directive.mjs +18 -18
- package/esm2020/layout/tabs/tab.mjs +4 -4
- package/esm2020/layout/tabs/tabs.mjs +38 -38
- package/esm2020/layout/vertical-nav/providers/vertical-nav-group.service.mjs +1 -1
- package/esm2020/layout/vertical-nav/providers/vertical-nav.service.mjs +1 -1
- package/esm2020/layout/vertical-nav/vertical-nav-group.mjs +29 -29
- package/esm2020/layout/vertical-nav/vertical-nav.mjs +8 -8
- package/esm2020/modal/modal.mjs +4 -4
- package/esm2020/popover/common/abstract-popover.mjs +14 -14
- package/esm2020/popover/common/popover.mjs +2 -2
- package/esm2020/popover/dropdown/dropdown-item.mjs +10 -10
- package/esm2020/popover/dropdown/dropdown-menu.mjs +5 -5
- package/esm2020/popover/dropdown/dropdown.mjs +2 -2
- package/esm2020/popover/dropdown/providers/dropdown-focus-handler.service.mjs +49 -49
- package/esm2020/popover/dropdown/providers/dropdown.service.mjs +1 -1
- package/esm2020/popover/signpost/providers/signpost-id.service.mjs +4 -4
- package/esm2020/popover/signpost/signpost-content.mjs +13 -13
- package/esm2020/popover/signpost/signpost-trigger.mjs +12 -12
- package/esm2020/popover/signpost/signpost.mjs +1 -1
- package/esm2020/popover/tooltip/providers/tooltip-id.service.mjs +4 -4
- package/esm2020/popover/tooltip/tooltip-content.mjs +1 -1
- package/esm2020/progress/progress-bars/progress-bar.mjs +53 -61
- package/esm2020/progress/spinner/spinner.mjs +12 -1
- package/esm2020/timeline/timeline-step.mjs +6 -6
- package/esm2020/utils/a11y/aria-live.service.mjs +12 -12
- package/esm2020/utils/chocolate/oompa-loompa.mjs +1 -1
- package/esm2020/utils/chocolate/willy-wonka.mjs +2 -2
- package/esm2020/utils/conditional/if-active.directive.mjs +22 -31
- package/esm2020/utils/conditional/if-active.service.mjs +5 -12
- package/esm2020/utils/conditional/if-expanded.directive.mjs +14 -14
- package/esm2020/utils/conditional/if-expanded.service.mjs +4 -4
- package/esm2020/utils/conditional/if-open.directive.mjs +14 -23
- package/esm2020/utils/drag-and-drop/draggable/draggable.mjs +25 -25
- package/esm2020/utils/drag-and-drop/draggable-ghost.mjs +5 -5
- package/esm2020/utils/drag-and-drop/droppable/droppable.mjs +35 -35
- package/esm2020/utils/drag-and-drop/providers/drag-and-drop-event-bus.service.mjs +1 -1
- package/esm2020/utils/drag-and-drop/providers/drag-event-listener.service.mjs +5 -5
- package/esm2020/utils/drag-and-drop/providers/drag-handle-registrar.service.mjs +10 -10
- package/esm2020/utils/drag-and-drop/providers/draggable-snapshot.service.mjs +9 -9
- package/esm2020/utils/focus/focus-on-view-init/focus-on-view-init.mjs +2 -2
- package/esm2020/utils/focus/focus.service.mjs +1 -1
- package/esm2020/utils/focus/focusable-item/basic-focusable-item.service.mjs +1 -1
- package/esm2020/utils/focus/focusable-item/focusable-item.mjs +1 -1
- package/esm2020/utils/focus/key-focus/key-focus-item.mjs +1 -1
- package/esm2020/utils/focus/key-focus/key-focus.mjs +39 -35
- package/esm2020/utils/focus/key-focus/roving-tabindex.mjs +4 -4
- package/esm2020/utils/focus-trap/focus-trap-tracker.service.mjs +1 -1
- package/esm2020/utils/focus-trap/focus-trap.directive.mjs +27 -27
- package/esm2020/utils/focus-trap/focus-trap.mjs +1 -1
- package/esm2020/utils/for-type-ahead/for-type-ahead.mjs +4 -4
- package/esm2020/utils/for-type-ahead/for-type-ahead.service.mjs +4 -4
- package/esm2020/utils/host-wrapping/host-wrapper.mjs +1 -1
- package/esm2020/utils/i18n/common-strings.default.mjs +2 -1
- package/esm2020/utils/i18n/common-strings.interface.mjs +1 -1
- package/esm2020/utils/i18n/common-strings.service.mjs +7 -7
- package/esm2020/utils/loading/loading.mjs +1 -1
- package/esm2020/utils/popover/popover-close-button.mjs +2 -2
- package/esm2020/utils/popover/popover-content.mjs +17 -22
- package/esm2020/utils/popover/popover-open-close-button.mjs +2 -2
- package/esm2020/utils/popover/providers/popover-events.service.mjs +24 -42
- package/esm2020/utils/popover/providers/popover-position.service.mjs +1 -7
- package/esm2020/utils/popover/providers/popover-toggle.service.mjs +14 -16
- package/esm2020/wizard/heading-level.mjs +7 -0
- package/esm2020/wizard/index.mjs +3 -2
- package/esm2020/wizard/providers/button-hub.service.mjs +1 -1
- package/esm2020/wizard/providers/header-actions.service.mjs +1 -3
- package/esm2020/wizard/providers/page-collection.service.mjs +30 -32
- package/esm2020/wizard/providers/wizard-navigation.service.mjs +52 -52
- package/esm2020/wizard/wizard-button.mjs +10 -10
- package/esm2020/wizard/wizard-header-action.mjs +1 -1
- package/esm2020/wizard/wizard-page-title.mjs +7 -4
- package/esm2020/wizard/wizard-page.mjs +92 -122
- package/esm2020/wizard/wizard-stepnav-item.mjs +6 -6
- package/esm2020/wizard/wizard-title.mjs +21 -0
- package/esm2020/wizard/wizard.mjs +73 -60
- package/esm2020/wizard/wizard.module.mjs +5 -5
- package/fesm2015/clr-angular.mjs +2448 -2515
- package/fesm2015/clr-angular.mjs.map +1 -1
- package/fesm2020/clr-angular.mjs +2463 -2524
- package/fesm2020/clr-angular.mjs.map +1 -1
- package/forms/checkbox/checkbox-container.d.ts +2 -2
- package/forms/combobox/combobox.d.ts +26 -26
- package/forms/combobox/option-items.directive.d.ts +2 -2
- package/forms/combobox/option-selected.directive.d.ts +1 -1
- package/forms/combobox/option.d.ts +5 -5
- package/forms/combobox/options.d.ts +6 -6
- package/forms/combobox/providers/combobox-focus-handler.service.d.ts +9 -9
- package/forms/combobox/providers/option-selection.service.d.ts +6 -5
- package/forms/common/abstract-container.d.ts +6 -9
- package/forms/common/form.d.ts +3 -3
- package/forms/common/if-control-state/abstract-if-state.d.ts +1 -1
- package/forms/common/if-control-state/if-control-state.service.d.ts +2 -2
- package/forms/common/label.d.ts +3 -3
- package/forms/common/providers/container-id.service.d.ts +1 -1
- package/forms/common/providers/control-id.service.d.ts +1 -1
- package/forms/common/providers/layout.service.d.ts +2 -2
- package/forms/common/providers/ng-control.service.d.ts +2 -2
- package/forms/common/wrapped-control.d.ts +10 -10
- package/forms/datalist/datalist-input.d.ts +1 -1
- package/forms/datalist/datalist.d.ts +2 -2
- package/forms/datalist/providers/datalist-id.service.d.ts +1 -1
- package/forms/datepicker/calendar.d.ts +13 -13
- package/forms/datepicker/date-container.d.ts +4 -4
- package/forms/datepicker/date-input.d.ts +7 -7
- package/forms/datepicker/day.d.ts +1 -1
- package/forms/datepicker/daypicker.d.ts +8 -8
- package/forms/datepicker/model/calendar-view.model.d.ts +5 -5
- package/forms/datepicker/model/calendar.model.d.ts +5 -5
- package/forms/datepicker/model/day.model.d.ts +1 -1
- package/forms/datepicker/model/year-range.model.d.ts +10 -10
- package/forms/datepicker/monthpicker.d.ts +9 -9
- package/forms/datepicker/providers/date-form-control.service.d.ts +2 -2
- package/forms/datepicker/providers/date-io.service.d.ts +3 -3
- package/forms/datepicker/providers/date-navigation.service.d.ts +21 -24
- package/forms/datepicker/providers/datepicker-enabled.service.d.ts +1 -1
- package/forms/datepicker/providers/locale-helper.service.d.ts +1 -1
- package/forms/datepicker/providers/view-manager.service.d.ts +1 -1
- package/forms/datepicker/yearpicker.d.ts +10 -10
- package/forms/password/password-container.d.ts +2 -2
- package/forms/radio/radio-container.d.ts +2 -2
- package/forms/range/range-container.d.ts +2 -2
- package/layout/nav/header.d.ts +2 -1
- package/layout/nav/nav-level.d.ts +6 -6
- package/layout/nav/providers/responsive-navigation.service.d.ts +1 -1
- package/layout/tabs/providers/tabs.service.d.ts +3 -3
- package/layout/tabs/tab-content.d.ts +4 -4
- package/layout/tabs/tab-link.directive.d.ts +6 -6
- package/layout/tabs/tab.d.ts +1 -1
- package/layout/tabs/tabs.d.ts +13 -13
- package/layout/vertical-nav/providers/vertical-nav.service.d.ts +3 -3
- package/layout/vertical-nav/vertical-nav-group.d.ts +9 -9
- package/layout/vertical-nav/vertical-nav.d.ts +4 -4
- package/package.json +3 -2
- package/popover/common/abstract-popover.d.ts +9 -9
- package/popover/common/popover.d.ts +2 -2
- package/popover/dropdown/dropdown-item.d.ts +4 -4
- package/popover/dropdown/dropdown-menu.d.ts +2 -2
- package/popover/dropdown/dropdown.d.ts +1 -1
- package/popover/dropdown/providers/dropdown-focus-handler.service.d.ts +15 -15
- package/popover/signpost/providers/signpost-id.service.d.ts +1 -1
- package/popover/signpost/signpost-content.d.ts +9 -9
- package/popover/signpost/signpost-trigger.d.ts +3 -3
- package/popover/signpost/signpost.d.ts +1 -1
- package/popover/tooltip/providers/tooltip-id.service.d.ts +1 -1
- package/popover/tooltip/tooltip-content.d.ts +3 -3
- package/progress/progress-bars/progress-bar.d.ts +24 -29
- package/progress/spinner/spinner.d.ts +4 -11
- package/timeline/timeline-step.d.ts +2 -2
- package/utils/a11y/aria-live.service.d.ts +6 -6
- package/utils/chocolate/oompa-loompa.d.ts +2 -2
- package/utils/chocolate/willy-wonka.d.ts +1 -1
- package/utils/conditional/if-active.directive.d.ts +12 -21
- package/utils/conditional/if-active.service.d.ts +2 -9
- package/utils/conditional/if-expanded.directive.d.ts +5 -5
- package/utils/conditional/if-expanded.service.d.ts +3 -3
- package/utils/conditional/if-open.directive.d.ts +10 -19
- package/utils/drag-and-drop/draggable/draggable.d.ts +7 -7
- package/utils/drag-and-drop/draggable-ghost.d.ts +3 -3
- package/utils/drag-and-drop/droppable/droppable.d.ts +16 -16
- package/utils/drag-and-drop/providers/drag-event-listener.service.d.ts +12 -12
- package/utils/drag-and-drop/providers/drag-handle-registrar.service.d.ts +2 -2
- package/utils/drag-and-drop/providers/draggable-snapshot.service.d.ts +3 -3
- package/utils/focus/focus-on-view-init/focus-on-view-init.d.ts +2 -2
- package/utils/focus/focus.service.d.ts +2 -2
- package/utils/focus/focusable-item/basic-focusable-item.service.d.ts +1 -1
- package/utils/focus/focusable-item/focusable-item.d.ts +3 -3
- package/utils/focus/key-focus/key-focus-item.d.ts +1 -1
- package/utils/focus/key-focus/key-focus.d.ts +13 -9
- package/utils/focus/key-focus/roving-tabindex.d.ts +2 -2
- package/utils/focus-trap/focus-trap.d.ts +3 -3
- package/utils/focus-trap/focus-trap.directive.d.ts +6 -6
- package/utils/for-type-ahead/for-type-ahead.d.ts +2 -2
- package/utils/for-type-ahead/for-type-ahead.service.d.ts +2 -2
- package/utils/host-wrapping/host-wrapper.d.ts +1 -1
- package/utils/i18n/common-strings.interface.d.ts +4 -0
- package/utils/i18n/common-strings.service.d.ts +4 -4
- package/utils/loading/loading.d.ts +1 -1
- package/utils/popover/popover-close-button.d.ts +1 -1
- package/utils/popover/popover-content.d.ts +6 -6
- package/utils/popover/popover-open-close-button.d.ts +1 -1
- package/utils/popover/providers/popover-events.service.d.ts +9 -15
- package/utils/popover/providers/popover-position.service.d.ts +3 -5
- package/utils/popover/providers/popover-toggle.service.d.ts +5 -9
- package/wizard/heading-level.d.ts +1 -0
- package/wizard/index.d.ts +2 -1
- package/wizard/providers/button-hub.service.d.ts +5 -5
- package/wizard/providers/header-actions.service.d.ts +1 -1
- package/wizard/providers/page-collection.service.d.ts +21 -21
- package/wizard/providers/wizard-navigation.service.d.ts +90 -90
- package/wizard/wizard-button.d.ts +1 -1
- package/wizard/wizard-header-action.d.ts +1 -1
- package/wizard/wizard-page-title.d.ts +3 -1
- package/wizard/wizard-page.d.ts +164 -194
- package/wizard/wizard-stepnav-item.d.ts +1 -1
- package/wizard/wizard-title.d.ts +7 -0
- package/wizard/wizard.d.ts +69 -61
- package/wizard/wizard.module.d.ts +2 -2
- package/esm2020/wizard/wizard-custom-tags.mjs +0 -18
- package/wizard/wizard-custom-tags.d.ts +0 -5
|
@@ -20,12 +20,6 @@ export class ClrPopoverPositionService {
|
|
|
20
20
|
realign() {
|
|
21
21
|
this._shouldRealign.next();
|
|
22
22
|
}
|
|
23
|
-
set position(position) {
|
|
24
|
-
this._position = position;
|
|
25
|
-
}
|
|
26
|
-
get position() {
|
|
27
|
-
return this._position;
|
|
28
|
-
}
|
|
29
23
|
alignContent(content) {
|
|
30
24
|
if (!isPlatformBrowser(this.platformId)) {
|
|
31
25
|
// Only position when in a browser.
|
|
@@ -217,4 +211,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
|
|
|
217
211
|
type: Inject,
|
|
218
212
|
args: [PLATFORM_ID]
|
|
219
213
|
}] }]; } });
|
|
220
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci1wb3NpdGlvbi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci9zcmMvdXRpbHMvcG9wb3Zlci9wcm92aWRlcnMvcG9wb3Zlci1wb3NpdGlvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7O0dBSUc7QUFFSCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDaEUsT0FBTyxFQUFjLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUUzQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFJN0MsT0FBTyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsd0JBQXdCLEVBQUUsWUFBWSxFQUFFLGNBQWMsRUFBRSxNQUFNLHVCQUF1QixDQUFDOzs7QUFJakgsTUFBTSxPQUFPLHlCQUF5QjtJQW9CcEMsWUFBb0IsWUFBcUMsRUFBOEIsVUFBZTtRQUFsRixpQkFBWSxHQUFaLFlBQVksQ0FBeUI7UUFBOEIsZUFBVSxHQUFWLFVBQVUsQ0FBSztRQWQ5RixtQkFBYyxHQUFrQixJQUFJLE9BQU8sRUFBRSxDQUFDO1FBQ3RELGtCQUFhLEdBQXFCLElBQUksQ0FBQyxjQUFjLENBQUMsWUFBWSxFQUFFLENBQUM7SUFhb0MsQ0FBQztJQVgxRyxPQUFPO1FBQ0wsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRUQsSUFBSSxRQUFRLENBQUMsUUFBNEI7UUFDdkMsSUFBSSxDQUFDLFNBQVMsR0FBRyxRQUFRLENBQUM7SUFDNUIsQ0FBQztJQUNELElBQUksUUFBUTtRQUNWLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUN4QixDQUFDO0lBSUQsWUFBWSxDQUFDLE9B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SSxDQUFDLGNBQWMsR0FBRyxLQUFLLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRSxJQUFJLENBQUMsbUJBQW1CLEVBQUUsSUFBSSxDQUFDLG9CQUFvQixDQUFDLENBQUM7Z0JBQ2hILE1BQU07YUFDUDtZQUNELE9BQU8sQ0FBQyxDQUFDO2dCQUNQLE1BQU07YUFDUDtTQUNGO0lBQ0gsQ0FBQzs7dUhBL09VLHlCQUF5Qix5REFvQitCLFdBQVc7MkhBcEJuRSx5QkFBeUI7NEZBQXpCLHlCQUF5QjtrQkFEckMsVUFBVTs7MEJBcUJtRCxNQUFNOzJCQUFDLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDE2LTIwMjMgVk13YXJlLCBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKiBUaGlzIHNvZnR3YXJlIGlzIHJlbGVhc2VkIHVuZGVyIE1JVCBsaWNlbnNlLlxuICogVGhlIGZ1bGwgbGljZW5zZSBpbmZvcm1hdGlvbiBjYW4gYmUgZm91bmQgaW4gTElDRU5TRSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBwcm9qZWN0LlxuICovXG5cbmltcG9ydCB7IGlzUGxhdGZvcm1Ccm93c2VyIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgUExBVEZPUk1fSUQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgQ2xyQXhpcyB9IGZyb20gJy4uL2VudW1zL2F4aXMuZW51bSc7XG5pbXBvcnQgeyBDbHJWaWV3cG9ydFZpb2xhdGlvbiB9IGZyb20gJy4uL2VudW1zL3ZpZXdwb3J0LXZpb2xhdGlvbi5lbnVtJztcbmltcG9ydCB7IENsclBvcG92ZXJDb250ZW50T2Zmc2V0IH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9wb3BvdmVyLWNvbnRlbnQtb2Zmc2V0LmludGVyZmFjZSc7XG5pbXBvcnQgeyBDbHJQb3BvdmVyUG9zaXRpb24gfSBmcm9tICcuLi9pbnRlcmZhY2VzL3BvcG92ZXItcG9zaXRpb24uaW50ZXJmYWNlJztcbmltcG9ydCB7IGFsaWduLCBmbGlwU2lkZXMsIGZsaXBTaWRlc0FuZE51ZGdlQ29udGVudCwgbnVkZ2VDb250ZW50LCB0ZXN0VmlzaWJpbGl0eSB9IGZyb20gJy4uL3Bvc2l0aW9uLW9wZXJhdG9ycyc7XG5pbXBvcnQgeyBDbHJQb3BvdmVyRXZlbnRzU2VydmljZSB9IGZyb20gJy4vcG9wb3Zlci1ldmVudHMuc2VydmljZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBDbHJQb3BvdmVyUG9zaXRpb25TZXJ2aWNlIHtcbiAgcHJpdmF0ZSBjdXJyZW50QW5jaG9yQ29vcmRzOiBDbGllbnRSZWN0O1xuICBwcml2YXRlIGN1cnJlbnRDb250ZW50Q29vcmRzOiBDbGllbnRSZWN0O1xuICBwcml2YXRlIGNvbnRlbnRPZmZzZXRzOiBDbHJQb3BvdmVyQ29udGVudE9mZnNldDtcbiAgcHJpdmF0ZSBfcG9zaXRpb246IENsclBvcG92ZXJQb3NpdGlvbjtcblxuICBwcml2YXRlIF9zaG91bGRSZWFsaWduOiBTdWJqZWN0PHZvaWQ+ID0gbmV3IFN1YmplY3QoKTtcbiAgc2hvdWxkUmVhbGlnbjogT2JzZXJ2YWJsZTx2b2lkPiA9IHRoaXMuX3Nob3VsZFJlYWxpZ24uYXNPYnNlcnZhYmxlKCk7XG5cbiAgcmVhbGlnbigpIHtcbiAgICB0aGlzLl9zaG91bGRSZWFsaWduLm5leHQoKTtcbiAgfVxuXG4gIHNldCBwb3NpdGlvbihwb3NpdGlvbjogQ2xyUG9wb3ZlclBvc2l0aW9uKSB7XG4gICAgdGhpcy5fcG9zaXRpb24gPSBwb3NpdGlvbjtcbiAgfVxuICBnZXQgcG9zaXRpb24oKTogQ2xyUG9wb3ZlclBvc2l0aW9uIHtcbiAgICByZXR1cm4gdGhpcy5fcG9zaXRpb247XG4gIH1cblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGV2ZW50U2VydmljZTogQ2xyUG9wb3ZlckV2ZW50c1NlcnZpY2UsIEBJbmplY3QoUExBVEZPUk1fSUQpIHB1YmxpYyBwbGF0Zm9ybUlkOiBhbnkpIHt9XG5cbiAgYWxpZ25Db250ZW50KGNvbnRlbnQ6IEhUTUxFbGVtZW50KTogQ2xyUG9wb3ZlckNvbnRlbnRPZmZzZXQge1xuICAgIGlmICghaXNQbGF0Zm9ybUJyb3dzZXIodGhpcy5wbGF0Zm9ybUlkKSkge1xuICAgICAgLy8gT25seSBwb3NpdGlvbiB3aGVuIGluIGEgYnJvd3Nlci5cbiAgICAgIC8vIERlZmF1bHQgdG8gdGhlIGJyb3dzZXIgb3JpZ2luIGFuZCBwcmV2ZW50IGdldEJvdW5kaW5nQ2xpZW50UmVjdCBmcm9tIHJ1bm5pbmcuXG4gICAgICByZXR1cm4ge1xuICAgICAgICB4T2Zmc2V0OiAwLFxuICAgICAgICB5T2Zmc2V0OiAwLFxuICAgICAgfTtcbiAgICB9XG5cbiAgICB0aGlzLmN1cnJlbnRBbmNob3JDb29yZHMgPSB0aGlzLmV2ZW50U2VydmljZS5hbmNob3JCdXR0b25SZWYubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICB0aGlzLmN1cnJlbnRDb250ZW50Q29vcmRzID0gY29udGVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICB0aGlzLmNvbnRlbnRPZmZzZXRzID0gYWxpZ24odGhpcy5wb3NpdGlvbiwgdGhpcy5jdXJyZW50QW5jaG9yQ29vcmRzLCB0aGlzLmN1cnJlbnRDb250ZW50Q29vcmRzKTtcblxuICAgIGNvbnN0IHZpc2liaWxpdHlWaW9sYXRpb25zOiBDbHJWaWV3cG9ydFZpb2xhdGlvbltdID0gdGVzdFZpc2liaWxpdHkodGhpcy5jb250ZW50T2Zmc2V0cywgdGhpcy5jdXJyZW50Q29udGVudENvb3Jkcyk7XG4gICAgLyoqXG4gICAgICogQ2FsY3VsYXRlIHRoZSBzdW0gb2Ygdmlld3BvcnQgZXJyb3JzLiBUaGlzIGNhbGN1bGF0aW9uIGlzIHVzZWQgYmVsb3cgd2l0aCB0aGUgcHJvdmlkZWQgQXhpcyBpbiB0aGUgZ2l2ZW5cbiAgICAgKiBDbHJQb3BvdmVyUG9zaXRpb24uIEl0cyB3b3J0aCBwdXR0aW5nIHRoZSBDbHJWaWV3cG9ydFZpb2xhdGlvbiBlbnVtIHZhbHVlcyBoZXJlOlxuICAgICAqXG4gICAgICogICBCT1RUT00gPSAwLFxuICAgICAqICAgTEVGVCA9IDEsXG4gICAgICogICBSSUdIVCA9IDIsXG4gICAgICogICBUT1AgPSAzLFxuICAgICAqXG4gICAgICogICBTbywgdGhpcy52aXNpYmlsaXR5VmlvbGF0aW9ucy5sZW5ndGggdGVsbHMgdXMgaG93IG1hbnkgc2lkZXMgb2YgdGhlIHZpZXdwb3J0IHRoYXQgdGhlIHBvcG92ZXIgY29udGVudCB3YXNcbiAgICAgKiAgIGNsaXBwZWQgb24uIFdlIGNhbiBvbmx5IGhlbHAgd2hlbiB0aGUgY29udGVudCBoYXMgYW4gaXNzdWUgb24gb25lIG9yIHR3byBzaWRlcy5cbiAgICAgKiAgIGVycm9yU3VtIGlzIGNhbGN1bGF0ZWQgdG8gZGV0ZXJtaW5lIF9ob3dfIHRvIGNoYW5nZSB0aGUgcG9zaXRpb24uIExvb2tpbmcgYXQgYm90aCB0aGUgYXhpcyBhbmQgdGhlIG51bWJlclxuICAgICAqICAgb2YgdmlvbGF0aW9ucyBJIGNhbiB1c2UgdGhlIGVycm9yU3VtIHRvIGRldGVybWluZSBob3cgdG8gdHJhbnNmb3JtIHRoZSBwb3NpdGlvbiAob24gdGhlIGZseSkgYW5kIGFkanVzdFxuICAgICAqICAgd2hlcmUgaXQgY2FuIGJlIGltcHJvdmVkLlxuICAgICAqXG4gICAgICogICBOb3RlLCBtb3JlIHRoYW4gMyB2aWV3cG9ydCB2aW9sYXRpb25zIGFuZCB0aGVyZSBpc24ndCBhbnl0aGluZyB3ZSBjYW4gZG8gdG8gaGVscC4gQWxzbyB3aGVuIHRoZXJlIGFyZSB0d29cbiAgICAgKiAgIHZpb2xhdGlvbnMsIHdlIGNhbid0IGhlbHAgaWYgdGhlIHZpb2xhdGlvbnMgYXJlIFRPUCtCT1RUT00gfHwgTEVGVCtSSUdIVCA9PiBUaGVyZSBpcyBubyB0cmFuc2Zvcm1hdGlvbiB3ZVxuICAgICAqICAgY2FuIG1ha2UgdG8gdGhlIHBvc3Rpb24gdGhhdCB3aWxsIGhlbHAuXG4gICAgICpcbiAgICAgKiAgIFNvbWUgZXhhbXBsZXM6XG4gICAgICogICBUaGVyZSBpcyBvbmx5IG9uZSBlcnJvciBhbmQgUHJpbWFyeSBheGlzIGlzIFZFUlRJQ0FMXG4gICAgICogICAtIHRoaXMuaGFuZGxlVmVydGljYWxBeGlzT25lVmlvbGF0aW9uIGhhcyBhIHN3aXRjaCB0aGF0IHdpbGwgdXNlIHRoZSBlcnJvciBzdW0gdG8gYXBwbHkgdGhlIGNvcnJlY3RcbiAgICAgKiAgIHRyYW5zZm9ybSB0byB0aGUgcG9zdGlvbiBiYXNlZCBvbiB0aGUgcmVkdWN0aW9uIG9mIHZpc2liaWxpdHlWaW9sYXRpb25zLlxuICAgICAqXG4gICAgICogICBUaGVyZSBhcmUgdHdvIGVycm9ycyBhbmQgUHJpbWFyeSBheGlzIGlzIEhPUklaT05UQUxcbiAgICAgKiAgIC0gaGFuZGxlSG9yaXpvbnRhbEF4aXNUd29WaW9sYXRpb25zIGhhcyBhIHN3aXRjaCB0aGF0IHVzZXMgdGhlIGVycm9yIHN1bSB0byBhcHBseSBib3RoIHRyYW5zZm9ybXMgbmVlZGVkIHRvXG4gICAgICogICBpbXByb3ZlIHRoZSBjb250ZW50IHBvc2l0aW9uIGJhc2VkIG9uIHRoZSByZWR1Y3Rpb24gb2YgdmlzaWJpbGl0eVZpb2xhdGlvbnMuXG4gICAgICovXG5cbiAgICBjb25zdCBlcnJvclN1bSA9IHZpc2liaWxpdHlWaW9sYXRpb25zLnJlZHVjZSgoY291bnQsIGN1cnJlbnQpID0+IHtcbiAgICAgIHJldHVybiBjb3VudCArIGN1cnJlbnQ7XG4gICAgfSwgMCk7XG5cbiAgICBpZiAodmlzaWJpbGl0eVZpb2xhdGlvbnMubGVuZ3RoID09PSAxICYmIHRoaXMucG9zaXRpb24uYXhpcyA9PT0gQ2xyQXhpcy5WRVJUSUNBTCkge1xuICAgICAgLy8gV2hlbiBwcmltYXJ5IGF4aXMgaXMgVkVSVElDQUwgYW5kIHRoZXJlIGlzIG9uZSB2aWV3cG9ydCB2aW9sYXRpb25cbiAgICAgIHRoaXMuaGFuZGxlVmVydGljYWxBeGlzT25lVmlvbGF0aW9uKGVycm9yU3VtKTtcbiAgICB9IGVsc2UgaWYgKHZpc2liaWxpdHlWaW9sYXRpb25zLmxlbmd0aCA9PT0gMSAmJiB0aGlzLnBvc2l0aW9uLmF4aXMgPT09IENsckF4aXMuSE9SSVpPTlRBTCkge1xuICAgICAgLy8gV2hlbiBwcmltYXJ5IGF4aXMgaXMgSE9SSVpPTlRBTCBhbmQgdGhlcmUgaXMgb25lIHZpZXdwb3J0IHZpb2xhdGlvblxuICAgICAgdGhpcy5oYW5kbGVIb3Jpem9udGFsQXhpc09uZVZpb2xhdGlvbihlcnJvclN1bSk7XG4gICAgfSBlbHNlIGlmICh2aXNpYmlsaXR5VmlvbGF0aW9ucy5sZW5ndGggPT09IDIgJiYgdGhpcy5wb3NpdGlvbi5heGlzID09PSBDbHJBeGlzLlZFUlRJQ0FMKSB7XG4gICAgICAvLyBXaGVuIHByaW1hcnkgYXhpcyBpcyBWRVJUSUNBTCBhbmQgdGhlcmUgYXJlIHR3byB2aWV3cG9ydCB2aW9sYXRpb25zXG4gICAgICB0aGlzLmhhbmRsZVZlcnRpY2FsQXhpc1R3b1Zpb2xhdGlvbnMoZXJyb3JTdW0pO1xuICAgIH0gZWxzZSBpZiAodmlzaWJpbGl0eVZpb2xhdGlvbnMubGVuZ3RoID09PSAyICYmIHRoaXMucG9zaXRpb24uYXhpcyA9PT0gQ2xyQXhpcy5IT1JJWk9OVEFMKSB7XG4gICAgICAvLyBXaGVuIHByaW1hcnkgYXhpcyBpcyBIT1JJWk9OVEFMIGFuZCB0aGVyZSBhcmUgdHdvIHZpZXdwb3J0IHZpb2xhdGlvbnNcbiAgICAgIHRoaXMuaGFuZGxlSG9yaXpvbnRhbEF4aXNUd29WaW9sYXRpb25zKGVycm9yU3VtKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5jb250ZW50T2Zmc2V0cztcbiAgfVxuXG4gIHByaXZhdGUgaGFuZGxlVmVydGljYWxBeGlzT25lVmlvbGF0aW9uKGVycm9yU3VtOiBudW1iZXIpOiB2b2lkIHtcbiAgICBzd2l0Y2ggKGVycm9yU3VtKSB7XG4gICAgICBjYXNlIDA6XG4gICAgICBjYXNlIDM6IHtcbiAgICAgICAgLy8gQk9UVE9NKDApIG9yIFRPUCgzKSBhcmUgcHJpbWFyeSB2aW9sYXRpb25zIGFuZCB3ZSBjYW4ganVzdCBmbGlwIHNpZGVzXG4gICAgICAgIHRoaXMuY29udGVudE9mZnNldHMgPSBhbGlnbihmbGlwU2lkZXModGhpcy5wb3NpdGlvbiksIHRoaXMuY3VycmVudEFuY2hvckNvb3JkcywgdGhpcy5jdXJyZW50Q29udGVudENvb3Jkcyk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgY2FzZSAxOiB7XG4gICAgICAgIC8vIExFRlQoMSkgaXMgc2Vjb25kYXJ5IGFuZCBuZWVkcyB0byBudWRnZSBjb250ZW50IHJpZ2h0XG4gICAgICAgIHRoaXMuY29udGVudE9mZnNldHMgPSBhbGlnbih0aGlzLnBvc2l0aW9uLCB0aGlzLmN1cnJlbnRBbmNob3JDb29yZHMsIHRoaXMuY3VycmVudENvbnRlbnRDb29yZHMpO1xuXG4gICAgICAgIC8qKlxuICAgICAgICAgKiBFdmVuIHdpdGggdGhlIG51ZGdlIHdlIHN0aWxsIGhhdmUgYSBwcm9ibGVtLiBXZSBuZWVkIHRvIGNoZWNrIGlmIHRoZSBjb250ZW50IGlzIGdvaW5nIHRvIGJlIGNsaXBwZWRcbiAgICAgICAgICovXG4gICAgICAgIGlmICh0aGlzLmNvbnRlbnRPZmZzZXRzLnhPZmZzZXQgPCAwKSB7XG4gICAgICAgICAgdGhpcy5jb250ZW50T2Zmc2V0cy54T2Zmc2V0ID0gMTA7XG4gICAgICAgIH1cblxuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICAgIGNhc2UgMjoge1xuICAgICAgICAvLyBSSUdIVCgyKSBpcyBzZWNvbmRhcnkgYW5kICBuZWVkcyB0byBudWRnZSBjb250ZW50IGxlZnRcbiAgICAgICAgdGhpcy5jb250ZW50T2Zmc2V0cyA9IGFsaWduKFxuICAgICAgICAgIG51ZGdlQ29udGVudCh0aGlzLnBvc2l0aW9uLCB0cnVlKSxcbiAgICAgICAgICB0aGlzLmN1cnJlbnRBbmNob3JDb29yZHMsXG4gICAgICAgICAgdGhpcy5jdXJyZW50Q29udGVudENvb3Jkc1xuICAgICAgICApO1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICAgIGRlZmF1bHQ6IHtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGVWZXJ0aWNhbEF4aXNUd29WaW9sYXRpb25zKGVycm9yU3VtOiBudW1iZXIpOiB2b2lkIHtcbiAgICBzd2l0Y2ggKGVycm9yU3VtKSB7XG4gICAgICAvLyBXZSBrbm93IHRoZXJlIGFyZSB0d28gdmlvbGF0aW9ucy4gV2UgY2FuIHVzZSB0aGUgZXJyb3JTdW0gdG8gZGV0ZXJtaW5lIHdoaWNoIGNvbWJpbmF0aW9uIG9mIHNpZGVzIHdlcmVcbiAgICAgIC8vIHZpb2xhdGVkIGFuZCBoYW5kbGUgYXBwcm9wcmlhdGVseS5cbiAgICAgIGNhc2UgNToge1xuICAgICAgICAvLyBUT1AoMykrUklHSFQoMikgaXMgY2FzZSA1LiBXZSBuZWVkIHRvIGZsaXAgc2lkZXMgYW5kIG51ZGdlIHRoZSBjb250ZW50IHRvIHRoZSBsZWZ0XG4gICAgICAgIGNvbnN0IGZsaXBBbmROdWRnZUxlZnQgPSBmbGlwU2lkZXNBbmROdWRnZUNvbnRlbnQoZmxpcFNpZGVzLCBudWRnZUNvbnRlbnQsIHRydWUpO1xuICAgICAgICB0aGlzLmNvbnRlbnRPZmZzZXRzID0gYWxpZ24oXG4gICAgICAgICAgZmxpcEFuZE51ZGdlTGVmdCh0aGlzLnBvc2l0aW9uKSxcbiAgICAgICAgICB0aGlzLmN1cnJlbnRBbmNob3JDb29yZHMsXG4gICAgICAgICAgdGhpcy5jdXJyZW50Q29udGVudENvb3Jkc1xuICAgICAgICApO1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICAgIGNhc2UgNDoge1xuICAgICAgICAvL1RPUCgzKStMRUZUKDEpIGlzIGNhc2UgNCwgd2UgbmVlZCB0byBmbGlwIHNpZGVzIGFuZCBudWRnZSBjb250ZW50IHRvIHRoZSByaWdodFxuICAgICAgICBjb25zdCBmbGlwQW5kTnVkZ2VSaWdodCA9IGZsaXBTaWRlc0FuZE51ZGdlQ29udGVudChmbGlwU2lkZXMsIG51ZGdlQ29udGVudCwgZmFsc2UpO1xuICAgICAgICB0aGlzLmNvbnRlbnRPZmZzZXRzID0gYWxpZ24oXG4gICAgICAgICAgZmxpcEFuZE51ZGdlUmlnaHQodGhpcy5wb3NpdGlvbiksXG4gICAgICAgICAgdGhpcy5jdXJyZW50QW5jaG9yQ29vcmRzLFxuICAgICAgICAgIHRoaXMuY3VycmVudENvbnRlbnRDb29yZHNcbiAgICAgICAgKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgICBjYXNlIDM6IHtcbiAgICAgICAgLy8gVE9QKDMpK0JPVFRPTSgwKSB8fCBsZWZ0KDEpK1JJR0hUKDIpIGlzIGNhc2UgMy4gVGhlcmUgaXMgbm90aGluZyB3ZSBjYW4gZG8gcG9zaXRpb24gd2lzZSB0byBpbXByb3ZlIHRoZVxuICAgICAgICAvLyBwbGFjZW1lbnQgZm9yIHRoaXMgY29udGVudC5cbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgICBjYXNlIDI6IHtcbiAgICAgICAgLy8gQk9UVE9NKDApK1JJR0hUKDIpIGlzIGNhc2UgMi4gV2UgbmVlZCB0byBmbGlwIHNpZGVzIGFuZCBudWRnZSB0aGUgY29udGVudCB0byB0aGUgbGVmdFxuICAgICAgICBjb25zdCBmbGlwQW5kTnVkZ2VMZWZ0ID0gZmxpcFNpZGVzQW5kTnVkZ2VDb250ZW50KGZsaXBTaWRlcywgbnVkZ2VDb250ZW50LCB0cnVlKTtcbiAgICAgICAgdGhpcy5jb250ZW50T2Zmc2V0cyA9IGFsaWduKFxuICAgICAgICAgIGZsaXBBbmROdWRnZUxlZnQodGhpcy5wb3NpdGlvbiksXG4gICAgICAgICAgdGhpcy5jdXJyZW50QW5jaG9yQ29vcmRzLFxuICAgICAgICAgIHRoaXMuY3VycmVudENvbnRlbnRDb29yZHNcbiAgICAgICAgKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgICBjYXNlIDE6IHtcbiAgICAgICAgLy8gQk9UVE9NKDApK0xFRlQoMSkgaXMgY2FzZSAxLiBXZSBuZWVkIHRvIGZsaXAgc2lkZXMgYW5kIG51ZGdlIHRvIHRoZSByaWdodFxuICAgICAgICBjb25zdCBmbGlwQW5kTnVkZ2VSaWdodCA9IGZsaXBTaWRlc0FuZE51ZGdlQ29udGVudChmbGlwU2lkZXMsIG51ZGdlQ29udGVudCwgZmFsc2UpO1xuICAgICAgICB0aGlzLmNvbnRlbnRPZmZzZXRzID0gYWxpZ24oXG4gICAgICAgICAgZmxpcEFuZE51ZGdlUmlnaHQodGhpcy5wb3NpdGlvbiksXG4gICAgICAgICAgdGhpcy5jdXJyZW50QW5jaG9yQ29vcmRzLFxuICAgICAgICAgIHRoaXMuY3VycmVudENvbnRlbnRDb29yZHNcbiAgICAgICAgKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgICBkZWZhdWx0OiB7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgaGFuZGxlSG9yaXpvbnRhbEF4aXNPbmVWaW9sYXRpb24oZXJyb3JTdW06IG51bWJlcik6IHZvaWQge1xuICAgIHN3aXRjaCAoZXJyb3JTdW0pIHtcbiAgICAgIGNhc2UgMTpcbiAgICAgIGNhc2UgMjoge1xuICAgICAgICAvLyBMRUZUKDEpIGFuZCBSSUdIVCgyKSBhcmUgcHJpbWFyeSB2aW9sYXRpb25zIHNvIHdlIGNhbiBmbGlwIHNpZGVzXG4gICAgICAgIHRoaXMuY29udGVudE9mZnNldHMgPSBhbGlnbihmbGlwU2lkZXModGhpcy5wb3NpdGlvbiksIHRoaXMuY3VycmVudEFuY2hvckNvb3JkcywgdGhpcy5jdXJyZW50Q29udGVudENvb3Jkcyk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgY2FzZSAwOiB7XG4gICAgICAgIC8vIEJPVFRPTSgwKSBpcyBhIHNlY29uZGFyeSB2aW9sYXRpb24gYW5kIHdlIG5lZWQgdG8gbnVkZ2UgY29udGVudCB1cFxuICAgICAgICB0aGlzLmNvbnRlbnRPZmZzZXRzID0gYWxpZ24oXG4gICAgICAgICAgbnVkZ2VDb250ZW50KHRoaXMucG9zaXRpb24sIHRydWUpLFxuICAgICAgICAgIHRoaXMuY3VycmVudEFuY2hvckNvb3JkcyxcbiAgICAgICAgICB0aGlzLmN1cnJlbnRDb250ZW50Q29vcmRzXG4gICAgICAgICk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgY2FzZSAzOiB7XG4gICAgICAgIC8vIFRPUCgzKSBpcyBhIHNlY29uZGFyeSB2aW9sYXRpb24gYW5kIHdlIG5lZWQgdG8gbnVkZ2UgY29udGVudCBkb3duXG4gICAgICAgIHRoaXMuY29udGVudE9mZnNldHMgPSBhbGlnbihudWRnZUNvbnRlbnQodGhpcy5wb3NpdGlvbiksIHRoaXMuY3VycmVudEFuY2hvckNvb3JkcywgdGhpcy5jdXJyZW50Q29udGVudENvb3Jkcyk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgZGVmYXVsdDoge1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGhhbmRsZUhvcml6b250YWxBeGlzVHdvVmlvbGF0aW9ucyhlcnJvclN1bTogbnVtYmVyKTogdm9pZCB7XG4gICAgc3dpdGNoIChlcnJvclN1bSkge1xuICAgICAgY2FzZSA1OlxuICAgICAgY2FzZSA0OiB7XG4gICAgICAgIC8vIFRPUCgzKStMRUZUKDEpIGlzIGNhc2UgNC5cbiAgICAgICAgLy8gVE9QKDMpK1JJR0hUKDIpIGlzIGNhc2UgNS5cbiAgICAgICAgLy8gSW4gYm90aCBvZiB0aGVzZSBjYXNlcyB3ZSBuZWVkIHRvIGZsaXAgc2lkZXMgYW5kIG51ZGdlIGNvbnRlbnQgZG93blxuICAgICAgICBjb25zdCBmbGlwQW5kTnVkZ2VEb3duID0gZmxpcFNpZGVzQW5kTnVkZ2VDb250ZW50KGZsaXBTaWRlcywgbnVkZ2VDb250ZW50LCBmYWxzZSk7XG4gICAgICAgIHRoaXMuY29udGVudE9mZnNldHMgPSBhbGlnbihcbiAgICAgICAgICBmbGlwQW5kTnVkZ2VEb3duKHRoaXMucG9zaXRpb24pLFxuICAgICAgICAgIHRoaXMuY3VycmVudEFuY2hvckNvb3JkcyxcbiAgICAgICAgICB0aGlzLmN1cnJlbnRDb250ZW50Q29vcmRzXG4gICAgICAgICk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgY2FzZSAzOiB7XG4gICAgICAgIC8vIFRPUCgzKStCT1RUT00oMCkgfHwgbGVmdCgxKStSSUdIVCgyKSBpcyBjYXNlIDMuIFRoZXJlIGlzIG5vdGhpbmcgd2UgY2FuIGRvIHBvc2l0aW9uIHdpc2UgdG8gaW1wcm92ZSB0aGVcbiAgICAgICAgLy8gcGxhY2VtZW50IGZvciB0aGlzIGNvbnRlbnQuXG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgY2FzZSAyOlxuICAgICAgY2FzZSAxOiB7XG4gICAgICAgIC8vIEJPVFRPTSgwKStSSUdIVCgyKSBpcyBjYXNlIDIuXG4gICAgICAgIC8vIEJPVFRPTSgwKStMRUZUKDEpIGlzIGNhc2UgMS5cbiAgICAgICAgLy8gSW4gYm90aCBjYXNlcyB3ZSAgbmVlZCB0byBmbGlwIHNpZGVzIGFuZCBudWRnZSBjb250ZW50IHVwXG4gICAgICAgIGNvbnN0IGZsaXBBbmROdWRnZVVwID0gZmxpcFNpZGVzQW5kTnVkZ2VDb250ZW50KGZsaXBTaWRlcywgbnVkZ2VDb250ZW50LCB0cnVlKTtcbiAgICAgICAgdGhpcy5jb250ZW50T2Zmc2V0cyA9IGFsaWduKGZsaXBBbmROdWRnZVVwKHRoaXMucG9zaXRpb24pLCB0aGlzLmN1cnJlbnRBbmNob3JDb29yZHMsIHRoaXMuY3VycmVudENvbnRlbnRDb29yZHMpO1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICAgIGRlZmF1bHQ6IHtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iXX0=
|
|
214
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci1wb3NpdGlvbi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci9zcmMvdXRpbHMvcG9wb3Zlci9wcm92aWRlcnMvcG9wb3Zlci1wb3NpdGlvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7O0dBSUc7QUFFSCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDaEUsT0FBTyxFQUFjLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUUzQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFJN0MsT0FBTyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsd0JBQXdCLEVBQUUsWUFBWSxFQUFFLGNBQWMsRUFBRSxNQUFNLHVCQUF1QixDQUFDOzs7QUFJakgsTUFBTSxPQUFPLHlCQUF5QjtJQVNwQyxZQUFvQixZQUFxQyxFQUE4QixVQUFlO1FBQWxGLGlCQUFZLEdBQVosWUFBWSxDQUF5QjtRQUE4QixlQUFVLEdBQVYsVUFBVSxDQUFLO1FBRjlGLG1CQUFjLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQUczQyxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDMUQsQ0FBQztJQUVELE9BQU87UUFDTCxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFFRCxZQUFZLENBQUMsT0FBb0I7UUFDL0IsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsRUFBRTtZQUN2QyxtQ0FBbUM7WUFDbkMsZ0ZBQWdGO1lBQ2hGLE9BQU87Z0JBQ0wsT0FBTyxFQUFFLENBQUM7Z0JBQ1YsT0FB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QUNQO1lBQ0QsT0FBTyxDQUFDLENBQUM7Z0JBQ1AsTUFBTTthQUNQO1NBQ0Y7SUFDSCxDQUFDOzt1SEExT1UseUJBQXlCLHlEQVMrQixXQUFXOzJIQVRuRSx5QkFBeUI7NEZBQXpCLHlCQUF5QjtrQkFEckMsVUFBVTs7MEJBVW1ELE1BQU07MkJBQUMsV0FBVyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTYtMjAyMyBWTXdhcmUsIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqIFRoaXMgc29mdHdhcmUgaXMgcmVsZWFzZWQgdW5kZXIgTUlUIGxpY2Vuc2UuXG4gKiBUaGUgZnVsbCBsaWNlbnNlIGluZm9ybWF0aW9uIGNhbiBiZSBmb3VuZCBpbiBMSUNFTlNFIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHByb2plY3QuXG4gKi9cblxuaW1wb3J0IHsgaXNQbGF0Zm9ybUJyb3dzZXIgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlLCBQTEFURk9STV9JRCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBDbHJBeGlzIH0gZnJvbSAnLi4vZW51bXMvYXhpcy5lbnVtJztcbmltcG9ydCB7IENsclZpZXdwb3J0VmlvbGF0aW9uIH0gZnJvbSAnLi4vZW51bXMvdmlld3BvcnQtdmlvbGF0aW9uLmVudW0nO1xuaW1wb3J0IHsgQ2xyUG9wb3ZlckNvbnRlbnRPZmZzZXQgfSBmcm9tICcuLi9pbnRlcmZhY2VzL3BvcG92ZXItY29udGVudC1vZmZzZXQuaW50ZXJmYWNlJztcbmltcG9ydCB7IENsclBvcG92ZXJQb3NpdGlvbiB9IGZyb20gJy4uL2ludGVyZmFjZXMvcG9wb3Zlci1wb3NpdGlvbi5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgYWxpZ24sIGZsaXBTaWRlcywgZmxpcFNpZGVzQW5kTnVkZ2VDb250ZW50LCBudWRnZUNvbnRlbnQsIHRlc3RWaXNpYmlsaXR5IH0gZnJvbSAnLi4vcG9zaXRpb24tb3BlcmF0b3JzJztcbmltcG9ydCB7IENsclBvcG92ZXJFdmVudHNTZXJ2aWNlIH0gZnJvbSAnLi9wb3BvdmVyLWV2ZW50cy5zZXJ2aWNlJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIENsclBvcG92ZXJQb3NpdGlvblNlcnZpY2Uge1xuICBwb3NpdGlvbjogQ2xyUG9wb3ZlclBvc2l0aW9uO1xuICBzaG91bGRSZWFsaWduOiBPYnNlcnZhYmxlPHZvaWQ+O1xuXG4gIHByaXZhdGUgY3VycmVudEFuY2hvckNvb3JkczogQ2xpZW50UmVjdDtcbiAgcHJpdmF0ZSBjdXJyZW50Q29udGVudENvb3JkczogQ2xpZW50UmVjdDtcbiAgcHJpdmF0ZSBjb250ZW50T2Zmc2V0czogQ2xyUG9wb3ZlckNvbnRlbnRPZmZzZXQ7XG4gIHByaXZhdGUgX3Nob3VsZFJlYWxpZ24gPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZXZlbnRTZXJ2aWNlOiBDbHJQb3BvdmVyRXZlbnRzU2VydmljZSwgQEluamVjdChQTEFURk9STV9JRCkgcHVibGljIHBsYXRmb3JtSWQ6IGFueSkge1xuICAgIHRoaXMuc2hvdWxkUmVhbGlnbiA9IHRoaXMuX3Nob3VsZFJlYWxpZ24uYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICByZWFsaWduKCkge1xuICAgIHRoaXMuX3Nob3VsZFJlYWxpZ24ubmV4dCgpO1xuICB9XG5cbiAgYWxpZ25Db250ZW50KGNvbnRlbnQ6IEhUTUxFbGVtZW50KTogQ2xyUG9wb3ZlckNvbnRlbnRPZmZzZXQge1xuICAgIGlmICghaXNQbGF0Zm9ybUJyb3dzZXIodGhpcy5wbGF0Zm9ybUlkKSkge1xuICAgICAgLy8gT25seSBwb3NpdGlvbiB3aGVuIGluIGEgYnJvd3Nlci5cbiAgICAgIC8vIERlZmF1bHQgdG8gdGhlIGJyb3dzZXIgb3JpZ2luIGFuZCBwcmV2ZW50IGdldEJvdW5kaW5nQ2xpZW50UmVjdCBmcm9tIHJ1bm5pbmcuXG4gICAgICByZXR1cm4ge1xuICAgICAgICB4T2Zmc2V0OiAwLFxuICAgICAgICB5T2Zmc2V0OiAwLFxuICAgICAgfTtcbiAgICB9XG5cbiAgICB0aGlzLmN1cnJlbnRBbmNob3JDb29yZHMgPSB0aGlzLmV2ZW50U2VydmljZS5hbmNob3JCdXR0b25SZWYubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICB0aGlzLmN1cnJlbnRDb250ZW50Q29vcmRzID0gY29udGVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICB0aGlzLmNvbnRlbnRPZmZzZXRzID0gYWxpZ24odGhpcy5wb3NpdGlvbiwgdGhpcy5jdXJyZW50QW5jaG9yQ29vcmRzLCB0aGlzLmN1cnJlbnRDb250ZW50Q29vcmRzKTtcblxuICAgIGNvbnN0IHZpc2liaWxpdHlWaW9sYXRpb25zOiBDbHJWaWV3cG9ydFZpb2xhdGlvbltdID0gdGVzdFZpc2liaWxpdHkodGhpcy5jb250ZW50T2Zmc2V0cywgdGhpcy5jdXJyZW50Q29udGVudENvb3Jkcyk7XG4gICAgLyoqXG4gICAgICogQ2FsY3VsYXRlIHRoZSBzdW0gb2Ygdmlld3BvcnQgZXJyb3JzLiBUaGlzIGNhbGN1bGF0aW9uIGlzIHVzZWQgYmVsb3cgd2l0aCB0aGUgcHJvdmlkZWQgQXhpcyBpbiB0aGUgZ2l2ZW5cbiAgICAgKiBDbHJQb3BvdmVyUG9zaXRpb24uIEl0cyB3b3J0aCBwdXR0aW5nIHRoZSBDbHJWaWV3cG9ydFZpb2xhdGlvbiBlbnVtIHZhbHVlcyBoZXJlOlxuICAgICAqXG4gICAgICogICBCT1RUT00gPSAwLFxuICAgICAqICAgTEVGVCA9IDEsXG4gICAgICogICBSSUdIVCA9IDIsXG4gICAgICogICBUT1AgPSAzLFxuICAgICAqXG4gICAgICogICBTbywgdGhpcy52aXNpYmlsaXR5VmlvbGF0aW9ucy5sZW5ndGggdGVsbHMgdXMgaG93IG1hbnkgc2lkZXMgb2YgdGhlIHZpZXdwb3J0IHRoYXQgdGhlIHBvcG92ZXIgY29udGVudCB3YXNcbiAgICAgKiAgIGNsaXBwZWQgb24uIFdlIGNhbiBvbmx5IGhlbHAgd2hlbiB0aGUgY29udGVudCBoYXMgYW4gaXNzdWUgb24gb25lIG9yIHR3byBzaWRlcy5cbiAgICAgKiAgIGVycm9yU3VtIGlzIGNhbGN1bGF0ZWQgdG8gZGV0ZXJtaW5lIF9ob3dfIHRvIGNoYW5nZSB0aGUgcG9zaXRpb24uIExvb2tpbmcgYXQgYm90aCB0aGUgYXhpcyBhbmQgdGhlIG51bWJlclxuICAgICAqICAgb2YgdmlvbGF0aW9ucyBJIGNhbiB1c2UgdGhlIGVycm9yU3VtIHRvIGRldGVybWluZSBob3cgdG8gdHJhbnNmb3JtIHRoZSBwb3NpdGlvbiAob24gdGhlIGZseSkgYW5kIGFkanVzdFxuICAgICAqICAgd2hlcmUgaXQgY2FuIGJlIGltcHJvdmVkLlxuICAgICAqXG4gICAgICogICBOb3RlLCBtb3JlIHRoYW4gMyB2aWV3cG9ydCB2aW9sYXRpb25zIGFuZCB0aGVyZSBpc24ndCBhbnl0aGluZyB3ZSBjYW4gZG8gdG8gaGVscC4gQWxzbyB3aGVuIHRoZXJlIGFyZSB0d29cbiAgICAgKiAgIHZpb2xhdGlvbnMsIHdlIGNhbid0IGhlbHAgaWYgdGhlIHZpb2xhdGlvbnMgYXJlIFRPUCtCT1RUT00gfHwgTEVGVCtSSUdIVCA9PiBUaGVyZSBpcyBubyB0cmFuc2Zvcm1hdGlvbiB3ZVxuICAgICAqICAgY2FuIG1ha2UgdG8gdGhlIHBvc3Rpb24gdGhhdCB3aWxsIGhlbHAuXG4gICAgICpcbiAgICAgKiAgIFNvbWUgZXhhbXBsZXM6XG4gICAgICogICBUaGVyZSBpcyBvbmx5IG9uZSBlcnJvciBhbmQgUHJpbWFyeSBheGlzIGlzIFZFUlRJQ0FMXG4gICAgICogICAtIHRoaXMuaGFuZGxlVmVydGljYWxBeGlzT25lVmlvbGF0aW9uIGhhcyBhIHN3aXRjaCB0aGF0IHdpbGwgdXNlIHRoZSBlcnJvciBzdW0gdG8gYXBwbHkgdGhlIGNvcnJlY3RcbiAgICAgKiAgIHRyYW5zZm9ybSB0byB0aGUgcG9zdGlvbiBiYXNlZCBvbiB0aGUgcmVkdWN0aW9uIG9mIHZpc2liaWxpdHlWaW9sYXRpb25zLlxuICAgICAqXG4gICAgICogICBUaGVyZSBhcmUgdHdvIGVycm9ycyBhbmQgUHJpbWFyeSBheGlzIGlzIEhPUklaT05UQUxcbiAgICAgKiAgIC0gaGFuZGxlSG9yaXpvbnRhbEF4aXNUd29WaW9sYXRpb25zIGhhcyBhIHN3aXRjaCB0aGF0IHVzZXMgdGhlIGVycm9yIHN1bSB0byBhcHBseSBib3RoIHRyYW5zZm9ybXMgbmVlZGVkIHRvXG4gICAgICogICBpbXByb3ZlIHRoZSBjb250ZW50IHBvc2l0aW9uIGJhc2VkIG9uIHRoZSByZWR1Y3Rpb24gb2YgdmlzaWJpbGl0eVZpb2xhdGlvbnMuXG4gICAgICovXG5cbiAgICBjb25zdCBlcnJvclN1bSA9IHZpc2liaWxpdHlWaW9sYXRpb25zLnJlZHVjZSgoY291bnQsIGN1cnJlbnQpID0+IHtcbiAgICAgIHJldHVybiBjb3VudCArIGN1cnJlbnQ7XG4gICAgfSwgMCk7XG5cbiAgICBpZiAodmlzaWJpbGl0eVZpb2xhdGlvbnMubGVuZ3RoID09PSAxICYmIHRoaXMucG9zaXRpb24uYXhpcyA9PT0gQ2xyQXhpcy5WRVJUSUNBTCkge1xuICAgICAgLy8gV2hlbiBwcmltYXJ5IGF4aXMgaXMgVkVSVElDQUwgYW5kIHRoZXJlIGlzIG9uZSB2aWV3cG9ydCB2aW9sYXRpb25cbiAgICAgIHRoaXMuaGFuZGxlVmVydGljYWxBeGlzT25lVmlvbGF0aW9uKGVycm9yU3VtKTtcbiAgICB9IGVsc2UgaWYgKHZpc2liaWxpdHlWaW9sYXRpb25zLmxlbmd0aCA9PT0gMSAmJiB0aGlzLnBvc2l0aW9uLmF4aXMgPT09IENsckF4aXMuSE9SSVpPTlRBTCkge1xuICAgICAgLy8gV2hlbiBwcmltYXJ5IGF4aXMgaXMgSE9SSVpPTlRBTCBhbmQgdGhlcmUgaXMgb25lIHZpZXdwb3J0IHZpb2xhdGlvblxuICAgICAgdGhpcy5oYW5kbGVIb3Jpem9udGFsQXhpc09uZVZpb2xhdGlvbihlcnJvclN1bSk7XG4gICAgfSBlbHNlIGlmICh2aXNpYmlsaXR5VmlvbGF0aW9ucy5sZW5ndGggPT09IDIgJiYgdGhpcy5wb3NpdGlvbi5heGlzID09PSBDbHJBeGlzLlZFUlRJQ0FMKSB7XG4gICAgICAvLyBXaGVuIHByaW1hcnkgYXhpcyBpcyBWRVJUSUNBTCBhbmQgdGhlcmUgYXJlIHR3byB2aWV3cG9ydCB2aW9sYXRpb25zXG4gICAgICB0aGlzLmhhbmRsZVZlcnRpY2FsQXhpc1R3b1Zpb2xhdGlvbnMoZXJyb3JTdW0pO1xuICAgIH0gZWxzZSBpZiAodmlzaWJpbGl0eVZpb2xhdGlvbnMubGVuZ3RoID09PSAyICYmIHRoaXMucG9zaXRpb24uYXhpcyA9PT0gQ2xyQXhpcy5IT1JJWk9OVEFMKSB7XG4gICAgICAvLyBXaGVuIHByaW1hcnkgYXhpcyBpcyBIT1JJWk9OVEFMIGFuZCB0aGVyZSBhcmUgdHdvIHZpZXdwb3J0IHZpb2xhdGlvbnNcbiAgICAgIHRoaXMuaGFuZGxlSG9yaXpvbnRhbEF4aXNUd29WaW9sYXRpb25zKGVycm9yU3VtKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5jb250ZW50T2Zmc2V0cztcbiAgfVxuXG4gIHByaXZhdGUgaGFuZGxlVmVydGljYWxBeGlzT25lVmlvbGF0aW9uKGVycm9yU3VtOiBudW1iZXIpOiB2b2lkIHtcbiAgICBzd2l0Y2ggKGVycm9yU3VtKSB7XG4gICAgICBjYXNlIDA6XG4gICAgICBjYXNlIDM6IHtcbiAgICAgICAgLy8gQk9UVE9NKDApIG9yIFRPUCgzKSBhcmUgcHJpbWFyeSB2aW9sYXRpb25zIGFuZCB3ZSBjYW4ganVzdCBmbGlwIHNpZGVzXG4gICAgICAgIHRoaXMuY29udGVudE9mZnNldHMgPSBhbGlnbihmbGlwU2lkZXModGhpcy5wb3NpdGlvbiksIHRoaXMuY3VycmVudEFuY2hvckNvb3JkcywgdGhpcy5jdXJyZW50Q29udGVudENvb3Jkcyk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgY2FzZSAxOiB7XG4gICAgICAgIC8vIExFRlQoMSkgaXMgc2Vjb25kYXJ5IGFuZCBuZWVkcyB0byBudWRnZSBjb250ZW50IHJpZ2h0XG4gICAgICAgIHRoaXMuY29udGVudE9mZnNldHMgPSBhbGlnbih0aGlzLnBvc2l0aW9uLCB0aGlzLmN1cnJlbnRBbmNob3JDb29yZHMsIHRoaXMuY3VycmVudENvbnRlbnRDb29yZHMpO1xuXG4gICAgICAgIC8qKlxuICAgICAgICAgKiBFdmVuIHdpdGggdGhlIG51ZGdlIHdlIHN0aWxsIGhhdmUgYSBwcm9ibGVtLiBXZSBuZWVkIHRvIGNoZWNrIGlmIHRoZSBjb250ZW50IGlzIGdvaW5nIHRvIGJlIGNsaXBwZWRcbiAgICAgICAgICovXG4gICAgICAgIGlmICh0aGlzLmNvbnRlbnRPZmZzZXRzLnhPZmZzZXQgPCAwKSB7XG4gICAgICAgICAgdGhpcy5jb250ZW50T2Zmc2V0cy54T2Zmc2V0ID0gMTA7XG4gICAgICAgIH1cblxuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICAgIGNhc2UgMjoge1xuICAgICAgICAvLyBSSUdIVCgyKSBpcyBzZWNvbmRhcnkgYW5kICBuZWVkcyB0byBudWRnZSBjb250ZW50IGxlZnRcbiAgICAgICAgdGhpcy5jb250ZW50T2Zmc2V0cyA9IGFsaWduKFxuICAgICAgICAgIG51ZGdlQ29udGVudCh0aGlzLnBvc2l0aW9uLCB0cnVlKSxcbiAgICAgICAgICB0aGlzLmN1cnJlbnRBbmNob3JDb29yZHMsXG4gICAgICAgICAgdGhpcy5jdXJyZW50Q29udGVudENvb3Jkc1xuICAgICAgICApO1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICAgIGRlZmF1bHQ6IHtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGVWZXJ0aWNhbEF4aXNUd29WaW9sYXRpb25zKGVycm9yU3VtOiBudW1iZXIpOiB2b2lkIHtcbiAgICBzd2l0Y2ggKGVycm9yU3VtKSB7XG4gICAgICAvLyBXZSBrbm93IHRoZXJlIGFyZSB0d28gdmlvbGF0aW9ucy4gV2UgY2FuIHVzZSB0aGUgZXJyb3JTdW0gdG8gZGV0ZXJtaW5lIHdoaWNoIGNvbWJpbmF0aW9uIG9mIHNpZGVzIHdlcmVcbiAgICAgIC8vIHZpb2xhdGVkIGFuZCBoYW5kbGUgYXBwcm9wcmlhdGVseS5cbiAgICAgIGNhc2UgNToge1xuICAgICAgICAvLyBUT1AoMykrUklHSFQoMikgaXMgY2FzZSA1LiBXZSBuZWVkIHRvIGZsaXAgc2lkZXMgYW5kIG51ZGdlIHRoZSBjb250ZW50IHRvIHRoZSBsZWZ0XG4gICAgICAgIGNvbnN0IGZsaXBBbmROdWRnZUxlZnQgPSBmbGlwU2lkZXNBbmROdWRnZUNvbnRlbnQoZmxpcFNpZGVzLCBudWRnZUNvbnRlbnQsIHRydWUpO1xuICAgICAgICB0aGlzLmNvbnRlbnRPZmZzZXRzID0gYWxpZ24oXG4gICAgICAgICAgZmxpcEFuZE51ZGdlTGVmdCh0aGlzLnBvc2l0aW9uKSxcbiAgICAgICAgICB0aGlzLmN1cnJlbnRBbmNob3JDb29yZHMsXG4gICAgICAgICAgdGhpcy5jdXJyZW50Q29udGVudENvb3Jkc1xuICAgICAgICApO1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICAgIGNhc2UgNDoge1xuICAgICAgICAvL1RPUCgzKStMRUZUKDEpIGlzIGNhc2UgNCwgd2UgbmVlZCB0byBmbGlwIHNpZGVzIGFuZCBudWRnZSBjb250ZW50IHRvIHRoZSByaWdodFxuICAgICAgICBjb25zdCBmbGlwQW5kTnVkZ2VSaWdodCA9IGZsaXBTaWRlc0FuZE51ZGdlQ29udGVudChmbGlwU2lkZXMsIG51ZGdlQ29udGVudCwgZmFsc2UpO1xuICAgICAgICB0aGlzLmNvbnRlbnRPZmZzZXRzID0gYWxpZ24oXG4gICAgICAgICAgZmxpcEFuZE51ZGdlUmlnaHQodGhpcy5wb3NpdGlvbiksXG4gICAgICAgICAgdGhpcy5jdXJyZW50QW5jaG9yQ29vcmRzLFxuICAgICAgICAgIHRoaXMuY3VycmVudENvbnRlbnRDb29yZHNcbiAgICAgICAgKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgICBjYXNlIDM6IHtcbiAgICAgICAgLy8gVE9QKDMpK0JPVFRPTSgwKSB8fCBsZWZ0KDEpK1JJR0hUKDIpIGlzIGNhc2UgMy4gVGhlcmUgaXMgbm90aGluZyB3ZSBjYW4gZG8gcG9zaXRpb24gd2lzZSB0byBpbXByb3ZlIHRoZVxuICAgICAgICAvLyBwbGFjZW1lbnQgZm9yIHRoaXMgY29udGVudC5cbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgICBjYXNlIDI6IHtcbiAgICAgICAgLy8gQk9UVE9NKDApK1JJR0hUKDIpIGlzIGNhc2UgMi4gV2UgbmVlZCB0byBmbGlwIHNpZGVzIGFuZCBudWRnZSB0aGUgY29udGVudCB0byB0aGUgbGVmdFxuICAgICAgICBjb25zdCBmbGlwQW5kTnVkZ2VMZWZ0ID0gZmxpcFNpZGVzQW5kTnVkZ2VDb250ZW50KGZsaXBTaWRlcywgbnVkZ2VDb250ZW50LCB0cnVlKTtcbiAgICAgICAgdGhpcy5jb250ZW50T2Zmc2V0cyA9IGFsaWduKFxuICAgICAgICAgIGZsaXBBbmROdWRnZUxlZnQodGhpcy5wb3NpdGlvbiksXG4gICAgICAgICAgdGhpcy5jdXJyZW50QW5jaG9yQ29vcmRzLFxuICAgICAgICAgIHRoaXMuY3VycmVudENvbnRlbnRDb29yZHNcbiAgICAgICAgKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgICBjYXNlIDE6IHtcbiAgICAgICAgLy8gQk9UVE9NKDApK0xFRlQoMSkgaXMgY2FzZSAxLiBXZSBuZWVkIHRvIGZsaXAgc2lkZXMgYW5kIG51ZGdlIHRvIHRoZSByaWdodFxuICAgICAgICBjb25zdCBmbGlwQW5kTnVkZ2VSaWdodCA9IGZsaXBTaWRlc0FuZE51ZGdlQ29udGVudChmbGlwU2lkZXMsIG51ZGdlQ29udGVudCwgZmFsc2UpO1xuICAgICAgICB0aGlzLmNvbnRlbnRPZmZzZXRzID0gYWxpZ24oXG4gICAgICAgICAgZmxpcEFuZE51ZGdlUmlnaHQodGhpcy5wb3NpdGlvbiksXG4gICAgICAgICAgdGhpcy5jdXJyZW50QW5jaG9yQ29vcmRzLFxuICAgICAgICAgIHRoaXMuY3VycmVudENvbnRlbnRDb29yZHNcbiAgICAgICAgKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgICBkZWZhdWx0OiB7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgaGFuZGxlSG9yaXpvbnRhbEF4aXNPbmVWaW9sYXRpb24oZXJyb3JTdW06IG51bWJlcik6IHZvaWQge1xuICAgIHN3aXRjaCAoZXJyb3JTdW0pIHtcbiAgICAgIGNhc2UgMTpcbiAgICAgIGNhc2UgMjoge1xuICAgICAgICAvLyBMRUZUKDEpIGFuZCBSSUdIVCgyKSBhcmUgcHJpbWFyeSB2aW9sYXRpb25zIHNvIHdlIGNhbiBmbGlwIHNpZGVzXG4gICAgICAgIHRoaXMuY29udGVudE9mZnNldHMgPSBhbGlnbihmbGlwU2lkZXModGhpcy5wb3NpdGlvbiksIHRoaXMuY3VycmVudEFuY2hvckNvb3JkcywgdGhpcy5jdXJyZW50Q29udGVudENvb3Jkcyk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgY2FzZSAwOiB7XG4gICAgICAgIC8vIEJPVFRPTSgwKSBpcyBhIHNlY29uZGFyeSB2aW9sYXRpb24gYW5kIHdlIG5lZWQgdG8gbnVkZ2UgY29udGVudCB1cFxuICAgICAgICB0aGlzLmNvbnRlbnRPZmZzZXRzID0gYWxpZ24oXG4gICAgICAgICAgbnVkZ2VDb250ZW50KHRoaXMucG9zaXRpb24sIHRydWUpLFxuICAgICAgICAgIHRoaXMuY3VycmVudEFuY2hvckNvb3JkcyxcbiAgICAgICAgICB0aGlzLmN1cnJlbnRDb250ZW50Q29vcmRzXG4gICAgICAgICk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgY2FzZSAzOiB7XG4gICAgICAgIC8vIFRPUCgzKSBpcyBhIHNlY29uZGFyeSB2aW9sYXRpb24gYW5kIHdlIG5lZWQgdG8gbnVkZ2UgY29udGVudCBkb3duXG4gICAgICAgIHRoaXMuY29udGVudE9mZnNldHMgPSBhbGlnbihudWRnZUNvbnRlbnQodGhpcy5wb3NpdGlvbiksIHRoaXMuY3VycmVudEFuY2hvckNvb3JkcywgdGhpcy5jdXJyZW50Q29udGVudENvb3Jkcyk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgZGVmYXVsdDoge1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGhhbmRsZUhvcml6b250YWxBeGlzVHdvVmlvbGF0aW9ucyhlcnJvclN1bTogbnVtYmVyKTogdm9pZCB7XG4gICAgc3dpdGNoIChlcnJvclN1bSkge1xuICAgICAgY2FzZSA1OlxuICAgICAgY2FzZSA0OiB7XG4gICAgICAgIC8vIFRPUCgzKStMRUZUKDEpIGlzIGNhc2UgNC5cbiAgICAgICAgLy8gVE9QKDMpK1JJR0hUKDIpIGlzIGNhc2UgNS5cbiAgICAgICAgLy8gSW4gYm90aCBvZiB0aGVzZSBjYXNlcyB3ZSBuZWVkIHRvIGZsaXAgc2lkZXMgYW5kIG51ZGdlIGNvbnRlbnQgZG93blxuICAgICAgICBjb25zdCBmbGlwQW5kTnVkZ2VEb3duID0gZmxpcFNpZGVzQW5kTnVkZ2VDb250ZW50KGZsaXBTaWRlcywgbnVkZ2VDb250ZW50LCBmYWxzZSk7XG4gICAgICAgIHRoaXMuY29udGVudE9mZnNldHMgPSBhbGlnbihcbiAgICAgICAgICBmbGlwQW5kTnVkZ2VEb3duKHRoaXMucG9zaXRpb24pLFxuICAgICAgICAgIHRoaXMuY3VycmVudEFuY2hvckNvb3JkcyxcbiAgICAgICAgICB0aGlzLmN1cnJlbnRDb250ZW50Q29vcmRzXG4gICAgICAgICk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgY2FzZSAzOiB7XG4gICAgICAgIC8vIFRPUCgzKStCT1RUT00oMCkgfHwgbGVmdCgxKStSSUdIVCgyKSBpcyBjYXNlIDMuIFRoZXJlIGlzIG5vdGhpbmcgd2UgY2FuIGRvIHBvc2l0aW9uIHdpc2UgdG8gaW1wcm92ZSB0aGVcbiAgICAgICAgLy8gcGxhY2VtZW50IGZvciB0aGlzIGNvbnRlbnQuXG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgY2FzZSAyOlxuICAgICAgY2FzZSAxOiB7XG4gICAgICAgIC8vIEJPVFRPTSgwKStSSUdIVCgyKSBpcyBjYXNlIDIuXG4gICAgICAgIC8vIEJPVFRPTSgwKStMRUZUKDEpIGlzIGNhc2UgMS5cbiAgICAgICAgLy8gSW4gYm90aCBjYXNlcyB3ZSAgbmVlZCB0byBmbGlwIHNpZGVzIGFuZCBudWRnZSBjb250ZW50IHVwXG4gICAgICAgIGNvbnN0IGZsaXBBbmROdWRnZVVwID0gZmxpcFNpZGVzQW5kTnVkZ2VDb250ZW50KGZsaXBTaWRlcywgbnVkZ2VDb250ZW50LCB0cnVlKTtcbiAgICAgICAgdGhpcy5jb250ZW50T2Zmc2V0cyA9IGFsaWduKGZsaXBBbmROdWRnZVVwKHRoaXMucG9zaXRpb24pLCB0aGlzLmN1cnJlbnRBbmNob3JDb29yZHMsIHRoaXMuY3VycmVudENvbnRlbnRDb29yZHMpO1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICAgIGRlZmF1bHQ6IHtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iXX0=
|
|
@@ -7,12 +7,10 @@ import { Injectable } from '@angular/core';
|
|
|
7
7
|
import { Subject } from 'rxjs';
|
|
8
8
|
import { preventArrowKeyScroll } from '../../focus/key-focus/util';
|
|
9
9
|
import * as i0 from "@angular/core";
|
|
10
|
+
// Popovers might need to ignore click events on an element
|
|
11
|
+
// (eg: popover opens on focus on an input field. Clicks should be ignored in this case)
|
|
10
12
|
export class ClrPopoverToggleService {
|
|
11
13
|
constructor() {
|
|
12
|
-
/**
|
|
13
|
-
* Popovers might need to ignore click events on an element
|
|
14
|
-
* (eg: popover opens on focus on an input field. Clicks should be ignored in this case)
|
|
15
|
-
*/
|
|
16
14
|
this._open = false;
|
|
17
15
|
this._openChange = new Subject();
|
|
18
16
|
this._openEventChange = new Subject();
|
|
@@ -21,15 +19,15 @@ export class ClrPopoverToggleService {
|
|
|
21
19
|
get openChange() {
|
|
22
20
|
return this._openChange.asObservable();
|
|
23
21
|
}
|
|
22
|
+
get openEvent() {
|
|
23
|
+
return this._openEvent;
|
|
24
|
+
}
|
|
24
25
|
set openEvent(event) {
|
|
25
26
|
this._openEvent = event;
|
|
26
27
|
this._openEventChange.next(event);
|
|
27
28
|
}
|
|
28
|
-
get
|
|
29
|
-
return this.
|
|
30
|
-
}
|
|
31
|
-
getEventChange() {
|
|
32
|
-
return this._openEventChange.asObservable();
|
|
29
|
+
get open() {
|
|
30
|
+
return this._open;
|
|
33
31
|
}
|
|
34
32
|
set open(value) {
|
|
35
33
|
value = !!value;
|
|
@@ -38,13 +36,16 @@ export class ClrPopoverToggleService {
|
|
|
38
36
|
this._openChange.next(value);
|
|
39
37
|
}
|
|
40
38
|
}
|
|
41
|
-
get open() {
|
|
42
|
-
return this._open;
|
|
43
|
-
}
|
|
44
39
|
// For compatibility with legacy IfOpenService based implementations
|
|
45
40
|
get originalEvent() {
|
|
46
41
|
return this._openEvent;
|
|
47
42
|
}
|
|
43
|
+
get popoverAligned() {
|
|
44
|
+
return this._popoverAligned.asObservable();
|
|
45
|
+
}
|
|
46
|
+
getEventChange() {
|
|
47
|
+
return this._openEventChange.asObservable();
|
|
48
|
+
}
|
|
48
49
|
/**
|
|
49
50
|
* Sometimes, we need to remember the event that triggered the toggling to avoid loops.
|
|
50
51
|
* This is for instance the case of components that open on a click, but close on a click outside.
|
|
@@ -54,9 +55,6 @@ export class ClrPopoverToggleService {
|
|
|
54
55
|
this.openEvent = event;
|
|
55
56
|
this.open = !this.open;
|
|
56
57
|
}
|
|
57
|
-
get popoverAligned() {
|
|
58
|
-
return this._popoverAligned.asObservable();
|
|
59
|
-
}
|
|
60
58
|
popoverAlignedEmit(popoverNode) {
|
|
61
59
|
this._popoverAligned.next(popoverNode);
|
|
62
60
|
}
|
|
@@ -66,4 +64,4 @@ ClrPopoverToggleService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.
|
|
|
66
64
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ClrPopoverToggleService, decorators: [{
|
|
67
65
|
type: Injectable
|
|
68
66
|
}] });
|
|
69
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
67
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci10b2dnbGUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXIvc3JjL3V0aWxzL3BvcG92ZXIvcHJvdmlkZXJzL3BvcG92ZXItdG9nZ2xlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7R0FJRztBQUVILE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFjLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUUzQyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7QUFFbkUsMkRBQTJEO0FBQzNELHdGQUF3RjtBQUd4RixNQUFNLE9BQU8sdUJBQXVCO0lBRHBDO1FBRVUsVUFBSyxHQUFHLEtBQUssQ0FBQztRQUNkLGdCQUFXLEdBQUcsSUFBSSxPQUFPLEVBQVcsQ0FBQztRQUVyQyxxQkFBZ0IsR0FBRyxJQUFJLE9BQU8sRUFBUyxDQUFDO1FBQ3hDLG9CQUFlLEdBQUcsSUFBSSxPQUFPLEVBQWUsQ0FBQztLQW9EdEQ7SUFsREMsSUFBSSxVQUFVO1FBQ1osT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3pDLENBQUM7SUFFRCxJQUFJLFNBQVM7UUFDWCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUM7SUFDekIsQ0FBQztJQUNELElBQUksU0FBUyxDQUFDLEtBQVk7UUFDeEIsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUM7UUFDeEIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRUQsSUFBSSxJQUFJO1FBQ04sT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFDRCxJQUFJLElBQUksQ0FBQyxLQUFjO1FBQ3JCLEtBQUssR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDO1FBQ2hCLElBQUksSUFBSSxDQUFDLEtBQUssS0FBSyxLQUFLLEVBQUU7WUFDeEIsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7WUFDbkIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDOUI7SUFDSCxDQUFDO0lBRUQsb0VBQW9FO0lBQ3BFLElBQUksYUFBYTtRQUNmLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQztJQUN6QixDQUFDO0lBRUQsSUFBSSxjQUFjO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUM3QyxDQUFDO0lBRUQsY0FBYztRQUNaLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzlDLENBQUM7SUFFRDs7O09BR0c7SUFDSCxlQUFlLENBQUMsS0FBVTtRQUN4QixxQkFBcUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUU3QixJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztRQUN2QixJQUFJLENBQUMsSUFBSSxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztJQUN6QixDQUFDO0lBRUQsa0JBQWtCLENBQUMsV0FBd0I7UUFDekMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDekMsQ0FBQzs7cUhBeERVLHVCQUF1Qjt5SEFBdkIsdUJBQXVCOzRGQUF2Qix1QkFBdUI7a0JBRG5DLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDE2LTIwMjMgVk13YXJlLCBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKiBUaGlzIHNvZnR3YXJlIGlzIHJlbGVhc2VkIHVuZGVyIE1JVCBsaWNlbnNlLlxuICogVGhlIGZ1bGwgbGljZW5zZSBpbmZvcm1hdGlvbiBjYW4gYmUgZm91bmQgaW4gTElDRU5TRSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBwcm9qZWN0LlxuICovXG5cbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgcHJldmVudEFycm93S2V5U2Nyb2xsIH0gZnJvbSAnLi4vLi4vZm9jdXMva2V5LWZvY3VzL3V0aWwnO1xuXG4vLyBQb3BvdmVycyBtaWdodCBuZWVkIHRvIGlnbm9yZSBjbGljayBldmVudHMgb24gYW4gZWxlbWVudFxuLy8gKGVnOiBwb3BvdmVyIG9wZW5zIG9uIGZvY3VzIG9uIGFuIGlucHV0IGZpZWxkLiBDbGlja3Mgc2hvdWxkIGJlIGlnbm9yZWQgaW4gdGhpcyBjYXNlKVxuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQ2xyUG9wb3ZlclRvZ2dsZVNlcnZpY2Uge1xuICBwcml2YXRlIF9vcGVuID0gZmFsc2U7XG4gIHByaXZhdGUgX29wZW5DaGFuZ2UgPSBuZXcgU3ViamVjdDxib29sZWFuPigpO1xuICBwcml2YXRlIF9vcGVuRXZlbnQ6IEV2ZW50O1xuICBwcml2YXRlIF9vcGVuRXZlbnRDaGFuZ2UgPSBuZXcgU3ViamVjdDxFdmVudD4oKTtcbiAgcHJpdmF0ZSBfcG9wb3ZlckFsaWduZWQgPSBuZXcgU3ViamVjdDxIVE1MRWxlbWVudD4oKTtcblxuICBnZXQgb3BlbkNoYW5nZSgpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5fb3BlbkNoYW5nZS5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIGdldCBvcGVuRXZlbnQoKTogRXZlbnQge1xuICAgIHJldHVybiB0aGlzLl9vcGVuRXZlbnQ7XG4gIH1cbiAgc2V0IG9wZW5FdmVudChldmVudDogRXZlbnQpIHtcbiAgICB0aGlzLl9vcGVuRXZlbnQgPSBldmVudDtcbiAgICB0aGlzLl9vcGVuRXZlbnRDaGFuZ2UubmV4dChldmVudCk7XG4gIH1cblxuICBnZXQgb3BlbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fb3BlbjtcbiAgfVxuICBzZXQgb3Blbih2YWx1ZTogYm9vbGVhbikge1xuICAgIHZhbHVlID0gISF2YWx1ZTtcbiAgICBpZiAodGhpcy5fb3BlbiAhPT0gdmFsdWUpIHtcbiAgICAgIHRoaXMuX29wZW4gPSB2YWx1ZTtcbiAgICAgIHRoaXMuX29wZW5DaGFuZ2UubmV4dCh2YWx1ZSk7XG4gICAgfVxuICB9XG5cbiAgLy8gRm9yIGNvbXBhdGliaWxpdHkgd2l0aCBsZWdhY3kgSWZPcGVuU2VydmljZSBiYXNlZCBpbXBsZW1lbnRhdGlvbnNcbiAgZ2V0IG9yaWdpbmFsRXZlbnQoKTogRXZlbnQge1xuICAgIHJldHVybiB0aGlzLl9vcGVuRXZlbnQ7XG4gIH1cblxuICBnZXQgcG9wb3ZlckFsaWduZWQoKTogT2JzZXJ2YWJsZTxIVE1MRWxlbWVudD4ge1xuICAgIHJldHVybiB0aGlzLl9wb3BvdmVyQWxpZ25lZC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIGdldEV2ZW50Q2hhbmdlKCk6IE9ic2VydmFibGU8RXZlbnQ+IHtcbiAgICByZXR1cm4gdGhpcy5fb3BlbkV2ZW50Q2hhbmdlLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFNvbWV0aW1lcywgd2UgbmVlZCB0byByZW1lbWJlciB0aGUgZXZlbnQgdGhhdCB0cmlnZ2VyZWQgdGhlIHRvZ2dsaW5nIHRvIGF2b2lkIGxvb3BzLlxuICAgKiBUaGlzIGlzIGZvciBpbnN0YW5jZSB0aGUgY2FzZSBvZiBjb21wb25lbnRzIHRoYXQgb3BlbiBvbiBhIGNsaWNrLCBidXQgY2xvc2Ugb24gYSBjbGljayBvdXRzaWRlLlxuICAgKi9cbiAgdG9nZ2xlV2l0aEV2ZW50KGV2ZW50OiBhbnkpIHtcbiAgICBwcmV2ZW50QXJyb3dLZXlTY3JvbGwoZXZlbnQpO1xuXG4gICAgdGhpcy5vcGVuRXZlbnQgPSBldmVudDtcbiAgICB0aGlzLm9wZW4gPSAhdGhpcy5vcGVuO1xuICB9XG5cbiAgcG9wb3ZlckFsaWduZWRFbWl0KHBvcG92ZXJOb2RlOiBIVE1MRWxlbWVudCkge1xuICAgIHRoaXMuX3BvcG92ZXJBbGlnbmVkLm5leHQocG9wb3Zlck5vZGUpO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) 2016-2023 VMware, Inc. All Rights Reserved.
|
|
3
|
+
* This software is released under MIT license.
|
|
4
|
+
* The full license information can be found in LICENSE in the root directory of this project.
|
|
5
|
+
*/
|
|
6
|
+
export {};
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGluZy1sZXZlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXIvc3JjL3dpemFyZC9oZWFkaW5nLWxldmVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7O0dBSUciLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDE2LTIwMjMgVk13YXJlLCBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKiBUaGlzIHNvZnR3YXJlIGlzIHJlbGVhc2VkIHVuZGVyIE1JVCBsaWNlbnNlLlxuICogVGhlIGZ1bGwgbGljZW5zZSBpbmZvcm1hdGlvbiBjYW4gYmUgZm91bmQgaW4gTElDRU5TRSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBwcm9qZWN0LlxuICovXG5cbmV4cG9ydCB0eXBlIEhlYWRpbmdMZXZlbCA9IDEgfCAyIHwgMyB8IDQgfCA1IHwgNiB8ICcxJyB8ICcyJyB8ICczJyB8ICc0JyB8ICc1JyB8ICc2JztcbiJdfQ==
|
package/esm2020/wizard/index.mjs
CHANGED
|
@@ -9,10 +9,11 @@ export * from './wizard-stepnav';
|
|
|
9
9
|
export * from './wizard-stepnav-item';
|
|
10
10
|
export * from './wizard-button';
|
|
11
11
|
export * from './wizard-header-action';
|
|
12
|
-
export * from './wizard-
|
|
12
|
+
export * from './wizard-title';
|
|
13
13
|
export * from './wizard-page-title';
|
|
14
14
|
export * from './wizard-page-navtitle';
|
|
15
15
|
export * from './wizard-page-buttons';
|
|
16
16
|
export * from './wizard-page-header-actions';
|
|
17
17
|
export * from './wizard.module';
|
|
18
|
-
|
|
18
|
+
export * from './heading-level';
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyL3NyYy93aXphcmQvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7R0FJRztBQUVILGNBQWMsVUFBVSxDQUFDO0FBQ3pCLGNBQWMsZUFBZSxDQUFDO0FBQzlCLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyxnQkFBZ0IsQ0FBQztBQUMvQixjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMsaUJBQWlCLENBQUM7QUFFaEMsY0FBYyxpQkFBaUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTYtMjAyMyBWTXdhcmUsIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqIFRoaXMgc29mdHdhcmUgaXMgcmVsZWFzZWQgdW5kZXIgTUlUIGxpY2Vuc2UuXG4gKiBUaGUgZnVsbCBsaWNlbnNlIGluZm9ybWF0aW9uIGNhbiBiZSBmb3VuZCBpbiBMSUNFTlNFIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHByb2plY3QuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi93aXphcmQnO1xuZXhwb3J0ICogZnJvbSAnLi93aXphcmQtcGFnZSc7XG5leHBvcnQgKiBmcm9tICcuL3dpemFyZC1zdGVwbmF2JztcbmV4cG9ydCAqIGZyb20gJy4vd2l6YXJkLXN0ZXBuYXYtaXRlbSc7XG5leHBvcnQgKiBmcm9tICcuL3dpemFyZC1idXR0b24nO1xuZXhwb3J0ICogZnJvbSAnLi93aXphcmQtaGVhZGVyLWFjdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL3dpemFyZC10aXRsZSc7XG5leHBvcnQgKiBmcm9tICcuL3dpemFyZC1wYWdlLXRpdGxlJztcbmV4cG9ydCAqIGZyb20gJy4vd2l6YXJkLXBhZ2UtbmF2dGl0bGUnO1xuZXhwb3J0ICogZnJvbSAnLi93aXphcmQtcGFnZS1idXR0b25zJztcbmV4cG9ydCAqIGZyb20gJy4vd2l6YXJkLXBhZ2UtaGVhZGVyLWFjdGlvbnMnO1xuZXhwb3J0ICogZnJvbSAnLi93aXphcmQubW9kdWxlJztcblxuZXhwb3J0ICogZnJvbSAnLi9oZWFkaW5nLWxldmVsJztcbiJdfQ==
|
|
@@ -60,4 +60,4 @@ ButtonHubService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", ver
|
|
|
60
60
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ButtonHubService, decorators: [{
|
|
61
61
|
type: Injectable
|
|
62
62
|
}] });
|
|
63
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
63
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLWh1Yi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci9zcmMvd2l6YXJkL3Byb3ZpZGVycy9idXR0b24taHViLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7R0FJRztBQUVILE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFHL0IsTUFBTSxPQUFPLGdCQUFnQjtJQUQ3QjtRQUVFLGlCQUFZLEdBQUcsS0FBSyxDQUFDO1FBRWIsd0JBQW1CLEdBQUcsSUFBSSxPQUFPLEVBQU8sQ0FBQztRQUN6QyxvQkFBZSxHQUFHLElBQUksT0FBTyxFQUFPLENBQUM7UUFDckMsc0JBQWlCLEdBQUcsSUFBSSxPQUFPLEVBQU8sQ0FBQztRQUN2QyxzQkFBaUIsR0FBRyxJQUFJLE9BQU8sRUFBTyxDQUFDO1FBQ3ZDLHNCQUFpQixHQUFHLElBQUksT0FBTyxFQUFPLENBQUM7UUFDdkMsc0JBQWlCLEdBQUcsSUFBSSxPQUFPLEVBQU8sQ0FBQztLQXlDaEQ7SUF2Q0MsSUFBSSxrQkFBa0I7UUFDcEIsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDakQsQ0FBQztJQUVELElBQUksY0FBYztRQUNoQixPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDN0MsQ0FBQztJQUVELElBQUksZ0JBQWdCO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLFlBQVksRUFBRSxDQUFDO0lBQy9DLENBQUM7SUFFRCxJQUFJLGdCQUFnQjtRQUNsQixPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUMvQyxDQUFDO0lBRUQsSUFBSSxnQkFBZ0I7UUFDbEIsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDL0MsQ0FBQztJQUVELElBQUksZ0JBQWdCO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLFlBQVksRUFBRSxDQUFDO0lBQy9DLENBQUM7SUFFRCxhQUFhLENBQUMsVUFBa0I7UUFDOUIsSUFBSSxVQUFVLEtBQUssVUFBVSxFQUFFO1lBQzdCLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLEVBQUUsQ0FBQztTQUNqQzthQUFNLElBQUksTUFBTSxLQUFLLFVBQVUsRUFBRTtZQUNoQyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksRUFBRSxDQUFDO1NBQzdCO2FBQU0sSUFBSSxRQUFRLEtBQUssVUFBVSxFQUFFO1lBQ2xDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLEVBQUUsQ0FBQztTQUMvQjthQUFNLElBQUksUUFBUSxLQUFLLFVBQVUsRUFBRTtZQUNsQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxFQUFFLENBQUM7U0FDL0I7YUFBTSxJQUFJLFFBQVEsS0FBSyxVQUFVLEVBQUU7WUFDbEMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksRUFBRSxDQUFDO1NBQy9CO2FBQU07WUFDTCxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1NBQ3pDO0lBQ0gsQ0FBQzs7OEdBaERVLGdCQUFnQjtrSEFBaEIsZ0JBQWdCOzRGQUFoQixnQkFBZ0I7a0JBRDVCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDE2LTIwMjMgVk13YXJlLCBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKiBUaGlzIHNvZnR3YXJlIGlzIHJlbGVhc2VkIHVuZGVyIE1JVCBsaWNlbnNlLlxuICogVGhlIGZ1bGwgbGljZW5zZSBpbmZvcm1hdGlvbiBjYW4gYmUgZm91bmQgaW4gTElDRU5TRSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBwcm9qZWN0LlxuICovXG5cbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEJ1dHRvbkh1YlNlcnZpY2Uge1xuICBidXR0b25zUmVhZHkgPSBmYWxzZTtcblxuICBwcml2YXRlIF9wcmV2aW91c0J0bkNsaWNrZWQgPSBuZXcgU3ViamVjdDxhbnk+KCk7XG4gIHByaXZhdGUgX25leHRCdG5DbGlja2VkID0gbmV3IFN1YmplY3Q8YW55PigpO1xuICBwcml2YXRlIF9kYW5nZXJCdG5DbGlja2VkID0gbmV3IFN1YmplY3Q8YW55PigpO1xuICBwcml2YXRlIF9jYW5jZWxCdG5DbGlja2VkID0gbmV3IFN1YmplY3Q8YW55PigpO1xuICBwcml2YXRlIF9maW5pc2hCdG5DbGlja2VkID0gbmV3IFN1YmplY3Q8YW55PigpO1xuICBwcml2YXRlIF9jdXN0b21CdG5DbGlja2VkID0gbmV3IFN1YmplY3Q8YW55PigpO1xuXG4gIGdldCBwcmV2aW91c0J0bkNsaWNrZWQoKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5fcHJldmlvdXNCdG5DbGlja2VkLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgZ2V0IG5leHRCdG5DbGlja2VkKCk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMuX25leHRCdG5DbGlja2VkLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgZ2V0IGRhbmdlckJ0bkNsaWNrZWQoKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5fZGFuZ2VyQnRuQ2xpY2tlZC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIGdldCBjYW5jZWxCdG5DbGlja2VkKCk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMuX2NhbmNlbEJ0bkNsaWNrZWQuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBnZXQgZmluaXNoQnRuQ2xpY2tlZCgpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiB0aGlzLl9maW5pc2hCdG5DbGlja2VkLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgZ2V0IGN1c3RvbUJ0bkNsaWNrZWQoKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5fY3VzdG9tQnRuQ2xpY2tlZC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIGJ1dHRvbkNsaWNrZWQoYnV0dG9uVHlwZTogc3RyaW5nKTogdm9pZCB7XG4gICAgaWYgKCdwcmV2aW91cycgPT09IGJ1dHRvblR5cGUpIHtcbiAgICAgIHRoaXMuX3ByZXZpb3VzQnRuQ2xpY2tlZC5uZXh0KCk7XG4gICAgfSBlbHNlIGlmICgnbmV4dCcgPT09IGJ1dHRvblR5cGUpIHtcbiAgICAgIHRoaXMuX25leHRCdG5DbGlja2VkLm5leHQoKTtcbiAgICB9IGVsc2UgaWYgKCdmaW5pc2gnID09PSBidXR0b25UeXBlKSB7XG4gICAgICB0aGlzLl9maW5pc2hCdG5DbGlja2VkLm5leHQoKTtcbiAgICB9IGVsc2UgaWYgKCdkYW5nZXInID09PSBidXR0b25UeXBlKSB7XG4gICAgICB0aGlzLl9kYW5nZXJCdG5DbGlja2VkLm5leHQoKTtcbiAgICB9IGVsc2UgaWYgKCdjYW5jZWwnID09PSBidXR0b25UeXBlKSB7XG4gICAgICB0aGlzLl9jYW5jZWxCdG5DbGlja2VkLm5leHQoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5fY3VzdG9tQnRuQ2xpY2tlZC5uZXh0KGJ1dHRvblR5cGUpO1xuICAgIH1cbiAgfVxufVxuIl19
|
|
@@ -7,8 +7,6 @@ import { Injectable } from '@angular/core';
|
|
|
7
7
|
import * as i0 from "@angular/core";
|
|
8
8
|
import * as i1 from "./wizard-navigation.service";
|
|
9
9
|
export class HeaderActionService {
|
|
10
|
-
// this service communicates information about the presence/display of header actions
|
|
11
|
-
// across the wizard
|
|
12
10
|
constructor(navService) {
|
|
13
11
|
this.navService = navService;
|
|
14
12
|
}
|
|
@@ -34,4 +32,4 @@ HeaderActionService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0",
|
|
|
34
32
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: HeaderActionService, decorators: [{
|
|
35
33
|
type: Injectable
|
|
36
34
|
}], ctorParameters: function () { return [{ type: i1.WizardNavigationService }]; } });
|
|
37
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLWFjdGlvbnMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXIvc3JjL3dpemFyZC9wcm92aWRlcnMvaGVhZGVyLWFjdGlvbnMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7OztHQUlHO0FBRUgsT0FBTyxFQUFFLFVBQVUsRUFBYSxNQUFNLGVBQWUsQ0FBQzs7O0FBTXRELE1BQU0sT0FBTyxtQkFBbUI7SUFNOUIsWUFBbUIsVUFBbUM7UUFBbkMsZUFBVSxHQUFWLFVBQVUsQ0FBeUI7SUFBRyxDQUFDO0lBRTFELElBQUksc0JBQXNCO1FBQ3hCLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDO1FBQ2xELElBQUksQ0FBQyxnQkFBZ0IsRUFBRTtZQUNyQixPQUFPLEtBQUssQ0FBQztTQUNkO1FBQ0QsT0FBTyxnQkFBZ0IsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFFRCxJQUFJLDJCQUEyQjtRQUM3QixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO0lBQzVGLENBQUM7SUFFRCxJQUFJLHVCQUF1QjtRQUN6QixPQUFPLENBQUMsSUFBSSxDQUFDLDJCQUEyQixJQUFJLElBQUksQ0FBQyxzQkFBc0IsQ0FBQztJQUMxRSxDQUFDO0lBRUQsSUFBSSwyQkFBMkI7UUFDN0IsT0FBTyxJQUFJLENBQUMsMkJBQTJCLElBQUksSUFBSSxDQUFDLHNCQUFzQixDQUFDO0lBQ3pFLENBQUM7O2lIQTFCVSxtQkFBbUI7cUhBQW5CLG1CQUFtQjs0RkFBbkIsbUJBQW1CO2tCQUQvQixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoYykgMjAxNi0yMDIzIFZNd2FyZSwgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICogVGhpcyBzb2Z0d2FyZSBpcyByZWxlYXNlZCB1bmRlciBNSVQgbGljZW5zZS5cbiAqIFRoZSBmdWxsIGxpY2Vuc2UgaW5mb3JtYXRpb24gY2FuIGJlIGZvdW5kIGluIExJQ0VOU0UgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgcHJvamVjdC5cbiAqL1xuXG5pbXBvcnQgeyBJbmplY3RhYmxlLCBRdWVyeUxpc3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgQ2xyV2l6YXJkSGVhZGVyQWN0aW9uIH0gZnJvbSAnLi4vd2l6YXJkLWhlYWRlci1hY3Rpb24nO1xuaW1wb3J0IHsgV2l6YXJkTmF2aWdhdGlvblNlcnZpY2UgfSBmcm9tICcuL3dpemFyZC1uYXZpZ2F0aW9uLnNlcnZpY2UnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgSGVhZGVyQWN0aW9uU2VydmljZSB7XG4gIC8vIHRoaXMgc2VydmljZSBjb21tdW5pY2F0ZXMgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHByZXNlbmNlL2Rpc3BsYXkgb2YgaGVhZGVyIGFjdGlvbnNcbiAgLy8gYWNyb3NzIHRoZSB3aXphcmRcblxuICB3aXphcmRIZWFkZXJBY3Rpb25zOiBRdWVyeUxpc3Q8Q2xyV2l6YXJkSGVhZGVyQWN0aW9uPjtcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgbmF2U2VydmljZTogV2l6YXJkTmF2aWdhdGlvblNlcnZpY2UpIHt9XG5cbiAgZ2V0IHdpemFyZEhhc0hlYWRlckFjdGlvbnMoKTogYm9vbGVhbiB7XG4gICAgY29uc3Qgd2l6YXJkSGRyQWN0aW9ucyA9IHRoaXMud2l6YXJkSGVhZGVyQWN0aW9ucztcbiAgICBpZiAoIXdpemFyZEhkckFjdGlvbnMpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgcmV0dXJuIHdpemFyZEhkckFjdGlvbnMudG9BcnJheSgpLmxlbmd0aCA+IDA7XG4gIH1cblxuICBnZXQgY3VycmVudFBhZ2VIYXNIZWFkZXJBY3Rpb25zKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLm5hdlNlcnZpY2UuY3VycmVudFBhZ2UgPyB0aGlzLm5hdlNlcnZpY2UuY3VycmVudFBhZ2UuaGFzSGVhZGVyQWN0aW9ucyA6IGZhbHNlO1xuICB9XG5cbiAgZ2V0IHNob3dXaXphcmRIZWFkZXJBY3Rpb25zKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhdGhpcy5jdXJyZW50UGFnZUhhc0hlYWRlckFjdGlvbnMgJiYgdGhpcy53aXphcmRIYXNIZWFkZXJBY3Rpb25zO1xuICB9XG5cbiAgZ2V0IGRpc3BsYXlIZWFkZXJBY3Rpb25zV3JhcHBlcigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5jdXJyZW50UGFnZUhhc0hlYWRlckFjdGlvbnMgfHwgdGhpcy53aXphcmRIYXNIZWFkZXJBY3Rpb25zO1xuICB9XG59XG4iXX0=
|
|
@@ -30,8 +30,6 @@ import * as i0 from "@angular/core";
|
|
|
30
30
|
*/
|
|
31
31
|
export class PageCollectionService {
|
|
32
32
|
constructor() {
|
|
33
|
-
// used by the navService to navigate back to first possible step after
|
|
34
|
-
// pages are reset
|
|
35
33
|
/**
|
|
36
34
|
*
|
|
37
35
|
* @memberof PageCollectionService
|
|
@@ -94,6 +92,17 @@ export class PageCollectionService {
|
|
|
94
92
|
}
|
|
95
93
|
return this.pagesAsArray[0];
|
|
96
94
|
}
|
|
95
|
+
/**
|
|
96
|
+
* An observable that the navigation service listens to in order to know when
|
|
97
|
+
* the page collection completed states have been reset to false so that way it
|
|
98
|
+
* can also reset the navigation to make the first page in the page collection
|
|
99
|
+
* current/active.
|
|
100
|
+
*
|
|
101
|
+
* @memberof PageCollectionService
|
|
102
|
+
*/
|
|
103
|
+
get pagesReset() {
|
|
104
|
+
return this._pagesReset.asObservable();
|
|
105
|
+
}
|
|
97
106
|
/**
|
|
98
107
|
* Used mostly internally, but accepts a string ID and returns a ClrWizardPage
|
|
99
108
|
* object that matches the ID passed. Note that IDs here should include the prefix
|
|
@@ -138,24 +147,6 @@ export class PageCollectionService {
|
|
|
138
147
|
}
|
|
139
148
|
return index;
|
|
140
149
|
}
|
|
141
|
-
/**
|
|
142
|
-
* Consolidates guard logic that prevents a couple of unfortunate edge cases with
|
|
143
|
-
* look ups on the collection of pages.
|
|
144
|
-
*
|
|
145
|
-
* @memberof PageCollectionService
|
|
146
|
-
*/
|
|
147
|
-
checkResults(results, requestedPageId) {
|
|
148
|
-
const foundPagesCount = results.length || 0;
|
|
149
|
-
if (foundPagesCount > 1) {
|
|
150
|
-
throw new Error('More than one page has the requested id ' + requestedPageId + '.');
|
|
151
|
-
}
|
|
152
|
-
else if (foundPagesCount < 1) {
|
|
153
|
-
throw new Error('No page can be found with the id ' + requestedPageId + '.');
|
|
154
|
-
}
|
|
155
|
-
else {
|
|
156
|
-
return results[0];
|
|
157
|
-
}
|
|
158
|
-
}
|
|
159
150
|
/**
|
|
160
151
|
* Accepts two numeric indexes and returns an array of wizard page objects that include
|
|
161
152
|
* all wizard pages in the page collection from the first index to the second.
|
|
@@ -287,17 +278,6 @@ export class PageCollectionService {
|
|
|
287
278
|
page.onCommit.emit(page.id);
|
|
288
279
|
}
|
|
289
280
|
}
|
|
290
|
-
/**
|
|
291
|
-
* An observable that the navigation service listens to in order to know when
|
|
292
|
-
* the page collection completed states have been reset to false so that way it
|
|
293
|
-
* can also reset the navigation to make the first page in the page collection
|
|
294
|
-
* current/active.
|
|
295
|
-
*
|
|
296
|
-
* @memberof PageCollectionService
|
|
297
|
-
*/
|
|
298
|
-
get pagesReset() {
|
|
299
|
-
return this._pagesReset.asObservable();
|
|
300
|
-
}
|
|
301
281
|
/**
|
|
302
282
|
* Sets all completed states of the pages in the page collection to false and
|
|
303
283
|
* notifies the navigation service to likewise reset the navigation.
|
|
@@ -352,10 +332,28 @@ export class PageCollectionService {
|
|
|
352
332
|
const myIncompleteIndex = this.findFirstIncompletePageIndex();
|
|
353
333
|
return this.pagesAsArray[myIncompleteIndex];
|
|
354
334
|
}
|
|
335
|
+
/**
|
|
336
|
+
* Consolidates guard logic that prevents a couple of unfortunate edge cases with
|
|
337
|
+
* look ups on the collection of pages.
|
|
338
|
+
*
|
|
339
|
+
* @memberof PageCollectionService
|
|
340
|
+
*/
|
|
341
|
+
checkResults(results, requestedPageId) {
|
|
342
|
+
const foundPagesCount = results.length || 0;
|
|
343
|
+
if (foundPagesCount > 1) {
|
|
344
|
+
throw new Error('More than one page has the requested id ' + requestedPageId + '.');
|
|
345
|
+
}
|
|
346
|
+
else if (foundPagesCount < 1) {
|
|
347
|
+
throw new Error('No page can be found with the id ' + requestedPageId + '.');
|
|
348
|
+
}
|
|
349
|
+
else {
|
|
350
|
+
return results[0];
|
|
351
|
+
}
|
|
352
|
+
}
|
|
355
353
|
}
|
|
356
354
|
PageCollectionService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PageCollectionService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
357
355
|
PageCollectionService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PageCollectionService });
|
|
358
356
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PageCollectionService, decorators: [{
|
|
359
357
|
type: Injectable
|
|
360
358
|
}] });
|
|
361
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS1jb2xsZWN0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyL3NyYy93aXphcmQvcHJvdmlkZXJzL3BhZ2UtY29sbGVjdGlvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7O0dBSUc7QUFFSCxPQUFPLEVBQUUsVUFBVSxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBRXRELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7O0FBSS9COzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FxQkc7QUFFSCxNQUFNLE9BQU8scUJBQXFCO0lBRGxDO1FBMlNFLHVFQUF1RTtRQUN2RSxrQkFBa0I7UUFFbEI7OztXQUdHO1FBQ0ssZ0JBQVcsR0FBRyxJQUFJLE9BQU8sRUFBVyxDQUFDO0tBMkU5QztJQWxYQzs7Ozs7O09BTUc7SUFDSCxJQUFJLFlBQVk7UUFDZCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUNoRCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILElBQUksVUFBVTtRQUNaLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxJQUFJLGVBQWU7UUFDakIsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQztRQUVsQyxJQUFJLFNBQVMsR0FBRyxDQUFDLEVBQUU7WUFDakIsT0FBTyxJQUFJLENBQUM7U0FDYjtRQUVELE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxTQUFTLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDMUMsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsSUFB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SUFBSSxLQUFLLEdBQUcsb0JBQW9CLEVBQUU7Z0JBQ2hDLElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO2FBQ3hCO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILDRCQUE0QjtRQUMxQixJQUFJLFdBQVcsR0FBVyxJQUFJLENBQUM7UUFDL0IsSUFBSSxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFtQixFQUFFLEtBQWEsRUFBRSxFQUFFO1lBQy9ELElBQUksSUFBSSxLQUFLLFdBQVcsSUFBSSxLQUFLLEtBQUssSUFBSSxDQUFDLFNBQVMsRUFBRTtnQkFDcEQsV0FBVyxHQUFHLEtBQUssQ0FBQzthQUNyQjtRQUNILENBQUMsQ0FBQyxDQUFDO1FBRUgsK0NBQStDO1FBQy9DLElBQUksSUFBSSxLQUFLLFdBQVcsRUFBRTtZQUN4QixXQUFXLEdBQUcsSUFBSSxDQUFDLFVBQVUsR0FBRyxDQUFDLENBQUM7U0FDbkM7UUFFRCxPQUFPLFdBQVcsQ0FBQztJQUNyQixDQUFDO0lBRUQsdUJBQXVCO1FBQ3JCLE1BQU0saUJBQWlCLEdBQUcsSUFBSSxDQUFDLDRCQUE0QixFQUFFLENBQUM7UUFDOUQsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFDOUMsQ0FBQzs7bUhBM1hVLHFCQUFxQjt1SEFBckIscUJBQXFCOzRGQUFyQixxQkFBcUI7a0JBRGpDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDE2LTIwMjMgVk13YXJlLCBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKiBUaGlzIHNvZnR3YXJlIGlzIHJlbGVhc2VkIHVuZGVyIE1JVCBsaWNlbnNlLlxuICogVGhlIGZ1bGwgbGljZW5zZSBpbmZvcm1hdGlvbiBjYW4gYmUgZm91bmQgaW4gTElDRU5TRSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBwcm9qZWN0LlxuICovXG5cbmltcG9ydCB7IEluamVjdGFibGUsIFF1ZXJ5TGlzdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBDbHJXaXphcmRQYWdlIH0gZnJvbSAnLi4vd2l6YXJkLXBhZ2UnO1xuXG4vKipcbiAqIFBhZ2VDb2xsZWN0aW9uU2VydmljZSBtYW5hZ2VzIHRoZSBjb2xsZWN0aW9uIG9mIHBhZ2VzIGFzc2lnbmVkIHRvIHRoZSB3aXphcmQgYW5kIG9mZmVyc1xuICogYSBudW1iZXIgb2YgZnVuY3Rpb25zIHVzZWZ1bCBhY3Jvc3MgdGhlIHdpemFyZHMgcHJvdmlkZXJzIGFuZCBzdWJjb21wb25lbnRzIC0tIGFsbCByZWxhdGVkXG4gKiB0byBlc3NlbnRpYWxseSBsb29rdXBzIG9uIHRoZSBjb2xsZWN0aW9uIG9mIHBhZ2VzLlxuICpcbiAqIFRoZSBlYXNpZXN0IHdheSB0byBhY2Nlc3MgUGFnZUNvbGxlY3Rpb25TZXJ2aWNlIGlzIHZpYSB0aGUgd2l6YXJkLiBUaGVcbiAqIGZvbGxvd2luZyBleGFtcGxlIHdvdWxkIGFsbG93IHlvdSB0byBhY2Nlc3MgeW91ciBpbnN0YW5jZSBvZiB0aGUgd2l6YXJkIGZyb20geW91ciBob3N0XG4gKiBjb21wb25lbnQgYW5kIHRoZXJlYnkgYWNjZXNzIHRoZSBwYWdlIGNvbGxlY3Rpb24gdmlhIFlvdXJIb3N0Q29tcG9uZW50LndpemFyZC5wYWdlQ29sbGVjdGlvbi5cbiAqXG4gKiBAZXhhbXBsZVxuICogPGNsci13aXphcmQgI3dpemFyZCAuLi4+XG4gKlxuICogQGV4YW1wbGVcbiAqIGV4cG9ydCBjbGFzcyBZb3VySG9zdENvbXBvbmVudCB7XG4gKiAgIEBWaWV3Q2hpbGQoXCJ3aXphcmRcIikgd2l6YXJkOiBXaXphcmQ7XG4gKiAgIC4uLlxuICogfVxuICpcbiAqIFRoZSBoZWFydCBvZiB0aGUgcGFnZSBjb2xsZWN0aW9uIGlzIHRoZSBxdWVyeSBsaXN0IG9mIHBhZ2VzLCB3aGljaCBpdCBpcyBhc3NpZ25lZCBhcyBhXG4gKiByZWZlcmVuY2UgdG8gdGhlIFdpemFyZC5wYWdlcyBRdWVyeUxpc3Qgd2hlbiB0aGUgd2l6YXJkIGlzIGNyZWF0ZWQuXG4gKlxuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgUGFnZUNvbGxlY3Rpb25TZXJ2aWNlIHtcbiAgLyoqXG4gICAqIEEgcmVmZXJlbmNlIHRvIHRoZSBXaXphcmQucGFnZXMgUXVlcnlMaXN0LlxuICAgKlxuICAgKiBQb3B1bGF0ZWQgd2hlbiB0aGUgd2l6YXJkIGlzIGNyZWF0ZWQuXG4gICAqXG4gICAqIEBtZW1iZXJvZiBQYWdlQ29sbGVjdGlvblNlcnZpY2VcbiAgICovXG4gIHBhZ2VzOiBRdWVyeUxpc3Q8Q2xyV2l6YXJkUGFnZT47XG5cbiAgLyoqXG4gICAqIENvbnZlcnRzIHRoZSBQYWdlQ29sbGVjdGlvblNlcnZpY2UucGFnZXMgUXVlcnlMaXN0IHRvIGFuIGFycmF5IGFuZCByZXR1cm5zIGl0LlxuICAgKlxuICAgKiBVc2VmdWwgZm9yIG1hbnkgaW5zdGFuY2VzIHdoZW4geW91IHdvdWxkIHByZWZlciBhIFF1ZXJ5TGlzdCB0byBhY3QgbGlrZSBhbiBhcnJheS5cbiAgICpcbiAgICogQG1lbWJlcm9mIFBhZ2VDb2xsZWN0aW9uU2VydmljZVxuICAgKi9cbiAgZ2V0IHBhZ2VzQXNBcnJheSgpOiBDbHJXaXphcmRQYWdlW10ge1xuICAgIHJldHVybiB0aGlzLnBhZ2VzID8gdGhpcy5wYWdlcy50b0FycmF5KCkgOiBbXTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBsZW5ndGggb2YgdGhlIHBhZ2VzIHF1ZXJ5IGxpc3QuXG4gICAqXG4gICAqIEBtZW1iZXJvZiBQYWdlQ29sbGVjdGlvblNlcnZpY2VcbiAgICovXG4gIGdldCBwYWdlc0NvdW50KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMucGFnZXMgPyB0aGlzLnBhZ2VzLmxlbmd0aCA6IDA7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgbmV4dC10by1sYXN0IHBhZ2UgaW4gdGhlIHF1ZXJ5IGxpc3Qgb2YgcGFnZXMuIE9wZXJhdGVzIGFzIGEgZ2V0dGVyXG4gICAqIHNvIHRoYXQgaXQgaXNuJ3Qgd29ya2luZyB3aXRoIHN0YWxlIGRhdGEuXG4gICAqXG4gICAqIEBtZW1iZXJvZiBQYWdlQ29sbGVjdGlvblNlcnZpY2VcbiAgICovXG4gIGdldCBwZW51bHRpbWF0ZVBhZ2UoKTogQ2xyV2l6YXJkUGFnZSB7XG4gICAgY29uc3QgcGFnZUNvdW50ID0gdGhpcy5wYWdlc0NvdW50O1xuXG4gICAgaWYgKHBhZ2VDb3VudCA8IDIpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLnBhZ2VzQXNBcnJheVtwYWdlQ291bnQgLSAyXTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBsYXN0IHBhZ2UgaW4gdGhlIHF1ZXJ5IGxpc3Qgb2YgcGFnZXMuIE9wZXJhdGVzIGFzIGEgZ2V0dGVyXG4gICAqIHNvIHRoYXQgaXQgaXNuJ3Qgd29ya2luZyB3aXRoIHN0YWxlIGRhdGEuXG4gICAqXG4gICAqIEBtZW1iZXJvZiBQYWdlQ29sbGVjdGlvblNlcnZpY2VcbiAgICovXG4gIGdldCBsYXN0UGFnZSgpOiBDbHJXaXphcmRQYWdlIHtcbiAgICBjb25zdCBwYWdlQ291bnQgPSB0aGlzLnBhZ2VzQ291bnQ7XG5cbiAgICBpZiAocGFnZUNvdW50IDwgMSkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMucGFnZXNBc0FycmF5W3BhZ2VDb3VudCAtIDFdO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIGZpcnN0IHBhZ2UgaW4gdGhlIHF1ZXJ5IGxpc3Qgb2YgcGFnZXMuIE9wZXJhdGVzIGFzIGEgZ2V0dGVyXG4gICAqIHNvIHRoYXQgaXQgaXNuJ3Qgd29ya2luZyB3aXRoIHN0YWxlIGRhdGEuXG4gICAqXG4gICAqIEBtZW1iZXJvZiBQYWdlQ29sbGVjdGlvblNlcnZpY2VcbiAgICovXG4gIGdldCBmaXJzdFBhZ2UoKTogQ2xyV2l6YXJkUGFnZSB7XG4gICAgaWYgKCF0aGlzLnBhZ2VzQ291bnQpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLnBhZ2VzQXNBcnJheVswXTtcbiAgfVxuXG4gIC8qKlxuICAgKiBVc2VkIG1vc3RseSBpbnRlcm5hbGx5LCBidXQgYWNjZXB0cyBhIHN0cmluZyBJRCBhbmQgcmV0dXJucyBhIENscldpemFyZFBhZ2VcbiAgICogb2JqZWN0IHRoYXQgbWF0Y2hlcyB0aGUgSUQgcGFzc2VkLiBOb3RlIHRoYXQgSURzIGhlcmUgc2hvdWxkIGluY2x1ZGUgdGhlIHByZWZpeFxuICAgKiBcImNsci13aXphcmQtcGFnZS1cIi5cbiAgICpcbiAgICogUmV0dXJucyB0aGUgbmV4dC10by1sYXN0IHBhZ2UgaW4gdGhlIHF1ZXJ5IGxpc3Qgb2YgcGFnZXMuIE9wZXJhdGVzIGFzIGEgZ2V0dGVyXG4gICAqIHNvIHRoYXQgaXQgaXNuJ3Qgd29ya2luZyB3aXRoIHN0YWxlIGRhdGEuXG4gICAqXG4gICAqIEBtZW1iZXJvZiBQYWdlQ29sbGVjdGlvblNlcnZpY2VcbiAgICovXG4gIGdldFBhZ2VCeUlkKGlkOiBzdHJpbmcpOiBDbHJXaXphcmRQYWdlIHtcbiAgICBjb25zdCBmb3VuZFBhZ2VzOiBDbHJXaXphcmRQYWdlW10gPSB0aGlzLnBhZ2VzLmZpbHRlcigocGFnZTogQ2xyV2l6YXJkUGFnZSkgPT4gaWQgPT09IHBhZ2UuaWQpO1xuICAgIHJldHVybiB0aGlzLmNoZWNrUmVzdWx0cyhmb3VuZFBhZ2VzLCBpZCk7XG4gIH1cblxuICAvKipcbiAgICogQWNjZXB0cyBzIG51bWJlciBhcyBhIHBhcmFtZXRlciBhbmQgdHJlYXRzIHRoYXQgbnVtYmVyIGFzIHRoZSBpbmRleCBvZiB0aGUgcGFnZVxuICAgKiB5b3UncmUgbG9va2luZyBmb3IgaW4gdGhlIGNvbGxlY3Rpb24gb2YgcGFnZXMuIFJldHVybnMgYSAgd2l6YXJkIHBhZ2Ugb2JqZWN0LlxuICAgKlxuICAgKiBAbWVtYmVyb2YgUGFnZUNvbGxlY3Rpb25TZXJ2aWNlXG4gICAqL1xuICBnZXRQYWdlQnlJbmRleChpbmRleDogbnVtYmVyKTogQ2xyV2l6YXJkUGFnZSB7XG4gICAgY29uc3QgcGFnZUNvdW50ID0gdGhpcy5wYWdlc0NvdW50O1xuICAgIGNvbnN0IHBhZ2VzTGFzdEluZGV4OiBudW1iZXIgPSBwYWdlQ291bnQgPiAxID8gcGFnZUNvdW50IC0gMSA6IDA7XG5cbiAgICBpZiAoaW5kZXggPCAwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0Nhbm5vdCByZXRyaWV2ZSBwYWdlIHdpdGggaW5kZXggb2YgJyArIGluZGV4KTtcbiAgICB9XG5cbiAgICBpZiAoaW5kZXggPiBwYWdlc0xhc3RJbmRleCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdQYWdlIGluZGV4IGlzIGdyZWF0ZXIgdGhhbiBsZW5ndGggb2YgcGFnZXMgYXJyYXkuJyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMucGFnZXNBc0FycmF5W2luZGV4XTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUYWtlcyBhIHdpemFyZCBwYWdlIG9iamVjdCBhcyBhIHBhcmFtZXRlciBhbmQgcmV0dXJucyBpdHMgaW5kZXggaW4gdGhlXG4gICAqIGNvbGxlY3Rpb24gb2YgcGFnZXMuXG4gICAqXG4gICAqIEBtZW1iZXJvZiBQYWdlQ29sbGVjdGlvblNlcnZpY2VcbiAgICovXG4gIGdldFBhZ2VJbmRleChwYWdlOiBDbHJXaXphcmRQYWdlKTogbnVtYmVyIHtcbiAgICBjb25zdCBpbmRleCA9IHRoaXMucGFnZXNBc0FycmF5LmluZGV4T2YocGFnZSk7XG5cbiAgICBpZiAoaW5kZXggPCAwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1JlcXVlc3RlZCBwYWdlIGNhbm5vdCBiZSBmb3VuZCBpbiBjb2xsZWN0aW9uIG9mIHBhZ2VzLicpO1xuICAgIH1cblxuICAgIHJldHVybiBpbmRleDtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb25zb2xpZGF0ZXMgZ3VhcmQgbG9naWMgdGhhdCBwcmV2ZW50cyBhIGNvdXBsZSBvZiB1bmZvcnR1bmF0ZSBlZGdlIGNhc2VzIHdpdGhcbiAgICogbG9vayB1cHMgb24gdGhlIGNvbGxlY3Rpb24gb2YgcGFnZXMuXG4gICAqXG4gICAqIEBtZW1iZXJvZiBQYWdlQ29sbGVjdGlvblNlcnZpY2VcbiAgICovXG4gIHByaXZhdGUgY2hlY2tSZXN1bHRzKHJlc3VsdHM6IENscldpemFyZFBhZ2VbXSwgcmVxdWVzdGVkUGFnZUlkOiBzdHJpbmcpIHtcbiAgICBjb25zdCBmb3VuZFBhZ2VzQ291bnQ6IG51bWJlciA9IHJlc3VsdHMubGVuZ3RoIHx8IDA7XG5cbiAgICBpZiAoZm91bmRQYWdlc0NvdW50ID4gMSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdNb3JlIHRoYW4gb25lIHBhZ2UgaGFzIHRoZSByZXF1ZXN0ZWQgaWQgJyArIHJlcXVlc3RlZFBhZ2VJZCArICcuJyk7XG4gICAgfSBlbHNlIGlmIChmb3VuZFBhZ2VzQ291bnQgPCAxKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ05vIHBhZ2UgY2FuIGJlIGZvdW5kIHdpdGggdGhlIGlkICcgKyByZXF1ZXN0ZWRQYWdlSWQgKyAnLicpO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gcmVzdWx0c1swXTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQWNjZXB0cyB0d28gbnVtZXJpYyBpbmRleGVzIGFuZCByZXR1cm5zIGFuIGFycmF5IG9mIHdpemFyZCBwYWdlIG9iamVjdHMgdGhhdCBpbmNsdWRlXG4gICAqIGFsbCB3aXphcmQgcGFnZXMgaW4gdGhlIHBhZ2UgY29sbGVjdGlvbiBmcm9tIHRoZSBmaXJzdCBpbmRleCB0byB0aGUgc2Vjb25kLlxuICAgKlxuICAgKiBAbWVtYmVyb2YgUGFnZUNvbGxlY3Rpb25TZXJ2aWNlXG4gICAqL1xuICBwYWdlUmFuZ2Uoc3RhcnQ6IG51bWJlciwgZW5kOiBudW1iZXIpOiBDbHJXaXphcmRQYWdlW10ge1xuICAgIGxldCBwYWdlczogQ2xyV2l6YXJkUGFnZVtdID0gW107XG5cbiAgICBpZiAoc3RhcnQgPCAwIHx8IGVuZCA8IDApIHtcbiAgICAgIHJldHVybiBbXTtcbiAgICB9XG5cbiAgICBpZiAoc3RhcnQgPT09IG51bGwgfHwgdHlwZW9mIHN0YXJ0ID09PSAndW5kZWZpbmVkJyB8fCBpc05hTihzdGFydCkpIHtcbiAgICAgIHJldHVybiBbXTtcbiAgICB9XG5cbiAgICBpZiAoZW5kID09PSBudWxsIHx8IHR5cGVvZiBlbmQgPT09ICd1bmRlZmluZWQnIHx8IGlzTmFOKGVuZCkpIHtcbiAgICAgIHJldHVybiBbXTtcbiAgICB9XG5cbiAgICBpZiAoZW5kID4gdGhpcy5wYWdlc0NvdW50KSB7XG4gICAgICBlbmQgPSB0aGlzLnBhZ2VzQ291bnQ7XG4gICAgfVxuXG4gICAgcGFnZXMgPSB0aGlzLnBhZ2VzQXNBcnJheTtcblxuICAgIGlmIChlbmQgLSBzdGFydCA9PT0gMCkge1xuICAgICAgLy8ganVzdCByZXR1cm4gdGhlIG9uZSBwYWdlIHRoZXkgd2FudFxuICAgICAgcmV0dXJuIFt0aGlzLmdldFBhZ2VCeUluZGV4KHN0YXJ0KV07XG4gICAgfVxuXG4gICAgLy8gc2xpY2UgZW5kIGRvZXMgbm90IGluY2x1ZGUgaXRlbSByZWZlcmVuY2VkIGJ5IGVuZCBpbmRleCwgd2hpY2ggaXMgd2VpcmQgZm9yIHVzZXJzXG4gICAgLy8gaW5jcmVtZW50aW5nIGVuZCBpbmRleCBoZXJlIHRvIGNvcnJlY3QgdGhhdCBzbyB1c2VycyBhbmQgb3RoZXIgbWV0aG9kc1xuICAgIC8vIGRvbid0IGhhdmUgdG8gdGhpbmsgYWJvdXQgaXRcbiAgICBlbmQgPSBlbmQgKyAxO1xuXG4gICAgLy8gc2xpY2UgZG9lcyBub3QgcmV0dXJuIHRoZSBsYXN0IG9uZSBpbiB0aGUgcmFuZ2UgYnV0IGl0IGRvZXMgaW5jbHVkZSB0aGUgZmlyc3Qgb25lXG4gICAgLy8gZG9lcyBub3QgbW9kaWZ5IG9yaWdpbmFsIGFycmF5XG4gICAgcmV0dXJuIHBhZ2VzLnNsaWNlKHN0YXJ0LCBlbmQpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFjY2VwdHMgdHdvIHdpemFyZCBwYWdlIG9iamVjdHMgYW5kIHJldHVybnMgdGhvc2UgcGFnZSBvYmplY3RzIHdpdGggYWxsIG90aGVyIHBhZ2VcbiAgICogb2JqZWN0cyBiZXR3ZWVuIHRoZW0gaW4gdGhlIHBhZ2UgY29sbGVjdGlvbi4gSXQgZG9lc24ndCBjYXJlIHdoaWNoIHBhZ2UgaXMgYWhlYWQgb2YgdGhlXG4gICAqIG90aGVyIGluIHRoZSBwYXJhbWV0ZXJzLiBJdCB3aWxsIGJlIHNtYXJ0IGVub3VnaCB0byBmaWd1cmUgdGhhdCBvdXQgIG9uIGl0cyBvd24uXG4gICAqXG4gICAqIEBtZW1iZXJvZiBQYWdlQ29sbGVjdGlvblNlcnZpY2VcbiAgICovXG4gIGdldFBhZ2VSYW5nZUZyb21QYWdlcyhwYWdlOiBDbHJXaXphcmRQYWdlLCBvdGhlclBhZ2U6IENscldpemFyZFBhZ2UpOiBDbHJXaXphcmRQYWdlW10ge1xuICAgIGNvbnN0IHBhZ2VJbmRleCA9IHRoaXMuZ2V0UGFnZUluZGV4KHBhZ2UpO1xuICAgIGNvbnN0IG90aGVyUGFnZUluZGV4ID0gdGhpcy5nZXRQYWdlSW5kZXgob3RoZXJQYWdlKTtcbiAgICBsZXQgc3RhcnRJbmRleDogbnVtYmVyO1xuICAgIGxldCBlbmRJbmRleDogbnVtYmVyO1xuXG4gICAgaWYgKHBhZ2VJbmRleCA8PSBvdGhlclBhZ2VJbmRleCkge1xuICAgICAgc3RhcnRJbmRleCA9IHBhZ2VJbmRleDtcbiAgICAgIGVuZEluZGV4ID0gb3RoZXJQYWdlSW5kZXg7XG4gICAgfSBlbHNlIHtcbiAgICAgIHN0YXJ0SW5kZXggPSBvdGhlclBhZ2VJbmRleDtcbiAgICAgIGVuZEluZGV4ID0gcGFnZUluZGV4O1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5wYWdlUmFuZ2Uoc3RhcnRJbmRleCwgZW5kSW5kZXgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRha2VzIGEgd2l6YXJkIHBhZ2Ugb2JqZWN0IGFzIGEgcGFyYW1ldGVyIGFuZCByZXR1cm5zIHRoZSB3aXphcmQgcGFnZSBvYmplY3Qgb2ZcbiAgICogdGhlIHBhZ2UgaW1tZWRpYXRlbHkgYmVmb3JlIGl0IGluIHRoZSBwYWdlIGNvbGxlY3Rpb24uIFJldHVybnMgbnVsbCBpZiB0aGVyZSBpc1xuICAgKiBubyBwYWdlIGJlZm9yZSB0aGUgcGFnZSBpdCBpcyBwYXNzZWQuXG4gICAqXG4gICAqIEBtZW1iZXJvZiBQYWdlQ29sbGVjdGlvblNlcnZpY2VcbiAgICovXG4gIGdldFByZXZpb3VzUGFnZShwYWdlOiBDbHJXaXphcmRQYWdlKSB7XG4gICAgY29uc3QgbXlQYWdlSW5kZXggPSB0aGlzLmdldFBhZ2VJbmRleChwYWdlKTtcbiAgICBjb25zdCBwcmV2aW91c1BhZ2VJbmRleCA9IG15UGFnZUluZGV4IC0gMTtcbiAgICBpZiAocHJldmlvdXNQYWdlSW5kZXggPCAwKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuZ2V0UGFnZUJ5SW5kZXgocHJldmlvdXNQYWdlSW5kZXgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFjY2VwdHMgYSB3aXphcmQgcGFnZSBvYmplY3QgYXMgYSBwYXJhbWV0ZXIgYW5kIHJldHVybnMgYSBCb29sZWFuIHRoYXQgc2F5cyBpZlxuICAgKiB0aGUgcGFnZSB5b3Ugc2VudCBpdCBpcyBjb21wbGV0ZS5cbiAgICpcbiAgICogQG1lbWJlcm9mIFBhZ2VDb2xsZWN0aW9uU2VydmljZVxuICAgKi9cbiAgcHJldmlvdXNQYWdlSXNDb21wbGV0ZWQocGFnZTogQ2xyV2l6YXJkUGFnZSkge1xuICAgIGlmICghcGFnZSkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIGNvbnN0IHByZXZpb3VzUGFnZSA9IHRoaXMuZ2V0UHJldmlvdXNQYWdlKHBhZ2UpO1xuXG4gICAgaWYgKG51bGwgPT09IHByZXZpb3VzUGFnZSkge1xuICAgICAgLy8gcGFnZSBpcyB0aGUgZmlyc3QgcGFnZS4gbm8gcHJldmlvdXMgcGFnZS5cbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cblxuICAgIHJldHVybiBwcmV2aW91c1BhZ2UuY29tcGxldGVkO1xuICB9XG5cbiAgLyoqXG4gICAqIFRha2VzIGEgd2l6YXJkIHBhZ2Ugb2JqZWN0IGFzIGEgcGFyYW1ldGVyIGFuZCByZXR1cm5zIHRoZSB3aXphcmQgcGFnZSBvYmplY3Qgb2ZcbiAgICogdGhlIHBhZ2UgaW1tZWRpYXRlbHkgYWZ0ZXIgaXQgaW4gdGhlIHBhZ2UgY29sbGVjdGlvbi4gUmV0dXJucyBudWxsIGlmIHRoZXJlIGlzXG4gICAqIG5vIHBhZ2UgYWZ0ZXIgdGhlIHBhZ2UgaXQgaXMgcGFzc2VkLlxuICAgKlxuICAgKiBAbWVtYmVyb2YgUGFnZUNvbGxlY3Rpb25TZXJ2aWNlXG4gICAqL1xuICBnZXROZXh0UGFnZShwYWdlOiBDbHJXaXphcmRQYWdlKSB7XG4gICAgY29uc3QgbXlQYWdlSW5kZXggPSB0aGlzLmdldFBhZ2VJbmRleChwYWdlKTtcbiAgICBjb25zdCBuZXh0UGFnZUluZGV4ID0gbXlQYWdlSW5kZXggKyAxO1xuXG4gICAgaWYgKG5leHRQYWdlSW5kZXggPj0gdGhpcy5wYWdlc0FzQXJyYXkubGVuZ3RoKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuZ2V0UGFnZUJ5SW5kZXgobmV4dFBhZ2VJbmRleCk7XG4gIH1cblxuICAvKipcbiAgICogVGFrZXMgYSB3aXphcmQgcGFnZSBvYmplY3QgYXMgYSBwYXJhbWV0ZXIgYW5kIGdlbmVyYXRlcyBhIHN0ZXAgaXRlbSBpZCBmcm9tIHRoZVxuICAgKiBwYWdlIElELiBSZXR1cm5zIHRoZSBnZW5lcmF0ZWQgc3RlcCBpdGVtIElEIGFzIGEgc3RyaW5nLlxuICAgKlxuICAgKiBAbWVtYmVyb2YgUGFnZUNvbGxlY3Rpb25TZXJ2aWNlXG4gICAqL1xuICBnZXRTdGVwSXRlbUlkRm9yUGFnZShwYWdlOiBDbHJXaXphcmRQYWdlKSB7XG4gICAgY29uc3QgcGFnZUlkID0gcGFnZS5pZDtcbiAgICBjb25zdCBwYWdlSWRQYXJ0cyA9IHBhZ2VJZC5zcGxpdCgnLScpLnJldmVyc2UoKTtcblxuICAgIHBhZ2VJZFBhcnRzWzFdID0gJ3N0ZXAnO1xuICAgIHJldHVybiBwYWdlSWRQYXJ0cy5yZXZlcnNlKCkuam9pbignLScpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdlbmVyYWxseSBvbmx5IHVzZWQgaW50ZXJuYWxseSB0byBtYXJrIHRoYXQgYSBzcGVjaWZpYyBwYWdlIGhhcyBiZWVuIFwiY29tbWl0dGVkXCIuXG4gICAqIFRoaXMgaW52b2x2ZXMgbWFya2luZyB0aGUgcGFnZSBjb21wbGV0ZSBhbmQgZmlyaW5nIHRoZSBDbHJXaXphcmRQYWdlLm9uQ29tbWl0XG4gICAqIChjbHJXaXphcmRQYWdlT25Db21taXQpIG91dHB1dC4gVGFrZXMgdGhlIHdpemFyZCBwYWdlIG9iamVjdCB0aGF0IHlvdSBpbnRlbmQgdG9cbiAgICogbWFyayBjb21wbGV0ZWQgYXMgYSBwYXJhbWV0ZXIuXG4gICAqXG4gICAqIEBtZW1iZXJvZiBQYWdlQ29sbGVjdGlvblNlcnZpY2VcbiAgICovXG4gIGNvbW1pdFBhZ2UocGFnZTogQ2xyV2l6YXJkUGFnZSkge1xuICAgIGNvbnN0IHBhZ2VIYXNPdmVycmlkZXMgPSBwYWdlLnN0b3BOZXh0IHx8IHBhZ2UucHJldmVudERlZmF1bHQ7XG4gICAgcGFnZS5jb21wbGV0ZWQgPSB0cnVlO1xuXG4gICAgaWYgKCFwYWdlSGFzT3ZlcnJpZGVzKSB7XG4gICAgICAvLyBwcmV2ZW50IGxvb3Agb2YgZXZlbnQgZW1pc3Npb247IGFsdGVybmF0ZSBmbG93cyB3b3JrIG9mZlxuICAgICAgLy8gb2YgZXZlbnQgZW1pdHRlcnMgdGhpcyBpcyBob3cgdGhleSBicmVhayB0aGF0IGN5Y2xlLlxuICAgICAgcGFnZS5vbkNvbW1pdC5lbWl0KHBhZ2UuaWQpO1xuICAgIH1cbiAgfVxuXG4gIC8vIHVzZWQgYnkgdGhlIG5hdlNlcnZpY2UgdG8gbmF2aWdhdGUgYmFjayB0byBmaXJzdCBwb3NzaWJsZSBzdGVwIGFmdGVyXG4gIC8vIHBhZ2VzIGFyZSByZXNldFxuXG4gIC8qKlxuICAgKlxuICAgKiBAbWVtYmVyb2YgUGFnZUNvbGxlY3Rpb25TZXJ2aWNlXG4gICAqL1xuICBwcml2YXRlIF9wYWdlc1Jlc2V0ID0gbmV3IFN1YmplY3Q8Ym9vbGVhbj4oKTtcblxuICAvKipcbiAgICogQW4gb2JzZXJ2YWJsZSB0aGF0IHRoZSBuYXZpZ2F0aW9uIHNlcnZpY2UgbGlzdGVucyB0byBpbiBvcmRlciB0byBrbm93IHdoZW5cbiAgICogdGhlIHBhZ2UgY29sbGVjdGlvbiBjb21wbGV0ZWQgc3RhdGVzIGhhdmUgYmVlbiByZXNldCB0byBmYWxzZSBzbyB0aGF0IHdheSBpdFxuICAgKiBjYW4gYWxzbyByZXNldCB0aGUgbmF2aWdhdGlvbiB0byBtYWtlIHRoZSBmaXJzdCBwYWdlIGluIHRoZSBwYWdlIGNvbGxlY3Rpb25cbiAgICogY3VycmVudC9hY3RpdmUuXG4gICAqXG4gICAqIEBtZW1iZXJvZiBQYWdlQ29sbGVjdGlvblNlcnZpY2VcbiAgICovXG4gIGdldCBwYWdlc1Jlc2V0KCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLl9wYWdlc1Jlc2V0LmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgYWxsIGNvbXBsZXRlZCBzdGF0ZXMgb2YgdGhlIHBhZ2VzIGluIHRoZSBwYWdlIGNvbGxlY3Rpb24gdG8gZmFsc2UgYW5kXG4gICAqIG5vdGlmaWVzIHRoZSBuYXZpZ2F0aW9uIHNlcnZpY2UgdG8gbGlrZXdpc2UgcmVzZXQgdGhlIG5hdmlnYXRpb24uXG4gICAqXG4gICAqIEBtZW1iZXJvZiBQYWdlQ29sbGVjdGlvblNlcnZpY2VcbiAgICovXG4gIHJlc2V0KCkge1xuICAgIHRoaXMucGFnZXNBc0FycmF5LmZvckVhY2goKHBhZ2U6IENscldpemFyZFBhZ2UpID0+IHtcbiAgICAgIHBhZ2UuY29tcGxldGVkID0gZmFsc2U7XG4gICAgfSk7XG4gICAgdGhpcy5fcGFnZXNSZXNldC5uZXh0KHRydWUpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJvbGxzIHRocm91Z2ggYWxsIHRoZSBwYWdlcyBpbiB0aGUgcGFnZSBjb2xsZWN0aW9uIHRvIG1ha2Ugc3VyZSB0aGVyZSBhcmUgbm9cbiAgICogaW5jb21wbGV0ZSBwYWdlcyBzYW5kd2ljaGVkIGJldHdlZW4gY29tcGxldGVkIHBhZ2VzIGluIHRoZSB3b3JrZmxvdy4gSWRlbnRpZmllc1xuICAgKiB0aGUgZmlyc3QgaW5jb21wbGV0ZSBwYWdlIGluZGV4IGFuZCBzZXRzIGFsbCBwYWdlcyBiZWhpbmQgaXQgdG8gYSBjb21wbGV0ZWRcbiAgICogc3RhdGUgb2YgZmFsc2UuXG4gICAqXG4gICAqIEBtZW1iZXJvZiBQYWdlQ29sbGVjdGlvblNlcnZpY2VcbiAgICovXG4gIHVwZGF0ZUNvbXBsZXRlZFN0YXRlcygpOiB2b2lkIHtcbiAgICBjb25zdCBmaXJzdEluY29tcGxldGVJbmRleCA9IHRoaXMuZmluZEZpcnN0SW5jb21wbGV0ZVBhZ2VJbmRleCgpO1xuXG4gICAgaWYgKGZpcnN0SW5jb21wbGV0ZUluZGV4ID09PSB0aGlzLnBhZ2VzQXNBcnJheS5sZW5ndGggLSAxKSB7XG4gICAgICAvLyBhbGwgY29tcGxldGUgbm8gbmVlZCB0byBkbyBhbnl0aGluZ1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMucGFnZXNBc0FycmF5LmZvckVhY2goKHBhZ2U6IENscldpemFyZFBhZ2UsIGluZGV4OiBudW1iZXIpID0+IHtcbiAgICAgIGlmIChpbmRleCA+IGZpcnN0SW5jb21wbGV0ZUluZGV4KSB7XG4gICAgICAgIHBhZ2UuY29tcGxldGVkID0gZmFsc2U7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogUmV0cmlldmVzIHRoZSBpbmRleCBvZiB0aGUgZmlyc3QgaW5jb21wbGV0ZSBwYWdlIGluIHRoZSBwYWdlIGNvbGxlY3Rpb24uXG4gICAqXG4gICAqIEBtZW1iZXJvZiBQYWdlQ29sbGVjdGlvblNlcnZpY2VcbiAgICovXG4gIGZpbmRGaXJzdEluY29tcGxldGVQYWdlSW5kZXgoKTogbnVtYmVyIHtcbiAgICBsZXQgcmV0dXJuSW5kZXg6IG51bWJlciA9IG51bGw7XG4gICAgdGhpcy5wYWdlc0FzQXJyYXkuZm9yRWFjaCgocGFnZTogQ2xyV2l6YXJkUGFnZSwgaW5kZXg6IG51bWJlcikgPT4ge1xuICAgICAgaWYgKG51bGwgPT09IHJldHVybkluZGV4ICYmIGZhbHNlID09PSBwYWdlLmNvbXBsZXRlZCkge1xuICAgICAgICByZXR1cm5JbmRleCA9IGluZGV4O1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgLy8gZmFsbHRocm91Z2gsIGFsbCBjb21wbGV0ZWQsIHJldHVybiBsYXN0IHBhZ2VcbiAgICBpZiAobnVsbCA9PT0gcmV0dXJuSW5kZXgpIHtcbiAgICAgIHJldHVybkluZGV4ID0gdGhpcy5wYWdlc0NvdW50IC0gMTtcbiAgICB9XG5cbiAgICByZXR1cm4gcmV0dXJuSW5kZXg7XG4gIH1cblxuICBmaW5kRmlyc3RJbmNvbXBsZXRlUGFnZSgpOiBDbHJXaXphcmRQYWdlIHtcbiAgICBjb25zdCBteUluY29tcGxldGVJbmRleCA9IHRoaXMuZmluZEZpcnN0SW5jb21wbGV0ZVBhZ2VJbmRleCgpO1xuICAgIHJldHVybiB0aGlzLnBhZ2VzQXNBcnJheVtteUluY29tcGxldGVJbmRleF07XG4gIH1cbn1cbiJdfQ==
|
|
359
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS1jb2xsZWN0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyL3NyYy93aXphcmQvcHJvdmlkZXJzL3BhZ2UtY29sbGVjdGlvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7O0dBSUc7QUFFSCxPQUFPLEVBQUUsVUFBVSxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBRXRELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7O0FBSS9COzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FxQkc7QUFFSCxNQUFNLE9BQU8scUJBQXFCO0lBRGxDO1FBV0U7OztXQUdHO1FBQ0ssZ0JBQVcsR0FBRyxJQUFJLE9BQU8sRUFBVyxDQUFDO0tBMlc5QztJQXpXQzs7Ozs7O09BTUc7SUFDSCxJQUFJLFlBQVk7UUFDZCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUNoRCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILElBQUksVUFBVTtRQUNaLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxJQUFJLGVBQWU7UUFDakIsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQztRQUVsQyxJQUFJLFNBQVMsR0FBRyxDQUFDLEVBQUU7WUFDakIsT0FBTyxJQUFJLENBQUM7U0FDYjtRQUVELE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxTQUFTLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDMUMsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsSUFBSSxRQUFRO1FBQ1YsTUFBTSxTQUFTLEdBQUcs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O1lBQ3hCLFdBQVcsR0FBRyxJQUFJLENBQUMsVUFBVSxHQUFHLENBQUMsQ0FBQztTQUNuQztRQUVELE9BQU8sV0FBVyxDQUFDO0lBQ3JCLENBQUM7SUFFRCx1QkFBdUI7UUFDckIsTUFBTSxpQkFBaUIsR0FBRyxJQUFJLENBQUMsNEJBQTRCLEVBQUUsQ0FBQztRQUM5RCxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQUM5QyxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSyxZQUFZLENBQUMsT0FBd0IsRUFBRSxlQUF1QjtRQUNwRSxNQUFNLGVBQWUsR0FBVyxPQUFPLENBQUMsTUFBTSxJQUFJLENBQUMsQ0FBQztRQUVwRCxJQUFJLGVBQWUsR0FBRyxDQUFDLEVBQUU7WUFDdkIsTUFBTSxJQUFJLEtBQUssQ0FBQywwQ0FBMEMsR0FBRyxlQUFlLEdBQUcsR0FBRyxDQUFDLENBQUM7U0FDckY7YUFBTSxJQUFJLGVBQWUsR0FBRyxDQUFDLEVBQUU7WUFDOUIsTUFBTSxJQUFJLEtBQUssQ0FBQyxtQ0FBbUMsR0FBRyxlQUFlLEdBQUcsR0FBRyxDQUFDLENBQUM7U0FDOUU7YUFBTTtZQUNMLE9BQU8sT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ25CO0lBQ0gsQ0FBQzs7bUhBeFhVLHFCQUFxQjt1SEFBckIscUJBQXFCOzRGQUFyQixxQkFBcUI7a0JBRGpDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDE2LTIwMjMgVk13YXJlLCBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKiBUaGlzIHNvZnR3YXJlIGlzIHJlbGVhc2VkIHVuZGVyIE1JVCBsaWNlbnNlLlxuICogVGhlIGZ1bGwgbGljZW5zZSBpbmZvcm1hdGlvbiBjYW4gYmUgZm91bmQgaW4gTElDRU5TRSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBwcm9qZWN0LlxuICovXG5cbmltcG9ydCB7IEluamVjdGFibGUsIFF1ZXJ5TGlzdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBDbHJXaXphcmRQYWdlIH0gZnJvbSAnLi4vd2l6YXJkLXBhZ2UnO1xuXG4vKipcbiAqIFBhZ2VDb2xsZWN0aW9uU2VydmljZSBtYW5hZ2VzIHRoZSBjb2xsZWN0aW9uIG9mIHBhZ2VzIGFzc2lnbmVkIHRvIHRoZSB3aXphcmQgYW5kIG9mZmVyc1xuICogYSBudW1iZXIgb2YgZnVuY3Rpb25zIHVzZWZ1bCBhY3Jvc3MgdGhlIHdpemFyZHMgcHJvdmlkZXJzIGFuZCBzdWJjb21wb25lbnRzIC0tIGFsbCByZWxhdGVkXG4gKiB0byBlc3NlbnRpYWxseSBsb29rdXBzIG9uIHRoZSBjb2xsZWN0aW9uIG9mIHBhZ2VzLlxuICpcbiAqIFRoZSBlYXNpZXN0IHdheSB0byBhY2Nlc3MgUGFnZUNvbGxlY3Rpb25TZXJ2aWNlIGlzIHZpYSB0aGUgd2l6YXJkLiBUaGVcbiAqIGZvbGxvd2luZyBleGFtcGxlIHdvdWxkIGFsbG93IHlvdSB0byBhY2Nlc3MgeW91ciBpbnN0YW5jZSBvZiB0aGUgd2l6YXJkIGZyb20geW91ciBob3N0XG4gKiBjb21wb25lbnQgYW5kIHRoZXJlYnkgYWNjZXNzIHRoZSBwYWdlIGNvbGxlY3Rpb24gdmlhIFlvdXJIb3N0Q29tcG9uZW50LndpemFyZC5wYWdlQ29sbGVjdGlvbi5cbiAqXG4gKiBAZXhhbXBsZVxuICogPGNsci13aXphcmQgI3dpemFyZCAuLi4+XG4gKlxuICogQGV4YW1wbGVcbiAqIGV4cG9ydCBjbGFzcyBZb3VySG9zdENvbXBvbmVudCB7XG4gKiAgIEBWaWV3Q2hpbGQoXCJ3aXphcmRcIikgd2l6YXJkOiBXaXphcmQ7XG4gKiAgIC4uLlxuICogfVxuICpcbiAqIFRoZSBoZWFydCBvZiB0aGUgcGFnZSBjb2xsZWN0aW9uIGlzIHRoZSBxdWVyeSBsaXN0IG9mIHBhZ2VzLCB3aGljaCBpdCBpcyBhc3NpZ25lZCBhcyBhXG4gKiByZWZlcmVuY2UgdG8gdGhlIFdpemFyZC5wYWdlcyBRdWVyeUxpc3Qgd2hlbiB0aGUgd2l6YXJkIGlzIGNyZWF0ZWQuXG4gKlxuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgUGFnZUNvbGxlY3Rpb25TZXJ2aWNlIHtcbiAgLyoqXG4gICAqIEEgcmVmZXJlbmNlIHRvIHRoZSBXaXphcmQucGFnZXMgUXVlcnlMaXN0LlxuICAgKlxuICAgKiBQb3B1bGF0ZWQgd2hlbiB0aGUgd2l6YXJkIGlzIGNyZWF0ZWQuXG4gICAqXG4gICAqIEBtZW1iZXJvZiBQYWdlQ29sbGVjdGlvblNlcnZpY2VcbiAgICovXG4gIHBhZ2VzOiBRdWVyeUxpc3Q8Q2xyV2l6YXJkUGFnZT47XG5cbiAgLyoqXG4gICAqXG4gICAqIEBtZW1iZXJvZiBQYWdlQ29sbGVjdGlvblNlcnZpY2VcbiAgICovXG4gIHByaXZhdGUgX3BhZ2VzUmVzZXQgPSBuZXcgU3ViamVjdDxib29sZWFuPigpO1xuXG4gIC8qKlxuICAgKiBDb252ZXJ0cyB0aGUgUGFnZUNvbGxlY3Rpb25TZXJ2aWNlLnBhZ2VzIFF1ZXJ5TGlzdCB0byBhbiBhcnJheSBhbmQgcmV0dXJucyBpdC5cbiAgICpcbiAgICogVXNlZnVsIGZvciBtYW55IGluc3RhbmNlcyB3aGVuIHlvdSB3b3VsZCBwcmVmZXIgYSBRdWVyeUxpc3QgdG8gYWN0IGxpa2UgYW4gYXJyYXkuXG4gICAqXG4gICAqIEBtZW1iZXJvZiBQYWdlQ29sbGVjdGlvblNlcnZpY2VcbiAgICovXG4gIGdldCBwYWdlc0FzQXJyYXkoKTogQ2xyV2l6YXJkUGFnZVtdIHtcbiAgICByZXR1cm4gdGhpcy5wYWdlcyA/IHRoaXMucGFnZXMudG9BcnJheSgpIDogW107XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgbGVuZ3RoIG9mIHRoZSBwYWdlcyBxdWVyeSBsaXN0LlxuICAgKlxuICAgKiBAbWVtYmVyb2YgUGFnZUNvbGxlY3Rpb25TZXJ2aWNlXG4gICAqL1xuICBnZXQgcGFnZXNDb3VudCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLnBhZ2VzID8gdGhpcy5wYWdlcy5sZW5ndGggOiAwO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIG5leHQtdG8tbGFzdCBwYWdlIGluIHRoZSBxdWVyeSBsaXN0IG9mIHBhZ2VzLiBPcGVyYXRlcyBhcyBhIGdldHRlclxuICAgKiBzbyB0aGF0IGl0IGlzbid0IHdvcmtpbmcgd2l0aCBzdGFsZSBkYXRhLlxuICAgKlxuICAgKiBAbWVtYmVyb2YgUGFnZUNvbGxlY3Rpb25TZXJ2aWNlXG4gICAqL1xuICBnZXQgcGVudWx0aW1hdGVQYWdlKCk6IENscldpemFyZFBhZ2Uge1xuICAgIGNvbnN0IHBhZ2VDb3VudCA9IHRoaXMucGFnZXNDb3VudDtcblxuICAgIGlmIChwYWdlQ291bnQgPCAyKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5wYWdlc0FzQXJyYXlbcGFnZUNvdW50IC0gMl07XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgbGFzdCBwYWdlIGluIHRoZSBxdWVyeSBsaXN0IG9mIHBhZ2VzLiBPcGVyYXRlcyBhcyBhIGdldHRlclxuICAgKiBzbyB0aGF0IGl0IGlzbid0IHdvcmtpbmcgd2l0aCBzdGFsZSBkYXRhLlxuICAgKlxuICAgKiBAbWVtYmVyb2YgUGFnZUNvbGxlY3Rpb25TZXJ2aWNlXG4gICAqL1xuICBnZXQgbGFzdFBhZ2UoKTogQ2xyV2l6YXJkUGFnZSB7XG4gICAgY29uc3QgcGFnZUNvdW50ID0gdGhpcy5wYWdlc0NvdW50O1xuXG4gICAgaWYgKHBhZ2VDb3VudCA8IDEpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLnBhZ2VzQXNBcnJheVtwYWdlQ291bnQgLSAxXTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBmaXJzdCBwYWdlIGluIHRoZSBxdWVyeSBsaXN0IG9mIHBhZ2VzLiBPcGVyYXRlcyBhcyBhIGdldHRlclxuICAgKiBzbyB0aGF0IGl0IGlzbid0IHdvcmtpbmcgd2l0aCBzdGFsZSBkYXRhLlxuICAgKlxuICAgKiBAbWVtYmVyb2YgUGFnZUNvbGxlY3Rpb25TZXJ2aWNlXG4gICAqL1xuICBnZXQgZmlyc3RQYWdlKCk6IENscldpemFyZFBhZ2Uge1xuICAgIGlmICghdGhpcy5wYWdlc0NvdW50KSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5wYWdlc0FzQXJyYXlbMF07XG4gIH1cblxuICAvKipcbiAgICogQW4gb2JzZXJ2YWJsZSB0aGF0IHRoZSBuYXZpZ2F0aW9uIHNlcnZpY2UgbGlzdGVucyB0byBpbiBvcmRlciB0byBrbm93IHdoZW5cbiAgICogdGhlIHBhZ2UgY29sbGVjdGlvbiBjb21wbGV0ZWQgc3RhdGVzIGhhdmUgYmVlbiByZXNldCB0byBmYWxzZSBzbyB0aGF0IHdheSBpdFxuICAgKiBjYW4gYWxzbyByZXNldCB0aGUgbmF2aWdhdGlvbiB0byBtYWtlIHRoZSBmaXJzdCBwYWdlIGluIHRoZSBwYWdlIGNvbGxlY3Rpb25cbiAgICogY3VycmVudC9hY3RpdmUuXG4gICAqXG4gICAqIEBtZW1iZXJvZiBQYWdlQ29sbGVjdGlvblNlcnZpY2VcbiAgICovXG4gIGdldCBwYWdlc1Jlc2V0KCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLl9wYWdlc1Jlc2V0LmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFVzZWQgbW9zdGx5IGludGVybmFsbHksIGJ1dCBhY2NlcHRzIGEgc3RyaW5nIElEIGFuZCByZXR1cm5zIGEgQ2xyV2l6YXJkUGFnZVxuICAgKiBvYmplY3QgdGhhdCBtYXRjaGVzIHRoZSBJRCBwYXNzZWQuIE5vdGUgdGhhdCBJRHMgaGVyZSBzaG91bGQgaW5jbHVkZSB0aGUgcHJlZml4XG4gICAqIFwiY2xyLXdpemFyZC1wYWdlLVwiLlxuICAgKlxuICAgKiBSZXR1cm5zIHRoZSBuZXh0LXRvLWxhc3QgcGFnZSBpbiB0aGUgcXVlcnkgbGlzdCBvZiBwYWdlcy4gT3BlcmF0ZXMgYXMgYSBnZXR0ZXJcbiAgICogc28gdGhhdCBpdCBpc24ndCB3b3JraW5nIHdpdGggc3RhbGUgZGF0YS5cbiAgICpcbiAgICogQG1lbWJlcm9mIFBhZ2VDb2xsZWN0aW9uU2VydmljZVxuICAgKi9cbiAgZ2V0UGFnZUJ5SWQoaWQ6IHN0cmluZyk6IENscldpemFyZFBhZ2Uge1xuICAgIGNvbnN0IGZvdW5kUGFnZXM6IENscldpemFyZFBhZ2VbXSA9IHRoaXMucGFnZXMuZmlsdGVyKChwYWdlOiBDbHJXaXphcmRQYWdlKSA9PiBpZCA9PT0gcGFnZS5pZCk7XG4gICAgcmV0dXJuIHRoaXMuY2hlY2tSZXN1bHRzKGZvdW5kUGFnZXMsIGlkKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBY2NlcHRzIHMgbnVtYmVyIGFzIGEgcGFyYW1ldGVyIGFuZCB0cmVhdHMgdGhhdCBudW1iZXIgYXMgdGhlIGluZGV4IG9mIHRoZSBwYWdlXG4gICAqIHlvdSdyZSBsb29raW5nIGZvciBpbiB0aGUgY29sbGVjdGlvbiBvZiBwYWdlcy4gUmV0dXJucyBhICB3aXphcmQgcGFnZSBvYmplY3QuXG4gICAqXG4gICAqIEBtZW1iZXJvZiBQYWdlQ29sbGVjdGlvblNlcnZpY2VcbiAgICovXG4gIGdldFBhZ2VCeUluZGV4KGluZGV4OiBudW1iZXIpOiBDbHJXaXphcmRQYWdlIHtcbiAgICBjb25zdCBwYWdlQ291bnQgPSB0aGlzLnBhZ2VzQ291bnQ7XG4gICAgY29uc3QgcGFnZXNMYXN0SW5kZXg6IG51bWJlciA9IHBhZ2VDb3VudCA+IDEgPyBwYWdlQ291bnQgLSAxIDogMDtcblxuICAgIGlmIChpbmRleCA8IDApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignQ2Fubm90IHJldHJpZXZlIHBhZ2Ugd2l0aCBpbmRleCBvZiAnICsgaW5kZXgpO1xuICAgIH1cblxuICAgIGlmIChpbmRleCA+IHBhZ2VzTGFzdEluZGV4KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1BhZ2UgaW5kZXggaXMgZ3JlYXRlciB0aGFuIGxlbmd0aCBvZiBwYWdlcyBhcnJheS4nKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5wYWdlc0FzQXJyYXlbaW5kZXhdO1xuICB9XG5cbiAgLyoqXG4gICAqIFRha2VzIGEgd2l6YXJkIHBhZ2Ugb2JqZWN0IGFzIGEgcGFyYW1ldGVyIGFuZCByZXR1cm5zIGl0cyBpbmRleCBpbiB0aGVcbiAgICogY29sbGVjdGlvbiBvZiBwYWdlcy5cbiAgICpcbiAgICogQG1lbWJlcm9mIFBhZ2VDb2xsZWN0aW9uU2VydmljZVxuICAgKi9cbiAgZ2V0UGFnZUluZGV4KHBhZ2U6IENscldpemFyZFBhZ2UpOiBudW1iZXIge1xuICAgIGNvbnN0IGluZGV4ID0gdGhpcy5wYWdlc0FzQXJyYXkuaW5kZXhPZihwYWdlKTtcblxuICAgIGlmIChpbmRleCA8IDApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignUmVxdWVzdGVkIHBhZ2UgY2Fubm90IGJlIGZvdW5kIGluIGNvbGxlY3Rpb24gb2YgcGFnZXMuJyk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGluZGV4O1xuICB9XG5cbiAgLyoqXG4gICAqIEFjY2VwdHMgdHdvIG51bWVyaWMgaW5kZXhlcyBhbmQgcmV0dXJucyBhbiBhcnJheSBvZiB3aXphcmQgcGFnZSBvYmplY3RzIHRoYXQgaW5jbHVkZVxuICAgKiBhbGwgd2l6YXJkIHBhZ2VzIGluIHRoZSBwYWdlIGNvbGxlY3Rpb24gZnJvbSB0aGUgZmlyc3QgaW5kZXggdG8gdGhlIHNlY29uZC5cbiAgICpcbiAgICogQG1lbWJlcm9mIFBhZ2VDb2xsZWN0aW9uU2VydmljZVxuICAgKi9cbiAgcGFnZVJhbmdlKHN0YXJ0OiBudW1iZXIsIGVuZDogbnVtYmVyKTogQ2xyV2l6YXJkUGFnZVtdIHtcbiAgICBsZXQgcGFnZXM6IENscldpemFyZFBhZ2VbXSA9IFtdO1xuXG4gICAgaWYgKHN0YXJ0IDwgMCB8fCBlbmQgPCAwKSB7XG4gICAgICByZXR1cm4gW107XG4gICAgfVxuXG4gICAgaWYgKHN0YXJ0ID09PSBudWxsIHx8IHR5cGVvZiBzdGFydCA9PT0gJ3VuZGVmaW5lZCcgfHwgaXNOYU4oc3RhcnQpKSB7XG4gICAgICByZXR1cm4gW107XG4gICAgfVxuXG4gICAgaWYgKGVuZCA9PT0gbnVsbCB8fCB0eXBlb2YgZW5kID09PSAndW5kZWZpbmVkJyB8fCBpc05hTihlbmQpKSB7XG4gICAgICByZXR1cm4gW107XG4gICAgfVxuXG4gICAgaWYgKGVuZCA+IHRoaXMucGFnZXNDb3VudCkge1xuICAgICAgZW5kID0gdGhpcy5wYWdlc0NvdW50O1xuICAgIH1cblxuICAgIHBhZ2VzID0gdGhpcy5wYWdlc0FzQXJyYXk7XG5cbiAgICBpZiAoZW5kIC0gc3RhcnQgPT09IDApIHtcbiAgICAgIC8vIGp1c3QgcmV0dXJuIHRoZSBvbmUgcGFnZSB0aGV5IHdhbnRcbiAgICAgIHJldHVybiBbdGhpcy5nZXRQYWdlQnlJbmRleChzdGFydCldO1xuICAgIH1cblxuICAgIC8vIHNsaWNlIGVuZCBkb2VzIG5vdCBpbmNsdWRlIGl0ZW0gcmVmZXJlbmNlZCBieSBlbmQgaW5kZXgsIHdoaWNoIGlzIHdlaXJkIGZvciB1c2Vyc1xuICAgIC8vIGluY3JlbWVudGluZyBlbmQgaW5kZXggaGVyZSB0byBjb3JyZWN0IHRoYXQgc28gdXNlcnMgYW5kIG90aGVyIG1ldGhvZHNcbiAgICAvLyBkb24ndCBoYXZlIHRvIHRoaW5rIGFib3V0IGl0XG4gICAgZW5kID0gZW5kICsgMTtcblxuICAgIC8vIHNsaWNlIGRvZXMgbm90IHJldHVybiB0aGUgbGFzdCBvbmUgaW4gdGhlIHJhbmdlIGJ1dCBpdCBkb2VzIGluY2x1ZGUgdGhlIGZpcnN0IG9uZVxuICAgIC8vIGRvZXMgbm90IG1vZGlmeSBvcmlnaW5hbCBhcnJheVxuICAgIHJldHVybiBwYWdlcy5zbGljZShzdGFydCwgZW5kKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBY2NlcHRzIHR3byB3aXphcmQgcGFnZSBvYmplY3RzIGFuZCByZXR1cm5zIHRob3NlIHBhZ2Ugb2JqZWN0cyB3aXRoIGFsbCBvdGhlciBwYWdlXG4gICAqIG9iamVjdHMgYmV0d2VlbiB0aGVtIGluIHRoZSBwYWdlIGNvbGxlY3Rpb24uIEl0IGRvZXNuJ3QgY2FyZSB3aGljaCBwYWdlIGlzIGFoZWFkIG9mIHRoZVxuICAgKiBvdGhlciBpbiB0aGUgcGFyYW1ldGVycy4gSXQgd2lsbCBiZSBzbWFydCBlbm91Z2ggdG8gZmlndXJlIHRoYXQgb3V0ICBvbiBpdHMgb3duLlxuICAgKlxuICAgKiBAbWVtYmVyb2YgUGFnZUNvbGxlY3Rpb25TZXJ2aWNlXG4gICAqL1xuICBnZXRQYWdlUmFuZ2VGcm9tUGFnZXMocGFnZTogQ2xyV2l6YXJkUGFnZSwgb3RoZXJQYWdlOiBDbHJXaXphcmRQYWdlKTogQ2xyV2l6YXJkUGFnZVtdIHtcbiAgICBjb25zdCBwYWdlSW5kZXggPSB0aGlzLmdldFBhZ2VJbmRleChwYWdlKTtcbiAgICBjb25zdCBvdGhlclBhZ2VJbmRleCA9IHRoaXMuZ2V0UGFnZUluZGV4KG90aGVyUGFnZSk7XG4gICAgbGV0IHN0YXJ0SW5kZXg6IG51bWJlcjtcbiAgICBsZXQgZW5kSW5kZXg6IG51bWJlcjtcblxuICAgIGlmIChwYWdlSW5kZXggPD0gb3RoZXJQYWdlSW5kZXgpIHtcbiAgICAgIHN0YXJ0SW5kZXggPSBwYWdlSW5kZXg7XG4gICAgICBlbmRJbmRleCA9IG90aGVyUGFnZUluZGV4O1xuICAgIH0gZWxzZSB7XG4gICAgICBzdGFydEluZGV4ID0gb3RoZXJQYWdlSW5kZXg7XG4gICAgICBlbmRJbmRleCA9IHBhZ2VJbmRleDtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMucGFnZVJhbmdlKHN0YXJ0SW5kZXgsIGVuZEluZGV4KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUYWtlcyBhIHdpemFyZCBwYWdlIG9iamVjdCBhcyBhIHBhcmFtZXRlciBhbmQgcmV0dXJucyB0aGUgd2l6YXJkIHBhZ2Ugb2JqZWN0IG9mXG4gICAqIHRoZSBwYWdlIGltbWVkaWF0ZWx5IGJlZm9yZSBpdCBpbiB0aGUgcGFnZSBjb2xsZWN0aW9uLiBSZXR1cm5zIG51bGwgaWYgdGhlcmUgaXNcbiAgICogbm8gcGFnZSBiZWZvcmUgdGhlIHBhZ2UgaXQgaXMgcGFzc2VkLlxuICAgKlxuICAgKiBAbWVtYmVyb2YgUGFnZUNvbGxlY3Rpb25TZXJ2aWNlXG4gICAqL1xuICBnZXRQcmV2aW91c1BhZ2UocGFnZTogQ2xyV2l6YXJkUGFnZSkge1xuICAgIGNvbnN0IG15UGFnZUluZGV4ID0gdGhpcy5nZXRQYWdlSW5kZXgocGFnZSk7XG4gICAgY29uc3QgcHJldmlvdXNQYWdlSW5kZXggPSBteVBhZ2VJbmRleCAtIDE7XG4gICAgaWYgKHByZXZpb3VzUGFnZUluZGV4IDwgMCkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLmdldFBhZ2VCeUluZGV4KHByZXZpb3VzUGFnZUluZGV4KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBY2NlcHRzIGEgd2l6YXJkIHBhZ2Ugb2JqZWN0IGFzIGEgcGFyYW1ldGVyIGFuZCByZXR1cm5zIGEgQm9vbGVhbiB0aGF0IHNheXMgaWZcbiAgICogdGhlIHBhZ2UgeW91IHNlbnQgaXQgaXMgY29tcGxldGUuXG4gICAqXG4gICAqIEBtZW1iZXJvZiBQYWdlQ29sbGVjdGlvblNlcnZpY2VcbiAgICovXG4gIHByZXZpb3VzUGFnZUlzQ29tcGxldGVkKHBhZ2U6IENscldpemFyZFBhZ2UpIHtcbiAgICBpZiAoIXBhZ2UpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICBjb25zdCBwcmV2aW91c1BhZ2UgPSB0aGlzLmdldFByZXZpb3VzUGFnZShwYWdlKTtcblxuICAgIGlmIChudWxsID09PSBwcmV2aW91c1BhZ2UpIHtcbiAgICAgIC8vIHBhZ2UgaXMgdGhlIGZpcnN0IHBhZ2UuIG5vIHByZXZpb3VzIHBhZ2UuXG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICByZXR1cm4gcHJldmlvdXNQYWdlLmNvbXBsZXRlZDtcbiAgfVxuXG4gIC8qKlxuICAgKiBUYWtlcyBhIHdpemFyZCBwYWdlIG9iamVjdCBhcyBhIHBhcmFtZXRlciBhbmQgcmV0dXJucyB0aGUgd2l6YXJkIHBhZ2Ugb2JqZWN0IG9mXG4gICAqIHRoZSBwYWdlIGltbWVkaWF0ZWx5IGFmdGVyIGl0IGluIHRoZSBwYWdlIGNvbGxlY3Rpb24uIFJldHVybnMgbnVsbCBpZiB0aGVyZSBpc1xuICAgKiBubyBwYWdlIGFmdGVyIHRoZSBwYWdlIGl0IGlzIHBhc3NlZC5cbiAgICpcbiAgICogQG1lbWJlcm9mIFBhZ2VDb2xsZWN0aW9uU2VydmljZVxuICAgKi9cbiAgZ2V0TmV4dFBhZ2UocGFnZTogQ2xyV2l6YXJkUGFnZSkge1xuICAgIGNvbnN0IG15UGFnZUluZGV4ID0gdGhpcy5nZXRQYWdlSW5kZXgocGFnZSk7XG4gICAgY29uc3QgbmV4dFBhZ2VJbmRleCA9IG15UGFnZUluZGV4ICsgMTtcblxuICAgIGlmIChuZXh0UGFnZUluZGV4ID49IHRoaXMucGFnZXNBc0FycmF5Lmxlbmd0aCkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLmdldFBhZ2VCeUluZGV4KG5leHRQYWdlSW5kZXgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRha2VzIGEgd2l6YXJkIHBhZ2Ugb2JqZWN0IGFzIGEgcGFyYW1ldGVyIGFuZCBnZW5lcmF0ZXMgYSBzdGVwIGl0ZW0gaWQgZnJvbSB0aGVcbiAgICogcGFnZSBJRC4gUmV0dXJucyB0aGUgZ2VuZXJhdGVkIHN0ZXAgaXRlbSBJRCBhcyBhIHN0cmluZy5cbiAgICpcbiAgICogQG1lbWJlcm9mIFBhZ2VDb2xsZWN0aW9uU2VydmljZVxuICAgKi9cbiAgZ2V0U3RlcEl0ZW1JZEZvclBhZ2UocGFnZTogQ2xyV2l6YXJkUGFnZSkge1xuICAgIGNvbnN0IHBhZ2VJZCA9IHBhZ2UuaWQ7XG4gICAgY29uc3QgcGFnZUlkUGFydHMgPSBwYWdlSWQuc3BsaXQoJy0nKS5yZXZlcnNlKCk7XG5cbiAgICBwYWdlSWRQYXJ0c1sxXSA9ICdzdGVwJztcbiAgICByZXR1cm4gcGFnZUlkUGFydHMucmV2ZXJzZSgpLmpvaW4oJy0nKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZW5lcmFsbHkgb25seSB1c2VkIGludGVybmFsbHkgdG8gbWFyayB0aGF0IGEgc3BlY2lmaWMgcGFnZSBoYXMgYmVlbiBcImNvbW1pdHRlZFwiLlxuICAgKiBUaGlzIGludm9sdmVzIG1hcmtpbmcgdGhlIHBhZ2UgY29tcGxldGUgYW5kIGZpcmluZyB0aGUgQ2xyV2l6YXJkUGFnZS5vbkNvbW1pdFxuICAgKiAoY2xyV2l6YXJkUGFnZU9uQ29tbWl0KSBvdXRwdXQuIFRha2VzIHRoZSB3aXphcmQgcGFnZSBvYmplY3QgdGhhdCB5b3UgaW50ZW5kIHRvXG4gICAqIG1hcmsgY29tcGxldGVkIGFzIGEgcGFyYW1ldGVyLlxuICAgKlxuICAgKiBAbWVtYmVyb2YgUGFnZUNvbGxlY3Rpb25TZXJ2aWNlXG4gICAqL1xuICBjb21taXRQYWdlKHBhZ2U6IENscldpemFyZFBhZ2UpIHtcbiAgICBjb25zdCBwYWdlSGFzT3ZlcnJpZGVzID0gcGFnZS5zdG9wTmV4dCB8fCBwYWdlLnByZXZlbnREZWZhdWx0O1xuICAgIHBhZ2UuY29tcGxldGVkID0gdHJ1ZTtcblxuICAgIGlmICghcGFnZUhhc092ZXJyaWRlcykge1xuICAgICAgLy8gcHJldmVudCBsb29wIG9mIGV2ZW50IGVtaXNzaW9uOyBhbHRlcm5hdGUgZmxvd3Mgd29yayBvZmZcbiAgICAgIC8vIG9mIGV2ZW50IGVtaXR0ZXJzIHRoaXMgaXMgaG93IHRoZXkgYnJlYWsgdGhhdCBjeWNsZS5cbiAgICAgIHBhZ2Uub25Db21taXQuZW1pdChwYWdlLmlkKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogU2V0cyBhbGwgY29tcGxldGVkIHN0YXRlcyBvZiB0aGUgcGFnZXMgaW4gdGhlIHBhZ2UgY29sbGVjdGlvbiB0byBmYWxzZSBhbmRcbiAgICogbm90aWZpZXMgdGhlIG5hdmlnYXRpb24gc2VydmljZSB0byBsaWtld2lzZSByZXNldCB0aGUgbmF2aWdhdGlvbi5cbiAgICpcbiAgICogQG1lbWJlcm9mIFBhZ2VDb2xsZWN0aW9uU2VydmljZVxuICAgKi9cbiAgcmVzZXQoKSB7XG4gICAgdGhpcy5wYWdlc0FzQXJyYXkuZm9yRWFjaCgocGFnZTogQ2xyV2l6YXJkUGFnZSkgPT4ge1xuICAgICAgcGFnZS5jb21wbGV0ZWQgPSBmYWxzZTtcbiAgICB9KTtcbiAgICB0aGlzLl9wYWdlc1Jlc2V0Lm5leHQodHJ1ZSk7XG4gIH1cblxuICAvKipcbiAgICogUm9sbHMgdGhyb3VnaCBhbGwgdGhlIHBhZ2VzIGluIHRoZSBwYWdlIGNvbGxlY3Rpb24gdG8gbWFrZSBzdXJlIHRoZXJlIGFyZSBub1xuICAgKiBpbmNvbXBsZXRlIHBhZ2VzIHNhbmR3aWNoZWQgYmV0d2VlbiBjb21wbGV0ZWQgcGFnZXMgaW4gdGhlIHdvcmtmbG93LiBJZGVudGlmaWVzXG4gICAqIHRoZSBmaXJzdCBpbmNvbXBsZXRlIHBhZ2UgaW5kZXggYW5kIHNldHMgYWxsIHBhZ2VzIGJlaGluZCBpdCB0byBhIGNvbXBsZXRlZFxuICAgKiBzdGF0ZSBvZiBmYWxzZS5cbiAgICpcbiAgICogQG1lbWJlcm9mIFBhZ2VDb2xsZWN0aW9uU2VydmljZVxuICAgKi9cbiAgdXBkYXRlQ29tcGxldGVkU3RhdGVzKCk6IHZvaWQge1xuICAgIGNvbnN0IGZpcnN0SW5jb21wbGV0ZUluZGV4ID0gdGhpcy5maW5kRmlyc3RJbmNvbXBsZXRlUGFnZUluZGV4KCk7XG5cbiAgICBpZiAoZmlyc3RJbmNvbXBsZXRlSW5kZXggPT09IHRoaXMucGFnZXNBc0FycmF5Lmxlbmd0aCAtIDEpIHtcbiAgICAgIC8vIGFsbCBjb21wbGV0ZSBubyBuZWVkIHRvIGRvIGFueXRoaW5nXG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5wYWdlc0FzQXJyYXkuZm9yRWFjaCgocGFnZTogQ2xyV2l6YXJkUGFnZSwgaW5kZXg6IG51bWJlcikgPT4ge1xuICAgICAgaWYgKGluZGV4ID4gZmlyc3RJbmNvbXBsZXRlSW5kZXgpIHtcbiAgICAgICAgcGFnZS5jb21wbGV0ZWQgPSBmYWxzZTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXRyaWV2ZXMgdGhlIGluZGV4IG9mIHRoZSBmaXJzdCBpbmNvbXBsZXRlIHBhZ2UgaW4gdGhlIHBhZ2UgY29sbGVjdGlvbi5cbiAgICpcbiAgICogQG1lbWJlcm9mIFBhZ2VDb2xsZWN0aW9uU2VydmljZVxuICAgKi9cbiAgZmluZEZpcnN0SW5jb21wbGV0ZVBhZ2VJbmRleCgpOiBudW1iZXIge1xuICAgIGxldCByZXR1cm5JbmRleDogbnVtYmVyID0gbnVsbDtcbiAgICB0aGlzLnBhZ2VzQXNBcnJheS5mb3JFYWNoKChwYWdlOiBDbHJXaXphcmRQYWdlLCBpbmRleDogbnVtYmVyKSA9PiB7XG4gICAgICBpZiAobnVsbCA9PT0gcmV0dXJuSW5kZXggJiYgZmFsc2UgPT09IHBhZ2UuY29tcGxldGVkKSB7XG4gICAgICAgIHJldHVybkluZGV4ID0gaW5kZXg7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICAvLyBmYWxsdGhyb3VnaCwgYWxsIGNvbXBsZXRlZCwgcmV0dXJuIGxhc3QgcGFnZVxuICAgIGlmIChudWxsID09PSByZXR1cm5JbmRleCkge1xuICAgICAgcmV0dXJuSW5kZXggPSB0aGlzLnBhZ2VzQ291bnQgLSAxO1xuICAgIH1cblxuICAgIHJldHVybiByZXR1cm5JbmRleDtcbiAgfVxuXG4gIGZpbmRGaXJzdEluY29tcGxldGVQYWdlKCk6IENscldpemFyZFBhZ2Uge1xuICAgIGNvbnN0IG15SW5jb21wbGV0ZUluZGV4ID0gdGhpcy5maW5kRmlyc3RJbmNvbXBsZXRlUGFnZUluZGV4KCk7XG4gICAgcmV0dXJuIHRoaXMucGFnZXNBc0FycmF5W215SW5jb21wbGV0ZUluZGV4XTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb25zb2xpZGF0ZXMgZ3VhcmQgbG9naWMgdGhhdCBwcmV2ZW50cyBhIGNvdXBsZSBvZiB1bmZvcnR1bmF0ZSBlZGdlIGNhc2VzIHdpdGhcbiAgICogbG9vayB1cHMgb24gdGhlIGNvbGxlY3Rpb24gb2YgcGFnZXMuXG4gICAqXG4gICAqIEBtZW1iZXJvZiBQYWdlQ29sbGVjdGlvblNlcnZpY2VcbiAgICovXG4gIHByaXZhdGUgY2hlY2tSZXN1bHRzKHJlc3VsdHM6IENscldpemFyZFBhZ2VbXSwgcmVxdWVzdGVkUGFnZUlkOiBzdHJpbmcpIHtcbiAgICBjb25zdCBmb3VuZFBhZ2VzQ291bnQ6IG51bWJlciA9IHJlc3VsdHMubGVuZ3RoIHx8IDA7XG5cbiAgICBpZiAoZm91bmRQYWdlc0NvdW50ID4gMSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdNb3JlIHRoYW4gb25lIHBhZ2UgaGFzIHRoZSByZXF1ZXN0ZWQgaWQgJyArIHJlcXVlc3RlZFBhZ2VJZCArICcuJyk7XG4gICAgfSBlbHNlIGlmIChmb3VuZFBhZ2VzQ291bnQgPCAxKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ05vIHBhZ2UgY2FuIGJlIGZvdW5kIHdpdGggdGhlIGlkICcgKyByZXF1ZXN0ZWRQYWdlSWQgKyAnLicpO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gcmVzdWx0c1swXTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|